drizzle-orm 1.0.0-beta.1-7722e6a → 1.0.0-beta.2-e93475f
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 +50 -6
- package/_relations.cjs.map +1 -1
- package/_relations.d.cts +1 -0
- package/_relations.d.ts +1 -0
- package/_relations.js +49 -6
- package/_relations.js.map +1 -1
- package/alias.cjs +56 -8
- package/alias.cjs.map +1 -1
- package/alias.d.cts +13 -3
- package/alias.d.ts +13 -3
- package/alias.js +53 -8
- package/alias.js.map +1 -1
- package/aws-data-api/common/index.cjs +18 -9
- package/aws-data-api/common/index.cjs.map +1 -1
- package/aws-data-api/common/index.d.cts +4 -1
- package/aws-data-api/common/index.d.ts +4 -1
- package/aws-data-api/common/index.js +17 -9
- package/aws-data-api/common/index.js.map +1 -1
- package/aws-data-api/pg/driver.cjs +0 -3
- package/aws-data-api/pg/driver.cjs.map +1 -1
- package/aws-data-api/pg/driver.d.cts +0 -3
- package/aws-data-api/pg/driver.d.ts +0 -3
- package/aws-data-api/pg/driver.js +0 -3
- package/aws-data-api/pg/driver.js.map +1 -1
- package/better-sqlite3/driver.cjs +10 -14
- package/better-sqlite3/driver.cjs.map +1 -1
- package/better-sqlite3/driver.d.cts +3 -3
- package/better-sqlite3/driver.d.ts +3 -3
- package/better-sqlite3/driver.js +10 -14
- package/better-sqlite3/driver.js.map +1 -1
- package/bun-sql/driver.cjs.map +1 -1
- package/bun-sql/driver.d.cts +8 -8
- package/bun-sql/driver.d.ts +8 -8
- package/bun-sql/driver.js.map +1 -1
- package/bun-sql/mysql/driver.cjs +10 -14
- package/bun-sql/mysql/driver.cjs.map +1 -1
- package/bun-sql/mysql/driver.d.cts +3 -3
- package/bun-sql/mysql/driver.d.ts +3 -3
- package/bun-sql/mysql/driver.js +10 -14
- package/bun-sql/mysql/driver.js.map +1 -1
- package/bun-sql/postgres/driver.cjs +10 -14
- package/bun-sql/postgres/driver.cjs.map +1 -1
- package/bun-sql/postgres/driver.d.cts +3 -3
- package/bun-sql/postgres/driver.d.ts +3 -3
- package/bun-sql/postgres/driver.js +10 -14
- package/bun-sql/postgres/driver.js.map +1 -1
- package/bun-sql/sqlite/driver.cjs +10 -14
- package/bun-sql/sqlite/driver.cjs.map +1 -1
- package/bun-sql/sqlite/driver.d.cts +3 -3
- package/bun-sql/sqlite/driver.d.ts +3 -3
- package/bun-sql/sqlite/driver.js +10 -14
- package/bun-sql/sqlite/driver.js.map +1 -1
- package/bun-sql/sqlite/session.cjs +0 -2
- package/bun-sql/sqlite/session.cjs.map +1 -1
- package/bun-sql/sqlite/session.js +0 -2
- package/bun-sql/sqlite/session.js.map +1 -1
- package/bun-sqlite/driver.cjs +11 -15
- package/bun-sqlite/driver.cjs.map +1 -1
- package/bun-sqlite/driver.d.cts +3 -3
- package/bun-sqlite/driver.d.ts +3 -3
- package/bun-sqlite/driver.js +11 -15
- package/bun-sqlite/driver.js.map +1 -1
- package/cockroach/driver.cjs +109 -0
- package/cockroach/driver.cjs.map +1 -0
- package/cockroach/driver.d.cts +42 -0
- package/cockroach/driver.d.ts +42 -0
- package/cockroach/driver.js +73 -0
- package/cockroach/driver.js.map +1 -0
- package/cockroach/index.cjs +25 -0
- package/cockroach/index.cjs.map +1 -0
- package/cockroach/index.d.cts +2 -0
- package/cockroach/index.d.ts +2 -0
- package/cockroach/index.js +3 -0
- package/cockroach/index.js.map +1 -0
- package/cockroach/migrator.cjs +33 -0
- package/cockroach/migrator.cjs.map +1 -0
- package/cockroach/migrator.d.cts +3 -0
- package/cockroach/migrator.d.ts +3 -0
- package/cockroach/migrator.js +9 -0
- package/cockroach/migrator.js.map +1 -0
- package/cockroach/session.cjs +253 -0
- package/cockroach/session.cjs.map +1 -0
- package/cockroach/session.d.cts +48 -0
- package/cockroach/session.d.ts +48 -0
- package/cockroach/session.js +217 -0
- package/cockroach/session.js.map +1 -0
- package/cockroach-core/alias.cjs +32 -0
- package/cockroach-core/alias.cjs.map +1 -0
- package/cockroach-core/alias.d.cts +4 -0
- package/cockroach-core/alias.d.ts +4 -0
- package/cockroach-core/alias.js +8 -0
- package/cockroach-core/alias.js.map +1 -0
- package/cockroach-core/checks.cjs +58 -0
- package/cockroach-core/checks.cjs.map +1 -0
- package/cockroach-core/checks.d.cts +18 -0
- package/cockroach-core/checks.d.ts +18 -0
- package/cockroach-core/checks.js +32 -0
- package/cockroach-core/checks.js.map +1 -0
- package/cockroach-core/columns/all.cjs +81 -0
- package/cockroach-core/columns/all.cjs.map +1 -0
- package/cockroach-core/columns/all.d.cts +52 -0
- package/cockroach-core/columns/all.d.ts +52 -0
- package/cockroach-core/columns/all.js +57 -0
- package/cockroach-core/columns/all.js.map +1 -0
- package/cockroach-core/columns/bigint.cjs +104 -0
- package/cockroach-core/columns/bigint.cjs.map +1 -0
- package/cockroach-core/columns/bigint.d.cts +37 -0
- package/cockroach-core/columns/bigint.d.ts +37 -0
- package/cockroach-core/columns/bigint.js +75 -0
- package/cockroach-core/columns/bigint.js.map +1 -0
- package/cockroach-core/columns/bit.cjs +61 -0
- package/cockroach-core/columns/bit.cjs.map +1 -0
- package/cockroach-core/columns/bit.d.cts +29 -0
- package/cockroach-core/columns/bit.d.ts +29 -0
- package/cockroach-core/columns/bit.js +35 -0
- package/cockroach-core/columns/bit.js.map +1 -0
- package/cockroach-core/columns/bool.cjs +59 -0
- package/cockroach-core/columns/bool.cjs.map +1 -0
- package/cockroach-core/columns/bool.d.cts +17 -0
- package/cockroach-core/columns/bool.d.ts +17 -0
- package/cockroach-core/columns/bool.js +32 -0
- package/cockroach-core/columns/bool.js.map +1 -0
- package/cockroach-core/columns/char.cjs +62 -0
- package/cockroach-core/columns/char.cjs.map +1 -0
- package/cockroach-core/columns/char.d.cts +31 -0
- package/cockroach-core/columns/char.d.ts +31 -0
- package/cockroach-core/columns/char.js +36 -0
- package/cockroach-core/columns/char.js.map +1 -0
- package/cockroach-core/columns/common.cjs +198 -0
- package/cockroach-core/columns/common.cjs.map +1 -0
- package/cockroach-core/columns/common.d.cts +98 -0
- package/cockroach-core/columns/common.d.ts +98 -0
- package/cockroach-core/columns/common.js +168 -0
- package/cockroach-core/columns/common.js.map +1 -0
- package/cockroach-core/columns/custom.cjs +102 -0
- package/cockroach-core/columns/custom.cjs.map +1 -0
- package/cockroach-core/columns/custom.d.cts +261 -0
- package/cockroach-core/columns/custom.d.ts +261 -0
- package/cockroach-core/columns/custom.js +76 -0
- package/cockroach-core/columns/custom.js.map +1 -0
- package/cockroach-core/columns/date.cjs +91 -0
- package/cockroach-core/columns/date.cjs.map +1 -0
- package/cockroach-core/columns/date.common.cjs +37 -0
- package/cockroach-core/columns/date.common.cjs.map +1 -0
- package/cockroach-core/columns/date.common.d.cts +7 -0
- package/cockroach-core/columns/date.common.d.ts +7 -0
- package/cockroach-core/columns/date.common.js +13 -0
- package/cockroach-core/columns/date.common.js.map +1 -0
- package/cockroach-core/columns/date.d.cts +36 -0
- package/cockroach-core/columns/date.d.ts +36 -0
- package/cockroach-core/columns/date.js +63 -0
- package/cockroach-core/columns/date.js.map +1 -0
- package/cockroach-core/columns/decimal.cjs +164 -0
- package/cockroach-core/columns/decimal.cjs.map +1 -0
- package/cockroach-core/columns/decimal.d.cts +80 -0
- package/cockroach-core/columns/decimal.d.ts +80 -0
- package/cockroach-core/columns/decimal.js +133 -0
- package/cockroach-core/columns/decimal.js.map +1 -0
- package/cockroach-core/columns/enum.cjs +127 -0
- package/cockroach-core/columns/enum.cjs.map +1 -0
- package/cockroach-core/columns/enum.d.cts +64 -0
- package/cockroach-core/columns/enum.d.ts +64 -0
- package/cockroach-core/columns/enum.js +96 -0
- package/cockroach-core/columns/enum.js.map +1 -0
- package/cockroach-core/columns/float.cjs +65 -0
- package/cockroach-core/columns/float.cjs.map +1 -0
- package/cockroach-core/columns/float.d.cts +18 -0
- package/cockroach-core/columns/float.d.ts +18 -0
- package/cockroach-core/columns/float.js +38 -0
- package/cockroach-core/columns/float.js.map +1 -0
- package/cockroach-core/columns/geometry.cjs +105 -0
- package/cockroach-core/columns/geometry.cjs.map +1 -0
- package/cockroach-core/columns/geometry.d.cts +60 -0
- package/cockroach-core/columns/geometry.d.ts +60 -0
- package/cockroach-core/columns/geometry.js +77 -0
- package/cockroach-core/columns/geometry.js.map +1 -0
- package/cockroach-core/columns/index.cjs +71 -0
- package/cockroach-core/columns/index.cjs.map +1 -0
- package/cockroach-core/columns/index.d.cts +25 -0
- package/cockroach-core/columns/index.d.ts +25 -0
- package/cockroach-core/columns/index.js +26 -0
- package/cockroach-core/columns/index.js.map +1 -0
- package/cockroach-core/columns/inet.cjs +56 -0
- package/cockroach-core/columns/inet.cjs.map +1 -0
- package/cockroach-core/columns/inet.d.cts +16 -0
- package/cockroach-core/columns/inet.d.ts +16 -0
- package/cockroach-core/columns/inet.js +30 -0
- package/cockroach-core/columns/inet.js.map +1 -0
- package/cockroach-core/columns/int.common.cjs +55 -0
- package/cockroach-core/columns/int.common.cjs.map +1 -0
- package/cockroach-core/columns/int.common.d.cts +11 -0
- package/cockroach-core/columns/int.common.d.ts +11 -0
- package/cockroach-core/columns/int.common.js +31 -0
- package/cockroach-core/columns/int.common.js.map +1 -0
- package/cockroach-core/columns/integer.cjs +63 -0
- package/cockroach-core/columns/integer.cjs.map +1 -0
- package/cockroach-core/columns/integer.d.cts +18 -0
- package/cockroach-core/columns/integer.d.ts +18 -0
- package/cockroach-core/columns/integer.js +37 -0
- package/cockroach-core/columns/integer.js.map +1 -0
- package/cockroach-core/columns/interval.cjs +63 -0
- package/cockroach-core/columns/interval.cjs.map +1 -0
- package/cockroach-core/columns/interval.d.cts +28 -0
- package/cockroach-core/columns/interval.d.ts +28 -0
- package/cockroach-core/columns/interval.js +37 -0
- package/cockroach-core/columns/interval.js.map +1 -0
- package/cockroach-core/columns/jsonb.cjs +72 -0
- package/cockroach-core/columns/jsonb.cjs.map +1 -0
- package/cockroach-core/columns/jsonb.d.cts +20 -0
- package/cockroach-core/columns/jsonb.d.ts +20 -0
- package/cockroach-core/columns/jsonb.js +46 -0
- package/cockroach-core/columns/jsonb.js.map +1 -0
- package/cockroach-core/columns/real.cjs +66 -0
- package/cockroach-core/columns/real.cjs.map +1 -0
- package/cockroach-core/columns/real.d.cts +21 -0
- package/cockroach-core/columns/real.d.ts +21 -0
- package/cockroach-core/columns/real.js +40 -0
- package/cockroach-core/columns/real.js.map +1 -0
- package/cockroach-core/columns/smallint.cjs +68 -0
- package/cockroach-core/columns/smallint.cjs.map +1 -0
- package/cockroach-core/columns/smallint.d.cts +19 -0
- package/cockroach-core/columns/smallint.d.ts +19 -0
- package/cockroach-core/columns/smallint.js +41 -0
- package/cockroach-core/columns/smallint.js.map +1 -0
- package/cockroach-core/columns/string.cjs +67 -0
- package/cockroach-core/columns/string.cjs.map +1 -0
- package/cockroach-core/columns/string.d.cts +36 -0
- package/cockroach-core/columns/string.d.ts +36 -0
- package/cockroach-core/columns/string.js +40 -0
- package/cockroach-core/columns/string.js.map +1 -0
- package/cockroach-core/columns/time.cjs +70 -0
- package/cockroach-core/columns/time.cjs.map +1 -0
- package/cockroach-core/columns/time.d.cts +31 -0
- package/cockroach-core/columns/time.d.ts +31 -0
- package/cockroach-core/columns/time.js +44 -0
- package/cockroach-core/columns/time.js.map +1 -0
- package/cockroach-core/columns/timestamp.cjs +111 -0
- package/cockroach-core/columns/timestamp.cjs.map +1 -0
- package/cockroach-core/columns/timestamp.d.cts +52 -0
- package/cockroach-core/columns/timestamp.d.ts +52 -0
- package/cockroach-core/columns/timestamp.js +83 -0
- package/cockroach-core/columns/timestamp.js.map +1 -0
- package/cockroach-core/columns/utils.cjs +65 -0
- package/cockroach-core/columns/utils.cjs.map +1 -0
- package/cockroach-core/columns/utils.d.cts +4 -0
- package/cockroach-core/columns/utils.d.ts +4 -0
- package/cockroach-core/columns/utils.js +41 -0
- package/cockroach-core/columns/utils.js.map +1 -0
- package/cockroach-core/columns/uuid.cjs +63 -0
- package/cockroach-core/columns/uuid.cjs.map +1 -0
- package/cockroach-core/columns/uuid.d.cts +20 -0
- package/cockroach-core/columns/uuid.d.ts +20 -0
- package/cockroach-core/columns/uuid.js +37 -0
- package/cockroach-core/columns/uuid.js.map +1 -0
- package/cockroach-core/columns/varbit.cjs +59 -0
- package/cockroach-core/columns/varbit.cjs.map +1 -0
- package/cockroach-core/columns/varbit.d.cts +24 -0
- package/cockroach-core/columns/varbit.d.ts +24 -0
- package/cockroach-core/columns/varbit.js +33 -0
- package/cockroach-core/columns/varbit.js.map +1 -0
- package/cockroach-core/columns/varchar.cjs +61 -0
- package/cockroach-core/columns/varchar.cjs.map +1 -0
- package/cockroach-core/columns/varchar.d.cts +30 -0
- package/cockroach-core/columns/varchar.d.ts +30 -0
- package/cockroach-core/columns/varchar.js +35 -0
- package/cockroach-core/columns/varchar.js.map +1 -0
- package/cockroach-core/columns/vector.cjs +65 -0
- package/cockroach-core/columns/vector.cjs.map +1 -0
- package/cockroach-core/columns/vector.d.cts +26 -0
- package/cockroach-core/columns/vector.d.ts +26 -0
- package/cockroach-core/columns/vector.js +39 -0
- package/cockroach-core/columns/vector.js.map +1 -0
- package/cockroach-core/db.cjs +347 -0
- package/cockroach-core/db.cjs.map +1 -0
- package/cockroach-core/db.d.cts +282 -0
- package/cockroach-core/db.d.ts +282 -0
- package/cockroach-core/db.js +328 -0
- package/cockroach-core/db.js.map +1 -0
- package/cockroach-core/dialect.cjs +1155 -0
- package/cockroach-core/dialect.cjs.map +1 -0
- package/cockroach-core/dialect.d.cts +64 -0
- package/cockroach-core/dialect.d.ts +64 -0
- package/cockroach-core/dialect.js +1127 -0
- package/cockroach-core/dialect.js.map +1 -0
- package/cockroach-core/expressions.cjs +49 -0
- package/cockroach-core/expressions.cjs.map +1 -0
- package/cockroach-core/expressions.d.cts +8 -0
- package/cockroach-core/expressions.d.ts +8 -0
- package/cockroach-core/expressions.js +22 -0
- package/cockroach-core/expressions.js.map +1 -0
- package/cockroach-core/foreign-keys.cjs +95 -0
- package/cockroach-core/foreign-keys.cjs.map +1 -0
- package/cockroach-core/foreign-keys.d.cts +53 -0
- package/cockroach-core/foreign-keys.d.ts +53 -0
- package/cockroach-core/foreign-keys.js +69 -0
- package/cockroach-core/foreign-keys.js.map +1 -0
- package/cockroach-core/index.cjs +61 -0
- package/cockroach-core/index.cjs.map +1 -0
- package/cockroach-core/index.d.cts +20 -0
- package/cockroach-core/index.d.ts +20 -0
- package/cockroach-core/index.js +21 -0
- package/cockroach-core/index.js.map +1 -0
- package/cockroach-core/indexes.cjs +139 -0
- package/cockroach-core/indexes.cjs.map +1 -0
- package/cockroach-core/indexes.d.cts +65 -0
- package/cockroach-core/indexes.d.ts +65 -0
- package/cockroach-core/indexes.js +111 -0
- package/cockroach-core/indexes.js.map +1 -0
- package/cockroach-core/policies.cjs +58 -0
- package/cockroach-core/policies.cjs.map +1 -0
- package/cockroach-core/policies.d.cts +24 -0
- package/cockroach-core/policies.d.ts +24 -0
- package/cockroach-core/policies.js +33 -0
- package/cockroach-core/policies.js.map +1 -0
- package/cockroach-core/primary-keys.cjs +66 -0
- package/cockroach-core/primary-keys.cjs.map +1 -0
- package/cockroach-core/primary-keys.d.cts +24 -0
- package/cockroach-core/primary-keys.d.ts +24 -0
- package/cockroach-core/primary-keys.js +40 -0
- package/cockroach-core/primary-keys.js.map +1 -0
- package/cockroach-core/query-builders/count.cjs +79 -0
- package/cockroach-core/query-builders/count.cjs.map +1 -0
- package/cockroach-core/query-builders/count.d.cts +30 -0
- package/cockroach-core/query-builders/count.d.ts +30 -0
- package/cockroach-core/query-builders/count.js +55 -0
- package/cockroach-core/query-builders/count.js.map +1 -0
- package/cockroach-core/query-builders/delete.cjs +124 -0
- package/cockroach-core/query-builders/delete.cjs.map +1 -0
- package/cockroach-core/query-builders/delete.d.cts +103 -0
- package/cockroach-core/query-builders/delete.d.ts +103 -0
- package/cockroach-core/query-builders/delete.js +100 -0
- package/cockroach-core/query-builders/delete.js.map +1 -0
- package/cockroach-core/query-builders/index.cjs +35 -0
- package/cockroach-core/query-builders/index.cjs.map +1 -0
- package/cockroach-core/query-builders/index.d.cts +7 -0
- package/cockroach-core/query-builders/index.d.ts +7 -0
- package/cockroach-core/query-builders/index.js +8 -0
- package/cockroach-core/query-builders/index.js.map +1 -0
- package/cockroach-core/query-builders/insert.cjs +213 -0
- package/cockroach-core/query-builders/insert.cjs.map +1 -0
- package/cockroach-core/query-builders/insert.d.cts +168 -0
- package/cockroach-core/query-builders/insert.d.ts +168 -0
- package/cockroach-core/query-builders/insert.js +188 -0
- package/cockroach-core/query-builders/insert.js.map +1 -0
- package/cockroach-core/query-builders/query-builder.cjs +118 -0
- package/cockroach-core/query-builders/query-builder.cjs.map +1 -0
- package/cockroach-core/query-builders/query-builder.d.cts +37 -0
- package/cockroach-core/query-builders/query-builder.d.ts +37 -0
- package/cockroach-core/query-builders/query-builder.js +94 -0
- package/cockroach-core/query-builders/query-builder.js.map +1 -0
- package/cockroach-core/query-builders/query.cjs +145 -0
- package/cockroach-core/query-builders/query.cjs.map +1 -0
- package/cockroach-core/query-builders/query.d.cts +47 -0
- package/cockroach-core/query-builders/query.d.ts +47 -0
- package/cockroach-core/query-builders/query.js +122 -0
- package/cockroach-core/query-builders/query.js.map +1 -0
- package/cockroach-core/query-builders/raw.cjs +57 -0
- package/cockroach-core/query-builders/raw.cjs.map +1 -0
- package/cockroach-core/query-builders/raw.d.cts +22 -0
- package/cockroach-core/query-builders/raw.d.ts +22 -0
- package/cockroach-core/query-builders/raw.js +33 -0
- package/cockroach-core/query-builders/raw.js.map +1 -0
- package/cockroach-core/query-builders/refresh-materialized-view.cjs +83 -0
- package/cockroach-core/query-builders/refresh-materialized-view.cjs.map +1 -0
- package/cockroach-core/query-builders/refresh-materialized-view.d.cts +28 -0
- package/cockroach-core/query-builders/refresh-materialized-view.d.ts +28 -0
- package/cockroach-core/query-builders/refresh-materialized-view.js +59 -0
- package/cockroach-core/query-builders/refresh-materialized-view.js.map +1 -0
- package/cockroach-core/query-builders/select.cjs +847 -0
- package/cockroach-core/query-builders/select.cjs.map +1 -0
- package/cockroach-core/query-builders/select.d.cts +787 -0
- package/cockroach-core/query-builders/select.d.ts +787 -0
- package/cockroach-core/query-builders/select.js +821 -0
- package/cockroach-core/query-builders/select.js.map +1 -0
- package/cockroach-core/query-builders/select.types.cjs +17 -0
- package/cockroach-core/query-builders/select.types.cjs.map +1 -0
- package/cockroach-core/query-builders/select.types.d.cts +140 -0
- package/cockroach-core/query-builders/select.types.d.ts +140 -0
- package/cockroach-core/query-builders/select.types.js +1 -0
- package/cockroach-core/query-builders/select.types.js.map +1 -0
- package/cockroach-core/query-builders/update.cjs +240 -0
- package/cockroach-core/query-builders/update.cjs.map +1 -0
- package/cockroach-core/query-builders/update.d.cts +170 -0
- package/cockroach-core/query-builders/update.d.ts +170 -0
- package/cockroach-core/query-builders/update.js +219 -0
- package/cockroach-core/query-builders/update.js.map +1 -0
- package/cockroach-core/roles.cjs +54 -0
- package/cockroach-core/roles.cjs.map +1 -0
- package/cockroach-core/roles.d.cts +12 -0
- package/cockroach-core/roles.d.ts +12 -0
- package/cockroach-core/roles.js +29 -0
- package/cockroach-core/roles.js.map +1 -0
- package/cockroach-core/schema.cjs +92 -0
- package/cockroach-core/schema.cjs.map +1 -0
- package/cockroach-core/schema.d.cts +24 -0
- package/cockroach-core/schema.d.ts +24 -0
- package/cockroach-core/schema.js +72 -0
- package/cockroach-core/schema.js.map +1 -0
- package/cockroach-core/sequence.cjs +52 -0
- package/cockroach-core/sequence.cjs.map +1 -0
- package/cockroach-core/sequence.d.cts +17 -0
- package/cockroach-core/sequence.d.ts +17 -0
- package/cockroach-core/sequence.js +25 -0
- package/cockroach-core/sequence.js.map +1 -0
- package/cockroach-core/session.cjs +120 -0
- package/cockroach-core/session.cjs.map +1 -0
- package/cockroach-core/session.d.cts +62 -0
- package/cockroach-core/session.d.ts +62 -0
- package/cockroach-core/session.js +94 -0
- package/cockroach-core/session.js.map +1 -0
- package/cockroach-core/subquery.cjs +17 -0
- package/cockroach-core/subquery.cjs.map +1 -0
- package/cockroach-core/subquery.d.cts +18 -0
- package/cockroach-core/subquery.d.ts +18 -0
- package/cockroach-core/subquery.js +1 -0
- package/cockroach-core/subquery.js.map +1 -0
- package/cockroach-core/table.cjs +121 -0
- package/cockroach-core/table.cjs.map +1 -0
- package/cockroach-core/table.d.cts +41 -0
- package/cockroach-core/table.d.ts +41 -0
- package/cockroach-core/table.js +94 -0
- package/cockroach-core/table.js.map +1 -0
- package/cockroach-core/unique-constraint.cjs +77 -0
- package/cockroach-core/unique-constraint.cjs.map +1 -0
- package/cockroach-core/unique-constraint.d.cts +23 -0
- package/cockroach-core/unique-constraint.d.ts +23 -0
- package/cockroach-core/unique-constraint.js +50 -0
- package/cockroach-core/unique-constraint.js.map +1 -0
- package/cockroach-core/utils/array.cjs +106 -0
- package/cockroach-core/utils/array.cjs.map +1 -0
- package/cockroach-core/utils/array.d.cts +3 -0
- package/cockroach-core/utils/array.d.ts +3 -0
- package/cockroach-core/utils/array.js +80 -0
- package/cockroach-core/utils/array.js.map +1 -0
- package/cockroach-core/utils/index.cjs +23 -0
- package/cockroach-core/utils/index.cjs.map +1 -0
- package/cockroach-core/utils/index.d.cts +1 -0
- package/cockroach-core/utils/index.d.ts +1 -0
- package/cockroach-core/utils/index.js +2 -0
- package/cockroach-core/utils/index.js.map +1 -0
- package/cockroach-core/utils.cjs +98 -0
- package/cockroach-core/utils.cjs.map +1 -0
- package/cockroach-core/utils.d.cts +47 -0
- package/cockroach-core/utils.d.ts +47 -0
- package/cockroach-core/utils.js +72 -0
- package/cockroach-core/utils.js.map +1 -0
- package/cockroach-core/view-base.cjs +33 -0
- package/cockroach-core/view-base.cjs.map +1 -0
- package/cockroach-core/view-base.d.cts +8 -0
- package/cockroach-core/view-base.d.ts +8 -0
- package/cockroach-core/view-base.js +9 -0
- package/cockroach-core/view-base.js.map +1 -0
- package/cockroach-core/view.cjs +271 -0
- package/cockroach-core/view.cjs.map +1 -0
- package/cockroach-core/view.d.cts +106 -0
- package/cockroach-core/view.d.ts +106 -0
- package/cockroach-core/view.js +233 -0
- package/cockroach-core/view.js.map +1 -0
- package/column-builder.cjs.map +1 -1
- package/column-builder.d.cts +9 -8
- package/column-builder.d.ts +9 -8
- package/column-builder.js.map +1 -1
- package/column-common.cjs +29 -0
- package/column-common.cjs.map +1 -0
- package/column-common.d.cts +1 -0
- package/column-common.d.ts +1 -0
- package/column-common.js +5 -0
- package/column-common.js.map +1 -0
- package/column.cjs +7 -0
- package/column.cjs.map +1 -1
- package/column.d.cts +2 -0
- package/column.d.ts +2 -0
- package/column.js +7 -0
- package/column.js.map +1 -1
- package/durable-sqlite/migrator.cjs +10 -7
- package/durable-sqlite/migrator.cjs.map +1 -1
- package/durable-sqlite/migrator.d.cts +1 -9
- package/durable-sqlite/migrator.d.ts +1 -9
- package/durable-sqlite/migrator.js +10 -7
- package/durable-sqlite/migrator.js.map +1 -1
- package/durable-sqlite/session.cjs +6 -3
- package/durable-sqlite/session.cjs.map +1 -1
- package/durable-sqlite/session.d.cts +1 -2
- package/durable-sqlite/session.d.ts +1 -2
- package/durable-sqlite/session.js +6 -2
- package/durable-sqlite/session.js.map +1 -1
- package/entity.cjs.map +1 -1
- package/entity.js.map +1 -1
- package/expo-sqlite/migrator.cjs +10 -7
- package/expo-sqlite/migrator.cjs.map +1 -1
- package/expo-sqlite/migrator.d.cts +0 -8
- package/expo-sqlite/migrator.d.ts +0 -8
- package/expo-sqlite/migrator.js +10 -7
- package/expo-sqlite/migrator.js.map +1 -1
- package/gel/driver.cjs +6 -10
- package/gel/driver.cjs.map +1 -1
- package/gel/driver.d.cts +2 -2
- package/gel/driver.d.ts +2 -2
- package/gel/driver.js +6 -10
- package/gel/driver.js.map +1 -1
- package/gel-core/columns/bigint.cjs.map +1 -1
- package/gel-core/columns/bigint.d.cts +0 -1
- package/gel-core/columns/bigint.d.ts +0 -1
- package/gel-core/columns/bigint.js.map +1 -1
- package/gel-core/columns/bigintT.cjs.map +1 -1
- package/gel-core/columns/bigintT.d.cts +0 -1
- package/gel-core/columns/bigintT.d.ts +0 -1
- package/gel-core/columns/bigintT.js.map +1 -1
- package/gel-core/columns/boolean.cjs.map +1 -1
- package/gel-core/columns/boolean.d.cts +0 -1
- package/gel-core/columns/boolean.d.ts +0 -1
- package/gel-core/columns/boolean.js.map +1 -1
- package/gel-core/columns/bytes.cjs.map +1 -1
- package/gel-core/columns/bytes.d.cts +0 -1
- package/gel-core/columns/bytes.d.ts +0 -1
- package/gel-core/columns/bytes.js.map +1 -1
- package/gel-core/columns/common.cjs +0 -4
- 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 +0 -4
- package/gel-core/columns/common.js.map +1 -1
- package/gel-core/columns/custom.cjs.map +1 -1
- package/gel-core/columns/custom.d.cts +0 -1
- package/gel-core/columns/custom.d.ts +0 -1
- package/gel-core/columns/custom.js.map +1 -1
- package/gel-core/columns/date-duration.cjs.map +1 -1
- package/gel-core/columns/date-duration.d.cts +0 -1
- package/gel-core/columns/date-duration.d.ts +0 -1
- package/gel-core/columns/date-duration.js.map +1 -1
- package/gel-core/columns/decimal.cjs.map +1 -1
- package/gel-core/columns/decimal.d.cts +0 -1
- package/gel-core/columns/decimal.d.ts +0 -1
- package/gel-core/columns/decimal.js.map +1 -1
- package/gel-core/columns/double-precision.cjs.map +1 -1
- package/gel-core/columns/double-precision.d.cts +0 -1
- package/gel-core/columns/double-precision.d.ts +0 -1
- package/gel-core/columns/double-precision.js.map +1 -1
- package/gel-core/columns/duration.cjs.map +1 -1
- package/gel-core/columns/duration.d.cts +0 -1
- package/gel-core/columns/duration.d.ts +0 -1
- package/gel-core/columns/duration.js.map +1 -1
- package/gel-core/columns/integer.cjs.map +1 -1
- package/gel-core/columns/integer.d.cts +0 -1
- package/gel-core/columns/integer.d.ts +0 -1
- package/gel-core/columns/integer.js.map +1 -1
- package/gel-core/columns/json.cjs.map +1 -1
- package/gel-core/columns/json.d.cts +0 -1
- package/gel-core/columns/json.d.ts +0 -1
- package/gel-core/columns/json.js.map +1 -1
- package/gel-core/columns/localdate.cjs.map +1 -1
- package/gel-core/columns/localdate.d.cts +0 -1
- package/gel-core/columns/localdate.d.ts +0 -1
- package/gel-core/columns/localdate.js.map +1 -1
- package/gel-core/columns/localtime.cjs.map +1 -1
- package/gel-core/columns/localtime.d.cts +0 -1
- package/gel-core/columns/localtime.d.ts +0 -1
- package/gel-core/columns/localtime.js.map +1 -1
- package/gel-core/columns/real.cjs.map +1 -1
- package/gel-core/columns/real.d.cts +0 -1
- package/gel-core/columns/real.d.ts +0 -1
- package/gel-core/columns/real.js.map +1 -1
- package/gel-core/columns/relative-duration.cjs.map +1 -1
- package/gel-core/columns/relative-duration.d.cts +0 -1
- package/gel-core/columns/relative-duration.d.ts +0 -1
- package/gel-core/columns/relative-duration.js.map +1 -1
- package/gel-core/columns/smallint.cjs.map +1 -1
- package/gel-core/columns/smallint.d.cts +0 -1
- package/gel-core/columns/smallint.d.ts +0 -1
- package/gel-core/columns/smallint.js.map +1 -1
- package/gel-core/columns/text.cjs.map +1 -1
- package/gel-core/columns/text.d.cts +0 -1
- package/gel-core/columns/text.d.ts +0 -1
- package/gel-core/columns/text.js.map +1 -1
- package/gel-core/columns/timestamp.cjs.map +1 -1
- package/gel-core/columns/timestamp.d.cts +0 -1
- package/gel-core/columns/timestamp.d.ts +0 -1
- package/gel-core/columns/timestamp.js.map +1 -1
- package/gel-core/columns/timestamptz.cjs.map +1 -1
- package/gel-core/columns/timestamptz.d.cts +0 -1
- package/gel-core/columns/timestamptz.d.ts +0 -1
- package/gel-core/columns/timestamptz.js.map +1 -1
- package/gel-core/columns/uuid.cjs.map +1 -1
- package/gel-core/columns/uuid.d.cts +0 -1
- package/gel-core/columns/uuid.d.ts +0 -1
- package/gel-core/columns/uuid.js.map +1 -1
- package/gel-core/dialect.cjs +1 -1
- package/gel-core/dialect.cjs.map +1 -1
- package/gel-core/dialect.js +8 -2
- package/gel-core/dialect.js.map +1 -1
- package/gel-core/query-builders/count.cjs.map +1 -1
- package/gel-core/query-builders/count.d.cts +4 -3
- package/gel-core/query-builders/count.d.ts +4 -3
- package/gel-core/query-builders/count.js.map +1 -1
- package/gel-core/query-builders/insert.cjs.map +1 -1
- package/gel-core/query-builders/insert.d.cts +6 -9
- package/gel-core/query-builders/insert.d.ts +6 -9
- package/gel-core/query-builders/insert.js.map +1 -1
- package/gel-core/query-builders/select.cjs +6 -7
- package/gel-core/query-builders/select.cjs.map +1 -1
- package/gel-core/query-builders/select.js +2 -2
- package/gel-core/query-builders/select.js.map +1 -1
- package/gel-core/query-builders/update.cjs.map +1 -1
- package/gel-core/query-builders/update.d.cts +1 -1
- package/gel-core/query-builders/update.d.ts +1 -1
- package/gel-core/query-builders/update.js.map +1 -1
- package/gel-core/utils.cjs +1 -2
- package/gel-core/utils.cjs.map +1 -1
- package/gel-core/utils.d.cts +1 -1
- package/gel-core/utils.d.ts +1 -1
- package/gel-core/utils.js +1 -2
- package/gel-core/utils.js.map +1 -1
- package/gel-core/view-common.cjs +3 -0
- package/gel-core/view-common.cjs.map +1 -1
- package/gel-core/view-common.d.cts +1 -0
- package/gel-core/view-common.d.ts +1 -0
- package/gel-core/view-common.js +2 -0
- package/gel-core/view-common.js.map +1 -1
- package/gel-core/view.cjs +2 -5
- package/gel-core/view.cjs.map +1 -1
- package/gel-core/view.d.cts +1 -2
- package/gel-core/view.d.ts +1 -2
- package/gel-core/view.js +1 -3
- package/gel-core/view.js.map +1 -1
- package/libsql/driver.cjs +6 -10
- package/libsql/driver.cjs.map +1 -1
- package/libsql/driver.d.cts +3 -3
- package/libsql/driver.d.ts +3 -3
- package/libsql/driver.js +6 -10
- package/libsql/driver.js.map +1 -1
- package/libsql/http/index.cjs +6 -10
- package/libsql/http/index.cjs.map +1 -1
- package/libsql/http/index.d.cts +3 -3
- package/libsql/http/index.d.ts +3 -3
- package/libsql/http/index.js +6 -10
- package/libsql/http/index.js.map +1 -1
- package/libsql/node/index.cjs +6 -10
- package/libsql/node/index.cjs.map +1 -1
- package/libsql/node/index.d.cts +3 -3
- package/libsql/node/index.d.ts +3 -3
- package/libsql/node/index.js +6 -10
- package/libsql/node/index.js.map +1 -1
- package/libsql/session.cjs +0 -2
- package/libsql/session.cjs.map +1 -1
- package/libsql/session.d.cts +1 -1
- package/libsql/session.d.ts +1 -1
- package/libsql/session.js +0 -2
- package/libsql/session.js.map +1 -1
- package/libsql/sqlite3/index.cjs +6 -10
- package/libsql/sqlite3/index.cjs.map +1 -1
- package/libsql/sqlite3/index.d.cts +3 -3
- package/libsql/sqlite3/index.d.ts +3 -3
- package/libsql/sqlite3/index.js +6 -10
- package/libsql/sqlite3/index.js.map +1 -1
- package/libsql/wasm/index.cjs +6 -10
- package/libsql/wasm/index.cjs.map +1 -1
- package/libsql/wasm/index.d.cts +3 -3
- package/libsql/wasm/index.d.ts +3 -3
- package/libsql/wasm/index.js +6 -10
- package/libsql/wasm/index.js.map +1 -1
- package/libsql/web/index.cjs +6 -10
- package/libsql/web/index.cjs.map +1 -1
- package/libsql/web/index.d.cts +3 -3
- package/libsql/web/index.d.ts +3 -3
- package/libsql/web/index.js +6 -10
- package/libsql/web/index.js.map +1 -1
- package/libsql/ws/index.cjs +6 -10
- package/libsql/ws/index.cjs.map +1 -1
- package/libsql/ws/index.d.cts +3 -3
- package/libsql/ws/index.d.ts +3 -3
- package/libsql/ws/index.js +6 -10
- package/libsql/ws/index.js.map +1 -1
- package/migrator.cjs +42 -5
- package/migrator.cjs.map +1 -1
- package/migrator.d.cts +5 -0
- package/migrator.d.ts +5 -0
- package/migrator.js +42 -6
- package/migrator.js.map +1 -1
- package/mssql-core/alias.cjs +32 -0
- package/mssql-core/alias.cjs.map +1 -0
- package/mssql-core/alias.d.cts +4 -0
- package/mssql-core/alias.d.ts +4 -0
- package/mssql-core/alias.js +8 -0
- package/mssql-core/alias.js.map +1 -0
- package/mssql-core/checks.cjs +58 -0
- package/mssql-core/checks.cjs.map +1 -0
- package/mssql-core/checks.d.cts +18 -0
- package/mssql-core/checks.d.ts +18 -0
- package/mssql-core/checks.js +32 -0
- package/mssql-core/checks.js.map +1 -0
- package/mssql-core/columns/all.cjs +74 -0
- package/mssql-core/columns/all.cjs.map +1 -0
- package/mssql-core/columns/all.d.cts +45 -0
- package/mssql-core/columns/all.d.ts +45 -0
- package/mssql-core/columns/all.js +50 -0
- package/mssql-core/columns/all.js.map +1 -0
- package/mssql-core/columns/bigint.cjs +72 -0
- package/mssql-core/columns/bigint.cjs.map +1 -0
- package/mssql-core/columns/bigint.d.cts +25 -0
- package/mssql-core/columns/bigint.d.ts +25 -0
- package/mssql-core/columns/bigint.js +46 -0
- package/mssql-core/columns/bigint.js.map +1 -0
- package/mssql-core/columns/binary.cjs +57 -0
- package/mssql-core/columns/binary.cjs.map +1 -0
- package/mssql-core/columns/binary.d.cts +24 -0
- package/mssql-core/columns/binary.d.ts +24 -0
- package/mssql-core/columns/binary.js +31 -0
- package/mssql-core/columns/binary.js.map +1 -0
- package/mssql-core/columns/bit.cjs +54 -0
- package/mssql-core/columns/bit.cjs.map +1 -0
- package/mssql-core/columns/bit.d.cts +17 -0
- package/mssql-core/columns/bit.d.ts +17 -0
- package/mssql-core/columns/bit.js +28 -0
- package/mssql-core/columns/bit.js.map +1 -0
- package/mssql-core/columns/char.cjs +73 -0
- package/mssql-core/columns/char.cjs.map +1 -0
- package/mssql-core/columns/char.d.cts +29 -0
- package/mssql-core/columns/char.d.ts +29 -0
- package/mssql-core/columns/char.js +46 -0
- package/mssql-core/columns/char.js.map +1 -0
- package/mssql-core/columns/common.cjs +112 -0
- package/mssql-core/columns/common.cjs.map +1 -0
- package/mssql-core/columns/common.d.cts +57 -0
- package/mssql-core/columns/common.d.ts +57 -0
- package/mssql-core/columns/common.js +85 -0
- package/mssql-core/columns/common.js.map +1 -0
- package/mssql-core/columns/custom.cjs +105 -0
- package/mssql-core/columns/custom.cjs.map +1 -0
- package/mssql-core/columns/custom.d.cts +261 -0
- package/mssql-core/columns/custom.d.ts +261 -0
- package/mssql-core/columns/custom.js +79 -0
- package/mssql-core/columns/custom.js.map +1 -0
- package/mssql-core/columns/date.cjs +94 -0
- package/mssql-core/columns/date.cjs.map +1 -0
- package/mssql-core/columns/date.common.cjs +37 -0
- package/mssql-core/columns/date.common.cjs.map +1 -0
- package/mssql-core/columns/date.common.d.cts +12 -0
- package/mssql-core/columns/date.common.d.ts +12 -0
- package/mssql-core/columns/date.common.js +13 -0
- package/mssql-core/columns/date.common.js.map +1 -0
- package/mssql-core/columns/date.d.cts +39 -0
- package/mssql-core/columns/date.d.ts +39 -0
- package/mssql-core/columns/date.js +66 -0
- package/mssql-core/columns/date.js.map +1 -0
- package/mssql-core/columns/datetime.cjs +94 -0
- package/mssql-core/columns/datetime.cjs.map +1 -0
- package/mssql-core/columns/datetime.d.cts +38 -0
- package/mssql-core/columns/datetime.d.ts +38 -0
- package/mssql-core/columns/datetime.js +66 -0
- package/mssql-core/columns/datetime.js.map +1 -0
- package/mssql-core/columns/datetime2.cjs +102 -0
- package/mssql-core/columns/datetime2.cjs.map +1 -0
- package/mssql-core/columns/datetime2.d.cts +38 -0
- package/mssql-core/columns/datetime2.d.ts +38 -0
- package/mssql-core/columns/datetime2.js +74 -0
- package/mssql-core/columns/datetime2.js.map +1 -0
- package/mssql-core/columns/datetimeoffset.cjs +102 -0
- package/mssql-core/columns/datetimeoffset.cjs.map +1 -0
- package/mssql-core/columns/datetimeoffset.d.cts +39 -0
- package/mssql-core/columns/datetimeoffset.d.ts +39 -0
- package/mssql-core/columns/datetimeoffset.js +74 -0
- package/mssql-core/columns/datetimeoffset.js.map +1 -0
- package/mssql-core/columns/decimal.cjs +146 -0
- package/mssql-core/columns/decimal.cjs.map +1 -0
- package/mssql-core/columns/decimal.d.cts +58 -0
- package/mssql-core/columns/decimal.d.ts +58 -0
- package/mssql-core/columns/decimal.js +116 -0
- package/mssql-core/columns/decimal.js.map +1 -0
- package/mssql-core/columns/float.cjs +58 -0
- package/mssql-core/columns/float.cjs.map +1 -0
- package/mssql-core/columns/float.d.cts +21 -0
- package/mssql-core/columns/float.d.ts +21 -0
- package/mssql-core/columns/float.js +32 -0
- package/mssql-core/columns/float.js.map +1 -0
- package/mssql-core/columns/index.cjs +63 -0
- package/mssql-core/columns/index.cjs.map +1 -0
- package/mssql-core/columns/index.d.cts +21 -0
- package/mssql-core/columns/index.d.ts +21 -0
- package/mssql-core/columns/index.js +22 -0
- package/mssql-core/columns/index.js.map +1 -0
- package/mssql-core/columns/int.cjs +53 -0
- package/mssql-core/columns/int.cjs.map +1 -0
- package/mssql-core/columns/int.d.cts +16 -0
- package/mssql-core/columns/int.d.ts +16 -0
- package/mssql-core/columns/int.js +27 -0
- package/mssql-core/columns/int.js.map +1 -0
- package/mssql-core/columns/numeric.cjs +146 -0
- package/mssql-core/columns/numeric.cjs.map +1 -0
- package/mssql-core/columns/numeric.d.cts +58 -0
- package/mssql-core/columns/numeric.d.ts +58 -0
- package/mssql-core/columns/numeric.js +116 -0
- package/mssql-core/columns/numeric.js.map +1 -0
- package/mssql-core/columns/real.cjs +53 -0
- package/mssql-core/columns/real.cjs.map +1 -0
- package/mssql-core/columns/real.d.cts +16 -0
- package/mssql-core/columns/real.d.ts +16 -0
- package/mssql-core/columns/real.js +27 -0
- package/mssql-core/columns/real.js.map +1 -0
- package/mssql-core/columns/smallint.cjs +62 -0
- package/mssql-core/columns/smallint.cjs.map +1 -0
- package/mssql-core/columns/smallint.d.cts +17 -0
- package/mssql-core/columns/smallint.d.ts +17 -0
- package/mssql-core/columns/smallint.js +36 -0
- package/mssql-core/columns/smallint.js.map +1 -0
- package/mssql-core/columns/text.cjs +68 -0
- package/mssql-core/columns/text.cjs.map +1 -0
- package/mssql-core/columns/text.d.cts +36 -0
- package/mssql-core/columns/text.d.ts +36 -0
- package/mssql-core/columns/text.js +41 -0
- package/mssql-core/columns/text.js.map +1 -0
- package/mssql-core/columns/time.cjs +90 -0
- package/mssql-core/columns/time.cjs.map +1 -0
- package/mssql-core/columns/time.d.cts +37 -0
- package/mssql-core/columns/time.d.ts +37 -0
- package/mssql-core/columns/time.js +62 -0
- package/mssql-core/columns/time.js.map +1 -0
- package/mssql-core/columns/tinyint.cjs +62 -0
- package/mssql-core/columns/tinyint.cjs.map +1 -0
- package/mssql-core/columns/tinyint.d.cts +17 -0
- package/mssql-core/columns/tinyint.d.ts +17 -0
- package/mssql-core/columns/tinyint.js +36 -0
- package/mssql-core/columns/tinyint.js.map +1 -0
- package/mssql-core/columns/varbinary.cjs +61 -0
- package/mssql-core/columns/varbinary.cjs.map +1 -0
- package/mssql-core/columns/varbinary.d.cts +23 -0
- package/mssql-core/columns/varbinary.d.ts +23 -0
- package/mssql-core/columns/varbinary.js +35 -0
- package/mssql-core/columns/varbinary.js.map +1 -0
- package/mssql-core/columns/varchar.cjs +117 -0
- package/mssql-core/columns/varchar.cjs.map +1 -0
- package/mssql-core/columns/varchar.d.cts +59 -0
- package/mssql-core/columns/varchar.d.ts +59 -0
- package/mssql-core/columns/varchar.js +88 -0
- package/mssql-core/columns/varchar.js.map +1 -0
- package/mssql-core/db.cjs +256 -0
- package/mssql-core/db.cjs.map +1 -0
- package/mssql-core/db.d.cts +228 -0
- package/mssql-core/db.d.ts +228 -0
- package/mssql-core/db.js +237 -0
- package/mssql-core/db.js.map +1 -0
- package/mssql-core/dialect.cjs +665 -0
- package/mssql-core/dialect.cjs.map +1 -0
- package/mssql-core/dialect.d.cts +58 -0
- package/mssql-core/dialect.d.ts +58 -0
- package/mssql-core/dialect.js +637 -0
- package/mssql-core/dialect.js.map +1 -0
- package/mssql-core/expressions.cjs +49 -0
- package/mssql-core/expressions.cjs.map +1 -0
- package/mssql-core/expressions.d.cts +8 -0
- package/mssql-core/expressions.d.ts +8 -0
- package/mssql-core/expressions.js +22 -0
- package/mssql-core/expressions.js.map +1 -0
- package/mssql-core/foreign-keys.cjs +94 -0
- package/mssql-core/foreign-keys.cjs.map +1 -0
- package/mssql-core/foreign-keys.d.cts +52 -0
- package/mssql-core/foreign-keys.d.ts +52 -0
- package/mssql-core/foreign-keys.js +68 -0
- package/mssql-core/foreign-keys.js.map +1 -0
- package/mssql-core/index.cjs +55 -0
- package/mssql-core/index.cjs.map +1 -0
- package/mssql-core/index.d.cts +17 -0
- package/mssql-core/index.d.ts +17 -0
- package/mssql-core/index.js +18 -0
- package/mssql-core/index.js.map +1 -0
- package/mssql-core/indexes.cjs +82 -0
- package/mssql-core/indexes.cjs.map +1 -0
- package/mssql-core/indexes.d.cts +50 -0
- package/mssql-core/indexes.d.ts +50 -0
- package/mssql-core/indexes.js +54 -0
- package/mssql-core/indexes.js.map +1 -0
- package/mssql-core/primary-keys.cjs +66 -0
- package/mssql-core/primary-keys.cjs.map +1 -0
- package/mssql-core/primary-keys.d.cts +24 -0
- package/mssql-core/primary-keys.d.ts +24 -0
- package/mssql-core/primary-keys.js +40 -0
- package/mssql-core/primary-keys.js.map +1 -0
- package/mssql-core/query-builders/delete.cjs +107 -0
- package/mssql-core/query-builders/delete.cjs.map +1 -0
- package/mssql-core/query-builders/delete.d.cts +98 -0
- package/mssql-core/query-builders/delete.d.ts +98 -0
- package/mssql-core/query-builders/delete.js +83 -0
- package/mssql-core/query-builders/delete.js.map +1 -0
- package/mssql-core/query-builders/index.cjs +33 -0
- package/mssql-core/query-builders/index.cjs.map +1 -0
- package/mssql-core/query-builders/index.d.cts +6 -0
- package/mssql-core/query-builders/index.d.ts +6 -0
- package/mssql-core/query-builders/index.js +7 -0
- package/mssql-core/query-builders/index.js.map +1 -0
- package/mssql-core/query-builders/insert.cjs +105 -0
- package/mssql-core/query-builders/insert.cjs.map +1 -0
- package/mssql-core/query-builders/insert.d.cts +79 -0
- package/mssql-core/query-builders/insert.d.ts +79 -0
- package/mssql-core/query-builders/insert.js +80 -0
- package/mssql-core/query-builders/insert.js.map +1 -0
- package/mssql-core/query-builders/query-builder.cjs +95 -0
- package/mssql-core/query-builders/query-builder.cjs.map +1 -0
- package/mssql-core/query-builders/query-builder.d.cts +32 -0
- package/mssql-core/query-builders/query-builder.d.ts +32 -0
- package/mssql-core/query-builders/query-builder.js +71 -0
- package/mssql-core/query-builders/query-builder.js.map +1 -0
- package/mssql-core/query-builders/query.cjs +126 -0
- package/mssql-core/query-builders/query.cjs.map +1 -0
- package/mssql-core/query-builders/query.d.cts +42 -0
- package/mssql-core/query-builders/query.d.ts +42 -0
- package/mssql-core/query-builders/query.js +103 -0
- package/mssql-core/query-builders/query.js.map +1 -0
- package/mssql-core/query-builders/select.cjs +678 -0
- package/mssql-core/query-builders/select.cjs.map +1 -0
- package/mssql-core/query-builders/select.d.cts +549 -0
- package/mssql-core/query-builders/select.d.ts +549 -0
- package/mssql-core/query-builders/select.js +654 -0
- package/mssql-core/query-builders/select.js.map +1 -0
- package/mssql-core/query-builders/select.types.cjs +17 -0
- package/mssql-core/query-builders/select.types.cjs.map +1 -0
- package/mssql-core/query-builders/select.types.d.cts +142 -0
- package/mssql-core/query-builders/select.types.d.ts +142 -0
- package/mssql-core/query-builders/select.types.js +1 -0
- package/mssql-core/query-builders/select.types.js.map +1 -0
- package/mssql-core/query-builders/update.cjs +138 -0
- package/mssql-core/query-builders/update.cjs.map +1 -0
- package/mssql-core/query-builders/update.d.cts +142 -0
- package/mssql-core/query-builders/update.d.ts +142 -0
- package/mssql-core/query-builders/update.js +113 -0
- package/mssql-core/query-builders/update.js.map +1 -0
- package/mssql-core/schema.cjs +53 -0
- package/mssql-core/schema.cjs.map +1 -0
- package/mssql-core/schema.d.cts +13 -0
- package/mssql-core/schema.d.ts +13 -0
- package/mssql-core/schema.js +28 -0
- package/mssql-core/schema.js.map +1 -0
- package/mssql-core/session.cjs +74 -0
- package/mssql-core/session.cjs.map +1 -0
- package/mssql-core/session.d.cts +63 -0
- package/mssql-core/session.d.ts +63 -0
- package/mssql-core/session.js +48 -0
- package/mssql-core/session.js.map +1 -0
- package/mssql-core/subquery.cjs +17 -0
- package/mssql-core/subquery.cjs.map +1 -0
- package/mssql-core/subquery.d.cts +18 -0
- package/mssql-core/subquery.d.ts +18 -0
- package/mssql-core/subquery.js +1 -0
- package/mssql-core/subquery.js.map +1 -0
- package/mssql-core/table.cjs +81 -0
- package/mssql-core/table.cjs.map +1 -0
- package/mssql-core/table.d.cts +40 -0
- package/mssql-core/table.d.ts +40 -0
- package/mssql-core/table.js +55 -0
- package/mssql-core/table.js.map +1 -0
- package/mssql-core/unique-constraint.cjs +78 -0
- package/mssql-core/unique-constraint.cjs.map +1 -0
- package/mssql-core/unique-constraint.d.cts +24 -0
- package/mssql-core/unique-constraint.d.ts +24 -0
- package/mssql-core/unique-constraint.js +51 -0
- package/mssql-core/unique-constraint.js.map +1 -0
- package/mssql-core/utils.cjs +85 -0
- package/mssql-core/utils.cjs.map +1 -0
- package/mssql-core/utils.d.cts +31 -0
- package/mssql-core/utils.d.ts +31 -0
- package/mssql-core/utils.js +60 -0
- package/mssql-core/utils.js.map +1 -0
- package/mssql-core/view-base.cjs +33 -0
- package/mssql-core/view-base.cjs.map +1 -0
- package/mssql-core/view-base.d.cts +9 -0
- package/mssql-core/view-base.d.ts +9 -0
- package/mssql-core/view-base.js +9 -0
- package/mssql-core/view-base.js.map +1 -0
- package/mssql-core/view-common.cjs +29 -0
- package/mssql-core/view-common.cjs.map +1 -0
- package/mssql-core/view-common.d.cts +1 -0
- package/mssql-core/view-common.d.ts +1 -0
- package/mssql-core/view-common.js +5 -0
- package/mssql-core/view-common.js.map +1 -0
- package/mssql-core/view.cjs +154 -0
- package/mssql-core/view.cjs.map +1 -0
- package/mssql-core/view.d.cts +63 -0
- package/mssql-core/view.d.ts +63 -0
- package/mssql-core/view.js +125 -0
- package/mssql-core/view.js.map +1 -0
- package/mysql-core/columns/all.cjs +6 -1
- package/mysql-core/columns/all.cjs.map +1 -1
- package/mysql-core/columns/all.d.cts +5 -0
- package/mysql-core/columns/all.d.ts +5 -0
- package/mysql-core/columns/all.js +6 -1
- package/mysql-core/columns/all.js.map +1 -1
- package/mysql-core/columns/bigint.cjs.map +1 -1
- package/mysql-core/columns/bigint.d.cts +0 -3
- package/mysql-core/columns/bigint.d.ts +0 -3
- package/mysql-core/columns/bigint.js.map +1 -1
- package/mysql-core/columns/binary.cjs +0 -1
- package/mysql-core/columns/binary.cjs.map +1 -1
- package/mysql-core/columns/binary.d.cts +0 -2
- package/mysql-core/columns/binary.d.ts +0 -2
- package/mysql-core/columns/binary.js +0 -1
- package/mysql-core/columns/binary.js.map +1 -1
- package/mysql-core/columns/blob.cjs +158 -0
- package/mysql-core/columns/blob.cjs.map +1 -0
- package/mysql-core/columns/blob.d.cts +54 -0
- package/mysql-core/columns/blob.d.ts +54 -0
- package/mysql-core/columns/blob.js +127 -0
- package/mysql-core/columns/blob.js.map +1 -0
- package/mysql-core/columns/boolean.cjs.map +1 -1
- package/mysql-core/columns/boolean.d.cts +0 -1
- package/mysql-core/columns/boolean.d.ts +0 -1
- package/mysql-core/columns/boolean.js.map +1 -1
- package/mysql-core/columns/char.cjs +3 -4
- package/mysql-core/columns/char.cjs.map +1 -1
- package/mysql-core/columns/char.d.cts +3 -5
- package/mysql-core/columns/char.d.ts +3 -5
- package/mysql-core/columns/char.js +3 -4
- package/mysql-core/columns/char.js.map +1 -1
- package/mysql-core/columns/common.cjs +0 -4
- package/mysql-core/columns/common.cjs.map +1 -1
- package/mysql-core/columns/common.d.cts +1 -1
- package/mysql-core/columns/common.d.ts +1 -1
- package/mysql-core/columns/common.js +0 -4
- package/mysql-core/columns/common.js.map +1 -1
- package/mysql-core/columns/custom.cjs.map +1 -1
- package/mysql-core/columns/custom.d.cts +0 -1
- package/mysql-core/columns/custom.d.ts +0 -1
- package/mysql-core/columns/custom.js.map +1 -1
- package/mysql-core/columns/date.cjs.map +1 -1
- package/mysql-core/columns/date.common.cjs +3 -1
- package/mysql-core/columns/date.common.cjs.map +1 -1
- package/mysql-core/columns/date.common.d.cts +6 -1
- package/mysql-core/columns/date.common.d.ts +6 -1
- package/mysql-core/columns/date.common.js +3 -1
- package/mysql-core/columns/date.common.js.map +1 -1
- package/mysql-core/columns/date.d.cts +0 -2
- package/mysql-core/columns/date.d.ts +0 -2
- package/mysql-core/columns/date.js.map +1 -1
- package/mysql-core/columns/datetime.cjs.map +1 -1
- package/mysql-core/columns/datetime.d.cts +0 -2
- package/mysql-core/columns/datetime.d.ts +0 -2
- package/mysql-core/columns/datetime.js.map +1 -1
- package/mysql-core/columns/decimal.cjs.map +1 -1
- package/mysql-core/columns/decimal.d.cts +0 -3
- package/mysql-core/columns/decimal.d.ts +0 -3
- package/mysql-core/columns/decimal.js.map +1 -1
- package/mysql-core/columns/double.cjs.map +1 -1
- package/mysql-core/columns/double.d.cts +0 -1
- package/mysql-core/columns/double.d.ts +0 -1
- package/mysql-core/columns/double.js.map +1 -1
- package/mysql-core/columns/enum.cjs +5 -5
- package/mysql-core/columns/enum.cjs.map +1 -1
- package/mysql-core/columns/enum.d.cts +5 -7
- package/mysql-core/columns/enum.d.ts +5 -7
- package/mysql-core/columns/enum.js +5 -5
- package/mysql-core/columns/enum.js.map +1 -1
- package/mysql-core/columns/float.cjs.map +1 -1
- package/mysql-core/columns/float.d.cts +0 -1
- package/mysql-core/columns/float.d.ts +0 -1
- package/mysql-core/columns/float.js.map +1 -1
- package/mysql-core/columns/index.cjs +2 -0
- package/mysql-core/columns/index.cjs.map +1 -1
- package/mysql-core/columns/index.d.cts +1 -0
- package/mysql-core/columns/index.d.ts +1 -0
- package/mysql-core/columns/index.js +1 -0
- package/mysql-core/columns/index.js.map +1 -1
- package/mysql-core/columns/int.cjs.map +1 -1
- package/mysql-core/columns/int.d.cts +0 -1
- package/mysql-core/columns/int.d.ts +0 -1
- package/mysql-core/columns/int.js.map +1 -1
- package/mysql-core/columns/json.cjs.map +1 -1
- package/mysql-core/columns/json.d.cts +0 -1
- package/mysql-core/columns/json.d.ts +0 -1
- package/mysql-core/columns/json.js.map +1 -1
- package/mysql-core/columns/mediumint.cjs.map +1 -1
- package/mysql-core/columns/mediumint.d.cts +0 -1
- package/mysql-core/columns/mediumint.d.ts +0 -1
- package/mysql-core/columns/mediumint.js.map +1 -1
- package/mysql-core/columns/real.cjs.map +1 -1
- package/mysql-core/columns/real.d.cts +0 -1
- package/mysql-core/columns/real.d.ts +0 -1
- package/mysql-core/columns/real.js.map +1 -1
- package/mysql-core/columns/serial.cjs.map +1 -1
- package/mysql-core/columns/serial.d.cts +0 -1
- package/mysql-core/columns/serial.d.ts +0 -1
- package/mysql-core/columns/serial.js.map +1 -1
- package/mysql-core/columns/smallint.cjs.map +1 -1
- package/mysql-core/columns/smallint.d.cts +0 -1
- package/mysql-core/columns/smallint.d.ts +0 -1
- package/mysql-core/columns/smallint.js.map +1 -1
- package/mysql-core/columns/string.common.cjs +48 -0
- package/mysql-core/columns/string.common.cjs.map +1 -0
- package/mysql-core/columns/string.common.d.cts +21 -0
- package/mysql-core/columns/string.common.d.ts +21 -0
- package/mysql-core/columns/string.common.js +23 -0
- package/mysql-core/columns/string.common.js.map +1 -0
- package/mysql-core/columns/text.cjs +3 -3
- package/mysql-core/columns/text.cjs.map +1 -1
- package/mysql-core/columns/text.d.cts +3 -4
- package/mysql-core/columns/text.d.ts +3 -4
- package/mysql-core/columns/text.js +3 -3
- package/mysql-core/columns/text.js.map +1 -1
- package/mysql-core/columns/time.cjs.map +1 -1
- package/mysql-core/columns/time.d.cts +0 -1
- package/mysql-core/columns/time.d.ts +0 -1
- package/mysql-core/columns/time.js.map +1 -1
- package/mysql-core/columns/timestamp.cjs.map +1 -1
- package/mysql-core/columns/timestamp.d.cts +0 -2
- package/mysql-core/columns/timestamp.d.ts +0 -2
- package/mysql-core/columns/timestamp.js.map +1 -1
- package/mysql-core/columns/tinyint.cjs.map +1 -1
- package/mysql-core/columns/tinyint.d.cts +0 -1
- package/mysql-core/columns/tinyint.d.ts +0 -1
- package/mysql-core/columns/tinyint.js.map +1 -1
- package/mysql-core/columns/varbinary.cjs.map +1 -1
- package/mysql-core/columns/varbinary.d.cts +0 -1
- package/mysql-core/columns/varbinary.d.ts +0 -1
- package/mysql-core/columns/varbinary.js.map +1 -1
- package/mysql-core/columns/varchar.cjs +4 -4
- package/mysql-core/columns/varchar.cjs.map +1 -1
- package/mysql-core/columns/varchar.d.cts +4 -5
- package/mysql-core/columns/varchar.d.ts +4 -5
- package/mysql-core/columns/varchar.js +4 -4
- package/mysql-core/columns/varchar.js.map +1 -1
- package/mysql-core/columns/year.cjs.map +1 -1
- package/mysql-core/columns/year.d.cts +0 -1
- package/mysql-core/columns/year.d.ts +0 -1
- package/mysql-core/columns/year.js.map +1 -1
- package/mysql-core/dialect.cjs +7 -2
- package/mysql-core/dialect.cjs.map +1 -1
- package/mysql-core/dialect.d.cts +1 -0
- package/mysql-core/dialect.d.ts +1 -0
- package/mysql-core/dialect.js +14 -3
- package/mysql-core/dialect.js.map +1 -1
- package/mysql-core/foreign-keys.cjs +3 -0
- package/mysql-core/foreign-keys.cjs.map +1 -1
- package/mysql-core/foreign-keys.d.cts +1 -0
- package/mysql-core/foreign-keys.d.ts +1 -0
- package/mysql-core/foreign-keys.js +3 -0
- package/mysql-core/foreign-keys.js.map +1 -1
- package/mysql-core/indexes.cjs +2 -0
- package/mysql-core/indexes.cjs.map +1 -1
- package/mysql-core/indexes.d.cts +1 -0
- package/mysql-core/indexes.d.ts +1 -0
- package/mysql-core/indexes.js +2 -0
- package/mysql-core/indexes.js.map +1 -1
- package/mysql-core/primary-keys.cjs +4 -13
- package/mysql-core/primary-keys.cjs.map +1 -1
- package/mysql-core/primary-keys.d.cts +3 -6
- package/mysql-core/primary-keys.d.ts +3 -6
- package/mysql-core/primary-keys.js +4 -13
- package/mysql-core/primary-keys.js.map +1 -1
- package/mysql-core/query-builders/count.cjs.map +1 -1
- package/mysql-core/query-builders/count.d.cts +1 -1
- package/mysql-core/query-builders/count.d.ts +1 -1
- package/mysql-core/query-builders/count.js.map +1 -1
- package/mysql-core/query-builders/insert.cjs.map +1 -1
- package/mysql-core/query-builders/insert.d.cts +2 -2
- package/mysql-core/query-builders/insert.d.ts +2 -2
- package/mysql-core/query-builders/insert.js.map +1 -1
- package/mysql-core/query-builders/update.cjs.map +1 -1
- package/mysql-core/query-builders/update.d.cts +1 -1
- package/mysql-core/query-builders/update.d.ts +1 -1
- package/mysql-core/query-builders/update.js.map +1 -1
- package/mysql-core/unique-constraint.cjs +2 -0
- package/mysql-core/unique-constraint.cjs.map +1 -1
- package/mysql-core/unique-constraint.d.cts +3 -2
- package/mysql-core/unique-constraint.d.ts +3 -2
- package/mysql-core/unique-constraint.js +2 -0
- package/mysql-core/unique-constraint.js.map +1 -1
- package/mysql-proxy/driver.cjs +2 -2
- package/mysql-proxy/driver.cjs.map +1 -1
- package/mysql-proxy/driver.d.cts +2 -1
- package/mysql-proxy/driver.d.ts +2 -1
- package/mysql-proxy/driver.js +2 -2
- package/mysql-proxy/driver.js.map +1 -1
- package/mysql2/driver.cjs +10 -14
- package/mysql2/driver.cjs.map +1 -1
- package/mysql2/driver.d.cts +3 -3
- package/mysql2/driver.d.ts +3 -3
- package/mysql2/driver.js +10 -14
- package/mysql2/driver.js.map +1 -1
- package/mysql2/session.cjs.map +1 -1
- package/mysql2/session.js.map +1 -1
- package/neon-http/driver.cjs +10 -14
- package/neon-http/driver.cjs.map +1 -1
- package/neon-http/driver.d.cts +3 -3
- package/neon-http/driver.d.ts +3 -3
- package/neon-http/driver.js +10 -14
- package/neon-http/driver.js.map +1 -1
- package/neon-http/session.cjs.map +1 -1
- package/neon-http/session.d.cts +1 -1
- package/neon-http/session.d.ts +1 -1
- package/neon-http/session.js.map +1 -1
- package/neon-serverless/driver.cjs +10 -14
- package/neon-serverless/driver.cjs.map +1 -1
- package/neon-serverless/driver.d.cts +3 -3
- package/neon-serverless/driver.d.ts +3 -3
- package/neon-serverless/driver.js +10 -14
- package/neon-serverless/driver.js.map +1 -1
- package/neon-serverless/session.cjs.map +1 -1
- package/neon-serverless/session.js.map +1 -1
- package/node-mssql/driver.cjs +129 -0
- package/node-mssql/driver.cjs.map +1 -0
- package/node-mssql/driver.d.cts +48 -0
- package/node-mssql/driver.d.ts +48 -0
- package/node-mssql/driver.js +92 -0
- package/node-mssql/driver.js.map +1 -0
- package/node-mssql/index.cjs +25 -0
- package/node-mssql/index.cjs.map +1 -0
- package/node-mssql/index.d.cts +2 -0
- package/node-mssql/index.d.ts +2 -0
- package/node-mssql/index.js +3 -0
- package/node-mssql/index.js.map +1 -0
- package/node-mssql/migrator.cjs +33 -0
- package/node-mssql/migrator.cjs.map +1 -0
- package/node-mssql/migrator.d.cts +3 -0
- package/node-mssql/migrator.d.ts +3 -0
- package/node-mssql/migrator.js +9 -0
- package/node-mssql/migrator.js.map +1 -0
- package/node-mssql/pool.cjs +54 -0
- package/node-mssql/pool.cjs.map +1 -0
- package/node-mssql/pool.d.cts +8 -0
- package/node-mssql/pool.d.ts +8 -0
- package/node-mssql/pool.js +20 -0
- package/node-mssql/pool.js.map +1 -0
- package/node-mssql/session.cjs +256 -0
- package/node-mssql/session.cjs.map +1 -0
- package/node-mssql/session.d.cts +48 -0
- package/node-mssql/session.d.ts +48 -0
- package/node-mssql/session.js +224 -0
- package/node-mssql/session.js.map +1 -0
- package/node-postgres/driver.cjs +8 -12
- package/node-postgres/driver.cjs.map +1 -1
- package/node-postgres/driver.d.cts +3 -3
- package/node-postgres/driver.d.ts +3 -3
- package/node-postgres/driver.js +8 -12
- package/node-postgres/driver.js.map +1 -1
- package/node-postgres/session.cjs.map +1 -1
- package/node-postgres/session.js.map +1 -1
- package/op-sqlite/migrator.cjs +10 -7
- package/op-sqlite/migrator.cjs.map +1 -1
- package/op-sqlite/migrator.d.cts +0 -16
- package/op-sqlite/migrator.d.ts +0 -16
- package/op-sqlite/migrator.js +10 -7
- package/op-sqlite/migrator.js.map +1 -1
- package/package.json +1498 -20
- package/pg-core/columns/bigint.cjs.map +1 -1
- package/pg-core/columns/bigint.d.cts +0 -3
- package/pg-core/columns/bigint.d.ts +0 -3
- package/pg-core/columns/bigint.js.map +1 -1
- package/pg-core/columns/bigserial.cjs +1 -0
- package/pg-core/columns/bigserial.cjs.map +1 -1
- package/pg-core/columns/bigserial.d.cts +0 -2
- package/pg-core/columns/bigserial.d.ts +0 -2
- package/pg-core/columns/bigserial.js +1 -0
- package/pg-core/columns/bigserial.js.map +1 -1
- package/pg-core/columns/boolean.cjs.map +1 -1
- package/pg-core/columns/boolean.d.cts +0 -1
- package/pg-core/columns/boolean.d.ts +0 -1
- package/pg-core/columns/boolean.js.map +1 -1
- package/pg-core/columns/bytea.cjs.map +1 -1
- package/pg-core/columns/bytea.d.cts +0 -1
- package/pg-core/columns/bytea.d.ts +0 -1
- package/pg-core/columns/bytea.js.map +1 -1
- package/pg-core/columns/char.cjs +0 -1
- package/pg-core/columns/char.cjs.map +1 -1
- package/pg-core/columns/char.d.cts +0 -2
- package/pg-core/columns/char.d.ts +0 -2
- package/pg-core/columns/char.js +0 -1
- package/pg-core/columns/char.js.map +1 -1
- package/pg-core/columns/cidr.cjs.map +1 -1
- package/pg-core/columns/cidr.d.cts +0 -1
- package/pg-core/columns/cidr.d.ts +0 -1
- package/pg-core/columns/cidr.js.map +1 -1
- package/pg-core/columns/common.cjs +10 -14
- package/pg-core/columns/common.cjs.map +1 -1
- package/pg-core/columns/common.d.cts +4 -3
- package/pg-core/columns/common.d.ts +4 -3
- package/pg-core/columns/common.js +10 -14
- package/pg-core/columns/common.js.map +1 -1
- package/pg-core/columns/custom.cjs.map +1 -1
- package/pg-core/columns/custom.d.cts +0 -1
- package/pg-core/columns/custom.d.ts +0 -1
- package/pg-core/columns/custom.js.map +1 -1
- package/pg-core/columns/date.cjs.map +1 -1
- package/pg-core/columns/date.d.cts +0 -2
- package/pg-core/columns/date.d.ts +0 -2
- package/pg-core/columns/date.js.map +1 -1
- package/pg-core/columns/double-precision.cjs.map +1 -1
- package/pg-core/columns/double-precision.d.cts +0 -1
- package/pg-core/columns/double-precision.d.ts +0 -1
- package/pg-core/columns/double-precision.js.map +1 -1
- package/pg-core/columns/enum.cjs.map +1 -1
- package/pg-core/columns/enum.d.cts +0 -2
- package/pg-core/columns/enum.d.ts +0 -2
- package/pg-core/columns/enum.js.map +1 -1
- package/pg-core/columns/inet.cjs.map +1 -1
- package/pg-core/columns/inet.d.cts +0 -1
- package/pg-core/columns/inet.d.ts +0 -1
- package/pg-core/columns/inet.js.map +1 -1
- package/pg-core/columns/integer.cjs.map +1 -1
- package/pg-core/columns/integer.d.cts +0 -1
- package/pg-core/columns/integer.d.ts +0 -1
- package/pg-core/columns/integer.js.map +1 -1
- package/pg-core/columns/interval.cjs.map +1 -1
- package/pg-core/columns/interval.d.cts +0 -1
- package/pg-core/columns/interval.d.ts +0 -1
- package/pg-core/columns/interval.js.map +1 -1
- package/pg-core/columns/json.cjs.map +1 -1
- package/pg-core/columns/json.d.cts +0 -1
- package/pg-core/columns/json.d.ts +0 -1
- package/pg-core/columns/json.js.map +1 -1
- package/pg-core/columns/jsonb.cjs.map +1 -1
- package/pg-core/columns/jsonb.d.cts +0 -1
- package/pg-core/columns/jsonb.d.ts +0 -1
- package/pg-core/columns/jsonb.js.map +1 -1
- package/pg-core/columns/line.cjs +2 -0
- package/pg-core/columns/line.cjs.map +1 -1
- package/pg-core/columns/line.d.cts +2 -2
- package/pg-core/columns/line.d.ts +2 -2
- package/pg-core/columns/line.js +2 -0
- package/pg-core/columns/line.js.map +1 -1
- package/pg-core/columns/macaddr.cjs.map +1 -1
- package/pg-core/columns/macaddr.d.cts +0 -1
- package/pg-core/columns/macaddr.d.ts +0 -1
- package/pg-core/columns/macaddr.js.map +1 -1
- package/pg-core/columns/macaddr8.cjs.map +1 -1
- package/pg-core/columns/macaddr8.d.cts +0 -1
- package/pg-core/columns/macaddr8.d.ts +0 -1
- package/pg-core/columns/macaddr8.js.map +1 -1
- package/pg-core/columns/numeric.cjs.map +1 -1
- package/pg-core/columns/numeric.d.cts +0 -3
- package/pg-core/columns/numeric.d.ts +0 -3
- package/pg-core/columns/numeric.js.map +1 -1
- package/pg-core/columns/point.cjs +2 -0
- package/pg-core/columns/point.cjs.map +1 -1
- package/pg-core/columns/point.d.cts +2 -2
- package/pg-core/columns/point.d.ts +2 -2
- package/pg-core/columns/point.js +2 -0
- package/pg-core/columns/point.js.map +1 -1
- package/pg-core/columns/postgis_extension/geometry.cjs +14 -8
- package/pg-core/columns/postgis_extension/geometry.cjs.map +1 -1
- package/pg-core/columns/postgis_extension/geometry.d.cts +16 -6
- package/pg-core/columns/postgis_extension/geometry.d.ts +16 -6
- package/pg-core/columns/postgis_extension/geometry.js +14 -8
- package/pg-core/columns/postgis_extension/geometry.js.map +1 -1
- package/pg-core/columns/postgis_extension/utils.cjs +3 -3
- package/pg-core/columns/postgis_extension/utils.cjs.map +1 -1
- package/pg-core/columns/postgis_extension/utils.d.cts +4 -1
- package/pg-core/columns/postgis_extension/utils.d.ts +4 -1
- package/pg-core/columns/postgis_extension/utils.js +3 -3
- package/pg-core/columns/postgis_extension/utils.js.map +1 -1
- package/pg-core/columns/real.cjs.map +1 -1
- package/pg-core/columns/real.d.cts +0 -1
- package/pg-core/columns/real.d.ts +0 -1
- package/pg-core/columns/real.js.map +1 -1
- package/pg-core/columns/serial.cjs.map +1 -1
- package/pg-core/columns/serial.d.cts +0 -1
- package/pg-core/columns/serial.d.ts +0 -1
- package/pg-core/columns/serial.js.map +1 -1
- package/pg-core/columns/smallint.cjs.map +1 -1
- package/pg-core/columns/smallint.d.cts +0 -1
- package/pg-core/columns/smallint.d.ts +0 -1
- package/pg-core/columns/smallint.js.map +1 -1
- package/pg-core/columns/smallserial.cjs.map +1 -1
- package/pg-core/columns/smallserial.d.cts +0 -1
- package/pg-core/columns/smallserial.d.ts +0 -1
- package/pg-core/columns/smallserial.js.map +1 -1
- package/pg-core/columns/text.cjs.map +1 -1
- package/pg-core/columns/text.d.cts +0 -1
- package/pg-core/columns/text.d.ts +0 -1
- package/pg-core/columns/text.js.map +1 -1
- package/pg-core/columns/time.cjs.map +1 -1
- package/pg-core/columns/time.d.cts +0 -1
- package/pg-core/columns/time.d.ts +0 -1
- package/pg-core/columns/time.js.map +1 -1
- package/pg-core/columns/timestamp.cjs.map +1 -1
- package/pg-core/columns/timestamp.d.cts +0 -2
- package/pg-core/columns/timestamp.d.ts +0 -2
- package/pg-core/columns/timestamp.js.map +1 -1
- package/pg-core/columns/uuid.cjs.map +1 -1
- package/pg-core/columns/uuid.d.cts +0 -1
- package/pg-core/columns/uuid.d.ts +0 -1
- package/pg-core/columns/uuid.js.map +1 -1
- package/pg-core/columns/varchar.cjs.map +1 -1
- package/pg-core/columns/varchar.d.cts +0 -1
- package/pg-core/columns/varchar.d.ts +0 -1
- package/pg-core/columns/varchar.js.map +1 -1
- package/pg-core/columns/vector_extension/bit.cjs.map +1 -1
- package/pg-core/columns/vector_extension/bit.d.cts +0 -1
- package/pg-core/columns/vector_extension/bit.d.ts +0 -1
- package/pg-core/columns/vector_extension/bit.js.map +1 -1
- package/pg-core/columns/vector_extension/halfvec.cjs.map +1 -1
- package/pg-core/columns/vector_extension/halfvec.d.cts +0 -1
- package/pg-core/columns/vector_extension/halfvec.d.ts +0 -1
- package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
- package/pg-core/columns/vector_extension/sparsevec.cjs.map +1 -1
- package/pg-core/columns/vector_extension/sparsevec.d.cts +0 -1
- package/pg-core/columns/vector_extension/sparsevec.d.ts +0 -1
- package/pg-core/columns/vector_extension/sparsevec.js.map +1 -1
- package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
- package/pg-core/columns/vector_extension/vector.d.cts +0 -1
- package/pg-core/columns/vector_extension/vector.d.ts +0 -1
- package/pg-core/columns/vector_extension/vector.js.map +1 -1
- package/pg-core/dialect.cjs +4 -2
- package/pg-core/dialect.cjs.map +1 -1
- package/pg-core/dialect.js +11 -3
- package/pg-core/dialect.js.map +1 -1
- package/pg-core/foreign-keys.cjs +4 -0
- package/pg-core/foreign-keys.cjs.map +1 -1
- package/pg-core/foreign-keys.d.cts +2 -0
- package/pg-core/foreign-keys.d.ts +2 -0
- package/pg-core/foreign-keys.js +4 -0
- package/pg-core/foreign-keys.js.map +1 -1
- package/pg-core/indexes.cjs +2 -0
- package/pg-core/indexes.cjs.map +1 -1
- package/pg-core/indexes.d.cts +1 -0
- package/pg-core/indexes.d.ts +1 -0
- package/pg-core/indexes.js +2 -0
- package/pg-core/indexes.js.map +1 -1
- package/pg-core/primary-keys.cjs +2 -0
- package/pg-core/primary-keys.cjs.map +1 -1
- package/pg-core/primary-keys.d.cts +1 -0
- package/pg-core/primary-keys.d.ts +1 -0
- package/pg-core/primary-keys.js +2 -0
- package/pg-core/primary-keys.js.map +1 -1
- package/pg-core/query-builders/count.cjs.map +1 -1
- package/pg-core/query-builders/count.d.cts +4 -3
- package/pg-core/query-builders/count.d.ts +4 -3
- package/pg-core/query-builders/count.js.map +1 -1
- package/pg-core/query-builders/insert.cjs.map +1 -1
- package/pg-core/query-builders/insert.d.cts +6 -9
- package/pg-core/query-builders/insert.d.ts +6 -9
- package/pg-core/query-builders/insert.js.map +1 -1
- package/pg-core/query-builders/select.cjs +6 -7
- package/pg-core/query-builders/select.cjs.map +1 -1
- package/pg-core/query-builders/select.js +2 -2
- package/pg-core/query-builders/select.js.map +1 -1
- package/pg-core/query-builders/update.cjs.map +1 -1
- package/pg-core/query-builders/update.d.cts +1 -1
- package/pg-core/query-builders/update.d.ts +1 -1
- package/pg-core/query-builders/update.js.map +1 -1
- package/pg-core/schema.cjs +12 -0
- package/pg-core/schema.cjs.map +1 -1
- package/pg-core/schema.d.cts +2 -0
- package/pg-core/schema.d.ts +2 -0
- package/pg-core/schema.js +13 -1
- package/pg-core/schema.js.map +1 -1
- package/pg-core/table.cjs +15 -2
- package/pg-core/table.cjs.map +1 -1
- package/pg-core/table.d.cts +5 -1
- package/pg-core/table.d.ts +5 -1
- package/pg-core/table.js +15 -2
- package/pg-core/table.js.map +1 -1
- package/pg-core/unique-constraint.cjs +2 -0
- package/pg-core/unique-constraint.cjs.map +1 -1
- package/pg-core/unique-constraint.d.cts +1 -0
- package/pg-core/unique-constraint.d.ts +1 -0
- package/pg-core/unique-constraint.js +2 -0
- package/pg-core/unique-constraint.js.map +1 -1
- package/pg-core/utils.cjs +1 -2
- package/pg-core/utils.cjs.map +1 -1
- package/pg-core/utils.d.cts +1 -1
- package/pg-core/utils.d.ts +1 -1
- package/pg-core/utils.js +1 -2
- package/pg-core/utils.js.map +1 -1
- package/pg-core/view-common.cjs +3 -0
- package/pg-core/view-common.cjs.map +1 -1
- package/pg-core/view-common.d.cts +1 -0
- package/pg-core/view-common.d.ts +1 -0
- package/pg-core/view-common.js +2 -0
- package/pg-core/view-common.js.map +1 -1
- package/pg-core/view.cjs +2 -5
- package/pg-core/view.cjs.map +1 -1
- package/pg-core/view.d.cts +1 -2
- package/pg-core/view.d.ts +1 -2
- package/pg-core/view.js +1 -3
- package/pg-core/view.js.map +1 -1
- package/pglite/driver.cjs +10 -14
- package/pglite/driver.cjs.map +1 -1
- package/pglite/driver.d.cts +3 -3
- package/pglite/driver.d.ts +3 -3
- package/pglite/driver.js +10 -14
- package/pglite/driver.js.map +1 -1
- package/planetscale-serverless/driver.cjs +11 -15
- package/planetscale-serverless/driver.cjs.map +1 -1
- package/planetscale-serverless/driver.d.cts +3 -3
- package/planetscale-serverless/driver.d.ts +3 -3
- package/planetscale-serverless/driver.js +11 -15
- package/planetscale-serverless/driver.js.map +1 -1
- package/postgres-js/driver.cjs +10 -14
- package/postgres-js/driver.cjs.map +1 -1
- package/postgres-js/driver.d.cts +3 -3
- package/postgres-js/driver.d.ts +3 -3
- package/postgres-js/driver.js +10 -14
- package/postgres-js/driver.js.map +1 -1
- package/relations.cjs +2 -0
- package/relations.cjs.map +1 -1
- package/relations.d.cts +3 -3
- package/relations.d.ts +3 -3
- package/relations.js +3 -1
- package/relations.js.map +1 -1
- package/selection-proxy.cjs +4 -3
- package/selection-proxy.cjs.map +1 -1
- package/selection-proxy.js +5 -4
- package/selection-proxy.js.map +1 -1
- package/singlestore/driver.cjs +19 -26
- package/singlestore/driver.cjs.map +1 -1
- package/singlestore/driver.d.cts +3 -3
- package/singlestore/driver.d.ts +3 -3
- package/singlestore/driver.js +19 -26
- package/singlestore/driver.js.map +1 -1
- package/singlestore/session.cjs.map +1 -1
- package/singlestore/session.js.map +1 -1
- package/singlestore-core/columns/bigint.cjs.map +1 -1
- package/singlestore-core/columns/bigint.d.cts +0 -3
- package/singlestore-core/columns/bigint.d.ts +0 -3
- package/singlestore-core/columns/bigint.js.map +1 -1
- package/singlestore-core/columns/binary.cjs +0 -1
- package/singlestore-core/columns/binary.cjs.map +1 -1
- package/singlestore-core/columns/binary.d.cts +0 -2
- package/singlestore-core/columns/binary.d.ts +0 -2
- package/singlestore-core/columns/binary.js +0 -1
- package/singlestore-core/columns/binary.js.map +1 -1
- package/singlestore-core/columns/boolean.cjs.map +1 -1
- package/singlestore-core/columns/boolean.d.cts +0 -1
- package/singlestore-core/columns/boolean.d.ts +0 -1
- package/singlestore-core/columns/boolean.js.map +1 -1
- package/singlestore-core/columns/char.cjs +0 -1
- package/singlestore-core/columns/char.cjs.map +1 -1
- package/singlestore-core/columns/char.d.cts +0 -2
- package/singlestore-core/columns/char.d.ts +0 -2
- package/singlestore-core/columns/char.js +0 -1
- package/singlestore-core/columns/char.js.map +1 -1
- package/singlestore-core/columns/common.cjs +0 -4
- package/singlestore-core/columns/common.cjs.map +1 -1
- package/singlestore-core/columns/common.d.cts +1 -1
- package/singlestore-core/columns/common.d.ts +1 -1
- package/singlestore-core/columns/common.js +0 -4
- package/singlestore-core/columns/common.js.map +1 -1
- package/singlestore-core/columns/custom.cjs.map +1 -1
- package/singlestore-core/columns/custom.d.cts +0 -1
- package/singlestore-core/columns/custom.d.ts +0 -1
- package/singlestore-core/columns/custom.js.map +1 -1
- package/singlestore-core/columns/date.cjs.map +1 -1
- package/singlestore-core/columns/date.d.cts +0 -2
- package/singlestore-core/columns/date.d.ts +0 -2
- package/singlestore-core/columns/date.js.map +1 -1
- package/singlestore-core/columns/datetime.cjs.map +1 -1
- package/singlestore-core/columns/datetime.d.cts +0 -2
- package/singlestore-core/columns/datetime.d.ts +0 -2
- package/singlestore-core/columns/datetime.js.map +1 -1
- package/singlestore-core/columns/decimal.cjs.map +1 -1
- package/singlestore-core/columns/decimal.d.cts +0 -3
- package/singlestore-core/columns/decimal.d.ts +0 -3
- package/singlestore-core/columns/decimal.js.map +1 -1
- package/singlestore-core/columns/double.cjs.map +1 -1
- package/singlestore-core/columns/double.d.cts +0 -1
- package/singlestore-core/columns/double.d.ts +0 -1
- package/singlestore-core/columns/double.js.map +1 -1
- package/singlestore-core/columns/enum.cjs.map +1 -1
- package/singlestore-core/columns/enum.d.cts +0 -1
- package/singlestore-core/columns/enum.d.ts +0 -1
- package/singlestore-core/columns/enum.js.map +1 -1
- package/singlestore-core/columns/float.cjs.map +1 -1
- package/singlestore-core/columns/float.d.cts +0 -1
- package/singlestore-core/columns/float.d.ts +0 -1
- package/singlestore-core/columns/float.js.map +1 -1
- package/singlestore-core/columns/int.cjs.map +1 -1
- package/singlestore-core/columns/int.d.cts +0 -1
- package/singlestore-core/columns/int.d.ts +0 -1
- package/singlestore-core/columns/int.js.map +1 -1
- package/singlestore-core/columns/json.cjs.map +1 -1
- package/singlestore-core/columns/json.d.cts +0 -1
- package/singlestore-core/columns/json.d.ts +0 -1
- package/singlestore-core/columns/json.js.map +1 -1
- package/singlestore-core/columns/mediumint.cjs.map +1 -1
- package/singlestore-core/columns/mediumint.d.cts +0 -1
- package/singlestore-core/columns/mediumint.d.ts +0 -1
- package/singlestore-core/columns/mediumint.js.map +1 -1
- package/singlestore-core/columns/real.cjs.map +1 -1
- package/singlestore-core/columns/real.d.cts +0 -1
- package/singlestore-core/columns/real.d.ts +0 -1
- package/singlestore-core/columns/real.js.map +1 -1
- package/singlestore-core/columns/serial.cjs.map +1 -1
- package/singlestore-core/columns/serial.d.cts +0 -1
- package/singlestore-core/columns/serial.d.ts +0 -1
- package/singlestore-core/columns/serial.js.map +1 -1
- package/singlestore-core/columns/smallint.cjs.map +1 -1
- package/singlestore-core/columns/smallint.d.cts +0 -1
- package/singlestore-core/columns/smallint.d.ts +0 -1
- package/singlestore-core/columns/smallint.js.map +1 -1
- package/singlestore-core/columns/text.cjs.map +1 -1
- package/singlestore-core/columns/text.d.cts +0 -1
- package/singlestore-core/columns/text.d.ts +0 -1
- package/singlestore-core/columns/text.js.map +1 -1
- package/singlestore-core/columns/time.cjs.map +1 -1
- package/singlestore-core/columns/time.d.cts +0 -1
- package/singlestore-core/columns/time.d.ts +0 -1
- package/singlestore-core/columns/time.js.map +1 -1
- package/singlestore-core/columns/timestamp.cjs.map +1 -1
- package/singlestore-core/columns/timestamp.d.cts +0 -2
- package/singlestore-core/columns/timestamp.d.ts +0 -2
- package/singlestore-core/columns/timestamp.js.map +1 -1
- package/singlestore-core/columns/tinyint.cjs.map +1 -1
- package/singlestore-core/columns/tinyint.d.cts +0 -1
- package/singlestore-core/columns/tinyint.d.ts +0 -1
- package/singlestore-core/columns/tinyint.js.map +1 -1
- package/singlestore-core/columns/varbinary.cjs.map +1 -1
- package/singlestore-core/columns/varbinary.d.cts +0 -1
- package/singlestore-core/columns/varbinary.d.ts +0 -1
- package/singlestore-core/columns/varbinary.js.map +1 -1
- package/singlestore-core/columns/varchar.cjs.map +1 -1
- package/singlestore-core/columns/varchar.d.cts +0 -1
- package/singlestore-core/columns/varchar.d.ts +0 -1
- package/singlestore-core/columns/varchar.js.map +1 -1
- package/singlestore-core/columns/vector.cjs.map +1 -1
- package/singlestore-core/columns/vector.d.cts +0 -2
- package/singlestore-core/columns/vector.d.ts +0 -2
- package/singlestore-core/columns/vector.js.map +1 -1
- package/singlestore-core/columns/year.cjs.map +1 -1
- package/singlestore-core/columns/year.d.cts +0 -1
- package/singlestore-core/columns/year.d.ts +0 -1
- package/singlestore-core/columns/year.js.map +1 -1
- package/singlestore-core/dialect.cjs +4 -2
- package/singlestore-core/dialect.cjs.map +1 -1
- package/singlestore-core/dialect.js +11 -3
- package/singlestore-core/dialect.js.map +1 -1
- package/singlestore-core/indexes.cjs +2 -0
- package/singlestore-core/indexes.cjs.map +1 -1
- package/singlestore-core/indexes.d.cts +1 -0
- package/singlestore-core/indexes.d.ts +1 -0
- package/singlestore-core/indexes.js +2 -0
- package/singlestore-core/indexes.js.map +1 -1
- package/singlestore-core/primary-keys.cjs +2 -0
- package/singlestore-core/primary-keys.cjs.map +1 -1
- package/singlestore-core/primary-keys.d.cts +1 -0
- package/singlestore-core/primary-keys.d.ts +1 -0
- package/singlestore-core/primary-keys.js +2 -0
- package/singlestore-core/primary-keys.js.map +1 -1
- package/singlestore-core/query-builders/count.cjs.map +1 -1
- package/singlestore-core/query-builders/count.d.cts +1 -1
- package/singlestore-core/query-builders/count.d.ts +1 -1
- package/singlestore-core/query-builders/count.js.map +1 -1
- package/singlestore-core/query-builders/insert.cjs.map +1 -1
- package/singlestore-core/query-builders/insert.d.cts +1 -1
- package/singlestore-core/query-builders/insert.d.ts +1 -1
- package/singlestore-core/query-builders/insert.js.map +1 -1
- package/singlestore-core/query-builders/update.cjs.map +1 -1
- package/singlestore-core/query-builders/update.d.cts +1 -1
- package/singlestore-core/query-builders/update.d.ts +1 -1
- package/singlestore-core/query-builders/update.js.map +1 -1
- package/singlestore-core/unique-constraint.cjs +2 -0
- package/singlestore-core/unique-constraint.cjs.map +1 -1
- package/singlestore-core/unique-constraint.d.cts +3 -2
- package/singlestore-core/unique-constraint.d.ts +3 -2
- package/singlestore-core/unique-constraint.js +2 -0
- package/singlestore-core/unique-constraint.js.map +1 -1
- package/sql/sql.cjs +11 -10
- package/sql/sql.cjs.map +1 -1
- package/sql/sql.d.cts +3 -3
- package/sql/sql.d.ts +3 -3
- package/sql/sql.js +11 -10
- package/sql/sql.js.map +1 -1
- package/sql-js/session.cjs.map +1 -1
- package/sql-js/session.js.map +1 -1
- package/sqlite-cloud/driver.cjs +6 -10
- package/sqlite-cloud/driver.cjs.map +1 -1
- package/sqlite-cloud/driver.d.cts +3 -3
- package/sqlite-cloud/driver.d.ts +3 -3
- package/sqlite-cloud/driver.js +6 -10
- package/sqlite-cloud/driver.js.map +1 -1
- package/sqlite-core/columns/blob.cjs.map +1 -1
- package/sqlite-core/columns/blob.d.cts +0 -3
- package/sqlite-core/columns/blob.d.ts +0 -3
- package/sqlite-core/columns/blob.js.map +1 -1
- package/sqlite-core/columns/common.cjs +0 -4
- package/sqlite-core/columns/common.cjs.map +1 -1
- package/sqlite-core/columns/common.js +0 -4
- package/sqlite-core/columns/common.js.map +1 -1
- package/sqlite-core/columns/custom.cjs.map +1 -1
- package/sqlite-core/columns/custom.d.cts +0 -1
- package/sqlite-core/columns/custom.d.ts +0 -1
- package/sqlite-core/columns/custom.js.map +1 -1
- package/sqlite-core/columns/integer.cjs.map +1 -1
- package/sqlite-core/columns/integer.d.cts +0 -3
- package/sqlite-core/columns/integer.d.ts +0 -3
- package/sqlite-core/columns/integer.js.map +1 -1
- package/sqlite-core/columns/numeric.cjs.map +1 -1
- package/sqlite-core/columns/numeric.d.cts +0 -3
- package/sqlite-core/columns/numeric.d.ts +0 -3
- package/sqlite-core/columns/numeric.js.map +1 -1
- package/sqlite-core/columns/real.cjs.map +1 -1
- package/sqlite-core/columns/real.d.cts +0 -1
- package/sqlite-core/columns/real.d.ts +0 -1
- package/sqlite-core/columns/real.js.map +1 -1
- package/sqlite-core/columns/text.cjs.map +1 -1
- package/sqlite-core/columns/text.d.cts +0 -2
- package/sqlite-core/columns/text.d.ts +0 -2
- package/sqlite-core/columns/text.js.map +1 -1
- package/sqlite-core/dialect.cjs +8 -5
- package/sqlite-core/dialect.cjs.map +1 -1
- package/sqlite-core/dialect.js +15 -6
- package/sqlite-core/dialect.js.map +1 -1
- package/sqlite-core/foreign-keys.cjs +3 -0
- package/sqlite-core/foreign-keys.cjs.map +1 -1
- package/sqlite-core/foreign-keys.d.cts +1 -14
- package/sqlite-core/foreign-keys.d.ts +1 -14
- package/sqlite-core/foreign-keys.js +3 -0
- package/sqlite-core/foreign-keys.js.map +1 -1
- package/sqlite-core/indexes.cjs +2 -0
- package/sqlite-core/indexes.cjs.map +1 -1
- package/sqlite-core/indexes.d.cts +1 -0
- package/sqlite-core/indexes.d.ts +1 -0
- package/sqlite-core/indexes.js +2 -0
- package/sqlite-core/indexes.js.map +1 -1
- package/sqlite-core/primary-keys.cjs +2 -0
- package/sqlite-core/primary-keys.cjs.map +1 -1
- package/sqlite-core/primary-keys.d.cts +1 -0
- package/sqlite-core/primary-keys.d.ts +1 -0
- package/sqlite-core/primary-keys.js +2 -0
- package/sqlite-core/primary-keys.js.map +1 -1
- package/sqlite-core/query-builders/count.cjs.map +1 -1
- package/sqlite-core/query-builders/count.d.cts +1 -1
- package/sqlite-core/query-builders/count.d.ts +1 -1
- package/sqlite-core/query-builders/count.js.map +1 -1
- package/sqlite-core/query-builders/insert.cjs.map +1 -1
- package/sqlite-core/query-builders/insert.d.cts +2 -2
- package/sqlite-core/query-builders/insert.d.ts +2 -2
- package/sqlite-core/query-builders/insert.js.map +1 -1
- package/sqlite-core/query-builders/update.cjs.map +1 -1
- package/sqlite-core/query-builders/update.d.cts +1 -1
- package/sqlite-core/query-builders/update.d.ts +1 -1
- package/sqlite-core/query-builders/update.js.map +1 -1
- package/sqlite-core/unique-constraint.cjs +2 -0
- package/sqlite-core/unique-constraint.cjs.map +1 -1
- package/sqlite-core/unique-constraint.d.cts +3 -2
- package/sqlite-core/unique-constraint.d.ts +3 -2
- package/sqlite-core/unique-constraint.js +2 -0
- package/sqlite-core/unique-constraint.js.map +1 -1
- package/sqlite-proxy/session.cjs +0 -1
- package/sqlite-proxy/session.cjs.map +1 -1
- package/sqlite-proxy/session.js +0 -1
- package/sqlite-proxy/session.js.map +1 -1
- package/table.cjs +0 -1
- package/table.cjs.map +1 -1
- package/table.d.cts +2 -3
- package/table.d.ts +2 -3
- package/table.js +0 -1
- package/table.js.map +1 -1
- package/tidb-serverless/driver.cjs +8 -12
- package/tidb-serverless/driver.cjs.map +1 -1
- package/tidb-serverless/driver.d.cts +3 -3
- package/tidb-serverless/driver.d.ts +3 -3
- package/tidb-serverless/driver.js +8 -12
- package/tidb-serverless/driver.js.map +1 -1
- package/tracing.cjs +1 -1
- package/tracing.cjs.map +1 -1
- package/tracing.js +1 -1
- package/tracing.js.map +1 -1
- package/tursodatabase/database.cjs +6 -10
- package/tursodatabase/database.cjs.map +1 -1
- package/tursodatabase/database.d.cts +3 -3
- package/tursodatabase/database.d.ts +3 -3
- package/tursodatabase/database.js +6 -10
- package/tursodatabase/database.js.map +1 -1
- package/tursodatabase/session.cjs +0 -2
- package/tursodatabase/session.cjs.map +1 -1
- package/tursodatabase/session.js +0 -2
- package/tursodatabase/session.js.map +1 -1
- package/tursodatabase/wasm.cjs +6 -10
- package/tursodatabase/wasm.cjs.map +1 -1
- package/tursodatabase/wasm.d.cts +3 -3
- package/tursodatabase/wasm.d.ts +3 -3
- package/tursodatabase/wasm.js +6 -10
- package/tursodatabase/wasm.js.map +1 -1
- package/vercel-postgres/session.cjs.map +1 -1
- package/vercel-postgres/session.js.map +1 -1
- package/version.cjs +2 -2
- package/version.cjs.map +1 -1
- package/version.d.cts +2 -2
- package/version.d.ts +2 -2
- package/version.js +2 -2
- package/version.js.map +1 -1
package/sqlite-cloud/driver.cjs
CHANGED
|
@@ -39,7 +39,6 @@ var import_entity = require("../entity.cjs");
|
|
|
39
39
|
var import_logger = require("../logger.cjs");
|
|
40
40
|
var import_db = require("../sqlite-core/db.cjs");
|
|
41
41
|
var import_dialect = require("../sqlite-core/dialect.cjs");
|
|
42
|
-
var import_utils = require("../utils.cjs");
|
|
43
42
|
var import_session = require("./session.cjs");
|
|
44
43
|
class SQLiteCloudDatabase extends import_db.BaseSQLiteDatabase {
|
|
45
44
|
static [import_entity.entityKind] = "SQLiteCloudDatabase";
|
|
@@ -88,16 +87,13 @@ function construct(client, config = {}) {
|
|
|
88
87
|
}
|
|
89
88
|
function drizzle(...params) {
|
|
90
89
|
if (typeof params[0] === "string") {
|
|
91
|
-
const
|
|
92
|
-
return construct(
|
|
90
|
+
const instance2 = new import_drivers.Database(params[0]);
|
|
91
|
+
return construct(instance2, params[1]);
|
|
93
92
|
}
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
return construct(instance, drizzleConfig);
|
|
99
|
-
}
|
|
100
|
-
return construct(params[0], params[1]);
|
|
93
|
+
const { connection, client, ...drizzleConfig } = params[0];
|
|
94
|
+
if (client) return construct(client, drizzleConfig);
|
|
95
|
+
const instance = typeof connection === "string" ? new import_drivers.Database(connection) : new import_drivers.Database(connection.path, connection);
|
|
96
|
+
return construct(instance, drizzleConfig);
|
|
101
97
|
}
|
|
102
98
|
((drizzle2) => {
|
|
103
99
|
function mock(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/sqlite-cloud/driver.ts"],"sourcesContent":["import { Database } from '@sqlitecloud/drivers';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/sqlite-cloud/driver.ts"],"sourcesContent":["import { Database } from '@sqlitecloud/drivers';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteCloudSession } from './session.ts';\n\nexport type SQLiteCloudRunResult = unknown;\n\nexport class SQLiteCloudDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', SQLiteCloudRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCloudDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteCloudSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: Database,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t$client: Database;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SQLiteCloudSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache },\n\t);\n\tconst db = new SQLiteCloudDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as SQLiteCloudSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as SQLiteCloudDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n\nexport type DatabaseOpts = (Database extends { new(path: string, opts: infer D): any } ? D : any) & {\n\tpath: string;\n};\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends Database = Database,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleConfig<TSchema, TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | DatabaseOpts;\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new Database(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tconst { connection, client, ...drizzleConfig } = params[0] as\n\t\t& { connection?: DatabaseOpts; client?: TClient }\n\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\tif (client) return construct(client, drizzleConfig) as any;\n\n\tconst instance = typeof connection === 'string'\n\t\t? new Database(connection)\n\t\t: new Database(connection.path, connection);\n\n\treturn construct(instance, drizzleConfig) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,qBAAyB;AACzB,SAAoB;AACpB,oBAA2B;AAC3B,oBAA8B;AAE9B,gBAAmC;AACnC,qBAAmC;AAEnC,qBAAmC;AAI5B,MAAM,4BAGH,6BAAuE;AAAA,EAChF,QAA0B,wBAAU,IAAY;AAQjD;AAGO,SAAS,UAIf,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,UAAU,IAAI,kCAAmB,EAAE,QAAQ,OAAO,OAAO,CAAC;AAChE,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,4BAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,EAAE,QAAQ,OAAO,OAAO,MAAM;AAAA,EAC/B;AACA,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IAKA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AACA,SAAO;AACR;AAMO,SAAS,WAKZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAMA,YAAW,IAAI,wBAAS,OAAO,CAAC,CAAC;AAEvC,WAAO,UAAUA,WAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,QAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAIzD,MAAI,OAAQ,QAAO,UAAU,QAAQ,aAAa;AAElD,QAAM,WAAW,OAAO,eAAe,WACpC,IAAI,wBAAS,UAAU,IACvB,IAAI,wBAAS,WAAW,MAAM,UAAU;AAE3C,SAAO,UAAU,UAAU,aAAa;AACzC;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KAIf,QAGC;AACD,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AATO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
|
|
@@ -2,7 +2,7 @@ import { Database } from '@sqlitecloud/drivers';
|
|
|
2
2
|
import { entityKind } from "../entity.cjs";
|
|
3
3
|
import type { AnyRelations, EmptyRelations } from "../relations.cjs";
|
|
4
4
|
import { BaseSQLiteDatabase } from "../sqlite-core/db.cjs";
|
|
5
|
-
import {
|
|
5
|
+
import type { DrizzleConfig } from "../utils.cjs";
|
|
6
6
|
export type SQLiteCloudRunResult = unknown;
|
|
7
7
|
export declare class SQLiteCloudDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends BaseSQLiteDatabase<'async', SQLiteCloudRunResult, TSchema, TRelations> {
|
|
8
8
|
static readonly [entityKind]: string;
|
|
@@ -13,9 +13,9 @@ export type DatabaseOpts = (Database extends {
|
|
|
13
13
|
path: string;
|
|
14
14
|
};
|
|
15
15
|
export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends Database = Database>(...params: [
|
|
16
|
-
|
|
16
|
+
string
|
|
17
17
|
] | [
|
|
18
|
-
|
|
18
|
+
string,
|
|
19
19
|
DrizzleConfig<TSchema, TRelations>
|
|
20
20
|
] | [
|
|
21
21
|
(DrizzleConfig<TSchema, TRelations> & ({
|
package/sqlite-cloud/driver.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { Database } from '@sqlitecloud/drivers';
|
|
|
2
2
|
import { entityKind } from "../entity.js";
|
|
3
3
|
import type { AnyRelations, EmptyRelations } from "../relations.js";
|
|
4
4
|
import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
|
|
5
|
-
import {
|
|
5
|
+
import type { DrizzleConfig } from "../utils.js";
|
|
6
6
|
export type SQLiteCloudRunResult = unknown;
|
|
7
7
|
export declare class SQLiteCloudDatabase<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations> extends BaseSQLiteDatabase<'async', SQLiteCloudRunResult, TSchema, TRelations> {
|
|
8
8
|
static readonly [entityKind]: string;
|
|
@@ -13,9 +13,9 @@ export type DatabaseOpts = (Database extends {
|
|
|
13
13
|
path: string;
|
|
14
14
|
};
|
|
15
15
|
export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>, TRelations extends AnyRelations = EmptyRelations, TClient extends Database = Database>(...params: [
|
|
16
|
-
|
|
16
|
+
string
|
|
17
17
|
] | [
|
|
18
|
-
|
|
18
|
+
string,
|
|
19
19
|
DrizzleConfig<TSchema, TRelations>
|
|
20
20
|
] | [
|
|
21
21
|
(DrizzleConfig<TSchema, TRelations> & ({
|
package/sqlite-cloud/driver.js
CHANGED
|
@@ -4,7 +4,6 @@ import { entityKind } from "../entity.js";
|
|
|
4
4
|
import { DefaultLogger } from "../logger.js";
|
|
5
5
|
import { BaseSQLiteDatabase } from "../sqlite-core/db.js";
|
|
6
6
|
import { SQLiteAsyncDialect } from "../sqlite-core/dialect.js";
|
|
7
|
-
import { isConfig } from "../utils.js";
|
|
8
7
|
import { SQLiteCloudSession } from "./session.js";
|
|
9
8
|
class SQLiteCloudDatabase extends BaseSQLiteDatabase {
|
|
10
9
|
static [entityKind] = "SQLiteCloudDatabase";
|
|
@@ -53,16 +52,13 @@ function construct(client, config = {}) {
|
|
|
53
52
|
}
|
|
54
53
|
function drizzle(...params) {
|
|
55
54
|
if (typeof params[0] === "string") {
|
|
56
|
-
const
|
|
57
|
-
return construct(
|
|
55
|
+
const instance2 = new Database(params[0]);
|
|
56
|
+
return construct(instance2, params[1]);
|
|
58
57
|
}
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
return construct(instance, drizzleConfig);
|
|
64
|
-
}
|
|
65
|
-
return construct(params[0], params[1]);
|
|
58
|
+
const { connection, client, ...drizzleConfig } = params[0];
|
|
59
|
+
if (client) return construct(client, drizzleConfig);
|
|
60
|
+
const instance = typeof connection === "string" ? new Database(connection) : new Database(connection.path, connection);
|
|
61
|
+
return construct(instance, drizzleConfig);
|
|
66
62
|
}
|
|
67
63
|
((drizzle2) => {
|
|
68
64
|
function mock(config) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/sqlite-cloud/driver.ts"],"sourcesContent":["import { Database } from '@sqlitecloud/drivers';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/sqlite-cloud/driver.ts"],"sourcesContent":["import { Database } from '@sqlitecloud/drivers';\nimport * as V1 from '~/_relations.ts';\nimport { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport type { AnyRelations, EmptyRelations } from '~/relations.ts';\nimport { BaseSQLiteDatabase } from '~/sqlite-core/db.ts';\nimport { SQLiteAsyncDialect } from '~/sqlite-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport { SQLiteCloudSession } from './session.ts';\n\nexport type SQLiteCloudRunResult = unknown;\n\nexport class SQLiteCloudDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n> extends BaseSQLiteDatabase<'async', SQLiteCloudRunResult, TSchema, TRelations> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCloudDatabase';\n\n\t/** @internal */\n\tdeclare readonly session: SQLiteCloudSession<\n\t\tTSchema,\n\t\tTRelations,\n\t\tV1.ExtractTablesWithRelations<TSchema>\n\t>;\n}\n\n/** @internal */\nexport function construct<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n>(\n\tclient: Database,\n\tconfig: DrizzleConfig<TSchema, TRelations> = {},\n): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t$client: Database;\n} {\n\tconst dialect = new SQLiteAsyncDialect({ casing: config.casing });\n\tlet logger;\n\tif (config.logger === true) {\n\t\tlogger = new DefaultLogger();\n\t} else if (config.logger !== false) {\n\t\tlogger = config.logger;\n\t}\n\n\tlet schema: V1.RelationalSchemaConfig<V1.TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = V1.extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tV1.createTableRelationsHelpers,\n\t\t);\n\t\tschema = {\n\t\t\tfullSchema: config.schema,\n\t\t\tschema: tablesConfig.tables,\n\t\t\ttableNamesMap: tablesConfig.tableNamesMap,\n\t\t};\n\t}\n\n\tconst relations = config.relations ?? {} as TRelations;\n\tconst session = new SQLiteCloudSession(\n\t\tclient,\n\t\tdialect,\n\t\trelations,\n\t\tschema,\n\t\t{ logger, cache: config.cache },\n\t);\n\tconst db = new SQLiteCloudDatabase(\n\t\t'async',\n\t\tdialect,\n\t\tsession as SQLiteCloudSession<\n\t\t\tTSchema,\n\t\t\tTRelations,\n\t\t\tV1.ExtractTablesWithRelations<TSchema>\n\t\t>,\n\t\trelations,\n\t\tschema as V1.RelationalSchemaConfig<any>,\n\t) as SQLiteCloudDatabase<TSchema, TRelations>;\n\t(<any> db).$client = client;\n\t(<any> db).$cache = config.cache;\n\tif ((<any> db).$cache) {\n\t\t(<any> db).$cache['invalidate'] = config.cache?.onMutate;\n\t}\n\treturn db as any;\n}\n\nexport type DatabaseOpts = (Database extends { new(path: string, opts: infer D): any } ? D : any) & {\n\tpath: string;\n};\n\nexport function drizzle<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n\tTRelations extends AnyRelations = EmptyRelations,\n\tTClient extends Database = Database,\n>(\n\t...params: [\n\t\tstring,\n\t] | [\n\t\tstring,\n\t\tDrizzleConfig<TSchema, TRelations>,\n\t] | [\n\t\t(\n\t\t\t& DrizzleConfig<TSchema, TRelations>\n\t\t\t& ({\n\t\t\t\tconnection: string | DatabaseOpts;\n\t\t\t} | {\n\t\t\t\tclient: TClient;\n\t\t\t})\n\t\t),\n\t]\n): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t$client: TClient;\n} {\n\tif (typeof params[0] === 'string') {\n\t\tconst instance = new Database(params[0]);\n\n\t\treturn construct(instance, params[1]) as any;\n\t}\n\n\tconst { connection, client, ...drizzleConfig } = params[0] as\n\t\t& { connection?: DatabaseOpts; client?: TClient }\n\t\t& DrizzleConfig<TSchema, TRelations>;\n\n\tif (client) return construct(client, drizzleConfig) as any;\n\n\tconst instance = typeof connection === 'string'\n\t\t? new Database(connection)\n\t\t: new Database(connection.path, connection);\n\n\treturn construct(instance, drizzleConfig) as any;\n}\n\nexport namespace drizzle {\n\texport function mock<\n\t\tTSchema extends Record<string, unknown> = Record<string, never>,\n\t\tTRelations extends AnyRelations = EmptyRelations,\n\t>(\n\t\tconfig?: DrizzleConfig<TSchema, TRelations>,\n\t): SQLiteCloudDatabase<TSchema, TRelations> & {\n\t\t$client: '$client is not available on drizzle.mock()';\n\t} {\n\t\treturn construct({} as any, config) as any;\n\t}\n}\n"],"mappings":"AAAA,SAAS,gBAAgB;AACzB,YAAY,QAAQ;AACpB,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAE9B,SAAS,0BAA0B;AACnC,SAAS,0BAA0B;AAEnC,SAAS,0BAA0B;AAI5B,MAAM,4BAGH,mBAAuE;AAAA,EAChF,QAA0B,UAAU,IAAY;AAQjD;AAGO,SAAS,UAIf,QACA,SAA6C,CAAC,GAG7C;AACD,QAAM,UAAU,IAAI,mBAAmB,EAAE,QAAQ,OAAO,OAAO,CAAC;AAChE,MAAI;AACJ,MAAI,OAAO,WAAW,MAAM;AAC3B,aAAS,IAAI,cAAc;AAAA,EAC5B,WAAW,OAAO,WAAW,OAAO;AACnC,aAAS,OAAO;AAAA,EACjB;AAEA,MAAI;AACJ,MAAI,OAAO,QAAQ;AAClB,UAAM,eAAe,GAAG;AAAA,MACvB,OAAO;AAAA,MACP,GAAG;AAAA,IACJ;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,YAAY,OAAO,aAAa,CAAC;AACvC,QAAM,UAAU,IAAI;AAAA,IACnB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,EAAE,QAAQ,OAAO,OAAO,MAAM;AAAA,EAC/B;AACA,QAAM,KAAK,IAAI;AAAA,IACd;AAAA,IACA;AAAA,IACA;AAAA,IAKA;AAAA,IACA;AAAA,EACD;AACA,EAAO,GAAI,UAAU;AACrB,EAAO,GAAI,SAAS,OAAO;AAC3B,MAAW,GAAI,QAAQ;AACtB,IAAO,GAAI,OAAO,YAAY,IAAI,OAAO,OAAO;AAAA,EACjD;AACA,SAAO;AACR;AAMO,SAAS,WAKZ,QAiBF;AACD,MAAI,OAAO,OAAO,CAAC,MAAM,UAAU;AAClC,UAAMA,YAAW,IAAI,SAAS,OAAO,CAAC,CAAC;AAEvC,WAAO,UAAUA,WAAU,OAAO,CAAC,CAAC;AAAA,EACrC;AAEA,QAAM,EAAE,YAAY,QAAQ,GAAG,cAAc,IAAI,OAAO,CAAC;AAIzD,MAAI,OAAQ,QAAO,UAAU,QAAQ,aAAa;AAElD,QAAM,WAAW,OAAO,eAAe,WACpC,IAAI,SAAS,UAAU,IACvB,IAAI,SAAS,WAAW,MAAM,UAAU;AAE3C,SAAO,UAAU,UAAU,aAAa;AACzC;AAAA,CAEO,CAAUC,aAAV;AACC,WAAS,KAIf,QAGC;AACD,WAAO,UAAU,CAAC,GAAU,MAAM;AAAA,EACnC;AATO,EAAAA,SAAS;AAAA,GADA;","names":["instance","drizzle"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/blob.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, textDecoder } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\ntype BlobMode = 'buffer' | 'json' | 'bigint';\n\nfunction hexToText(hexString: string) {\n\tlet result = '';\n\tfor (let i = 0; i < hexString.length; i += 2) {\n\t\tconst hexPair = hexString.slice(i, i + 2);\n\t\tconst decimalValue = Number.parseInt(hexPair, 16);\n\t\tresult += String.fromCodePoint(decimalValue);\n\t}\n\treturn result;\n}\n\nexport class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{\n\
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/blob.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, textDecoder } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\ntype BlobMode = 'buffer' | 'json' | 'bigint';\n\nfunction hexToText(hexString: string) {\n\tlet result = '';\n\tfor (let i = 0; i < hexString.length; i += 2) {\n\t\tconst hexPair = hexString.slice(i, i + 2);\n\t\tconst decimalValue = Number.parseInt(hexPair, 16);\n\t\tresult += String.fromCodePoint(decimalValue);\n\t}\n\treturn result;\n}\n\nexport class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBigInt(table, this.config as any);\n\t}\n}\n\nexport class SQLiteBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBigInt';\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer | string): bigint {\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn BigInt(hexToText(value));\n\t\t}\n\n\t\tif (typeof Buffer !== 'undefined' && Buffer.from) {\n\t\t\tconst buf = Buffer.isBuffer(value)\n\t\t\t\t? value\n\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t: value instanceof ArrayBuffer\n\t\t\t\t? Buffer.from(value)\n\t\t\t\t: value.buffer\n\t\t\t\t? Buffer.from(value.buffer, value.byteOffset, value.byteLength)\n\t\t\t\t: Buffer.from(value);\n\t\t\treturn BigInt(buf.toString('utf8'));\n\t\t}\n\n\t\treturn BigInt(textDecoder!.decode(value as ArrayBuffer));\n\t}\n\n\toverride mapToDriverValue(value: bigint): Buffer {\n\t\treturn Buffer.from(value.toString());\n\t}\n}\n\nexport class SQLiteBlobJsonBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteBlobJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBlobJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteBlobJson<T extends ColumnBaseConfig<'object json'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobJson';\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer | string): T['data'] {\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn JSON.parse(hexToText(value));\n\t\t}\n\n\t\tif (typeof Buffer !== 'undefined' && Buffer.from) {\n\t\t\tconst buf = Buffer.isBuffer(value)\n\t\t\t\t? value\n\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t: value instanceof ArrayBuffer\n\t\t\t\t? Buffer.from(value)\n\t\t\t\t: value.buffer\n\t\t\t\t? Buffer.from(value.buffer, value.byteOffset, value.byteLength)\n\t\t\t\t: Buffer.from(value);\n\t\t\treturn JSON.parse(buf.toString('utf8'));\n\t\t}\n\n\t\treturn JSON.parse(textDecoder!.decode(value as ArrayBuffer));\n\t}\n\n\toverride mapToDriverValue(value: T['data']): Buffer {\n\t\treturn Buffer.from(JSON.stringify(value));\n\t}\n}\n\nexport class SQLiteBlobBufferBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object buffer';\n\tdata: Buffer;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobBufferBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object buffer', 'SQLiteBlobBuffer');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBlobBuffer(table, this.config as any);\n\t}\n}\n\nexport class SQLiteBlobBuffer<T extends ColumnBaseConfig<'object buffer'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobBuffer';\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer): T['data'] {\n\t\tif (Buffer.isBuffer(value)) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn Buffer.from(value, 'hex');\n\t\t}\n\n\t\treturn Buffer.from(value as Uint8Array);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n}\n\nexport interface BlobConfig<TMode extends BlobMode = BlobMode> {\n\tmode: TMode;\n}\n\n/**\n * It's recommended to use `text('...', { mode: 'json' })` instead of `blob` in JSON mode, because it supports JSON functions:\n * >All JSON functions currently throw an error if any of their arguments are BLOBs because BLOBs are reserved for a future enhancement in which BLOBs will store the binary encoding for JSON.\n *\n * https://www.sqlite.org/json1.html\n */\nexport function blob<TMode extends BlobMode = BlobMode>(\n\tconfig?: BlobConfig<TMode>,\n): Equal<TMode, 'bigint'> extends true ? SQLiteBigIntBuilder\n\t: Equal<TMode, 'buffer'> extends true ? SQLiteBlobBufferBuilder\n\t: SQLiteBlobJsonBuilder;\nexport function blob<TMode extends BlobMode = BlobMode>(\n\tname: string,\n\tconfig?: BlobConfig<TMode>,\n): Equal<TMode, 'bigint'> extends true ? SQLiteBigIntBuilder\n\t: Equal<TMode, 'buffer'> extends true ? SQLiteBlobBufferBuilder\n\t: SQLiteBlobJsonBuilder;\nexport function blob(a?: string | BlobConfig, b?: BlobConfig) {\n\tconst { name, config } = getColumnNameAndConfig<BlobConfig | undefined>(a, b);\n\tif (config?.mode === 'json') {\n\t\treturn new SQLiteBlobJsonBuilder(name);\n\t}\n\tif (config?.mode === 'bigint') {\n\t\treturn new SQLiteBigIntBuilder(name);\n\t}\n\treturn new SQLiteBlobBufferBuilder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAE3B,mBAAgE;AAChE,oBAAkD;AAIlD,SAAS,UAAU,WAAmB;AACrC,MAAI,SAAS;AACb,WAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK,GAAG;AAC7C,UAAM,UAAU,UAAU,MAAM,GAAG,IAAI,CAAC;AACxC,UAAM,eAAe,OAAO,SAAS,SAAS,EAAE;AAChD,cAAU,OAAO,cAAc,YAAY;AAAA,EAC5C;AACA,SAAO;AACR;AAEO,MAAM,4BAA4B,kCAItC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,cAAc;AAAA,EAC3C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,aAAa,OAAO,KAAK,MAAa;AAAA,EAClD;AACD;AAEO,MAAM,qBAAiE,2BAAgB;AAAA,EAC7F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA2D;AAEtF,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,OAAO,UAAU,KAAK,CAAC;AAAA,IAC/B;AAEA,QAAI,OAAO,WAAW,eAAe,OAAO,MAAM;AACjD,YAAM,MAAM,OAAO,SAAS,KAAK,IAC9B,QAEA,iBAAiB,cACjB,OAAO,KAAK,KAAK,IACjB,MAAM,SACN,OAAO,KAAK,MAAM,QAAQ,MAAM,YAAY,MAAM,UAAU,IAC5D,OAAO,KAAK,KAAK;AACpB,aAAO,OAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IACnC;AAEA,WAAO,OAAO,yBAAa,OAAO,KAAoB,CAAC;AAAA,EACxD;AAAA,EAES,iBAAiB,OAAuB;AAChD,WAAO,OAAO,KAAK,MAAM,SAAS,CAAC;AAAA,EACpC;AACD;AAEO,MAAM,8BAA8B,kCAIxC;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,2BAAgB;AAAA,EAC9F,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA8D;AAEzF,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,KAAK,MAAM,UAAU,KAAK,CAAC;AAAA,IACnC;AAEA,QAAI,OAAO,WAAW,eAAe,OAAO,MAAM;AACjD,YAAM,MAAM,OAAO,SAAS,KAAK,IAC9B,QAEA,iBAAiB,cACjB,OAAO,KAAK,KAAK,IACjB,MAAM,SACN,OAAO,KAAK,MAAM,QAAQ,MAAM,YAAY,MAAM,UAAU,IAC5D,OAAO,KAAK,KAAK;AACpB,aAAO,KAAK,MAAM,IAAI,SAAS,MAAM,CAAC;AAAA,IACvC;AAEA,WAAO,KAAK,MAAM,yBAAa,OAAO,KAAoB,CAAC;AAAA,EAC5D;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,OAAO,KAAK,KAAK,UAAU,KAAK,CAAC;AAAA,EACzC;AACD;AAEO,MAAM,gCAAgC,kCAI1C;AAAA,EACF,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,kBAAkB;AAAA,EAChD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,iBAAiB,OAAO,KAAK,MAAa;AAAA,EACtD;AACD;AAEO,MAAM,yBAAsE,2BAAgB;AAAA,EAClG,QAA0B,wBAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAqD;AAChF,QAAI,OAAO,SAAS,KAAK,GAAG;AAC3B,aAAO;AAAA,IACR;AAGA,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,OAAO,KAAK,OAAO,KAAK;AAAA,IAChC;AAEA,WAAO,OAAO,KAAK,KAAmB;AAAA,EACvC;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAuBO,SAAS,KAAK,GAAyB,GAAgB;AAC7D,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA+C,GAAG,CAAC;AAC5E,MAAI,QAAQ,SAAS,QAAQ;AAC5B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,MAAI,QAAQ,SAAS,UAAU;AAC9B,WAAO,IAAI,oBAAoB,IAAI;AAAA,EACpC;AACA,SAAO,IAAI,wBAAwB,IAAI;AACxC;","names":[]}
|
|
@@ -4,7 +4,6 @@ import { type Equal } from "../../utils.cjs";
|
|
|
4
4
|
import { SQLiteColumn, SQLiteColumnBuilder } from "./common.cjs";
|
|
5
5
|
type BlobMode = 'buffer' | 'json' | 'bigint';
|
|
6
6
|
export declare class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{
|
|
7
|
-
name: string;
|
|
8
7
|
dataType: 'bigint int64';
|
|
9
8
|
data: bigint;
|
|
10
9
|
driverParam: Buffer;
|
|
@@ -19,7 +18,6 @@ export declare class SQLiteBigInt<T extends ColumnBaseConfig<'bigint int64'>> ex
|
|
|
19
18
|
mapToDriverValue(value: bigint): Buffer;
|
|
20
19
|
}
|
|
21
20
|
export declare class SQLiteBlobJsonBuilder extends SQLiteColumnBuilder<{
|
|
22
|
-
name: string;
|
|
23
21
|
dataType: 'object json';
|
|
24
22
|
data: unknown;
|
|
25
23
|
driverParam: Buffer;
|
|
@@ -34,7 +32,6 @@ export declare class SQLiteBlobJson<T extends ColumnBaseConfig<'object json'>> e
|
|
|
34
32
|
mapToDriverValue(value: T['data']): Buffer;
|
|
35
33
|
}
|
|
36
34
|
export declare class SQLiteBlobBufferBuilder extends SQLiteColumnBuilder<{
|
|
37
|
-
name: string;
|
|
38
35
|
dataType: 'object buffer';
|
|
39
36
|
data: Buffer;
|
|
40
37
|
driverParam: Buffer;
|
|
@@ -4,7 +4,6 @@ import { type Equal } from "../../utils.js";
|
|
|
4
4
|
import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
|
|
5
5
|
type BlobMode = 'buffer' | 'json' | 'bigint';
|
|
6
6
|
export declare class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{
|
|
7
|
-
name: string;
|
|
8
7
|
dataType: 'bigint int64';
|
|
9
8
|
data: bigint;
|
|
10
9
|
driverParam: Buffer;
|
|
@@ -19,7 +18,6 @@ export declare class SQLiteBigInt<T extends ColumnBaseConfig<'bigint int64'>> ex
|
|
|
19
18
|
mapToDriverValue(value: bigint): Buffer;
|
|
20
19
|
}
|
|
21
20
|
export declare class SQLiteBlobJsonBuilder extends SQLiteColumnBuilder<{
|
|
22
|
-
name: string;
|
|
23
21
|
dataType: 'object json';
|
|
24
22
|
data: unknown;
|
|
25
23
|
driverParam: Buffer;
|
|
@@ -34,7 +32,6 @@ export declare class SQLiteBlobJson<T extends ColumnBaseConfig<'object json'>> e
|
|
|
34
32
|
mapToDriverValue(value: T['data']): Buffer;
|
|
35
33
|
}
|
|
36
34
|
export declare class SQLiteBlobBufferBuilder extends SQLiteColumnBuilder<{
|
|
37
|
-
name: string;
|
|
38
35
|
dataType: 'object buffer';
|
|
39
36
|
data: Buffer;
|
|
40
37
|
driverParam: Buffer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/blob.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, textDecoder } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\ntype BlobMode = 'buffer' | 'json' | 'bigint';\n\nfunction hexToText(hexString: string) {\n\tlet result = '';\n\tfor (let i = 0; i < hexString.length; i += 2) {\n\t\tconst hexPair = hexString.slice(i, i + 2);\n\t\tconst decimalValue = Number.parseInt(hexPair, 16);\n\t\tresult += String.fromCodePoint(decimalValue);\n\t}\n\treturn result;\n}\n\nexport class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{\n\
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/blob.ts"],"sourcesContent":["import type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig, textDecoder } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\ntype BlobMode = 'buffer' | 'json' | 'bigint';\n\nfunction hexToText(hexString: string) {\n\tlet result = '';\n\tfor (let i = 0; i < hexString.length; i += 2) {\n\t\tconst hexPair = hexString.slice(i, i + 2);\n\t\tconst decimalValue = Number.parseInt(hexPair, 16);\n\t\tresult += String.fromCodePoint(decimalValue);\n\t}\n\treturn result;\n}\n\nexport class SQLiteBigIntBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'bigint int64';\n\tdata: bigint;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBigIntBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'bigint int64', 'SQLiteBigInt');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBigInt(table, this.config as any);\n\t}\n}\n\nexport class SQLiteBigInt<T extends ColumnBaseConfig<'bigint int64'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBigInt';\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer | string): bigint {\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn BigInt(hexToText(value));\n\t\t}\n\n\t\tif (typeof Buffer !== 'undefined' && Buffer.from) {\n\t\t\tconst buf = Buffer.isBuffer(value)\n\t\t\t\t? value\n\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t: value instanceof ArrayBuffer\n\t\t\t\t? Buffer.from(value)\n\t\t\t\t: value.buffer\n\t\t\t\t? Buffer.from(value.buffer, value.byteOffset, value.byteLength)\n\t\t\t\t: Buffer.from(value);\n\t\t\treturn BigInt(buf.toString('utf8'));\n\t\t}\n\n\t\treturn BigInt(textDecoder!.decode(value as ArrayBuffer));\n\t}\n\n\toverride mapToDriverValue(value: bigint): Buffer {\n\t\treturn Buffer.from(value.toString());\n\t}\n}\n\nexport class SQLiteBlobJsonBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object json';\n\tdata: unknown;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobJsonBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object json', 'SQLiteBlobJson');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBlobJson(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteBlobJson<T extends ColumnBaseConfig<'object json'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobJson';\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer | string): T['data'] {\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn JSON.parse(hexToText(value));\n\t\t}\n\n\t\tif (typeof Buffer !== 'undefined' && Buffer.from) {\n\t\t\tconst buf = Buffer.isBuffer(value)\n\t\t\t\t? value\n\t\t\t\t// oxlint-disable-next-line drizzle-internal/no-instanceof\n\t\t\t\t: value instanceof ArrayBuffer\n\t\t\t\t? Buffer.from(value)\n\t\t\t\t: value.buffer\n\t\t\t\t? Buffer.from(value.buffer, value.byteOffset, value.byteLength)\n\t\t\t\t: Buffer.from(value);\n\t\t\treturn JSON.parse(buf.toString('utf8'));\n\t\t}\n\n\t\treturn JSON.parse(textDecoder!.decode(value as ArrayBuffer));\n\t}\n\n\toverride mapToDriverValue(value: T['data']): Buffer {\n\t\treturn Buffer.from(JSON.stringify(value));\n\t}\n}\n\nexport class SQLiteBlobBufferBuilder extends SQLiteColumnBuilder<{\n\tdataType: 'object buffer';\n\tdata: Buffer;\n\tdriverParam: Buffer;\n}> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobBufferBuilder';\n\n\tconstructor(name: string) {\n\t\tsuper(name, 'object buffer', 'SQLiteBlobBuffer');\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteBlobBuffer(table, this.config as any);\n\t}\n}\n\nexport class SQLiteBlobBuffer<T extends ColumnBaseConfig<'object buffer'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteBlobBuffer';\n\n\toverride mapFromDriverValue(value: Buffer | Uint8Array | ArrayBuffer): T['data'] {\n\t\tif (Buffer.isBuffer(value)) {\n\t\t\treturn value;\n\t\t}\n\n\t\t// For RQBv2\n\t\tif (typeof value === 'string') {\n\t\t\treturn Buffer.from(value, 'hex');\n\t\t}\n\n\t\treturn Buffer.from(value as Uint8Array);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn 'blob';\n\t}\n}\n\nexport interface BlobConfig<TMode extends BlobMode = BlobMode> {\n\tmode: TMode;\n}\n\n/**\n * It's recommended to use `text('...', { mode: 'json' })` instead of `blob` in JSON mode, because it supports JSON functions:\n * >All JSON functions currently throw an error if any of their arguments are BLOBs because BLOBs are reserved for a future enhancement in which BLOBs will store the binary encoding for JSON.\n *\n * https://www.sqlite.org/json1.html\n */\nexport function blob<TMode extends BlobMode = BlobMode>(\n\tconfig?: BlobConfig<TMode>,\n): Equal<TMode, 'bigint'> extends true ? SQLiteBigIntBuilder\n\t: Equal<TMode, 'buffer'> extends true ? SQLiteBlobBufferBuilder\n\t: SQLiteBlobJsonBuilder;\nexport function blob<TMode extends BlobMode = BlobMode>(\n\tname: string,\n\tconfig?: BlobConfig<TMode>,\n): Equal<TMode, 'bigint'> extends true ? SQLiteBigIntBuilder\n\t: Equal<TMode, 'buffer'> extends true ? SQLiteBlobBufferBuilder\n\t: SQLiteBlobJsonBuilder;\nexport function blob(a?: string | BlobConfig, b?: BlobConfig) {\n\tconst { name, config } = getColumnNameAndConfig<BlobConfig | undefined>(a, b);\n\tif (config?.mode === 'json') {\n\t\treturn new SQLiteBlobJsonBuilder(name);\n\t}\n\tif (config?.mode === 'bigint') {\n\t\treturn new SQLiteBigIntBuilder(name);\n\t}\n\treturn new SQLiteBlobBufferBuilder(name);\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAE3B,SAAqB,wBAAwB,mBAAmB;AAChE,SAAS,cAAc,2BAA2B;AAIlD,SAAS,UAAU,WAAmB;AACrC,MAAI,SAAS;AACb,WAAS,IAAI,GAAG,IAAI,UAAU,QAAQ,KAAK,GAAG;AAC7C,UAAM,UAAU,UAAU,MAAM,GAAG,IAAI,CAAC;AACxC,UAAM,eAAe,OAAO,SAAS,SAAS,EAAE;AAChD,cAAU,OAAO,cAAc,YAAY;AAAA,EAC5C;AACA,SAAO;AACR;AAEO,MAAM,4BAA4B,oBAItC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,gBAAgB,cAAc;AAAA,EAC3C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,aAAa,OAAO,KAAK,MAAa;AAAA,EAClD;AACD;AAEO,MAAM,qBAAiE,aAAgB;AAAA,EAC7F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA2D;AAEtF,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,OAAO,UAAU,KAAK,CAAC;AAAA,IAC/B;AAEA,QAAI,OAAO,WAAW,eAAe,OAAO,MAAM;AACjD,YAAM,MAAM,OAAO,SAAS,KAAK,IAC9B,QAEA,iBAAiB,cACjB,OAAO,KAAK,KAAK,IACjB,MAAM,SACN,OAAO,KAAK,MAAM,QAAQ,MAAM,YAAY,MAAM,UAAU,IAC5D,OAAO,KAAK,KAAK;AACpB,aAAO,OAAO,IAAI,SAAS,MAAM,CAAC;AAAA,IACnC;AAEA,WAAO,OAAO,YAAa,OAAO,KAAoB,CAAC;AAAA,EACxD;AAAA,EAES,iBAAiB,OAAuB;AAChD,WAAO,OAAO,KAAK,MAAM,SAAS,CAAC;AAAA,EACpC;AACD;AAEO,MAAM,8BAA8B,oBAIxC;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,eAAe,gBAAgB;AAAA,EAC5C;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,uBAAkE,aAAgB;AAAA,EAC9F,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAA8D;AAEzF,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,KAAK,MAAM,UAAU,KAAK,CAAC;AAAA,IACnC;AAEA,QAAI,OAAO,WAAW,eAAe,OAAO,MAAM;AACjD,YAAM,MAAM,OAAO,SAAS,KAAK,IAC9B,QAEA,iBAAiB,cACjB,OAAO,KAAK,KAAK,IACjB,MAAM,SACN,OAAO,KAAK,MAAM,QAAQ,MAAM,YAAY,MAAM,UAAU,IAC5D,OAAO,KAAK,KAAK;AACpB,aAAO,KAAK,MAAM,IAAI,SAAS,MAAM,CAAC;AAAA,IACvC;AAEA,WAAO,KAAK,MAAM,YAAa,OAAO,KAAoB,CAAC;AAAA,EAC5D;AAAA,EAES,iBAAiB,OAA0B;AACnD,WAAO,OAAO,KAAK,KAAK,UAAU,KAAK,CAAC;AAAA,EACzC;AACD;AAEO,MAAM,gCAAgC,oBAI1C;AAAA,EACF,QAA0B,UAAU,IAAY;AAAA,EAEhD,YAAY,MAAc;AACzB,UAAM,MAAM,iBAAiB,kBAAkB;AAAA,EAChD;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI,iBAAiB,OAAO,KAAK,MAAa;AAAA,EACtD;AACD;AAEO,MAAM,yBAAsE,aAAgB;AAAA,EAClG,QAA0B,UAAU,IAAY;AAAA,EAEvC,mBAAmB,OAAqD;AAChF,QAAI,OAAO,SAAS,KAAK,GAAG;AAC3B,aAAO;AAAA,IACR;AAGA,QAAI,OAAO,UAAU,UAAU;AAC9B,aAAO,OAAO,KAAK,OAAO,KAAK;AAAA,IAChC;AAEA,WAAO,OAAO,KAAK,KAAmB;AAAA,EACvC;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAuBO,SAAS,KAAK,GAAyB,GAAgB;AAC7D,QAAM,EAAE,MAAM,OAAO,IAAI,uBAA+C,GAAG,CAAC;AAC5E,MAAI,QAAQ,SAAS,QAAQ;AAC5B,WAAO,IAAI,sBAAsB,IAAI;AAAA,EACtC;AACA,MAAI,QAAQ,SAAS,UAAU;AAC9B,WAAO,IAAI,oBAAoB,IAAI;AAAA,EACpC;AACA,SAAO,IAAI,wBAAwB,IAAI;AACxC;","names":[]}
|
|
@@ -26,7 +26,6 @@ var import_column_builder = require("../../column-builder.cjs");
|
|
|
26
26
|
var import_column = require("../../column.cjs");
|
|
27
27
|
var import_entity = require("../../entity.cjs");
|
|
28
28
|
var import_foreign_keys = require("../foreign-keys.cjs");
|
|
29
|
-
var import_unique_constraint = require("../unique-constraint.cjs");
|
|
30
29
|
class SQLiteColumnBuilder extends import_column_builder.ColumnBuilder {
|
|
31
30
|
static [import_entity.entityKind] = "SQLiteColumnBuilder";
|
|
32
31
|
foreignKeyConfigs = [];
|
|
@@ -71,9 +70,6 @@ class SQLiteColumn extends import_column.Column {
|
|
|
71
70
|
/** @internal */
|
|
72
71
|
table;
|
|
73
72
|
constructor(table, config) {
|
|
74
|
-
if (!config.uniqueName) {
|
|
75
|
-
config.uniqueName = (0, import_unique_constraint.uniqueKeyName)(table, [config.name]);
|
|
76
|
-
}
|
|
77
73
|
super(table, config);
|
|
78
74
|
this.table = table;
|
|
79
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasGenerated,\n} from '~/column-builder.ts';\nimport { ColumnBuilder } from '~/column-builder.ts';\nimport { Column } from '~/column.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/sqlite-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/sqlite-core/foreign-keys.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Update } from '~/utils.ts';\
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasGenerated,\n} from '~/column-builder.ts';\nimport { ColumnBuilder } from '~/column-builder.ts';\nimport { Column } from '~/column.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/sqlite-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/sqlite-core/foreign-keys.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Update } from '~/utils.ts';\n\nexport type SQLiteColumns = Record<string, SQLiteColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => SQLiteColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface SQLiteGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class SQLiteColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = object,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'SQLiteColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(\n\t\tref: ReferenceConfig['ref'],\n\t\tactions: ReferenceConfig['actions'] = {},\n\t): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(\n\t\tname?: string,\n\t): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: SQLiteGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: SQLiteColumn, table: SQLiteTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: SQLiteTable): SQLiteColumn;\n}\n\n// To understand how to use `SQLiteColumn` and `AnySQLiteColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class SQLiteColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'SQLiteColumn';\n\n\t/** @internal */\n\toverride readonly table: SQLiteTable;\n\n\tconstructor(\n\t\ttable: SQLiteTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnySQLiteColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = SQLiteColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,4BAA8B;AAC9B,oBAAuB;AAEvB,oBAA2B;AAG3B,0BAAkC;AAkB3B,MAAe,4BAIZ,oCAA+C;AAAA,EACxD,QAA0B,wBAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WACC,KACA,UAAsC,CAAC,GAChC;AACP,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OACC,MACO;AACP,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAsB,OAAkC;AACxE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,sCAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,qBAGZ,qBAA0B;AAAA,EACnC,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;","names":["ref","actions"]}
|
|
@@ -2,7 +2,6 @@ import { ColumnBuilder } from "../../column-builder.js";
|
|
|
2
2
|
import { Column } from "../../column.js";
|
|
3
3
|
import { entityKind } from "../../entity.js";
|
|
4
4
|
import { ForeignKeyBuilder } from "../foreign-keys.js";
|
|
5
|
-
import { uniqueKeyName } from "../unique-constraint.js";
|
|
6
5
|
class SQLiteColumnBuilder extends ColumnBuilder {
|
|
7
6
|
static [entityKind] = "SQLiteColumnBuilder";
|
|
8
7
|
foreignKeyConfigs = [];
|
|
@@ -47,9 +46,6 @@ class SQLiteColumn extends Column {
|
|
|
47
46
|
/** @internal */
|
|
48
47
|
table;
|
|
49
48
|
constructor(table, config) {
|
|
50
|
-
if (!config.uniqueName) {
|
|
51
|
-
config.uniqueName = uniqueKeyName(table, [config.name]);
|
|
52
|
-
}
|
|
53
49
|
super(table, config);
|
|
54
50
|
this.table = table;
|
|
55
51
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasGenerated,\n} from '~/column-builder.ts';\nimport { ColumnBuilder } from '~/column-builder.ts';\nimport { Column } from '~/column.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/sqlite-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/sqlite-core/foreign-keys.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Update } from '~/utils.ts';\
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnBuilderRuntimeConfig,\n\tColumnType,\n\tHasGenerated,\n} from '~/column-builder.ts';\nimport { ColumnBuilder } from '~/column-builder.ts';\nimport { Column } from '~/column.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport type { ForeignKey, UpdateDeleteAction } from '~/sqlite-core/foreign-keys.ts';\nimport { ForeignKeyBuilder } from '~/sqlite-core/foreign-keys.ts';\nimport type { SQLiteTable } from '~/sqlite-core/table.ts';\nimport type { Update } from '~/utils.ts';\n\nexport type SQLiteColumns = Record<string, SQLiteColumn<any>>;\n\nexport interface ReferenceConfig {\n\tref: () => SQLiteColumn;\n\tactions: {\n\t\tonUpdate?: UpdateDeleteAction;\n\t\tonDelete?: UpdateDeleteAction;\n\t};\n}\n\nexport interface SQLiteGeneratedColumnConfig {\n\tmode?: 'virtual' | 'stored';\n}\n\nexport abstract class SQLiteColumnBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = object,\n> extends ColumnBuilder<T, TRuntimeConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'SQLiteColumnBuilder';\n\n\tprivate foreignKeyConfigs: ReferenceConfig[] = [];\n\n\treferences(\n\t\tref: ReferenceConfig['ref'],\n\t\tactions: ReferenceConfig['actions'] = {},\n\t): this {\n\t\tthis.foreignKeyConfigs.push({ ref, actions });\n\t\treturn this;\n\t}\n\n\tunique(\n\t\tname?: string,\n\t): this {\n\t\tthis.config.isUnique = true;\n\t\tthis.config.uniqueName = name;\n\t\treturn this;\n\t}\n\n\tgeneratedAlwaysAs(as: SQL | T['data'] | (() => SQL), config?: SQLiteGeneratedColumnConfig): HasGenerated<this, {\n\t\ttype: 'always';\n\t}> {\n\t\tthis.config.generated = {\n\t\t\tas,\n\t\t\ttype: 'always',\n\t\t\tmode: config?.mode ?? 'virtual',\n\t\t};\n\t\treturn this as any;\n\t}\n\n\t/** @internal */\n\tbuildForeignKeys(column: SQLiteColumn, table: SQLiteTable): ForeignKey[] {\n\t\treturn this.foreignKeyConfigs.map(({ ref, actions }) => {\n\t\t\treturn ((ref, actions) => {\n\t\t\t\tconst builder = new ForeignKeyBuilder(() => {\n\t\t\t\t\tconst foreignColumn = ref();\n\t\t\t\t\treturn { columns: [column], foreignColumns: [foreignColumn] };\n\t\t\t\t});\n\t\t\t\tif (actions.onUpdate) {\n\t\t\t\t\tbuilder.onUpdate(actions.onUpdate);\n\t\t\t\t}\n\t\t\t\tif (actions.onDelete) {\n\t\t\t\t\tbuilder.onDelete(actions.onDelete);\n\t\t\t\t}\n\t\t\t\treturn builder.build(table);\n\t\t\t})(ref, actions);\n\t\t});\n\t}\n\n\t/** @internal */\n\tabstract build(table: SQLiteTable): SQLiteColumn;\n}\n\n// To understand how to use `SQLiteColumn` and `AnySQLiteColumn`, see `Column` and `AnyColumn` documentation.\nexport abstract class SQLiteColumn<\n\tT extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>,\n\tTRuntimeConfig extends object = {},\n> extends Column<T, TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'SQLiteColumn';\n\n\t/** @internal */\n\toverride readonly table: SQLiteTable;\n\n\tconstructor(\n\t\ttable: SQLiteTable,\n\t\tconfig: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig,\n\t) {\n\t\tsuper(table, config);\n\t\tthis.table = table;\n\t}\n}\n\nexport type AnySQLiteColumn<TPartial extends Partial<ColumnBaseConfig<ColumnType>> = {}> = SQLiteColumn<\n\tRequired<Update<ColumnBaseConfig<ColumnType>, TPartial>>\n>;\n"],"mappings":"AAOA,SAAS,qBAAqB;AAC9B,SAAS,cAAc;AAEvB,SAAS,kBAAkB;AAG3B,SAAS,yBAAyB;AAkB3B,MAAe,4BAIZ,cAA+C;AAAA,EACxD,QAA0B,UAAU,IAAY;AAAA,EAExC,oBAAuC,CAAC;AAAA,EAEhD,WACC,KACA,UAAsC,CAAC,GAChC;AACP,SAAK,kBAAkB,KAAK,EAAE,KAAK,QAAQ,CAAC;AAC5C,WAAO;AAAA,EACR;AAAA,EAEA,OACC,MACO;AACP,SAAK,OAAO,WAAW;AACvB,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AAAA,EAEA,kBAAkB,IAAmC,QAElD;AACF,SAAK,OAAO,YAAY;AAAA,MACvB;AAAA,MACA,MAAM;AAAA,MACN,MAAM,QAAQ,QAAQ;AAAA,IACvB;AACA,WAAO;AAAA,EACR;AAAA;AAAA,EAGA,iBAAiB,QAAsB,OAAkC;AACxE,WAAO,KAAK,kBAAkB,IAAI,CAAC,EAAE,KAAK,QAAQ,MAAM;AACvD,cAAQ,CAACA,MAAKC,aAAY;AACzB,cAAM,UAAU,IAAI,kBAAkB,MAAM;AAC3C,gBAAM,gBAAgBD,KAAI;AAC1B,iBAAO,EAAE,SAAS,CAAC,MAAM,GAAG,gBAAgB,CAAC,aAAa,EAAE;AAAA,QAC7D,CAAC;AACD,YAAIC,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,YAAIA,SAAQ,UAAU;AACrB,kBAAQ,SAASA,SAAQ,QAAQ;AAAA,QAClC;AACA,eAAO,QAAQ,MAAM,KAAK;AAAA,MAC3B,GAAG,KAAK,OAAO;AAAA,IAChB,CAAC;AAAA,EACF;AAID;AAGO,MAAe,qBAGZ,OAA0B;AAAA,EACnC,QAA0B,UAAU,IAAY;AAAA;AAAA,EAG9B;AAAA,EAElB,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,QAAQ;AAAA,EACd;AACD;","names":["ref","actions"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/custom.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL, SQLGenerator } from '~/sql/sql.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport type ConvertCustomConfig<T extends Partial<CustomTypeValues>> =\n\t& {\n\t\tname: string;\n\t\tdataType: 'custom';\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverData'];\n\t}\n\t& (T['notNull'] extends true ? { notNull: true } : {})\n\t& (T['default'] extends true ? { hasDefault: true } : {});\n\nexport interface SQLiteCustomColumnInnerConfig {\n\tcustomTypeValues: CustomTypeValues;\n}\n\nexport class SQLiteCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom'>> extends SQLiteColumnBuilder<\n\tT,\n\t{\n\t\tfieldConfig: CustomTypeValues['config'];\n\t\tcustomTypeParams: CustomTypeParams<any>;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumnBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t\tfieldConfig: CustomTypeValues['config'],\n\t\tcustomTypeParams: CustomTypeParams<any>,\n\t) {\n\t\tsuper(name, 'custom', 'SQLiteCustomColumn');\n\t\tthis.config.fieldConfig = fieldConfig;\n\t\tthis.config.customTypeParams = customTypeParams;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteCustomColumn(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteCustomColumn<T extends ColumnBaseConfig<'custom'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumn';\n\n\tprivate sqlName: string;\n\tprivate mapTo?: (value: T['data']) => T['driverParam'];\n\tprivate mapFrom?: (value: T['driverParam']) => T['data'];\n\tprivate mapJson?: (value: unknown) => T['data'];\n\tprivate forJsonSelect?: (name: SQL, sql: SQLGenerator) => SQL;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteCustomColumnBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t\tthis.sqlName = config.customTypeParams.dataType(config.fieldConfig);\n\t\tthis.mapTo = config.customTypeParams.toDriver;\n\t\tthis.mapFrom = config.customTypeParams.fromDriver;\n\t\tthis.mapJson = config.customTypeParams.fromJson;\n\t\tthis.forJsonSelect = config.customTypeParams.forJsonSelect;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.sqlName;\n\t}\n\n\toverride mapFromDriverValue(value: T['driverParam']): T['data'] {\n\t\treturn typeof this.mapFrom === 'function' ? this.mapFrom(value) : value as T['data'];\n\t}\n\n\tmapFromJsonValue(value: unknown): T['data'] {\n\t\treturn typeof this.mapJson === 'function' ? this.mapJson(value) : this.mapFromDriverValue(value) as T['data'];\n\t}\n\n\tjsonSelectIdentifier(identifier: SQL, sql: SQLGenerator): SQL {\n\t\tif (typeof this.forJsonSelect === 'function') return this.forJsonSelect(identifier, sql);\n\n\t\tconst rawType = this.getSQLType().toLowerCase();\n\t\tconst parenPos = rawType.indexOf('(');\n\t\tconst type = (parenPos + 1) ? rawType.slice(0, parenPos) : rawType;\n\n\t\tswitch (type) {\n\t\t\tcase 'numeric':\n\t\t\tcase 'decimal':\n\t\t\tcase 'bigint': {\n\t\t\t\treturn sql`cast(${identifier} as text)`;\n\t\t\t}\n\t\t\tcase 'blob': {\n\t\t\t\treturn sql`hex(${identifier})`;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn identifier;\n\t\t\t}\n\t\t}\n\t}\n\n\toverride mapToDriverValue(value: T['data']): T['driverParam'] {\n\t\treturn typeof this.mapTo === 'function' ? this.mapTo(value) : value as T['data'];\n\t}\n}\n\nexport interface CustomTypeValues {\n\t/**\n\t * Required type for custom column, that will infer proper type model\n\t *\n\t * Examples:\n\t *\n\t * If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`\n\t *\n\t * If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`\n\t */\n\tdata: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is accepting for specific database data type\n\t */\n\tdriverData?: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is returning for specific database data type\n\t *\n\t * Needed only in case driver's output and input for type differ\n\t *\n\t * Defaults to {@link driverData}\n\t */\n\tdriverOutput?: unknown;\n\n\t/**\n\t * Type helper, that represents what type field returns after being aggregated to JSON\n\t */\n\tjsonData?: unknown;\n\n\t/**\n\t * What config type should be used for {@link CustomTypeParams} `dataType` generation\n\t */\n\tconfig?: Record<string, any>;\n\n\t/**\n\t * Whether the config argument should be required or not\n\t * @default false\n\t */\n\tconfigRequired?: boolean;\n\n\t/**\n\t * If your custom data type should be notNull by default you can use `notNull: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tnotNull?: boolean;\n\n\t/**\n\t * If your custom data type has default you can use `default: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tdefault?: boolean;\n}\n\nexport interface CustomTypeParams<T extends CustomTypeValues> {\n\t/**\n\t * Database data type string representation, that is used for migrations\n\t * @example\n\t * ```\n\t * `jsonb`, `text`\n\t * ```\n\t *\n\t * If database data type needs additional params you can use them from `config` param\n\t * @example\n\t * ```\n\t * `varchar(256)`, `numeric(2,3)`\n\t * ```\n\t *\n\t * To make `config` be of specific type please use config generic in {@link CustomTypeValues}\n\t *\n\t * @example\n\t * Usage example\n\t * ```\n\t * dataType() {\n\t * return 'boolean';\n\t * },\n\t * ```\n\t * Or\n\t * ```\n\t * dataType(config) {\n\t * \t return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;\n\t * \t }\n\t * ```\n\t */\n\tdataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;\n\n\t/**\n\t * Optional mapping function, that is used to transform inputs from desired to be used in code format to one suitable for driver\n\t * @example\n\t * For example, when using jsonb we need to map JS/TS object to string before writing to database\n\t * ```\n\t * toDriver(value: TData): string {\n\t * \t return JSON.stringify(value);\n\t * }\n\t * ```\n\t */\n\ttoDriver?: (value: T['data']) => T['driverData'] | SQL;\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by driver to desired column's output format\n\t * @example\n\t * For example, when using timestamp we need to map string Date representation to JS Date\n\t * ```\n\t * fromDriver(value: string): Date {\n\t * \treturn new Date(value);\n\t * }\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"2025-04-07T03:25:16.635Z\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: new Date(\"2025-04-07T03:25:16.635Z\");\n\t * }\n\t * ```\n\t */\n\tfromDriver?: (value: 'driverOutput' extends keyof T ? T['driverOutput'] : T['driverData']) => T['data'];\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by transofmed to JSON in database data to desired format\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Defaults to {@link fromDriver} function\n\t * @example\n\t * For example, when querying blob column via [RQB](https://orm.drizzle.team/docs/rqb-v2) or [JSON functions](https://orm.drizzle.team/docs/json-functions), the result field will be returned as it's hex string representation, as opposed to Buffer from regular query\n\t * To handle that, we need a separate function to handle such field's mapping:\n\t * ```\n\t * fromJson(value: string): Buffer {\n\t * \treturn Buffer.from(value, 'hex');\n\t * },\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"04A8...\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: Buffer([...]);\n\t * }\n\t * ```\n\t */\n\tfromJson?: (value: T['jsonData']) => T['data'];\n\n\t/**\n\t * Optional selection modifier function, that is used for modifying selection of column inside [JSON functions](https://orm.drizzle.team/docs/json-functions)\n\t *\n\t * Additional mapping that could be required for such scenarios can be handled using {@link fromJson} function\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Following types are being casted to text by default: `numeric`, `decimal`, `bigint`, `blob` (via `hex()` function)\n\t * @example\n\t * For example, when using numeric field for bigint storage we need to cast field to text to preserve data integrity\n\t * ```\n\t * forJsonSelect(identifier: SQL, sql: SQLGenerator): SQL {\n\t * \treturn sql`cast(${identifier} as text)`\n\t * },\n\t * ```\n\t *\n\t * This will change query from:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\t`table`.`custom_bigint` AS \"bigint\"\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t * to:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\tcast(`table`.`custom_bigint` as text) AS `bigint`\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t *\n\t * Returned by query object will change from:\n\t * ```\n\t * {\n\t * \tbigint: 5044565289845416000; // Partial data loss due to direct conversion to JSON format\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tbigint: \"5044565289845416380\"; // Data is preserved due to conversion of field to text before JSON-ification\n\t * }\n\t * ```\n\t */\n\tforJsonSelect?: (identifier: SQL, sql: SQLGenerator) => SQL;\n}\n\n/**\n * Custom sqlite database data type generator\n */\nexport function customType<T extends CustomTypeValues = CustomTypeValues>(\n\tcustomTypeParams: CustomTypeParams<T>,\n): Equal<T['configRequired'], true> extends true ? {\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n\t: {\n\t\t(): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig?: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig?: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n{\n\treturn (\n\t\ta?: string | T['config'],\n\t\tb?: T['config'],\n\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>> => {\n\t\tconst { name, config } = getColumnNameAndConfig<T['config']>(a, b);\n\t\treturn new SQLiteCustomColumnBuilder(\n\t\t\tname as ConvertCustomConfig<T>['name'],\n\t\t\tconfig,\n\t\t\tcustomTypeParams,\n\t\t);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA2B;AAG3B,mBAAmD;AACnD,oBAAkD;AAgB3C,MAAM,kCAA+E,kCAM1F;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACA,aACA,kBACC;AACD,UAAM,MAAM,UAAU,oBAAoB;AAC1C,SAAK,OAAO,cAAc;AAC1B,SAAK,OAAO,mBAAmB;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,2BAAiE,2BAAgB;AAAA,EAC7F,QAA0B,wBAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,UAAU,OAAO,iBAAiB,SAAS,OAAO,WAAW;AAClE,SAAK,QAAQ,OAAO,iBAAiB;AACrC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,gBAAgB,OAAO,iBAAiB;AAAA,EAC9C;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK;AAAA,EACb;AAAA,EAES,mBAAmB,OAAoC;AAC/D,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI;AAAA,EACnE;AAAA,EAEA,iBAAiB,OAA2B;AAC3C,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI,KAAK,mBAAmB,KAAK;AAAA,EAChG;AAAA,EAEA,qBAAqB,YAAiB,KAAwB;AAC7D,QAAI,OAAO,KAAK,kBAAkB,WAAY,QAAO,KAAK,cAAc,YAAY,GAAG;AAEvF,UAAM,UAAU,KAAK,WAAW,EAAE,YAAY;AAC9C,UAAM,WAAW,QAAQ,QAAQ,GAAG;AACpC,UAAM,OAAQ,WAAW,IAAK,QAAQ,MAAM,GAAG,QAAQ,IAAI;AAE3D,YAAQ,MAAM;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK,UAAU;AACd,eAAO,WAAW,UAAU;AAAA,MAC7B;AAAA,MACA,KAAK,QAAQ;AACZ,eAAO,UAAU,UAAU;AAAA,MAC5B;AAAA,MACA,SAAS;AACR,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAES,iBAAiB,OAAoC;AAC7D,WAAO,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,EAC/D;AACD;AAoOO,SAAS,WACf,kBAoBD;AACC,SAAO,CACN,GACA,MACuD;AACvD,UAAM,EAAE,MAAM,OAAO,QAAI,qCAAoC,GAAG,CAAC;AACjE,WAAO,IAAI;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/custom.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL, SQLGenerator } from '~/sql/sql.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport type ConvertCustomConfig<T extends Partial<CustomTypeValues>> =\n\t& {\n\t\tdataType: 'custom';\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverData'];\n\t}\n\t& (T['notNull'] extends true ? { notNull: true } : {})\n\t& (T['default'] extends true ? { hasDefault: true } : {});\n\nexport interface SQLiteCustomColumnInnerConfig {\n\tcustomTypeValues: CustomTypeValues;\n}\n\nexport class SQLiteCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom'>> extends SQLiteColumnBuilder<\n\tT,\n\t{\n\t\tfieldConfig: CustomTypeValues['config'];\n\t\tcustomTypeParams: CustomTypeParams<any>;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumnBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t\tfieldConfig: CustomTypeValues['config'],\n\t\tcustomTypeParams: CustomTypeParams<any>,\n\t) {\n\t\tsuper(name, 'custom', 'SQLiteCustomColumn');\n\t\tthis.config.fieldConfig = fieldConfig;\n\t\tthis.config.customTypeParams = customTypeParams;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteCustomColumn(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteCustomColumn<T extends ColumnBaseConfig<'custom'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumn';\n\n\tprivate sqlName: string;\n\tprivate mapTo?: (value: T['data']) => T['driverParam'];\n\tprivate mapFrom?: (value: T['driverParam']) => T['data'];\n\tprivate mapJson?: (value: unknown) => T['data'];\n\tprivate forJsonSelect?: (name: SQL, sql: SQLGenerator) => SQL;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteCustomColumnBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t\tthis.sqlName = config.customTypeParams.dataType(config.fieldConfig);\n\t\tthis.mapTo = config.customTypeParams.toDriver;\n\t\tthis.mapFrom = config.customTypeParams.fromDriver;\n\t\tthis.mapJson = config.customTypeParams.fromJson;\n\t\tthis.forJsonSelect = config.customTypeParams.forJsonSelect;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.sqlName;\n\t}\n\n\toverride mapFromDriverValue(value: T['driverParam']): T['data'] {\n\t\treturn typeof this.mapFrom === 'function' ? this.mapFrom(value) : value as T['data'];\n\t}\n\n\tmapFromJsonValue(value: unknown): T['data'] {\n\t\treturn typeof this.mapJson === 'function' ? this.mapJson(value) : this.mapFromDriverValue(value) as T['data'];\n\t}\n\n\tjsonSelectIdentifier(identifier: SQL, sql: SQLGenerator): SQL {\n\t\tif (typeof this.forJsonSelect === 'function') return this.forJsonSelect(identifier, sql);\n\n\t\tconst rawType = this.getSQLType().toLowerCase();\n\t\tconst parenPos = rawType.indexOf('(');\n\t\tconst type = (parenPos + 1) ? rawType.slice(0, parenPos) : rawType;\n\n\t\tswitch (type) {\n\t\t\tcase 'numeric':\n\t\t\tcase 'decimal':\n\t\t\tcase 'bigint': {\n\t\t\t\treturn sql`cast(${identifier} as text)`;\n\t\t\t}\n\t\t\tcase 'blob': {\n\t\t\t\treturn sql`hex(${identifier})`;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn identifier;\n\t\t\t}\n\t\t}\n\t}\n\n\toverride mapToDriverValue(value: T['data']): T['driverParam'] {\n\t\treturn typeof this.mapTo === 'function' ? this.mapTo(value) : value as T['data'];\n\t}\n}\n\nexport interface CustomTypeValues {\n\t/**\n\t * Required type for custom column, that will infer proper type model\n\t *\n\t * Examples:\n\t *\n\t * If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`\n\t *\n\t * If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`\n\t */\n\tdata: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is accepting for specific database data type\n\t */\n\tdriverData?: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is returning for specific database data type\n\t *\n\t * Needed only in case driver's output and input for type differ\n\t *\n\t * Defaults to {@link driverData}\n\t */\n\tdriverOutput?: unknown;\n\n\t/**\n\t * Type helper, that represents what type field returns after being aggregated to JSON\n\t */\n\tjsonData?: unknown;\n\n\t/**\n\t * What config type should be used for {@link CustomTypeParams} `dataType` generation\n\t */\n\tconfig?: Record<string, any>;\n\n\t/**\n\t * Whether the config argument should be required or not\n\t * @default false\n\t */\n\tconfigRequired?: boolean;\n\n\t/**\n\t * If your custom data type should be notNull by default you can use `notNull: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tnotNull?: boolean;\n\n\t/**\n\t * If your custom data type has default you can use `default: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tdefault?: boolean;\n}\n\nexport interface CustomTypeParams<T extends CustomTypeValues> {\n\t/**\n\t * Database data type string representation, that is used for migrations\n\t * @example\n\t * ```\n\t * `jsonb`, `text`\n\t * ```\n\t *\n\t * If database data type needs additional params you can use them from `config` param\n\t * @example\n\t * ```\n\t * `varchar(256)`, `numeric(2,3)`\n\t * ```\n\t *\n\t * To make `config` be of specific type please use config generic in {@link CustomTypeValues}\n\t *\n\t * @example\n\t * Usage example\n\t * ```\n\t * dataType() {\n\t * return 'boolean';\n\t * },\n\t * ```\n\t * Or\n\t * ```\n\t * dataType(config) {\n\t * \t return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;\n\t * \t }\n\t * ```\n\t */\n\tdataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;\n\n\t/**\n\t * Optional mapping function, that is used to transform inputs from desired to be used in code format to one suitable for driver\n\t * @example\n\t * For example, when using jsonb we need to map JS/TS object to string before writing to database\n\t * ```\n\t * toDriver(value: TData): string {\n\t * \t return JSON.stringify(value);\n\t * }\n\t * ```\n\t */\n\ttoDriver?: (value: T['data']) => T['driverData'] | SQL;\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by driver to desired column's output format\n\t * @example\n\t * For example, when using timestamp we need to map string Date representation to JS Date\n\t * ```\n\t * fromDriver(value: string): Date {\n\t * \treturn new Date(value);\n\t * }\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"2025-04-07T03:25:16.635Z\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: new Date(\"2025-04-07T03:25:16.635Z\");\n\t * }\n\t * ```\n\t */\n\tfromDriver?: (value: 'driverOutput' extends keyof T ? T['driverOutput'] : T['driverData']) => T['data'];\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by transofmed to JSON in database data to desired format\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Defaults to {@link fromDriver} function\n\t * @example\n\t * For example, when querying blob column via [RQB](https://orm.drizzle.team/docs/rqb-v2) or [JSON functions](https://orm.drizzle.team/docs/json-functions), the result field will be returned as it's hex string representation, as opposed to Buffer from regular query\n\t * To handle that, we need a separate function to handle such field's mapping:\n\t * ```\n\t * fromJson(value: string): Buffer {\n\t * \treturn Buffer.from(value, 'hex');\n\t * },\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"04A8...\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: Buffer([...]);\n\t * }\n\t * ```\n\t */\n\tfromJson?: (value: T['jsonData']) => T['data'];\n\n\t/**\n\t * Optional selection modifier function, that is used for modifying selection of column inside [JSON functions](https://orm.drizzle.team/docs/json-functions)\n\t *\n\t * Additional mapping that could be required for such scenarios can be handled using {@link fromJson} function\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Following types are being casted to text by default: `numeric`, `decimal`, `bigint`, `blob` (via `hex()` function)\n\t * @example\n\t * For example, when using numeric field for bigint storage we need to cast field to text to preserve data integrity\n\t * ```\n\t * forJsonSelect(identifier: SQL, sql: SQLGenerator): SQL {\n\t * \treturn sql`cast(${identifier} as text)`\n\t * },\n\t * ```\n\t *\n\t * This will change query from:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\t`table`.`custom_bigint` AS \"bigint\"\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t * to:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\tcast(`table`.`custom_bigint` as text) AS `bigint`\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t *\n\t * Returned by query object will change from:\n\t * ```\n\t * {\n\t * \tbigint: 5044565289845416000; // Partial data loss due to direct conversion to JSON format\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tbigint: \"5044565289845416380\"; // Data is preserved due to conversion of field to text before JSON-ification\n\t * }\n\t * ```\n\t */\n\tforJsonSelect?: (identifier: SQL, sql: SQLGenerator) => SQL;\n}\n\n/**\n * Custom sqlite database data type generator\n */\nexport function customType<T extends CustomTypeValues = CustomTypeValues>(\n\tcustomTypeParams: CustomTypeParams<T>,\n): Equal<T['configRequired'], true> extends true ? {\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n\t: {\n\t\t(): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig?: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig?: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n{\n\treturn (\n\t\ta?: string | T['config'],\n\t\tb?: T['config'],\n\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>> => {\n\t\tconst { name, config } = getColumnNameAndConfig<T['config']>(a, b);\n\t\treturn new SQLiteCustomColumnBuilder(\n\t\t\tname,\n\t\t\tconfig,\n\t\t\tcustomTypeParams,\n\t\t);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA2B;AAG3B,mBAAmD;AACnD,oBAAkD;AAe3C,MAAM,kCAA+E,kCAM1F;AAAA,EACD,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,MACA,aACA,kBACC;AACD,UAAM,MAAM,UAAU,oBAAoB;AAC1C,SAAK,OAAO,cAAc;AAC1B,SAAK,OAAO,mBAAmB;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,2BAAiE,2BAAgB;AAAA,EAC7F,QAA0B,wBAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,UAAU,OAAO,iBAAiB,SAAS,OAAO,WAAW;AAClE,SAAK,QAAQ,OAAO,iBAAiB;AACrC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,gBAAgB,OAAO,iBAAiB;AAAA,EAC9C;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK;AAAA,EACb;AAAA,EAES,mBAAmB,OAAoC;AAC/D,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI;AAAA,EACnE;AAAA,EAEA,iBAAiB,OAA2B;AAC3C,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI,KAAK,mBAAmB,KAAK;AAAA,EAChG;AAAA,EAEA,qBAAqB,YAAiB,KAAwB;AAC7D,QAAI,OAAO,KAAK,kBAAkB,WAAY,QAAO,KAAK,cAAc,YAAY,GAAG;AAEvF,UAAM,UAAU,KAAK,WAAW,EAAE,YAAY;AAC9C,UAAM,WAAW,QAAQ,QAAQ,GAAG;AACpC,UAAM,OAAQ,WAAW,IAAK,QAAQ,MAAM,GAAG,QAAQ,IAAI;AAE3D,YAAQ,MAAM;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK,UAAU;AACd,eAAO,WAAW,UAAU;AAAA,MAC7B;AAAA,MACA,KAAK,QAAQ;AACZ,eAAO,UAAU,UAAU;AAAA,MAC5B;AAAA,MACA,SAAS;AACR,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAES,iBAAiB,OAAoC;AAC7D,WAAO,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,EAC/D;AACD;AAoOO,SAAS,WACf,kBAoBD;AACC,SAAO,CACN,GACA,MACuD;AACvD,UAAM,EAAE,MAAM,OAAO,QAAI,qCAAoC,GAAG,CAAC;AACjE,WAAO,IAAI;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
@@ -6,7 +6,6 @@ import type { AnySQLiteTable } from "../table.cjs";
|
|
|
6
6
|
import { type Equal } from "../../utils.cjs";
|
|
7
7
|
import { SQLiteColumn, SQLiteColumnBuilder } from "./common.cjs";
|
|
8
8
|
export type ConvertCustomConfig<T extends Partial<CustomTypeValues>> = {
|
|
9
|
-
name: string;
|
|
10
9
|
dataType: 'custom';
|
|
11
10
|
data: T['data'];
|
|
12
11
|
driverParam: T['driverData'];
|
|
@@ -6,7 +6,6 @@ import type { AnySQLiteTable } from "../table.js";
|
|
|
6
6
|
import { type Equal } from "../../utils.js";
|
|
7
7
|
import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
|
|
8
8
|
export type ConvertCustomConfig<T extends Partial<CustomTypeValues>> = {
|
|
9
|
-
name: string;
|
|
10
9
|
dataType: 'custom';
|
|
11
10
|
data: T['data'];
|
|
12
11
|
driverParam: T['driverData'];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/sqlite-core/columns/custom.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL, SQLGenerator } from '~/sql/sql.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport type ConvertCustomConfig<T extends Partial<CustomTypeValues>> =\n\t& {\n\t\tname: string;\n\t\tdataType: 'custom';\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverData'];\n\t}\n\t& (T['notNull'] extends true ? { notNull: true } : {})\n\t& (T['default'] extends true ? { hasDefault: true } : {});\n\nexport interface SQLiteCustomColumnInnerConfig {\n\tcustomTypeValues: CustomTypeValues;\n}\n\nexport class SQLiteCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom'>> extends SQLiteColumnBuilder<\n\tT,\n\t{\n\t\tfieldConfig: CustomTypeValues['config'];\n\t\tcustomTypeParams: CustomTypeParams<any>;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumnBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t\tfieldConfig: CustomTypeValues['config'],\n\t\tcustomTypeParams: CustomTypeParams<any>,\n\t) {\n\t\tsuper(name, 'custom', 'SQLiteCustomColumn');\n\t\tthis.config.fieldConfig = fieldConfig;\n\t\tthis.config.customTypeParams = customTypeParams;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteCustomColumn(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteCustomColumn<T extends ColumnBaseConfig<'custom'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumn';\n\n\tprivate sqlName: string;\n\tprivate mapTo?: (value: T['data']) => T['driverParam'];\n\tprivate mapFrom?: (value: T['driverParam']) => T['data'];\n\tprivate mapJson?: (value: unknown) => T['data'];\n\tprivate forJsonSelect?: (name: SQL, sql: SQLGenerator) => SQL;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteCustomColumnBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t\tthis.sqlName = config.customTypeParams.dataType(config.fieldConfig);\n\t\tthis.mapTo = config.customTypeParams.toDriver;\n\t\tthis.mapFrom = config.customTypeParams.fromDriver;\n\t\tthis.mapJson = config.customTypeParams.fromJson;\n\t\tthis.forJsonSelect = config.customTypeParams.forJsonSelect;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.sqlName;\n\t}\n\n\toverride mapFromDriverValue(value: T['driverParam']): T['data'] {\n\t\treturn typeof this.mapFrom === 'function' ? this.mapFrom(value) : value as T['data'];\n\t}\n\n\tmapFromJsonValue(value: unknown): T['data'] {\n\t\treturn typeof this.mapJson === 'function' ? this.mapJson(value) : this.mapFromDriverValue(value) as T['data'];\n\t}\n\n\tjsonSelectIdentifier(identifier: SQL, sql: SQLGenerator): SQL {\n\t\tif (typeof this.forJsonSelect === 'function') return this.forJsonSelect(identifier, sql);\n\n\t\tconst rawType = this.getSQLType().toLowerCase();\n\t\tconst parenPos = rawType.indexOf('(');\n\t\tconst type = (parenPos + 1) ? rawType.slice(0, parenPos) : rawType;\n\n\t\tswitch (type) {\n\t\t\tcase 'numeric':\n\t\t\tcase 'decimal':\n\t\t\tcase 'bigint': {\n\t\t\t\treturn sql`cast(${identifier} as text)`;\n\t\t\t}\n\t\t\tcase 'blob': {\n\t\t\t\treturn sql`hex(${identifier})`;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn identifier;\n\t\t\t}\n\t\t}\n\t}\n\n\toverride mapToDriverValue(value: T['data']): T['driverParam'] {\n\t\treturn typeof this.mapTo === 'function' ? this.mapTo(value) : value as T['data'];\n\t}\n}\n\nexport interface CustomTypeValues {\n\t/**\n\t * Required type for custom column, that will infer proper type model\n\t *\n\t * Examples:\n\t *\n\t * If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`\n\t *\n\t * If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`\n\t */\n\tdata: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is accepting for specific database data type\n\t */\n\tdriverData?: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is returning for specific database data type\n\t *\n\t * Needed only in case driver's output and input for type differ\n\t *\n\t * Defaults to {@link driverData}\n\t */\n\tdriverOutput?: unknown;\n\n\t/**\n\t * Type helper, that represents what type field returns after being aggregated to JSON\n\t */\n\tjsonData?: unknown;\n\n\t/**\n\t * What config type should be used for {@link CustomTypeParams} `dataType` generation\n\t */\n\tconfig?: Record<string, any>;\n\n\t/**\n\t * Whether the config argument should be required or not\n\t * @default false\n\t */\n\tconfigRequired?: boolean;\n\n\t/**\n\t * If your custom data type should be notNull by default you can use `notNull: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tnotNull?: boolean;\n\n\t/**\n\t * If your custom data type has default you can use `default: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tdefault?: boolean;\n}\n\nexport interface CustomTypeParams<T extends CustomTypeValues> {\n\t/**\n\t * Database data type string representation, that is used for migrations\n\t * @example\n\t * ```\n\t * `jsonb`, `text`\n\t * ```\n\t *\n\t * If database data type needs additional params you can use them from `config` param\n\t * @example\n\t * ```\n\t * `varchar(256)`, `numeric(2,3)`\n\t * ```\n\t *\n\t * To make `config` be of specific type please use config generic in {@link CustomTypeValues}\n\t *\n\t * @example\n\t * Usage example\n\t * ```\n\t * dataType() {\n\t * return 'boolean';\n\t * },\n\t * ```\n\t * Or\n\t * ```\n\t * dataType(config) {\n\t * \t return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;\n\t * \t }\n\t * ```\n\t */\n\tdataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;\n\n\t/**\n\t * Optional mapping function, that is used to transform inputs from desired to be used in code format to one suitable for driver\n\t * @example\n\t * For example, when using jsonb we need to map JS/TS object to string before writing to database\n\t * ```\n\t * toDriver(value: TData): string {\n\t * \t return JSON.stringify(value);\n\t * }\n\t * ```\n\t */\n\ttoDriver?: (value: T['data']) => T['driverData'] | SQL;\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by driver to desired column's output format\n\t * @example\n\t * For example, when using timestamp we need to map string Date representation to JS Date\n\t * ```\n\t * fromDriver(value: string): Date {\n\t * \treturn new Date(value);\n\t * }\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"2025-04-07T03:25:16.635Z\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: new Date(\"2025-04-07T03:25:16.635Z\");\n\t * }\n\t * ```\n\t */\n\tfromDriver?: (value: 'driverOutput' extends keyof T ? T['driverOutput'] : T['driverData']) => T['data'];\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by transofmed to JSON in database data to desired format\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Defaults to {@link fromDriver} function\n\t * @example\n\t * For example, when querying blob column via [RQB](https://orm.drizzle.team/docs/rqb-v2) or [JSON functions](https://orm.drizzle.team/docs/json-functions), the result field will be returned as it's hex string representation, as opposed to Buffer from regular query\n\t * To handle that, we need a separate function to handle such field's mapping:\n\t * ```\n\t * fromJson(value: string): Buffer {\n\t * \treturn Buffer.from(value, 'hex');\n\t * },\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"04A8...\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: Buffer([...]);\n\t * }\n\t * ```\n\t */\n\tfromJson?: (value: T['jsonData']) => T['data'];\n\n\t/**\n\t * Optional selection modifier function, that is used for modifying selection of column inside [JSON functions](https://orm.drizzle.team/docs/json-functions)\n\t *\n\t * Additional mapping that could be required for such scenarios can be handled using {@link fromJson} function\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Following types are being casted to text by default: `numeric`, `decimal`, `bigint`, `blob` (via `hex()` function)\n\t * @example\n\t * For example, when using numeric field for bigint storage we need to cast field to text to preserve data integrity\n\t * ```\n\t * forJsonSelect(identifier: SQL, sql: SQLGenerator): SQL {\n\t * \treturn sql`cast(${identifier} as text)`\n\t * },\n\t * ```\n\t *\n\t * This will change query from:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\t`table`.`custom_bigint` AS \"bigint\"\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t * to:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\tcast(`table`.`custom_bigint` as text) AS `bigint`\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t *\n\t * Returned by query object will change from:\n\t * ```\n\t * {\n\t * \tbigint: 5044565289845416000; // Partial data loss due to direct conversion to JSON format\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tbigint: \"5044565289845416380\"; // Data is preserved due to conversion of field to text before JSON-ification\n\t * }\n\t * ```\n\t */\n\tforJsonSelect?: (identifier: SQL, sql: SQLGenerator) => SQL;\n}\n\n/**\n * Custom sqlite database data type generator\n */\nexport function customType<T extends CustomTypeValues = CustomTypeValues>(\n\tcustomTypeParams: CustomTypeParams<T>,\n): Equal<T['configRequired'], true> extends true ? {\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n\t: {\n\t\t(): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig?: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig?: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n{\n\treturn (\n\t\ta?: string | T['config'],\n\t\tb?: T['config'],\n\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>> => {\n\t\tconst { name, config } = getColumnNameAndConfig<T['config']>(a, b);\n\t\treturn new SQLiteCustomColumnBuilder(\n\t\t\tname as ConvertCustomConfig<T>['name'],\n\t\t\tconfig,\n\t\t\tcustomTypeParams,\n\t\t);\n\t};\n}\n"],"mappings":"AAEA,SAAS,kBAAkB;AAG3B,SAAqB,8BAA8B;AACnD,SAAS,cAAc,2BAA2B;AAgB3C,MAAM,kCAA+E,oBAM1F;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACA,aACA,kBACC;AACD,UAAM,MAAM,UAAU,oBAAoB;AAC1C,SAAK,OAAO,cAAc;AAC1B,SAAK,OAAO,mBAAmB;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,2BAAiE,aAAgB;AAAA,EAC7F,QAA0B,UAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,UAAU,OAAO,iBAAiB,SAAS,OAAO,WAAW;AAClE,SAAK,QAAQ,OAAO,iBAAiB;AACrC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,gBAAgB,OAAO,iBAAiB;AAAA,EAC9C;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK;AAAA,EACb;AAAA,EAES,mBAAmB,OAAoC;AAC/D,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI;AAAA,EACnE;AAAA,EAEA,iBAAiB,OAA2B;AAC3C,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI,KAAK,mBAAmB,KAAK;AAAA,EAChG;AAAA,EAEA,qBAAqB,YAAiB,KAAwB;AAC7D,QAAI,OAAO,KAAK,kBAAkB,WAAY,QAAO,KAAK,cAAc,YAAY,GAAG;AAEvF,UAAM,UAAU,KAAK,WAAW,EAAE,YAAY;AAC9C,UAAM,WAAW,QAAQ,QAAQ,GAAG;AACpC,UAAM,OAAQ,WAAW,IAAK,QAAQ,MAAM,GAAG,QAAQ,IAAI;AAE3D,YAAQ,MAAM;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK,UAAU;AACd,eAAO,WAAW,UAAU;AAAA,MAC7B;AAAA,MACA,KAAK,QAAQ;AACZ,eAAO,UAAU,UAAU;AAAA,MAC5B;AAAA,MACA,SAAS;AACR,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAES,iBAAiB,OAAoC;AAC7D,WAAO,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,EAC/D;AACD;AAoOO,SAAS,WACf,kBAoBD;AACC,SAAO,CACN,GACA,MACuD;AACvD,UAAM,EAAE,MAAM,OAAO,IAAI,uBAAoC,GAAG,CAAC;AACjE,WAAO,IAAI;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/sqlite-core/columns/custom.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { SQL, SQLGenerator } from '~/sql/sql.ts';\nimport type { AnySQLiteTable, SQLiteTable } from '~/sqlite-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SQLiteColumn, SQLiteColumnBuilder } from './common.ts';\n\nexport type ConvertCustomConfig<T extends Partial<CustomTypeValues>> =\n\t& {\n\t\tdataType: 'custom';\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverData'];\n\t}\n\t& (T['notNull'] extends true ? { notNull: true } : {})\n\t& (T['default'] extends true ? { hasDefault: true } : {});\n\nexport interface SQLiteCustomColumnInnerConfig {\n\tcustomTypeValues: CustomTypeValues;\n}\n\nexport class SQLiteCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom'>> extends SQLiteColumnBuilder<\n\tT,\n\t{\n\t\tfieldConfig: CustomTypeValues['config'];\n\t\tcustomTypeParams: CustomTypeParams<any>;\n\t}\n> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumnBuilder';\n\n\tconstructor(\n\t\tname: string,\n\t\tfieldConfig: CustomTypeValues['config'],\n\t\tcustomTypeParams: CustomTypeParams<any>,\n\t) {\n\t\tsuper(name, 'custom', 'SQLiteCustomColumn');\n\t\tthis.config.fieldConfig = fieldConfig;\n\t\tthis.config.customTypeParams = customTypeParams;\n\t}\n\n\t/** @internal */\n\toverride build(table: SQLiteTable) {\n\t\treturn new SQLiteCustomColumn(\n\t\t\ttable,\n\t\t\tthis.config as any,\n\t\t);\n\t}\n}\n\nexport class SQLiteCustomColumn<T extends ColumnBaseConfig<'custom'>> extends SQLiteColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SQLiteCustomColumn';\n\n\tprivate sqlName: string;\n\tprivate mapTo?: (value: T['data']) => T['driverParam'];\n\tprivate mapFrom?: (value: T['driverParam']) => T['data'];\n\tprivate mapJson?: (value: unknown) => T['data'];\n\tprivate forJsonSelect?: (name: SQL, sql: SQLGenerator) => SQL;\n\n\tconstructor(\n\t\ttable: AnySQLiteTable<{ name: T['tableName'] }>,\n\t\tconfig: SQLiteCustomColumnBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t\tthis.sqlName = config.customTypeParams.dataType(config.fieldConfig);\n\t\tthis.mapTo = config.customTypeParams.toDriver;\n\t\tthis.mapFrom = config.customTypeParams.fromDriver;\n\t\tthis.mapJson = config.customTypeParams.fromJson;\n\t\tthis.forJsonSelect = config.customTypeParams.forJsonSelect;\n\t}\n\n\tgetSQLType(): string {\n\t\treturn this.sqlName;\n\t}\n\n\toverride mapFromDriverValue(value: T['driverParam']): T['data'] {\n\t\treturn typeof this.mapFrom === 'function' ? this.mapFrom(value) : value as T['data'];\n\t}\n\n\tmapFromJsonValue(value: unknown): T['data'] {\n\t\treturn typeof this.mapJson === 'function' ? this.mapJson(value) : this.mapFromDriverValue(value) as T['data'];\n\t}\n\n\tjsonSelectIdentifier(identifier: SQL, sql: SQLGenerator): SQL {\n\t\tif (typeof this.forJsonSelect === 'function') return this.forJsonSelect(identifier, sql);\n\n\t\tconst rawType = this.getSQLType().toLowerCase();\n\t\tconst parenPos = rawType.indexOf('(');\n\t\tconst type = (parenPos + 1) ? rawType.slice(0, parenPos) : rawType;\n\n\t\tswitch (type) {\n\t\t\tcase 'numeric':\n\t\t\tcase 'decimal':\n\t\t\tcase 'bigint': {\n\t\t\t\treturn sql`cast(${identifier} as text)`;\n\t\t\t}\n\t\t\tcase 'blob': {\n\t\t\t\treturn sql`hex(${identifier})`;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\treturn identifier;\n\t\t\t}\n\t\t}\n\t}\n\n\toverride mapToDriverValue(value: T['data']): T['driverParam'] {\n\t\treturn typeof this.mapTo === 'function' ? this.mapTo(value) : value as T['data'];\n\t}\n}\n\nexport interface CustomTypeValues {\n\t/**\n\t * Required type for custom column, that will infer proper type model\n\t *\n\t * Examples:\n\t *\n\t * If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`\n\t *\n\t * If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`\n\t */\n\tdata: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is accepting for specific database data type\n\t */\n\tdriverData?: unknown;\n\n\t/**\n\t * Type helper, that represents what type database driver is returning for specific database data type\n\t *\n\t * Needed only in case driver's output and input for type differ\n\t *\n\t * Defaults to {@link driverData}\n\t */\n\tdriverOutput?: unknown;\n\n\t/**\n\t * Type helper, that represents what type field returns after being aggregated to JSON\n\t */\n\tjsonData?: unknown;\n\n\t/**\n\t * What config type should be used for {@link CustomTypeParams} `dataType` generation\n\t */\n\tconfig?: Record<string, any>;\n\n\t/**\n\t * Whether the config argument should be required or not\n\t * @default false\n\t */\n\tconfigRequired?: boolean;\n\n\t/**\n\t * If your custom data type should be notNull by default you can use `notNull: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tnotNull?: boolean;\n\n\t/**\n\t * If your custom data type has default you can use `default: true`\n\t *\n\t * @example\n\t * const customSerial = customType<{ data: number, notNull: true, default: true }>({\n\t * \t dataType() {\n\t * \t return 'serial';\n\t * },\n\t * });\n\t */\n\tdefault?: boolean;\n}\n\nexport interface CustomTypeParams<T extends CustomTypeValues> {\n\t/**\n\t * Database data type string representation, that is used for migrations\n\t * @example\n\t * ```\n\t * `jsonb`, `text`\n\t * ```\n\t *\n\t * If database data type needs additional params you can use them from `config` param\n\t * @example\n\t * ```\n\t * `varchar(256)`, `numeric(2,3)`\n\t * ```\n\t *\n\t * To make `config` be of specific type please use config generic in {@link CustomTypeValues}\n\t *\n\t * @example\n\t * Usage example\n\t * ```\n\t * dataType() {\n\t * return 'boolean';\n\t * },\n\t * ```\n\t * Or\n\t * ```\n\t * dataType(config) {\n\t * \t return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;\n\t * \t }\n\t * ```\n\t */\n\tdataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;\n\n\t/**\n\t * Optional mapping function, that is used to transform inputs from desired to be used in code format to one suitable for driver\n\t * @example\n\t * For example, when using jsonb we need to map JS/TS object to string before writing to database\n\t * ```\n\t * toDriver(value: TData): string {\n\t * \t return JSON.stringify(value);\n\t * }\n\t * ```\n\t */\n\ttoDriver?: (value: T['data']) => T['driverData'] | SQL;\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by driver to desired column's output format\n\t * @example\n\t * For example, when using timestamp we need to map string Date representation to JS Date\n\t * ```\n\t * fromDriver(value: string): Date {\n\t * \treturn new Date(value);\n\t * }\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"2025-04-07T03:25:16.635Z\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: new Date(\"2025-04-07T03:25:16.635Z\");\n\t * }\n\t * ```\n\t */\n\tfromDriver?: (value: 'driverOutput' extends keyof T ? T['driverOutput'] : T['driverData']) => T['data'];\n\n\t/**\n\t * Optional mapping function, that is used for transforming data returned by transofmed to JSON in database data to desired format\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Defaults to {@link fromDriver} function\n\t * @example\n\t * For example, when querying blob column via [RQB](https://orm.drizzle.team/docs/rqb-v2) or [JSON functions](https://orm.drizzle.team/docs/json-functions), the result field will be returned as it's hex string representation, as opposed to Buffer from regular query\n\t * To handle that, we need a separate function to handle such field's mapping:\n\t * ```\n\t * fromJson(value: string): Buffer {\n\t * \treturn Buffer.from(value, 'hex');\n\t * },\n\t * ```\n\t *\n\t * It'll cause the returned data to change from:\n\t * ```\n\t * {\n\t * \tcustomField: \"04A8...\";\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tcustomField: Buffer([...]);\n\t * }\n\t * ```\n\t */\n\tfromJson?: (value: T['jsonData']) => T['data'];\n\n\t/**\n\t * Optional selection modifier function, that is used for modifying selection of column inside [JSON functions](https://orm.drizzle.team/docs/json-functions)\n\t *\n\t * Additional mapping that could be required for such scenarios can be handled using {@link fromJson} function\n\t *\n\t * Used by [relational queries](https://orm.drizzle.team/docs/rqb-v2)\n\t *\n\t * Following types are being casted to text by default: `numeric`, `decimal`, `bigint`, `blob` (via `hex()` function)\n\t * @example\n\t * For example, when using numeric field for bigint storage we need to cast field to text to preserve data integrity\n\t * ```\n\t * forJsonSelect(identifier: SQL, sql: SQLGenerator): SQL {\n\t * \treturn sql`cast(${identifier} as text)`\n\t * },\n\t * ```\n\t *\n\t * This will change query from:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\t`table`.`custom_bigint` AS \"bigint\"\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t * to:\n\t * ```\n\t * SELECT\n\t * \tjson_object('bigint', `t`.`bigint`)\n\t * \tFROM\n\t * \t(\n\t * \t\tSELECT\n\t * \t\tcast(`table`.`custom_bigint` as text) AS `bigint`\n\t * \t\tFROM\n\t * \t\t`table`\n\t * \t) AS `t`\n\t * ```\n\t *\n\t * Returned by query object will change from:\n\t * ```\n\t * {\n\t * \tbigint: 5044565289845416000; // Partial data loss due to direct conversion to JSON format\n\t * }\n\t * ```\n\t * to:\n\t * ```\n\t * {\n\t * \tbigint: \"5044565289845416380\"; // Data is preserved due to conversion of field to text before JSON-ification\n\t * }\n\t * ```\n\t */\n\tforJsonSelect?: (identifier: SQL, sql: SQLGenerator) => SQL;\n}\n\n/**\n * Custom sqlite database data type generator\n */\nexport function customType<T extends CustomTypeValues = CustomTypeValues>(\n\tcustomTypeParams: CustomTypeParams<T>,\n): Equal<T['configRequired'], true> extends true ? {\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n\t: {\n\t\t(): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig?: TConfig,\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t\t(\n\t\t\tdbname: string,\n\t\t\tfieldConfig?: T['config'],\n\t\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>>;\n\t}\n{\n\treturn (\n\t\ta?: string | T['config'],\n\t\tb?: T['config'],\n\t): SQLiteCustomColumnBuilder<ConvertCustomConfig<T>> => {\n\t\tconst { name, config } = getColumnNameAndConfig<T['config']>(a, b);\n\t\treturn new SQLiteCustomColumnBuilder(\n\t\t\tname,\n\t\t\tconfig,\n\t\t\tcustomTypeParams,\n\t\t);\n\t};\n}\n"],"mappings":"AAEA,SAAS,kBAAkB;AAG3B,SAAqB,8BAA8B;AACnD,SAAS,cAAc,2BAA2B;AAe3C,MAAM,kCAA+E,oBAM1F;AAAA,EACD,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACA,aACA,kBACC;AACD,UAAM,MAAM,UAAU,oBAAoB;AAC1C,SAAK,OAAO,cAAc;AAC1B,SAAK,OAAO,mBAAmB;AAAA,EAChC;AAAA;AAAA,EAGS,MAAM,OAAoB;AAClC,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,2BAAiE,aAAgB;AAAA,EAC7F,QAA0B,UAAU,IAAY;AAAA,EAExC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EAER,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AACnB,SAAK,UAAU,OAAO,iBAAiB,SAAS,OAAO,WAAW;AAClE,SAAK,QAAQ,OAAO,iBAAiB;AACrC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,UAAU,OAAO,iBAAiB;AACvC,SAAK,gBAAgB,OAAO,iBAAiB;AAAA,EAC9C;AAAA,EAEA,aAAqB;AACpB,WAAO,KAAK;AAAA,EACb;AAAA,EAES,mBAAmB,OAAoC;AAC/D,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI;AAAA,EACnE;AAAA,EAEA,iBAAiB,OAA2B;AAC3C,WAAO,OAAO,KAAK,YAAY,aAAa,KAAK,QAAQ,KAAK,IAAI,KAAK,mBAAmB,KAAK;AAAA,EAChG;AAAA,EAEA,qBAAqB,YAAiB,KAAwB;AAC7D,QAAI,OAAO,KAAK,kBAAkB,WAAY,QAAO,KAAK,cAAc,YAAY,GAAG;AAEvF,UAAM,UAAU,KAAK,WAAW,EAAE,YAAY;AAC9C,UAAM,WAAW,QAAQ,QAAQ,GAAG;AACpC,UAAM,OAAQ,WAAW,IAAK,QAAQ,MAAM,GAAG,QAAQ,IAAI;AAE3D,YAAQ,MAAM;AAAA,MACb,KAAK;AAAA,MACL,KAAK;AAAA,MACL,KAAK,UAAU;AACd,eAAO,WAAW,UAAU;AAAA,MAC7B;AAAA,MACA,KAAK,QAAQ;AACZ,eAAO,UAAU,UAAU;AAAA,MAC5B;AAAA,MACA,SAAS;AACR,eAAO;AAAA,MACR;AAAA,IACD;AAAA,EACD;AAAA,EAES,iBAAiB,OAAoC;AAC7D,WAAO,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,EAC/D;AACD;AAoOO,SAAS,WACf,kBAoBD;AACC,SAAO,CACN,GACA,MACuD;AACvD,UAAM,EAAE,MAAM,OAAO,IAAI,uBAAoC,GAAG,CAAC;AACjE,WAAO,IAAI;AAAA,MACV;AAAA,MACA;AAAA,MACA;AAAA,IACD;AAAA,EACD;AACD;","names":[]}
|