drizzle-orm 0.36.4-ddb97ec → 0.37.0-0c27176
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/column-builder.cjs.map +1 -1
- package/column-builder.d.cts +4 -3
- package/column-builder.d.ts +4 -3
- package/column-builder.js.map +1 -1
- package/durable-sqlite/driver.cjs +64 -0
- package/durable-sqlite/driver.cjs.map +1 -0
- package/durable-sqlite/driver.d.cts +9 -0
- package/durable-sqlite/driver.d.ts +9 -0
- package/durable-sqlite/driver.js +42 -0
- package/durable-sqlite/driver.js.map +1 -0
- package/durable-sqlite/index.cjs +25 -0
- package/durable-sqlite/index.cjs.map +1 -0
- package/durable-sqlite/index.d.cts +2 -0
- package/durable-sqlite/index.d.ts +2 -0
- package/durable-sqlite/index.js +3 -0
- package/durable-sqlite/index.js.map +1 -0
- package/durable-sqlite/migrator.cjs +85 -0
- package/durable-sqlite/migrator.cjs.map +1 -0
- package/durable-sqlite/migrator.d.cts +14 -0
- package/durable-sqlite/migrator.d.ts +14 -0
- package/durable-sqlite/migrator.js +61 -0
- package/durable-sqlite/migrator.js.map +1 -0
- package/durable-sqlite/session.cjs +131 -0
- package/durable-sqlite/session.cjs.map +1 -0
- package/durable-sqlite/session.d.cts +46 -0
- package/durable-sqlite/session.d.ts +46 -0
- package/durable-sqlite/session.js +107 -0
- package/durable-sqlite/session.js.map +1 -0
- package/mysql-core/columns/all.cjs +4 -1
- package/mysql-core/columns/all.cjs.map +1 -1
- package/mysql-core/columns/all.d.cts +4 -1
- package/mysql-core/columns/all.d.ts +4 -1
- package/mysql-core/columns/all.js +5 -2
- package/mysql-core/columns/all.js.map +1 -1
- package/mysql-core/columns/char.cjs.map +1 -1
- package/mysql-core/columns/char.d.cts +19 -10
- package/mysql-core/columns/char.d.ts +19 -10
- package/mysql-core/columns/char.js.map +1 -1
- 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.map +1 -1
- package/mysql-core/columns/text.cjs.map +1 -1
- package/mysql-core/columns/text.d.cts +1 -1
- package/mysql-core/columns/text.d.ts +1 -1
- package/mysql-core/columns/text.js.map +1 -1
- package/mysql-core/columns/varchar.cjs.map +1 -1
- package/mysql-core/columns/varchar.d.cts +14 -7
- package/mysql-core/columns/varchar.d.ts +14 -7
- package/mysql-core/columns/varchar.js.map +1 -1
- package/mysql-core/utils.d.cts +2 -3
- package/mysql-core/utils.d.ts +2 -3
- package/mysql-core/view.cjs.map +1 -1
- package/mysql-core/view.d.cts +2 -3
- package/mysql-core/view.d.ts +2 -3
- package/mysql-core/view.js.map +1 -1
- 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.map +1 -1
- package/package.json +784 -3
- package/pg-core/columns/char.cjs +4 -1
- package/pg-core/columns/char.cjs.map +1 -1
- package/pg-core/columns/char.d.cts +21 -12
- package/pg-core/columns/char.d.ts +21 -12
- package/pg-core/columns/char.js +4 -1
- package/pg-core/columns/char.js.map +1 -1
- package/pg-core/columns/common.cjs.map +1 -1
- package/pg-core/columns/common.d.cts +25 -8
- package/pg-core/columns/common.d.ts +25 -8
- package/pg-core/columns/common.js.map +1 -1
- package/pg-core/columns/varchar.cjs +4 -1
- package/pg-core/columns/varchar.cjs.map +1 -1
- package/pg-core/columns/varchar.d.cts +21 -12
- package/pg-core/columns/varchar.d.ts +21 -12
- package/pg-core/columns/varchar.js +4 -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 +18 -11
- package/pg-core/columns/vector_extension/bit.d.ts +18 -11
- 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 +20 -11
- package/pg-core/columns/vector_extension/halfvec.d.ts +20 -11
- package/pg-core/columns/vector_extension/halfvec.js.map +1 -1
- package/pg-core/columns/vector_extension/vector.cjs +4 -1
- package/pg-core/columns/vector_extension/vector.cjs.map +1 -1
- package/pg-core/columns/vector_extension/vector.d.cts +19 -10
- package/pg-core/columns/vector_extension/vector.d.ts +19 -10
- package/pg-core/columns/vector_extension/vector.js +4 -1
- package/pg-core/columns/vector_extension/vector.js.map +1 -1
- package/pg-core/db.cjs +4 -2
- package/pg-core/db.cjs.map +1 -1
- package/pg-core/db.js +4 -2
- package/pg-core/db.js.map +1 -1
- package/pg-core/utils.d.cts +2 -3
- package/pg-core/utils.d.ts +2 -3
- package/pg-core/view.cjs.map +1 -1
- package/pg-core/view.d.cts +4 -5
- package/pg-core/view.d.ts +4 -5
- package/pg-core/view.js.map +1 -1
- package/query-builders/select.types.cjs.map +1 -1
- package/query-builders/select.types.d.cts +2 -2
- package/query-builders/select.types.d.ts +2 -2
- package/singlestore/driver.cjs +113 -0
- package/singlestore/driver.cjs.map +1 -0
- package/singlestore/driver.d.cts +52 -0
- package/singlestore/driver.d.ts +52 -0
- package/singlestore/driver.js +89 -0
- package/singlestore/driver.js.map +1 -0
- package/singlestore/index.cjs +25 -0
- package/singlestore/index.cjs.map +1 -0
- package/singlestore/index.d.cts +2 -0
- package/singlestore/index.d.ts +2 -0
- package/singlestore/index.js +3 -0
- package/singlestore/index.js.map +1 -0
- package/singlestore/migrator.cjs +33 -0
- package/singlestore/migrator.cjs.map +1 -0
- package/singlestore/migrator.d.cts +3 -0
- package/singlestore/migrator.d.ts +3 -0
- package/singlestore/migrator.js +9 -0
- package/singlestore/migrator.js.map +1 -0
- package/singlestore/session.cjs +258 -0
- package/singlestore/session.cjs.map +1 -0
- package/singlestore/session.d.cts +52 -0
- package/singlestore/session.d.ts +52 -0
- package/singlestore/session.js +236 -0
- package/singlestore/session.js.map +1 -0
- package/singlestore-core/alias.cjs +32 -0
- package/singlestore-core/alias.cjs.map +1 -0
- package/singlestore-core/alias.d.cts +4 -0
- package/singlestore-core/alias.d.ts +4 -0
- package/singlestore-core/alias.js +8 -0
- package/singlestore-core/alias.js.map +1 -0
- package/singlestore-core/columns/all.cjs +80 -0
- package/singlestore-core/columns/all.cjs.map +1 -0
- package/singlestore-core/columns/all.d.cts +51 -0
- package/singlestore-core/columns/all.d.ts +51 -0
- package/singlestore-core/columns/all.js +56 -0
- package/singlestore-core/columns/all.js.map +1 -0
- package/singlestore-core/columns/bigint.cjs +96 -0
- package/singlestore-core/columns/bigint.cjs.map +1 -0
- package/singlestore-core/columns/bigint.d.cts +53 -0
- package/singlestore-core/columns/bigint.d.ts +53 -0
- package/singlestore-core/columns/bigint.js +68 -0
- package/singlestore-core/columns/bigint.js.map +1 -0
- package/singlestore-core/columns/binary.cjs +60 -0
- package/singlestore-core/columns/binary.cjs.map +1 -0
- package/singlestore-core/columns/binary.d.cts +28 -0
- package/singlestore-core/columns/binary.d.ts +28 -0
- package/singlestore-core/columns/binary.js +34 -0
- package/singlestore-core/columns/binary.js.map +1 -0
- package/singlestore-core/columns/boolean.cjs +62 -0
- package/singlestore-core/columns/boolean.cjs.map +1 -0
- package/singlestore-core/columns/boolean.d.cts +24 -0
- package/singlestore-core/columns/boolean.d.ts +24 -0
- package/singlestore-core/columns/boolean.js +36 -0
- package/singlestore-core/columns/boolean.js.map +1 -0
- package/singlestore-core/columns/char.cjs +62 -0
- package/singlestore-core/columns/char.cjs.map +1 -0
- package/singlestore-core/columns/char.d.cts +31 -0
- package/singlestore-core/columns/char.d.ts +31 -0
- package/singlestore-core/columns/char.js +36 -0
- package/singlestore-core/columns/char.js.map +1 -0
- package/singlestore-core/columns/common.cjs +82 -0
- package/singlestore-core/columns/common.cjs.map +1 -0
- package/singlestore-core/columns/common.d.cts +42 -0
- package/singlestore-core/columns/common.d.ts +42 -0
- package/singlestore-core/columns/common.js +55 -0
- package/singlestore-core/columns/common.js.map +1 -0
- package/singlestore-core/columns/custom.cjs +77 -0
- package/singlestore-core/columns/custom.cjs.map +1 -0
- package/singlestore-core/columns/custom.d.cts +156 -0
- package/singlestore-core/columns/custom.d.ts +156 -0
- package/singlestore-core/columns/custom.js +51 -0
- package/singlestore-core/columns/custom.js.map +1 -0
- package/singlestore-core/columns/date.cjs +93 -0
- package/singlestore-core/columns/date.cjs.map +1 -0
- package/singlestore-core/columns/date.common.cjs +48 -0
- package/singlestore-core/columns/date.common.cjs.map +1 -0
- package/singlestore-core/columns/date.common.d.cts +16 -0
- package/singlestore-core/columns/date.common.d.ts +16 -0
- package/singlestore-core/columns/date.common.js +23 -0
- package/singlestore-core/columns/date.common.js.map +1 -0
- package/singlestore-core/columns/date.d.cts +53 -0
- package/singlestore-core/columns/date.d.ts +53 -0
- package/singlestore-core/columns/date.js +65 -0
- package/singlestore-core/columns/date.js.map +1 -0
- package/singlestore-core/columns/datetime.cjs +106 -0
- package/singlestore-core/columns/datetime.cjs.map +1 -0
- package/singlestore-core/columns/datetime.d.cts +54 -0
- package/singlestore-core/columns/datetime.d.ts +54 -0
- package/singlestore-core/columns/datetime.js +78 -0
- package/singlestore-core/columns/datetime.js.map +1 -0
- package/singlestore-core/columns/decimal.cjs +76 -0
- package/singlestore-core/columns/decimal.cjs.map +1 -0
- package/singlestore-core/columns/decimal.d.cts +32 -0
- package/singlestore-core/columns/decimal.d.ts +32 -0
- package/singlestore-core/columns/decimal.js +50 -0
- package/singlestore-core/columns/decimal.js.map +1 -0
- package/singlestore-core/columns/double.cjs +72 -0
- package/singlestore-core/columns/double.cjs.map +1 -0
- package/singlestore-core/columns/double.d.cts +32 -0
- package/singlestore-core/columns/double.d.ts +32 -0
- package/singlestore-core/columns/double.js +46 -0
- package/singlestore-core/columns/double.js.map +1 -0
- package/singlestore-core/columns/enum.cjs +67 -0
- package/singlestore-core/columns/enum.cjs.map +1 -0
- package/singlestore-core/columns/enum.d.cts +31 -0
- package/singlestore-core/columns/enum.d.ts +31 -0
- package/singlestore-core/columns/enum.js +41 -0
- package/singlestore-core/columns/enum.js.map +1 -0
- package/singlestore-core/columns/float.cjs +72 -0
- package/singlestore-core/columns/float.cjs.map +1 -0
- package/singlestore-core/columns/float.d.cts +32 -0
- package/singlestore-core/columns/float.d.ts +32 -0
- package/singlestore-core/columns/float.js +46 -0
- package/singlestore-core/columns/float.js.map +1 -0
- package/singlestore-core/columns/index.cjs +71 -0
- package/singlestore-core/columns/index.cjs.map +1 -0
- package/singlestore-core/columns/index.d.cts +25 -0
- package/singlestore-core/columns/index.d.ts +25 -0
- package/singlestore-core/columns/index.js +26 -0
- package/singlestore-core/columns/index.js.map +1 -0
- package/singlestore-core/columns/int.cjs +65 -0
- package/singlestore-core/columns/int.cjs.map +1 -0
- package/singlestore-core/columns/int.d.cts +28 -0
- package/singlestore-core/columns/int.d.ts +28 -0
- package/singlestore-core/columns/int.js +39 -0
- package/singlestore-core/columns/int.js.map +1 -0
- package/singlestore-core/columns/json.cjs +59 -0
- package/singlestore-core/columns/json.cjs.map +1 -0
- package/singlestore-core/columns/json.d.cts +24 -0
- package/singlestore-core/columns/json.d.ts +24 -0
- package/singlestore-core/columns/json.js +33 -0
- package/singlestore-core/columns/json.js.map +1 -0
- package/singlestore-core/columns/mediumint.cjs +65 -0
- package/singlestore-core/columns/mediumint.cjs.map +1 -0
- package/singlestore-core/columns/mediumint.d.cts +26 -0
- package/singlestore-core/columns/mediumint.d.ts +26 -0
- package/singlestore-core/columns/mediumint.js +39 -0
- package/singlestore-core/columns/mediumint.js.map +1 -0
- package/singlestore-core/columns/real.cjs +68 -0
- package/singlestore-core/columns/real.cjs.map +1 -0
- package/singlestore-core/columns/real.d.cts +30 -0
- package/singlestore-core/columns/real.d.ts +30 -0
- package/singlestore-core/columns/real.js +42 -0
- package/singlestore-core/columns/real.js.map +1 -0
- package/singlestore-core/columns/serial.cjs +64 -0
- package/singlestore-core/columns/serial.cjs.map +1 -0
- package/singlestore-core/columns/serial.d.cts +24 -0
- package/singlestore-core/columns/serial.d.ts +24 -0
- package/singlestore-core/columns/serial.js +38 -0
- package/singlestore-core/columns/serial.js.map +1 -0
- package/singlestore-core/columns/smallint.cjs +65 -0
- package/singlestore-core/columns/smallint.cjs.map +1 -0
- package/singlestore-core/columns/smallint.d.cts +26 -0
- package/singlestore-core/columns/smallint.d.ts +26 -0
- package/singlestore-core/columns/smallint.js +39 -0
- package/singlestore-core/columns/smallint.js.map +1 -0
- package/singlestore-core/columns/text.cjs +80 -0
- package/singlestore-core/columns/text.cjs.map +1 -0
- package/singlestore-core/columns/text.d.cts +46 -0
- package/singlestore-core/columns/text.d.ts +46 -0
- package/singlestore-core/columns/text.js +51 -0
- package/singlestore-core/columns/text.js.map +1 -0
- package/singlestore-core/columns/time.cjs +56 -0
- package/singlestore-core/columns/time.cjs.map +1 -0
- package/singlestore-core/columns/time.d.cts +23 -0
- package/singlestore-core/columns/time.d.ts +23 -0
- package/singlestore-core/columns/time.js +30 -0
- package/singlestore-core/columns/time.js.map +1 -0
- package/singlestore-core/columns/timestamp.cjs +97 -0
- package/singlestore-core/columns/timestamp.cjs.map +1 -0
- package/singlestore-core/columns/timestamp.d.cts +49 -0
- package/singlestore-core/columns/timestamp.d.ts +49 -0
- package/singlestore-core/columns/timestamp.js +69 -0
- package/singlestore-core/columns/timestamp.js.map +1 -0
- package/singlestore-core/columns/tinyint.cjs +65 -0
- package/singlestore-core/columns/tinyint.cjs.map +1 -0
- package/singlestore-core/columns/tinyint.d.cts +26 -0
- package/singlestore-core/columns/tinyint.d.ts +26 -0
- package/singlestore-core/columns/tinyint.js +39 -0
- package/singlestore-core/columns/tinyint.js.map +1 -0
- package/singlestore-core/columns/varbinary.cjs +61 -0
- package/singlestore-core/columns/varbinary.cjs.map +1 -0
- package/singlestore-core/columns/varbinary.d.cts +26 -0
- package/singlestore-core/columns/varbinary.d.ts +26 -0
- package/singlestore-core/columns/varbinary.js +35 -0
- package/singlestore-core/columns/varbinary.js.map +1 -0
- package/singlestore-core/columns/varchar.cjs +63 -0
- package/singlestore-core/columns/varchar.cjs.map +1 -0
- package/singlestore-core/columns/varchar.d.cts +29 -0
- package/singlestore-core/columns/varchar.d.ts +29 -0
- package/singlestore-core/columns/varchar.js +37 -0
- package/singlestore-core/columns/varchar.js.map +1 -0
- package/singlestore-core/columns/year.cjs +56 -0
- package/singlestore-core/columns/year.cjs.map +1 -0
- package/singlestore-core/columns/year.d.cts +23 -0
- package/singlestore-core/columns/year.d.ts +23 -0
- package/singlestore-core/columns/year.js +30 -0
- package/singlestore-core/columns/year.js.map +1 -0
- package/singlestore-core/db.cjs +261 -0
- package/singlestore-core/db.cjs.map +1 -0
- package/singlestore-core/db.d.cts +231 -0
- package/singlestore-core/db.d.ts +231 -0
- package/singlestore-core/db.js +242 -0
- package/singlestore-core/db.js.map +1 -0
- package/singlestore-core/dialect.cjs +607 -0
- package/singlestore-core/dialect.cjs.map +1 -0
- package/singlestore-core/dialect.d.cts +64 -0
- package/singlestore-core/dialect.d.ts +64 -0
- package/singlestore-core/dialect.js +589 -0
- package/singlestore-core/dialect.js.map +1 -0
- package/singlestore-core/expressions.cjs +49 -0
- package/singlestore-core/expressions.cjs.map +1 -0
- package/singlestore-core/expressions.d.cts +8 -0
- package/singlestore-core/expressions.d.ts +8 -0
- package/singlestore-core/expressions.js +22 -0
- package/singlestore-core/expressions.js.map +1 -0
- package/singlestore-core/index.cjs +47 -0
- package/singlestore-core/index.cjs.map +1 -0
- package/singlestore-core/index.d.cts +13 -0
- package/singlestore-core/index.d.ts +13 -0
- package/singlestore-core/index.js +14 -0
- package/singlestore-core/index.js.map +1 -0
- package/singlestore-core/indexes.cjs +88 -0
- package/singlestore-core/indexes.cjs.map +1 -0
- package/singlestore-core/indexes.d.cts +62 -0
- package/singlestore-core/indexes.d.ts +62 -0
- package/singlestore-core/indexes.js +60 -0
- package/singlestore-core/indexes.js.map +1 -0
- package/singlestore-core/primary-keys.cjs +68 -0
- package/singlestore-core/primary-keys.cjs.map +1 -0
- package/singlestore-core/primary-keys.d.cts +30 -0
- package/singlestore-core/primary-keys.d.ts +30 -0
- package/singlestore-core/primary-keys.js +42 -0
- package/singlestore-core/primary-keys.js.map +1 -0
- package/singlestore-core/query-builders/count.cjs +73 -0
- package/singlestore-core/query-builders/count.cjs.map +1 -0
- package/singlestore-core/query-builders/count.d.cts +25 -0
- package/singlestore-core/query-builders/count.d.ts +25 -0
- package/singlestore-core/query-builders/count.js +49 -0
- package/singlestore-core/query-builders/count.js.map +1 -0
- package/singlestore-core/query-builders/delete.cjs +123 -0
- package/singlestore-core/query-builders/delete.cjs.map +1 -0
- package/singlestore-core/query-builders/delete.d.cts +83 -0
- package/singlestore-core/query-builders/delete.d.ts +83 -0
- package/singlestore-core/query-builders/delete.js +99 -0
- package/singlestore-core/query-builders/delete.js.map +1 -0
- package/singlestore-core/query-builders/index.cjs +33 -0
- package/singlestore-core/query-builders/index.cjs.map +1 -0
- package/singlestore-core/query-builders/index.d.cts +6 -0
- package/singlestore-core/query-builders/index.d.ts +6 -0
- package/singlestore-core/query-builders/index.js +7 -0
- package/singlestore-core/query-builders/index.js.map +1 -0
- package/singlestore-core/query-builders/insert.cjs +146 -0
- package/singlestore-core/query-builders/insert.cjs.map +1 -0
- package/singlestore-core/query-builders/insert.d.cts +106 -0
- package/singlestore-core/query-builders/insert.d.ts +106 -0
- package/singlestore-core/query-builders/insert.js +121 -0
- package/singlestore-core/query-builders/insert.js.map +1 -0
- package/singlestore-core/query-builders/query-builder.cjs +99 -0
- package/singlestore-core/query-builders/query-builder.cjs.map +1 -0
- package/singlestore-core/query-builders/query-builder.d.cts +33 -0
- package/singlestore-core/query-builders/query-builder.d.ts +33 -0
- package/singlestore-core/query-builders/query-builder.js +75 -0
- package/singlestore-core/query-builders/query-builder.js.map +1 -0
- package/singlestore-core/query-builders/query.cjs +126 -0
- package/singlestore-core/query-builders/query.cjs.map +1 -0
- package/singlestore-core/query-builders/query.d.cts +42 -0
- package/singlestore-core/query-builders/query.d.ts +42 -0
- package/singlestore-core/query-builders/query.js +103 -0
- package/singlestore-core/query-builders/query.js.map +1 -0
- package/singlestore-core/query-builders/select.cjs +687 -0
- package/singlestore-core/query-builders/select.cjs.map +1 -0
- package/singlestore-core/query-builders/select.d.cts +585 -0
- package/singlestore-core/query-builders/select.d.ts +585 -0
- package/singlestore-core/query-builders/select.js +662 -0
- package/singlestore-core/query-builders/select.js.map +1 -0
- package/singlestore-core/query-builders/select.types.cjs +17 -0
- package/singlestore-core/query-builders/select.types.cjs.map +1 -0
- package/singlestore-core/query-builders/select.types.d.cts +137 -0
- package/singlestore-core/query-builders/select.types.d.ts +137 -0
- package/singlestore-core/query-builders/select.types.js +1 -0
- package/singlestore-core/query-builders/select.types.js.map +1 -0
- package/singlestore-core/query-builders/update.cjs +147 -0
- package/singlestore-core/query-builders/update.cjs.map +1 -0
- package/singlestore-core/query-builders/update.d.cts +102 -0
- package/singlestore-core/query-builders/update.d.ts +102 -0
- package/singlestore-core/query-builders/update.js +122 -0
- package/singlestore-core/query-builders/update.js.map +1 -0
- package/singlestore-core/schema.cjs +56 -0
- package/singlestore-core/schema.cjs.map +1 -0
- package/singlestore-core/schema.d.cts +22 -0
- package/singlestore-core/schema.d.ts +22 -0
- package/singlestore-core/schema.js +29 -0
- package/singlestore-core/schema.js.map +1 -0
- package/singlestore-core/session.cjs +87 -0
- package/singlestore-core/session.cjs.map +1 -0
- package/singlestore-core/session.d.cts +66 -0
- package/singlestore-core/session.d.ts +66 -0
- package/singlestore-core/session.js +61 -0
- package/singlestore-core/session.js.map +1 -0
- package/singlestore-core/subquery.cjs +17 -0
- package/singlestore-core/subquery.cjs.map +1 -0
- package/singlestore-core/subquery.d.cts +5 -0
- package/singlestore-core/subquery.d.ts +5 -0
- package/singlestore-core/subquery.js +1 -0
- package/singlestore-core/subquery.js.map +1 -0
- package/singlestore-core/table.cjs +73 -0
- package/singlestore-core/table.cjs.map +1 -0
- package/singlestore-core/table.d.cts +40 -0
- package/singlestore-core/table.d.ts +40 -0
- package/singlestore-core/table.js +46 -0
- package/singlestore-core/table.js.map +1 -0
- package/singlestore-core/unique-constraint.cjs +82 -0
- package/singlestore-core/unique-constraint.cjs.map +1 -0
- package/singlestore-core/unique-constraint.d.cts +24 -0
- package/singlestore-core/unique-constraint.d.ts +24 -0
- package/singlestore-core/unique-constraint.js +54 -0
- package/singlestore-core/unique-constraint.js.map +1 -0
- package/singlestore-core/utils.cjs +65 -0
- package/singlestore-core/utils.cjs.map +1 -0
- package/singlestore-core/utils.d.cts +13 -0
- package/singlestore-core/utils.d.ts +13 -0
- package/singlestore-core/utils.js +41 -0
- package/singlestore-core/utils.js.map +1 -0
- package/singlestore-core/view-base.cjs +33 -0
- package/singlestore-core/view-base.cjs.map +1 -0
- package/singlestore-core/view-base.d.cts +9 -0
- package/singlestore-core/view-base.d.ts +9 -0
- package/singlestore-core/view-base.js +9 -0
- package/singlestore-core/view-base.js.map +1 -0
- package/singlestore-core/view-common.cjs +29 -0
- package/singlestore-core/view-common.cjs.map +1 -0
- package/singlestore-core/view-common.d.cts +1 -0
- package/singlestore-core/view-common.d.ts +1 -0
- package/singlestore-core/view-common.js +5 -0
- package/singlestore-core/view-common.js.map +1 -0
- package/singlestore-core/view.cjs +146 -0
- package/singlestore-core/view.cjs.map +1 -0
- package/singlestore-core/view.d.cts +65 -0
- package/singlestore-core/view.d.ts +65 -0
- package/singlestore-core/view.js +119 -0
- package/singlestore-core/view.js.map +1 -0
- package/singlestore-proxy/driver.cjs +62 -0
- package/singlestore-proxy/driver.cjs.map +1 -0
- package/singlestore-proxy/driver.d.cts +13 -0
- package/singlestore-proxy/driver.d.ts +13 -0
- package/singlestore-proxy/driver.js +42 -0
- package/singlestore-proxy/driver.js.map +1 -0
- package/singlestore-proxy/index.cjs +25 -0
- package/singlestore-proxy/index.cjs.map +1 -0
- package/singlestore-proxy/index.d.cts +2 -0
- package/singlestore-proxy/index.d.ts +2 -0
- package/singlestore-proxy/index.js +3 -0
- package/singlestore-proxy/index.js.map +1 -0
- package/singlestore-proxy/migrator.cjs +60 -0
- package/singlestore-proxy/migrator.cjs.map +1 -0
- package/singlestore-proxy/migrator.d.cts +4 -0
- package/singlestore-proxy/migrator.d.ts +4 -0
- package/singlestore-proxy/migrator.js +36 -0
- package/singlestore-proxy/migrator.js.map +1 -0
- package/singlestore-proxy/session.cjs +127 -0
- package/singlestore-proxy/session.cjs.map +1 -0
- package/singlestore-proxy/session.d.cts +50 -0
- package/singlestore-proxy/session.d.ts +50 -0
- package/singlestore-proxy/session.js +101 -0
- package/singlestore-proxy/session.js.map +1 -0
- package/sql/sql.cjs +8 -0
- package/sql/sql.cjs.map +1 -1
- package/sql/sql.d.cts +10 -2
- package/sql/sql.d.ts +10 -2
- package/sql/sql.js +7 -0
- package/sql/sql.js.map +1 -1
- package/sqlite-core/columns/blob.cjs +16 -2
- package/sqlite-core/columns/blob.cjs.map +1 -1
- package/sqlite-core/columns/blob.d.cts +2 -2
- package/sqlite-core/columns/blob.d.ts +2 -2
- package/sqlite-core/columns/blob.js +16 -2
- package/sqlite-core/columns/blob.js.map +1 -1
- package/sqlite-core/columns/common.cjs.map +1 -1
- package/sqlite-core/columns/common.d.cts +1 -1
- package/sqlite-core/columns/common.d.ts +1 -1
- package/sqlite-core/columns/common.js.map +1 -1
- package/sqlite-core/columns/text.cjs +4 -1
- package/sqlite-core/columns/text.cjs.map +1 -1
- package/sqlite-core/columns/text.d.cts +19 -12
- package/sqlite-core/columns/text.d.ts +19 -12
- package/sqlite-core/columns/text.js +4 -1
- package/sqlite-core/columns/text.js.map +1 -1
- package/sqlite-core/utils.d.cts +2 -3
- package/sqlite-core/utils.d.ts +2 -3
- package/sqlite-core/view.cjs.map +1 -1
- package/sqlite-core/view.d.cts +2 -3
- package/sqlite-core/view.d.ts +2 -3
- package/sqlite-core/view.js.map +1 -1
- package/supabase/rls.d.cts +3 -1
- package/supabase/rls.d.ts +3 -1
- package/utils.cjs +5 -0
- package/utils.cjs.map +1 -1
- package/utils.d.cts +2 -1
- package/utils.d.ts +2 -1
- package/utils.js +4 -0
- package/utils.js.map +1 -1
- package/version.cjs +1 -1
- package/version.d.cts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import { SelectionProxyHandler } from "../selection-proxy.js";
|
|
3
|
+
import { getTableColumns } from "../utils.js";
|
|
4
|
+
import { QueryBuilder } from "./query-builders/query-builder.js";
|
|
5
|
+
import { singlestoreTable } from "./table.js";
|
|
6
|
+
import { SingleStoreViewBase } from "./view-base.js";
|
|
7
|
+
import { SingleStoreViewConfig } from "./view-common.js";
|
|
8
|
+
class ViewBuilderCore {
|
|
9
|
+
constructor(name, schema) {
|
|
10
|
+
this.name = name;
|
|
11
|
+
this.schema = schema;
|
|
12
|
+
}
|
|
13
|
+
static [entityKind] = "SingleStoreViewBuilder";
|
|
14
|
+
config = {};
|
|
15
|
+
algorithm(algorithm) {
|
|
16
|
+
this.config.algorithm = algorithm;
|
|
17
|
+
return this;
|
|
18
|
+
}
|
|
19
|
+
definer(definer) {
|
|
20
|
+
this.config.definer = definer;
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
sqlSecurity(sqlSecurity) {
|
|
24
|
+
this.config.sqlSecurity = sqlSecurity;
|
|
25
|
+
return this;
|
|
26
|
+
}
|
|
27
|
+
withCheckOption(withCheckOption) {
|
|
28
|
+
this.config.withCheckOption = withCheckOption ?? "cascaded";
|
|
29
|
+
return this;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
class ViewBuilder extends ViewBuilderCore {
|
|
33
|
+
static [entityKind] = "SingleStoreViewBuilder";
|
|
34
|
+
as(qb) {
|
|
35
|
+
if (typeof qb === "function") {
|
|
36
|
+
qb = qb(new QueryBuilder());
|
|
37
|
+
}
|
|
38
|
+
const selectionProxy = new SelectionProxyHandler({
|
|
39
|
+
alias: this.name,
|
|
40
|
+
sqlBehavior: "error",
|
|
41
|
+
sqlAliasedBehavior: "alias",
|
|
42
|
+
replaceOriginalName: true
|
|
43
|
+
});
|
|
44
|
+
const aliasedSelection = new Proxy(qb.getSelectedFields(), selectionProxy);
|
|
45
|
+
return new Proxy(
|
|
46
|
+
new SingleStoreView({
|
|
47
|
+
singlestoreConfig: this.config,
|
|
48
|
+
config: {
|
|
49
|
+
name: this.name,
|
|
50
|
+
schema: this.schema,
|
|
51
|
+
selectedFields: aliasedSelection,
|
|
52
|
+
query: qb.getSQL().inlineParams()
|
|
53
|
+
}
|
|
54
|
+
}),
|
|
55
|
+
selectionProxy
|
|
56
|
+
);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
class ManualViewBuilder extends ViewBuilderCore {
|
|
60
|
+
static [entityKind] = "SingleStoreManualViewBuilder";
|
|
61
|
+
columns;
|
|
62
|
+
constructor(name, columns, schema) {
|
|
63
|
+
super(name, schema);
|
|
64
|
+
this.columns = getTableColumns(singlestoreTable(name, columns));
|
|
65
|
+
}
|
|
66
|
+
existing() {
|
|
67
|
+
return new Proxy(
|
|
68
|
+
new SingleStoreView({
|
|
69
|
+
singlestoreConfig: void 0,
|
|
70
|
+
config: {
|
|
71
|
+
name: this.name,
|
|
72
|
+
schema: this.schema,
|
|
73
|
+
selectedFields: this.columns,
|
|
74
|
+
query: void 0
|
|
75
|
+
}
|
|
76
|
+
}),
|
|
77
|
+
new SelectionProxyHandler({
|
|
78
|
+
alias: this.name,
|
|
79
|
+
sqlBehavior: "error",
|
|
80
|
+
sqlAliasedBehavior: "alias",
|
|
81
|
+
replaceOriginalName: true
|
|
82
|
+
})
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
as(query) {
|
|
86
|
+
return new Proxy(
|
|
87
|
+
new SingleStoreView({
|
|
88
|
+
singlestoreConfig: this.config,
|
|
89
|
+
config: {
|
|
90
|
+
name: this.name,
|
|
91
|
+
schema: this.schema,
|
|
92
|
+
selectedFields: this.columns,
|
|
93
|
+
query: query.inlineParams()
|
|
94
|
+
}
|
|
95
|
+
}),
|
|
96
|
+
new SelectionProxyHandler({
|
|
97
|
+
alias: this.name,
|
|
98
|
+
sqlBehavior: "error",
|
|
99
|
+
sqlAliasedBehavior: "alias",
|
|
100
|
+
replaceOriginalName: true
|
|
101
|
+
})
|
|
102
|
+
);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
class SingleStoreView extends SingleStoreViewBase {
|
|
106
|
+
static [entityKind] = "SingleStoreView";
|
|
107
|
+
[SingleStoreViewConfig];
|
|
108
|
+
constructor({ singlestoreConfig, config }) {
|
|
109
|
+
super(config);
|
|
110
|
+
this[SingleStoreViewConfig] = singlestoreConfig;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
export {
|
|
114
|
+
ManualViewBuilder,
|
|
115
|
+
SingleStoreView,
|
|
116
|
+
ViewBuilder,
|
|
117
|
+
ViewBuilderCore
|
|
118
|
+
};
|
|
119
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-core/view.ts"],"sourcesContent":["import type { BuildColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { AddAliasToSelection } from '~/query-builders/select.types.ts';\nimport { SelectionProxyHandler } from '~/selection-proxy.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport { getTableColumns } from '~/utils.ts';\nimport type { SingleStoreColumn, SingleStoreColumnBuilderBase } from './columns/index.ts';\nimport { QueryBuilder } from './query-builders/query-builder.ts';\nimport type { SelectedFields } from './query-builders/select.types.ts';\nimport { singlestoreTable } from './table.ts';\nimport { SingleStoreViewBase } from './view-base.ts';\nimport { SingleStoreViewConfig } from './view-common.ts';\n\nexport interface ViewBuilderConfig {\n\talgorithm?: 'undefined' | 'merge' | 'temptable';\n\tdefiner?: string;\n\tsqlSecurity?: 'definer' | 'invoker';\n\twithCheckOption?: 'cascaded' | 'local';\n}\n\nexport class ViewBuilderCore<TConfig extends { name: string; columns?: unknown }> {\n\tstatic readonly [entityKind]: string = 'SingleStoreViewBuilder';\n\n\tdeclare readonly _: {\n\t\treadonly name: TConfig['name'];\n\t\treadonly columns: TConfig['columns'];\n\t};\n\n\tconstructor(\n\t\tprotected name: TConfig['name'],\n\t\tprotected schema: string | undefined,\n\t) {}\n\n\tprotected config: ViewBuilderConfig = {};\n\n\talgorithm(\n\t\talgorithm: Exclude<ViewBuilderConfig['algorithm'], undefined>,\n\t): this {\n\t\tthis.config.algorithm = algorithm;\n\t\treturn this;\n\t}\n\n\tdefiner(\n\t\tdefiner: Exclude<ViewBuilderConfig['definer'], undefined>,\n\t): this {\n\t\tthis.config.definer = definer;\n\t\treturn this;\n\t}\n\n\tsqlSecurity(\n\t\tsqlSecurity: Exclude<ViewBuilderConfig['sqlSecurity'], undefined>,\n\t): this {\n\t\tthis.config.sqlSecurity = sqlSecurity;\n\t\treturn this;\n\t}\n\n\twithCheckOption(\n\t\twithCheckOption?: Exclude<ViewBuilderConfig['withCheckOption'], undefined>,\n\t): this {\n\t\tthis.config.withCheckOption = withCheckOption ?? 'cascaded';\n\t\treturn this;\n\t}\n}\n\nexport class ViewBuilder<TName extends string = string> extends ViewBuilderCore<{ name: TName }> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreViewBuilder';\n\n\tas<TSelectedFields extends SelectedFields>(\n\t\tqb: TypedQueryBuilder<TSelectedFields> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelectedFields>),\n\t): SingleStoreViewWithSelection<TName, false, AddAliasToSelection<TSelectedFields, TName, 'singlestore'>> {\n\t\tif (typeof qb === 'function') {\n\t\t\tqb = qb(new QueryBuilder());\n\t\t}\n\t\tconst selectionProxy = new SelectionProxyHandler<TSelectedFields>({\n\t\t\talias: this.name,\n\t\t\tsqlBehavior: 'error',\n\t\t\tsqlAliasedBehavior: 'alias',\n\t\t\treplaceOriginalName: true,\n\t\t});\n\t\tconst aliasedSelection = new Proxy(qb.getSelectedFields(), selectionProxy);\n\t\treturn new Proxy(\n\t\t\tnew SingleStoreView({\n\t\t\t\tsinglestoreConfig: this.config,\n\t\t\t\tconfig: {\n\t\t\t\t\tname: this.name,\n\t\t\t\t\tschema: this.schema,\n\t\t\t\t\tselectedFields: aliasedSelection,\n\t\t\t\t\tquery: qb.getSQL().inlineParams(),\n\t\t\t\t},\n\t\t\t}),\n\t\t\tselectionProxy as any,\n\t\t) as SingleStoreViewWithSelection<TName, false, AddAliasToSelection<TSelectedFields, TName, 'singlestore'>>;\n\t}\n}\n\nexport class ManualViewBuilder<\n\tTName extends string = string,\n\tTColumns extends Record<string, SingleStoreColumnBuilderBase> = Record<string, SingleStoreColumnBuilderBase>,\n> extends ViewBuilderCore<{ name: TName; columns: TColumns }> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreManualViewBuilder';\n\n\tprivate columns: Record<string, SingleStoreColumn>;\n\n\tconstructor(\n\t\tname: TName,\n\t\tcolumns: TColumns,\n\t\tschema: string | undefined,\n\t) {\n\t\tsuper(name, schema);\n\t\tthis.columns = getTableColumns(singlestoreTable(name, columns)) as BuildColumns<TName, TColumns, 'singlestore'>;\n\t}\n\n\texisting(): SingleStoreViewWithSelection<TName, true, BuildColumns<TName, TColumns, 'singlestore'>> {\n\t\treturn new Proxy(\n\t\t\tnew SingleStoreView({\n\t\t\t\tsinglestoreConfig: undefined,\n\t\t\t\tconfig: {\n\t\t\t\t\tname: this.name,\n\t\t\t\t\tschema: this.schema,\n\t\t\t\t\tselectedFields: this.columns,\n\t\t\t\t\tquery: undefined,\n\t\t\t\t},\n\t\t\t}),\n\t\t\tnew SelectionProxyHandler({\n\t\t\t\talias: this.name,\n\t\t\t\tsqlBehavior: 'error',\n\t\t\t\tsqlAliasedBehavior: 'alias',\n\t\t\t\treplaceOriginalName: true,\n\t\t\t}),\n\t\t) as SingleStoreViewWithSelection<TName, true, BuildColumns<TName, TColumns, 'singlestore'>>;\n\t}\n\n\tas(query: SQL): SingleStoreViewWithSelection<TName, false, BuildColumns<TName, TColumns, 'singlestore'>> {\n\t\treturn new Proxy(\n\t\t\tnew SingleStoreView({\n\t\t\t\tsinglestoreConfig: this.config,\n\t\t\t\tconfig: {\n\t\t\t\t\tname: this.name,\n\t\t\t\t\tschema: this.schema,\n\t\t\t\t\tselectedFields: this.columns,\n\t\t\t\t\tquery: query.inlineParams(),\n\t\t\t\t},\n\t\t\t}),\n\t\t\tnew SelectionProxyHandler({\n\t\t\t\talias: this.name,\n\t\t\t\tsqlBehavior: 'error',\n\t\t\t\tsqlAliasedBehavior: 'alias',\n\t\t\t\treplaceOriginalName: true,\n\t\t\t}),\n\t\t) as SingleStoreViewWithSelection<TName, false, BuildColumns<TName, TColumns, 'singlestore'>>;\n\t}\n}\n\nexport class SingleStoreView<\n\tTName extends string = string,\n\tTExisting extends boolean = boolean,\n\tTSelectedFields extends ColumnsSelection = ColumnsSelection,\n> extends SingleStoreViewBase<TName, TExisting, TSelectedFields> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreView';\n\n\tdeclare protected $SingleStoreViewBrand: 'SingleStoreView';\n\n\t[SingleStoreViewConfig]: ViewBuilderConfig | undefined;\n\n\tconstructor({ singlestoreConfig, config }: {\n\t\tsinglestoreConfig: ViewBuilderConfig | undefined;\n\t\tconfig: {\n\t\t\tname: TName;\n\t\t\tschema: string | undefined;\n\t\t\tselectedFields: SelectedFields;\n\t\t\tquery: SQL | undefined;\n\t\t};\n\t}) {\n\t\tsuper(config);\n\t\tthis[SingleStoreViewConfig] = singlestoreConfig;\n\t}\n}\n\nexport type SingleStoreViewWithSelection<\n\tTName extends string,\n\tTExisting extends boolean,\n\tTSelectedFields extends ColumnsSelection,\n> = SingleStoreView<TName, TExisting, TSelectedFields> & TSelectedFields;\n\n// TODO: needs to be implemented differently compared to MySQL.\n// /** @internal */\n// export function singlestoreViewWithSchema(\n// \tname: string,\n// \tselection: Record<string, SingleStoreColumnBuilderBase> | undefined,\n// \tschema: string | undefined,\n// ): ViewBuilder | ManualViewBuilder {\n// \tif (selection) {\n// \t\treturn new ManualViewBuilder(name, selection, schema);\n// \t}\n// \treturn new ViewBuilder(name, schema);\n// }\n\n// export function singlestoreView<TName extends string>(name: TName): ViewBuilder<TName>;\n// export function singlestoreView<TName extends string, TColumns extends Record<string, SingleStoreColumnBuilderBase>>(\n// \tname: TName,\n// \tcolumns: TColumns,\n// ): ManualViewBuilder<TName, TColumns>;\n// export function singlestoreView(\n// \tname: string,\n// \tselection?: Record<string, SingleStoreColumnBuilderBase>,\n// ): ViewBuilder | ManualViewBuilder {\n// \treturn singlestoreViewWithSchema(name, selection, undefined);\n// }\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var driver_exports = {};
|
|
20
|
+
__export(driver_exports, {
|
|
21
|
+
SingleStoreRemoteDatabase: () => SingleStoreRemoteDatabase,
|
|
22
|
+
drizzle: () => drizzle
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(driver_exports);
|
|
25
|
+
var import_entity = require("../entity.cjs");
|
|
26
|
+
var import_logger = require("../logger.cjs");
|
|
27
|
+
var import_relations = require("../relations.cjs");
|
|
28
|
+
var import_db = require("../singlestore-core/db.cjs");
|
|
29
|
+
var import_dialect = require("../singlestore-core/dialect.cjs");
|
|
30
|
+
var import_session = require("./session.cjs");
|
|
31
|
+
class SingleStoreRemoteDatabase extends import_db.SingleStoreDatabase {
|
|
32
|
+
static [import_entity.entityKind] = "SingleStoreRemoteDatabase";
|
|
33
|
+
}
|
|
34
|
+
function drizzle(callback, config = {}) {
|
|
35
|
+
const dialect = new import_dialect.SingleStoreDialect({ casing: config.casing });
|
|
36
|
+
let logger;
|
|
37
|
+
if (config.logger === true) {
|
|
38
|
+
logger = new import_logger.DefaultLogger();
|
|
39
|
+
} else if (config.logger !== false) {
|
|
40
|
+
logger = config.logger;
|
|
41
|
+
}
|
|
42
|
+
let schema;
|
|
43
|
+
if (config.schema) {
|
|
44
|
+
const tablesConfig = (0, import_relations.extractTablesRelationalConfig)(
|
|
45
|
+
config.schema,
|
|
46
|
+
import_relations.createTableRelationsHelpers
|
|
47
|
+
);
|
|
48
|
+
schema = {
|
|
49
|
+
fullSchema: config.schema,
|
|
50
|
+
schema: tablesConfig.tables,
|
|
51
|
+
tableNamesMap: tablesConfig.tableNamesMap
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
const session = new import_session.SingleStoreRemoteSession(callback, dialect, schema, { logger });
|
|
55
|
+
return new SingleStoreRemoteDatabase(dialect, session, schema);
|
|
56
|
+
}
|
|
57
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
58
|
+
0 && (module.exports = {
|
|
59
|
+
SingleStoreRemoteDatabase,
|
|
60
|
+
drizzle
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=driver.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): SingleStoreRemoteDatabase<TSchema> {\n\tconst dialect = new SingleStoreDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new SingleStoreRemoteSession(callback, dialect, schema, { logger });\n\treturn new SingleStoreRemoteDatabase(dialect, session, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema\n\t>;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAC3B,oBAA8B;AAC9B,uBAKO;AACP,gBAAoC;AACpC,qBAAmC;AAEnC,qBAIO;AAEA,MAAM,kCAEH,8BAAiG;AAAA,EAC1G,QAA0B,wBAAU,IAAY;AACjD;AAQO,SAAS,QACf,UACA,SAAiC,CAAC,GACG;AACrC,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,mBAAe;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,wCAAyB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAClF,SAAO,IAAI,0BAA0B,SAAS,SAAS,MAAa;AAGrE;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { entityKind } from "../entity.cjs";
|
|
2
|
+
import { SingleStoreDatabase } from "../singlestore-core/db.cjs";
|
|
3
|
+
import type { DrizzleConfig } from "../utils.cjs";
|
|
4
|
+
import { type SingleStoreRemotePreparedQueryHKT, type SingleStoreRemoteQueryResultHKT } from "./session.cjs";
|
|
5
|
+
export declare class SingleStoreRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema> {
|
|
6
|
+
static readonly [entityKind]: string;
|
|
7
|
+
}
|
|
8
|
+
export type RemoteCallback = (sql: string, params: any[], method: 'all' | 'execute') => Promise<{
|
|
9
|
+
rows: any[];
|
|
10
|
+
insertId?: number;
|
|
11
|
+
affectedRows?: number;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, config?: DrizzleConfig<TSchema>): SingleStoreRemoteDatabase<TSchema>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import { SingleStoreDatabase } from "../singlestore-core/db.js";
|
|
3
|
+
import type { DrizzleConfig } from "../utils.js";
|
|
4
|
+
import { type SingleStoreRemotePreparedQueryHKT, type SingleStoreRemoteQueryResultHKT } from "./session.js";
|
|
5
|
+
export declare class SingleStoreRemoteDatabase<TSchema extends Record<string, unknown> = Record<string, never>> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema> {
|
|
6
|
+
static readonly [entityKind]: string;
|
|
7
|
+
}
|
|
8
|
+
export type RemoteCallback = (sql: string, params: any[], method: 'all' | 'execute') => Promise<{
|
|
9
|
+
rows: any[];
|
|
10
|
+
insertId?: number;
|
|
11
|
+
affectedRows?: number;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(callback: RemoteCallback, config?: DrizzleConfig<TSchema>): SingleStoreRemoteDatabase<TSchema>;
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import { DefaultLogger } from "../logger.js";
|
|
3
|
+
import {
|
|
4
|
+
createTableRelationsHelpers,
|
|
5
|
+
extractTablesRelationalConfig
|
|
6
|
+
} from "../relations.js";
|
|
7
|
+
import { SingleStoreDatabase } from "../singlestore-core/db.js";
|
|
8
|
+
import { SingleStoreDialect } from "../singlestore-core/dialect.js";
|
|
9
|
+
import {
|
|
10
|
+
SingleStoreRemoteSession
|
|
11
|
+
} from "./session.js";
|
|
12
|
+
class SingleStoreRemoteDatabase extends SingleStoreDatabase {
|
|
13
|
+
static [entityKind] = "SingleStoreRemoteDatabase";
|
|
14
|
+
}
|
|
15
|
+
function drizzle(callback, config = {}) {
|
|
16
|
+
const dialect = new SingleStoreDialect({ casing: config.casing });
|
|
17
|
+
let logger;
|
|
18
|
+
if (config.logger === true) {
|
|
19
|
+
logger = new DefaultLogger();
|
|
20
|
+
} else if (config.logger !== false) {
|
|
21
|
+
logger = config.logger;
|
|
22
|
+
}
|
|
23
|
+
let schema;
|
|
24
|
+
if (config.schema) {
|
|
25
|
+
const tablesConfig = extractTablesRelationalConfig(
|
|
26
|
+
config.schema,
|
|
27
|
+
createTableRelationsHelpers
|
|
28
|
+
);
|
|
29
|
+
schema = {
|
|
30
|
+
fullSchema: config.schema,
|
|
31
|
+
schema: tablesConfig.tables,
|
|
32
|
+
tableNamesMap: tablesConfig.tableNamesMap
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
const session = new SingleStoreRemoteSession(callback, dialect, schema, { logger });
|
|
36
|
+
return new SingleStoreRemoteDatabase(dialect, session, schema);
|
|
37
|
+
}
|
|
38
|
+
export {
|
|
39
|
+
SingleStoreRemoteDatabase,
|
|
40
|
+
drizzle
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=driver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/driver.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { DefaultLogger } from '~/logger.ts';\nimport {\n\tcreateTableRelationsHelpers,\n\textractTablesRelationalConfig,\n\ttype RelationalSchemaConfig,\n\ttype TablesRelationalConfig,\n} from '~/relations.ts';\nimport { SingleStoreDatabase } from '~/singlestore-core/db.ts';\nimport { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport type { DrizzleConfig } from '~/utils.ts';\nimport {\n\ttype SingleStoreRemotePreparedQueryHKT,\n\ttype SingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemoteSession,\n} from './session.ts';\n\nexport class SingleStoreRemoteDatabase<\n\tTSchema extends Record<string, unknown> = Record<string, never>,\n> extends SingleStoreDatabase<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteDatabase';\n}\n\nexport type RemoteCallback = (\n\tsql: string,\n\tparams: any[],\n\tmethod: 'all' | 'execute',\n) => Promise<{ rows: any[]; insertId?: number; affectedRows?: number }>;\n\nexport function drizzle<TSchema extends Record<string, unknown> = Record<string, never>>(\n\tcallback: RemoteCallback,\n\tconfig: DrizzleConfig<TSchema> = {},\n): SingleStoreRemoteDatabase<TSchema> {\n\tconst dialect = new SingleStoreDialect({ 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: RelationalSchemaConfig<TablesRelationalConfig> | undefined;\n\tif (config.schema) {\n\t\tconst tablesConfig = extractTablesRelationalConfig(\n\t\t\tconfig.schema,\n\t\t\tcreateTableRelationsHelpers,\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 session = new SingleStoreRemoteSession(callback, dialect, schema, { logger });\n\treturn new SingleStoreRemoteDatabase(dialect, session, schema as any) as SingleStoreRemoteDatabase<\n\t\tTSchema\n\t>;\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAC3B,SAAS,qBAAqB;AAC9B;AAAA,EACC;AAAA,EACA;AAAA,OAGM;AACP,SAAS,2BAA2B;AACpC,SAAS,0BAA0B;AAEnC;AAAA,EAGC;AAAA,OACM;AAEA,MAAM,kCAEH,oBAAiG;AAAA,EAC1G,QAA0B,UAAU,IAAY;AACjD;AAQO,SAAS,QACf,UACA,SAAiC,CAAC,GACG;AACrC,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;AAAA,MACpB,OAAO;AAAA,MACP;AAAA,IACD;AACA,aAAS;AAAA,MACR,YAAY,OAAO;AAAA,MACnB,QAAQ,aAAa;AAAA,MACrB,eAAe,aAAa;AAAA,IAC7B;AAAA,EACD;AAEA,QAAM,UAAU,IAAI,yBAAyB,UAAU,SAAS,QAAQ,EAAE,OAAO,CAAC;AAClF,SAAO,IAAI,0BAA0B,SAAS,SAAS,MAAa;AAGrE;","names":[]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
15
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
|
+
var singlestore_proxy_exports = {};
|
|
17
|
+
module.exports = __toCommonJS(singlestore_proxy_exports);
|
|
18
|
+
__reExport(singlestore_proxy_exports, require("./driver.cjs"), module.exports);
|
|
19
|
+
__reExport(singlestore_proxy_exports, require("./session.cjs"), module.exports);
|
|
20
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
21
|
+
0 && (module.exports = {
|
|
22
|
+
...require("./driver.cjs"),
|
|
23
|
+
...require("./session.cjs")
|
|
24
|
+
});
|
|
25
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/index.ts"],"sourcesContent":["export * from './driver.ts';\nexport * from './session.ts';\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;AAAA,sCAAc,wBAAd;AACA,sCAAc,yBADd;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/index.ts"],"sourcesContent":["export * from './driver.ts';\nexport * from './session.ts';\n"],"mappings":"AAAA,cAAc;AACd,cAAc;","names":[]}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var migrator_exports = {};
|
|
20
|
+
__export(migrator_exports, {
|
|
21
|
+
migrate: () => migrate
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(migrator_exports);
|
|
24
|
+
var import_migrator = require("../migrator.cjs");
|
|
25
|
+
var import_sql = require("../sql/sql.cjs");
|
|
26
|
+
async function migrate(db, callback, config) {
|
|
27
|
+
const migrations = (0, import_migrator.readMigrationFiles)(config);
|
|
28
|
+
const migrationsTable = config.migrationsTable ?? "__drizzle_migrations";
|
|
29
|
+
const migrationTableCreate = import_sql.sql`
|
|
30
|
+
create table if not exists ${import_sql.sql.identifier(migrationsTable)} (
|
|
31
|
+
id serial primary key,
|
|
32
|
+
hash text not null,
|
|
33
|
+
created_at bigint
|
|
34
|
+
)
|
|
35
|
+
`;
|
|
36
|
+
await db.execute(migrationTableCreate);
|
|
37
|
+
const dbMigrations = await db.select({
|
|
38
|
+
id: import_sql.sql.raw("id"),
|
|
39
|
+
hash: import_sql.sql.raw("hash"),
|
|
40
|
+
created_at: import_sql.sql.raw("created_at")
|
|
41
|
+
}).from(import_sql.sql.identifier(migrationsTable).getSQL()).orderBy(
|
|
42
|
+
import_sql.sql.raw("created_at desc")
|
|
43
|
+
).limit(1);
|
|
44
|
+
const lastDbMigration = dbMigrations[0];
|
|
45
|
+
const queriesToRun = [];
|
|
46
|
+
for (const migration of migrations) {
|
|
47
|
+
if (!lastDbMigration || Number(lastDbMigration.created_at) < migration.folderMillis) {
|
|
48
|
+
queriesToRun.push(
|
|
49
|
+
...migration.sql,
|
|
50
|
+
`insert into ${import_sql.sql.identifier(migrationsTable).value} (\`hash\`, \`created_at\`) values('${migration.hash}', '${migration.folderMillis}')`
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
await callback(queriesToRun);
|
|
55
|
+
}
|
|
56
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
57
|
+
0 && (module.exports = {
|
|
58
|
+
migrate
|
|
59
|
+
});
|
|
60
|
+
//# sourceMappingURL=migrator.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SingleStoreRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: SingleStoreRemoteDatabase<TSchema>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = config.migrationsTable ?? '__drizzle_migrations';\n\tconst migrationTableCreate = sql`\n\t\tcreate table if not exists ${sql.identifier(migrationsTable)} (\n\t\t\tid serial primary key,\n\t\t\thash text not null,\n\t\t\tcreated_at bigint\n\t\t)\n\t`;\n\tawait db.execute(migrationTableCreate);\n\n\tconst dbMigrations = await db.select({\n\t\tid: sql.raw('id'),\n\t\thash: sql.raw('hash'),\n\t\tcreated_at: sql.raw('created_at'),\n\t}).from(sql.identifier(migrationsTable).getSQL()).orderBy(\n\t\tsql.raw('created_at desc'),\n\t).limit(1);\n\n\tconst lastDbMigration = dbMigrations[0];\n\n\tconst queriesToRun: string[] = [];\n\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration.created_at) < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`insert into ${\n\t\t\t\t\tsql.identifier(migrationsTable).value\n\t\t\t\t} (\\`hash\\`, \\`created_at\\`) values('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,sBAAmC;AACnC,iBAAoB;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,iBAAa,oCAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,mBAAmB;AAClD,QAAM,uBAAuB;AAAA,+BACC,eAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,QAAM,GAAG,QAAQ,oBAAoB;AAErC,QAAM,eAAe,MAAM,GAAG,OAAO;AAAA,IACpC,IAAI,eAAI,IAAI,IAAI;AAAA,IAChB,MAAM,eAAI,IAAI,MAAM;AAAA,IACpB,YAAY,eAAI,IAAI,YAAY;AAAA,EACjC,CAAC,EAAE,KAAK,eAAI,WAAW,eAAe,EAAE,OAAO,CAAC,EAAE;AAAA,IACjD,eAAI,IAAI,iBAAiB;AAAA,EAC1B,EAAE,MAAM,CAAC;AAET,QAAM,kBAAkB,aAAa,CAAC;AAEtC,QAAM,eAAyB,CAAC;AAEhC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,UAAU,IAAI,UAAU,cACjD;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,eACC,eAAI,WAAW,eAAe,EAAE,KACjC,uCAAuC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACnF;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { MigrationConfig } from "../migrator.cjs";
|
|
2
|
+
import type { SingleStoreRemoteDatabase } from "./driver.cjs";
|
|
3
|
+
export type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;
|
|
4
|
+
export declare function migrate<TSchema extends Record<string, unknown>>(db: SingleStoreRemoteDatabase<TSchema>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { MigrationConfig } from "../migrator.js";
|
|
2
|
+
import type { SingleStoreRemoteDatabase } from "./driver.js";
|
|
3
|
+
export type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;
|
|
4
|
+
export declare function migrate<TSchema extends Record<string, unknown>>(db: SingleStoreRemoteDatabase<TSchema>, callback: ProxyMigrator, config: MigrationConfig): Promise<void>;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { readMigrationFiles } from "../migrator.js";
|
|
2
|
+
import { sql } from "../sql/sql.js";
|
|
3
|
+
async function migrate(db, callback, config) {
|
|
4
|
+
const migrations = readMigrationFiles(config);
|
|
5
|
+
const migrationsTable = config.migrationsTable ?? "__drizzle_migrations";
|
|
6
|
+
const migrationTableCreate = sql`
|
|
7
|
+
create table if not exists ${sql.identifier(migrationsTable)} (
|
|
8
|
+
id serial primary key,
|
|
9
|
+
hash text not null,
|
|
10
|
+
created_at bigint
|
|
11
|
+
)
|
|
12
|
+
`;
|
|
13
|
+
await db.execute(migrationTableCreate);
|
|
14
|
+
const dbMigrations = await db.select({
|
|
15
|
+
id: sql.raw("id"),
|
|
16
|
+
hash: sql.raw("hash"),
|
|
17
|
+
created_at: sql.raw("created_at")
|
|
18
|
+
}).from(sql.identifier(migrationsTable).getSQL()).orderBy(
|
|
19
|
+
sql.raw("created_at desc")
|
|
20
|
+
).limit(1);
|
|
21
|
+
const lastDbMigration = dbMigrations[0];
|
|
22
|
+
const queriesToRun = [];
|
|
23
|
+
for (const migration of migrations) {
|
|
24
|
+
if (!lastDbMigration || Number(lastDbMigration.created_at) < migration.folderMillis) {
|
|
25
|
+
queriesToRun.push(
|
|
26
|
+
...migration.sql,
|
|
27
|
+
`insert into ${sql.identifier(migrationsTable).value} (\`hash\`, \`created_at\`) values('${migration.hash}', '${migration.folderMillis}')`
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
await callback(queriesToRun);
|
|
32
|
+
}
|
|
33
|
+
export {
|
|
34
|
+
migrate
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=migrator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/migrator.ts"],"sourcesContent":["import type { MigrationConfig } from '~/migrator.ts';\nimport { readMigrationFiles } from '~/migrator.ts';\nimport { sql } from '~/sql/sql.ts';\nimport type { SingleStoreRemoteDatabase } from './driver.ts';\n\nexport type ProxyMigrator = (migrationQueries: string[]) => Promise<void>;\n\nexport async function migrate<TSchema extends Record<string, unknown>>(\n\tdb: SingleStoreRemoteDatabase<TSchema>,\n\tcallback: ProxyMigrator,\n\tconfig: MigrationConfig,\n) {\n\tconst migrations = readMigrationFiles(config);\n\n\tconst migrationsTable = config.migrationsTable ?? '__drizzle_migrations';\n\tconst migrationTableCreate = sql`\n\t\tcreate table if not exists ${sql.identifier(migrationsTable)} (\n\t\t\tid serial primary key,\n\t\t\thash text not null,\n\t\t\tcreated_at bigint\n\t\t)\n\t`;\n\tawait db.execute(migrationTableCreate);\n\n\tconst dbMigrations = await db.select({\n\t\tid: sql.raw('id'),\n\t\thash: sql.raw('hash'),\n\t\tcreated_at: sql.raw('created_at'),\n\t}).from(sql.identifier(migrationsTable).getSQL()).orderBy(\n\t\tsql.raw('created_at desc'),\n\t).limit(1);\n\n\tconst lastDbMigration = dbMigrations[0];\n\n\tconst queriesToRun: string[] = [];\n\n\tfor (const migration of migrations) {\n\t\tif (\n\t\t\t!lastDbMigration\n\t\t\t|| Number(lastDbMigration.created_at) < migration.folderMillis\n\t\t) {\n\t\t\tqueriesToRun.push(\n\t\t\t\t...migration.sql,\n\t\t\t\t`insert into ${\n\t\t\t\t\tsql.identifier(migrationsTable).value\n\t\t\t\t} (\\`hash\\`, \\`created_at\\`) values('${migration.hash}', '${migration.folderMillis}')`,\n\t\t\t);\n\t\t}\n\t}\n\n\tawait callback(queriesToRun);\n}\n"],"mappings":"AACA,SAAS,0BAA0B;AACnC,SAAS,WAAW;AAKpB,eAAsB,QACrB,IACA,UACA,QACC;AACD,QAAM,aAAa,mBAAmB,MAAM;AAE5C,QAAM,kBAAkB,OAAO,mBAAmB;AAClD,QAAM,uBAAuB;AAAA,+BACC,IAAI,WAAW,eAAe,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAM7D,QAAM,GAAG,QAAQ,oBAAoB;AAErC,QAAM,eAAe,MAAM,GAAG,OAAO;AAAA,IACpC,IAAI,IAAI,IAAI,IAAI;AAAA,IAChB,MAAM,IAAI,IAAI,MAAM;AAAA,IACpB,YAAY,IAAI,IAAI,YAAY;AAAA,EACjC,CAAC,EAAE,KAAK,IAAI,WAAW,eAAe,EAAE,OAAO,CAAC,EAAE;AAAA,IACjD,IAAI,IAAI,iBAAiB;AAAA,EAC1B,EAAE,MAAM,CAAC;AAET,QAAM,kBAAkB,aAAa,CAAC;AAEtC,QAAM,eAAyB,CAAC;AAEhC,aAAW,aAAa,YAAY;AACnC,QACC,CAAC,mBACE,OAAO,gBAAgB,UAAU,IAAI,UAAU,cACjD;AACD,mBAAa;AAAA,QACZ,GAAG,UAAU;AAAA,QACb,eACC,IAAI,WAAW,eAAe,EAAE,KACjC,uCAAuC,UAAU,IAAI,OAAO,UAAU,YAAY;AAAA,MACnF;AAAA,IACD;AAAA,EACD;AAEA,QAAM,SAAS,YAAY;AAC5B;","names":[]}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var session_exports = {};
|
|
20
|
+
__export(session_exports, {
|
|
21
|
+
PreparedQuery: () => PreparedQuery,
|
|
22
|
+
SingleStoreProxyTransaction: () => SingleStoreProxyTransaction,
|
|
23
|
+
SingleStoreRemoteSession: () => SingleStoreRemoteSession
|
|
24
|
+
});
|
|
25
|
+
module.exports = __toCommonJS(session_exports);
|
|
26
|
+
var import_column = require("../column.cjs");
|
|
27
|
+
var import_entity = require("../entity.cjs");
|
|
28
|
+
var import_logger = require("../logger.cjs");
|
|
29
|
+
var import_singlestore_core = require("../singlestore-core/index.cjs");
|
|
30
|
+
var import_session = require("../singlestore-core/session.cjs");
|
|
31
|
+
var import_sql = require("../sql/sql.cjs");
|
|
32
|
+
var import_utils = require("../utils.cjs");
|
|
33
|
+
class SingleStoreRemoteSession extends import_session.SingleStoreSession {
|
|
34
|
+
constructor(client, dialect, schema, options) {
|
|
35
|
+
super(dialect);
|
|
36
|
+
this.client = client;
|
|
37
|
+
this.schema = schema;
|
|
38
|
+
this.logger = options.logger ?? new import_logger.NoopLogger();
|
|
39
|
+
}
|
|
40
|
+
static [import_entity.entityKind] = "SingleStoreRemoteSession";
|
|
41
|
+
logger;
|
|
42
|
+
prepareQuery(query, fields, customResultMapper, generatedIds, returningIds) {
|
|
43
|
+
return new PreparedQuery(
|
|
44
|
+
this.client,
|
|
45
|
+
query.sql,
|
|
46
|
+
query.params,
|
|
47
|
+
this.logger,
|
|
48
|
+
fields,
|
|
49
|
+
customResultMapper,
|
|
50
|
+
generatedIds,
|
|
51
|
+
returningIds
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
all(query) {
|
|
55
|
+
const querySql = this.dialect.sqlToQuery(query);
|
|
56
|
+
this.logger.logQuery(querySql.sql, querySql.params);
|
|
57
|
+
return this.client(querySql.sql, querySql.params, "all").then(({ rows }) => rows);
|
|
58
|
+
}
|
|
59
|
+
async transaction(_transaction, _config) {
|
|
60
|
+
throw new Error("Transactions are not supported by the SingleStore Proxy driver");
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
class SingleStoreProxyTransaction extends import_singlestore_core.SingleStoreTransaction {
|
|
64
|
+
static [import_entity.entityKind] = "SingleStoreProxyTransaction";
|
|
65
|
+
async transaction(_transaction) {
|
|
66
|
+
throw new Error("Transactions are not supported by the SingleStore Proxy driver");
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
class PreparedQuery extends import_session.SingleStorePreparedQuery {
|
|
70
|
+
constructor(client, queryString, params, logger, fields, customResultMapper, generatedIds, returningIds) {
|
|
71
|
+
super();
|
|
72
|
+
this.client = client;
|
|
73
|
+
this.queryString = queryString;
|
|
74
|
+
this.params = params;
|
|
75
|
+
this.logger = logger;
|
|
76
|
+
this.fields = fields;
|
|
77
|
+
this.customResultMapper = customResultMapper;
|
|
78
|
+
this.generatedIds = generatedIds;
|
|
79
|
+
this.returningIds = returningIds;
|
|
80
|
+
}
|
|
81
|
+
static [import_entity.entityKind] = "SingleStoreProxyPreparedQuery";
|
|
82
|
+
async execute(placeholderValues = {}) {
|
|
83
|
+
const params = (0, import_sql.fillPlaceholders)(this.params, placeholderValues);
|
|
84
|
+
const { fields, client, queryString, logger, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } = this;
|
|
85
|
+
logger.logQuery(queryString, params);
|
|
86
|
+
if (!fields && !customResultMapper) {
|
|
87
|
+
const { rows: data } = await client(queryString, params, "execute");
|
|
88
|
+
const insertId = data[0].insertId;
|
|
89
|
+
const affectedRows = data[0].affectedRows;
|
|
90
|
+
if (returningIds) {
|
|
91
|
+
const returningResponse = [];
|
|
92
|
+
let j = 0;
|
|
93
|
+
for (let i = insertId; i < insertId + affectedRows; i++) {
|
|
94
|
+
for (const column of returningIds) {
|
|
95
|
+
const key = returningIds[0].path[0];
|
|
96
|
+
if ((0, import_entity.is)(column.field, import_column.Column)) {
|
|
97
|
+
if (column.field.primary && column.field.autoIncrement) {
|
|
98
|
+
returningResponse.push({ [key]: i });
|
|
99
|
+
}
|
|
100
|
+
if (column.field.defaultFn && generatedIds) {
|
|
101
|
+
returningResponse.push({ [key]: generatedIds[j][key] });
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
j++;
|
|
106
|
+
}
|
|
107
|
+
return returningResponse;
|
|
108
|
+
}
|
|
109
|
+
return data;
|
|
110
|
+
}
|
|
111
|
+
const { rows } = await client(queryString, params, "all");
|
|
112
|
+
if (customResultMapper) {
|
|
113
|
+
return customResultMapper(rows);
|
|
114
|
+
}
|
|
115
|
+
return rows.map((row) => (0, import_utils.mapResultRow)(fields, row, joinsNotNullableMap));
|
|
116
|
+
}
|
|
117
|
+
iterator(_placeholderValues = {}) {
|
|
118
|
+
throw new Error("Streaming is not supported by the SingleStore Proxy driver");
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
122
|
+
0 && (module.exports = {
|
|
123
|
+
PreparedQuery,
|
|
124
|
+
SingleStoreProxyTransaction,
|
|
125
|
+
SingleStoreRemoteSession
|
|
126
|
+
});
|
|
127
|
+
//# sourceMappingURL=session.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/singlestore-proxy/session.ts"],"sourcesContent":["import type { FieldPacket, ResultSetHeader } from 'mysql2/promise';\nimport { Column } from '~/column.ts';\nimport { entityKind, is } from '~/entity.ts';\nimport type { Logger } from '~/logger.ts';\nimport { NoopLogger } from '~/logger.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport type { SingleStoreDialect } from '~/singlestore-core/dialect.ts';\nimport { SingleStoreTransaction } from '~/singlestore-core/index.ts';\nimport type { SelectedFieldsOrdered } from '~/singlestore-core/query-builders/select.types.ts';\nimport type {\n\tPreparedQueryKind,\n\tSingleStorePreparedQueryConfig,\n\tSingleStorePreparedQueryHKT,\n\tSingleStoreQueryResultHKT,\n\tSingleStoreTransactionConfig,\n} from '~/singlestore-core/session.ts';\nimport { SingleStorePreparedQuery as PreparedQueryBase, SingleStoreSession } from '~/singlestore-core/session.ts';\nimport type { Query, SQL } from '~/sql/sql.ts';\nimport { fillPlaceholders } from '~/sql/sql.ts';\nimport { type Assume, mapResultRow } from '~/utils.ts';\nimport type { RemoteCallback } from './driver.ts';\n\nexport type SingleStoreRawQueryResult = [ResultSetHeader, FieldPacket[]];\n\nexport interface SingleStoreRemoteSessionOptions {\n\tlogger?: Logger;\n}\n\nexport class SingleStoreRemoteSession<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SingleStoreSession<SingleStoreRemoteQueryResultHKT, SingleStoreRemotePreparedQueryHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreRemoteSession';\n\n\tprivate logger: Logger;\n\n\tconstructor(\n\t\tprivate client: RemoteCallback,\n\t\tdialect: SingleStoreDialect,\n\t\tprivate schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\toptions: SingleStoreRemoteSessionOptions,\n\t) {\n\t\tsuper(dialect);\n\t\tthis.logger = options.logger ?? new NoopLogger();\n\t}\n\n\tprepareQuery<T extends SingleStorePreparedQueryConfig>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\tgeneratedIds?: Record<string, unknown>[],\n\t\treturningIds?: SelectedFieldsOrdered,\n\t): PreparedQueryKind<SingleStoreRemotePreparedQueryHKT, T> {\n\t\treturn new PreparedQuery(\n\t\t\tthis.client,\n\t\t\tquery.sql,\n\t\t\tquery.params,\n\t\t\tthis.logger,\n\t\t\tfields,\n\t\t\tcustomResultMapper,\n\t\t\tgeneratedIds,\n\t\t\treturningIds,\n\t\t) as PreparedQueryKind<SingleStoreRemotePreparedQueryHKT, T>;\n\t}\n\n\toverride all<T = unknown>(query: SQL): Promise<T[]> {\n\t\tconst querySql = this.dialect.sqlToQuery(query);\n\t\tthis.logger.logQuery(querySql.sql, querySql.params);\n\t\treturn this.client(querySql.sql, querySql.params, 'all').then(({ rows }) => rows) as Promise<T[]>;\n\t}\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: SingleStoreProxyTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t\t_config?: SingleStoreTransactionConfig,\n\t): Promise<T> {\n\t\tthrow new Error('Transactions are not supported by the SingleStore Proxy driver');\n\t}\n}\n\nexport class SingleStoreProxyTransaction<\n\tTFullSchema extends Record<string, unknown>,\n\tTSchema extends TablesRelationalConfig,\n> extends SingleStoreTransaction<\n\tSingleStoreRemoteQueryResultHKT,\n\tSingleStoreRemotePreparedQueryHKT,\n\tTFullSchema,\n\tTSchema\n> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreProxyTransaction';\n\n\toverride async transaction<T>(\n\t\t_transaction: (tx: SingleStoreProxyTransaction<TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T> {\n\t\tthrow new Error('Transactions are not supported by the SingleStore Proxy driver');\n\t}\n}\n\nexport class PreparedQuery<T extends SingleStorePreparedQueryConfig> extends PreparedQueryBase<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreProxyPreparedQuery';\n\n\tconstructor(\n\t\tprivate client: RemoteCallback,\n\t\tprivate queryString: string,\n\t\tprivate params: unknown[],\n\t\tprivate logger: Logger,\n\t\tprivate fields: SelectedFieldsOrdered | undefined,\n\t\tprivate customResultMapper?: (rows: unknown[][]) => T['execute'],\n\t\t// Keys that were used in $default and the value that was generated for them\n\t\tprivate generatedIds?: Record<string, unknown>[],\n\t\t// Keys that should be returned, it has the column with all properries + key from object\n\t\tprivate returningIds?: SelectedFieldsOrdered,\n\t) {\n\t\tsuper();\n\t}\n\n\tasync execute(placeholderValues: Record<string, unknown> | undefined = {}): Promise<T['execute']> {\n\t\tconst params = fillPlaceholders(this.params, placeholderValues);\n\n\t\tconst { fields, client, queryString, logger, joinsNotNullableMap, customResultMapper, returningIds, generatedIds } =\n\t\t\tthis;\n\n\t\tlogger.logQuery(queryString, params);\n\n\t\tif (!fields && !customResultMapper) {\n\t\t\tconst { rows: data } = await client(queryString, params, 'execute');\n\n\t\t\tconst insertId = data[0].insertId as number;\n\t\t\tconst affectedRows = data[0].affectedRows;\n\n\t\t\tif (returningIds) {\n\t\t\t\tconst returningResponse = [];\n\t\t\t\tlet j = 0;\n\t\t\t\tfor (let i = insertId; i < insertId + affectedRows; i++) {\n\t\t\t\t\tfor (const column of returningIds) {\n\t\t\t\t\t\tconst key = returningIds[0]!.path[0]!;\n\t\t\t\t\t\tif (is(column.field, Column)) {\n\t\t\t\t\t\t\t// @ts-ignore\n\t\t\t\t\t\t\tif (column.field.primary && column.field.autoIncrement) {\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: i });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (column.field.defaultFn && generatedIds) {\n\t\t\t\t\t\t\t\t// generatedIds[rowIdx][key]\n\t\t\t\t\t\t\t\treturningResponse.push({ [key]: generatedIds[j]![key] });\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tj++;\n\t\t\t\t}\n\n\t\t\t\treturn returningResponse;\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\n\t\tconst { rows } = await client(queryString, params, 'all');\n\n\t\tif (customResultMapper) {\n\t\t\treturn customResultMapper(rows);\n\t\t}\n\n\t\treturn rows.map((row) => mapResultRow<T['execute']>(fields!, row, joinsNotNullableMap));\n\t}\n\n\toverride iterator(\n\t\t_placeholderValues: Record<string, unknown> = {},\n\t): AsyncGenerator<T['iterator']> {\n\t\tthrow new Error('Streaming is not supported by the SingleStore Proxy driver');\n\t}\n}\n\nexport interface SingleStoreRemoteQueryResultHKT extends SingleStoreQueryResultHKT {\n\ttype: SingleStoreRawQueryResult;\n}\n\nexport interface SingleStoreRemotePreparedQueryHKT extends SingleStorePreparedQueryHKT {\n\ttype: PreparedQuery<Assume<this['config'], SingleStorePreparedQueryConfig>>;\n}\n"],"mappings":"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","names":["PreparedQueryBase"]}
|