drizzle-orm 0.36.4 → 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 +1 -1
- package/neon-http/driver.cjs.map +1 -1
- package/neon-http/driver.d.cts +2 -2
- package/neon-http/driver.d.ts +2 -2
- package/neon-http/driver.js +1 -1
- package/neon-http/driver.js.map +1 -1
- package/neon-http/session.cjs.map +1 -1
- package/neon-http/session.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.d.cts +2 -2
- package/pg-core/db.d.ts +2 -2
- package/pg-core/db.js +4 -2
- package/pg-core/db.js.map +1 -1
- package/pg-core/query-builders/count.cjs +1 -0
- package/pg-core/query-builders/count.cjs.map +1 -1
- package/pg-core/query-builders/count.d.cts +2 -1
- package/pg-core/query-builders/count.d.ts +2 -1
- package/pg-core/query-builders/count.js +1 -0
- package/pg-core/query-builders/count.js.map +1 -1
- package/pg-core/query-builders/delete.cjs.map +1 -1
- package/pg-core/query-builders/delete.js.map +1 -1
- package/pg-core/query-builders/insert.cjs +1 -9
- package/pg-core/query-builders/insert.cjs.map +1 -1
- package/pg-core/query-builders/insert.js +1 -9
- package/pg-core/query-builders/insert.js.map +1 -1
- package/pg-core/query-builders/query.cjs.map +1 -1
- package/pg-core/query-builders/query.js.map +1 -1
- package/pg-core/query-builders/refresh-materialized-view.cjs.map +1 -1
- package/pg-core/query-builders/refresh-materialized-view.js.map +1 -1
- package/pg-core/query-builders/select.cjs +2 -10
- package/pg-core/query-builders/select.cjs.map +1 -1
- package/pg-core/query-builders/select.js +8 -11
- package/pg-core/query-builders/select.js.map +1 -1
- package/pg-core/query-builders/update.cjs +1 -7
- package/pg-core/query-builders/update.cjs.map +1 -1
- package/pg-core/query-builders/update.d.cts +2 -2
- package/pg-core/query-builders/update.d.ts +2 -2
- package/pg-core/query-builders/update.js +6 -8
- package/pg-core/query-builders/update.js.map +1 -1
- package/pg-core/session.cjs.map +1 -1
- package/pg-core/session.d.cts +2 -1
- package/pg-core/session.d.ts +2 -1
- package/pg-core/session.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 +3 -1
- package/utils.d.ts +3 -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,156 @@
|
|
|
1
|
+
import type { ColumnBuilderBaseConfig } from "../../column-builder.cjs";
|
|
2
|
+
import type { ColumnBaseConfig } from "../../column.cjs";
|
|
3
|
+
import { entityKind } from "../../entity.cjs";
|
|
4
|
+
import type { AnySingleStoreTable } from "../table.cjs";
|
|
5
|
+
import type { SQL } from "../../sql/sql.cjs";
|
|
6
|
+
import { type Equal } from "../../utils.cjs";
|
|
7
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.cjs";
|
|
8
|
+
export type ConvertCustomConfig<TName extends string, T extends Partial<CustomTypeValues>> = {
|
|
9
|
+
name: TName;
|
|
10
|
+
dataType: 'custom';
|
|
11
|
+
columnType: 'SingleStoreCustomColumn';
|
|
12
|
+
data: T['data'];
|
|
13
|
+
driverParam: T['driverData'];
|
|
14
|
+
enumValues: undefined;
|
|
15
|
+
generated: undefined;
|
|
16
|
+
} & (T['notNull'] extends true ? {
|
|
17
|
+
notNull: true;
|
|
18
|
+
} : {}) & (T['default'] extends true ? {
|
|
19
|
+
hasDefault: true;
|
|
20
|
+
} : {});
|
|
21
|
+
export interface SingleStoreCustomColumnInnerConfig {
|
|
22
|
+
customTypeValues: CustomTypeValues;
|
|
23
|
+
}
|
|
24
|
+
export declare class SingleStoreCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom', 'SingleStoreCustomColumn'>> extends SingleStoreColumnBuilder<T, {
|
|
25
|
+
fieldConfig: CustomTypeValues['config'];
|
|
26
|
+
customTypeParams: CustomTypeParams<any>;
|
|
27
|
+
}, {
|
|
28
|
+
singlestoreColumnBuilderBrand: 'SingleStoreCustomColumnBuilderBrand';
|
|
29
|
+
}> {
|
|
30
|
+
static readonly [entityKind]: string;
|
|
31
|
+
constructor(name: T['name'], fieldConfig: CustomTypeValues['config'], customTypeParams: CustomTypeParams<any>);
|
|
32
|
+
}
|
|
33
|
+
export declare class SingleStoreCustomColumn<T extends ColumnBaseConfig<'custom', 'SingleStoreCustomColumn'>> extends SingleStoreColumn<T> {
|
|
34
|
+
static readonly [entityKind]: string;
|
|
35
|
+
private sqlName;
|
|
36
|
+
private mapTo?;
|
|
37
|
+
private mapFrom?;
|
|
38
|
+
constructor(table: AnySingleStoreTable<{
|
|
39
|
+
name: T['tableName'];
|
|
40
|
+
}>, config: SingleStoreCustomColumnBuilder<T>['config']);
|
|
41
|
+
getSQLType(): string;
|
|
42
|
+
mapFromDriverValue(value: T['driverParam']): T['data'];
|
|
43
|
+
mapToDriverValue(value: T['data']): T['driverParam'];
|
|
44
|
+
}
|
|
45
|
+
export type CustomTypeValues = {
|
|
46
|
+
/**
|
|
47
|
+
* Required type for custom column, that will infer proper type model
|
|
48
|
+
*
|
|
49
|
+
* Examples:
|
|
50
|
+
*
|
|
51
|
+
* If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`
|
|
52
|
+
*
|
|
53
|
+
* If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`
|
|
54
|
+
*/
|
|
55
|
+
data: unknown;
|
|
56
|
+
/**
|
|
57
|
+
* Type helper, that represents what type database driver is accepting for specific database data type
|
|
58
|
+
*/
|
|
59
|
+
driverData?: unknown;
|
|
60
|
+
/**
|
|
61
|
+
* What config type should be used for {@link CustomTypeParams} `dataType` generation
|
|
62
|
+
*/
|
|
63
|
+
config?: Record<string, any>;
|
|
64
|
+
/**
|
|
65
|
+
* Whether the config argument should be required or not
|
|
66
|
+
* @default false
|
|
67
|
+
*/
|
|
68
|
+
configRequired?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* If your custom data type should be notNull by default you can use `notNull: true`
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* const customSerial = customType<{ data: number, notNull: true, default: true }>({
|
|
74
|
+
* dataType() {
|
|
75
|
+
* return 'serial';
|
|
76
|
+
* },
|
|
77
|
+
* });
|
|
78
|
+
*/
|
|
79
|
+
notNull?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* If your custom data type has default you can use `default: true`
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* const customSerial = customType<{ data: number, notNull: true, default: true }>({
|
|
85
|
+
* dataType() {
|
|
86
|
+
* return 'serial';
|
|
87
|
+
* },
|
|
88
|
+
* });
|
|
89
|
+
*/
|
|
90
|
+
default?: boolean;
|
|
91
|
+
};
|
|
92
|
+
export interface CustomTypeParams<T extends CustomTypeValues> {
|
|
93
|
+
/**
|
|
94
|
+
* Database data type string representation, that is used for migrations
|
|
95
|
+
* @example
|
|
96
|
+
* ```
|
|
97
|
+
* `jsonb`, `text`
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* If database data type needs additional params you can use them from `config` param
|
|
101
|
+
* @example
|
|
102
|
+
* ```
|
|
103
|
+
* `varchar(256)`, `numeric(2,3)`
|
|
104
|
+
* ```
|
|
105
|
+
*
|
|
106
|
+
* To make `config` be of specific type please use config generic in {@link CustomTypeValues}
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* Usage example
|
|
110
|
+
* ```
|
|
111
|
+
* dataType() {
|
|
112
|
+
* return 'boolean';
|
|
113
|
+
* },
|
|
114
|
+
* ```
|
|
115
|
+
* Or
|
|
116
|
+
* ```
|
|
117
|
+
* dataType(config) {
|
|
118
|
+
* return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;
|
|
119
|
+
* }
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
dataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;
|
|
123
|
+
/**
|
|
124
|
+
* Optional mapping function, between user input and driver
|
|
125
|
+
* @example
|
|
126
|
+
* For example, when using jsonb we need to map JS/TS object to string before writing to database
|
|
127
|
+
* ```
|
|
128
|
+
* toDriver(value: TData): string {
|
|
129
|
+
* return JSON.stringify(value);
|
|
130
|
+
* }
|
|
131
|
+
* ```
|
|
132
|
+
*/
|
|
133
|
+
toDriver?: (value: T['data']) => T['driverData'] | SQL;
|
|
134
|
+
/**
|
|
135
|
+
* Optional mapping function, that is responsible for data mapping from database to JS/TS code
|
|
136
|
+
* @example
|
|
137
|
+
* For example, when using timestamp we need to map string Date representation to JS Date
|
|
138
|
+
* ```
|
|
139
|
+
* fromDriver(value: string): Date {
|
|
140
|
+
* return new Date(value);
|
|
141
|
+
* },
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
fromDriver?: (value: T['driverData']) => T['data'];
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Custom singlestore database data type generator
|
|
148
|
+
*/
|
|
149
|
+
export declare function customType<T extends CustomTypeValues = CustomTypeValues>(customTypeParams: CustomTypeParams<T>): Equal<T['configRequired'], true> extends true ? {
|
|
150
|
+
<TConfig extends Record<string, any> & T['config']>(fieldConfig: TConfig): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
151
|
+
<TName extends string>(dbName: TName, fieldConfig: T['config']): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;
|
|
152
|
+
} : {
|
|
153
|
+
(): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
154
|
+
<TConfig extends Record<string, any> & T['config']>(fieldConfig?: TConfig): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
155
|
+
<TName extends string>(dbName: TName, fieldConfig?: T['config']): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;
|
|
156
|
+
};
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
import type { ColumnBuilderBaseConfig } from "../../column-builder.js";
|
|
2
|
+
import type { ColumnBaseConfig } from "../../column.js";
|
|
3
|
+
import { entityKind } from "../../entity.js";
|
|
4
|
+
import type { AnySingleStoreTable } from "../table.js";
|
|
5
|
+
import type { SQL } from "../../sql/sql.js";
|
|
6
|
+
import { type Equal } from "../../utils.js";
|
|
7
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
|
|
8
|
+
export type ConvertCustomConfig<TName extends string, T extends Partial<CustomTypeValues>> = {
|
|
9
|
+
name: TName;
|
|
10
|
+
dataType: 'custom';
|
|
11
|
+
columnType: 'SingleStoreCustomColumn';
|
|
12
|
+
data: T['data'];
|
|
13
|
+
driverParam: T['driverData'];
|
|
14
|
+
enumValues: undefined;
|
|
15
|
+
generated: undefined;
|
|
16
|
+
} & (T['notNull'] extends true ? {
|
|
17
|
+
notNull: true;
|
|
18
|
+
} : {}) & (T['default'] extends true ? {
|
|
19
|
+
hasDefault: true;
|
|
20
|
+
} : {});
|
|
21
|
+
export interface SingleStoreCustomColumnInnerConfig {
|
|
22
|
+
customTypeValues: CustomTypeValues;
|
|
23
|
+
}
|
|
24
|
+
export declare class SingleStoreCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom', 'SingleStoreCustomColumn'>> extends SingleStoreColumnBuilder<T, {
|
|
25
|
+
fieldConfig: CustomTypeValues['config'];
|
|
26
|
+
customTypeParams: CustomTypeParams<any>;
|
|
27
|
+
}, {
|
|
28
|
+
singlestoreColumnBuilderBrand: 'SingleStoreCustomColumnBuilderBrand';
|
|
29
|
+
}> {
|
|
30
|
+
static readonly [entityKind]: string;
|
|
31
|
+
constructor(name: T['name'], fieldConfig: CustomTypeValues['config'], customTypeParams: CustomTypeParams<any>);
|
|
32
|
+
}
|
|
33
|
+
export declare class SingleStoreCustomColumn<T extends ColumnBaseConfig<'custom', 'SingleStoreCustomColumn'>> extends SingleStoreColumn<T> {
|
|
34
|
+
static readonly [entityKind]: string;
|
|
35
|
+
private sqlName;
|
|
36
|
+
private mapTo?;
|
|
37
|
+
private mapFrom?;
|
|
38
|
+
constructor(table: AnySingleStoreTable<{
|
|
39
|
+
name: T['tableName'];
|
|
40
|
+
}>, config: SingleStoreCustomColumnBuilder<T>['config']);
|
|
41
|
+
getSQLType(): string;
|
|
42
|
+
mapFromDriverValue(value: T['driverParam']): T['data'];
|
|
43
|
+
mapToDriverValue(value: T['data']): T['driverParam'];
|
|
44
|
+
}
|
|
45
|
+
export type CustomTypeValues = {
|
|
46
|
+
/**
|
|
47
|
+
* Required type for custom column, that will infer proper type model
|
|
48
|
+
*
|
|
49
|
+
* Examples:
|
|
50
|
+
*
|
|
51
|
+
* If you want your column to be `string` type after selecting/or on inserting - use `data: string`. Like `text`, `varchar`
|
|
52
|
+
*
|
|
53
|
+
* If you want your column to be `number` type after selecting/or on inserting - use `data: number`. Like `integer`
|
|
54
|
+
*/
|
|
55
|
+
data: unknown;
|
|
56
|
+
/**
|
|
57
|
+
* Type helper, that represents what type database driver is accepting for specific database data type
|
|
58
|
+
*/
|
|
59
|
+
driverData?: unknown;
|
|
60
|
+
/**
|
|
61
|
+
* What config type should be used for {@link CustomTypeParams} `dataType` generation
|
|
62
|
+
*/
|
|
63
|
+
config?: Record<string, any>;
|
|
64
|
+
/**
|
|
65
|
+
* Whether the config argument should be required or not
|
|
66
|
+
* @default false
|
|
67
|
+
*/
|
|
68
|
+
configRequired?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* If your custom data type should be notNull by default you can use `notNull: true`
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* const customSerial = customType<{ data: number, notNull: true, default: true }>({
|
|
74
|
+
* dataType() {
|
|
75
|
+
* return 'serial';
|
|
76
|
+
* },
|
|
77
|
+
* });
|
|
78
|
+
*/
|
|
79
|
+
notNull?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* If your custom data type has default you can use `default: true`
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* const customSerial = customType<{ data: number, notNull: true, default: true }>({
|
|
85
|
+
* dataType() {
|
|
86
|
+
* return 'serial';
|
|
87
|
+
* },
|
|
88
|
+
* });
|
|
89
|
+
*/
|
|
90
|
+
default?: boolean;
|
|
91
|
+
};
|
|
92
|
+
export interface CustomTypeParams<T extends CustomTypeValues> {
|
|
93
|
+
/**
|
|
94
|
+
* Database data type string representation, that is used for migrations
|
|
95
|
+
* @example
|
|
96
|
+
* ```
|
|
97
|
+
* `jsonb`, `text`
|
|
98
|
+
* ```
|
|
99
|
+
*
|
|
100
|
+
* If database data type needs additional params you can use them from `config` param
|
|
101
|
+
* @example
|
|
102
|
+
* ```
|
|
103
|
+
* `varchar(256)`, `numeric(2,3)`
|
|
104
|
+
* ```
|
|
105
|
+
*
|
|
106
|
+
* To make `config` be of specific type please use config generic in {@link CustomTypeValues}
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* Usage example
|
|
110
|
+
* ```
|
|
111
|
+
* dataType() {
|
|
112
|
+
* return 'boolean';
|
|
113
|
+
* },
|
|
114
|
+
* ```
|
|
115
|
+
* Or
|
|
116
|
+
* ```
|
|
117
|
+
* dataType(config) {
|
|
118
|
+
* return typeof config.length !== 'undefined' ? `varchar(${config.length})` : `varchar`;
|
|
119
|
+
* }
|
|
120
|
+
* ```
|
|
121
|
+
*/
|
|
122
|
+
dataType: (config: T['config'] | (Equal<T['configRequired'], true> extends true ? never : undefined)) => string;
|
|
123
|
+
/**
|
|
124
|
+
* Optional mapping function, between user input and driver
|
|
125
|
+
* @example
|
|
126
|
+
* For example, when using jsonb we need to map JS/TS object to string before writing to database
|
|
127
|
+
* ```
|
|
128
|
+
* toDriver(value: TData): string {
|
|
129
|
+
* return JSON.stringify(value);
|
|
130
|
+
* }
|
|
131
|
+
* ```
|
|
132
|
+
*/
|
|
133
|
+
toDriver?: (value: T['data']) => T['driverData'] | SQL;
|
|
134
|
+
/**
|
|
135
|
+
* Optional mapping function, that is responsible for data mapping from database to JS/TS code
|
|
136
|
+
* @example
|
|
137
|
+
* For example, when using timestamp we need to map string Date representation to JS Date
|
|
138
|
+
* ```
|
|
139
|
+
* fromDriver(value: string): Date {
|
|
140
|
+
* return new Date(value);
|
|
141
|
+
* },
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
fromDriver?: (value: T['driverData']) => T['data'];
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Custom singlestore database data type generator
|
|
148
|
+
*/
|
|
149
|
+
export declare function customType<T extends CustomTypeValues = CustomTypeValues>(customTypeParams: CustomTypeParams<T>): Equal<T['configRequired'], true> extends true ? {
|
|
150
|
+
<TConfig extends Record<string, any> & T['config']>(fieldConfig: TConfig): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
151
|
+
<TName extends string>(dbName: TName, fieldConfig: T['config']): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;
|
|
152
|
+
} : {
|
|
153
|
+
(): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
154
|
+
<TConfig extends Record<string, any> & T['config']>(fieldConfig?: TConfig): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;
|
|
155
|
+
<TName extends string>(dbName: TName, fieldConfig?: T['config']): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;
|
|
156
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { entityKind } from "../../entity.js";
|
|
2
|
+
import { getColumnNameAndConfig } from "../../utils.js";
|
|
3
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
|
|
4
|
+
class SingleStoreCustomColumnBuilder extends SingleStoreColumnBuilder {
|
|
5
|
+
static [entityKind] = "SingleStoreCustomColumnBuilder";
|
|
6
|
+
constructor(name, fieldConfig, customTypeParams) {
|
|
7
|
+
super(name, "custom", "SingleStoreCustomColumn");
|
|
8
|
+
this.config.fieldConfig = fieldConfig;
|
|
9
|
+
this.config.customTypeParams = customTypeParams;
|
|
10
|
+
}
|
|
11
|
+
/** @internal */
|
|
12
|
+
build(table) {
|
|
13
|
+
return new SingleStoreCustomColumn(
|
|
14
|
+
table,
|
|
15
|
+
this.config
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
class SingleStoreCustomColumn extends SingleStoreColumn {
|
|
20
|
+
static [entityKind] = "SingleStoreCustomColumn";
|
|
21
|
+
sqlName;
|
|
22
|
+
mapTo;
|
|
23
|
+
mapFrom;
|
|
24
|
+
constructor(table, config) {
|
|
25
|
+
super(table, config);
|
|
26
|
+
this.sqlName = config.customTypeParams.dataType(config.fieldConfig);
|
|
27
|
+
this.mapTo = config.customTypeParams.toDriver;
|
|
28
|
+
this.mapFrom = config.customTypeParams.fromDriver;
|
|
29
|
+
}
|
|
30
|
+
getSQLType() {
|
|
31
|
+
return this.sqlName;
|
|
32
|
+
}
|
|
33
|
+
mapFromDriverValue(value) {
|
|
34
|
+
return typeof this.mapFrom === "function" ? this.mapFrom(value) : value;
|
|
35
|
+
}
|
|
36
|
+
mapToDriverValue(value) {
|
|
37
|
+
return typeof this.mapTo === "function" ? this.mapTo(value) : value;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
function customType(customTypeParams) {
|
|
41
|
+
return (a, b) => {
|
|
42
|
+
const { name, config } = getColumnNameAndConfig(a, b);
|
|
43
|
+
return new SingleStoreCustomColumnBuilder(name, config, customTypeParams);
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export {
|
|
47
|
+
SingleStoreCustomColumn,
|
|
48
|
+
SingleStoreCustomColumnBuilder,
|
|
49
|
+
customType
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=custom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/singlestore-core/columns/custom.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig, ColumnBuilderRuntimeConfig, MakeColumnConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySingleStoreTable } from '~/singlestore-core/table.ts';\nimport type { SQL } from '~/sql/sql.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SingleStoreColumn, SingleStoreColumnBuilder } from './common.ts';\n\nexport type ConvertCustomConfig<TName extends string, T extends Partial<CustomTypeValues>> =\n\t& {\n\t\tname: TName;\n\t\tdataType: 'custom';\n\t\tcolumnType: 'SingleStoreCustomColumn';\n\t\tdata: T['data'];\n\t\tdriverParam: T['driverData'];\n\t\tenumValues: undefined;\n\t\tgenerated: undefined;\n\t}\n\t& (T['notNull'] extends true ? { notNull: true } : {})\n\t& (T['default'] extends true ? { hasDefault: true } : {});\n\nexport interface SingleStoreCustomColumnInnerConfig {\n\tcustomTypeValues: CustomTypeValues;\n}\n\nexport class SingleStoreCustomColumnBuilder<T extends ColumnBuilderBaseConfig<'custom', 'SingleStoreCustomColumn'>>\n\textends SingleStoreColumnBuilder<\n\t\tT,\n\t\t{\n\t\t\tfieldConfig: CustomTypeValues['config'];\n\t\t\tcustomTypeParams: CustomTypeParams<any>;\n\t\t},\n\t\t{\n\t\t\tsinglestoreColumnBuilderBrand: 'SingleStoreCustomColumnBuilderBrand';\n\t\t}\n\t>\n{\n\tstatic override readonly [entityKind]: string = 'SingleStoreCustomColumnBuilder';\n\n\tconstructor(\n\t\tname: T['name'],\n\t\tfieldConfig: CustomTypeValues['config'],\n\t\tcustomTypeParams: CustomTypeParams<any>,\n\t) {\n\t\tsuper(name, 'custom', 'SingleStoreCustomColumn');\n\t\tthis.config.fieldConfig = fieldConfig;\n\t\tthis.config.customTypeParams = customTypeParams;\n\t}\n\n\t/** @internal */\n\tbuild<TTableName extends string>(\n\t\ttable: AnySingleStoreTable<{ name: TTableName }>,\n\t): SingleStoreCustomColumn<MakeColumnConfig<T, TTableName>> {\n\t\treturn new SingleStoreCustomColumn<MakeColumnConfig<T, TTableName>>(\n\t\t\ttable,\n\t\t\tthis.config as ColumnBuilderRuntimeConfig<any, any>,\n\t\t);\n\t}\n}\n\nexport class SingleStoreCustomColumn<T extends ColumnBaseConfig<'custom', 'SingleStoreCustomColumn'>>\n\textends SingleStoreColumn<T>\n{\n\tstatic override readonly [entityKind]: string = 'SingleStoreCustomColumn';\n\n\tprivate sqlName: string;\n\tprivate mapTo?: (value: T['data']) => T['driverParam'];\n\tprivate mapFrom?: (value: T['driverParam']) => T['data'];\n\n\tconstructor(\n\t\ttable: AnySingleStoreTable<{ name: T['tableName'] }>,\n\t\tconfig: SingleStoreCustomColumnBuilder<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}\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\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 type 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 * 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, between user input and 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 responsible for data mapping from database to JS/TS code\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\tfromDriver?: (value: T['driverData']) => T['data'];\n}\n\n/**\n * Custom singlestore 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): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;\n\t\t<TName extends string>(\n\t\t\tdbName: TName,\n\t\t\tfieldConfig: T['config'],\n\t\t): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;\n\t}\n\t: {\n\t\t(): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;\n\t\t<TConfig extends Record<string, any> & T['config']>(\n\t\t\tfieldConfig?: TConfig,\n\t\t): SingleStoreCustomColumnBuilder<ConvertCustomConfig<'', T>>;\n\t\t<TName extends string>(\n\t\t\tdbName: TName,\n\t\t\tfieldConfig?: T['config'],\n\t\t): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>>;\n\t}\n{\n\treturn <TName extends string>(\n\t\ta?: TName | T['config'],\n\t\tb?: T['config'],\n\t): SingleStoreCustomColumnBuilder<ConvertCustomConfig<TName, T>> => {\n\t\tconst { name, config } = getColumnNameAndConfig<T['config']>(a, b);\n\t\treturn new SingleStoreCustomColumnBuilder(name as ConvertCustomConfig<TName, T>['name'], config, customTypeParams);\n\t};\n}\n"],"mappings":"AAEA,SAAS,kBAAkB;AAG3B,SAAqB,8BAA8B;AACnD,SAAS,mBAAmB,gCAAgC;AAmBrD,MAAM,uCACJ,yBAUT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAEhD,YACC,MACA,aACA,kBACC;AACD,UAAM,MAAM,UAAU,yBAAyB;AAC/C,SAAK,OAAO,cAAc;AAC1B,SAAK,OAAO,mBAAmB;AAAA,EAChC;AAAA;AAAA,EAGA,MACC,OAC2D;AAC3D,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,gCACJ,kBACT;AAAA,EACC,QAA0B,UAAU,IAAY;AAAA,EAExC;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;AAAA,EACxC;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,EAES,iBAAiB,OAAoC;AAC7D,WAAO,OAAO,KAAK,UAAU,aAAa,KAAK,MAAM,KAAK,IAAI;AAAA,EAC/D;AACD;AAmHO,SAAS,WACf,kBAoBD;AACC,SAAO,CACN,GACA,MACmE;AACnE,UAAM,EAAE,MAAM,OAAO,IAAI,uBAAoC,GAAG,CAAC;AACjE,WAAO,IAAI,+BAA+B,MAA+C,QAAQ,gBAAgB;AAAA,EAClH;AACD;","names":[]}
|
|
@@ -0,0 +1,93 @@
|
|
|
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 date_exports = {};
|
|
20
|
+
__export(date_exports, {
|
|
21
|
+
SingleStoreDate: () => SingleStoreDate,
|
|
22
|
+
SingleStoreDateBuilder: () => SingleStoreDateBuilder,
|
|
23
|
+
SingleStoreDateString: () => SingleStoreDateString,
|
|
24
|
+
SingleStoreDateStringBuilder: () => SingleStoreDateStringBuilder,
|
|
25
|
+
date: () => date
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(date_exports);
|
|
28
|
+
var import_entity = require("../../entity.cjs");
|
|
29
|
+
var import_utils = require("../../utils.cjs");
|
|
30
|
+
var import_common = require("./common.cjs");
|
|
31
|
+
class SingleStoreDateBuilder extends import_common.SingleStoreColumnBuilder {
|
|
32
|
+
static [import_entity.entityKind] = "SingleStoreDateBuilder";
|
|
33
|
+
constructor(name) {
|
|
34
|
+
super(name, "date", "SingleStoreDate");
|
|
35
|
+
}
|
|
36
|
+
/** @internal */
|
|
37
|
+
build(table) {
|
|
38
|
+
return new SingleStoreDate(
|
|
39
|
+
table,
|
|
40
|
+
this.config
|
|
41
|
+
);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
class SingleStoreDate extends import_common.SingleStoreColumn {
|
|
45
|
+
static [import_entity.entityKind] = "SingleStoreDate";
|
|
46
|
+
constructor(table, config) {
|
|
47
|
+
super(table, config);
|
|
48
|
+
}
|
|
49
|
+
getSQLType() {
|
|
50
|
+
return `date`;
|
|
51
|
+
}
|
|
52
|
+
mapFromDriverValue(value) {
|
|
53
|
+
return new Date(value);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
class SingleStoreDateStringBuilder extends import_common.SingleStoreColumnBuilder {
|
|
57
|
+
static [import_entity.entityKind] = "SingleStoreDateStringBuilder";
|
|
58
|
+
constructor(name) {
|
|
59
|
+
super(name, "string", "SingleStoreDateString");
|
|
60
|
+
}
|
|
61
|
+
/** @internal */
|
|
62
|
+
build(table) {
|
|
63
|
+
return new SingleStoreDateString(
|
|
64
|
+
table,
|
|
65
|
+
this.config
|
|
66
|
+
);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
class SingleStoreDateString extends import_common.SingleStoreColumn {
|
|
70
|
+
static [import_entity.entityKind] = "SingleStoreDateString";
|
|
71
|
+
constructor(table, config) {
|
|
72
|
+
super(table, config);
|
|
73
|
+
}
|
|
74
|
+
getSQLType() {
|
|
75
|
+
return `date`;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function date(a, b) {
|
|
79
|
+
const { name, config } = (0, import_utils.getColumnNameAndConfig)(a, b);
|
|
80
|
+
if (config?.mode === "string") {
|
|
81
|
+
return new SingleStoreDateStringBuilder(name);
|
|
82
|
+
}
|
|
83
|
+
return new SingleStoreDateBuilder(name);
|
|
84
|
+
}
|
|
85
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
86
|
+
0 && (module.exports = {
|
|
87
|
+
SingleStoreDate,
|
|
88
|
+
SingleStoreDateBuilder,
|
|
89
|
+
SingleStoreDateString,
|
|
90
|
+
SingleStoreDateStringBuilder,
|
|
91
|
+
date
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=date.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/singlestore-core/columns/date.ts"],"sourcesContent":["import type { ColumnBuilderBaseConfig, ColumnBuilderRuntimeConfig, MakeColumnConfig } from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport type { AnySingleStoreTable } from '~/singlestore-core/table.ts';\nimport { type Equal, getColumnNameAndConfig } from '~/utils.ts';\nimport { SingleStoreColumn, SingleStoreColumnBuilder } from './common.ts';\n\nexport type SingleStoreDateBuilderInitial<TName extends string> = SingleStoreDateBuilder<{\n\tname: TName;\n\tdataType: 'date';\n\tcolumnType: 'SingleStoreDate';\n\tdata: Date;\n\tdriverParam: string | number;\n\tenumValues: undefined;\n\tgenerated: undefined;\n}>;\n\nexport class SingleStoreDateBuilder<T extends ColumnBuilderBaseConfig<'date', 'SingleStoreDate'>>\n\textends SingleStoreColumnBuilder<T>\n{\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateBuilder';\n\n\tconstructor(name: T['name']) {\n\t\tsuper(name, 'date', 'SingleStoreDate');\n\t}\n\n\t/** @internal */\n\toverride build<TTableName extends string>(\n\t\ttable: AnySingleStoreTable<{ name: TTableName }>,\n\t): SingleStoreDate<MakeColumnConfig<T, TTableName>> {\n\t\treturn new SingleStoreDate<MakeColumnConfig<T, TTableName>>(\n\t\t\ttable,\n\t\t\tthis.config as ColumnBuilderRuntimeConfig<any, any>,\n\t\t);\n\t}\n}\n\nexport class SingleStoreDate<T extends ColumnBaseConfig<'date', 'SingleStoreDate'>> extends SingleStoreColumn<T> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreDate';\n\n\tconstructor(\n\t\ttable: AnySingleStoreTable<{ name: T['tableName'] }>,\n\t\tconfig: SingleStoreDateBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `date`;\n\t}\n\n\toverride mapFromDriverValue(value: string): Date {\n\t\treturn new Date(value);\n\t}\n}\n\nexport type SingleStoreDateStringBuilderInitial<TName extends string> = SingleStoreDateStringBuilder<{\n\tname: TName;\n\tdataType: 'string';\n\tcolumnType: 'SingleStoreDateString';\n\tdata: string;\n\tdriverParam: string | number;\n\tenumValues: undefined;\n\tgenerated: undefined;\n}>;\n\nexport class SingleStoreDateStringBuilder<T extends ColumnBuilderBaseConfig<'string', 'SingleStoreDateString'>>\n\textends SingleStoreColumnBuilder<T>\n{\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateStringBuilder';\n\n\tconstructor(name: T['name']) {\n\t\tsuper(name, 'string', 'SingleStoreDateString');\n\t}\n\n\t/** @internal */\n\toverride build<TTableName extends string>(\n\t\ttable: AnySingleStoreTable<{ name: TTableName }>,\n\t): SingleStoreDateString<MakeColumnConfig<T, TTableName>> {\n\t\treturn new SingleStoreDateString<MakeColumnConfig<T, TTableName>>(\n\t\t\ttable,\n\t\t\tthis.config as ColumnBuilderRuntimeConfig<any, any>,\n\t\t);\n\t}\n}\n\nexport class SingleStoreDateString<T extends ColumnBaseConfig<'string', 'SingleStoreDateString'>>\n\textends SingleStoreColumn<T>\n{\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateString';\n\n\tconstructor(\n\t\ttable: AnySingleStoreTable<{ name: T['tableName'] }>,\n\t\tconfig: SingleStoreDateStringBuilder<T>['config'],\n\t) {\n\t\tsuper(table, config);\n\t}\n\n\tgetSQLType(): string {\n\t\treturn `date`;\n\t}\n}\n\nexport interface SingleStoreDateConfig<TMode extends 'date' | 'string' = 'date' | 'string'> {\n\tmode?: TMode;\n}\n\nexport function date(): SingleStoreDateBuilderInitial<''>;\nexport function date<TMode extends SingleStoreDateConfig['mode'] & {}>(\n\tconfig?: SingleStoreDateConfig<TMode>,\n): Equal<TMode, 'string'> extends true ? SingleStoreDateStringBuilderInitial<''> : SingleStoreDateBuilderInitial<''>;\nexport function date<TName extends string, TMode extends SingleStoreDateConfig['mode'] & {}>(\n\tname: TName,\n\tconfig?: SingleStoreDateConfig<TMode>,\n): Equal<TMode, 'string'> extends true ? SingleStoreDateStringBuilderInitial<TName>\n\t: SingleStoreDateBuilderInitial<TName>;\nexport function date(a?: string | SingleStoreDateConfig, b?: SingleStoreDateConfig) {\n\tconst { name, config } = getColumnNameAndConfig<SingleStoreDateConfig | undefined>(a, b);\n\tif (config?.mode === 'string') {\n\t\treturn new SingleStoreDateStringBuilder(name);\n\t}\n\treturn new SingleStoreDateBuilder(name);\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA,oBAA2B;AAE3B,mBAAmD;AACnD,oBAA4D;AAYrD,MAAM,+BACJ,uCACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAiB;AAC5B,UAAM,MAAM,QAAQ,iBAAiB;AAAA,EACtC;AAAA;AAAA,EAGS,MACR,OACmD;AACnD,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,wBAA+E,gCAAqB;AAAA,EAChH,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AAAA,EAES,mBAAmB,OAAqB;AAChD,WAAO,IAAI,KAAK,KAAK;AAAA,EACtB;AACD;AAYO,MAAM,qCACJ,uCACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YAAY,MAAiB;AAC5B,UAAM,MAAM,UAAU,uBAAuB;AAAA,EAC9C;AAAA;AAAA,EAGS,MACR,OACyD;AACzD,WAAO,IAAI;AAAA,MACV;AAAA,MACA,KAAK;AAAA,IACN;AAAA,EACD;AACD;AAEO,MAAM,8BACJ,gCACT;AAAA,EACC,QAA0B,wBAAU,IAAY;AAAA,EAEhD,YACC,OACA,QACC;AACD,UAAM,OAAO,MAAM;AAAA,EACpB;AAAA,EAEA,aAAqB;AACpB,WAAO;AAAA,EACR;AACD;AAeO,SAAS,KAAK,GAAoC,GAA2B;AACnF,QAAM,EAAE,MAAM,OAAO,QAAI,qCAA0D,GAAG,CAAC;AACvF,MAAI,QAAQ,SAAS,UAAU;AAC9B,WAAO,IAAI,6BAA6B,IAAI;AAAA,EAC7C;AACA,SAAO,IAAI,uBAAuB,IAAI;AACvC;","names":[]}
|
|
@@ -0,0 +1,48 @@
|
|
|
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 date_common_exports = {};
|
|
20
|
+
__export(date_common_exports, {
|
|
21
|
+
SingleStoreDateBaseColumn: () => SingleStoreDateBaseColumn,
|
|
22
|
+
SingleStoreDateColumnBaseBuilder: () => SingleStoreDateColumnBaseBuilder
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(date_common_exports);
|
|
25
|
+
var import_entity = require("../../entity.cjs");
|
|
26
|
+
var import_sql = require("../../sql/sql.cjs");
|
|
27
|
+
var import_common = require("./common.cjs");
|
|
28
|
+
class SingleStoreDateColumnBaseBuilder extends import_common.SingleStoreColumnBuilder {
|
|
29
|
+
static [import_entity.entityKind] = "SingleStoreDateColumnBuilder";
|
|
30
|
+
defaultNow() {
|
|
31
|
+
return this.default(import_sql.sql`now()`);
|
|
32
|
+
}
|
|
33
|
+
onUpdateNow() {
|
|
34
|
+
this.config.hasOnUpdateNow = true;
|
|
35
|
+
this.config.hasDefault = true;
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
class SingleStoreDateBaseColumn extends import_common.SingleStoreColumn {
|
|
40
|
+
static [import_entity.entityKind] = "SingleStoreDateColumn";
|
|
41
|
+
hasOnUpdateNow = this.config.hasOnUpdateNow;
|
|
42
|
+
}
|
|
43
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
44
|
+
0 && (module.exports = {
|
|
45
|
+
SingleStoreDateBaseColumn,
|
|
46
|
+
SingleStoreDateColumnBaseBuilder
|
|
47
|
+
});
|
|
48
|
+
//# sourceMappingURL=date.common.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/singlestore-core/columns/date.common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnDataType,\n\tHasDefault,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport { sql } from '~/sql/sql.ts';\nimport { SingleStoreColumn, SingleStoreColumnBuilder } from './common.ts';\n\nexport interface SingleStoreDateColumnBaseConfig {\n\thasOnUpdateNow: boolean;\n}\n\nexport abstract class SingleStoreDateColumnBaseBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends SingleStoreColumnBuilder<T, TRuntimeConfig & SingleStoreDateColumnBaseConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateColumnBuilder';\n\n\tdefaultNow() {\n\t\treturn this.default(sql`now()`);\n\t}\n\n\tonUpdateNow(): HasDefault<this> {\n\t\tthis.config.hasOnUpdateNow = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n}\n\nexport abstract class SingleStoreDateBaseColumn<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n> extends SingleStoreColumn<T, SingleStoreDateColumnBaseConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateColumn';\n\n\treadonly hasOnUpdateNow: boolean = this.config.hasOnUpdateNow;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,oBAA2B;AAC3B,iBAAoB;AACpB,oBAA4D;AAMrD,MAAe,yCAIZ,uCAA4F;AAAA,EACrG,QAA0B,wBAAU,IAAY;AAAA,EAEhD,aAAa;AACZ,WAAO,KAAK,QAAQ,qBAAU;AAAA,EAC/B;AAAA,EAEA,cAAgC;AAC/B,SAAK,OAAO,iBAAiB;AAC7B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,kCAGZ,gCAAuE;AAAA,EAChF,QAA0B,wBAAU,IAAY;AAAA,EAEvC,iBAA0B,KAAK,OAAO;AAChD;","names":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ColumnBuilderBaseConfig, ColumnBuilderExtraConfig, ColumnDataType, HasDefault } from "../../column-builder.cjs";
|
|
2
|
+
import type { ColumnBaseConfig } from "../../column.cjs";
|
|
3
|
+
import { entityKind } from "../../entity.cjs";
|
|
4
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.cjs";
|
|
5
|
+
export interface SingleStoreDateColumnBaseConfig {
|
|
6
|
+
hasOnUpdateNow: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare abstract class SingleStoreDateColumnBaseBuilder<T extends ColumnBuilderBaseConfig<ColumnDataType, string>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> extends SingleStoreColumnBuilder<T, TRuntimeConfig & SingleStoreDateColumnBaseConfig, TExtraConfig> {
|
|
9
|
+
static readonly [entityKind]: string;
|
|
10
|
+
defaultNow(): HasDefault<this>;
|
|
11
|
+
onUpdateNow(): HasDefault<this>;
|
|
12
|
+
}
|
|
13
|
+
export declare abstract class SingleStoreDateBaseColumn<T extends ColumnBaseConfig<ColumnDataType, string>, TRuntimeConfig extends object = object> extends SingleStoreColumn<T, SingleStoreDateColumnBaseConfig & TRuntimeConfig> {
|
|
14
|
+
static readonly [entityKind]: string;
|
|
15
|
+
readonly hasOnUpdateNow: boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ColumnBuilderBaseConfig, ColumnBuilderExtraConfig, ColumnDataType, HasDefault } from "../../column-builder.js";
|
|
2
|
+
import type { ColumnBaseConfig } from "../../column.js";
|
|
3
|
+
import { entityKind } from "../../entity.js";
|
|
4
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
|
|
5
|
+
export interface SingleStoreDateColumnBaseConfig {
|
|
6
|
+
hasOnUpdateNow: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare abstract class SingleStoreDateColumnBaseBuilder<T extends ColumnBuilderBaseConfig<ColumnDataType, string>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> extends SingleStoreColumnBuilder<T, TRuntimeConfig & SingleStoreDateColumnBaseConfig, TExtraConfig> {
|
|
9
|
+
static readonly [entityKind]: string;
|
|
10
|
+
defaultNow(): HasDefault<this>;
|
|
11
|
+
onUpdateNow(): HasDefault<this>;
|
|
12
|
+
}
|
|
13
|
+
export declare abstract class SingleStoreDateBaseColumn<T extends ColumnBaseConfig<ColumnDataType, string>, TRuntimeConfig extends object = object> extends SingleStoreColumn<T, SingleStoreDateColumnBaseConfig & TRuntimeConfig> {
|
|
14
|
+
static readonly [entityKind]: string;
|
|
15
|
+
readonly hasOnUpdateNow: boolean;
|
|
16
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { entityKind } from "../../entity.js";
|
|
2
|
+
import { sql } from "../../sql/sql.js";
|
|
3
|
+
import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
|
|
4
|
+
class SingleStoreDateColumnBaseBuilder extends SingleStoreColumnBuilder {
|
|
5
|
+
static [entityKind] = "SingleStoreDateColumnBuilder";
|
|
6
|
+
defaultNow() {
|
|
7
|
+
return this.default(sql`now()`);
|
|
8
|
+
}
|
|
9
|
+
onUpdateNow() {
|
|
10
|
+
this.config.hasOnUpdateNow = true;
|
|
11
|
+
this.config.hasDefault = true;
|
|
12
|
+
return this;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
class SingleStoreDateBaseColumn extends SingleStoreColumn {
|
|
16
|
+
static [entityKind] = "SingleStoreDateColumn";
|
|
17
|
+
hasOnUpdateNow = this.config.hasOnUpdateNow;
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
SingleStoreDateBaseColumn,
|
|
21
|
+
SingleStoreDateColumnBaseBuilder
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=date.common.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/singlestore-core/columns/date.common.ts"],"sourcesContent":["import type {\n\tColumnBuilderBaseConfig,\n\tColumnBuilderExtraConfig,\n\tColumnDataType,\n\tHasDefault,\n} from '~/column-builder.ts';\nimport type { ColumnBaseConfig } from '~/column.ts';\nimport { entityKind } from '~/entity.ts';\nimport { sql } from '~/sql/sql.ts';\nimport { SingleStoreColumn, SingleStoreColumnBuilder } from './common.ts';\n\nexport interface SingleStoreDateColumnBaseConfig {\n\thasOnUpdateNow: boolean;\n}\n\nexport abstract class SingleStoreDateColumnBaseBuilder<\n\tT extends ColumnBuilderBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n\tTExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig,\n> extends SingleStoreColumnBuilder<T, TRuntimeConfig & SingleStoreDateColumnBaseConfig, TExtraConfig> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateColumnBuilder';\n\n\tdefaultNow() {\n\t\treturn this.default(sql`now()`);\n\t}\n\n\tonUpdateNow(): HasDefault<this> {\n\t\tthis.config.hasOnUpdateNow = true;\n\t\tthis.config.hasDefault = true;\n\t\treturn this as HasDefault<this>;\n\t}\n}\n\nexport abstract class SingleStoreDateBaseColumn<\n\tT extends ColumnBaseConfig<ColumnDataType, string>,\n\tTRuntimeConfig extends object = object,\n> extends SingleStoreColumn<T, SingleStoreDateColumnBaseConfig & TRuntimeConfig> {\n\tstatic override readonly [entityKind]: string = 'SingleStoreDateColumn';\n\n\treadonly hasOnUpdateNow: boolean = this.config.hasOnUpdateNow;\n}\n"],"mappings":"AAOA,SAAS,kBAAkB;AAC3B,SAAS,WAAW;AACpB,SAAS,mBAAmB,gCAAgC;AAMrD,MAAe,yCAIZ,yBAA4F;AAAA,EACrG,QAA0B,UAAU,IAAY;AAAA,EAEhD,aAAa;AACZ,WAAO,KAAK,QAAQ,UAAU;AAAA,EAC/B;AAAA,EAEA,cAAgC;AAC/B,SAAK,OAAO,iBAAiB;AAC7B,SAAK,OAAO,aAAa;AACzB,WAAO;AAAA,EACR;AACD;AAEO,MAAe,kCAGZ,kBAAuE;AAAA,EAChF,QAA0B,UAAU,IAAY;AAAA,EAEvC,iBAA0B,KAAK,OAAO;AAChD;","names":[]}
|