drizzle-orm 1.0.0-beta.20-afec359 → 1.0.0-beta.21
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/_relations.cjs.map +1 -1
- package/_relations.d.cts +13 -2
- package/_relations.d.ts +13 -2
- package/_relations.js.map +1 -1
- package/alias.cjs +1 -1
- package/alias.js +1 -1
- package/aws-data-api/common/index.cjs +0 -2
- package/aws-data-api/common/index.cjs.map +1 -1
- package/aws-data-api/common/index.js +0 -2
- package/aws-data-api/common/index.js.map +1 -1
- package/aws-data-api/pg/driver.cjs +20 -93
- package/aws-data-api/pg/driver.cjs.map +1 -1
- package/aws-data-api/pg/driver.d.cts +13 -17
- package/aws-data-api/pg/driver.d.ts +13 -17
- package/aws-data-api/pg/driver.js +20 -93
- package/aws-data-api/pg/driver.js.map +1 -1
- package/aws-data-api/pg/index.cjs +1 -1
- package/aws-data-api/pg/index.d.cts +3 -3
- package/aws-data-api/pg/index.d.ts +3 -3
- package/aws-data-api/pg/index.js +3 -3
- package/aws-data-api/pg/migrator.cjs.map +1 -1
- package/aws-data-api/pg/migrator.d.cts +1 -1
- package/aws-data-api/pg/migrator.d.ts +1 -1
- package/aws-data-api/pg/migrator.js.map +1 -1
- package/aws-data-api/pg/session.cjs +113 -44
- package/aws-data-api/pg/session.cjs.map +1 -1
- package/aws-data-api/pg/session.d.cts +42 -12
- package/aws-data-api/pg/session.d.ts +43 -13
- package/aws-data-api/pg/session.js +114 -46
- package/aws-data-api/pg/session.js.map +1 -1
- package/better-sqlite3/driver.cjs +2 -5
- package/better-sqlite3/driver.cjs.map +1 -1
- package/better-sqlite3/driver.d.ts +1 -1
- package/better-sqlite3/driver.js +2 -5
- package/better-sqlite3/driver.js.map +1 -1
- package/better-sqlite3/session.cjs +15 -16
- package/better-sqlite3/session.cjs.map +1 -1
- package/better-sqlite3/session.d.cts +6 -10
- package/better-sqlite3/session.d.ts +7 -11
- package/better-sqlite3/session.js +16 -17
- package/better-sqlite3/session.js.map +1 -1
- package/bun-sql/driver.cjs.map +1 -1
- package/bun-sql/driver.d.cts +6 -7
- package/bun-sql/driver.d.ts +6 -7
- package/bun-sql/driver.js.map +1 -1
- package/bun-sql/index.cjs +1 -0
- package/bun-sql/index.d.cts +2 -2
- package/bun-sql/index.d.ts +2 -2
- package/bun-sql/index.js +2 -2
- package/bun-sql/migrator.cjs.map +1 -1
- package/bun-sql/migrator.d.cts +2 -2
- package/bun-sql/migrator.d.ts +2 -2
- package/bun-sql/migrator.js.map +1 -1
- package/bun-sql/mysql/driver.cjs +3 -4
- package/bun-sql/mysql/driver.cjs.map +1 -1
- package/bun-sql/mysql/driver.js +2 -3
- package/bun-sql/mysql/driver.js.map +1 -1
- package/bun-sql/mysql/session.cjs +24 -37
- package/bun-sql/mysql/session.cjs.map +1 -1
- package/bun-sql/mysql/session.d.cts +4 -10
- package/bun-sql/mysql/session.d.ts +6 -12
- package/bun-sql/mysql/session.js +25 -38
- package/bun-sql/mysql/session.js.map +1 -1
- package/bun-sql/postgres/driver.cjs +20 -144
- package/bun-sql/postgres/driver.cjs.map +1 -1
- package/bun-sql/postgres/driver.d.cts +6 -10
- package/bun-sql/postgres/driver.d.ts +7 -11
- package/bun-sql/postgres/driver.js +20 -144
- package/bun-sql/postgres/driver.js.map +1 -1
- package/bun-sql/postgres/index.cjs +1 -1
- package/bun-sql/postgres/index.d.cts +3 -3
- package/bun-sql/postgres/index.d.ts +3 -3
- package/bun-sql/postgres/index.js +3 -3
- package/bun-sql/postgres/migrator.cjs.map +1 -1
- package/bun-sql/postgres/migrator.d.cts +1 -1
- package/bun-sql/postgres/migrator.d.ts +1 -1
- package/bun-sql/postgres/migrator.js.map +1 -1
- package/bun-sql/postgres/session.cjs +112 -17
- package/bun-sql/postgres/session.cjs.map +1 -1
- package/bun-sql/postgres/session.d.cts +33 -11
- package/bun-sql/postgres/session.d.ts +34 -12
- package/bun-sql/postgres/session.js +112 -18
- package/bun-sql/postgres/session.js.map +1 -1
- package/bun-sql/session.cjs +1 -0
- package/bun-sql/session.d.cts +2 -2
- package/bun-sql/session.d.ts +2 -2
- package/bun-sql/session.js +2 -2
- package/bun-sql/sqlite/driver.cjs +3 -4
- package/bun-sql/sqlite/driver.cjs.map +1 -1
- package/bun-sql/sqlite/driver.d.ts +1 -1
- package/bun-sql/sqlite/driver.js +2 -3
- package/bun-sql/sqlite/driver.js.map +1 -1
- package/bun-sql/sqlite/session.cjs +17 -18
- package/bun-sql/sqlite/session.cjs.map +1 -1
- package/bun-sql/sqlite/session.d.cts +6 -9
- package/bun-sql/sqlite/session.d.ts +7 -10
- package/bun-sql/sqlite/session.js +18 -19
- package/bun-sql/sqlite/session.js.map +1 -1
- package/bun-sqlite/driver.cjs +2 -5
- package/bun-sqlite/driver.cjs.map +1 -1
- package/bun-sqlite/driver.d.ts +1 -1
- package/bun-sqlite/driver.js +2 -5
- package/bun-sqlite/driver.js.map +1 -1
- package/bun-sqlite/session.cjs +14 -15
- package/bun-sqlite/session.cjs.map +1 -1
- package/bun-sqlite/session.d.cts +6 -10
- package/bun-sqlite/session.d.ts +6 -10
- package/bun-sqlite/session.js +15 -16
- package/bun-sqlite/session.js.map +1 -1
- package/cache/core/cache-effect.cjs +2 -2
- package/cache/core/cache-effect.d.ts +1 -1
- package/cache/core/cache-effect.js +1 -1
- package/cockroach/driver.cjs +4 -10
- package/cockroach/driver.cjs.map +1 -1
- package/cockroach/driver.d.cts +0 -1
- package/cockroach/driver.d.ts +2 -3
- package/cockroach/driver.js +4 -10
- package/cockroach/driver.js.map +1 -1
- package/cockroach/session.cjs +9 -7
- package/cockroach/session.cjs.map +1 -1
- package/cockroach/session.d.cts +3 -5
- package/cockroach/session.d.ts +5 -7
- package/cockroach/session.js +10 -8
- package/cockroach/session.js.map +1 -1
- package/cockroach-core/columns/bigint.cjs +4 -4
- package/cockroach-core/columns/bigint.cjs.map +1 -1
- package/cockroach-core/columns/bigint.d.cts +2 -2
- package/cockroach-core/columns/bigint.d.ts +2 -2
- package/cockroach-core/columns/bigint.js +4 -4
- package/cockroach-core/columns/bigint.js.map +1 -1
- package/cockroach-core/columns/common.cjs +5 -5
- package/cockroach-core/columns/common.cjs.map +1 -1
- package/cockroach-core/columns/common.d.cts +2 -2
- package/cockroach-core/columns/common.d.ts +3 -3
- package/cockroach-core/columns/common.js +5 -5
- package/cockroach-core/columns/common.js.map +1 -1
- package/cockroach-core/columns/custom.cjs +4 -4
- package/cockroach-core/columns/custom.cjs.map +1 -1
- package/cockroach-core/columns/custom.d.cts +2 -2
- package/cockroach-core/columns/custom.d.ts +2 -2
- package/cockroach-core/columns/custom.js +4 -4
- package/cockroach-core/columns/custom.js.map +1 -1
- package/cockroach-core/columns/date.cjs +6 -6
- package/cockroach-core/columns/date.cjs.map +1 -1
- package/cockroach-core/columns/date.d.cts +3 -3
- package/cockroach-core/columns/date.d.ts +3 -3
- package/cockroach-core/columns/date.js +6 -6
- package/cockroach-core/columns/date.js.map +1 -1
- package/cockroach-core/columns/decimal.cjs +4 -4
- package/cockroach-core/columns/decimal.cjs.map +1 -1
- package/cockroach-core/columns/decimal.d.cts +2 -2
- package/cockroach-core/columns/decimal.d.ts +2 -2
- package/cockroach-core/columns/decimal.js +4 -4
- package/cockroach-core/columns/decimal.js.map +1 -1
- package/cockroach-core/columns/float.cjs +2 -2
- package/cockroach-core/columns/float.cjs.map +1 -1
- package/cockroach-core/columns/float.d.cts +1 -1
- package/cockroach-core/columns/float.d.ts +1 -1
- package/cockroach-core/columns/float.js +2 -2
- package/cockroach-core/columns/float.js.map +1 -1
- package/cockroach-core/columns/geometry.cjs +8 -8
- package/cockroach-core/columns/geometry.cjs.map +1 -1
- package/cockroach-core/columns/geometry.d.cts +5 -5
- package/cockroach-core/columns/geometry.d.ts +5 -5
- package/cockroach-core/columns/geometry.js +8 -8
- package/cockroach-core/columns/geometry.js.map +1 -1
- package/cockroach-core/columns/integer.cjs +2 -2
- package/cockroach-core/columns/integer.cjs.map +1 -1
- package/cockroach-core/columns/integer.d.cts +1 -1
- package/cockroach-core/columns/integer.d.ts +1 -1
- package/cockroach-core/columns/integer.js +2 -2
- package/cockroach-core/columns/integer.js.map +1 -1
- package/cockroach-core/columns/jsonb.cjs +4 -4
- package/cockroach-core/columns/jsonb.cjs.map +1 -1
- package/cockroach-core/columns/jsonb.d.cts +2 -2
- package/cockroach-core/columns/jsonb.d.ts +2 -2
- package/cockroach-core/columns/jsonb.js +4 -4
- package/cockroach-core/columns/jsonb.js.map +1 -1
- package/cockroach-core/columns/vector.cjs +4 -4
- package/cockroach-core/columns/vector.cjs.map +1 -1
- package/cockroach-core/columns/vector.d.cts +2 -2
- package/cockroach-core/columns/vector.d.ts +2 -2
- package/cockroach-core/columns/vector.js +4 -4
- package/cockroach-core/columns/vector.js.map +1 -1
- package/cockroach-core/db.cjs +1 -1
- package/cockroach-core/db.cjs.map +1 -1
- package/cockroach-core/db.d.ts +2 -2
- package/cockroach-core/db.js +1 -1
- package/cockroach-core/db.js.map +1 -1
- package/cockroach-core/dialect.cjs +2 -2
- package/cockroach-core/dialect.d.ts +2 -2
- package/cockroach-core/dialect.js +2 -2
- package/cockroach-core/index.cjs +14 -14
- package/cockroach-core/index.js +14 -14
- package/cockroach-core/query-builders/delete.cjs +1 -1
- package/cockroach-core/query-builders/delete.cjs.map +1 -1
- package/cockroach-core/query-builders/delete.d.cts +1 -1
- package/cockroach-core/query-builders/delete.d.ts +2 -2
- package/cockroach-core/query-builders/delete.js +1 -1
- package/cockroach-core/query-builders/delete.js.map +1 -1
- package/cockroach-core/query-builders/index.cjs +2 -2
- package/cockroach-core/query-builders/index.js +2 -2
- package/cockroach-core/query-builders/insert.cjs +1 -1
- package/cockroach-core/query-builders/insert.cjs.map +1 -1
- package/cockroach-core/query-builders/insert.d.ts +1 -1
- package/cockroach-core/query-builders/insert.js +1 -1
- package/cockroach-core/query-builders/insert.js.map +1 -1
- package/cockroach-core/query-builders/query.cjs +1 -1
- package/cockroach-core/query-builders/query.cjs.map +1 -1
- package/cockroach-core/query-builders/query.js +1 -1
- package/cockroach-core/query-builders/query.js.map +1 -1
- package/cockroach-core/query-builders/raw.cjs +4 -0
- package/cockroach-core/query-builders/raw.cjs.map +1 -1
- package/cockroach-core/query-builders/raw.js +4 -0
- package/cockroach-core/query-builders/raw.js.map +1 -1
- package/cockroach-core/query-builders/refresh-materialized-view.cjs +1 -1
- package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +1 -1
- package/cockroach-core/query-builders/refresh-materialized-view.js +1 -1
- package/cockroach-core/query-builders/refresh-materialized-view.js.map +1 -1
- package/cockroach-core/query-builders/select.cjs +2 -2
- package/cockroach-core/query-builders/select.cjs.map +1 -1
- package/cockroach-core/query-builders/select.d.ts +3 -3
- package/cockroach-core/query-builders/select.js +2 -2
- package/cockroach-core/query-builders/select.js.map +1 -1
- package/cockroach-core/query-builders/select.types.d.ts +1 -1
- package/cockroach-core/query-builders/update.cjs +2 -2
- package/cockroach-core/query-builders/update.cjs.map +1 -1
- package/cockroach-core/query-builders/update.d.ts +1 -1
- package/cockroach-core/query-builders/update.js +2 -2
- package/cockroach-core/query-builders/update.js.map +1 -1
- package/cockroach-core/schema.cjs +1 -1
- package/cockroach-core/schema.js +1 -1
- package/cockroach-core/session.cjs +2 -2
- package/cockroach-core/session.cjs.map +1 -1
- package/cockroach-core/session.d.cts +1 -1
- package/cockroach-core/session.d.ts +1 -1
- package/cockroach-core/session.js +2 -2
- package/cockroach-core/session.js.map +1 -1
- package/cockroach-core/table.cjs +1 -1
- package/cockroach-core/table.cjs.map +1 -1
- package/cockroach-core/table.js +1 -1
- package/cockroach-core/table.js.map +1 -1
- package/cockroach-core/utils.cjs +3 -3
- package/cockroach-core/utils.js +3 -3
- package/cockroach-core/view.cjs +1 -1
- package/cockroach-core/view.js +1 -1
- package/column.cjs +5 -10
- package/column.cjs.map +1 -1
- package/column.d.cts +3 -3
- package/column.d.ts +3 -3
- package/column.js +5 -10
- package/column.js.map +1 -1
- package/d1/driver.cjs +2 -3
- package/d1/driver.cjs.map +1 -1
- package/d1/driver.d.ts +1 -1
- package/d1/driver.js +2 -3
- package/d1/driver.js.map +1 -1
- package/d1/session.cjs +15 -17
- package/d1/session.cjs.map +1 -1
- package/d1/session.d.cts +6 -9
- package/d1/session.d.ts +7 -10
- package/d1/session.js +16 -18
- package/d1/session.js.map +1 -1
- package/durable-sqlite/driver.cjs +2 -5
- package/durable-sqlite/driver.cjs.map +1 -1
- package/durable-sqlite/driver.d.ts +1 -1
- package/durable-sqlite/driver.js +2 -5
- package/durable-sqlite/driver.js.map +1 -1
- package/durable-sqlite/migrator.cjs +1 -1
- package/durable-sqlite/migrator.js +1 -1
- package/durable-sqlite/session.cjs +14 -15
- package/durable-sqlite/session.cjs.map +1 -1
- package/durable-sqlite/session.d.cts +6 -10
- package/durable-sqlite/session.d.ts +6 -10
- package/durable-sqlite/session.js +15 -16
- package/durable-sqlite/session.js.map +1 -1
- package/effect-core/index.cjs +1 -1
- package/effect-core/index.js +1 -1
- package/effect-postgres/driver.cjs +14 -100
- package/effect-postgres/driver.cjs.map +1 -1
- package/effect-postgres/driver.d.cts +8 -12
- package/effect-postgres/driver.d.ts +10 -14
- package/effect-postgres/driver.js +14 -100
- package/effect-postgres/driver.js.map +1 -1
- package/effect-postgres/index.cjs +1 -1
- package/effect-postgres/index.d.cts +3 -3
- package/effect-postgres/index.d.ts +3 -3
- package/effect-postgres/index.js +3 -3
- package/effect-postgres/migrator.cjs.map +1 -1
- package/effect-postgres/migrator.d.cts +1 -1
- package/effect-postgres/migrator.d.ts +2 -2
- package/effect-postgres/migrator.js.map +1 -1
- package/effect-postgres/session.cjs +71 -12
- package/effect-postgres/session.cjs.map +1 -1
- package/effect-postgres/session.d.cts +31 -14
- package/effect-postgres/session.d.ts +34 -17
- package/effect-postgres/session.js +71 -13
- package/effect-postgres/session.js.map +1 -1
- package/effect-schema/column.cjs +1 -1
- package/effect-schema/column.d.ts +8 -8
- package/effect-schema/column.js +1 -1
- package/effect-schema/column.types.d.ts +14 -14
- package/effect-schema/schema.types.internal.d.ts +7 -7
- package/expo-sqlite/driver.cjs +2 -5
- package/expo-sqlite/driver.cjs.map +1 -1
- package/expo-sqlite/driver.d.ts +1 -1
- package/expo-sqlite/driver.js +2 -5
- package/expo-sqlite/driver.js.map +1 -1
- package/expo-sqlite/session.cjs +14 -15
- package/expo-sqlite/session.cjs.map +1 -1
- package/expo-sqlite/session.d.cts +6 -10
- package/expo-sqlite/session.d.ts +6 -10
- package/expo-sqlite/session.js +15 -16
- package/expo-sqlite/session.js.map +1 -1
- package/gel/driver.cjs +3 -5
- package/gel/driver.cjs.map +1 -1
- package/gel/driver.d.cts +0 -1
- package/gel/driver.d.ts +4 -5
- package/gel/driver.js +3 -5
- package/gel/driver.js.map +1 -1
- package/gel/session.cjs +13 -13
- package/gel/session.cjs.map +1 -1
- package/gel/session.d.cts +5 -8
- package/gel/session.d.ts +9 -12
- package/gel/session.js +14 -14
- package/gel/session.js.map +1 -1
- package/gel-core/columns/bigintT.cjs +2 -2
- package/gel-core/columns/bigintT.cjs.map +1 -1
- package/gel-core/columns/bigintT.d.cts +1 -1
- package/gel-core/columns/bigintT.d.ts +1 -1
- package/gel-core/columns/bigintT.js +2 -2
- package/gel-core/columns/bigintT.js.map +1 -1
- package/gel-core/columns/common.cjs +3 -3
- package/gel-core/columns/common.cjs.map +1 -1
- package/gel-core/columns/common.d.cts +1 -1
- package/gel-core/columns/common.d.ts +1 -1
- package/gel-core/columns/common.js +3 -3
- package/gel-core/columns/common.js.map +1 -1
- package/gel-core/columns/custom.cjs +4 -4
- package/gel-core/columns/custom.cjs.map +1 -1
- package/gel-core/columns/custom.d.cts +2 -2
- package/gel-core/columns/custom.d.ts +2 -2
- package/gel-core/columns/custom.js +4 -4
- package/gel-core/columns/custom.js.map +1 -1
- package/gel-core/columns/double-precision.cjs +2 -2
- package/gel-core/columns/double-precision.cjs.map +1 -1
- package/gel-core/columns/double-precision.d.cts +1 -1
- package/gel-core/columns/double-precision.d.ts +1 -1
- package/gel-core/columns/double-precision.js +2 -2
- package/gel-core/columns/double-precision.js.map +1 -1
- package/gel-core/columns/timestamp.d.ts +1 -1
- package/gel-core/columns/timestamptz.cjs +2 -2
- package/gel-core/columns/timestamptz.cjs.map +1 -1
- package/gel-core/columns/timestamptz.d.cts +1 -1
- package/gel-core/columns/timestamptz.d.ts +1 -1
- package/gel-core/columns/timestamptz.js +2 -2
- package/gel-core/columns/timestamptz.js.map +1 -1
- package/gel-core/db.cjs +1 -1
- package/gel-core/db.cjs.map +1 -1
- package/gel-core/db.d.ts +3 -3
- package/gel-core/db.js +1 -1
- package/gel-core/db.js.map +1 -1
- package/gel-core/index.cjs +13 -13
- package/gel-core/index.js +13 -13
- package/gel-core/query-builders/_query.cjs +1 -1
- package/gel-core/query-builders/_query.cjs.map +1 -1
- package/gel-core/query-builders/_query.js +1 -1
- package/gel-core/query-builders/_query.js.map +1 -1
- package/gel-core/query-builders/delete.cjs +1 -1
- package/gel-core/query-builders/delete.cjs.map +1 -1
- package/gel-core/query-builders/delete.d.ts +2 -2
- package/gel-core/query-builders/delete.js +1 -1
- package/gel-core/query-builders/delete.js.map +1 -1
- package/gel-core/query-builders/index.cjs +1 -1
- package/gel-core/query-builders/index.js +1 -1
- package/gel-core/query-builders/insert.cjs +1 -1
- package/gel-core/query-builders/insert.cjs.map +1 -1
- package/gel-core/query-builders/insert.d.ts +2 -2
- package/gel-core/query-builders/insert.js +1 -1
- package/gel-core/query-builders/insert.js.map +1 -1
- package/gel-core/query-builders/query.cjs +5 -13
- package/gel-core/query-builders/query.cjs.map +1 -1
- package/gel-core/query-builders/query.d.ts +1 -1
- package/gel-core/query-builders/query.js +5 -13
- package/gel-core/query-builders/query.js.map +1 -1
- package/gel-core/query-builders/raw.cjs +4 -0
- package/gel-core/query-builders/raw.cjs.map +1 -1
- package/gel-core/query-builders/raw.js +4 -0
- package/gel-core/query-builders/raw.js.map +1 -1
- package/gel-core/query-builders/refresh-materialized-view.cjs +1 -1
- package/gel-core/query-builders/refresh-materialized-view.cjs.map +1 -1
- package/gel-core/query-builders/refresh-materialized-view.d.ts +1 -1
- package/gel-core/query-builders/refresh-materialized-view.js +1 -1
- package/gel-core/query-builders/refresh-materialized-view.js.map +1 -1
- package/gel-core/query-builders/select.cjs +1 -1
- package/gel-core/query-builders/select.cjs.map +1 -1
- package/gel-core/query-builders/select.d.ts +3 -3
- package/gel-core/query-builders/select.js +1 -1
- package/gel-core/query-builders/select.js.map +1 -1
- package/gel-core/query-builders/select.types.d.ts +1 -1
- package/gel-core/query-builders/update.cjs +1 -1
- package/gel-core/query-builders/update.cjs.map +1 -1
- package/gel-core/query-builders/update.d.ts +2 -2
- package/gel-core/query-builders/update.js +1 -1
- package/gel-core/query-builders/update.js.map +1 -1
- package/gel-core/session.cjs +2 -2
- package/gel-core/session.cjs.map +1 -1
- package/gel-core/session.d.cts +3 -3
- package/gel-core/session.d.ts +3 -3
- package/gel-core/session.js +2 -2
- package/gel-core/session.js.map +1 -1
- package/gel-core/table.cjs +1 -1
- package/gel-core/table.cjs.map +1 -1
- package/gel-core/table.js +1 -1
- package/gel-core/table.js.map +1 -1
- package/gel-core/utils.cjs +4 -4
- package/gel-core/utils.js +4 -4
- package/gel-core/view.cjs +1 -1
- package/gel-core/view.js +1 -1
- package/index.cjs +6 -12
- package/index.d.cts +6 -6
- package/index.d.ts +6 -6
- package/index.js +9 -9
- package/libsql/driver-core.cjs +2 -3
- package/libsql/driver-core.cjs.map +1 -1
- package/libsql/driver-core.d.ts +1 -1
- package/libsql/driver-core.js +2 -3
- package/libsql/driver-core.js.map +1 -1
- package/libsql/session.cjs +15 -14
- package/libsql/session.cjs.map +1 -1
- package/libsql/session.d.cts +6 -9
- package/libsql/session.d.ts +7 -10
- package/libsql/session.js +16 -15
- package/libsql/session.js.map +1 -1
- package/mssql-core/columns/bigint.cjs +2 -2
- package/mssql-core/columns/bigint.cjs.map +1 -1
- package/mssql-core/columns/bigint.d.cts +1 -1
- package/mssql-core/columns/bigint.d.ts +1 -1
- package/mssql-core/columns/bigint.js +2 -2
- package/mssql-core/columns/bigint.js.map +1 -1
- package/mssql-core/columns/custom.cjs +4 -4
- package/mssql-core/columns/custom.cjs.map +1 -1
- package/mssql-core/columns/custom.d.cts +2 -2
- package/mssql-core/columns/custom.d.ts +2 -2
- package/mssql-core/columns/custom.js +4 -4
- package/mssql-core/columns/custom.js.map +1 -1
- package/mssql-core/columns/date.cjs +4 -4
- package/mssql-core/columns/date.cjs.map +1 -1
- package/mssql-core/columns/date.d.cts +2 -2
- package/mssql-core/columns/date.d.ts +2 -2
- package/mssql-core/columns/date.js +4 -4
- package/mssql-core/columns/date.js.map +1 -1
- package/mssql-core/columns/datetime.cjs +2 -2
- package/mssql-core/columns/datetime.cjs.map +1 -1
- package/mssql-core/columns/datetime.d.cts +1 -1
- package/mssql-core/columns/datetime.d.ts +1 -1
- package/mssql-core/columns/datetime.js +2 -2
- package/mssql-core/columns/datetime.js.map +1 -1
- package/mssql-core/columns/datetime2.cjs +2 -2
- package/mssql-core/columns/datetime2.cjs.map +1 -1
- package/mssql-core/columns/datetime2.d.cts +1 -1
- package/mssql-core/columns/datetime2.d.ts +1 -1
- package/mssql-core/columns/datetime2.js +2 -2
- package/mssql-core/columns/datetime2.js.map +1 -1
- package/mssql-core/columns/datetimeoffset.cjs +2 -2
- package/mssql-core/columns/datetimeoffset.cjs.map +1 -1
- package/mssql-core/columns/datetimeoffset.d.cts +1 -1
- package/mssql-core/columns/datetimeoffset.d.ts +1 -1
- package/mssql-core/columns/datetimeoffset.js +2 -2
- package/mssql-core/columns/datetimeoffset.js.map +1 -1
- package/mssql-core/columns/decimal.cjs +4 -4
- package/mssql-core/columns/decimal.cjs.map +1 -1
- package/mssql-core/columns/decimal.d.cts +2 -2
- package/mssql-core/columns/decimal.d.ts +2 -2
- package/mssql-core/columns/decimal.js +4 -4
- package/mssql-core/columns/decimal.js.map +1 -1
- package/mssql-core/columns/numeric.cjs +4 -4
- package/mssql-core/columns/numeric.cjs.map +1 -1
- package/mssql-core/columns/numeric.d.cts +2 -2
- package/mssql-core/columns/numeric.d.ts +2 -2
- package/mssql-core/columns/numeric.js +4 -4
- package/mssql-core/columns/numeric.js.map +1 -1
- package/mssql-core/columns/smallint.cjs +2 -2
- package/mssql-core/columns/smallint.cjs.map +1 -1
- package/mssql-core/columns/smallint.d.cts +1 -1
- package/mssql-core/columns/smallint.d.ts +1 -1
- package/mssql-core/columns/smallint.js +2 -2
- package/mssql-core/columns/smallint.js.map +1 -1
- package/mssql-core/columns/time.cjs +2 -2
- package/mssql-core/columns/time.cjs.map +1 -1
- package/mssql-core/columns/time.d.cts +1 -1
- package/mssql-core/columns/time.d.ts +1 -1
- package/mssql-core/columns/time.js +2 -2
- package/mssql-core/columns/time.js.map +1 -1
- package/mssql-core/columns/tinyint.cjs +2 -2
- package/mssql-core/columns/tinyint.cjs.map +1 -1
- package/mssql-core/columns/tinyint.d.cts +1 -1
- package/mssql-core/columns/tinyint.d.ts +1 -1
- package/mssql-core/columns/tinyint.js +2 -2
- package/mssql-core/columns/tinyint.js.map +1 -1
- package/mssql-core/columns/varchar.cjs +4 -4
- package/mssql-core/columns/varchar.cjs.map +1 -1
- package/mssql-core/columns/varchar.d.cts +2 -2
- package/mssql-core/columns/varchar.d.ts +2 -2
- package/mssql-core/columns/varchar.js +4 -4
- package/mssql-core/columns/varchar.js.map +1 -1
- package/mssql-core/dialect.cjs +2 -2
- package/mssql-core/dialect.d.ts +1 -1
- package/mssql-core/dialect.js +2 -2
- package/mssql-core/index.cjs +13 -13
- package/mssql-core/index.js +13 -13
- package/mssql-core/query-builders/delete.d.ts +1 -1
- package/mssql-core/query-builders/insert.d.ts +1 -1
- package/mssql-core/query-builders/select.d.ts +1 -1
- package/mssql-core/query-builders/update.d.ts +2 -2
- package/mssql-core/table.cjs +1 -1
- package/mssql-core/table.cjs.map +1 -1
- package/mssql-core/table.js +1 -1
- package/mssql-core/table.js.map +1 -1
- package/mssql-core/utils.cjs +3 -3
- package/mssql-core/utils.js +3 -3
- package/mssql-core/view.cjs +2 -2
- package/mssql-core/view.js +2 -2
- package/mysql-core/columns/bigint.cjs +8 -8
- package/mysql-core/columns/bigint.cjs.map +1 -1
- package/mysql-core/columns/bigint.d.cts +4 -4
- package/mysql-core/columns/bigint.d.ts +4 -4
- package/mysql-core/columns/bigint.js +8 -8
- package/mysql-core/columns/bigint.js.map +1 -1
- package/mysql-core/columns/binary.cjs +2 -2
- package/mysql-core/columns/binary.cjs.map +1 -1
- package/mysql-core/columns/binary.d.cts +1 -1
- package/mysql-core/columns/binary.d.ts +1 -1
- package/mysql-core/columns/binary.js +2 -2
- package/mysql-core/columns/binary.js.map +1 -1
- package/mysql-core/columns/blob.cjs +4 -4
- package/mysql-core/columns/blob.cjs.map +1 -1
- package/mysql-core/columns/blob.d.cts +2 -2
- package/mysql-core/columns/blob.d.ts +2 -2
- package/mysql-core/columns/blob.js +4 -4
- package/mysql-core/columns/blob.js.map +1 -1
- package/mysql-core/columns/boolean.cjs +2 -2
- package/mysql-core/columns/boolean.cjs.map +1 -1
- package/mysql-core/columns/boolean.d.cts +1 -1
- package/mysql-core/columns/boolean.d.ts +1 -1
- package/mysql-core/columns/boolean.js +2 -2
- package/mysql-core/columns/boolean.js.map +1 -1
- package/mysql-core/columns/custom.cjs +4 -4
- package/mysql-core/columns/custom.cjs.map +1 -1
- package/mysql-core/columns/custom.d.cts +2 -2
- package/mysql-core/columns/custom.d.ts +2 -2
- package/mysql-core/columns/custom.js +4 -4
- package/mysql-core/columns/custom.js.map +1 -1
- package/mysql-core/columns/date.cjs +4 -4
- package/mysql-core/columns/date.cjs.map +1 -1
- package/mysql-core/columns/date.d.cts +2 -2
- package/mysql-core/columns/date.d.ts +2 -2
- package/mysql-core/columns/date.js +4 -4
- package/mysql-core/columns/date.js.map +1 -1
- package/mysql-core/columns/datetime.cjs +8 -8
- package/mysql-core/columns/datetime.cjs.map +1 -1
- package/mysql-core/columns/datetime.d.cts +4 -4
- package/mysql-core/columns/datetime.d.ts +4 -4
- package/mysql-core/columns/datetime.js +8 -8
- package/mysql-core/columns/datetime.js.map +1 -1
- package/mysql-core/columns/decimal.cjs +4 -4
- package/mysql-core/columns/decimal.cjs.map +1 -1
- package/mysql-core/columns/decimal.d.cts +2 -2
- package/mysql-core/columns/decimal.d.ts +2 -2
- package/mysql-core/columns/decimal.js +4 -4
- package/mysql-core/columns/decimal.js.map +1 -1
- package/mysql-core/columns/float.cjs +2 -2
- package/mysql-core/columns/float.cjs.map +1 -1
- package/mysql-core/columns/float.d.cts +1 -1
- package/mysql-core/columns/float.d.ts +1 -1
- package/mysql-core/columns/float.js +2 -2
- package/mysql-core/columns/float.js.map +1 -1
- package/mysql-core/columns/int.cjs +2 -2
- package/mysql-core/columns/int.cjs.map +1 -1
- package/mysql-core/columns/int.d.cts +1 -1
- package/mysql-core/columns/int.d.ts +1 -1
- package/mysql-core/columns/int.js +2 -2
- package/mysql-core/columns/int.js.map +1 -1
- package/mysql-core/columns/json.cjs +2 -2
- package/mysql-core/columns/json.cjs.map +1 -1
- package/mysql-core/columns/json.d.cts +1 -1
- package/mysql-core/columns/json.d.ts +1 -1
- package/mysql-core/columns/json.js +2 -2
- package/mysql-core/columns/json.js.map +1 -1
- package/mysql-core/columns/mediumint.cjs +2 -2
- package/mysql-core/columns/mediumint.cjs.map +1 -1
- package/mysql-core/columns/mediumint.d.cts +1 -1
- package/mysql-core/columns/mediumint.d.ts +1 -1
- package/mysql-core/columns/mediumint.js +2 -2
- package/mysql-core/columns/mediumint.js.map +1 -1
- package/mysql-core/columns/serial.cjs +2 -2
- package/mysql-core/columns/serial.cjs.map +1 -1
- package/mysql-core/columns/serial.d.cts +1 -1
- package/mysql-core/columns/serial.d.ts +1 -1
- package/mysql-core/columns/serial.js +2 -2
- package/mysql-core/columns/serial.js.map +1 -1
- package/mysql-core/columns/smallint.cjs +2 -2
- package/mysql-core/columns/smallint.cjs.map +1 -1
- package/mysql-core/columns/smallint.d.cts +1 -1
- package/mysql-core/columns/smallint.d.ts +1 -1
- package/mysql-core/columns/smallint.js +2 -2
- package/mysql-core/columns/smallint.js.map +1 -1
- package/mysql-core/columns/time.cjs +2 -2
- package/mysql-core/columns/time.cjs.map +1 -1
- package/mysql-core/columns/time.d.cts +1 -1
- package/mysql-core/columns/time.d.ts +1 -1
- package/mysql-core/columns/time.js +2 -2
- package/mysql-core/columns/time.js.map +1 -1
- package/mysql-core/columns/timestamp.cjs +8 -8
- package/mysql-core/columns/timestamp.cjs.map +1 -1
- package/mysql-core/columns/timestamp.d.cts +4 -4
- package/mysql-core/columns/timestamp.d.ts +4 -4
- package/mysql-core/columns/timestamp.js +8 -8
- package/mysql-core/columns/timestamp.js.map +1 -1
- package/mysql-core/columns/tinyint.cjs +2 -2
- package/mysql-core/columns/tinyint.cjs.map +1 -1
- package/mysql-core/columns/tinyint.d.cts +1 -1
- package/mysql-core/columns/tinyint.d.ts +1 -1
- package/mysql-core/columns/tinyint.js +2 -2
- package/mysql-core/columns/tinyint.js.map +1 -1
- package/mysql-core/columns/varbinary.cjs +2 -2
- package/mysql-core/columns/varbinary.cjs.map +1 -1
- package/mysql-core/columns/varbinary.d.cts +1 -1
- package/mysql-core/columns/varbinary.d.ts +1 -1
- package/mysql-core/columns/varbinary.js +2 -2
- package/mysql-core/columns/varbinary.js.map +1 -1
- package/mysql-core/columns/year.cjs +2 -2
- package/mysql-core/columns/year.cjs.map +1 -1
- package/mysql-core/columns/year.d.cts +1 -1
- package/mysql-core/columns/year.d.ts +1 -1
- package/mysql-core/columns/year.js +2 -2
- package/mysql-core/columns/year.js.map +1 -1
- package/mysql-core/db.d.ts +2 -2
- package/mysql-core/dialect.cjs +2 -2
- package/mysql-core/dialect.d.ts +1 -1
- package/mysql-core/dialect.js +2 -2
- package/mysql-core/index.cjs +1 -1
- package/mysql-core/index.js +1 -1
- package/mysql-core/query-builders/query.cjs +5 -13
- package/mysql-core/query-builders/query.cjs.map +1 -1
- package/mysql-core/query-builders/query.d.ts +1 -1
- package/mysql-core/query-builders/query.js +5 -13
- package/mysql-core/query-builders/query.js.map +1 -1
- package/mysql-core/session.cjs +2 -1
- package/mysql-core/session.cjs.map +1 -1
- package/mysql-core/session.d.cts +4 -3
- package/mysql-core/session.d.ts +4 -3
- package/mysql-core/session.js +2 -1
- package/mysql-core/session.js.map +1 -1
- package/mysql-core/table.cjs +1 -1
- package/mysql-core/table.cjs.map +1 -1
- package/mysql-core/table.js +1 -1
- package/mysql-core/table.js.map +1 -1
- package/mysql-proxy/driver.cjs +2 -5
- package/mysql-proxy/driver.cjs.map +1 -1
- package/mysql-proxy/driver.js +2 -5
- package/mysql-proxy/driver.js.map +1 -1
- package/mysql-proxy/session.cjs +19 -26
- package/mysql-proxy/session.cjs.map +1 -1
- package/mysql-proxy/session.d.cts +4 -11
- package/mysql-proxy/session.d.ts +6 -13
- package/mysql-proxy/session.js +20 -27
- package/mysql-proxy/session.js.map +1 -1
- package/mysql2/driver.cjs +2 -3
- package/mysql2/driver.cjs.map +1 -1
- package/mysql2/driver.d.cts +0 -1
- package/mysql2/driver.d.ts +3 -4
- package/mysql2/driver.js +2 -3
- package/mysql2/driver.js.map +1 -1
- package/mysql2/session.cjs +39 -49
- package/mysql2/session.cjs.map +1 -1
- package/mysql2/session.d.cts +4 -11
- package/mysql2/session.d.ts +6 -13
- package/mysql2/session.js +40 -50
- package/mysql2/session.js.map +1 -1
- package/neon-http/driver.cjs +65 -34
- package/neon-http/driver.cjs.map +1 -1
- package/neon-http/driver.d.cts +19 -15
- package/neon-http/driver.d.ts +20 -16
- package/neon-http/driver.js +64 -34
- package/neon-http/driver.js.map +1 -1
- package/neon-http/index.cjs +4 -2
- package/neon-http/index.d.cts +3 -3
- package/neon-http/index.d.ts +3 -3
- package/neon-http/index.js +3 -3
- package/neon-http/migrator.cjs +1 -1
- package/neon-http/migrator.cjs.map +1 -1
- package/neon-http/migrator.d.cts +1 -1
- package/neon-http/migrator.d.ts +1 -1
- package/neon-http/migrator.js +1 -1
- package/neon-http/migrator.js.map +1 -1
- package/neon-http/session.cjs +117 -28
- package/neon-http/session.cjs.map +1 -1
- package/neon-http/session.d.cts +38 -10
- package/neon-http/session.d.ts +40 -12
- package/neon-http/session.js +117 -30
- package/neon-http/session.js.map +1 -1
- package/neon-serverless/driver.cjs +32 -14
- package/neon-serverless/driver.cjs.map +1 -1
- package/neon-serverless/driver.d.cts +17 -12
- package/neon-serverless/driver.d.ts +18 -13
- package/neon-serverless/driver.js +31 -14
- package/neon-serverless/driver.js.map +1 -1
- package/neon-serverless/index.cjs +3 -2
- package/neon-serverless/index.d.cts +3 -3
- package/neon-serverless/index.d.ts +3 -3
- package/neon-serverless/index.js +3 -3
- package/neon-serverless/migrator.cjs.map +1 -1
- package/neon-serverless/migrator.d.cts +1 -1
- package/neon-serverless/migrator.d.ts +1 -1
- package/neon-serverless/migrator.js.map +1 -1
- package/neon-serverless/session.cjs +108 -32
- package/neon-serverless/session.cjs.map +1 -1
- package/neon-serverless/session.d.cts +32 -9
- package/neon-serverless/session.d.ts +33 -10
- package/neon-serverless/session.js +109 -34
- package/neon-serverless/session.js.map +1 -1
- package/netlify-db/driver.cjs +123 -0
- package/netlify-db/driver.cjs.map +1 -0
- package/netlify-db/driver.d.cts +90 -0
- package/netlify-db/driver.d.ts +90 -0
- package/netlify-db/driver.js +113 -0
- package/netlify-db/driver.js.map +1 -0
- package/netlify-db/index.cjs +15 -0
- package/netlify-db/index.d.cts +3 -0
- package/netlify-db/index.d.ts +3 -0
- package/netlify-db/index.js +4 -0
- package/netlify-db/migrator.cjs +17 -0
- package/netlify-db/migrator.cjs.map +1 -0
- package/netlify-db/migrator.d.cts +11 -0
- package/netlify-db/migrator.d.ts +11 -0
- package/netlify-db/migrator.js +15 -0
- package/netlify-db/migrator.js.map +1 -0
- package/netlify-db/session.cjs +153 -0
- package/netlify-db/session.cjs.map +1 -0
- package/netlify-db/session.d.cts +68 -0
- package/netlify-db/session.d.ts +68 -0
- package/netlify-db/session.js +149 -0
- package/netlify-db/session.js.map +1 -0
- package/node-mssql/driver.cjs +3 -9
- package/node-mssql/driver.cjs.map +1 -1
- package/node-mssql/driver.d.cts +0 -1
- package/node-mssql/driver.d.ts +2 -3
- package/node-mssql/driver.js +3 -9
- package/node-mssql/driver.js.map +1 -1
- package/node-mssql/session.cjs +4 -6
- package/node-mssql/session.cjs.map +1 -1
- package/node-mssql/session.d.cts +1 -4
- package/node-mssql/session.d.ts +3 -6
- package/node-mssql/session.js +5 -7
- package/node-mssql/session.js.map +1 -1
- package/node-postgres/driver.cjs +18 -15
- package/node-postgres/driver.cjs.map +1 -1
- package/node-postgres/driver.d.cts +6 -11
- package/node-postgres/driver.d.ts +7 -12
- package/node-postgres/driver.js +18 -15
- package/node-postgres/driver.js.map +1 -1
- package/node-postgres/index.cjs +2 -2
- package/node-postgres/index.d.cts +3 -3
- package/node-postgres/index.d.ts +3 -3
- package/node-postgres/index.js +3 -3
- package/node-postgres/migrator.cjs.map +1 -1
- package/node-postgres/migrator.d.cts +1 -1
- package/node-postgres/migrator.d.ts +1 -1
- package/node-postgres/migrator.js.map +1 -1
- package/node-postgres/session.cjs +126 -33
- package/node-postgres/session.cjs.map +1 -1
- package/node-postgres/session.d.cts +30 -10
- package/node-postgres/session.d.ts +31 -11
- package/node-postgres/session.js +127 -35
- package/node-postgres/session.js.map +1 -1
- package/node-sqlite/driver.cjs +1 -1
- package/node-sqlite/driver.d.ts +1 -1
- package/node-sqlite/driver.js +1 -1
- package/node-sqlite/session.cjs +9 -4
- package/node-sqlite/session.cjs.map +1 -1
- package/node-sqlite/session.d.cts +4 -3
- package/node-sqlite/session.d.ts +5 -4
- package/node-sqlite/session.js +9 -4
- package/node-sqlite/session.js.map +1 -1
- package/op-sqlite/driver.cjs +2 -3
- package/op-sqlite/driver.cjs.map +1 -1
- package/op-sqlite/driver.d.ts +1 -1
- package/op-sqlite/driver.js +2 -3
- package/op-sqlite/driver.js.map +1 -1
- package/op-sqlite/session.cjs +16 -18
- package/op-sqlite/session.cjs.map +1 -1
- package/op-sqlite/session.d.cts +6 -10
- package/op-sqlite/session.d.ts +7 -11
- package/op-sqlite/session.js +17 -19
- package/op-sqlite/session.js.map +1 -1
- package/operations.d.cts +0 -3
- package/operations.d.ts +0 -3
- package/package.cjs +1 -1
- package/package.js +1 -1
- package/package.json +4736 -4700
- package/pg-core/async/count.cjs +9 -2
- package/pg-core/async/count.cjs.map +1 -1
- package/pg-core/async/count.js +9 -2
- package/pg-core/async/count.js.map +1 -1
- package/pg-core/async/db.cjs +27 -10
- package/pg-core/async/db.cjs.map +1 -1
- package/pg-core/async/db.d.cts +13 -5
- package/pg-core/async/db.d.ts +16 -8
- package/pg-core/async/db.js +27 -10
- package/pg-core/async/db.js.map +1 -1
- package/pg-core/async/delete.cjs +13 -8
- package/pg-core/async/delete.cjs.map +1 -1
- package/pg-core/async/delete.js +13 -8
- package/pg-core/async/delete.js.map +1 -1
- package/pg-core/async/insert.cjs +12 -7
- package/pg-core/async/insert.cjs.map +1 -1
- package/pg-core/async/insert.js +12 -7
- package/pg-core/async/insert.js.map +1 -1
- package/pg-core/async/query.cjs +14 -8
- package/pg-core/async/query.cjs.map +1 -1
- package/pg-core/async/query.js +14 -8
- package/pg-core/async/query.js.map +1 -1
- package/pg-core/async/refresh-materialized-view.cjs +9 -1
- package/pg-core/async/refresh-materialized-view.cjs.map +1 -1
- package/pg-core/async/refresh-materialized-view.js +9 -1
- package/pg-core/async/refresh-materialized-view.js.map +1 -1
- package/pg-core/async/select.cjs +13 -4
- package/pg-core/async/select.cjs.map +1 -1
- package/pg-core/async/select.js +13 -4
- package/pg-core/async/select.js.map +1 -1
- package/pg-core/async/session.cjs +22 -46
- package/pg-core/async/session.cjs.map +1 -1
- package/pg-core/async/session.d.cts +31 -25
- package/pg-core/async/session.d.ts +32 -26
- package/pg-core/async/session.js +23 -47
- package/pg-core/async/session.js.map +1 -1
- package/pg-core/async/update.cjs +15 -11
- package/pg-core/async/update.cjs.map +1 -1
- package/pg-core/async/update.js +15 -11
- package/pg-core/async/update.js.map +1 -1
- package/pg-core/columns/bigint.cjs +9 -10
- package/pg-core/columns/bigint.cjs.map +1 -1
- package/pg-core/columns/bigint.d.cts +3 -2
- package/pg-core/columns/bigint.d.ts +3 -2
- package/pg-core/columns/bigint.js +9 -10
- package/pg-core/columns/bigint.js.map +1 -1
- package/pg-core/columns/bigserial.cjs +6 -6
- package/pg-core/columns/bigserial.cjs.map +1 -1
- package/pg-core/columns/bigserial.d.cts +2 -1
- package/pg-core/columns/bigserial.d.ts +2 -1
- package/pg-core/columns/bigserial.js +6 -6
- package/pg-core/columns/bigserial.js.map +1 -1
- package/pg-core/columns/boolean.cjs +0 -2
- package/pg-core/columns/boolean.cjs.map +1 -1
- package/pg-core/columns/boolean.js +0 -2
- package/pg-core/columns/boolean.js.map +1 -1
- package/pg-core/columns/bytea.cjs +8 -2
- package/pg-core/columns/bytea.cjs.map +1 -1
- package/pg-core/columns/bytea.d.cts +1 -0
- package/pg-core/columns/bytea.d.ts +1 -0
- package/pg-core/columns/bytea.js +8 -2
- package/pg-core/columns/bytea.js.map +1 -1
- package/pg-core/columns/char.cjs +0 -2
- package/pg-core/columns/char.cjs.map +1 -1
- package/pg-core/columns/char.js +0 -2
- package/pg-core/columns/char.js.map +1 -1
- package/pg-core/columns/cidr.cjs +0 -2
- package/pg-core/columns/cidr.cjs.map +1 -1
- package/pg-core/columns/cidr.js +0 -2
- package/pg-core/columns/cidr.js.map +1 -1
- package/pg-core/columns/common.cjs +9 -11
- package/pg-core/columns/common.cjs.map +1 -1
- package/pg-core/columns/common.d.cts +39 -34
- package/pg-core/columns/common.d.ts +39 -34
- package/pg-core/columns/common.js +9 -11
- package/pg-core/columns/common.js.map +1 -1
- package/pg-core/columns/custom.cjs +46 -16
- package/pg-core/columns/custom.cjs.map +1 -1
- package/pg-core/columns/custom.d.cts +8 -17
- package/pg-core/columns/custom.d.ts +8 -17
- package/pg-core/columns/custom.js +46 -16
- package/pg-core/columns/custom.js.map +1 -1
- package/pg-core/columns/date.cjs +12 -11
- package/pg-core/columns/date.cjs.map +1 -1
- package/pg-core/columns/date.d.cts +4 -3
- package/pg-core/columns/date.d.ts +4 -3
- package/pg-core/columns/date.js +12 -11
- package/pg-core/columns/date.js.map +1 -1
- package/pg-core/columns/double-precision.cjs +4 -2
- package/pg-core/columns/double-precision.cjs.map +1 -1
- package/pg-core/columns/double-precision.d.cts +1 -0
- package/pg-core/columns/double-precision.d.ts +1 -0
- package/pg-core/columns/double-precision.js +4 -2
- package/pg-core/columns/double-precision.js.map +1 -1
- package/pg-core/columns/enum.cjs +0 -4
- package/pg-core/columns/enum.cjs.map +1 -1
- package/pg-core/columns/enum.js +0 -4
- package/pg-core/columns/enum.js.map +1 -1
- package/pg-core/columns/index.d.cts +2 -2
- package/pg-core/columns/index.d.ts +2 -2
- package/pg-core/columns/inet.cjs +0 -2
- package/pg-core/columns/inet.cjs.map +1 -1
- package/pg-core/columns/inet.js +0 -2
- package/pg-core/columns/inet.js.map +1 -1
- package/pg-core/columns/integer.cjs +4 -2
- package/pg-core/columns/integer.cjs.map +1 -1
- package/pg-core/columns/integer.d.cts +1 -0
- package/pg-core/columns/integer.d.ts +1 -0
- package/pg-core/columns/integer.js +4 -2
- package/pg-core/columns/integer.js.map +1 -1
- package/pg-core/columns/interval.cjs +0 -2
- package/pg-core/columns/interval.cjs.map +1 -1
- package/pg-core/columns/interval.js +0 -2
- package/pg-core/columns/interval.js.map +1 -1
- package/pg-core/columns/json.cjs +11 -2
- package/pg-core/columns/json.cjs.map +1 -1
- package/pg-core/columns/json.d.cts +2 -0
- package/pg-core/columns/json.d.ts +2 -0
- package/pg-core/columns/json.js +11 -2
- package/pg-core/columns/json.js.map +1 -1
- package/pg-core/columns/jsonb.cjs +11 -2
- package/pg-core/columns/jsonb.cjs.map +1 -1
- package/pg-core/columns/jsonb.d.cts +2 -0
- package/pg-core/columns/jsonb.d.ts +2 -0
- package/pg-core/columns/jsonb.js +11 -2
- package/pg-core/columns/jsonb.js.map +1 -1
- package/pg-core/columns/line.cjs +8 -12
- package/pg-core/columns/line.cjs.map +1 -1
- package/pg-core/columns/line.d.cts +5 -5
- package/pg-core/columns/line.d.ts +5 -5
- package/pg-core/columns/line.js +8 -12
- package/pg-core/columns/line.js.map +1 -1
- package/pg-core/columns/macaddr.cjs +0 -2
- package/pg-core/columns/macaddr.cjs.map +1 -1
- package/pg-core/columns/macaddr.js +0 -2
- package/pg-core/columns/macaddr.js.map +1 -1
- package/pg-core/columns/macaddr8.cjs +0 -2
- package/pg-core/columns/macaddr8.cjs.map +1 -1
- package/pg-core/columns/macaddr8.js +0 -2
- package/pg-core/columns/macaddr8.js.map +1 -1
- package/pg-core/columns/numeric.cjs +15 -12
- package/pg-core/columns/numeric.cjs.map +1 -1
- package/pg-core/columns/numeric.d.cts +5 -4
- package/pg-core/columns/numeric.d.ts +5 -4
- package/pg-core/columns/numeric.js +15 -12
- package/pg-core/columns/numeric.js.map +1 -1
- package/pg-core/columns/point.cjs +21 -19
- package/pg-core/columns/point.cjs.map +1 -1
- package/pg-core/columns/point.d.cts +11 -5
- package/pg-core/columns/point.d.ts +11 -5
- package/pg-core/columns/point.js +21 -19
- package/pg-core/columns/point.js.map +1 -1
- package/pg-core/columns/postgis_extension/geometry.cjs +9 -12
- package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
- package/pg-core/columns/postgis_extension/geometry.d.cts +5 -5
- package/pg-core/columns/postgis_extension/geometry.d.ts +5 -5
- package/pg-core/columns/postgis_extension/geometry.js +9 -12
- package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
- package/pg-core/columns/real.cjs +4 -2
- package/pg-core/columns/real.cjs.map +1 -1
- package/pg-core/columns/real.d.cts +1 -0
- package/pg-core/columns/real.d.ts +1 -0
- package/pg-core/columns/real.js +4 -2
- package/pg-core/columns/real.js.map +1 -1
- package/pg-core/columns/serial.cjs +0 -2
- package/pg-core/columns/serial.cjs.map +1 -1
- package/pg-core/columns/serial.js +0 -2
- package/pg-core/columns/serial.js.map +1 -1
- package/pg-core/columns/smallint.cjs +4 -2
- package/pg-core/columns/smallint.cjs.map +1 -1
- package/pg-core/columns/smallint.d.cts +1 -0
- package/pg-core/columns/smallint.d.ts +1 -0
- package/pg-core/columns/smallint.js +4 -2
- package/pg-core/columns/smallint.js.map +1 -1
- package/pg-core/columns/smallserial.cjs +0 -2
- package/pg-core/columns/smallserial.cjs.map +1 -1
- package/pg-core/columns/smallserial.js +0 -2
- package/pg-core/columns/smallserial.js.map +1 -1
- package/pg-core/columns/text.cjs +0 -2
- package/pg-core/columns/text.cjs.map +1 -1
- package/pg-core/columns/text.js +0 -2
- package/pg-core/columns/text.js.map +1 -1
- package/pg-core/columns/time.cjs +0 -2
- package/pg-core/columns/time.cjs.map +1 -1
- package/pg-core/columns/time.js +0 -2
- package/pg-core/columns/time.js.map +1 -1
- package/pg-core/columns/timestamp.cjs +14 -13
- package/pg-core/columns/timestamp.cjs.map +1 -1
- package/pg-core/columns/timestamp.d.cts +4 -3
- package/pg-core/columns/timestamp.d.ts +4 -3
- package/pg-core/columns/timestamp.js +14 -13
- package/pg-core/columns/timestamp.js.map +1 -1
- package/pg-core/columns/uuid.cjs +0 -2
- package/pg-core/columns/uuid.cjs.map +1 -1
- package/pg-core/columns/uuid.js +0 -2
- package/pg-core/columns/uuid.js.map +1 -1
- package/pg-core/columns/varchar.cjs +0 -2
- package/pg-core/columns/varchar.cjs.map +1 -1
- package/pg-core/columns/varchar.js +0 -2
- package/pg-core/columns/varchar.js.map +1 -1
- package/pg-core/columns/vector_extension/bit.cjs +0 -2
- package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
- package/pg-core/columns/vector_extension/bit.js +0 -2
- package/pg-core/columns/vector_extension/bit.js.map +1 -1
- package/pg-core/columns/vector_extension/halfvec.cjs +4 -6
- package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
- package/pg-core/columns/vector_extension/halfvec.d.cts +2 -2
- package/pg-core/columns/vector_extension/halfvec.d.ts +2 -2
- package/pg-core/columns/vector_extension/halfvec.js +4 -6
- package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
- package/pg-core/columns/vector_extension/sparsevec.cjs +0 -2
- package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
- package/pg-core/columns/vector_extension/sparsevec.js +0 -2
- package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
- package/pg-core/columns/vector_extension/vector.cjs +4 -6
- package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
- package/pg-core/columns/vector_extension/vector.d.cts +2 -2
- package/pg-core/columns/vector_extension/vector.d.ts +2 -2
- package/pg-core/columns/vector_extension/vector.js +4 -6
- package/pg-core/columns/vector_extension/vector.js.map +1 -1
- package/pg-core/dialect.cjs +217 -52
- package/pg-core/dialect.cjs.map +1 -1
- package/pg-core/dialect.d.cts +30 -19
- package/pg-core/dialect.d.ts +31 -20
- package/pg-core/dialect.js +221 -57
- package/pg-core/dialect.js.map +1 -1
- package/pg-core/effect/count.cjs +1 -1
- package/pg-core/effect/count.cjs.map +1 -1
- package/pg-core/effect/count.d.cts +2 -2
- package/pg-core/effect/count.d.ts +2 -2
- package/pg-core/effect/count.js +1 -1
- package/pg-core/effect/count.js.map +1 -1
- package/pg-core/effect/db.cjs +20 -14
- package/pg-core/effect/db.cjs.map +1 -1
- package/pg-core/effect/db.d.cts +11 -7
- package/pg-core/effect/db.d.ts +13 -9
- package/pg-core/effect/db.js +20 -14
- package/pg-core/effect/db.js.map +1 -1
- package/pg-core/effect/delete.cjs +6 -8
- package/pg-core/effect/delete.cjs.map +1 -1
- package/pg-core/effect/delete.d.cts +1 -1
- package/pg-core/effect/delete.d.ts +1 -1
- package/pg-core/effect/delete.js +6 -8
- package/pg-core/effect/delete.js.map +1 -1
- package/pg-core/effect/index.cjs +3 -3
- package/pg-core/effect/index.js +3 -3
- package/pg-core/effect/insert.cjs +5 -7
- package/pg-core/effect/insert.cjs.map +1 -1
- package/pg-core/effect/insert.d.cts +1 -1
- package/pg-core/effect/insert.d.ts +1 -1
- package/pg-core/effect/insert.js +5 -7
- package/pg-core/effect/insert.js.map +1 -1
- package/pg-core/effect/query.cjs +6 -7
- package/pg-core/effect/query.cjs.map +1 -1
- package/pg-core/effect/query.d.cts +1 -1
- package/pg-core/effect/query.d.ts +1 -1
- package/pg-core/effect/query.js +6 -7
- package/pg-core/effect/query.js.map +1 -1
- package/pg-core/effect/refresh-materialized-view.cjs +2 -1
- package/pg-core/effect/refresh-materialized-view.cjs.map +1 -1
- package/pg-core/effect/refresh-materialized-view.d.cts +1 -1
- package/pg-core/effect/refresh-materialized-view.d.ts +1 -1
- package/pg-core/effect/refresh-materialized-view.js +2 -1
- package/pg-core/effect/refresh-materialized-view.js.map +1 -1
- package/pg-core/effect/select.cjs +5 -3
- package/pg-core/effect/select.cjs.map +1 -1
- package/pg-core/effect/select.d.cts +1 -1
- package/pg-core/effect/select.d.ts +1 -1
- package/pg-core/effect/select.js +5 -3
- package/pg-core/effect/select.js.map +1 -1
- package/pg-core/effect/session.cjs +19 -30
- package/pg-core/effect/session.cjs.map +1 -1
- package/pg-core/effect/session.d.cts +28 -24
- package/pg-core/effect/session.d.ts +29 -25
- package/pg-core/effect/session.js +20 -31
- package/pg-core/effect/session.js.map +1 -1
- package/pg-core/effect/update.cjs +8 -8
- package/pg-core/effect/update.cjs.map +1 -1
- package/pg-core/effect/update.d.cts +1 -1
- package/pg-core/effect/update.d.ts +1 -1
- package/pg-core/effect/update.js +8 -8
- package/pg-core/effect/update.js.map +1 -1
- package/pg-core/index.cjs +16 -16
- package/pg-core/index.d.cts +4 -4
- package/pg-core/index.d.ts +4 -4
- package/pg-core/index.js +13 -13
- package/pg-core/query-builders/_query.cjs +101 -0
- package/pg-core/query-builders/_query.cjs.map +1 -0
- package/pg-core/query-builders/_query.d.cts +55 -0
- package/pg-core/query-builders/_query.d.ts +55 -0
- package/pg-core/query-builders/_query.js +97 -0
- package/pg-core/query-builders/_query.js.map +1 -0
- package/pg-core/query-builders/delete.cjs +1 -1
- package/pg-core/query-builders/delete.cjs.map +1 -1
- package/pg-core/query-builders/delete.js +1 -1
- package/pg-core/query-builders/delete.js.map +1 -1
- package/pg-core/query-builders/index.cjs +1 -1
- package/pg-core/query-builders/index.js +1 -1
- package/pg-core/query-builders/insert.cjs +1 -1
- package/pg-core/query-builders/insert.cjs.map +1 -1
- package/pg-core/query-builders/insert.js +1 -1
- package/pg-core/query-builders/insert.js.map +1 -1
- package/pg-core/query-builders/query.cjs +1 -0
- package/pg-core/query-builders/query.cjs.map +1 -1
- package/pg-core/query-builders/query.d.cts +1 -2
- package/pg-core/query-builders/query.d.ts +1 -2
- package/pg-core/query-builders/query.js +1 -0
- package/pg-core/query-builders/query.js.map +1 -1
- package/pg-core/query-builders/raw.cjs +4 -0
- package/pg-core/query-builders/raw.cjs.map +1 -1
- package/pg-core/query-builders/raw.js +4 -0
- package/pg-core/query-builders/raw.js.map +1 -1
- package/pg-core/query-builders/update.cjs +1 -1
- package/pg-core/query-builders/update.cjs.map +1 -1
- package/pg-core/query-builders/update.js +1 -1
- package/pg-core/query-builders/update.js.map +1 -1
- package/pg-core/schema.cjs +1 -1
- package/pg-core/schema.js +1 -1
- package/pg-core/session.cjs +5 -3
- package/pg-core/session.cjs.map +1 -1
- package/pg-core/session.d.cts +7 -4
- package/pg-core/session.d.ts +7 -4
- package/pg-core/session.js +5 -3
- package/pg-core/session.js.map +1 -1
- package/pg-core/table.cjs +1 -1
- package/pg-core/table.cjs.map +1 -1
- package/pg-core/table.js +1 -1
- package/pg-core/table.js.map +1 -1
- package/pg-core/{array.cjs → utils/array.cjs} +1 -1
- package/pg-core/utils/array.cjs.map +1 -0
- package/pg-core/{array.d.cts → utils/array.d.cts} +1 -1
- package/pg-core/{array.d.ts → utils/array.d.ts} +1 -1
- package/pg-core/{array.js → utils/array.js} +1 -1
- package/pg-core/utils/array.js.map +1 -0
- package/pg-core/utils/index.cjs +6 -0
- package/pg-core/utils/index.d.cts +2 -0
- package/pg-core/utils/index.d.ts +2 -0
- package/pg-core/utils/index.js +3 -0
- package/pg-core/utils.cjs +2 -2
- package/pg-core/utils.cjs.map +1 -1
- package/pg-core/utils.d.cts +1 -7
- package/pg-core/utils.d.ts +1 -7
- package/pg-core/utils.js +2 -2
- package/pg-core/utils.js.map +1 -1
- package/pg-core/view.cjs +1 -1
- package/pg-core/view.js +1 -1
- package/pg-proxy/driver.cjs +15 -10
- package/pg-proxy/driver.cjs.map +1 -1
- package/pg-proxy/driver.d.cts +3 -6
- package/pg-proxy/driver.d.ts +4 -7
- package/pg-proxy/driver.js +14 -10
- package/pg-proxy/driver.js.map +1 -1
- package/pg-proxy/index.cjs +2 -0
- package/pg-proxy/index.d.cts +2 -2
- package/pg-proxy/index.d.ts +2 -2
- package/pg-proxy/index.js +2 -2
- package/pg-proxy/migrator.cjs.map +1 -1
- package/pg-proxy/migrator.d.cts +1 -1
- package/pg-proxy/migrator.d.ts +1 -1
- package/pg-proxy/migrator.js.map +1 -1
- package/pg-proxy/session.cjs +84 -8
- package/pg-proxy/session.cjs.map +1 -1
- package/pg-proxy/session.d.cts +32 -9
- package/pg-proxy/session.d.ts +33 -10
- package/pg-proxy/session.js +84 -10
- package/pg-proxy/session.js.map +1 -1
- package/pglite/driver.cjs +33 -71
- package/pglite/driver.cjs.map +1 -1
- package/pglite/driver.d.cts +17 -12
- package/pglite/driver.d.ts +19 -14
- package/pglite/driver.js +32 -71
- package/pglite/driver.js.map +1 -1
- package/pglite/index.cjs +3 -2
- package/pglite/index.d.cts +3 -3
- package/pglite/index.d.ts +3 -3
- package/pglite/index.js +3 -3
- package/pglite/migrator.cjs.map +1 -1
- package/pglite/migrator.d.cts +1 -1
- package/pglite/migrator.d.ts +1 -1
- package/pglite/migrator.js.map +1 -1
- package/pglite/session.cjs +86 -25
- package/pglite/session.cjs.map +1 -1
- package/pglite/session.d.cts +30 -9
- package/pglite/session.d.ts +32 -11
- package/pglite/session.js +87 -27
- package/pglite/session.js.map +1 -1
- package/planetscale-serverless/driver.cjs +2 -3
- package/planetscale-serverless/driver.cjs.map +1 -1
- package/planetscale-serverless/driver.d.cts +0 -1
- package/planetscale-serverless/driver.d.ts +0 -1
- package/planetscale-serverless/driver.js +2 -3
- package/planetscale-serverless/driver.js.map +1 -1
- package/planetscale-serverless/session.cjs +20 -27
- package/planetscale-serverless/session.cjs.map +1 -1
- package/planetscale-serverless/session.d.cts +6 -12
- package/planetscale-serverless/session.d.ts +8 -14
- package/planetscale-serverless/session.js +21 -28
- package/planetscale-serverless/session.js.map +1 -1
- package/postgres-js/driver.cjs +19 -124
- package/postgres-js/driver.cjs.map +1 -1
- package/postgres-js/driver.d.cts +6 -10
- package/postgres-js/driver.d.ts +7 -11
- package/postgres-js/driver.js +19 -124
- package/postgres-js/driver.js.map +1 -1
- package/postgres-js/index.cjs +2 -2
- package/postgres-js/index.d.cts +3 -3
- package/postgres-js/index.d.ts +3 -3
- package/postgres-js/index.js +3 -3
- package/postgres-js/migrator.cjs.map +1 -1
- package/postgres-js/migrator.d.cts +1 -1
- package/postgres-js/migrator.d.ts +1 -1
- package/postgres-js/migrator.js.map +1 -1
- package/postgres-js/session.cjs +112 -17
- package/postgres-js/session.cjs.map +1 -1
- package/postgres-js/session.d.cts +31 -10
- package/postgres-js/session.d.ts +32 -11
- package/postgres-js/session.js +112 -18
- package/postgres-js/session.js.map +1 -1
- package/prisma/mysql/driver.cjs +1 -1
- package/prisma/mysql/driver.js +1 -1
- package/prisma/mysql/session.cjs +1 -2
- package/prisma/mysql/session.cjs.map +1 -1
- package/prisma/mysql/session.d.cts +0 -1
- package/prisma/mysql/session.d.ts +1 -2
- package/prisma/mysql/session.js +1 -2
- package/prisma/mysql/session.js.map +1 -1
- package/prisma/pg/driver.cjs +3 -9
- package/prisma/pg/driver.cjs.map +1 -1
- package/prisma/pg/driver.d.cts +3 -7
- package/prisma/pg/driver.d.ts +3 -7
- package/prisma/pg/driver.js +4 -9
- package/prisma/pg/driver.js.map +1 -1
- package/prisma/pg/index.cjs +2 -2
- package/prisma/pg/index.d.cts +3 -3
- package/prisma/pg/index.d.ts +3 -3
- package/prisma/pg/index.js +3 -3
- package/prisma/pg/session.cjs +25 -1
- package/prisma/pg/session.cjs.map +1 -1
- package/prisma/pg/session.d.cts +15 -3
- package/prisma/pg/session.d.ts +15 -3
- package/prisma/pg/session.js +25 -2
- package/prisma/pg/session.js.map +1 -1
- package/prisma/sqlite/session.cjs +3 -0
- package/prisma/sqlite/session.cjs.map +1 -1
- package/prisma/sqlite/session.d.cts +1 -0
- package/prisma/sqlite/session.d.ts +2 -1
- package/prisma/sqlite/session.js +3 -0
- package/prisma/sqlite/session.js.map +1 -1
- package/relations.cjs +24 -85
- package/relations.cjs.map +1 -1
- package/relations.d.cts +16 -41
- package/relations.d.ts +16 -41
- package/relations.js +25 -84
- package/relations.js.map +1 -1
- package/row-mappers/index.cjs +1 -1
- package/row-mappers/index.cjs.map +1 -1
- package/row-mappers/index.js +1 -1
- package/row-mappers/index.js.map +1 -1
- package/selection-proxy.cjs +1 -1
- package/selection-proxy.js +1 -1
- package/singlestore/driver.cjs +2 -4
- package/singlestore/driver.cjs.map +1 -1
- package/singlestore/driver.d.cts +1 -2
- package/singlestore/driver.d.ts +3 -4
- package/singlestore/driver.js +2 -4
- package/singlestore/driver.js.map +1 -1
- package/singlestore/session.cjs +7 -17
- package/singlestore/session.cjs.map +1 -1
- package/singlestore/session.d.cts +4 -8
- package/singlestore/session.d.ts +6 -10
- package/singlestore/session.js +8 -18
- package/singlestore/session.js.map +1 -1
- package/singlestore-core/columns/bigint.cjs +4 -4
- package/singlestore-core/columns/bigint.cjs.map +1 -1
- package/singlestore-core/columns/bigint.d.cts +2 -2
- package/singlestore-core/columns/bigint.d.ts +2 -2
- package/singlestore-core/columns/bigint.js +4 -4
- package/singlestore-core/columns/bigint.js.map +1 -1
- package/singlestore-core/columns/binary.cjs +2 -2
- package/singlestore-core/columns/binary.cjs.map +1 -1
- package/singlestore-core/columns/binary.d.cts +1 -1
- package/singlestore-core/columns/binary.d.ts +1 -1
- package/singlestore-core/columns/binary.js +2 -2
- package/singlestore-core/columns/binary.js.map +1 -1
- package/singlestore-core/columns/boolean.cjs +2 -2
- package/singlestore-core/columns/boolean.cjs.map +1 -1
- package/singlestore-core/columns/boolean.d.cts +1 -1
- package/singlestore-core/columns/boolean.d.ts +1 -1
- package/singlestore-core/columns/boolean.js +2 -2
- package/singlestore-core/columns/boolean.js.map +1 -1
- package/singlestore-core/columns/custom.cjs +4 -4
- package/singlestore-core/columns/custom.cjs.map +1 -1
- package/singlestore-core/columns/custom.d.cts +2 -2
- package/singlestore-core/columns/custom.d.ts +2 -2
- package/singlestore-core/columns/custom.js +4 -4
- package/singlestore-core/columns/custom.js.map +1 -1
- package/singlestore-core/columns/date.cjs +2 -2
- package/singlestore-core/columns/date.cjs.map +1 -1
- package/singlestore-core/columns/date.d.cts +1 -1
- package/singlestore-core/columns/date.d.ts +1 -1
- package/singlestore-core/columns/date.js +2 -2
- package/singlestore-core/columns/date.js.map +1 -1
- package/singlestore-core/columns/datetime.cjs +6 -6
- package/singlestore-core/columns/datetime.cjs.map +1 -1
- package/singlestore-core/columns/datetime.d.cts +3 -3
- package/singlestore-core/columns/datetime.d.ts +3 -3
- package/singlestore-core/columns/datetime.js +6 -6
- package/singlestore-core/columns/datetime.js.map +1 -1
- package/singlestore-core/columns/decimal.cjs +4 -4
- package/singlestore-core/columns/decimal.cjs.map +1 -1
- package/singlestore-core/columns/decimal.d.cts +2 -2
- package/singlestore-core/columns/decimal.d.ts +2 -2
- package/singlestore-core/columns/decimal.js +4 -4
- package/singlestore-core/columns/decimal.js.map +1 -1
- package/singlestore-core/columns/float.cjs +2 -2
- package/singlestore-core/columns/float.cjs.map +1 -1
- package/singlestore-core/columns/float.d.cts +1 -1
- package/singlestore-core/columns/float.d.ts +1 -1
- package/singlestore-core/columns/float.js +2 -2
- package/singlestore-core/columns/float.js.map +1 -1
- package/singlestore-core/columns/int.cjs +2 -2
- package/singlestore-core/columns/int.cjs.map +1 -1
- package/singlestore-core/columns/int.d.cts +1 -1
- package/singlestore-core/columns/int.d.ts +1 -1
- package/singlestore-core/columns/int.js +2 -2
- package/singlestore-core/columns/int.js.map +1 -1
- package/singlestore-core/columns/json.cjs +2 -2
- package/singlestore-core/columns/json.cjs.map +1 -1
- package/singlestore-core/columns/json.d.cts +1 -1
- package/singlestore-core/columns/json.d.ts +1 -1
- package/singlestore-core/columns/json.js +2 -2
- package/singlestore-core/columns/json.js.map +1 -1
- package/singlestore-core/columns/mediumint.cjs +2 -2
- package/singlestore-core/columns/mediumint.cjs.map +1 -1
- package/singlestore-core/columns/mediumint.d.cts +1 -1
- package/singlestore-core/columns/mediumint.d.ts +1 -1
- package/singlestore-core/columns/mediumint.js +2 -2
- package/singlestore-core/columns/mediumint.js.map +1 -1
- package/singlestore-core/columns/serial.cjs +2 -2
- package/singlestore-core/columns/serial.cjs.map +1 -1
- package/singlestore-core/columns/serial.d.cts +1 -1
- package/singlestore-core/columns/serial.d.ts +1 -1
- package/singlestore-core/columns/serial.js +2 -2
- package/singlestore-core/columns/serial.js.map +1 -1
- package/singlestore-core/columns/smallint.cjs +2 -2
- package/singlestore-core/columns/smallint.cjs.map +1 -1
- package/singlestore-core/columns/smallint.d.cts +1 -1
- package/singlestore-core/columns/smallint.d.ts +1 -1
- package/singlestore-core/columns/smallint.js +2 -2
- package/singlestore-core/columns/smallint.js.map +1 -1
- package/singlestore-core/columns/timestamp.cjs +6 -6
- package/singlestore-core/columns/timestamp.cjs.map +1 -1
- package/singlestore-core/columns/timestamp.d.cts +3 -3
- package/singlestore-core/columns/timestamp.d.ts +3 -3
- package/singlestore-core/columns/timestamp.js +6 -6
- package/singlestore-core/columns/timestamp.js.map +1 -1
- package/singlestore-core/columns/tinyint.cjs +2 -2
- package/singlestore-core/columns/tinyint.cjs.map +1 -1
- package/singlestore-core/columns/tinyint.d.cts +1 -1
- package/singlestore-core/columns/tinyint.d.ts +1 -1
- package/singlestore-core/columns/tinyint.js +2 -2
- package/singlestore-core/columns/tinyint.js.map +1 -1
- package/singlestore-core/columns/varbinary.cjs +2 -2
- package/singlestore-core/columns/varbinary.cjs.map +1 -1
- package/singlestore-core/columns/varbinary.d.cts +1 -1
- package/singlestore-core/columns/varbinary.d.ts +1 -1
- package/singlestore-core/columns/varbinary.js +2 -2
- package/singlestore-core/columns/varbinary.js.map +1 -1
- package/singlestore-core/columns/vector.cjs +8 -8
- package/singlestore-core/columns/vector.cjs.map +1 -1
- package/singlestore-core/columns/vector.d.cts +4 -4
- package/singlestore-core/columns/vector.d.ts +4 -4
- package/singlestore-core/columns/vector.js +8 -8
- package/singlestore-core/columns/vector.js.map +1 -1
- package/singlestore-core/columns/year.cjs +2 -2
- package/singlestore-core/columns/year.cjs.map +1 -1
- package/singlestore-core/columns/year.d.cts +1 -1
- package/singlestore-core/columns/year.d.ts +1 -1
- package/singlestore-core/columns/year.js +2 -2
- package/singlestore-core/columns/year.js.map +1 -1
- package/singlestore-core/db.d.ts +2 -2
- package/singlestore-core/dialect.cjs +2 -2
- package/singlestore-core/dialect.d.ts +1 -1
- package/singlestore-core/dialect.js +2 -2
- package/singlestore-core/query-builders/delete.d.ts +1 -1
- package/singlestore-core/query-builders/insert.d.ts +1 -1
- package/singlestore-core/query-builders/query.cjs +5 -13
- package/singlestore-core/query-builders/query.cjs.map +1 -1
- package/singlestore-core/query-builders/query.d.ts +1 -1
- package/singlestore-core/query-builders/query.js +5 -13
- package/singlestore-core/query-builders/query.js.map +1 -1
- package/singlestore-core/query-builders/select.d.ts +1 -1
- package/singlestore-core/query-builders/update.d.ts +1 -1
- package/singlestore-core/session.cjs.map +1 -1
- package/singlestore-core/session.d.cts +2 -2
- package/singlestore-core/session.d.ts +2 -2
- package/singlestore-core/session.js.map +1 -1
- package/singlestore-core/table.cjs +1 -1
- package/singlestore-core/table.cjs.map +1 -1
- package/singlestore-core/table.js +1 -1
- package/singlestore-core/table.js.map +1 -1
- package/singlestore-proxy/driver.cjs +2 -5
- package/singlestore-proxy/driver.cjs.map +1 -1
- package/singlestore-proxy/driver.js +2 -5
- package/singlestore-proxy/driver.js.map +1 -1
- package/singlestore-proxy/session.cjs +6 -11
- package/singlestore-proxy/session.cjs.map +1 -1
- package/singlestore-proxy/session.d.cts +4 -9
- package/singlestore-proxy/session.d.ts +5 -10
- package/singlestore-proxy/session.js +7 -12
- package/singlestore-proxy/session.js.map +1 -1
- package/sql/index.cjs +0 -1
- package/sql/index.d.cts +2 -2
- package/sql/index.d.ts +2 -2
- package/sql/index.js +2 -2
- package/sql/sql.cjs +11 -32
- package/sql/sql.cjs.map +1 -1
- package/sql/sql.d.cts +5 -15
- package/sql/sql.d.ts +5 -15
- package/sql/sql.js +12 -32
- package/sql/sql.js.map +1 -1
- package/sql-js/driver.cjs +2 -5
- package/sql-js/driver.cjs.map +1 -1
- package/sql-js/driver.d.ts +1 -1
- package/sql-js/driver.js +2 -5
- package/sql-js/driver.js.map +1 -1
- package/sql-js/session.cjs +14 -14
- package/sql-js/session.cjs.map +1 -1
- package/sql-js/session.d.cts +6 -10
- package/sql-js/session.d.ts +6 -10
- package/sql-js/session.js +15 -15
- package/sql-js/session.js.map +1 -1
- package/sqlite-cloud/driver.cjs +2 -3
- package/sqlite-cloud/driver.cjs.map +1 -1
- package/sqlite-cloud/driver.d.ts +1 -1
- package/sqlite-cloud/driver.js +2 -3
- package/sqlite-cloud/driver.js.map +1 -1
- package/sqlite-cloud/session.cjs +20 -21
- package/sqlite-cloud/session.cjs.map +1 -1
- package/sqlite-cloud/session.d.cts +6 -9
- package/sqlite-cloud/session.d.ts +7 -10
- package/sqlite-cloud/session.js +21 -22
- package/sqlite-cloud/session.js.map +1 -1
- package/sqlite-core/columns/blob.cjs +10 -10
- package/sqlite-core/columns/blob.cjs.map +1 -1
- package/sqlite-core/columns/blob.d.cts +5 -5
- package/sqlite-core/columns/blob.d.ts +5 -5
- package/sqlite-core/columns/blob.js +10 -10
- package/sqlite-core/columns/blob.js.map +1 -1
- package/sqlite-core/columns/custom.cjs +4 -4
- package/sqlite-core/columns/custom.cjs.map +1 -1
- package/sqlite-core/columns/custom.d.cts +2 -2
- package/sqlite-core/columns/custom.d.ts +2 -2
- package/sqlite-core/columns/custom.js +4 -4
- package/sqlite-core/columns/custom.js.map +1 -1
- package/sqlite-core/columns/integer.cjs +8 -8
- package/sqlite-core/columns/integer.cjs.map +1 -1
- package/sqlite-core/columns/integer.d.cts +4 -4
- package/sqlite-core/columns/integer.d.ts +4 -4
- package/sqlite-core/columns/integer.js +8 -8
- package/sqlite-core/columns/integer.js.map +1 -1
- package/sqlite-core/columns/numeric.cjs +4 -4
- package/sqlite-core/columns/numeric.cjs.map +1 -1
- package/sqlite-core/columns/numeric.d.cts +2 -2
- package/sqlite-core/columns/numeric.d.ts +2 -2
- package/sqlite-core/columns/numeric.js +4 -4
- package/sqlite-core/columns/numeric.js.map +1 -1
- package/sqlite-core/columns/text.cjs +4 -4
- package/sqlite-core/columns/text.cjs.map +1 -1
- package/sqlite-core/columns/text.d.cts +2 -2
- package/sqlite-core/columns/text.d.ts +2 -2
- package/sqlite-core/columns/text.js +4 -4
- package/sqlite-core/columns/text.js.map +1 -1
- package/sqlite-core/db.d.ts +1 -1
- package/sqlite-core/dialect.cjs +2 -2
- package/sqlite-core/dialect.d.ts +1 -1
- package/sqlite-core/dialect.js +2 -2
- package/sqlite-core/index.cjs +9 -9
- package/sqlite-core/index.js +9 -9
- package/sqlite-core/query-builders/_query.cjs +1 -1
- package/sqlite-core/query-builders/_query.cjs.map +1 -1
- package/sqlite-core/query-builders/_query.js +1 -1
- package/sqlite-core/query-builders/_query.js.map +1 -1
- package/sqlite-core/query-builders/delete.cjs +1 -1
- package/sqlite-core/query-builders/delete.cjs.map +1 -1
- package/sqlite-core/query-builders/delete.js +1 -1
- package/sqlite-core/query-builders/delete.js.map +1 -1
- package/sqlite-core/query-builders/index.cjs +1 -1
- package/sqlite-core/query-builders/index.js +1 -1
- package/sqlite-core/query-builders/insert.cjs +1 -1
- package/sqlite-core/query-builders/insert.cjs.map +1 -1
- package/sqlite-core/query-builders/insert.js +1 -1
- package/sqlite-core/query-builders/insert.js.map +1 -1
- package/sqlite-core/query-builders/query.cjs +5 -13
- package/sqlite-core/query-builders/query.cjs.map +1 -1
- package/sqlite-core/query-builders/query.d.ts +1 -1
- package/sqlite-core/query-builders/query.js +5 -13
- package/sqlite-core/query-builders/query.js.map +1 -1
- package/sqlite-core/query-builders/raw.cjs +4 -0
- package/sqlite-core/query-builders/raw.cjs.map +1 -1
- package/sqlite-core/query-builders/raw.js +4 -0
- package/sqlite-core/query-builders/raw.js.map +1 -1
- package/sqlite-core/query-builders/select.cjs +2 -2
- package/sqlite-core/query-builders/select.cjs.map +1 -1
- package/sqlite-core/query-builders/select.js +2 -2
- package/sqlite-core/query-builders/select.js.map +1 -1
- package/sqlite-core/query-builders/update.cjs +2 -2
- package/sqlite-core/query-builders/update.cjs.map +1 -1
- package/sqlite-core/query-builders/update.js +2 -2
- package/sqlite-core/query-builders/update.js.map +1 -1
- package/sqlite-core/session.cjs +8 -8
- package/sqlite-core/session.cjs.map +1 -1
- package/sqlite-core/session.d.cts +5 -5
- package/sqlite-core/session.d.ts +5 -5
- package/sqlite-core/session.js +8 -8
- package/sqlite-core/session.js.map +1 -1
- package/sqlite-core/table.cjs +1 -1
- package/sqlite-core/table.cjs.map +1 -1
- package/sqlite-core/table.js +1 -1
- package/sqlite-core/table.js.map +1 -1
- package/sqlite-core/utils.cjs +3 -3
- package/sqlite-core/utils.js +3 -3
- package/sqlite-proxy/driver.cjs +2 -3
- package/sqlite-proxy/driver.cjs.map +1 -1
- package/sqlite-proxy/driver.d.ts +1 -1
- package/sqlite-proxy/driver.js +2 -3
- package/sqlite-proxy/driver.js.map +1 -1
- package/sqlite-proxy/session.cjs +17 -20
- package/sqlite-proxy/session.cjs.map +1 -1
- package/sqlite-proxy/session.d.cts +7 -11
- package/sqlite-proxy/session.d.ts +8 -12
- package/sqlite-proxy/session.js +18 -21
- package/sqlite-proxy/session.js.map +1 -1
- package/table.d.cts +1 -1
- package/table.d.ts +1 -1
- package/tidb-serverless/driver.cjs +2 -3
- package/tidb-serverless/driver.cjs.map +1 -1
- package/tidb-serverless/driver.d.cts +0 -1
- package/tidb-serverless/driver.d.ts +0 -1
- package/tidb-serverless/driver.js +2 -3
- package/tidb-serverless/driver.js.map +1 -1
- package/tidb-serverless/session.cjs +37 -25
- package/tidb-serverless/session.cjs.map +1 -1
- package/tidb-serverless/session.d.cts +4 -10
- package/tidb-serverless/session.d.ts +6 -12
- package/tidb-serverless/session.js +38 -26
- package/tidb-serverless/session.js.map +1 -1
- package/tursodatabase/driver-core.cjs +2 -3
- package/tursodatabase/driver-core.cjs.map +1 -1
- package/tursodatabase/driver-core.d.ts +1 -1
- package/tursodatabase/driver-core.js +2 -3
- package/tursodatabase/driver-core.js.map +1 -1
- package/tursodatabase/session.cjs +19 -20
- package/tursodatabase/session.cjs.map +1 -1
- package/tursodatabase/session.d.cts +6 -9
- package/tursodatabase/session.d.ts +7 -10
- package/tursodatabase/session.js +20 -21
- package/tursodatabase/session.js.map +1 -1
- package/up-migrations/effect-pg.cjs +3 -3
- package/up-migrations/effect-pg.cjs.map +1 -1
- package/up-migrations/effect-pg.d.ts +1 -1
- package/up-migrations/effect-pg.js +3 -3
- package/up-migrations/effect-pg.js.map +1 -1
- package/up-migrations/pg.cjs +8 -3
- package/up-migrations/pg.cjs.map +1 -1
- package/up-migrations/pg.d.cts +1 -1
- package/up-migrations/pg.d.ts +2 -2
- package/up-migrations/pg.js +8 -3
- package/up-migrations/pg.js.map +1 -1
- package/up-migrations/sqlite.d.ts +2 -2
- package/utils.cjs +7 -129
- package/utils.cjs.map +1 -1
- package/utils.d.cts +3 -10
- package/utils.d.ts +3 -10
- package/utils.js +8 -127
- package/utils.js.map +1 -1
- package/vercel-postgres/driver.cjs +32 -14
- package/vercel-postgres/driver.cjs.map +1 -1
- package/vercel-postgres/driver.d.cts +17 -12
- package/vercel-postgres/driver.d.ts +18 -13
- package/vercel-postgres/driver.js +31 -14
- package/vercel-postgres/driver.js.map +1 -1
- package/vercel-postgres/index.cjs +3 -2
- package/vercel-postgres/index.d.cts +3 -3
- package/vercel-postgres/index.d.ts +3 -3
- package/vercel-postgres/index.js +3 -3
- package/vercel-postgres/migrator.cjs.map +1 -1
- package/vercel-postgres/migrator.d.cts +1 -1
- package/vercel-postgres/migrator.d.ts +1 -1
- package/vercel-postgres/migrator.js.map +1 -1
- package/vercel-postgres/session.cjs +110 -32
- package/vercel-postgres/session.cjs.map +1 -1
- package/vercel-postgres/session.d.cts +32 -9
- package/vercel-postgres/session.d.ts +33 -10
- package/vercel-postgres/session.js +111 -34
- package/vercel-postgres/session.js.map +1 -1
- package/xata-http/driver.cjs +31 -91
- package/xata-http/driver.cjs.map +1 -1
- package/xata-http/driver.d.cts +16 -10
- package/xata-http/driver.d.ts +17 -11
- package/xata-http/driver.js +30 -91
- package/xata-http/driver.js.map +1 -1
- package/xata-http/index.cjs +4 -2
- package/xata-http/index.d.cts +3 -3
- package/xata-http/index.d.ts +3 -3
- package/xata-http/index.js +3 -3
- package/xata-http/migrator.cjs +1 -1
- package/xata-http/migrator.cjs.map +1 -1
- package/xata-http/migrator.d.cts +1 -1
- package/xata-http/migrator.d.ts +1 -1
- package/xata-http/migrator.js +1 -1
- package/xata-http/migrator.js.map +1 -1
- package/xata-http/session.cjs +110 -24
- package/xata-http/session.cjs.map +1 -1
- package/xata-http/session.d.cts +33 -7
- package/xata-http/session.d.ts +34 -8
- package/xata-http/session.js +110 -26
- package/xata-http/session.js.map +1 -1
- package/codecs.cjs +0 -77
- package/codecs.cjs.map +0 -1
- package/codecs.d.cts +0 -68
- package/codecs.d.ts +0 -68
- package/codecs.js +0 -74
- package/codecs.js.map +0 -1
- package/pg-core/array.cjs.map +0 -1
- package/pg-core/array.js.map +0 -1
- package/pg-core/codecs.cjs +0 -156
- package/pg-core/codecs.cjs.map +0 -1
- package/pg-core/codecs.d.cts +0 -27
- package/pg-core/codecs.d.ts +0 -27
- package/pg-core/codecs.js +0 -148
- package/pg-core/codecs.js.map +0 -1
package/node-mssql/driver.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { AutoPool } from "./pool.js";
|
|
2
2
|
import { NodeMsSqlSession } from "./session.js";
|
|
3
3
|
import { entityKind } from "../entity.js";
|
|
4
|
-
import { DefaultLogger } from "../logger.js";
|
|
5
4
|
import * as V1 from "../_relations.js";
|
|
5
|
+
import { DefaultLogger } from "../logger.js";
|
|
6
6
|
import { MsSqlDatabase, MsSqlDatabase as MsSqlDatabase$1 } from "../mssql-core/db.js";
|
|
7
7
|
import { MsSqlDialect } from "../mssql-core/dialect.js";
|
|
8
8
|
|
|
@@ -15,10 +15,7 @@ var NodeMsSqlDriver = class {
|
|
|
15
15
|
this.options = options;
|
|
16
16
|
}
|
|
17
17
|
createSession(schema) {
|
|
18
|
-
return new NodeMsSqlSession(this.client, this.dialect, schema, {
|
|
19
|
-
logger: this.options.logger,
|
|
20
|
-
useJitMapper: this.options.useJitMapper
|
|
21
|
-
});
|
|
18
|
+
return new NodeMsSqlSession(this.client, this.dialect, schema, { logger: this.options.logger });
|
|
22
19
|
}
|
|
23
20
|
};
|
|
24
21
|
function construct(client, config = {}) {
|
|
@@ -36,10 +33,7 @@ function construct(client, config = {}) {
|
|
|
36
33
|
tableNamesMap: tablesConfig.tableNamesMap
|
|
37
34
|
};
|
|
38
35
|
}
|
|
39
|
-
const db = new MsSqlDatabase$1(dialect, new NodeMsSqlDriver(client, dialect, {
|
|
40
|
-
logger,
|
|
41
|
-
useJitMapper: config.useJitMappers
|
|
42
|
-
}).createSession(schema), schema);
|
|
36
|
+
const db = new MsSqlDatabase$1(dialect, new NodeMsSqlDriver(client, dialect, { logger }).createSession(schema), schema);
|
|
43
37
|
db.$client = client;
|
|
44
38
|
return db;
|
|
45
39
|
}
|
package/node-mssql/driver.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.js","names":["MsSqlDatabase"],"sources":["../../src/node-mssql/driver.ts"],"sourcesContent":["import type mssql from 'mssql';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MsSqlDatabase } from '~/mssql-core/db.ts';\nimport { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { DrizzleConfig, Equal } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\nimport type { NodeMsSqlClient, NodeMsSqlPreparedQueryHKT, NodeMsSqlQueryResultHKT } from './session.ts';\nimport { NodeMsSqlSession } from './session.ts';\n\nexport interface MsSqlDriverOptions {\n\tlogger?: Logger;\n
|
|
1
|
+
{"version":3,"file":"driver.js","names":["MsSqlDatabase"],"sources":["../../src/node-mssql/driver.ts"],"sourcesContent":["import type mssql from 'mssql';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { MsSqlDatabase } from '~/mssql-core/db.ts';\nimport { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { DrizzleConfig, Equal } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\nimport type { NodeMsSqlClient, NodeMsSqlPreparedQueryHKT, NodeMsSqlQueryResultHKT } from './session.ts';\nimport { NodeMsSqlSession } from './session.ts';\n\nexport interface MsSqlDriverOptions {\n\tlogger?: Logger;\n}\n\nexport class NodeMsSqlDriver {\n\tstatic readonly [entityKind]: string = 'NodeMsSqlDriver';\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tprivate dialect: MsSqlDialect,\n\t\tprivate options: MsSqlDriverOptions = {},\n\t) {\n\t}\n\n\tcreateSession(\n\t\tschema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined,\n\t): NodeMsSqlSession<Record<string, unknown>, V1.TablesRelationalConfig> {\n\t\treturn new NodeMsSqlSession(this.client, this.dialect, schema, { logger: this.options.logger });\n\t}\n}\n\nexport { MsSqlDatabase } from '~/mssql-core/db.ts';\n\nexport type NodeMsSqlDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> = MsSqlDatabase<NodeMsSqlQueryResultHKT, NodeMsSqlPreparedQueryHKT, TSchema>;\n\nexport type NodeMsSqlDrizzleConfig<TSchema extends Record<string, unknown> = Record<string, never>> =\n\t& Omit<DrizzleConfig<TSchema>, 'schema'>\n\t& ({ schema: TSchema } | { schema?: undefined });\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends NodeMsSqlClient = NodeMsSqlClient,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema> = {},\n): NodeMsSqlDatabase<TSchema> & {\n\t$client: Equal<TClient, NodeMsSqlClient> extends true ? AutoPool : TClient;\n} {\n\tconst dialect = new MsSqlDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\tif (isCallbackClient(client)) {\n\t\tclient = client.promise() as any;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst driver = new NodeMsSqlDriver(client as NodeMsSqlClient, dialect, { logger });\n\tconst session = driver.createSession(schema);\n\tconst db = new MsSqlDatabase(dialect, session, schema) as NodeMsSqlDatabase<TSchema>;\n\t(<any> db).$client = client;\n\n\treturn db as any;\n}\n\nexport function getMsSqlConnectionParams(connectionString: string): mssql.config | string {\n\ttry {\n\t\tconst url = new URL(connectionString);\n\t\treturn {\n\t\t\tuser: url.username,\n\t\t\tpassword: url.password,\n\t\t\tserver: url.hostname,\n\t\t\tport: Number.parseInt(url.port, 10),\n\t\t\tdatabase: url.pathname.replace(/^\\//, ''),\n\t\t\toptions: {\n\t\t\t\tencrypt: url.searchParams.get('encrypt') === 'true',\n\t\t\t\ttrustServerCertificate: url.searchParams.get('trustServerCertificate') === 'true',\n\t\t\t},\n\t\t};\n\t} catch {\n\t\treturn connectionString;\n\t}\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTClient extends NodeMsSqlClient = AutoPool,\n>(\n\t...params:\n\t\t| [\n\t\t\tstring,\n\t\t]\n\t\t| [\n\t\t\tstring,\n\t\t\tDrizzleConfig<TSchema>,\n\t\t]\n\t\t| [\n\t\t\t(\n\t\t\t\t& DrizzleConfig<TSchema>\n\t\t\t\t& ({\n\t\t\t\t\tconnection: string;\n\t\t\t\t} | {\n\t\t\t\t\tclient: TClient;\n\t\t\t\t})\n\t\t\t),\n\t\t]\n): NodeMsSqlDatabase<TSchema> & {\n\t$client: Equal<TClient, NodeMsSqlClient> extends true ? AutoPool : TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new AutoPool(getMsSqlConnectionParams(params[0]));\n\n\t\treturn construct(instance, params[1] as DrizzleConfig<TSchema> | undefined) as any;\n\t}\n\n\tconst { connection, client, ...drizzleConfig } = params[0] as (\n\t\t& ({ connection?: mssql.config | string; client?: TClient })\n\t\t& DrizzleConfig<TSchema>\n\t);\n\n\tif (client) return construct(client, drizzleConfig);\n\n\tconst instance = typeof connection === 'string'\n\t\t? new AutoPool(getMsSqlConnectionParams(connection))\n\t\t: new AutoPool(connection!);\n\n\treturn construct(instance, drizzleConfig) as any;\n}\n\ninterface CallbackClient {\n\tpromise(): NodeMsSqlClient;\n}\n\nfunction isCallbackClient(client: any): client is CallbackClient {\n\treturn typeof client.promise === 'function';\n}\n\nexport namespace drizzle {\n\texport function mock<TSchema extends Record<string, unknown> = Record<string, never>>(\n\t\tconfig?: DrizzleConfig<TSchema>,\n\t): NodeMsSqlDatabase<TSchema> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;AAgBA,IAAa,kBAAb,MAA6B;CAC5B,QAAiB,cAAsB;CAEvC,YACC,AAAQ,QACR,AAAQ,SACR,AAAQ,UAA8B,EAAE,EACvC;EAHO;EACA;EACA;;CAIT,cACC,QACuE;AACvE,SAAO,IAAI,iBAAiB,KAAK,QAAQ,KAAK,SAAS,QAAQ,EAAE,QAAQ,KAAK,QAAQ,QAAQ,CAAC;;;AAcjG,SAAS,UAIR,QACA,SAAiC,EAAE,EAGlC;CACD,MAAM,UAAU,IAAI,aAAa,EAAE,QAAQ,OAAO,QAAQ,CAAC;CAC3D,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAI,eAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;AAEjB,KAAI,iBAAiB,OAAO,CAC3B,UAAS,OAAO,SAAS;CAG1B,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAe,GAAG,8BACvB,OAAO,QACP,GAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAKF,MAAM,KAAK,IAAIA,gBAAc,SAFd,IAAI,gBAAgB,QAA2B,SAAS,EAAE,QAAQ,CAAC,CAC3D,cAAc,OAAO,EACG,OAAO;AACtD,CAAO,GAAI,UAAU;AAErB,QAAO;;AAGR,SAAgB,yBAAyB,kBAAiD;AACzF,KAAI;EACH,MAAM,MAAM,IAAI,IAAI,iBAAiB;AACrC,SAAO;GACN,MAAM,IAAI;GACV,UAAU,IAAI;GACd,QAAQ,IAAI;GACZ,MAAM,OAAO,SAAS,IAAI,MAAM,GAAG;GACnC,UAAU,IAAI,SAAS,QAAQ,OAAO,GAAG;GACzC,SAAS;IACR,SAAS,IAAI,aAAa,IAAI,UAAU,KAAK;IAC7C,wBAAwB,IAAI,aAAa,IAAI,yBAAyB,KAAK;IAC3E;GACD;SACM;AACP,SAAO;;;AAIT,SAAgB,QAIf,GAAG,QAoBF;AACD,KAAI,OAAO,OAAO,OAAO,SAGxB,QAAO,UAFU,IAAI,SAAS,yBAAyB,OAAO,GAAG,CAAC,EAEvC,OAAO,GAAyC;CAG5E,MAAM,EAAE,YAAY,QAAQ,GAAG,kBAAkB,OAAO;AAKxD,KAAI,OAAQ,QAAO,UAAU,QAAQ,cAAc;AAMnD,QAAO,UAJU,OAAO,eAAe,WACpC,IAAI,SAAS,yBAAyB,WAAW,CAAC,GAClD,IAAI,SAAS,WAAY,EAED,cAAc;;AAO1C,SAAS,iBAAiB,QAAuC;AAChE,QAAO,OAAO,OAAO,YAAY;;;CAI1B,SAAS,KACf,QAGC;AACD,SAAO,UAAU,EAAE,EAAS,OAAO"}
|
package/node-mssql/session.cjs
CHANGED
|
@@ -13,15 +13,13 @@ let __mssql_core_session_ts = require("../mssql-core/session.cjs");
|
|
|
13
13
|
//#region src/node-mssql/session.ts
|
|
14
14
|
var NodeMsSqlPreparedQuery = class extends __mssql_core_session_ts.PreparedQuery {
|
|
15
15
|
static [__entity_ts.entityKind] = "NodeMsSqlPreparedQuery";
|
|
16
|
-
jitMapper;
|
|
17
16
|
rawQuery;
|
|
18
|
-
constructor(client, queryString, params, logger, fields,
|
|
17
|
+
constructor(client, queryString, params, logger, fields, customResultMapper) {
|
|
19
18
|
super();
|
|
20
19
|
this.client = client;
|
|
21
20
|
this.params = params;
|
|
22
21
|
this.logger = logger;
|
|
23
22
|
this.fields = fields;
|
|
24
|
-
this.useJitMapper = useJitMapper;
|
|
25
23
|
this.customResultMapper = customResultMapper;
|
|
26
24
|
this.rawQuery = {
|
|
27
25
|
sql: queryString,
|
|
@@ -40,7 +38,7 @@ var NodeMsSqlPreparedQuery = class extends __mssql_core_session_ts.PreparedQuery
|
|
|
40
38
|
request.arrayRowMode = true;
|
|
41
39
|
const rows = await request.query(rawQuery.sql);
|
|
42
40
|
if (customResultMapper) return customResultMapper(rows.recordset);
|
|
43
|
-
return
|
|
41
|
+
return rows.recordset.map((row) => (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap));
|
|
44
42
|
}
|
|
45
43
|
async *iterator(placeholderValues = {}) {
|
|
46
44
|
const params = (0, __sql_sql_ts.fillPlaceholders)(this.params, placeholderValues);
|
|
@@ -73,7 +71,7 @@ var NodeMsSqlPreparedQuery = class extends __mssql_core_session_ts.PreparedQuery
|
|
|
73
71
|
else if (hasRowsMapper) if (customResultMapper) {
|
|
74
72
|
const mappedRow = customResultMapper([row]);
|
|
75
73
|
yield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;
|
|
76
|
-
} else yield
|
|
74
|
+
} else yield (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap);
|
|
77
75
|
else yield row;
|
|
78
76
|
}
|
|
79
77
|
} finally {
|
|
@@ -93,7 +91,7 @@ var NodeMsSqlSession = class NodeMsSqlSession extends __mssql_core_session_ts.Ms
|
|
|
93
91
|
this.logger = options.logger ?? new __logger_ts.NoopLogger();
|
|
94
92
|
}
|
|
95
93
|
prepareQuery(query, fields, customResultMapper) {
|
|
96
|
-
return new NodeMsSqlPreparedQuery(this.client, query.sql, query.params, this.logger, fields,
|
|
94
|
+
return new NodeMsSqlPreparedQuery(this.client, query.sql, query.params, this.logger, fields, customResultMapper);
|
|
97
95
|
}
|
|
98
96
|
/**
|
|
99
97
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.cjs","names":["PreparedQuery","entityKind","AutoPool","MsSqlSession","NoopLogger","MsSqlTransaction","sql"],"sources":["../../src/node-mssql/session.ts"],"sourcesContent":["import type { ConnectionPool, IResult, Request } from 'mssql';\nimport mssql from 'mssql';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mssql-core/query-builders/select.types.ts';\nimport {\n\tMsSqlSession,\n\tMsSqlTransaction,\n\ttype MsSqlTransactionConfig,\n\tPreparedQuery,\n\ttype PreparedQueryConfig,\n\ttype PreparedQueryHKT,\n\ttype PreparedQueryKind,\n\ttype QueryResultHKT,\n} from '~/mssql-core/session.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\n\nexport type NodeMsSqlClient = Pick<ConnectionPool, 'request'> | AutoPool;\n\nexport type MsSqlQueryResult<T extends unknown | unknown[] = any> = IResult<T>;\n\nexport class NodeMsSqlPreparedQuery<\n\tT extends PreparedQueryConfig,\n> extends PreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlPreparedQuery';\n\tprivate jitMapper?: RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>;\n\n\tprivate rawQuery: {\n\t\tsql: string;\n\t\tparameters: unknown[];\n\t};\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper();\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\tparameters: params,\n\t\t};\n\t}\n\n\tasync execute(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn request.query(rawQuery.sql) as Promise<T['execute']>;\n\t\t}\n\n\t\trequest.arrayRowMode = true;\n\t\tconst rows = await request.query<any[]>(rawQuery.sql);\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows.recordset);\n\t\t}\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper =\n\t\t\t\tthis.jitMapper as RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>\n\t\t\t\t\t?? makeJitQueryMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>(\n\t\t\t\t\t\tfields!,\n\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t))(\n\t\t\t\t\trows.recordset,\n\t\t\t\t)\n\t\t\t: rows.recordset.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<\n\t\tT['execute'] extends any[] ? T['execute'][number] : T['execute']\n\t> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tclient,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\trequest.stream = true;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tif (hasRowsMapper) {\n\t\t\trequest.arrayRowMode = true;\n\t\t}\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tconst stream = request.toReadableStream();\n\n\t\trequest.query(rawQuery.sql);\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([\n\t\t\t\t\tonEnd,\n\t\t\t\t\tonError,\n\t\t\t\t\tnew Promise((resolve) => stream.once('data', resolve)),\n\t\t\t\t]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t} else if (row instanceof Error) {\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = customResultMapper([row as unknown[]]);\n\t\t\t\t\t\t\tyield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield this.useJitMapper\n\t\t\t\t\t\t\t\t? (this.jitMapper = this.jitMapper as RowsMapper<(T['execute'] extends any[] ? T['execute'][number]\n\t\t\t\t\t\t\t\t\t: T['execute'])[]>\n\t\t\t\t\t\t\t\t\t?? makeJitQueryMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>(\n\t\t\t\t\t\t\t\t\t\tfields!,\n\t\t\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t\t\t))([\n\t\t\t\t\t\t\t\t\t\trow as unknown[],\n\t\t\t\t\t\t\t\t\t])[0] as T['execute']\n\t\t\t\t\t\t\t\t: mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\trequest.cancel();\n\t\t}\n\t}\n}\n\nexport interface NodeMsSqlSessionOptions {\n\tlogger?: Logger;\n\tuseJitMapper?: boolean;\n}\n\nexport class NodeMsSqlSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlSession<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tdialect: MsSqlDialect,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodeMsSqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T> {\n\t\treturn new NodeMsSqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t) as PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T>;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MsSqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\tlet queryClient = this.client as ConnectionPool;\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & {\n\t\t\tarrayRowMode: boolean;\n\t\t};\n\t\trequest.arrayRowMode = true;\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\treturn request.query(query);\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn await this.query(querySql.sql, querySql.params).then(\n\t\t\t(result) => result.recordset,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: MsSqlTransactionConfig,\n\t): Promise<T> {\n\t\tlet queryClient = this.client as ConnectionPool;\n\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\n\t\tconst mssqlTransaction = queryClient.transaction();\n\t\tconst session = new NodeMsSqlSession(\n\t\t\tmssqlTransaction,\n\t\t\tthis.dialect,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst tx = new NodeMsSqlTransaction(\n\t\t\tthis.dialect,\n\t\t\tsession as MsSqlSession<any, any, any, any>,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t);\n\n\t\tawait mssqlTransaction.begin(\n\t\t\tconfig?.isolationLevel\n\t\t\t\t? isolationLevelMap[config.isolationLevel]\n\t\t\t\t: undefined,\n\t\t);\n\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait mssqlTransaction.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait mssqlTransaction.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class NodeMsSqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlTransaction<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodeMsSqlTransaction(\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\n\t\tawait tx.execute(sql.raw(`save transaction ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback transaction ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nconst isolationLevelMap: Record<\n\tMsSqlTransactionConfig['isolationLevel'],\n\t(typeof mssql.ISOLATION_LEVEL)[keyof (typeof mssql)['ISOLATION_LEVEL']]\n> = {\n\t'read uncommitted': mssql.ISOLATION_LEVEL.READ_UNCOMMITTED,\n\t'read committed': mssql.ISOLATION_LEVEL.READ_COMMITTED,\n\t'repeatable read': mssql.ISOLATION_LEVEL.REPEATABLE_READ,\n\tserializable: mssql.ISOLATION_LEVEL.SERIALIZABLE,\n\tsnapshot: mssql.ISOLATION_LEVEL.SNAPSHOT,\n};\n\nexport interface NodeMsSqlQueryResultHKT extends QueryResultHKT {\n\ttype: MsSqlQueryResult<this['row']>;\n}\n\nexport interface NodeMsSqlPreparedQueryHKT extends PreparedQueryHKT {\n\ttype: NodeMsSqlPreparedQuery<Assume<this['config'], PreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.cjs","names":["PreparedQuery","entityKind","AutoPool","MsSqlSession","NoopLogger","MsSqlTransaction","sql"],"sources":["../../src/node-mssql/session.ts"],"sourcesContent":["import type { ConnectionPool, IResult, Request } from 'mssql';\nimport mssql from 'mssql';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mssql-core/query-builders/select.types.ts';\nimport {\n\tMsSqlSession,\n\tMsSqlTransaction,\n\ttype MsSqlTransactionConfig,\n\tPreparedQuery,\n\ttype PreparedQueryConfig,\n\ttype PreparedQueryHKT,\n\ttype PreparedQueryKind,\n\ttype QueryResultHKT,\n} from '~/mssql-core/session.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\n\nexport type NodeMsSqlClient = Pick<ConnectionPool, 'request'> | AutoPool;\n\nexport type MsSqlQueryResult<T extends unknown | unknown[] = any> = IResult<T>;\n\nexport class NodeMsSqlPreparedQuery<\n\tT extends PreparedQueryConfig,\n> extends PreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlPreparedQuery';\n\n\tprivate rawQuery: {\n\t\tsql: string;\n\t\tparameters: unknown[];\n\t};\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper();\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\tparameters: params,\n\t\t};\n\t}\n\n\tasync execute(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn request.query(rawQuery.sql) as Promise<T['execute']>;\n\t\t}\n\n\t\trequest.arrayRowMode = true;\n\t\tconst rows = await request.query<any[]>(rawQuery.sql);\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows.recordset);\n\t\t}\n\n\t\treturn rows.recordset.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<\n\t\tT['execute'] extends any[] ? T['execute'][number] : T['execute']\n\t> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tclient,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\trequest.stream = true;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tif (hasRowsMapper) {\n\t\t\trequest.arrayRowMode = true;\n\t\t}\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tconst stream = request.toReadableStream();\n\n\t\trequest.query(rawQuery.sql);\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([\n\t\t\t\t\tonEnd,\n\t\t\t\t\tonError,\n\t\t\t\t\tnew Promise((resolve) => stream.once('data', resolve)),\n\t\t\t\t]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t} else if (row instanceof Error) {\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = customResultMapper([row as unknown[]]);\n\t\t\t\t\t\t\tyield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield mapResultRow(\n\t\t\t\t\t\t\t\tfields!,\n\t\t\t\t\t\t\t\trow as unknown[],\n\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\trequest.cancel();\n\t\t}\n\t}\n}\n\nexport interface NodeMsSqlSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class NodeMsSqlSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlSession<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tdialect: MsSqlDialect,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodeMsSqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T> {\n\t\treturn new NodeMsSqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t) as PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T>;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MsSqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\tlet queryClient = this.client as ConnectionPool;\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & {\n\t\t\tarrayRowMode: boolean;\n\t\t};\n\t\trequest.arrayRowMode = true;\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\treturn request.query(query);\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn await this.query(querySql.sql, querySql.params).then(\n\t\t\t(result) => result.recordset,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: MsSqlTransactionConfig,\n\t): Promise<T> {\n\t\tlet queryClient = this.client as ConnectionPool;\n\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\n\t\tconst mssqlTransaction = queryClient.transaction();\n\t\tconst session = new NodeMsSqlSession(\n\t\t\tmssqlTransaction,\n\t\t\tthis.dialect,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst tx = new NodeMsSqlTransaction(\n\t\t\tthis.dialect,\n\t\t\tsession as MsSqlSession<any, any, any, any>,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t);\n\n\t\tawait mssqlTransaction.begin(\n\t\t\tconfig?.isolationLevel\n\t\t\t\t? isolationLevelMap[config.isolationLevel]\n\t\t\t\t: undefined,\n\t\t);\n\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait mssqlTransaction.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait mssqlTransaction.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class NodeMsSqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlTransaction<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodeMsSqlTransaction(\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\n\t\tawait tx.execute(sql.raw(`save transaction ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback transaction ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nconst isolationLevelMap: Record<\n\tMsSqlTransactionConfig['isolationLevel'],\n\t(typeof mssql.ISOLATION_LEVEL)[keyof (typeof mssql)['ISOLATION_LEVEL']]\n> = {\n\t'read uncommitted': mssql.ISOLATION_LEVEL.READ_UNCOMMITTED,\n\t'read committed': mssql.ISOLATION_LEVEL.READ_COMMITTED,\n\t'repeatable read': mssql.ISOLATION_LEVEL.REPEATABLE_READ,\n\tserializable: mssql.ISOLATION_LEVEL.SERIALIZABLE,\n\tsnapshot: mssql.ISOLATION_LEVEL.SNAPSHOT,\n};\n\nexport interface NodeMsSqlQueryResultHKT extends QueryResultHKT {\n\ttype: MsSqlQueryResult<this['row']>;\n}\n\nexport interface NodeMsSqlPreparedQueryHKT extends PreparedQueryHKT {\n\ttype: NodeMsSqlPreparedQuery<Assume<this['config'], PreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
package/node-mssql/session.d.cts
CHANGED
|
@@ -17,18 +17,15 @@ declare class NodeMsSqlPreparedQuery<T extends PreparedQueryConfig> extends Prep
|
|
|
17
17
|
private params;
|
|
18
18
|
private logger;
|
|
19
19
|
private fields;
|
|
20
|
-
private useJitMapper;
|
|
21
20
|
private customResultMapper?;
|
|
22
21
|
static readonly [entityKind]: string;
|
|
23
|
-
private jitMapper?;
|
|
24
22
|
private rawQuery;
|
|
25
|
-
constructor(client: NodeMsSqlClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined,
|
|
23
|
+
constructor(client: NodeMsSqlClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
|
|
26
24
|
execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;
|
|
27
25
|
iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']>;
|
|
28
26
|
}
|
|
29
27
|
interface NodeMsSqlSessionOptions {
|
|
30
28
|
logger?: Logger;
|
|
31
|
-
useJitMapper?: boolean;
|
|
32
29
|
}
|
|
33
30
|
declare class NodeMsSqlSession<TFullSchema extends Record<string, unknown>, TSchema extends V1.TablesRelationalConfig> extends MsSqlSession<NodeMsSqlQueryResultHKT, NodeMsSqlPreparedQueryHKT, TFullSchema, TSchema> {
|
|
34
31
|
private client;
|
package/node-mssql/session.d.ts
CHANGED
|
@@ -2,11 +2,11 @@ import { AutoPool } from "./pool.js";
|
|
|
2
2
|
import { entityKind } from "../entity.js";
|
|
3
3
|
import { Assume } from "../utils.js";
|
|
4
4
|
import { Query, SQL } from "../sql/sql.js";
|
|
5
|
-
import { Logger } from "../logger.js";
|
|
6
5
|
import * as V1 from "../_relations.js";
|
|
6
|
+
import { Logger } from "../logger.js";
|
|
7
|
+
import { MsSqlDialect } from "../mssql-core/dialect.js";
|
|
7
8
|
import { ConnectionPool, IResult } from "mssql";
|
|
8
9
|
import { MsSqlSession, MsSqlTransaction, MsSqlTransactionConfig, PreparedQuery, PreparedQueryConfig, PreparedQueryHKT, PreparedQueryKind, QueryResultHKT } from "../mssql-core/session.js";
|
|
9
|
-
import { MsSqlDialect } from "../mssql-core/dialect.js";
|
|
10
10
|
import { SelectedFieldsOrdered } from "../mssql-core/query-builders/select.types.js";
|
|
11
11
|
|
|
12
12
|
//#region src/node-mssql/session.d.ts
|
|
@@ -17,18 +17,15 @@ declare class NodeMsSqlPreparedQuery<T extends PreparedQueryConfig> extends Prep
|
|
|
17
17
|
private params;
|
|
18
18
|
private logger;
|
|
19
19
|
private fields;
|
|
20
|
-
private useJitMapper;
|
|
21
20
|
private customResultMapper?;
|
|
22
21
|
static readonly [entityKind]: string;
|
|
23
|
-
private jitMapper?;
|
|
24
22
|
private rawQuery;
|
|
25
|
-
constructor(client: NodeMsSqlClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined,
|
|
23
|
+
constructor(client: NodeMsSqlClient, queryString: string, params: unknown[], logger: Logger, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: unknown[][]) => T["execute"]) | undefined);
|
|
26
24
|
execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;
|
|
27
25
|
iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']>;
|
|
28
26
|
}
|
|
29
27
|
interface NodeMsSqlSessionOptions {
|
|
30
28
|
logger?: Logger;
|
|
31
|
-
useJitMapper?: boolean;
|
|
32
29
|
}
|
|
33
30
|
declare class NodeMsSqlSession<TFullSchema extends Record<string, unknown>, TSchema extends V1.TablesRelationalConfig> extends MsSqlSession<NodeMsSqlQueryResultHKT, NodeMsSqlPreparedQueryHKT, TFullSchema, TSchema> {
|
|
34
31
|
private client;
|
package/node-mssql/session.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AutoPool } from "./pool.js";
|
|
2
2
|
import { entityKind, is } from "../entity.js";
|
|
3
|
-
import {
|
|
3
|
+
import { mapResultRow } from "../utils.js";
|
|
4
4
|
import { fillPlaceholders, sql } from "../sql/sql.js";
|
|
5
5
|
import { NoopLogger } from "../logger.js";
|
|
6
6
|
import { once } from "node:events";
|
|
@@ -10,15 +10,13 @@ import { MsSqlSession, MsSqlTransaction, PreparedQuery } from "../mssql-core/ses
|
|
|
10
10
|
//#region src/node-mssql/session.ts
|
|
11
11
|
var NodeMsSqlPreparedQuery = class extends PreparedQuery {
|
|
12
12
|
static [entityKind] = "NodeMsSqlPreparedQuery";
|
|
13
|
-
jitMapper;
|
|
14
13
|
rawQuery;
|
|
15
|
-
constructor(client, queryString, params, logger, fields,
|
|
14
|
+
constructor(client, queryString, params, logger, fields, customResultMapper) {
|
|
16
15
|
super();
|
|
17
16
|
this.client = client;
|
|
18
17
|
this.params = params;
|
|
19
18
|
this.logger = logger;
|
|
20
19
|
this.fields = fields;
|
|
21
|
-
this.useJitMapper = useJitMapper;
|
|
22
20
|
this.customResultMapper = customResultMapper;
|
|
23
21
|
this.rawQuery = {
|
|
24
22
|
sql: queryString,
|
|
@@ -37,7 +35,7 @@ var NodeMsSqlPreparedQuery = class extends PreparedQuery {
|
|
|
37
35
|
request.arrayRowMode = true;
|
|
38
36
|
const rows = await request.query(rawQuery.sql);
|
|
39
37
|
if (customResultMapper) return customResultMapper(rows.recordset);
|
|
40
|
-
return
|
|
38
|
+
return rows.recordset.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
|
|
41
39
|
}
|
|
42
40
|
async *iterator(placeholderValues = {}) {
|
|
43
41
|
const params = fillPlaceholders(this.params, placeholderValues);
|
|
@@ -70,7 +68,7 @@ var NodeMsSqlPreparedQuery = class extends PreparedQuery {
|
|
|
70
68
|
else if (hasRowsMapper) if (customResultMapper) {
|
|
71
69
|
const mappedRow = customResultMapper([row]);
|
|
72
70
|
yield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;
|
|
73
|
-
} else yield
|
|
71
|
+
} else yield mapResultRow(fields, row, joinsNotNullableMap);
|
|
74
72
|
else yield row;
|
|
75
73
|
}
|
|
76
74
|
} finally {
|
|
@@ -90,7 +88,7 @@ var NodeMsSqlSession = class NodeMsSqlSession extends MsSqlSession {
|
|
|
90
88
|
this.logger = options.logger ?? new NoopLogger();
|
|
91
89
|
}
|
|
92
90
|
prepareQuery(query, fields, customResultMapper) {
|
|
93
|
-
return new NodeMsSqlPreparedQuery(this.client, query.sql, query.params, this.logger, fields,
|
|
91
|
+
return new NodeMsSqlPreparedQuery(this.client, query.sql, query.params, this.logger, fields, customResultMapper);
|
|
94
92
|
}
|
|
95
93
|
/**
|
|
96
94
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","names":[],"sources":["../../src/node-mssql/session.ts"],"sourcesContent":["import type { ConnectionPool, IResult, Request } from 'mssql';\nimport mssql from 'mssql';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mssql-core/query-builders/select.types.ts';\nimport {\n\tMsSqlSession,\n\tMsSqlTransaction,\n\ttype MsSqlTransactionConfig,\n\tPreparedQuery,\n\ttype PreparedQueryConfig,\n\ttype PreparedQueryHKT,\n\ttype PreparedQueryKind,\n\ttype QueryResultHKT,\n} from '~/mssql-core/session.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\n\nexport type NodeMsSqlClient = Pick<ConnectionPool, 'request'> | AutoPool;\n\nexport type MsSqlQueryResult<T extends unknown | unknown[] = any> = IResult<T>;\n\nexport class NodeMsSqlPreparedQuery<\n\tT extends PreparedQueryConfig,\n> extends PreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlPreparedQuery';\n\tprivate jitMapper?: RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>;\n\n\tprivate rawQuery: {\n\t\tsql: string;\n\t\tparameters: unknown[];\n\t};\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper();\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\tparameters: params,\n\t\t};\n\t}\n\n\tasync execute(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn request.query(rawQuery.sql) as Promise<T['execute']>;\n\t\t}\n\n\t\trequest.arrayRowMode = true;\n\t\tconst rows = await request.query<any[]>(rawQuery.sql);\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows.recordset);\n\t\t}\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper =\n\t\t\t\tthis.jitMapper as RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>\n\t\t\t\t\t?? makeJitQueryMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>(\n\t\t\t\t\t\tfields!,\n\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t))(\n\t\t\t\t\trows.recordset,\n\t\t\t\t)\n\t\t\t: rows.recordset.map((row) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<\n\t\tT['execute'] extends any[] ? T['execute'][number] : T['execute']\n\t> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tclient,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\trequest.stream = true;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tif (hasRowsMapper) {\n\t\t\trequest.arrayRowMode = true;\n\t\t}\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tconst stream = request.toReadableStream();\n\n\t\trequest.query(rawQuery.sql);\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([\n\t\t\t\t\tonEnd,\n\t\t\t\t\tonError,\n\t\t\t\t\tnew Promise((resolve) => stream.once('data', resolve)),\n\t\t\t\t]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t} else if (row instanceof Error) {\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = customResultMapper([row as unknown[]]);\n\t\t\t\t\t\t\tyield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield this.useJitMapper\n\t\t\t\t\t\t\t\t? (this.jitMapper = this.jitMapper as RowsMapper<(T['execute'] extends any[] ? T['execute'][number]\n\t\t\t\t\t\t\t\t\t: T['execute'])[]>\n\t\t\t\t\t\t\t\t\t?? makeJitQueryMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>(\n\t\t\t\t\t\t\t\t\t\tfields!,\n\t\t\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t\t\t))([\n\t\t\t\t\t\t\t\t\t\trow as unknown[],\n\t\t\t\t\t\t\t\t\t])[0] as T['execute']\n\t\t\t\t\t\t\t\t: mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\trequest.cancel();\n\t\t}\n\t}\n}\n\nexport interface NodeMsSqlSessionOptions {\n\tlogger?: Logger;\n\tuseJitMapper?: boolean;\n}\n\nexport class NodeMsSqlSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlSession<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tdialect: MsSqlDialect,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodeMsSqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T> {\n\t\treturn new NodeMsSqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t) as PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T>;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MsSqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\tlet queryClient = this.client as ConnectionPool;\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & {\n\t\t\tarrayRowMode: boolean;\n\t\t};\n\t\trequest.arrayRowMode = true;\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\treturn request.query(query);\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn await this.query(querySql.sql, querySql.params).then(\n\t\t\t(result) => result.recordset,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: MsSqlTransactionConfig,\n\t): Promise<T> {\n\t\tlet queryClient = this.client as ConnectionPool;\n\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\n\t\tconst mssqlTransaction = queryClient.transaction();\n\t\tconst session = new NodeMsSqlSession(\n\t\t\tmssqlTransaction,\n\t\t\tthis.dialect,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst tx = new NodeMsSqlTransaction(\n\t\t\tthis.dialect,\n\t\t\tsession as MsSqlSession<any, any, any, any>,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t);\n\n\t\tawait mssqlTransaction.begin(\n\t\t\tconfig?.isolationLevel\n\t\t\t\t? isolationLevelMap[config.isolationLevel]\n\t\t\t\t: undefined,\n\t\t);\n\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait mssqlTransaction.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait mssqlTransaction.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class NodeMsSqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlTransaction<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodeMsSqlTransaction(\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\n\t\tawait tx.execute(sql.raw(`save transaction ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback transaction ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nconst isolationLevelMap: Record<\n\tMsSqlTransactionConfig['isolationLevel'],\n\t(typeof mssql.ISOLATION_LEVEL)[keyof (typeof mssql)['ISOLATION_LEVEL']]\n> = {\n\t'read uncommitted': mssql.ISOLATION_LEVEL.READ_UNCOMMITTED,\n\t'read committed': mssql.ISOLATION_LEVEL.READ_COMMITTED,\n\t'repeatable read': mssql.ISOLATION_LEVEL.REPEATABLE_READ,\n\tserializable: mssql.ISOLATION_LEVEL.SERIALIZABLE,\n\tsnapshot: mssql.ISOLATION_LEVEL.SNAPSHOT,\n};\n\nexport interface NodeMsSqlQueryResultHKT extends QueryResultHKT {\n\ttype: MsSqlQueryResult<this['row']>;\n}\n\nexport interface NodeMsSqlPreparedQueryHKT extends PreparedQueryHKT {\n\ttype: NodeMsSqlPreparedQuery<Assume<this['config'], PreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","names":[],"sources":["../../src/node-mssql/session.ts"],"sourcesContent":["import type { ConnectionPool, IResult, Request } from 'mssql';\nimport mssql from 'mssql';\nimport { once } from 'node:events';\nimport type * as V1 from '~/_relations.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MsSqlDialect } from '~/mssql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mssql-core/query-builders/select.types.ts';\nimport {\n\tMsSqlSession,\n\tMsSqlTransaction,\n\ttype MsSqlTransactionConfig,\n\tPreparedQuery,\n\ttype PreparedQueryConfig,\n\ttype PreparedQueryHKT,\n\ttype PreparedQueryKind,\n\ttype QueryResultHKT,\n} from '~/mssql-core/session.ts';\nimport { fillPlaceholders, type Query, type SQL, sql } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\nimport { AutoPool } from './pool.ts';\n\nexport type NodeMsSqlClient = Pick<ConnectionPool, 'request'> | AutoPool;\n\nexport type MsSqlQueryResult<T extends unknown | unknown[] = any> = IResult<T>;\n\nexport class NodeMsSqlPreparedQuery<\n\tT extends PreparedQueryConfig,\n> extends PreparedQuery<T> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlPreparedQuery';\n\n\tprivate rawQuery: {\n\t\tsql: string;\n\t\tparameters: unknown[];\n\t};\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tqueryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t) {\n\t\tsuper();\n\t\tthis.rawQuery = {\n\t\t\tsql: queryString,\n\t\t\tparameters: params,\n\t\t};\n\t}\n\n\tasync execute(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.rawQuery.sql, params);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\treturn request.query(rawQuery.sql) as Promise<T['execute']>;\n\t\t}\n\n\t\trequest.arrayRowMode = true;\n\t\tconst rows = await request.query<any[]>(rawQuery.sql);\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows.recordset);\n\t\t}\n\n\t\treturn rows.recordset.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<\n\t\tT['execute'] extends any[] ? T['execute'][number] : T['execute']\n\t> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\trawQuery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tclient,\n\t\t\tcustomResultMapper,\n\t\t} = this;\n\t\tlet queryClient = client as ConnectionPool;\n\t\tif (is(client, AutoPool)) {\n\t\t\tqueryClient = await client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & { arrayRowMode: boolean };\n\t\trequest.stream = true;\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tif (hasRowsMapper) {\n\t\t\trequest.arrayRowMode = true;\n\t\t}\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\tconst stream = request.toReadableStream();\n\n\t\trequest.query(rawQuery.sql);\n\n\t\tfunction dataListener() {\n\t\t\tstream.pause();\n\t\t}\n\n\t\tstream.on('data', dataListener);\n\n\t\ttry {\n\t\t\tconst onEnd = once(stream, 'end');\n\t\t\tconst onError = once(stream, 'error');\n\n\t\t\twhile (true) {\n\t\t\t\tstream.resume();\n\t\t\t\tconst row = await Promise.race([\n\t\t\t\t\tonEnd,\n\t\t\t\t\tonError,\n\t\t\t\t\tnew Promise((resolve) => stream.once('data', resolve)),\n\t\t\t\t]);\n\t\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\t\tbreak;\n\t\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t} else if (row instanceof Error) {\n\t\t\t\t\tthrow row;\n\t\t\t\t} else {\n\t\t\t\t\tif (hasRowsMapper) {\n\t\t\t\t\t\tif (customResultMapper) {\n\t\t\t\t\t\t\tconst mappedRow = customResultMapper([row as unknown[]]);\n\t\t\t\t\t\t\tyield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tyield mapResultRow(\n\t\t\t\t\t\t\t\tfields!,\n\t\t\t\t\t\t\t\trow as unknown[],\n\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\tyield row as T['execute'];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\tstream.off('data', dataListener);\n\t\t\trequest.cancel();\n\t\t}\n\t}\n}\n\nexport interface NodeMsSqlSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class NodeMsSqlSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlSession<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: NodeMsSqlClient,\n\t\tdialect: MsSqlDialect,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\tprivate options: NodeMsSqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends PreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T> {\n\t\treturn new NodeMsSqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t) as PreparedQueryKind<NodeMsSqlPreparedQueryHKT, T>;\n\t}\n\n\t/**\n\t * @internal\n\t * What is its purpose?\n\t */\n\tasync query(query: string, params: unknown[]): Promise<MsSqlQueryResult> {\n\t\tthis.logger.logQuery(query, params);\n\n\t\tlet queryClient = this.client as ConnectionPool;\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\t\tconst request = queryClient.request() as Request & {\n\t\t\tarrayRowMode: boolean;\n\t\t};\n\t\trequest.arrayRowMode = true;\n\n\t\tfor (const [index, param] of params.entries()) {\n\t\t\trequest.input(`par${index}`, param);\n\t\t}\n\n\t\treturn request.query(query);\n\t}\n\n\toverride async all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn await this.query(querySql.sql, querySql.params).then(\n\t\t\t(result) => result.recordset,\n\t\t);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: MsSqlTransactionConfig,\n\t): Promise<T> {\n\t\tlet queryClient = this.client as ConnectionPool;\n\n\t\tif (is(this.client, AutoPool)) {\n\t\t\tqueryClient = await this.client.$instance();\n\t\t}\n\n\t\tconst mssqlTransaction = queryClient.transaction();\n\t\tconst session = new NodeMsSqlSession(\n\t\t\tmssqlTransaction,\n\t\t\tthis.dialect,\n\t\t\tthis.schema,\n\t\t\tthis.options,\n\t\t);\n\t\tconst tx = new NodeMsSqlTransaction(\n\t\t\tthis.dialect,\n\t\t\tsession as MsSqlSession<any, any, any, any>,\n\t\t\tthis.schema,\n\t\t\t0,\n\t\t);\n\n\t\tawait mssqlTransaction.begin(\n\t\t\tconfig?.isolationLevel\n\t\t\t\t? isolationLevelMap[config.isolationLevel]\n\t\t\t\t: undefined,\n\t\t);\n\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\tawait mssqlTransaction.commit();\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait mssqlTransaction.rollback();\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nexport class NodeMsSqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MsSqlTransaction<\n\tNodeMsSqlQueryResultHKT,\n\tNodeMsSqlPreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'NodeMsSqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: NodeMsSqlTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tconst savepointName = `sp${this.nestedIndex + 1}`;\n\t\tconst tx = new NodeMsSqlTransaction(\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\n\t\tawait tx.execute(sql.raw(`save transaction ${savepointName}`));\n\t\ttry {\n\t\t\tconst result = await transaction(tx);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tawait tx.execute(sql.raw(`rollback transaction ${savepointName}`));\n\t\t\tthrow err;\n\t\t}\n\t}\n}\n\nconst isolationLevelMap: Record<\n\tMsSqlTransactionConfig['isolationLevel'],\n\t(typeof mssql.ISOLATION_LEVEL)[keyof (typeof mssql)['ISOLATION_LEVEL']]\n> = {\n\t'read uncommitted': mssql.ISOLATION_LEVEL.READ_UNCOMMITTED,\n\t'read committed': mssql.ISOLATION_LEVEL.READ_COMMITTED,\n\t'repeatable read': mssql.ISOLATION_LEVEL.REPEATABLE_READ,\n\tserializable: mssql.ISOLATION_LEVEL.SERIALIZABLE,\n\tsnapshot: mssql.ISOLATION_LEVEL.SNAPSHOT,\n};\n\nexport interface NodeMsSqlQueryResultHKT extends QueryResultHKT {\n\ttype: MsSqlQueryResult<this['row']>;\n}\n\nexport interface NodeMsSqlPreparedQueryHKT extends PreparedQueryHKT {\n\ttype: NodeMsSqlPreparedQuery<Assume<this['config'], PreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
package/node-postgres/driver.cjs
CHANGED
|
@@ -2,9 +2,10 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
|
2
2
|
const require_runtime = require('../_virtual/_rolldown/runtime.cjs');
|
|
3
3
|
const require_node_postgres_session = require('./session.cjs');
|
|
4
4
|
let __entity_ts = require("../entity.cjs");
|
|
5
|
+
let ___relations_ts = require("../_relations.cjs");
|
|
6
|
+
___relations_ts = require_runtime.__toESM(___relations_ts);
|
|
5
7
|
let __logger_ts = require("../logger.cjs");
|
|
6
8
|
let __pg_core_async_db_ts = require("../pg-core/async/db.cjs");
|
|
7
|
-
let __pg_core_codecs_ts = require("../pg-core/codecs.cjs");
|
|
8
9
|
let __pg_core_dialect_ts = require("../pg-core/dialect.cjs");
|
|
9
10
|
let pg = require("pg");
|
|
10
11
|
pg = require_runtime.__toESM(pg);
|
|
@@ -13,22 +14,25 @@ pg = require_runtime.__toESM(pg);
|
|
|
13
14
|
var NodePgDatabase = class extends __pg_core_async_db_ts.PgAsyncDatabase {
|
|
14
15
|
static [__entity_ts.entityKind] = "NodePgDatabase";
|
|
15
16
|
};
|
|
16
|
-
const nodePgCodecs = (0, __pg_core_codecs_ts.refineGenericPgCodecs)();
|
|
17
17
|
function construct(client, config = {}) {
|
|
18
|
-
const dialect = new __pg_core_dialect_ts.PgDialect({
|
|
19
|
-
casing: config.casing,
|
|
20
|
-
useJitMappers: config.useJitMappers,
|
|
21
|
-
codecs: config.codecs ?? nodePgCodecs
|
|
22
|
-
});
|
|
18
|
+
const dialect = new __pg_core_dialect_ts.PgDialect({ casing: config.casing });
|
|
23
19
|
let logger;
|
|
24
20
|
if (config.logger === true) logger = new __logger_ts.DefaultLogger();
|
|
25
21
|
else if (config.logger !== false) logger = config.logger;
|
|
22
|
+
let schema;
|
|
23
|
+
if (config.schema) {
|
|
24
|
+
const tablesConfig = ___relations_ts.extractTablesRelationalConfig(config.schema, ___relations_ts.createTableRelationsHelpers);
|
|
25
|
+
schema = {
|
|
26
|
+
fullSchema: config.schema,
|
|
27
|
+
schema: tablesConfig.tables,
|
|
28
|
+
tableNamesMap: tablesConfig.tableNamesMap
|
|
29
|
+
};
|
|
30
|
+
}
|
|
26
31
|
const relations = config.relations ?? {};
|
|
27
|
-
const db = new NodePgDatabase(dialect, new require_node_postgres_session.NodePgSession(client, dialect, relations, {
|
|
32
|
+
const db = new NodePgDatabase(dialect, new require_node_postgres_session.NodePgSession(client, dialect, relations, schema, {
|
|
28
33
|
logger,
|
|
29
|
-
cache: config.cache
|
|
30
|
-
|
|
31
|
-
}), relations);
|
|
34
|
+
cache: config.cache
|
|
35
|
+
}), relations, schema);
|
|
32
36
|
db.$client = client;
|
|
33
37
|
db.$cache = config.cache;
|
|
34
38
|
if (db.$cache) db.$cache["invalidate"] = config.cache?.onMutate;
|
|
@@ -36,9 +40,9 @@ function construct(client, config = {}) {
|
|
|
36
40
|
}
|
|
37
41
|
function drizzle(...params) {
|
|
38
42
|
if (typeof params[0] === "string") return construct(new pg.default.Pool({ connectionString: params[0] }), params[1]);
|
|
39
|
-
const { connection, client, ...
|
|
40
|
-
if (client) return construct(client,
|
|
41
|
-
return construct(typeof connection === "string" ? new pg.default.Pool({ connectionString: connection }) : new pg.default.Pool(connection),
|
|
43
|
+
const { connection, client, ...drizzleConfig } = params[0];
|
|
44
|
+
if (client) return construct(client, drizzleConfig);
|
|
45
|
+
return construct(typeof connection === "string" ? new pg.default.Pool({ connectionString: connection }) : new pg.default.Pool(connection), drizzleConfig);
|
|
42
46
|
}
|
|
43
47
|
(function(_drizzle) {
|
|
44
48
|
function mock(config) {
|
|
@@ -55,5 +59,4 @@ Object.defineProperty(exports, 'drizzle', {
|
|
|
55
59
|
return drizzle;
|
|
56
60
|
}
|
|
57
61
|
});
|
|
58
|
-
exports.nodePgCodecs = nodePgCodecs;
|
|
59
62
|
//# sourceMappingURL=driver.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"driver.cjs","names":["PgAsyncDatabase","entityKind","PgDialect","DefaultLogger","NodePgSession"],"sources":["../../src/node-postgres/driver.ts"],"sourcesContent":["import pg, { type Pool, type PoolConfig } from 'pg';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/db.ts';\nimport {
|
|
1
|
+
{"version":3,"file":"driver.cjs","names":["PgAsyncDatabase","entityKind","PgDialect","DefaultLogger","V1","NodePgSession"],"sources":["../../src/node-postgres/driver.ts"],"sourcesContent":["import pg, { type Pool, type PoolConfig } from 'pg';\nimport * as V1 from '~/_relations.ts';\nimport type { Cache } from '~/cache/core/cache.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport { PgAsyncDatabase } from '~/pg-core/async/db.ts';\nimport { PgDialect } from '~/pg-core/dialect.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport type { NodePgClient, NodePgQueryResultHKT } from './session.ts';\nimport { NodePgSession } from './session.ts';\n\nexport interface PgDriverOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n}\n\nexport class NodePgDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends PgAsyncDatabase<NodePgQueryResultHKT, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'NodePgDatabase';\n}\n\nfunction construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NodePgClient = NodePgClient,\n>(\n\tclient: TClient,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): NodePgDatabase<TSchema, TRelations> & {\n\t$client: NodePgClient extends TClient ? Pool : TClient;\n} {\n\tconst dialect = new PgDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {};\n\tconst session = new NodePgSession(client, dialect, relations, schema, {\n\t\tlogger,\n\t\tcache: config.cache,\n\t});\n\n\tconst db = new NodePgDatabase(\n\t\tdialect,\n\t\tsession,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as NodePgDatabase<TSchema>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\n\treturn db as any;\n}\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends NodePgClient = Pool,\n>(\n\t...params:\n\t\t| [\n\t\t\tstring,\n\t\t]\n\t\t| [\n\t\t\tstring,\n\t\t\tDrizzleConfig<TSchema, TRelations>,\n\t\t]\n\t\t| [\n\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t& ({\n\t\t\t\tclient: TClient;\n\t\t\t} | {\n\t\t\t\tconnection: string | PoolConfig;\n\t\t\t}),\n\t\t]\n): NodePgDatabase<TSchema, TRelations> & {\n\t$client: NodePgClient extends TClient ? Pool : TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new pg.Pool({\n\t\t\tconnectionString: params[0],\n\t\t});\n\n\t\treturn construct(instance, params[1] as DrizzleConfig<TSchema, TRelations> | undefined) as any;\n\t}\n\n\tconst { connection, client, ...drizzleConfig } = params[0] as (\n\t\t& ({ connection?: PoolConfig | string; client?: TClient })\n\t\t& DrizzleConfig<TSchema, TRelations>\n\t);\n\n\tif (client) return construct(client, drizzleConfig);\n\n\tconst instance = typeof connection === 'string'\n\t\t? new pg.Pool({\n\t\t\tconnectionString: connection,\n\t\t})\n\t\t: new pg.Pool(connection!);\n\n\treturn construct(instance, drizzleConfig) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): NodePgDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;AAkBA,IAAa,iBAAb,cAGUA,sCAA2D;CACpE,QAA0BC,0BAAsB;;AAGjD,SAAS,UAKR,QACA,SAA6C,EAAE,EAG9C;CACD,MAAM,UAAU,IAAIC,+BAAU,EAAE,QAAQ,OAAO,QAAQ,CAAC;CACxD,IAAI;AACJ,KAAI,OAAO,WAAW,KACrB,UAAS,IAAIC,2BAAe;UAClB,OAAO,WAAW,MAC5B,UAAS,OAAO;CAGjB,IAAI;AACJ,KAAI,OAAO,QAAQ;EAClB,MAAM,eAAeC,gBAAG,8BACvB,OAAO,QACPA,gBAAG,4BACH;AACD,WAAS;GACR,YAAY,OAAO;GACnB,QAAQ,aAAa;GACrB,eAAe,aAAa;GAC5B;;CAGF,MAAM,YAAY,OAAO,aAAa,EAAE;CAMxC,MAAM,KAAK,IAAI,eACd,SANe,IAAIC,4CAAc,QAAQ,SAAS,WAAW,QAAQ;EACrE;EACA,OAAO,OAAO;EACd,CAAC,EAKD,WACA,OACA;AACD,CAAO,GAAI,UAAU;AACrB,CAAO,GAAI,SAAS,OAAO;AAC3B,KAAW,GAAI,OACd,CAAO,GAAI,OAAO,gBAAgB,OAAO,OAAO;AAGjD,QAAO;;AAGR,SAAgB,QAKf,GAAG,QAkBF;AACD,KAAI,OAAO,OAAO,OAAO,SAKxB,QAAO,UAJU,IAAI,WAAG,KAAK,EAC5B,kBAAkB,OAAO,IACzB,CAAC,EAEyB,OAAO,GAAqD;CAGxF,MAAM,EAAE,YAAY,QAAQ,GAAG,kBAAkB,OAAO;AAKxD,KAAI,OAAQ,QAAO,UAAU,QAAQ,cAAc;AAQnD,QAAO,UANU,OAAO,eAAe,WACpC,IAAI,WAAG,KAAK,EACb,kBAAkB,YAClB,CAAC,GACA,IAAI,WAAG,KAAK,WAAY,EAEA,cAAc;;;CAIlC,SAAS,KAIf,QAGC;AACD,SAAO,UAAU,EAAE,EAAS,OAAO"}
|
|
@@ -1,37 +1,32 @@
|
|
|
1
|
-
import { PartialWithUndefined } from "../utils.cjs";
|
|
2
|
-
import { Codec } from "../codecs.cjs";
|
|
3
1
|
import { NodePgClient, NodePgQueryResultHKT } from "./session.cjs";
|
|
4
2
|
import { entityKind } from "../entity.cjs";
|
|
3
|
+
import { DrizzleConfig } from "../utils.cjs";
|
|
5
4
|
import { Cache } from "../cache/core/cache.cjs";
|
|
6
5
|
import { AnyRelations, EmptyRelations } from "../relations.cjs";
|
|
7
6
|
import { Logger } from "../logger.cjs";
|
|
8
|
-
import * as __pg_core_codecs_ts0 from "../pg-core/codecs.cjs";
|
|
9
7
|
import { PgAsyncDatabase } from "../pg-core/async/db.cjs";
|
|
10
|
-
import { DrizzlePgConfig } from "../pg-core/utils.cjs";
|
|
11
8
|
import { Pool, PoolConfig } from "pg";
|
|
12
9
|
|
|
13
10
|
//#region src/node-postgres/driver.d.ts
|
|
14
11
|
interface PgDriverOptions {
|
|
15
12
|
logger?: Logger;
|
|
16
13
|
cache?: Cache;
|
|
17
|
-
useJitMapper?: boolean;
|
|
18
14
|
}
|
|
19
|
-
declare class NodePgDatabase<TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NodePgQueryResultHKT, TRelations> {
|
|
15
|
+
declare class NodePgDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NodePgQueryResultHKT, TSchema, TRelations> {
|
|
20
16
|
static readonly [entityKind]: string;
|
|
21
17
|
}
|
|
22
|
-
declare
|
|
23
|
-
declare function drizzle<TRelations extends AnyRelations = EmptyRelations, TClient extends NodePgClient = Pool>(...params: [string] | [string, DrizzlePgConfig<TRelations>] | [DrizzlePgConfig<TRelations> & ({
|
|
18
|
+
declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends NodePgClient = Pool>(...params: [string] | [string, DrizzleConfig<TSchema, TRelations>] | [DrizzleConfig<TSchema, TRelations> & ({
|
|
24
19
|
client: TClient;
|
|
25
20
|
} | {
|
|
26
21
|
connection: string | PoolConfig;
|
|
27
|
-
})]): NodePgDatabase<TRelations> & {
|
|
22
|
+
})]): NodePgDatabase<TSchema, TRelations> & {
|
|
28
23
|
$client: NodePgClient extends TClient ? Pool : TClient;
|
|
29
24
|
};
|
|
30
25
|
declare namespace drizzle {
|
|
31
|
-
function mock<TRelations extends AnyRelations = EmptyRelations>(config?:
|
|
26
|
+
function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): NodePgDatabase<TSchema, TRelations> & {
|
|
32
27
|
$client: '$client is not available on drizzle.mock()';
|
|
33
28
|
};
|
|
34
29
|
}
|
|
35
30
|
//#endregion
|
|
36
|
-
export { NodePgDatabase, PgDriverOptions, drizzle
|
|
31
|
+
export { NodePgDatabase, PgDriverOptions, drizzle };
|
|
37
32
|
//# sourceMappingURL=driver.d.cts.map
|
|
@@ -1,37 +1,32 @@
|
|
|
1
|
-
import { PartialWithUndefined } from "../utils.js";
|
|
2
|
-
import { Codec } from "../codecs.js";
|
|
3
1
|
import { NodePgClient, NodePgQueryResultHKT } from "./session.js";
|
|
4
2
|
import { entityKind } from "../entity.js";
|
|
3
|
+
import { DrizzleConfig } from "../utils.js";
|
|
5
4
|
import { Logger } from "../logger.js";
|
|
6
|
-
import { AnyRelations, EmptyRelations } from "../relations.js";
|
|
7
5
|
import { PgAsyncDatabase } from "../pg-core/async/db.js";
|
|
8
|
-
import * as __pg_core_codecs_ts0 from "../pg-core/codecs.js";
|
|
9
6
|
import { Cache } from "../cache/core/cache.js";
|
|
7
|
+
import { AnyRelations, EmptyRelations } from "../relations.js";
|
|
10
8
|
import { Pool, PoolConfig } from "pg";
|
|
11
|
-
import { DrizzlePgConfig } from "../pg-core/utils.js";
|
|
12
9
|
|
|
13
10
|
//#region src/node-postgres/driver.d.ts
|
|
14
11
|
interface PgDriverOptions {
|
|
15
12
|
logger?: Logger;
|
|
16
13
|
cache?: Cache;
|
|
17
|
-
useJitMapper?: boolean;
|
|
18
14
|
}
|
|
19
|
-
declare class NodePgDatabase<TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NodePgQueryResultHKT, TRelations> {
|
|
15
|
+
declare class NodePgDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends PgAsyncDatabase<NodePgQueryResultHKT, TSchema, TRelations> {
|
|
20
16
|
static readonly [entityKind]: string;
|
|
21
17
|
}
|
|
22
|
-
declare
|
|
23
|
-
declare function drizzle<TRelations extends AnyRelations = EmptyRelations, TClient extends NodePgClient = Pool>(...params: [string] | [string, DrizzlePgConfig<TRelations>] | [DrizzlePgConfig<TRelations> & ({
|
|
18
|
+
declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends NodePgClient = Pool>(...params: [string] | [string, DrizzleConfig<TSchema, TRelations>] | [DrizzleConfig<TSchema, TRelations> & ({
|
|
24
19
|
client: TClient;
|
|
25
20
|
} | {
|
|
26
21
|
connection: string | PoolConfig;
|
|
27
|
-
})]): NodePgDatabase<TRelations> & {
|
|
22
|
+
})]): NodePgDatabase<TSchema, TRelations> & {
|
|
28
23
|
$client: NodePgClient extends TClient ? Pool : TClient;
|
|
29
24
|
};
|
|
30
25
|
declare namespace drizzle {
|
|
31
|
-
function mock<TRelations extends AnyRelations = EmptyRelations>(config?:
|
|
26
|
+
function mock<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations>(config?: DrizzleConfig<TSchema, TRelations>): NodePgDatabase<TSchema, TRelations> & {
|
|
32
27
|
$client: '$client is not available on drizzle.mock()';
|
|
33
28
|
};
|
|
34
29
|
}
|
|
35
30
|
//#endregion
|
|
36
|
-
export { NodePgDatabase, PgDriverOptions, drizzle
|
|
31
|
+
export { NodePgDatabase, PgDriverOptions, drizzle };
|
|
37
32
|
//# sourceMappingURL=driver.d.ts.map
|
package/node-postgres/driver.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { NodePgSession } from "./session.js";
|
|
2
2
|
import { entityKind } from "../entity.js";
|
|
3
|
+
import * as V1 from "../_relations.js";
|
|
3
4
|
import { DefaultLogger } from "../logger.js";
|
|
4
5
|
import { PgAsyncDatabase } from "../pg-core/async/db.js";
|
|
5
|
-
import { refineGenericPgCodecs } from "../pg-core/codecs.js";
|
|
6
6
|
import { PgDialect } from "../pg-core/dialect.js";
|
|
7
7
|
import pg from "pg";
|
|
8
8
|
|
|
@@ -10,22 +10,25 @@ import pg from "pg";
|
|
|
10
10
|
var NodePgDatabase = class extends PgAsyncDatabase {
|
|
11
11
|
static [entityKind] = "NodePgDatabase";
|
|
12
12
|
};
|
|
13
|
-
const nodePgCodecs = refineGenericPgCodecs();
|
|
14
13
|
function construct(client, config = {}) {
|
|
15
|
-
const dialect = new PgDialect({
|
|
16
|
-
casing: config.casing,
|
|
17
|
-
useJitMappers: config.useJitMappers,
|
|
18
|
-
codecs: config.codecs ?? nodePgCodecs
|
|
19
|
-
});
|
|
14
|
+
const dialect = new PgDialect({ casing: config.casing });
|
|
20
15
|
let logger;
|
|
21
16
|
if (config.logger === true) logger = new DefaultLogger();
|
|
22
17
|
else if (config.logger !== false) logger = config.logger;
|
|
18
|
+
let schema;
|
|
19
|
+
if (config.schema) {
|
|
20
|
+
const tablesConfig = V1.extractTablesRelationalConfig(config.schema, V1.createTableRelationsHelpers);
|
|
21
|
+
schema = {
|
|
22
|
+
fullSchema: config.schema,
|
|
23
|
+
schema: tablesConfig.tables,
|
|
24
|
+
tableNamesMap: tablesConfig.tableNamesMap
|
|
25
|
+
};
|
|
26
|
+
}
|
|
23
27
|
const relations = config.relations ?? {};
|
|
24
|
-
const db = new NodePgDatabase(dialect, new NodePgSession(client, dialect, relations, {
|
|
28
|
+
const db = new NodePgDatabase(dialect, new NodePgSession(client, dialect, relations, schema, {
|
|
25
29
|
logger,
|
|
26
|
-
cache: config.cache
|
|
27
|
-
|
|
28
|
-
}), relations);
|
|
30
|
+
cache: config.cache
|
|
31
|
+
}), relations, schema);
|
|
29
32
|
db.$client = client;
|
|
30
33
|
db.$cache = config.cache;
|
|
31
34
|
if (db.$cache) db.$cache["invalidate"] = config.cache?.onMutate;
|
|
@@ -33,9 +36,9 @@ function construct(client, config = {}) {
|
|
|
33
36
|
}
|
|
34
37
|
function drizzle(...params) {
|
|
35
38
|
if (typeof params[0] === "string") return construct(new pg.Pool({ connectionString: params[0] }), params[1]);
|
|
36
|
-
const { connection, client, ...
|
|
37
|
-
if (client) return construct(client,
|
|
38
|
-
return construct(typeof connection === "string" ? new pg.Pool({ connectionString: connection }) : new pg.Pool(connection),
|
|
39
|
+
const { connection, client, ...drizzleConfig } = params[0];
|
|
40
|
+
if (client) return construct(client, drizzleConfig);
|
|
41
|
+
return construct(typeof connection === "string" ? new pg.Pool({ connectionString: connection }) : new pg.Pool(connection), drizzleConfig);
|
|
39
42
|
}
|
|
40
43
|
(function(_drizzle) {
|
|
41
44
|
function mock(config) {
|
|
@@ -45,5 +48,5 @@ function drizzle(...params) {
|
|
|
45
48
|
})(drizzle || (drizzle = {}));
|
|
46
49
|
|
|
47
50
|
//#endregion
|
|
48
|
-
export { NodePgDatabase, drizzle
|
|
51
|
+
export { NodePgDatabase, drizzle };
|
|
49
52
|
//# sourceMappingURL=driver.js.map
|