drizzle-orm 0.44.3-f0d7da2 → 0.44.4-e450094
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/column-builder.cjs.map +1 -1
- package/column-builder.d.cts +5 -8
- package/column-builder.d.ts +5 -8
- package/column-builder.js.map +1 -1
- package/column.cjs +0 -2
- package/column.cjs.map +1 -1
- package/column.d.cts +0 -1
- package/column.d.ts +0 -1
- package/column.js +0 -2
- package/column.js.map +1 -1
- package/durable-sqlite/session.cjs +1 -1
- package/durable-sqlite/session.cjs.map +1 -1
- package/durable-sqlite/session.js +1 -1
- package/durable-sqlite/session.js.map +1 -1
- package/errors.cjs +13 -0
- package/errors.cjs.map +1 -1
- package/errors.d.cts +6 -0
- package/errors.d.ts +6 -0
- package/errors.js +12 -0
- package/errors.js.map +1 -1
- package/gel-core/session.cjs +6 -7
- package/gel-core/session.cjs.map +1 -1
- package/gel-core/session.js +1 -2
- package/gel-core/session.js.map +1 -1
- package/mysql-core/dialect.cjs +0 -3
- package/mysql-core/dialect.cjs.map +1 -1
- package/mysql-core/dialect.d.cts +0 -1
- package/mysql-core/dialect.d.ts +0 -1
- package/mysql-core/dialect.js +0 -3
- package/mysql-core/dialect.js.map +1 -1
- package/mysql-core/session.cjs +6 -7
- package/mysql-core/session.cjs.map +1 -1
- package/mysql-core/session.js +1 -2
- package/mysql-core/session.js.map +1 -1
- package/mysql-proxy/driver.cjs +2 -2
- package/mysql-proxy/driver.cjs.map +1 -1
- package/mysql-proxy/driver.d.cts +1 -2
- package/mysql-proxy/driver.d.ts +1 -2
- package/mysql-proxy/driver.js +2 -2
- package/mysql-proxy/driver.js.map +1 -1
- package/node-postgres/session.cjs.map +1 -1
- package/node-postgres/session.js.map +1 -1
- package/package.json +28 -1458
- package/pg-core/columns/common.cjs +10 -11
- package/pg-core/columns/common.cjs.map +1 -1
- package/pg-core/columns/common.d.cts +2 -3
- package/pg-core/columns/common.d.ts +2 -3
- package/pg-core/columns/common.js +10 -11
- package/pg-core/columns/common.js.map +1 -1
- package/pg-core/foreign-keys.cjs +0 -4
- package/pg-core/foreign-keys.cjs.map +1 -1
- package/pg-core/foreign-keys.d.cts +0 -2
- package/pg-core/foreign-keys.d.ts +0 -2
- package/pg-core/foreign-keys.js +0 -4
- package/pg-core/foreign-keys.js.map +1 -1
- package/pg-core/primary-keys.cjs +0 -3
- package/pg-core/primary-keys.cjs.map +1 -1
- package/pg-core/primary-keys.d.cts +0 -1
- package/pg-core/primary-keys.d.ts +0 -1
- package/pg-core/primary-keys.js +0 -3
- package/pg-core/primary-keys.js.map +1 -1
- package/pg-core/session.cjs +6 -7
- package/pg-core/session.cjs.map +1 -1
- package/pg-core/session.js +1 -2
- package/pg-core/session.js.map +1 -1
- package/pg-core/unique-constraint.cjs +0 -5
- package/pg-core/unique-constraint.cjs.map +1 -1
- package/pg-core/unique-constraint.d.cts +0 -2
- package/pg-core/unique-constraint.d.ts +0 -2
- package/pg-core/unique-constraint.js +0 -5
- package/pg-core/unique-constraint.js.map +1 -1
- package/relations.cjs +0 -48
- package/relations.cjs.map +1 -1
- package/relations.d.cts +0 -1
- package/relations.d.ts +0 -1
- package/relations.js +0 -47
- package/relations.js.map +1 -1
- package/singlestore-core/session.cjs +6 -7
- package/singlestore-core/session.cjs.map +1 -1
- package/singlestore-core/session.js +1 -2
- package/singlestore-core/session.js.map +1 -1
- package/sql/sql.cjs +3 -10
- package/sql/sql.cjs.map +1 -1
- package/sql/sql.d.cts +1 -1
- package/sql/sql.d.ts +1 -1
- package/sql/sql.js +3 -10
- package/sql/sql.js.map +1 -1
- package/sqlite-core/session.cjs +6 -7
- package/sqlite-core/session.cjs.map +1 -1
- package/sqlite-core/session.js +1 -2
- package/sqlite-core/session.js.map +1 -1
- package/version.cjs +2 -2
- package/version.cjs.map +1 -1
- package/version.d.cts +2 -2
- package/version.d.ts +2 -2
- package/version.js +2 -2
- package/version.js.map +1 -1
- package/cockroach/driver.cjs +0 -113
- package/cockroach/driver.cjs.map +0 -1
- package/cockroach/driver.d.cts +0 -42
- package/cockroach/driver.d.ts +0 -42
- package/cockroach/driver.js +0 -80
- package/cockroach/driver.js.map +0 -1
- package/cockroach/index.cjs +0 -25
- package/cockroach/index.cjs.map +0 -1
- package/cockroach/index.d.cts +0 -2
- package/cockroach/index.d.ts +0 -2
- package/cockroach/index.js +0 -3
- package/cockroach/index.js.map +0 -1
- package/cockroach/migrator.cjs +0 -33
- package/cockroach/migrator.cjs.map +0 -1
- package/cockroach/migrator.d.cts +0 -3
- package/cockroach/migrator.d.ts +0 -3
- package/cockroach/migrator.js +0 -9
- package/cockroach/migrator.js.map +0 -1
- package/cockroach/session.cjs +0 -253
- package/cockroach/session.cjs.map +0 -1
- package/cockroach/session.d.cts +0 -48
- package/cockroach/session.d.ts +0 -48
- package/cockroach/session.js +0 -217
- package/cockroach/session.js.map +0 -1
- package/cockroach-core/alias.cjs +0 -32
- package/cockroach-core/alias.cjs.map +0 -1
- package/cockroach-core/alias.d.cts +0 -4
- package/cockroach-core/alias.d.ts +0 -4
- package/cockroach-core/alias.js +0 -8
- package/cockroach-core/alias.js.map +0 -1
- package/cockroach-core/checks.cjs +0 -58
- package/cockroach-core/checks.cjs.map +0 -1
- package/cockroach-core/checks.d.cts +0 -18
- package/cockroach-core/checks.d.ts +0 -18
- package/cockroach-core/checks.js +0 -32
- package/cockroach-core/checks.js.map +0 -1
- package/cockroach-core/columns/all.cjs +0 -79
- package/cockroach-core/columns/all.cjs.map +0 -1
- package/cockroach-core/columns/all.d.cts +0 -50
- package/cockroach-core/columns/all.d.ts +0 -50
- package/cockroach-core/columns/all.js +0 -55
- package/cockroach-core/columns/all.js.map +0 -1
- package/cockroach-core/columns/bigint.cjs +0 -104
- package/cockroach-core/columns/bigint.cjs.map +0 -1
- package/cockroach-core/columns/bigint.d.cts +0 -46
- package/cockroach-core/columns/bigint.d.ts +0 -46
- package/cockroach-core/columns/bigint.js +0 -75
- package/cockroach-core/columns/bigint.js.map +0 -1
- package/cockroach-core/columns/bit.cjs +0 -60
- package/cockroach-core/columns/bit.cjs.map +0 -1
- package/cockroach-core/columns/bit.d.cts +0 -37
- package/cockroach-core/columns/bit.d.ts +0 -37
- package/cockroach-core/columns/bit.js +0 -34
- package/cockroach-core/columns/bit.js.map +0 -1
- package/cockroach-core/columns/boolean.cjs +0 -56
- package/cockroach-core/columns/boolean.cjs.map +0 -1
- package/cockroach-core/columns/boolean.d.cts +0 -22
- package/cockroach-core/columns/boolean.d.ts +0 -22
- package/cockroach-core/columns/boolean.js +0 -30
- package/cockroach-core/columns/boolean.js.map +0 -1
- package/cockroach-core/columns/char.cjs +0 -62
- package/cockroach-core/columns/char.cjs.map +0 -1
- package/cockroach-core/columns/char.d.cts +0 -45
- package/cockroach-core/columns/char.d.ts +0 -45
- package/cockroach-core/columns/char.js +0 -36
- package/cockroach-core/columns/char.js.map +0 -1
- package/cockroach-core/columns/common.cjs +0 -191
- package/cockroach-core/columns/common.cjs.map +0 -1
- package/cockroach-core/columns/common.d.cts +0 -118
- package/cockroach-core/columns/common.d.ts +0 -118
- package/cockroach-core/columns/common.js +0 -161
- package/cockroach-core/columns/common.js.map +0 -1
- package/cockroach-core/columns/custom.cjs +0 -77
- package/cockroach-core/columns/custom.cjs.map +0 -1
- package/cockroach-core/columns/custom.d.cts +0 -155
- package/cockroach-core/columns/custom.d.ts +0 -155
- package/cockroach-core/columns/custom.js +0 -51
- package/cockroach-core/columns/custom.js.map +0 -1
- package/cockroach-core/columns/date.cjs +0 -91
- package/cockroach-core/columns/date.cjs.map +0 -1
- package/cockroach-core/columns/date.common.cjs +0 -37
- package/cockroach-core/columns/date.common.cjs.map +0 -1
- package/cockroach-core/columns/date.common.d.cts +0 -7
- package/cockroach-core/columns/date.common.d.ts +0 -7
- package/cockroach-core/columns/date.common.js +0 -13
- package/cockroach-core/columns/date.common.js.map +0 -1
- package/cockroach-core/columns/date.d.cts +0 -46
- package/cockroach-core/columns/date.d.ts +0 -46
- package/cockroach-core/columns/date.js +0 -63
- package/cockroach-core/columns/date.js.map +0 -1
- package/cockroach-core/columns/decimal.cjs +0 -164
- package/cockroach-core/columns/decimal.cjs.map +0 -1
- package/cockroach-core/columns/decimal.d.cts +0 -99
- package/cockroach-core/columns/decimal.d.ts +0 -99
- package/cockroach-core/columns/decimal.js +0 -133
- package/cockroach-core/columns/decimal.js.map +0 -1
- package/cockroach-core/columns/enum.cjs +0 -127
- package/cockroach-core/columns/enum.cjs.map +0 -1
- package/cockroach-core/columns/enum.d.cts +0 -83
- package/cockroach-core/columns/enum.d.ts +0 -83
- package/cockroach-core/columns/enum.js +0 -96
- package/cockroach-core/columns/enum.js.map +0 -1
- package/cockroach-core/columns/float.cjs +0 -65
- package/cockroach-core/columns/float.cjs.map +0 -1
- package/cockroach-core/columns/float.d.cts +0 -24
- package/cockroach-core/columns/float.d.ts +0 -24
- package/cockroach-core/columns/float.js +0 -38
- package/cockroach-core/columns/float.js.map +0 -1
- package/cockroach-core/columns/geometry.cjs +0 -98
- package/cockroach-core/columns/geometry.cjs.map +0 -1
- package/cockroach-core/columns/geometry.d.cts +0 -58
- package/cockroach-core/columns/geometry.d.ts +0 -58
- package/cockroach-core/columns/geometry.js +0 -70
- package/cockroach-core/columns/geometry.js.map +0 -1
- package/cockroach-core/columns/index.cjs +0 -69
- package/cockroach-core/columns/index.cjs.map +0 -1
- package/cockroach-core/columns/index.d.cts +0 -24
- package/cockroach-core/columns/index.d.ts +0 -24
- package/cockroach-core/columns/index.js +0 -25
- package/cockroach-core/columns/index.js.map +0 -1
- package/cockroach-core/columns/inet.cjs +0 -56
- package/cockroach-core/columns/inet.cjs.map +0 -1
- package/cockroach-core/columns/inet.d.cts +0 -22
- package/cockroach-core/columns/inet.d.ts +0 -22
- package/cockroach-core/columns/inet.js +0 -30
- package/cockroach-core/columns/inet.js.map +0 -1
- package/cockroach-core/columns/int.common.cjs +0 -55
- package/cockroach-core/columns/int.common.cjs.map +0 -1
- package/cockroach-core/columns/int.common.d.cts +0 -11
- package/cockroach-core/columns/int.common.d.ts +0 -11
- package/cockroach-core/columns/int.common.js +0 -31
- package/cockroach-core/columns/int.common.js.map +0 -1
- package/cockroach-core/columns/integer.cjs +0 -63
- package/cockroach-core/columns/integer.cjs.map +0 -1
- package/cockroach-core/columns/integer.d.cts +0 -24
- package/cockroach-core/columns/integer.d.ts +0 -24
- package/cockroach-core/columns/integer.js +0 -37
- package/cockroach-core/columns/integer.js.map +0 -1
- package/cockroach-core/columns/interval.cjs +0 -63
- package/cockroach-core/columns/interval.cjs.map +0 -1
- package/cockroach-core/columns/interval.d.cts +0 -34
- package/cockroach-core/columns/interval.d.ts +0 -34
- package/cockroach-core/columns/interval.js +0 -37
- package/cockroach-core/columns/interval.js.map +0 -1
- package/cockroach-core/columns/jsonb.cjs +0 -72
- package/cockroach-core/columns/jsonb.cjs.map +0 -1
- package/cockroach-core/columns/jsonb.d.cts +0 -28
- package/cockroach-core/columns/jsonb.d.ts +0 -28
- package/cockroach-core/columns/jsonb.js +0 -46
- package/cockroach-core/columns/jsonb.js.map +0 -1
- package/cockroach-core/columns/real.cjs +0 -66
- package/cockroach-core/columns/real.cjs.map +0 -1
- package/cockroach-core/columns/real.d.cts +0 -29
- package/cockroach-core/columns/real.d.ts +0 -29
- package/cockroach-core/columns/real.js +0 -40
- package/cockroach-core/columns/real.js.map +0 -1
- package/cockroach-core/columns/smallint.cjs +0 -68
- package/cockroach-core/columns/smallint.cjs.map +0 -1
- package/cockroach-core/columns/smallint.d.cts +0 -26
- package/cockroach-core/columns/smallint.d.ts +0 -26
- package/cockroach-core/columns/smallint.js +0 -41
- package/cockroach-core/columns/smallint.js.map +0 -1
- package/cockroach-core/columns/string.cjs +0 -68
- package/cockroach-core/columns/string.cjs.map +0 -1
- package/cockroach-core/columns/string.d.cts +0 -51
- package/cockroach-core/columns/string.d.ts +0 -51
- package/cockroach-core/columns/string.js +0 -41
- package/cockroach-core/columns/string.js.map +0 -1
- package/cockroach-core/columns/time.cjs +0 -70
- package/cockroach-core/columns/time.cjs.map +0 -1
- package/cockroach-core/columns/time.d.cts +0 -39
- package/cockroach-core/columns/time.d.ts +0 -39
- package/cockroach-core/columns/time.js +0 -44
- package/cockroach-core/columns/time.js.map +0 -1
- package/cockroach-core/columns/timestamp.cjs +0 -111
- package/cockroach-core/columns/timestamp.cjs.map +0 -1
- package/cockroach-core/columns/timestamp.d.cts +0 -66
- package/cockroach-core/columns/timestamp.d.ts +0 -66
- package/cockroach-core/columns/timestamp.js +0 -83
- package/cockroach-core/columns/timestamp.js.map +0 -1
- package/cockroach-core/columns/utils.cjs +0 -65
- package/cockroach-core/columns/utils.cjs.map +0 -1
- package/cockroach-core/columns/utils.d.cts +0 -1
- package/cockroach-core/columns/utils.d.ts +0 -1
- package/cockroach-core/columns/utils.js +0 -41
- package/cockroach-core/columns/utils.js.map +0 -1
- package/cockroach-core/columns/uuid.cjs +0 -63
- package/cockroach-core/columns/uuid.cjs.map +0 -1
- package/cockroach-core/columns/uuid.d.cts +0 -26
- package/cockroach-core/columns/uuid.d.ts +0 -26
- package/cockroach-core/columns/uuid.js +0 -37
- package/cockroach-core/columns/uuid.js.map +0 -1
- package/cockroach-core/columns/varchar.cjs +0 -62
- package/cockroach-core/columns/varchar.cjs.map +0 -1
- package/cockroach-core/columns/varchar.d.cts +0 -45
- package/cockroach-core/columns/varchar.d.ts +0 -45
- package/cockroach-core/columns/varchar.js +0 -36
- package/cockroach-core/columns/varchar.js.map +0 -1
- package/cockroach-core/columns/vector.cjs +0 -66
- package/cockroach-core/columns/vector.cjs.map +0 -1
- package/cockroach-core/columns/vector.d.cts +0 -41
- package/cockroach-core/columns/vector.d.ts +0 -41
- package/cockroach-core/columns/vector.js +0 -40
- package/cockroach-core/columns/vector.js.map +0 -1
- package/cockroach-core/db.cjs +0 -346
- package/cockroach-core/db.cjs.map +0 -1
- package/cockroach-core/db.d.cts +0 -282
- package/cockroach-core/db.d.ts +0 -282
- package/cockroach-core/db.js +0 -327
- package/cockroach-core/db.js.map +0 -1
- package/cockroach-core/dialect.cjs +0 -1136
- package/cockroach-core/dialect.cjs.map +0 -1
- package/cockroach-core/dialect.d.cts +0 -65
- package/cockroach-core/dialect.d.ts +0 -65
- package/cockroach-core/dialect.js +0 -1132
- package/cockroach-core/dialect.js.map +0 -1
- package/cockroach-core/expressions.cjs +0 -49
- package/cockroach-core/expressions.cjs.map +0 -1
- package/cockroach-core/expressions.d.cts +0 -8
- package/cockroach-core/expressions.d.ts +0 -8
- package/cockroach-core/expressions.js +0 -22
- package/cockroach-core/expressions.js.map +0 -1
- package/cockroach-core/foreign-keys.cjs +0 -92
- package/cockroach-core/foreign-keys.cjs.map +0 -1
- package/cockroach-core/foreign-keys.d.cts +0 -52
- package/cockroach-core/foreign-keys.d.ts +0 -52
- package/cockroach-core/foreign-keys.js +0 -66
- package/cockroach-core/foreign-keys.js.map +0 -1
- package/cockroach-core/index.cjs +0 -61
- package/cockroach-core/index.cjs.map +0 -1
- package/cockroach-core/index.d.cts +0 -20
- package/cockroach-core/index.d.ts +0 -20
- package/cockroach-core/index.js +0 -21
- package/cockroach-core/index.js.map +0 -1
- package/cockroach-core/indexes.cjs +0 -137
- package/cockroach-core/indexes.cjs.map +0 -1
- package/cockroach-core/indexes.d.cts +0 -64
- package/cockroach-core/indexes.d.ts +0 -64
- package/cockroach-core/indexes.js +0 -109
- package/cockroach-core/indexes.js.map +0 -1
- package/cockroach-core/policies.cjs +0 -58
- package/cockroach-core/policies.cjs.map +0 -1
- package/cockroach-core/policies.d.cts +0 -24
- package/cockroach-core/policies.d.ts +0 -24
- package/cockroach-core/policies.js +0 -33
- package/cockroach-core/policies.js.map +0 -1
- package/cockroach-core/primary-keys.cjs +0 -64
- package/cockroach-core/primary-keys.cjs.map +0 -1
- package/cockroach-core/primary-keys.d.cts +0 -23
- package/cockroach-core/primary-keys.d.ts +0 -23
- package/cockroach-core/primary-keys.js +0 -38
- package/cockroach-core/primary-keys.js.map +0 -1
- package/cockroach-core/query-builders/count.cjs +0 -79
- package/cockroach-core/query-builders/count.cjs.map +0 -1
- package/cockroach-core/query-builders/count.d.cts +0 -29
- package/cockroach-core/query-builders/count.d.ts +0 -29
- package/cockroach-core/query-builders/count.js +0 -55
- package/cockroach-core/query-builders/count.js.map +0 -1
- package/cockroach-core/query-builders/delete.cjs +0 -124
- package/cockroach-core/query-builders/delete.cjs.map +0 -1
- package/cockroach-core/query-builders/delete.d.cts +0 -103
- package/cockroach-core/query-builders/delete.d.ts +0 -103
- package/cockroach-core/query-builders/delete.js +0 -100
- package/cockroach-core/query-builders/delete.js.map +0 -1
- package/cockroach-core/query-builders/index.cjs +0 -35
- package/cockroach-core/query-builders/index.cjs.map +0 -1
- package/cockroach-core/query-builders/index.d.cts +0 -7
- package/cockroach-core/query-builders/index.d.ts +0 -7
- package/cockroach-core/query-builders/index.js +0 -8
- package/cockroach-core/query-builders/index.js.map +0 -1
- package/cockroach-core/query-builders/insert.cjs +0 -213
- package/cockroach-core/query-builders/insert.cjs.map +0 -1
- package/cockroach-core/query-builders/insert.d.cts +0 -171
- package/cockroach-core/query-builders/insert.d.ts +0 -171
- package/cockroach-core/query-builders/insert.js +0 -188
- package/cockroach-core/query-builders/insert.js.map +0 -1
- package/cockroach-core/query-builders/query-builder.cjs +0 -118
- package/cockroach-core/query-builders/query-builder.cjs.map +0 -1
- package/cockroach-core/query-builders/query-builder.d.cts +0 -37
- package/cockroach-core/query-builders/query-builder.d.ts +0 -37
- package/cockroach-core/query-builders/query-builder.js +0 -94
- package/cockroach-core/query-builders/query-builder.js.map +0 -1
- package/cockroach-core/query-builders/query.cjs +0 -145
- package/cockroach-core/query-builders/query.cjs.map +0 -1
- package/cockroach-core/query-builders/query.d.cts +0 -47
- package/cockroach-core/query-builders/query.d.ts +0 -47
- package/cockroach-core/query-builders/query.js +0 -122
- package/cockroach-core/query-builders/query.js.map +0 -1
- package/cockroach-core/query-builders/raw.cjs +0 -57
- package/cockroach-core/query-builders/raw.cjs.map +0 -1
- package/cockroach-core/query-builders/raw.d.cts +0 -22
- package/cockroach-core/query-builders/raw.d.ts +0 -22
- package/cockroach-core/query-builders/raw.js +0 -33
- package/cockroach-core/query-builders/raw.js.map +0 -1
- package/cockroach-core/query-builders/refresh-materialized-view.cjs +0 -83
- package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +0 -1
- package/cockroach-core/query-builders/refresh-materialized-view.d.cts +0 -28
- package/cockroach-core/query-builders/refresh-materialized-view.d.ts +0 -28
- package/cockroach-core/query-builders/refresh-materialized-view.js +0 -59
- package/cockroach-core/query-builders/refresh-materialized-view.js.map +0 -1
- package/cockroach-core/query-builders/select.cjs +0 -848
- package/cockroach-core/query-builders/select.cjs.map +0 -1
- package/cockroach-core/query-builders/select.d.cts +0 -787
- package/cockroach-core/query-builders/select.d.ts +0 -787
- package/cockroach-core/query-builders/select.js +0 -821
- package/cockroach-core/query-builders/select.js.map +0 -1
- package/cockroach-core/query-builders/select.types.cjs +0 -17
- package/cockroach-core/query-builders/select.types.cjs.map +0 -1
- package/cockroach-core/query-builders/select.types.d.cts +0 -139
- package/cockroach-core/query-builders/select.types.d.ts +0 -139
- package/cockroach-core/query-builders/select.types.js +0 -1
- package/cockroach-core/query-builders/select.types.js.map +0 -1
- package/cockroach-core/query-builders/update.cjs +0 -240
- package/cockroach-core/query-builders/update.cjs.map +0 -1
- package/cockroach-core/query-builders/update.d.cts +0 -170
- package/cockroach-core/query-builders/update.d.ts +0 -170
- package/cockroach-core/query-builders/update.js +0 -219
- package/cockroach-core/query-builders/update.js.map +0 -1
- package/cockroach-core/roles.cjs +0 -54
- package/cockroach-core/roles.cjs.map +0 -1
- package/cockroach-core/roles.d.cts +0 -12
- package/cockroach-core/roles.d.ts +0 -12
- package/cockroach-core/roles.js +0 -29
- package/cockroach-core/roles.js.map +0 -1
- package/cockroach-core/schema.cjs +0 -80
- package/cockroach-core/schema.cjs.map +0 -1
- package/cockroach-core/schema.d.cts +0 -22
- package/cockroach-core/schema.d.ts +0 -22
- package/cockroach-core/schema.js +0 -60
- package/cockroach-core/schema.js.map +0 -1
- package/cockroach-core/sequence.cjs +0 -52
- package/cockroach-core/sequence.cjs.map +0 -1
- package/cockroach-core/sequence.d.cts +0 -17
- package/cockroach-core/sequence.d.ts +0 -17
- package/cockroach-core/sequence.js +0 -25
- package/cockroach-core/sequence.js.map +0 -1
- package/cockroach-core/session.cjs +0 -120
- package/cockroach-core/session.cjs.map +0 -1
- package/cockroach-core/session.d.cts +0 -62
- package/cockroach-core/session.d.ts +0 -62
- package/cockroach-core/session.js +0 -94
- package/cockroach-core/session.js.map +0 -1
- package/cockroach-core/subquery.cjs +0 -17
- package/cockroach-core/subquery.cjs.map +0 -1
- package/cockroach-core/subquery.d.cts +0 -18
- package/cockroach-core/subquery.d.ts +0 -18
- package/cockroach-core/subquery.js +0 -1
- package/cockroach-core/subquery.js.map +0 -1
- package/cockroach-core/table.cjs +0 -100
- package/cockroach-core/table.cjs.map +0 -1
- package/cockroach-core/table.d.cts +0 -39
- package/cockroach-core/table.d.ts +0 -39
- package/cockroach-core/table.js +0 -71
- package/cockroach-core/table.js.map +0 -1
- package/cockroach-core/unique-constraint.cjs +0 -77
- package/cockroach-core/unique-constraint.cjs.map +0 -1
- package/cockroach-core/unique-constraint.d.cts +0 -23
- package/cockroach-core/unique-constraint.d.ts +0 -23
- package/cockroach-core/unique-constraint.js +0 -50
- package/cockroach-core/unique-constraint.js.map +0 -1
- package/cockroach-core/utils/array.cjs +0 -106
- package/cockroach-core/utils/array.cjs.map +0 -1
- package/cockroach-core/utils/array.d.cts +0 -3
- package/cockroach-core/utils/array.d.ts +0 -3
- package/cockroach-core/utils/array.js +0 -80
- package/cockroach-core/utils/array.js.map +0 -1
- package/cockroach-core/utils/index.cjs +0 -23
- package/cockroach-core/utils/index.cjs.map +0 -1
- package/cockroach-core/utils/index.d.cts +0 -1
- package/cockroach-core/utils/index.d.ts +0 -1
- package/cockroach-core/utils/index.js +0 -2
- package/cockroach-core/utils/index.js.map +0 -1
- package/cockroach-core/utils.cjs +0 -98
- package/cockroach-core/utils.cjs.map +0 -1
- package/cockroach-core/utils.d.cts +0 -47
- package/cockroach-core/utils.d.ts +0 -47
- package/cockroach-core/utils.js +0 -72
- package/cockroach-core/utils.js.map +0 -1
- package/cockroach-core/view-base.cjs +0 -33
- package/cockroach-core/view-base.cjs.map +0 -1
- package/cockroach-core/view-base.d.cts +0 -8
- package/cockroach-core/view-base.d.ts +0 -8
- package/cockroach-core/view-base.js +0 -9
- package/cockroach-core/view-base.js.map +0 -1
- package/cockroach-core/view.cjs +0 -271
- package/cockroach-core/view.cjs.map +0 -1
- package/cockroach-core/view.d.cts +0 -107
- package/cockroach-core/view.d.ts +0 -107
- package/cockroach-core/view.js +0 -233
- package/cockroach-core/view.js.map +0 -1
- package/errors/index.cjs +0 -39
- package/errors/index.cjs.map +0 -1
- package/errors/index.d.cts +0 -6
- package/errors/index.d.ts +0 -6
- package/errors/index.js +0 -15
- package/errors/index.js.map +0 -1
- package/mssql-core/alias.cjs +0 -32
- package/mssql-core/alias.cjs.map +0 -1
- package/mssql-core/alias.d.cts +0 -4
- package/mssql-core/alias.d.ts +0 -4
- package/mssql-core/alias.js +0 -8
- package/mssql-core/alias.js.map +0 -1
- package/mssql-core/checks.cjs +0 -58
- package/mssql-core/checks.cjs.map +0 -1
- package/mssql-core/checks.d.cts +0 -18
- package/mssql-core/checks.d.ts +0 -18
- package/mssql-core/checks.js +0 -32
- package/mssql-core/checks.js.map +0 -1
- package/mssql-core/columns/all.cjs +0 -74
- package/mssql-core/columns/all.cjs.map +0 -1
- package/mssql-core/columns/all.d.cts +0 -45
- package/mssql-core/columns/all.d.ts +0 -45
- package/mssql-core/columns/all.js +0 -50
- package/mssql-core/columns/all.js.map +0 -1
- package/mssql-core/columns/bigint.cjs +0 -67
- package/mssql-core/columns/bigint.cjs.map +0 -1
- package/mssql-core/columns/bigint.d.cts +0 -33
- package/mssql-core/columns/bigint.d.ts +0 -33
- package/mssql-core/columns/bigint.js +0 -41
- package/mssql-core/columns/bigint.js.map +0 -1
- package/mssql-core/columns/binary.cjs +0 -57
- package/mssql-core/columns/binary.cjs.map +0 -1
- package/mssql-core/columns/binary.d.cts +0 -28
- package/mssql-core/columns/binary.d.ts +0 -28
- package/mssql-core/columns/binary.js +0 -31
- package/mssql-core/columns/binary.js.map +0 -1
- package/mssql-core/columns/bit.cjs +0 -54
- package/mssql-core/columns/bit.cjs.map +0 -1
- package/mssql-core/columns/bit.d.cts +0 -24
- package/mssql-core/columns/bit.d.ts +0 -24
- package/mssql-core/columns/bit.js +0 -28
- package/mssql-core/columns/bit.js.map +0 -1
- package/mssql-core/columns/char.cjs +0 -74
- package/mssql-core/columns/char.cjs.map +0 -1
- package/mssql-core/columns/char.d.cts +0 -37
- package/mssql-core/columns/char.d.ts +0 -37
- package/mssql-core/columns/char.js +0 -47
- package/mssql-core/columns/char.js.map +0 -1
- package/mssql-core/columns/common.cjs +0 -110
- package/mssql-core/columns/common.cjs.map +0 -1
- package/mssql-core/columns/common.d.cts +0 -67
- package/mssql-core/columns/common.d.ts +0 -67
- package/mssql-core/columns/common.js +0 -83
- package/mssql-core/columns/common.js.map +0 -1
- package/mssql-core/columns/custom.cjs +0 -77
- package/mssql-core/columns/custom.cjs.map +0 -1
- package/mssql-core/columns/custom.d.cts +0 -156
- package/mssql-core/columns/custom.d.ts +0 -156
- package/mssql-core/columns/custom.js +0 -51
- package/mssql-core/columns/custom.js.map +0 -1
- package/mssql-core/columns/date.cjs +0 -94
- package/mssql-core/columns/date.cjs.map +0 -1
- package/mssql-core/columns/date.common.cjs +0 -37
- package/mssql-core/columns/date.common.cjs.map +0 -1
- package/mssql-core/columns/date.common.d.cts +0 -12
- package/mssql-core/columns/date.common.d.ts +0 -12
- package/mssql-core/columns/date.common.js +0 -13
- package/mssql-core/columns/date.common.js.map +0 -1
- package/mssql-core/columns/date.d.cts +0 -55
- package/mssql-core/columns/date.d.ts +0 -55
- package/mssql-core/columns/date.js +0 -66
- package/mssql-core/columns/date.js.map +0 -1
- package/mssql-core/columns/datetime.cjs +0 -94
- package/mssql-core/columns/datetime.cjs.map +0 -1
- package/mssql-core/columns/datetime.d.cts +0 -54
- package/mssql-core/columns/datetime.d.ts +0 -54
- package/mssql-core/columns/datetime.js +0 -66
- package/mssql-core/columns/datetime.js.map +0 -1
- package/mssql-core/columns/datetime2.cjs +0 -102
- package/mssql-core/columns/datetime2.cjs.map +0 -1
- package/mssql-core/columns/datetime2.d.cts +0 -54
- package/mssql-core/columns/datetime2.d.ts +0 -54
- package/mssql-core/columns/datetime2.js +0 -74
- package/mssql-core/columns/datetime2.js.map +0 -1
- package/mssql-core/columns/datetimeoffset.cjs +0 -102
- package/mssql-core/columns/datetimeoffset.cjs.map +0 -1
- package/mssql-core/columns/datetimeoffset.d.cts +0 -54
- package/mssql-core/columns/datetimeoffset.d.ts +0 -54
- package/mssql-core/columns/datetimeoffset.js +0 -74
- package/mssql-core/columns/datetimeoffset.js.map +0 -1
- package/mssql-core/columns/decimal.cjs +0 -146
- package/mssql-core/columns/decimal.cjs.map +0 -1
- package/mssql-core/columns/decimal.d.cts +0 -72
- package/mssql-core/columns/decimal.d.ts +0 -72
- package/mssql-core/columns/decimal.js +0 -116
- package/mssql-core/columns/decimal.js.map +0 -1
- package/mssql-core/columns/float.cjs +0 -58
- package/mssql-core/columns/float.cjs.map +0 -1
- package/mssql-core/columns/float.d.cts +0 -28
- package/mssql-core/columns/float.d.ts +0 -28
- package/mssql-core/columns/float.js +0 -32
- package/mssql-core/columns/float.js.map +0 -1
- package/mssql-core/columns/index.cjs +0 -63
- package/mssql-core/columns/index.cjs.map +0 -1
- package/mssql-core/columns/index.d.cts +0 -21
- package/mssql-core/columns/index.d.ts +0 -21
- package/mssql-core/columns/index.js +0 -22
- package/mssql-core/columns/index.js.map +0 -1
- package/mssql-core/columns/int.cjs +0 -53
- package/mssql-core/columns/int.cjs.map +0 -1
- package/mssql-core/columns/int.d.cts +0 -23
- package/mssql-core/columns/int.d.ts +0 -23
- package/mssql-core/columns/int.js +0 -27
- package/mssql-core/columns/int.js.map +0 -1
- package/mssql-core/columns/numeric.cjs +0 -146
- package/mssql-core/columns/numeric.cjs.map +0 -1
- package/mssql-core/columns/numeric.d.cts +0 -72
- package/mssql-core/columns/numeric.d.ts +0 -72
- package/mssql-core/columns/numeric.js +0 -116
- package/mssql-core/columns/numeric.js.map +0 -1
- package/mssql-core/columns/real.cjs +0 -53
- package/mssql-core/columns/real.cjs.map +0 -1
- package/mssql-core/columns/real.d.cts +0 -23
- package/mssql-core/columns/real.d.ts +0 -23
- package/mssql-core/columns/real.js +0 -27
- package/mssql-core/columns/real.js.map +0 -1
- package/mssql-core/columns/smallint.cjs +0 -62
- package/mssql-core/columns/smallint.cjs.map +0 -1
- package/mssql-core/columns/smallint.d.cts +0 -24
- package/mssql-core/columns/smallint.d.ts +0 -24
- package/mssql-core/columns/smallint.js +0 -36
- package/mssql-core/columns/smallint.js.map +0 -1
- package/mssql-core/columns/text.cjs +0 -68
- package/mssql-core/columns/text.cjs.map +0 -1
- package/mssql-core/columns/text.d.cts +0 -45
- package/mssql-core/columns/text.d.ts +0 -45
- package/mssql-core/columns/text.js +0 -41
- package/mssql-core/columns/text.js.map +0 -1
- package/mssql-core/columns/time.cjs +0 -90
- package/mssql-core/columns/time.cjs.map +0 -1
- package/mssql-core/columns/time.d.cts +0 -49
- package/mssql-core/columns/time.d.ts +0 -49
- package/mssql-core/columns/time.js +0 -62
- package/mssql-core/columns/time.js.map +0 -1
- package/mssql-core/columns/tinyint.cjs +0 -62
- package/mssql-core/columns/tinyint.cjs.map +0 -1
- package/mssql-core/columns/tinyint.d.cts +0 -24
- package/mssql-core/columns/tinyint.d.ts +0 -24
- package/mssql-core/columns/tinyint.js +0 -36
- package/mssql-core/columns/tinyint.js.map +0 -1
- package/mssql-core/columns/varbinary.cjs +0 -61
- package/mssql-core/columns/varbinary.cjs.map +0 -1
- package/mssql-core/columns/varbinary.d.cts +0 -27
- package/mssql-core/columns/varbinary.d.ts +0 -27
- package/mssql-core/columns/varbinary.js +0 -35
- package/mssql-core/columns/varbinary.js.map +0 -1
- package/mssql-core/columns/varchar.cjs +0 -117
- package/mssql-core/columns/varchar.cjs.map +0 -1
- package/mssql-core/columns/varchar.d.cts +0 -66
- package/mssql-core/columns/varchar.d.ts +0 -66
- package/mssql-core/columns/varchar.js +0 -88
- package/mssql-core/columns/varchar.js.map +0 -1
- package/mssql-core/db.cjs +0 -254
- package/mssql-core/db.cjs.map +0 -1
- package/mssql-core/db.d.cts +0 -228
- package/mssql-core/db.d.ts +0 -228
- package/mssql-core/db.js +0 -235
- package/mssql-core/db.js.map +0 -1
- package/mssql-core/dialect.cjs +0 -623
- package/mssql-core/dialect.cjs.map +0 -1
- package/mssql-core/dialect.d.cts +0 -58
- package/mssql-core/dialect.d.ts +0 -58
- package/mssql-core/dialect.js +0 -605
- package/mssql-core/dialect.js.map +0 -1
- package/mssql-core/expressions.cjs +0 -49
- package/mssql-core/expressions.cjs.map +0 -1
- package/mssql-core/expressions.d.cts +0 -8
- package/mssql-core/expressions.d.ts +0 -8
- package/mssql-core/expressions.js +0 -22
- package/mssql-core/expressions.js.map +0 -1
- package/mssql-core/foreign-keys.cjs +0 -91
- package/mssql-core/foreign-keys.cjs.map +0 -1
- package/mssql-core/foreign-keys.d.cts +0 -51
- package/mssql-core/foreign-keys.d.ts +0 -51
- package/mssql-core/foreign-keys.js +0 -65
- package/mssql-core/foreign-keys.js.map +0 -1
- package/mssql-core/index.cjs +0 -55
- package/mssql-core/index.cjs.map +0 -1
- package/mssql-core/index.d.cts +0 -17
- package/mssql-core/index.d.ts +0 -17
- package/mssql-core/index.js +0 -18
- package/mssql-core/index.js.map +0 -1
- package/mssql-core/indexes.cjs +0 -80
- package/mssql-core/indexes.cjs.map +0 -1
- package/mssql-core/indexes.d.cts +0 -49
- package/mssql-core/indexes.d.ts +0 -49
- package/mssql-core/indexes.js +0 -52
- package/mssql-core/indexes.js.map +0 -1
- package/mssql-core/primary-keys.cjs +0 -64
- package/mssql-core/primary-keys.cjs.map +0 -1
- package/mssql-core/primary-keys.d.cts +0 -23
- package/mssql-core/primary-keys.d.ts +0 -23
- package/mssql-core/primary-keys.js +0 -38
- package/mssql-core/primary-keys.js.map +0 -1
- package/mssql-core/query-builders/delete.cjs +0 -107
- package/mssql-core/query-builders/delete.cjs.map +0 -1
- package/mssql-core/query-builders/delete.d.cts +0 -98
- package/mssql-core/query-builders/delete.d.ts +0 -98
- package/mssql-core/query-builders/delete.js +0 -83
- package/mssql-core/query-builders/delete.js.map +0 -1
- package/mssql-core/query-builders/index.cjs +0 -33
- package/mssql-core/query-builders/index.cjs.map +0 -1
- package/mssql-core/query-builders/index.d.cts +0 -6
- package/mssql-core/query-builders/index.d.ts +0 -6
- package/mssql-core/query-builders/index.js +0 -7
- package/mssql-core/query-builders/index.js.map +0 -1
- package/mssql-core/query-builders/insert.cjs +0 -105
- package/mssql-core/query-builders/insert.cjs.map +0 -1
- package/mssql-core/query-builders/insert.d.cts +0 -78
- package/mssql-core/query-builders/insert.d.ts +0 -78
- package/mssql-core/query-builders/insert.js +0 -80
- package/mssql-core/query-builders/insert.js.map +0 -1
- package/mssql-core/query-builders/query-builder.cjs +0 -95
- package/mssql-core/query-builders/query-builder.cjs.map +0 -1
- package/mssql-core/query-builders/query-builder.d.cts +0 -32
- package/mssql-core/query-builders/query-builder.d.ts +0 -32
- package/mssql-core/query-builders/query-builder.js +0 -71
- package/mssql-core/query-builders/query-builder.js.map +0 -1
- package/mssql-core/query-builders/query.cjs +0 -126
- package/mssql-core/query-builders/query.cjs.map +0 -1
- package/mssql-core/query-builders/query.d.cts +0 -42
- package/mssql-core/query-builders/query.d.ts +0 -42
- package/mssql-core/query-builders/query.js +0 -103
- package/mssql-core/query-builders/query.js.map +0 -1
- package/mssql-core/query-builders/select.cjs +0 -679
- package/mssql-core/query-builders/select.cjs.map +0 -1
- package/mssql-core/query-builders/select.d.cts +0 -549
- package/mssql-core/query-builders/select.d.ts +0 -549
- package/mssql-core/query-builders/select.js +0 -649
- package/mssql-core/query-builders/select.js.map +0 -1
- package/mssql-core/query-builders/select.types.cjs +0 -17
- package/mssql-core/query-builders/select.types.cjs.map +0 -1
- package/mssql-core/query-builders/select.types.d.cts +0 -142
- package/mssql-core/query-builders/select.types.d.ts +0 -142
- package/mssql-core/query-builders/select.types.js +0 -1
- package/mssql-core/query-builders/select.types.js.map +0 -1
- package/mssql-core/query-builders/update.cjs +0 -138
- package/mssql-core/query-builders/update.cjs.map +0 -1
- package/mssql-core/query-builders/update.d.cts +0 -141
- package/mssql-core/query-builders/update.d.ts +0 -141
- package/mssql-core/query-builders/update.js +0 -113
- package/mssql-core/query-builders/update.js.map +0 -1
- package/mssql-core/schema.cjs +0 -51
- package/mssql-core/schema.cjs.map +0 -1
- package/mssql-core/schema.d.cts +0 -22
- package/mssql-core/schema.d.ts +0 -22
- package/mssql-core/schema.js +0 -25
- package/mssql-core/schema.js.map +0 -1
- package/mssql-core/session.cjs +0 -74
- package/mssql-core/session.cjs.map +0 -1
- package/mssql-core/session.d.cts +0 -63
- package/mssql-core/session.d.ts +0 -63
- package/mssql-core/session.js +0 -48
- package/mssql-core/session.js.map +0 -1
- package/mssql-core/subquery.cjs +0 -17
- package/mssql-core/subquery.cjs.map +0 -1
- package/mssql-core/subquery.d.cts +0 -18
- package/mssql-core/subquery.d.ts +0 -18
- package/mssql-core/subquery.js +0 -1
- package/mssql-core/subquery.js.map +0 -1
- package/mssql-core/table.cjs +0 -81
- package/mssql-core/table.cjs.map +0 -1
- package/mssql-core/table.d.cts +0 -43
- package/mssql-core/table.d.ts +0 -43
- package/mssql-core/table.js +0 -53
- package/mssql-core/table.js.map +0 -1
- package/mssql-core/unique-constraint.cjs +0 -76
- package/mssql-core/unique-constraint.cjs.map +0 -1
- package/mssql-core/unique-constraint.d.cts +0 -23
- package/mssql-core/unique-constraint.d.ts +0 -23
- package/mssql-core/unique-constraint.js +0 -49
- package/mssql-core/unique-constraint.js.map +0 -1
- package/mssql-core/utils.cjs +0 -85
- package/mssql-core/utils.cjs.map +0 -1
- package/mssql-core/utils.d.cts +0 -31
- package/mssql-core/utils.d.ts +0 -31
- package/mssql-core/utils.js +0 -60
- package/mssql-core/utils.js.map +0 -1
- package/mssql-core/view-base.cjs +0 -33
- package/mssql-core/view-base.cjs.map +0 -1
- package/mssql-core/view-base.d.cts +0 -9
- package/mssql-core/view-base.d.ts +0 -9
- package/mssql-core/view-base.js +0 -9
- package/mssql-core/view-base.js.map +0 -1
- package/mssql-core/view-common.cjs +0 -29
- package/mssql-core/view-common.cjs.map +0 -1
- package/mssql-core/view-common.d.cts +0 -1
- package/mssql-core/view-common.d.ts +0 -1
- package/mssql-core/view-common.js +0 -5
- package/mssql-core/view-common.js.map +0 -1
- package/mssql-core/view.cjs +0 -154
- package/mssql-core/view.cjs.map +0 -1
- package/mssql-core/view.d.cts +0 -64
- package/mssql-core/view.d.ts +0 -64
- package/mssql-core/view.js +0 -125
- package/mssql-core/view.js.map +0 -1
- package/node-mssql/driver.cjs +0 -107
- package/node-mssql/driver.cjs.map +0 -1
- package/node-mssql/driver.d.cts +0 -46
- package/node-mssql/driver.d.ts +0 -46
- package/node-mssql/driver.js +0 -84
- package/node-mssql/driver.js.map +0 -1
- package/node-mssql/index.cjs +0 -25
- package/node-mssql/index.cjs.map +0 -1
- package/node-mssql/index.d.cts +0 -2
- package/node-mssql/index.d.ts +0 -2
- package/node-mssql/index.js +0 -3
- package/node-mssql/index.js.map +0 -1
- package/node-mssql/migrator.cjs +0 -33
- package/node-mssql/migrator.cjs.map +0 -1
- package/node-mssql/migrator.d.cts +0 -3
- package/node-mssql/migrator.d.ts +0 -3
- package/node-mssql/migrator.js +0 -9
- package/node-mssql/migrator.js.map +0 -1
- package/node-mssql/pool.cjs +0 -54
- package/node-mssql/pool.cjs.map +0 -1
- package/node-mssql/pool.d.cts +0 -8
- package/node-mssql/pool.d.ts +0 -8
- package/node-mssql/pool.js +0 -20
- package/node-mssql/pool.js.map +0 -1
- package/node-mssql/session.cjs +0 -256
- package/node-mssql/session.cjs.map +0 -1
- package/node-mssql/session.d.cts +0 -48
- package/node-mssql/session.d.ts +0 -48
- package/node-mssql/session.js +0 -224
- package/node-mssql/session.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId as number === 1231) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId as number === 1115) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId as number === 1185) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId as number === 1187) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId as number === 1182) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId as number === 1231) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId as number === 1115) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId as number === 1185) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId as number === 1187) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId as number === 1182) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn this.queryWithCache(rawQuery.text, params, async () => {\n\t\t\t\t\t\treturn await client.query(rawQuery, params);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(query.text, params, async () => {\n\t\t\t\t\treturn await client.query(query, params);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(this.rawQueryConfig.text, params, async () => {\n\t\t\t\t\treturn this.client.query(this.rawQueryConfig, params);\n\t\t\t\t}).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["pg","sql"]}
|
|
1
|
+
{"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId === 1231) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId === 1115) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId === 1185) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId === 1187) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId === 1182) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId === 1231) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId === 1115) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId === 1185) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId === 1187) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId === 1182) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn this.queryWithCache(rawQuery.text, params, async () => {\n\t\t\t\t\t\treturn await client.query(rawQuery, params);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(query.text, params, async () => {\n\t\t\t\t\treturn await client.query(query, params);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(this.rawQueryConfig.text, params, async () => {\n\t\t\t\t\treturn this.client.query(this.rawQueryConfig, params);\n\t\t\t\t}).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["pg","sql"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId as number === 1231) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId as number === 1115) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId as number === 1185) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId as number === 1187) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId as number === 1182) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId as number === 1231) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId as number === 1115) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId as number === 1185) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId as number === 1187) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId as number === 1182) {\n\t\t\t\t\t\treturn (val: any) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn this.queryWithCache(rawQuery.text, params, async () => {\n\t\t\t\t\t\treturn await client.query(rawQuery, params);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(query.text, params, async () => {\n\t\t\t\t\treturn await client.query(query, params);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(this.rawQueryConfig.text, params, async () => {\n\t\t\t\t\treturn this.client.query(this.rawQueryConfig, params);\n\t\t\t\t}).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["sql"]}
|
|
1
|
+
{"version":3,"sources":["../../src/node-postgres/session.ts"],"sourcesContent":["import type { Client, PoolClient, QueryArrayConfig, QueryConfig, QueryResult, QueryResultRow } from 'pg';\nimport pg from 'pg';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { entityKind } from '~/entity.ts';\nimport { type Logger, NoopLogger } from '~/logger.ts';\nimport type { PgDialect } from '~/pg-core/dialect.ts';\nimport { PgTransaction } from '~/pg-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/pg-core/query-builders/select.types.ts';\nimport type { PgQueryResultHKT, PgTransactionConfig, PreparedQueryConfig } from '~/pg-core/session.ts';\nimport { PgPreparedQuery, PgSession } from '~/pg-core/session.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { tracer } from '~/tracing.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nconst { Pool, types } = pg;\n\nexport type NodePgClient = pg.Pool | PoolClient | Client;\n\nexport class NodePgPreparedQuery<T extends PreparedQueryConfig> extends PgPreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodePgPreparedQuery';\n\n\tprivate rawQueryConfig: QueryConfig;\n\tprivate queryConfig: QueryArrayConfig;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tprivate _isResponseInArrayMode: boolean,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper({ sql: queryString, params }, cache, queryMetadata, cacheConfig);\n\t\tthis.rawQueryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId === 1231) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId === 1115) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId === 1185) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId === 1187) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId === 1182) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t\tthis.queryConfig = {\n\t\t\tname,\n\t\t\ttext: queryString,\n\t\t\trowMode: 'array',\n\t\t\ttypes: {\n\t\t\t\t// @ts-ignore\n\t\t\t\tgetTypeParser: (typeId, format) => {\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMPTZ) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.TIMESTAMP) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.DATE) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\tif (typeId === types.builtins.INTERVAL) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// numeric[]\n\t\t\t\t\tif (typeId === 1231) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp[]\n\t\t\t\t\tif (typeId === 1115) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// timestamp with timezone[]\n\t\t\t\t\tif (typeId === 1185) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// interval[]\n\t\t\t\t\tif (typeId === 1187) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// date[]\n\t\t\t\t\tif (typeId === 1182) {\n\t\t\t\t\t\treturn (val) => val;\n\t\t\t\t\t}\n\t\t\t\t\t// @ts-ignore\n\t\t\t\t\treturn types.getTypeParser(typeId, format);\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', async () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\n\t\t\tconst { fields, rawQueryConfig: rawQuery, client, queryConfig: query, joinsNotNullableMap, customResultMapper } =\n\t\t\t\tthis;\n\t\t\tif (!fields && !customResultMapper) {\n\t\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', async (span) => {\n\t\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t\t'drizzle.query.name': rawQuery.name,\n\t\t\t\t\t\t'drizzle.query.text': rawQuery.text,\n\t\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t\t});\n\t\t\t\t\treturn this.queryWithCache(rawQuery.text, params, async () => {\n\t\t\t\t\t\treturn await client.query(rawQuery, params);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tconst result = await tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': query.name,\n\t\t\t\t\t'drizzle.query.text': query.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(query.text, params, async () => {\n\t\t\t\t\treturn await client.query(query, params);\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn tracer.startActiveSpan('drizzle.mapResponse', () => {\n\t\t\t\treturn customResultMapper\n\t\t\t\t\t? customResultMapper(result.rows)\n\t\t\t\t\t: result.rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t\t\t});\n\t\t});\n\t}\n\n\tall(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['all']> {\n\t\treturn tracer.startActiveSpan('drizzle.execute', () => {\n\t\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\t\t\tthis.logger.logQuery(this.rawQueryConfig.text, params);\n\t\t\treturn tracer.startActiveSpan('drizzle.driver.execute', (span) => {\n\t\t\t\tspan?.setAttributes({\n\t\t\t\t\t'drizzle.query.name': this.rawQueryConfig.name,\n\t\t\t\t\t'drizzle.query.text': this.rawQueryConfig.text,\n\t\t\t\t\t'drizzle.query.params': JSON.stringify(params),\n\t\t\t\t});\n\t\t\t\treturn this.queryWithCache(this.rawQueryConfig.text, params, async () => {\n\t\t\t\t\treturn this.client.query(this.rawQueryConfig, params);\n\t\t\t\t}).then((result) => result.rows);\n\t\t\t});\n\t\t});\n\t}\n\n\t/** @internal */\n\tisResponseInArrayMode(): boolean {\n\t\treturn this._isResponseInArrayMode;\n\t}\n}\n\nexport interface NodePgSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgSession<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgSession';\n\n\tprivate logger: Logger;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\tprivate client: NodePgClient,\n\t\tdialect: PgDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodePgSessionOptions = {},\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig = PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tname: string | undefined,\n\t\tisResponseInArrayMode: boolean,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PgPreparedQuery<T> {\n\t\treturn new NodePgPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tname,\n\t\t\tisResponseInArrayMode,\n\t\t\tcustomResultMapper,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: PgTransactionConfig | undefined,\n\t): Promise<T> {\n\t\tconst session = this.client instanceof Pool // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t? new NodePgSession(await this.client.connect(), this.dialect, this.schema, this.options)\n\t\t\t: this;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(this.dialect, session, this.schema);\n\t\tawait tx.execute(sql`begin${config ? sql` ${tx.getTransactionConfigSQL(config)}` : undefined}`);\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql`commit`);\n\t\t\treturn result;\n\t\t} catch (error) {\n\t\t\tawait tx.execute(sql`rollback`);\n\t\t\tthrow error;\n\t\t} finally {\n\t\t\tif (this.client instanceof Pool) { // eslint-disable-line no-instanceof/no-instanceof\n\t\t\t\t(session.client as PoolClient).release();\n\t\t\t}\n\t\t}\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst res = await this.execute<{ rows: [{ count: string }] }>(sql);\n\t\treturn Number(\n\t\t\tres['rows'][0]['count'],\n\t\t);\n\t}\n}\n\nexport class NodePgTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends PgTransaction<NodePgQueryResultHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'NodePgTransaction';\n\n\toverride async transaction<T>(transaction: (tx: NodePgTransaction<TFullSchema, TSchema>) => Promise<T>): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodePgTransaction<TFullSchema, TSchema>(\n\t\t\tthis.dialect,\n\t\t\tthis.session,\n\t\t\tthis.schema,\n\t\t\tthis.nestedIndex + 1,\n\t\t);\n\t\tawait tx.execute(sql.raw(`savepoint ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait tx.execute(sql.raw(`release savepoint ${savepointName}`));\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback to savepoint ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport interface NodePgQueryResultHKT extends PgQueryResultHKT {\n\ttype: QueryResult<Assume<this['row'], QueryResultRow>>;\n}\n"],"mappings":"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","names":["sql"]}
|