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
|
@@ -4,37 +4,31 @@ let __entity_ts = require("../../entity.cjs");
|
|
|
4
4
|
let __column_ts = require("../../column.cjs");
|
|
5
5
|
let __utils_ts = require("../../utils.cjs");
|
|
6
6
|
let __sql_sql_ts = require("../../sql/sql.cjs");
|
|
7
|
-
let __cache_core_index_ts = require("../../cache/core/index.cjs");
|
|
8
7
|
let __logger_ts = require("../../logger.cjs");
|
|
8
|
+
let __cache_core_index_ts = require("../../cache/core/index.cjs");
|
|
9
9
|
let __mysql_core_session_ts = require("../../mysql-core/session.cjs");
|
|
10
|
-
let __relations_ts = require("../../relations.cjs");
|
|
11
10
|
|
|
12
11
|
//#region src/bun-sql/mysql/session.ts
|
|
13
12
|
var BunMySqlPreparedQuery = class extends __mysql_core_session_ts.MySqlPreparedQuery {
|
|
14
13
|
static [__entity_ts.entityKind] = "BunMySqlPreparedQuery";
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
super(cache, queryMetadata, cacheConfig);
|
|
14
|
+
constructor(client, query, logger, cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds, isRqbV2Query) {
|
|
15
|
+
super(query, cache, queryMetadata, cacheConfig);
|
|
18
16
|
this.client = client;
|
|
19
|
-
this.query = query;
|
|
20
|
-
this.params = params;
|
|
21
17
|
this.logger = logger;
|
|
22
18
|
this.fields = fields;
|
|
23
|
-
this.useJitMapper = useJitMapper;
|
|
24
19
|
this.customResultMapper = customResultMapper;
|
|
25
20
|
this.generatedIds = generatedIds;
|
|
26
21
|
this.returningIds = returningIds;
|
|
27
22
|
this.isRqbV2Query = isRqbV2Query;
|
|
28
|
-
this.rqbConfig = rqbConfig;
|
|
29
23
|
}
|
|
30
24
|
async execute(placeholderValues = {}) {
|
|
31
25
|
if (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);
|
|
32
|
-
const { fields, client, logger,
|
|
33
|
-
const params = (0, __sql_sql_ts.fillPlaceholders)(
|
|
34
|
-
logger.logQuery(query, params);
|
|
26
|
+
const { fields, client, logger, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;
|
|
27
|
+
const params = (0, __sql_sql_ts.fillPlaceholders)(query.params, placeholderValues);
|
|
28
|
+
logger.logQuery(query.sql, params);
|
|
35
29
|
if (!fields && !customResultMapper) {
|
|
36
|
-
const res = await this.queryWithCache(query, params, async () => {
|
|
37
|
-
return await client.unsafe(query, params);
|
|
30
|
+
const res = await this.queryWithCache(query.sql, params, async () => {
|
|
31
|
+
return await client.unsafe(query.sql, params);
|
|
38
32
|
});
|
|
39
33
|
const insertId = res.lastInsertRowid;
|
|
40
34
|
const affectedRows = res.affectedRows;
|
|
@@ -55,38 +49,31 @@ var BunMySqlPreparedQuery = class extends __mysql_core_session_ts.MySqlPreparedQ
|
|
|
55
49
|
}
|
|
56
50
|
return res;
|
|
57
51
|
}
|
|
58
|
-
const rows = await this.queryWithCache(query, params, async () => {
|
|
59
|
-
return await client.unsafe(query, params).values();
|
|
52
|
+
const rows = await this.queryWithCache(query.sql, params, async () => {
|
|
53
|
+
return await client.unsafe(query.sql, params).values();
|
|
60
54
|
});
|
|
61
55
|
if (customResultMapper) return customResultMapper(rows);
|
|
62
|
-
return
|
|
56
|
+
return rows.map((row) => (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap));
|
|
63
57
|
}
|
|
64
58
|
async executeRqbV2(placeholderValues = {}) {
|
|
65
|
-
const params = (0, __sql_sql_ts.fillPlaceholders)(this.params, placeholderValues);
|
|
66
|
-
this.logger.logQuery(this.query, params);
|
|
59
|
+
const params = (0, __sql_sql_ts.fillPlaceholders)(this.query.params, placeholderValues);
|
|
60
|
+
this.logger.logQuery(this.query.sql, params);
|
|
67
61
|
const { client, query, customResultMapper } = this;
|
|
68
|
-
|
|
69
|
-
return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? (0, __relations_ts.makeRqbJitMapper)(this.rqbConfig))(rows) : customResultMapper(rows);
|
|
62
|
+
return customResultMapper(await client.unsafe(query.sql, params));
|
|
70
63
|
}
|
|
71
64
|
async *iterator(placeholderValues = {}) {
|
|
72
|
-
const { fields,
|
|
73
|
-
const params = (0, __sql_sql_ts.fillPlaceholders)(
|
|
74
|
-
const rows = await this.queryWithCache(query, params, async () => {
|
|
75
|
-
return await client.unsafe(query, params).values();
|
|
76
|
-
});
|
|
65
|
+
const { fields, query, joinsNotNullableMap, client, customResultMapper } = this;
|
|
66
|
+
const params = (0, __sql_sql_ts.fillPlaceholders)(query.params, placeholderValues);
|
|
77
67
|
const hasRowsMapper = Boolean(fields || customResultMapper);
|
|
68
|
+
const rows = await this.queryWithCache(query.sql, params, async () => {
|
|
69
|
+
return await (hasRowsMapper && !this.isRqbV2Query ? client.unsafe(query.sql, params).values() : client.unsafe(query.sql, params));
|
|
70
|
+
});
|
|
78
71
|
for (const row of rows) {
|
|
79
72
|
if (row === void 0 || Array.isArray(row) && row.length === 0) break;
|
|
80
|
-
if (
|
|
81
|
-
else {
|
|
82
|
-
const mapped = customResultMapper([row]);
|
|
83
|
-
if (this.rqbConfig.isFirst) yield mapped;
|
|
84
|
-
else yield mapped[0];
|
|
85
|
-
}
|
|
86
|
-
else if (hasRowsMapper) if (customResultMapper) {
|
|
73
|
+
if (hasRowsMapper) if (customResultMapper) {
|
|
87
74
|
const mappedRow = customResultMapper([row]);
|
|
88
75
|
yield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;
|
|
89
|
-
} else yield
|
|
76
|
+
} else yield (0, __utils_ts.mapResultRow)(fields, row, joinsNotNullableMap);
|
|
90
77
|
else yield row;
|
|
91
78
|
}
|
|
92
79
|
}
|
|
@@ -107,10 +94,10 @@ var BunMySqlSession = class BunMySqlSession extends __mysql_core_session_ts.MySq
|
|
|
107
94
|
this.mode = options.mode;
|
|
108
95
|
}
|
|
109
96
|
prepareQuery(query, fields, customResultMapper, generatedIds, returningIds, queryMetadata, cacheConfig) {
|
|
110
|
-
return new BunMySqlPreparedQuery(this.client, query
|
|
97
|
+
return new BunMySqlPreparedQuery(this.client, query, this.logger, this.cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds);
|
|
111
98
|
}
|
|
112
|
-
prepareRelationalQuery(query, fields, customResultMapper,
|
|
113
|
-
return new BunMySqlPreparedQuery(this.client, query
|
|
99
|
+
prepareRelationalQuery(query, fields, customResultMapper, generatedIds, returningIds) {
|
|
100
|
+
return new BunMySqlPreparedQuery(this.client, query, this.logger, this.cache, void 0, void 0, fields, customResultMapper, generatedIds, returningIds, true);
|
|
114
101
|
}
|
|
115
102
|
/** @internal */
|
|
116
103
|
async query(query, params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.cjs","names":["MySqlPreparedQuery","entityKind","Column","MySqlSession","NoopLogger","NoopCache","MySqlTransaction"],"sources":["../../../src/bun-sql/mysql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL as BunSQL, TransactionSQL } from 'bun';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport {\n\ttype AnyRelations,\n\tmakeRqbJitMapper,\n\ttype RelationalQueryMapperConfig,\n\ttype RelationalRowsMapper,\n} from '~/relations.ts';\nimport { fillPlaceholders } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\n\nexport class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'BunMySqlPreparedQuery';\n\tprivate jitMapper?:\n\t\t| RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>\n\t\t| RelationalRowsMapper<T['execute']>;\n\n\tconstructor(\n\t\tprivate client: BunSQL,\n\t\tprivate query: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t\tprivate rqbConfig?: RelationalQueryMapperConfig,\n\t) {\n\t\tsuper(cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tlogger,\n\t\t\tparams: rawParams,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tconst params = fillPlaceholders(rawParams, placeholderValues);\n\n\t\tlogger.logQuery(query, params);\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(query, params, async () => {\n\t\t\t\treturn await client.unsafe(query, params);\n\t\t\t});\n\n\t\t\tconst insertId = res.lastInsertRowid;\n\t\t\tconst affectedRows = res.affectedRows;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(query, params, async () => {\n\t\t\treturn await client.unsafe(query, params).values();\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\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))(rows)\n\t\t\t: rows.map((row: unknown[]) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query, params);\n\n\t\tconst { client, query, customResultMapper } = this;\n\t\tconst rows = await client.unsafe(query, params);\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['execute']>\n\t\t\t\t?? makeRqbJitMapper<T['execute']>(this.rqbConfig!))(rows)\n\t\t\t: (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst { fields, params: queryParams, query, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(queryParams, placeholderValues);\n\t\tconst rows = await this.queryWithCache(query, params, async () => {\n\t\t\treturn await client.unsafe(query, params).values();\n\t\t});\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tfor (const row of rows) {\n\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (this.isRqbV2Query) {\n\t\t\t\tif (this.useJitMapper) {\n\t\t\t\t\tyield (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['execute']>\n\t\t\t\t\t\t?? makeRqbJitMapper<T['execute']>(this.rqbConfig!))([row]);\n\t\t\t\t} else {\n\t\t\t\t\tconst mapped = (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])([row]);\n\t\t\t\t\tif (this.rqbConfig!.isFirst) yield mapped;\n\t\t\t\t\telse yield ((<any[]> mapped)[0]);\n\t\t\t\t}\n\t\t\t} else if (hasRowsMapper) {\n\t\t\t\tif (customResultMapper) {\n\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t} else {\n\t\t\t\t\tyield this.useJitMapper\n\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['execute'])[]>\n\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\tfields!,\n\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t))([row])[0] as T['execute']\n\t\t\t\t\t\t: mapResultRow(fields!, row, joinsNotNullableMap);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tyield row as T['execute'];\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface BunMySqlSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tuseJitMapper?: boolean;\n\tmode: Mode;\n}\n\nexport class BunMySqlSession<\n\tTSQL extends BunSQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlSession';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\treadonly client: TSQL,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\treadonly options: BunMySqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tconfig: RelationalQueryMapperConfig,\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t\tconfig,\n\t\t) as any;\n\t}\n\n\t/** @internal */\n\tasync query(query: string, params: unknown[]): Promise<Record<string, unknown>[]> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.unsafe(query, params);\n\t\treturn result;\n\t}\n\n\toverride 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 this.client.unsafe(querySql.sql, querySql.params);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst query = this.dialect.sqlToQuery(sql);\n\t\tconst data = await this.client.unsafe(query.sql, query.params).values();\n\n\t\tconst count = data[0][0];\n\t\tif (typeof count === 'number') return count;\n\t\treturn Number(count);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst startTransactionSql = config\n\t\t\t? this.getStartTransactionSQL(config)?.inlineParams().toQuery(this.dialect).sql.slice(18) ?? ''\n\t\t\t: '';\n\n\t\tif (config?.isolationLevel) throw new Error(\"Driver doesn't support setting isolation level on transaction\");\n\n\t\treturn this.client.begin(startTransactionSql, async (client) => {\n\t\t\tconst session = new BunMySqlSession<TransactionSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t0,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\t// if (config) {\n\t\t\t// \tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\t// \tif (setTransactionConfigSql) {\n\t\t\t// \t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t// \t}\n\t\t\t// }\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunMySqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tBunMySqlQueryResultHKT,\n\tBunMySqlPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (<BunMySqlSession<TransactionSQL, any, any, any>> this.session).client.savepoint((client) => {\n\t\t\tconst session = new BunMySqlSession<SavepointSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t(<BunMySqlSession<any, any, any, any>> this.session).options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.nestedIndex + 1,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunMySqlQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: Record<string, unknown>[] & Record<string, unknown>;\n}\n\nexport interface BunMySqlPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: BunMySqlPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.cjs","names":["MySqlPreparedQuery","entityKind","Column","MySqlSession","NoopLogger","NoopCache","MySqlTransaction"],"sources":["../../../src/bun-sql/mysql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL as BunSQL, TransactionSQL } from 'bun';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'BunMySqlPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: BunSQL,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper(query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tlogger,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues);\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await client.unsafe(query.sql, params);\n\t\t\t});\n\n\t\t\tconst insertId = res.lastInsertRowid;\n\t\t\tconst affectedRows = res.affectedRows;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.unsafe(query.sql, params).values();\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\n\t\t}\n\n\t\treturn rows.map((row: unknown[]) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, query, customResultMapper } = this;\n\t\tconst rows = await client.unsafe(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst { fields, query, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues);\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (hasRowsMapper && !this.isRqbV2Query\n\t\t\t\t? client.unsafe(query.sql, params).values()\n\t\t\t\t: client.unsafe(query.sql, params));\n\t\t});\n\n\t\tfor (const row of rows) {\n\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (hasRowsMapper) {\n\t\t\t\tif (customResultMapper) {\n\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t} else {\n\t\t\t\t\tyield mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tyield row as T['execute'];\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface BunMySqlSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tmode: Mode;\n}\n\nexport class BunMySqlSession<\n\tTSQL extends BunSQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlSession';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\treadonly client: TSQL,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\treadonly options: BunMySqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t) as any;\n\t}\n\n\t/** @internal */\n\tasync query(query: string, params: unknown[]): Promise<Record<string, unknown>[]> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.unsafe(query, params);\n\t\treturn result;\n\t}\n\n\toverride 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 this.client.unsafe(querySql.sql, querySql.params);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst query = this.dialect.sqlToQuery(sql);\n\t\tconst data = await this.client.unsafe(query.sql, query.params).values();\n\n\t\tconst count = data[0][0];\n\t\tif (typeof count === 'number') return count;\n\t\treturn Number(count);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst startTransactionSql = config\n\t\t\t? this.getStartTransactionSQL(config)?.inlineParams().toQuery(this.dialect).sql.slice(18) ?? ''\n\t\t\t: '';\n\n\t\tif (config?.isolationLevel) throw new Error(\"Driver doesn't support setting isolation level on transaction\");\n\n\t\treturn this.client.begin(startTransactionSql, async (client) => {\n\t\t\tconst session = new BunMySqlSession<TransactionSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t0,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\t// if (config) {\n\t\t\t// \tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\t// \tif (setTransactionConfigSql) {\n\t\t\t// \t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t// \t}\n\t\t\t// }\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunMySqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tBunMySqlQueryResultHKT,\n\tBunMySqlPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (<BunMySqlSession<TransactionSQL, any, any, any>> this.session).client.savepoint((client) => {\n\t\t\tconst session = new BunMySqlSession<SavepointSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t(<BunMySqlSession<any, any, any, any>> this.session).options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.nestedIndex + 1,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunMySqlQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: Record<string, unknown>[] & Record<string, unknown>;\n}\n\nexport interface BunMySqlPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: BunMySqlPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import { Query, SQL } from "../../sql/sql.cjs";
|
|
|
3
3
|
import { Assume } from "../../utils.cjs";
|
|
4
4
|
import * as V1 from "../../_relations.cjs";
|
|
5
5
|
import { WithCacheConfig } from "../../cache/core/types.cjs";
|
|
6
|
-
import { AnyRelations
|
|
6
|
+
import { AnyRelations } from "../../relations.cjs";
|
|
7
7
|
import { MySqlDialect } from "../../mysql-core/dialect.cjs";
|
|
8
8
|
import { Mode, MySqlPreparedQuery, MySqlPreparedQueryConfig, MySqlPreparedQueryHKT, MySqlQueryResultHKT, MySqlSession, MySqlTransaction, MySqlTransactionConfig, PreparedQueryKind } from "../../mysql-core/session.cjs";
|
|
9
9
|
import { Logger } from "../../logger.cjs";
|
|
@@ -14,22 +14,17 @@ import { SelectedFieldsOrdered } from "../../mysql-core/query-builders/select.ty
|
|
|
14
14
|
//#region src/bun-sql/mysql/session.d.ts
|
|
15
15
|
declare class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false> extends MySqlPreparedQuery<T> {
|
|
16
16
|
private client;
|
|
17
|
-
private query;
|
|
18
|
-
private params;
|
|
19
17
|
private logger;
|
|
20
18
|
private fields;
|
|
21
|
-
private useJitMapper;
|
|
22
19
|
private customResultMapper?;
|
|
23
20
|
private generatedIds?;
|
|
24
21
|
private returningIds?;
|
|
25
22
|
private isRqbV2Query?;
|
|
26
|
-
private rqbConfig?;
|
|
27
23
|
static readonly [entityKind]: string;
|
|
28
|
-
|
|
29
|
-
constructor(client: SQL$1, query: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
|
|
24
|
+
constructor(client: SQL$1, query: Query, logger: Logger, cache: Cache, queryMetadata: {
|
|
30
25
|
type: 'select' | 'update' | 'delete' | 'insert';
|
|
31
26
|
tables: string[];
|
|
32
|
-
} | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined,
|
|
27
|
+
} | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][]) => T["execute"]) | undefined, generatedIds?: Record<string, unknown>[] | undefined, returningIds?: SelectedFieldsOrdered | undefined, isRqbV2Query?: TIsRqbV2 | undefined);
|
|
33
28
|
execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;
|
|
34
29
|
private executeRqbV2;
|
|
35
30
|
iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']>;
|
|
@@ -37,7 +32,6 @@ declare class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2
|
|
|
37
32
|
interface BunMySqlSessionOptions {
|
|
38
33
|
logger?: Logger;
|
|
39
34
|
cache?: Cache;
|
|
40
|
-
useJitMapper?: boolean;
|
|
41
35
|
mode: Mode;
|
|
42
36
|
}
|
|
43
37
|
declare class BunMySqlSession<TSQL extends SQL$1, TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {
|
|
@@ -54,7 +48,7 @@ declare class BunMySqlSession<TSQL extends SQL$1, TFullSchema extends Record<str
|
|
|
54
48
|
type: 'select' | 'update' | 'delete' | 'insert';
|
|
55
49
|
tables: string[];
|
|
56
50
|
}, cacheConfig?: WithCacheConfig): PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;
|
|
57
|
-
prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'],
|
|
51
|
+
prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;
|
|
58
52
|
all<T = unknown>(query: SQL): Promise<T[]>;
|
|
59
53
|
count(sql: SQL): Promise<number>;
|
|
60
54
|
transaction<T>(transaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
|
|
@@ -1,35 +1,30 @@
|
|
|
1
1
|
import { entityKind } from "../../entity.js";
|
|
2
2
|
import { Assume } from "../../utils.js";
|
|
3
3
|
import { Query, SQL } from "../../sql/sql.js";
|
|
4
|
-
import
|
|
4
|
+
import * as V1 from "../../_relations.js";
|
|
5
5
|
import { Logger } from "../../logger.js";
|
|
6
|
+
import { Cache } from "../../cache/core/index.js";
|
|
6
7
|
import { SQL as SQL$1 } from "bun";
|
|
7
|
-
import * as V1 from "../../_relations.js";
|
|
8
8
|
import { MySqlDialect } from "../../mysql-core/dialect.js";
|
|
9
9
|
import { Mode, MySqlPreparedQuery, MySqlPreparedQueryConfig, MySqlPreparedQueryHKT, MySqlQueryResultHKT, MySqlSession, MySqlTransaction, MySqlTransactionConfig, PreparedQueryKind } from "../../mysql-core/session.js";
|
|
10
|
-
import { AnyRelations
|
|
10
|
+
import { AnyRelations } from "../../relations.js";
|
|
11
11
|
import { WithCacheConfig } from "../../cache/core/types.js";
|
|
12
12
|
import { SelectedFieldsOrdered } from "../../mysql-core/query-builders/select.types.js";
|
|
13
13
|
|
|
14
14
|
//#region src/bun-sql/mysql/session.d.ts
|
|
15
15
|
declare class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false> extends MySqlPreparedQuery<T> {
|
|
16
16
|
private client;
|
|
17
|
-
private query;
|
|
18
|
-
private params;
|
|
19
17
|
private logger;
|
|
20
18
|
private fields;
|
|
21
|
-
private useJitMapper;
|
|
22
19
|
private customResultMapper?;
|
|
23
20
|
private generatedIds?;
|
|
24
21
|
private returningIds?;
|
|
25
22
|
private isRqbV2Query?;
|
|
26
|
-
private rqbConfig?;
|
|
27
23
|
static readonly [entityKind]: string;
|
|
28
|
-
|
|
29
|
-
constructor(client: SQL$1, query: string, params: unknown[], logger: Logger, cache: Cache, queryMetadata: {
|
|
24
|
+
constructor(client: SQL$1, query: Query, logger: Logger, cache: Cache, queryMetadata: {
|
|
30
25
|
type: 'select' | 'update' | 'delete' | 'insert';
|
|
31
26
|
tables: string[];
|
|
32
|
-
} | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined,
|
|
27
|
+
} | undefined, cacheConfig: WithCacheConfig | undefined, fields: SelectedFieldsOrdered | undefined, customResultMapper?: ((rows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][]) => T["execute"]) | undefined, generatedIds?: Record<string, unknown>[] | undefined, returningIds?: SelectedFieldsOrdered | undefined, isRqbV2Query?: TIsRqbV2 | undefined);
|
|
33
28
|
execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;
|
|
34
29
|
private executeRqbV2;
|
|
35
30
|
iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']>;
|
|
@@ -37,7 +32,6 @@ declare class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2
|
|
|
37
32
|
interface BunMySqlSessionOptions {
|
|
38
33
|
logger?: Logger;
|
|
39
34
|
cache?: Cache;
|
|
40
|
-
useJitMapper?: boolean;
|
|
41
35
|
mode: Mode;
|
|
42
36
|
}
|
|
43
37
|
declare class BunMySqlSession<TSQL extends SQL$1, TFullSchema extends Record<string, unknown>, TRelations extends AnyRelations, TSchema extends V1.TablesRelationalConfig> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {
|
|
@@ -54,7 +48,7 @@ declare class BunMySqlSession<TSQL extends SQL$1, TFullSchema extends Record<str
|
|
|
54
48
|
type: 'select' | 'update' | 'delete' | 'insert';
|
|
55
49
|
tables: string[];
|
|
56
50
|
}, cacheConfig?: WithCacheConfig): PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;
|
|
57
|
-
prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'],
|
|
51
|
+
prepareRelationalQuery<T extends MySqlPreparedQueryConfig>(query: Query, fields: SelectedFieldsOrdered | undefined, customResultMapper: (rows: Record<string, unknown>[]) => T['execute'], generatedIds?: Record<string, unknown>[], returningIds?: SelectedFieldsOrdered): PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;
|
|
58
52
|
all<T = unknown>(query: SQL): Promise<T[]>;
|
|
59
53
|
count(sql: SQL): Promise<number>;
|
|
60
54
|
transaction<T>(transaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>, config?: MySqlTransactionConfig): Promise<T>;
|
package/bun-sql/mysql/session.js
CHANGED
|
@@ -1,38 +1,32 @@
|
|
|
1
1
|
import { entityKind, is } from "../../entity.js";
|
|
2
2
|
import { Column } from "../../column.js";
|
|
3
|
-
import {
|
|
3
|
+
import { mapResultRow } from "../../utils.js";
|
|
4
4
|
import { fillPlaceholders } from "../../sql/sql.js";
|
|
5
|
-
import { NoopCache } from "../../cache/core/index.js";
|
|
6
5
|
import { NoopLogger } from "../../logger.js";
|
|
6
|
+
import { NoopCache } from "../../cache/core/index.js";
|
|
7
7
|
import { MySqlPreparedQuery, MySqlSession, MySqlTransaction } from "../../mysql-core/session.js";
|
|
8
|
-
import { makeRqbJitMapper } from "../../relations.js";
|
|
9
8
|
|
|
10
9
|
//#region src/bun-sql/mysql/session.ts
|
|
11
10
|
var BunMySqlPreparedQuery = class extends MySqlPreparedQuery {
|
|
12
11
|
static [entityKind] = "BunMySqlPreparedQuery";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
super(cache, queryMetadata, cacheConfig);
|
|
12
|
+
constructor(client, query, logger, cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds, isRqbV2Query) {
|
|
13
|
+
super(query, cache, queryMetadata, cacheConfig);
|
|
16
14
|
this.client = client;
|
|
17
|
-
this.query = query;
|
|
18
|
-
this.params = params;
|
|
19
15
|
this.logger = logger;
|
|
20
16
|
this.fields = fields;
|
|
21
|
-
this.useJitMapper = useJitMapper;
|
|
22
17
|
this.customResultMapper = customResultMapper;
|
|
23
18
|
this.generatedIds = generatedIds;
|
|
24
19
|
this.returningIds = returningIds;
|
|
25
20
|
this.isRqbV2Query = isRqbV2Query;
|
|
26
|
-
this.rqbConfig = rqbConfig;
|
|
27
21
|
}
|
|
28
22
|
async execute(placeholderValues = {}) {
|
|
29
23
|
if (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);
|
|
30
|
-
const { fields, client, logger,
|
|
31
|
-
const params = fillPlaceholders(
|
|
32
|
-
logger.logQuery(query, params);
|
|
24
|
+
const { fields, client, logger, query, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;
|
|
25
|
+
const params = fillPlaceholders(query.params, placeholderValues);
|
|
26
|
+
logger.logQuery(query.sql, params);
|
|
33
27
|
if (!fields && !customResultMapper) {
|
|
34
|
-
const res = await this.queryWithCache(query, params, async () => {
|
|
35
|
-
return await client.unsafe(query, params);
|
|
28
|
+
const res = await this.queryWithCache(query.sql, params, async () => {
|
|
29
|
+
return await client.unsafe(query.sql, params);
|
|
36
30
|
});
|
|
37
31
|
const insertId = res.lastInsertRowid;
|
|
38
32
|
const affectedRows = res.affectedRows;
|
|
@@ -53,38 +47,31 @@ var BunMySqlPreparedQuery = class extends MySqlPreparedQuery {
|
|
|
53
47
|
}
|
|
54
48
|
return res;
|
|
55
49
|
}
|
|
56
|
-
const rows = await this.queryWithCache(query, params, async () => {
|
|
57
|
-
return await client.unsafe(query, params).values();
|
|
50
|
+
const rows = await this.queryWithCache(query.sql, params, async () => {
|
|
51
|
+
return await client.unsafe(query.sql, params).values();
|
|
58
52
|
});
|
|
59
53
|
if (customResultMapper) return customResultMapper(rows);
|
|
60
|
-
return
|
|
54
|
+
return rows.map((row) => mapResultRow(fields, row, joinsNotNullableMap));
|
|
61
55
|
}
|
|
62
56
|
async executeRqbV2(placeholderValues = {}) {
|
|
63
|
-
const params = fillPlaceholders(this.params, placeholderValues);
|
|
64
|
-
this.logger.logQuery(this.query, params);
|
|
57
|
+
const params = fillPlaceholders(this.query.params, placeholderValues);
|
|
58
|
+
this.logger.logQuery(this.query.sql, params);
|
|
65
59
|
const { client, query, customResultMapper } = this;
|
|
66
|
-
|
|
67
|
-
return this.useJitMapper ? (this.jitMapper = this.jitMapper ?? makeRqbJitMapper(this.rqbConfig))(rows) : customResultMapper(rows);
|
|
60
|
+
return customResultMapper(await client.unsafe(query.sql, params));
|
|
68
61
|
}
|
|
69
62
|
async *iterator(placeholderValues = {}) {
|
|
70
|
-
const { fields,
|
|
71
|
-
const params = fillPlaceholders(
|
|
72
|
-
const rows = await this.queryWithCache(query, params, async () => {
|
|
73
|
-
return await client.unsafe(query, params).values();
|
|
74
|
-
});
|
|
63
|
+
const { fields, query, joinsNotNullableMap, client, customResultMapper } = this;
|
|
64
|
+
const params = fillPlaceholders(query.params, placeholderValues);
|
|
75
65
|
const hasRowsMapper = Boolean(fields || customResultMapper);
|
|
66
|
+
const rows = await this.queryWithCache(query.sql, params, async () => {
|
|
67
|
+
return await (hasRowsMapper && !this.isRqbV2Query ? client.unsafe(query.sql, params).values() : client.unsafe(query.sql, params));
|
|
68
|
+
});
|
|
76
69
|
for (const row of rows) {
|
|
77
70
|
if (row === void 0 || Array.isArray(row) && row.length === 0) break;
|
|
78
|
-
if (
|
|
79
|
-
else {
|
|
80
|
-
const mapped = customResultMapper([row]);
|
|
81
|
-
if (this.rqbConfig.isFirst) yield mapped;
|
|
82
|
-
else yield mapped[0];
|
|
83
|
-
}
|
|
84
|
-
else if (hasRowsMapper) if (customResultMapper) {
|
|
71
|
+
if (hasRowsMapper) if (customResultMapper) {
|
|
85
72
|
const mappedRow = customResultMapper([row]);
|
|
86
73
|
yield Array.isArray(mappedRow) ? mappedRow[0] : mappedRow;
|
|
87
|
-
} else yield
|
|
74
|
+
} else yield mapResultRow(fields, row, joinsNotNullableMap);
|
|
88
75
|
else yield row;
|
|
89
76
|
}
|
|
90
77
|
}
|
|
@@ -105,10 +92,10 @@ var BunMySqlSession = class BunMySqlSession extends MySqlSession {
|
|
|
105
92
|
this.mode = options.mode;
|
|
106
93
|
}
|
|
107
94
|
prepareQuery(query, fields, customResultMapper, generatedIds, returningIds, queryMetadata, cacheConfig) {
|
|
108
|
-
return new BunMySqlPreparedQuery(this.client, query
|
|
95
|
+
return new BunMySqlPreparedQuery(this.client, query, this.logger, this.cache, queryMetadata, cacheConfig, fields, customResultMapper, generatedIds, returningIds);
|
|
109
96
|
}
|
|
110
|
-
prepareRelationalQuery(query, fields, customResultMapper,
|
|
111
|
-
return new BunMySqlPreparedQuery(this.client, query
|
|
97
|
+
prepareRelationalQuery(query, fields, customResultMapper, generatedIds, returningIds) {
|
|
98
|
+
return new BunMySqlPreparedQuery(this.client, query, this.logger, this.cache, void 0, void 0, fields, customResultMapper, generatedIds, returningIds, true);
|
|
112
99
|
}
|
|
113
100
|
/** @internal */
|
|
114
101
|
async query(query, params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","names":[],"sources":["../../../src/bun-sql/mysql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL as BunSQL, TransactionSQL } from 'bun';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport {\n\ttype AnyRelations,\n\tmakeRqbJitMapper,\n\ttype RelationalQueryMapperConfig,\n\ttype RelationalRowsMapper,\n} from '~/relations.ts';\nimport { fillPlaceholders } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, makeJitQueryMapper, mapResultRow, type RowsMapper } from '~/utils.ts';\n\nexport class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'BunMySqlPreparedQuery';\n\tprivate jitMapper?:\n\t\t| RowsMapper<(T['execute'] extends any[] ? T['execute'][number] : T['execute'])[]>\n\t\t| RelationalRowsMapper<T['execute']>;\n\n\tconstructor(\n\t\tprivate client: BunSQL,\n\t\tprivate query: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate useJitMapper: boolean | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t\tprivate rqbConfig?: RelationalQueryMapperConfig,\n\t) {\n\t\tsuper(cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tlogger,\n\t\t\tparams: rawParams,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tconst params = fillPlaceholders(rawParams, placeholderValues);\n\n\t\tlogger.logQuery(query, params);\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(query, params, async () => {\n\t\t\t\treturn await client.unsafe(query, params);\n\t\t\t});\n\n\t\t\tconst insertId = res.lastInsertRowid;\n\t\t\tconst affectedRows = res.affectedRows;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(query, params, async () => {\n\t\t\treturn await client.unsafe(query, params).values();\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\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))(rows)\n\t\t\t: rows.map((row: unknown[]) => mapResultRow(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query, params);\n\n\t\tconst { client, query, customResultMapper } = this;\n\t\tconst rows = await client.unsafe(query, params);\n\n\t\treturn this.useJitMapper\n\t\t\t? (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['execute']>\n\t\t\t\t?? makeRqbJitMapper<T['execute']>(this.rqbConfig!))(rows)\n\t\t\t: (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst { fields, params: queryParams, query, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(queryParams, placeholderValues);\n\t\tconst rows = await this.queryWithCache(query, params, async () => {\n\t\t\treturn await client.unsafe(query, params).values();\n\t\t});\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\n\t\tfor (const row of rows) {\n\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (this.isRqbV2Query) {\n\t\t\t\tif (this.useJitMapper) {\n\t\t\t\t\tyield (this.jitMapper = this.jitMapper as RelationalRowsMapper<T['execute']>\n\t\t\t\t\t\t?? makeRqbJitMapper<T['execute']>(this.rqbConfig!))([row]);\n\t\t\t\t} else {\n\t\t\t\t\tconst mapped = (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])([row]);\n\t\t\t\t\tif (this.rqbConfig!.isFirst) yield mapped;\n\t\t\t\t\telse yield ((<any[]> mapped)[0]);\n\t\t\t\t}\n\t\t\t} else if (hasRowsMapper) {\n\t\t\t\tif (customResultMapper) {\n\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t} else {\n\t\t\t\t\tyield this.useJitMapper\n\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['execute'])[]>\n\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\tfields!,\n\t\t\t\t\t\t\t\tjoinsNotNullableMap,\n\t\t\t\t\t\t\t))([row])[0] as T['execute']\n\t\t\t\t\t\t: mapResultRow(fields!, row, joinsNotNullableMap);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tyield row as T['execute'];\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface BunMySqlSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tuseJitMapper?: boolean;\n\tmode: Mode;\n}\n\nexport class BunMySqlSession<\n\tTSQL extends BunSQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlSession';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\treadonly client: TSQL,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\treadonly options: BunMySqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tconfig: RelationalQueryMapperConfig,\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tthis.options.useJitMapper,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t\tconfig,\n\t\t) as any;\n\t}\n\n\t/** @internal */\n\tasync query(query: string, params: unknown[]): Promise<Record<string, unknown>[]> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.unsafe(query, params);\n\t\treturn result;\n\t}\n\n\toverride 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 this.client.unsafe(querySql.sql, querySql.params);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst query = this.dialect.sqlToQuery(sql);\n\t\tconst data = await this.client.unsafe(query.sql, query.params).values();\n\n\t\tconst count = data[0][0];\n\t\tif (typeof count === 'number') return count;\n\t\treturn Number(count);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst startTransactionSql = config\n\t\t\t? this.getStartTransactionSQL(config)?.inlineParams().toQuery(this.dialect).sql.slice(18) ?? ''\n\t\t\t: '';\n\n\t\tif (config?.isolationLevel) throw new Error(\"Driver doesn't support setting isolation level on transaction\");\n\n\t\treturn this.client.begin(startTransactionSql, async (client) => {\n\t\t\tconst session = new BunMySqlSession<TransactionSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t0,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\t// if (config) {\n\t\t\t// \tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\t// \tif (setTransactionConfigSql) {\n\t\t\t// \t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t// \t}\n\t\t\t// }\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunMySqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tBunMySqlQueryResultHKT,\n\tBunMySqlPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (<BunMySqlSession<TransactionSQL, any, any, any>> this.session).client.savepoint((client) => {\n\t\t\tconst session = new BunMySqlSession<SavepointSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t(<BunMySqlSession<any, any, any, any>> this.session).options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.nestedIndex + 1,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunMySqlQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: Record<string, unknown>[] & Record<string, unknown>;\n}\n\nexport interface BunMySqlPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: BunMySqlPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"session.js","names":[],"sources":["../../../src/bun-sql/mysql/session.ts"],"sourcesContent":["/// <reference types=\"bun-types\" />\n\nimport type { SavepointSQL, SQL as BunSQL, TransactionSQL } from 'bun';\nimport type * as V1 from '~/_relations.ts';\nimport { type Cache, NoopCache } from '~/cache/core/index.ts';\nimport type { WithCacheConfig } from '~/cache/core/types.ts';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { MySqlDialect } from '~/mysql-core/dialect.ts';\nimport type { SelectedFieldsOrdered } from '~/mysql-core/query-builders/select.types.ts';\nimport {\n\ttype Mode,\n\tMySqlPreparedQuery,\n\ttype MySqlPreparedQueryConfig,\n\ttype MySqlPreparedQueryHKT,\n\ttype MySqlQueryResultHKT,\n\tMySqlSession,\n\tMySqlTransaction,\n\ttype MySqlTransactionConfig,\n\ttype PreparedQueryKind,\n} from '~/mysql-core/session.ts';\nimport type { AnyRelations } from '~/relations.ts';\nimport { fillPlaceholders } from '~/sql/sql.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\n\nexport class BunMySqlPreparedQuery<T extends MySqlPreparedQueryConfig, TIsRqbV2 extends boolean = false>\n\textends MySqlPreparedQuery<T>\n{\n\tstatic override readonly [entityKind]: string = 'BunMySqlPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: BunSQL,\n\t\tquery: Query,\n\t\tprivate logger: Logger,\n\t\tcache: Cache,\n\t\tqueryMetadata: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t} | undefined,\n\t\tcacheConfig: WithCacheConfig | undefined,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (\n\t\t\trows: TIsRqbV2 extends true ? Record<string, unknown>[] : unknown[][],\n\t\t) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t\tprivate isRqbV2Query?: TIsRqbV2,\n\t) {\n\t\tsuper(query, cache, queryMetadata, cacheConfig);\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tif (this.isRqbV2Query) return this.executeRqbV2(placeholderValues);\n\n\t\tconst {\n\t\t\tfields,\n\t\t\tclient,\n\t\t\tlogger,\n\t\t\tquery,\n\t\t\tjoinsNotNullableMap,\n\t\t\tcustomResultMapper,\n\t\t\treturningIds,\n\t\t\tgeneratedIds,\n\t\t} = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues);\n\n\t\tlogger.logQuery(query.sql, params);\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst res = await this.queryWithCache(query.sql, params, async () => {\n\t\t\t\treturn await client.unsafe(query.sql, params);\n\t\t\t});\n\n\t\t\tconst insertId = res.lastInsertRowid;\n\t\t\tconst affectedRows = res.affectedRows;\n\t\t\t// for each row, I need to check keys from\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\n\t\t\treturn res;\n\t\t}\n\n\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await client.unsafe(query.sql, params).values();\n\t\t});\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\n\t\t}\n\n\t\treturn rows.map((row: unknown[]) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\tprivate async executeRqbV2(placeholderValues: Record<string, unknown> = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.query.params, placeholderValues);\n\n\t\tthis.logger.logQuery(this.query.sql, params);\n\n\t\tconst { client, query, customResultMapper } = this;\n\t\tconst rows = await client.unsafe(query.sql, params);\n\n\t\treturn (customResultMapper as (rows: Record<string, unknown>[]) => T['execute'])(rows);\n\t}\n\n\tasync *iterator(\n\t\tplaceholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['execute'] extends any[] ? T['execute'][number] : T['execute']> {\n\t\tconst { fields, query, joinsNotNullableMap, client, customResultMapper } = this;\n\t\tconst params = fillPlaceholders(query.params, placeholderValues);\n\t\tconst hasRowsMapper = Boolean(fields || customResultMapper);\n\t\tconst rows = await this.queryWithCache(query.sql, params, async () => {\n\t\t\treturn await (hasRowsMapper && !this.isRqbV2Query\n\t\t\t\t? client.unsafe(query.sql, params).values()\n\t\t\t\t: client.unsafe(query.sql, params));\n\t\t});\n\n\t\tfor (const row of rows) {\n\t\t\tif (row === undefined || (Array.isArray(row) && row.length === 0)) {\n\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (hasRowsMapper) {\n\t\t\t\tif (customResultMapper) {\n\t\t\t\t\tconst mappedRow = (customResultMapper as (rows: unknown[][]) => T['execute'])([row as unknown[]]);\n\t\t\t\t\tyield (Array.isArray(mappedRow) ? mappedRow[0] : mappedRow);\n\t\t\t\t} else {\n\t\t\t\t\tyield mapResultRow(fields!, row as unknown[], joinsNotNullableMap);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tyield row as T['execute'];\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport interface BunMySqlSessionOptions {\n\tlogger?: Logger;\n\tcache?: Cache;\n\tmode: Mode;\n}\n\nexport class BunMySqlSession<\n\tTSQL extends BunSQL,\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlSession<MySqlQueryResultHKT, BunMySqlPreparedQueryHKT, TFullSchema, TRelations, TSchema> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlSession';\n\n\tprivate logger: Logger;\n\tprivate mode: Mode;\n\tprivate cache: Cache;\n\n\tconstructor(\n\t\treadonly client: TSQL,\n\t\tdialect: MySqlDialect,\n\t\tprivate relations: TRelations,\n\t\tprivate schema: V1.RelationalSchemaConfig<TSchema> | undefined,\n\t\treadonly options: BunMySqlSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t\tthis.cache = options.cache ?? new NoopCache();\n\t\tthis.mode = options.mode;\n\t}\n\n\tprepareQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t\tqueryMetadata?: {\n\t\t\ttype: 'select' | 'update' | 'delete' | 'insert';\n\t\t\ttables: string[];\n\t\t},\n\t\tcacheConfig?: WithCacheConfig,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tqueryMetadata,\n\t\t\tcacheConfig,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<BunMySqlPreparedQueryHKT, T>;\n\t}\n\n\tprepareRelationalQuery<T extends MySqlPreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper: (rows: Record<string, unknown>[]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<BunMySqlPreparedQueryHKT, T> {\n\t\t// Add returningId fields\n\t\t// Each driver gets them from response from database\n\t\treturn new BunMySqlPreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery,\n\t\t\tthis.logger,\n\t\t\tthis.cache,\n\t\t\tundefined,\n\t\t\tundefined,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t\ttrue,\n\t\t) as any;\n\t}\n\n\t/** @internal */\n\tasync query(query: string, params: unknown[]): Promise<Record<string, unknown>[]> {\n\t\tthis.logger.logQuery(query, params);\n\t\tconst result = await this.client.unsafe(query, params);\n\t\treturn result;\n\t}\n\n\toverride 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 this.client.unsafe(querySql.sql, querySql.params);\n\t}\n\n\toverride async count(sql: SQL): Promise<number> {\n\t\tconst query = this.dialect.sqlToQuery(sql);\n\t\tconst data = await this.client.unsafe(query.sql, query.params).values();\n\n\t\tconst count = data[0][0];\n\t\tif (typeof count === 'number') return count;\n\t\treturn Number(count);\n\t}\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t\tconfig?: MySqlTransactionConfig,\n\t): Promise<T> {\n\t\tconst startTransactionSql = config\n\t\t\t? this.getStartTransactionSQL(config)?.inlineParams().toQuery(this.dialect).sql.slice(18) ?? ''\n\t\t\t: '';\n\n\t\tif (config?.isolationLevel) throw new Error(\"Driver doesn't support setting isolation level on transaction\");\n\n\t\treturn this.client.begin(startTransactionSql, async (client) => {\n\t\t\tconst session = new BunMySqlSession<TransactionSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t0,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\t// if (config) {\n\t\t\t// \tconst setTransactionConfigSql = this.getSetTransactionSQL(config);\n\t\t\t// \tif (setTransactionConfigSql) {\n\t\t\t// \t\tawait tx.execute(setTransactionConfigSql);\n\t\t\t// \t}\n\t\t\t// }\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport class BunMySqlTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTRelations extends AnyRelations,\n\tTSchema extends V1.TablesRelationalConfig,\n> extends MySqlTransaction<\n\tBunMySqlQueryResultHKT,\n\tBunMySqlPreparedQueryHKT,\n\tTFullSchema,\n\tTRelations,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'BunMySqlTransaction';\n\n\toverride async transaction<T>(\n\t\ttransaction: (tx: BunMySqlTransaction<TFullSchema, TRelations, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\treturn (<BunMySqlSession<TransactionSQL, any, any, any>> this.session).client.savepoint((client) => {\n\t\t\tconst session = new BunMySqlSession<SavepointSQL, TFullSchema, TRelations, TSchema>(\n\t\t\t\tclient,\n\t\t\t\tthis.dialect,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\t(<BunMySqlSession<any, any, any, any>> this.session).options,\n\t\t\t);\n\t\t\tconst tx = new BunMySqlTransaction<TFullSchema, TRelations, TSchema>(\n\t\t\t\tthis.dialect,\n\t\t\t\tsession as MySqlSession<any, any, any, any, any>,\n\t\t\t\tthis.relations,\n\t\t\t\tthis.schema,\n\t\t\t\tthis.nestedIndex + 1,\n\t\t\t\tthis.mode,\n\t\t\t);\n\t\t\treturn transaction(tx);\n\t\t}) as Promise<T>;\n\t}\n}\n\nexport interface BunMySqlQueryResultHKT extends MySqlQueryResultHKT {\n\ttype: Record<string, unknown>[] & Record<string, unknown>;\n}\n\nexport interface BunMySqlPreparedQueryHKT extends MySqlPreparedQueryHKT {\n\ttype: BunMySqlPreparedQuery<Assume<this['config'], MySqlPreparedQueryConfig>>;\n}\n"],"mappings":"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"}
|