neoorm 0.8.0 → 0.8.2
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/README.md +13 -6
- package/dist/bin/neoorm.d.ts +1 -1
- package/dist/bin/neoorm.d.ts.map +1 -1
- package/dist/bin/neoorm.js +148 -75
- package/dist/bin/neoorm.js.map +1 -1
- package/dist/codegen/diff-manifest.d.ts.map +1 -1
- package/dist/codegen/diff-manifest.js +106 -4
- package/dist/codegen/diff-manifest.js.map +1 -1
- package/dist/codegen/generate-summary.d.ts +5 -1
- package/dist/codegen/generate-summary.d.ts.map +1 -1
- package/dist/codegen/generate-summary.js +10 -1
- package/dist/codegen/generate-summary.js.map +1 -1
- package/dist/codegen/generate.d.ts +24 -4
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/generate.js +150 -13
- package/dist/codegen/generate.js.map +1 -1
- package/dist/codegen/manifest-relations.d.ts +2 -0
- package/dist/codegen/manifest-relations.d.ts.map +1 -1
- package/dist/codegen/manifest-relations.js +2 -1
- package/dist/codegen/manifest-relations.js.map +1 -1
- package/dist/codegen/schema-to-manifest.d.ts +1 -1
- package/dist/codegen/schema-to-manifest.d.ts.map +1 -1
- package/dist/codegen/schema-to-manifest.js +349 -29
- package/dist/codegen/schema-to-manifest.js.map +1 -1
- package/dist/codegen/validation/emit-elysia.d.ts +4 -0
- package/dist/codegen/validation/emit-elysia.d.ts.map +1 -0
- package/dist/codegen/validation/emit-elysia.js +304 -0
- package/dist/codegen/validation/emit-elysia.js.map +1 -0
- package/dist/codegen/validation/emit-typebox.d.ts +4 -0
- package/dist/codegen/validation/emit-typebox.d.ts.map +1 -0
- package/dist/codegen/validation/emit-typebox.js +360 -0
- package/dist/codegen/validation/emit-typebox.js.map +1 -0
- package/dist/codegen/validation/emit-zod.d.ts +4 -0
- package/dist/codegen/validation/emit-zod.d.ts.map +1 -0
- package/dist/codegen/validation/emit-zod.js +288 -0
- package/dist/codegen/validation/emit-zod.js.map +1 -0
- package/dist/codegen/validation/from-manifest.d.ts +5 -0
- package/dist/codegen/validation/from-manifest.d.ts.map +1 -0
- package/dist/codegen/validation/from-manifest.js +284 -0
- package/dist/codegen/validation/from-manifest.js.map +1 -0
- package/dist/codegen/validation/infer.d.ts +47 -0
- package/dist/codegen/validation/infer.d.ts.map +1 -0
- package/dist/codegen/validation/infer.js +2 -0
- package/dist/codegen/validation/infer.js.map +1 -0
- package/dist/codegen/validation/json-generic-types.d.ts +7 -0
- package/dist/codegen/validation/json-generic-types.d.ts.map +1 -0
- package/dist/codegen/validation/json-generic-types.js +295 -0
- package/dist/codegen/validation/json-generic-types.js.map +1 -0
- package/dist/codegen/validation/types.d.ts +84 -0
- package/dist/codegen/validation/types.d.ts.map +1 -0
- package/dist/codegen/validation/types.js +6 -0
- package/dist/codegen/validation/types.js.map +1 -0
- package/dist/config.d.ts +8 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +30 -0
- package/dist/config.js.map +1 -1
- package/dist/datasource-provider.d.ts +5 -1
- package/dist/datasource-provider.d.ts.map +1 -1
- package/dist/datasource-provider.js +21 -2
- package/dist/datasource-provider.js.map +1 -1
- package/dist/dialect/column-kind-support.d.ts +9 -0
- package/dist/dialect/column-kind-support.d.ts.map +1 -0
- package/dist/dialect/column-kind-support.js +25 -0
- package/dist/dialect/column-kind-support.js.map +1 -0
- package/dist/dialect/fk.d.ts +30 -1
- package/dist/dialect/fk.d.ts.map +1 -1
- package/dist/dialect/fk.js +113 -0
- package/dist/dialect/fk.js.map +1 -1
- package/dist/dialect/index.d.ts +6 -1
- package/dist/dialect/index.d.ts.map +1 -1
- package/dist/dialect/index.js +5 -0
- package/dist/dialect/index.js.map +1 -1
- package/dist/dialect/mariadb.d.ts +4 -0
- package/dist/dialect/mariadb.d.ts.map +1 -0
- package/dist/dialect/mariadb.js +15 -0
- package/dist/dialect/mariadb.js.map +1 -0
- package/dist/dialect/mariadb.test.d.ts +2 -0
- package/dist/dialect/mariadb.test.d.ts.map +1 -0
- package/dist/dialect/mariadb.test.js +151 -0
- package/dist/dialect/mariadb.test.js.map +1 -0
- package/dist/dialect/mysql-family.d.ts +14 -0
- package/dist/dialect/mysql-family.d.ts.map +1 -0
- package/dist/dialect/mysql-family.js +453 -0
- package/dist/dialect/mysql-family.js.map +1 -0
- package/dist/dialect/mysql.d.ts +6 -0
- package/dist/dialect/mysql.d.ts.map +1 -0
- package/dist/dialect/mysql.js +16 -0
- package/dist/dialect/mysql.js.map +1 -0
- package/dist/dialect/mysql.test.d.ts +2 -0
- package/dist/dialect/mysql.test.d.ts.map +1 -0
- package/dist/dialect/mysql.test.js +211 -0
- package/dist/dialect/mysql.test.js.map +1 -0
- package/dist/dialect/placeholders.d.ts +7 -0
- package/dist/dialect/placeholders.d.ts.map +1 -0
- package/dist/dialect/placeholders.js +18 -0
- package/dist/dialect/placeholders.js.map +1 -0
- package/dist/dialect/postgres.d.ts +2 -1
- package/dist/dialect/postgres.d.ts.map +1 -1
- package/dist/dialect/postgres.js +93 -30
- package/dist/dialect/postgres.js.map +1 -1
- package/dist/dialect/resolve.d.ts +13 -0
- package/dist/dialect/resolve.d.ts.map +1 -0
- package/dist/dialect/resolve.js +66 -0
- package/dist/dialect/resolve.js.map +1 -0
- package/dist/dialect/shared.d.ts +8 -1
- package/dist/dialect/shared.d.ts.map +1 -1
- package/dist/dialect/shared.js +37 -0
- package/dist/dialect/shared.js.map +1 -1
- package/dist/dialect/sqlite.d.ts.map +1 -1
- package/dist/dialect/sqlite.js +50 -18
- package/dist/dialect/sqlite.js.map +1 -1
- package/dist/dialect/sqlite.test.js +43 -1
- package/dist/dialect/sqlite.test.js.map +1 -1
- package/dist/dialect/types.d.ts +60 -3
- package/dist/dialect/types.d.ts.map +1 -1
- package/dist/docs/pages.d.ts.map +1 -1
- package/dist/docs/pages.js +5 -0
- package/dist/docs/pages.js.map +1 -1
- package/dist/docs/render.js +1 -1
- package/dist/index.d.ts +6 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/init/scaffold.d.ts +2 -1
- package/dist/init/scaffold.d.ts.map +1 -1
- package/dist/init/scaffold.js.map +1 -1
- package/dist/init/templates.d.ts +3 -2
- package/dist/init/templates.d.ts.map +1 -1
- package/dist/init/templates.js +19 -9
- package/dist/init/templates.js.map +1 -1
- package/dist/introspect/group-fks.d.ts +24 -0
- package/dist/introspect/group-fks.d.ts.map +1 -0
- package/dist/introspect/group-fks.js +48 -0
- package/dist/introspect/group-fks.js.map +1 -0
- package/dist/introspect/mysql/to-manifest.d.ts +4 -0
- package/dist/introspect/mysql/to-manifest.d.ts.map +1 -0
- package/dist/introspect/mysql/to-manifest.js +317 -0
- package/dist/introspect/mysql/to-manifest.js.map +1 -0
- package/dist/introspect/pull.d.ts +1 -0
- package/dist/introspect/pull.d.ts.map +1 -1
- package/dist/introspect/pull.js +186 -9
- package/dist/introspect/pull.js.map +1 -1
- package/dist/introspect/queries.d.ts +11 -1
- package/dist/introspect/queries.d.ts.map +1 -1
- package/dist/introspect/queries.js +43 -12
- package/dist/introspect/queries.js.map +1 -1
- package/dist/introspect/sqlite/to-manifest.d.ts.map +1 -1
- package/dist/introspect/sqlite/to-manifest.js +99 -26
- package/dist/introspect/sqlite/to-manifest.js.map +1 -1
- package/dist/introspect/to-manifest.d.ts.map +1 -1
- package/dist/introspect/to-manifest.js +154 -28
- package/dist/introspect/to-manifest.js.map +1 -1
- package/dist/migrate/dev-lock.d.ts +15 -0
- package/dist/migrate/dev-lock.d.ts.map +1 -0
- package/dist/migrate/dev-lock.js +101 -0
- package/dist/migrate/dev-lock.js.map +1 -0
- package/dist/migrate/runner.d.ts.map +1 -1
- package/dist/migrate/runner.js +143 -51
- package/dist/migrate/runner.js.map +1 -1
- package/dist/plugins/builtin.d.ts +62 -12
- package/dist/plugins/builtin.d.ts.map +1 -1
- package/dist/plugins/builtin.js +378 -30
- package/dist/plugins/builtin.js.map +1 -1
- package/dist/plugins/index.d.ts +1 -0
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js.map +1 -1
- package/dist/plugins/json/operators.d.ts.map +1 -1
- package/dist/plugins/json/operators.js +69 -3
- package/dist/plugins/json/operators.js.map +1 -1
- package/dist/plugins/postgis/columns.d.ts.map +1 -1
- package/dist/plugins/postgis/columns.js +52 -0
- package/dist/plugins/postgis/columns.js.map +1 -1
- package/dist/plugins/postgis/columns.test.js +13 -0
- package/dist/plugins/postgis/columns.test.js.map +1 -1
- package/dist/plugins/postgis/operators.d.ts.map +1 -1
- package/dist/plugins/postgis/operators.js +15 -3
- package/dist/plugins/postgis/operators.js.map +1 -1
- package/dist/plugins/types.d.ts +3 -0
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/runtime/client.d.ts +31 -4
- package/dist/runtime/client.d.ts.map +1 -1
- package/dist/runtime/client.js +131 -6
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/driver.d.ts +2 -0
- package/dist/runtime/driver.d.ts.map +1 -1
- package/dist/runtime/driver.js +12 -0
- package/dist/runtime/driver.js.map +1 -1
- package/dist/runtime/error-hints.d.ts.map +1 -1
- package/dist/runtime/error-hints.js +37 -10
- package/dist/runtime/error-hints.js.map +1 -1
- package/dist/runtime/executor.d.ts +1 -0
- package/dist/runtime/executor.d.ts.map +1 -1
- package/dist/runtime/executor.js +7 -1
- package/dist/runtime/executor.js.map +1 -1
- package/dist/runtime/mariadb-driver.d.ts +25 -0
- package/dist/runtime/mariadb-driver.d.ts.map +1 -0
- package/dist/runtime/mariadb-driver.js +103 -0
- package/dist/runtime/mariadb-driver.js.map +1 -0
- package/dist/runtime/mysql-driver.d.ts +25 -0
- package/dist/runtime/mysql-driver.d.ts.map +1 -0
- package/dist/runtime/mysql-driver.js +101 -0
- package/dist/runtime/mysql-driver.js.map +1 -0
- package/dist/runtime/mysql-error.d.ts +15 -0
- package/dist/runtime/mysql-error.d.ts.map +1 -0
- package/dist/runtime/mysql-error.js +119 -0
- package/dist/runtime/mysql-error.js.map +1 -0
- package/dist/runtime/mysql-family-pool.d.ts +50 -0
- package/dist/runtime/mysql-family-pool.d.ts.map +1 -0
- package/dist/runtime/mysql-family-pool.js +52 -0
- package/dist/runtime/mysql-family-pool.js.map +1 -0
- package/dist/runtime/mysql-family-pool.test.d.ts +2 -0
- package/dist/runtime/mysql-family-pool.test.d.ts.map +1 -0
- package/dist/runtime/mysql-family-pool.test.js +169 -0
- package/dist/runtime/mysql-family-pool.test.js.map +1 -0
- package/dist/runtime/mysql-placeholders.d.ts +18 -0
- package/dist/runtime/mysql-placeholders.d.ts.map +1 -0
- package/dist/runtime/mysql-placeholders.js +133 -0
- package/dist/runtime/mysql-placeholders.js.map +1 -0
- package/dist/runtime/mysql-placeholders.test.d.ts +2 -0
- package/dist/runtime/mysql-placeholders.test.d.ts.map +1 -0
- package/dist/runtime/mysql-placeholders.test.js +33 -0
- package/dist/runtime/mysql-placeholders.test.js.map +1 -0
- package/dist/runtime/query/aggregate.d.ts.map +1 -1
- package/dist/runtime/query/aggregate.js +3 -3
- package/dist/runtime/query/aggregate.js.map +1 -1
- package/dist/runtime/query/compile-aggregate.d.ts +1 -1
- package/dist/runtime/query/compile-aggregate.d.ts.map +1 -1
- package/dist/runtime/query/compile-aggregate.js +33 -28
- package/dist/runtime/query/compile-aggregate.js.map +1 -1
- package/dist/runtime/query/compile-where.d.ts +9 -9
- package/dist/runtime/query/compile-where.d.ts.map +1 -1
- package/dist/runtime/query/compile-where.js +108 -76
- package/dist/runtime/query/compile-where.js.map +1 -1
- package/dist/runtime/query/compile-write.d.ts +9 -9
- package/dist/runtime/query/compile-write.d.ts.map +1 -1
- package/dist/runtime/query/compile-write.js +77 -63
- package/dist/runtime/query/compile-write.js.map +1 -1
- package/dist/runtime/query/count.d.ts.map +1 -1
- package/dist/runtime/query/count.js +4 -1
- package/dist/runtime/query/count.js.map +1 -1
- package/dist/runtime/query/create.d.ts.map +1 -1
- package/dist/runtime/query/create.js +38 -12
- package/dist/runtime/query/create.js.map +1 -1
- package/dist/runtime/query/cursor.d.ts +1 -1
- package/dist/runtime/query/cursor.d.ts.map +1 -1
- package/dist/runtime/query/cursor.js +6 -7
- package/dist/runtime/query/cursor.js.map +1 -1
- package/dist/runtime/query/delete.d.ts.map +1 -1
- package/dist/runtime/query/delete.js +41 -15
- package/dist/runtime/query/delete.js.map +1 -1
- package/dist/runtime/query/execute.d.ts +1 -0
- package/dist/runtime/query/execute.d.ts.map +1 -1
- package/dist/runtime/query/execute.js +23 -8
- package/dist/runtime/query/execute.js.map +1 -1
- package/dist/runtime/query/find-or-create.d.ts +1 -1
- package/dist/runtime/query/find-or-create.d.ts.map +1 -1
- package/dist/runtime/query/find-or-create.js +16 -8
- package/dist/runtime/query/find-or-create.js.map +1 -1
- package/dist/runtime/query/find.d.ts +2 -0
- package/dist/runtime/query/find.d.ts.map +1 -1
- package/dist/runtime/query/find.js +116 -68
- package/dist/runtime/query/find.js.map +1 -1
- package/dist/runtime/query/group-by.d.ts.map +1 -1
- package/dist/runtime/query/group-by.js.map +1 -1
- package/dist/runtime/query/mutation-returning.d.ts +10 -0
- package/dist/runtime/query/mutation-returning.d.ts.map +1 -0
- package/dist/runtime/query/mutation-returning.js +85 -0
- package/dist/runtime/query/mutation-returning.js.map +1 -0
- package/dist/runtime/query/paginate.d.ts.map +1 -1
- package/dist/runtime/query/paginate.js +3 -3
- package/dist/runtime/query/paginate.js.map +1 -1
- package/dist/runtime/query/projection.d.ts.map +1 -1
- package/dist/runtime/query/projection.js +1 -1
- package/dist/runtime/query/projection.js.map +1 -1
- package/dist/runtime/query/relation-join.d.ts +5 -0
- package/dist/runtime/query/relation-join.d.ts.map +1 -0
- package/dist/runtime/query/relation-join.js +26 -0
- package/dist/runtime/query/relation-join.js.map +1 -0
- package/dist/runtime/query/relation-planner.d.ts +1 -1
- package/dist/runtime/query/relation-planner.d.ts.map +1 -1
- package/dist/runtime/query/relation-planner.js +72 -58
- package/dist/runtime/query/relation-planner.js.map +1 -1
- package/dist/runtime/query/relation-writes.d.ts +2 -2
- package/dist/runtime/query/relation-writes.d.ts.map +1 -1
- package/dist/runtime/query/relation-writes.js +272 -116
- package/dist/runtime/query/relation-writes.js.map +1 -1
- package/dist/runtime/query/table-index.d.ts +1 -1
- package/dist/runtime/query/table-index.d.ts.map +1 -1
- package/dist/runtime/query/table-index.js +17 -10
- package/dist/runtime/query/table-index.js.map +1 -1
- package/dist/runtime/query/unique.d.ts +3 -0
- package/dist/runtime/query/unique.d.ts.map +1 -1
- package/dist/runtime/query/unique.js +26 -6
- package/dist/runtime/query/unique.js.map +1 -1
- package/dist/runtime/query/unique.test.js +110 -7
- package/dist/runtime/query/unique.test.js.map +1 -1
- package/dist/runtime/query/update.d.ts.map +1 -1
- package/dist/runtime/query/update.js +89 -23
- package/dist/runtime/query/update.js.map +1 -1
- package/dist/runtime/query/updated-at.js +2 -2
- package/dist/runtime/query/updated-at.js.map +1 -1
- package/dist/runtime/query/upsert.d.ts.map +1 -1
- package/dist/runtime/query/upsert.js +29 -5
- package/dist/runtime/query/upsert.js.map +1 -1
- package/dist/runtime/sqlite-open.js +1 -1
- package/dist/runtime/sqlite-open.js.map +1 -1
- package/dist/runtime/transaction.d.ts +1 -0
- package/dist/runtime/transaction.d.ts.map +1 -1
- package/dist/runtime/transaction.js +8 -0
- package/dist/runtime/transaction.js.map +1 -1
- package/dist/runtime/types.d.ts +10 -2
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/schema/column-constraints.d.ts +26 -0
- package/dist/schema/column-constraints.d.ts.map +1 -0
- package/dist/schema/column-constraints.js +143 -0
- package/dist/schema/column-constraints.js.map +1 -0
- package/dist/schema/column.d.ts +92 -3
- package/dist/schema/column.d.ts.map +1 -1
- package/dist/schema/column.js +17 -11
- package/dist/schema/column.js.map +1 -1
- package/dist/schema/index.d.ts +9 -6
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +8 -2
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/json-column.d.ts +9 -0
- package/dist/schema/json-column.d.ts.map +1 -0
- package/dist/schema/json-column.js +11 -0
- package/dist/schema/json-column.js.map +1 -0
- package/dist/schema/many-to-many.d.ts +1 -1
- package/dist/schema/many-to-many.d.ts.map +1 -1
- package/dist/schema/nested-relation-types.d.ts +10 -9
- package/dist/schema/nested-relation-types.d.ts.map +1 -1
- package/dist/schema/relation-types.d.ts +80 -19
- package/dist/schema/relation-types.d.ts.map +1 -1
- package/dist/schema/relation.d.ts +11 -1
- package/dist/schema/relation.d.ts.map +1 -1
- package/dist/schema/relation.js +6 -0
- package/dist/schema/relation.js.map +1 -1
- package/dist/schema/table.d.ts +74 -11
- package/dist/schema/table.d.ts.map +1 -1
- package/dist/schema/table.js +93 -7
- package/dist/schema/table.js.map +1 -1
- package/dist/schema/types.d.ts +7 -6
- package/dist/schema/types.d.ts.map +1 -1
- package/dist/sql/builder.d.ts +13 -3
- package/dist/sql/builder.d.ts.map +1 -1
- package/dist/sql/builder.js +155 -5
- package/dist/sql/builder.js.map +1 -1
- package/dist/sql/index.d.ts +1 -0
- package/dist/sql/index.d.ts.map +1 -1
- package/dist/sql/index.js.map +1 -1
- package/dist/sql/qualify-tables.d.ts +15 -0
- package/dist/sql/qualify-tables.d.ts.map +1 -0
- package/dist/sql/qualify-tables.js +206 -0
- package/dist/sql/qualify-tables.js.map +1 -0
- package/dist/sql/template.d.ts +5 -0
- package/dist/sql/template.d.ts.map +1 -1
- package/dist/sql/template.js +23 -3
- package/dist/sql/template.js.map +1 -1
- package/dist/utils/load-ts.d.ts +2 -1
- package/dist/utils/load-ts.d.ts.map +1 -1
- package/dist/utils/load-ts.js +13 -1
- package/dist/utils/load-ts.js.map +1 -1
- package/docs/cli.md +4 -4
- package/docs/configuration.md +12 -5
- package/docs/elysia.md +131 -0
- package/docs/errors.md +1 -1
- package/docs/examples.md +4 -2
- package/docs/getting-started.md +28 -2
- package/docs/mariadb.md +149 -0
- package/docs/migrations.md +5 -3
- package/docs/mysql.md +134 -0
- package/docs/plugins.md +2 -0
- package/docs/queries.md +14 -11
- package/docs/relations.md +19 -4
- package/docs/schema.md +100 -9
- package/docs/sqlite.md +14 -2
- package/docs/typebox.md +139 -0
- package/docs/zod.md +128 -0
- package/package.json +33 -3
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { mkdir, open, readFile, stat, unlink } from "node:fs/promises";
|
|
3
|
+
import { join } from "node:path";
|
|
4
|
+
const DEFAULT_TIMEOUT_MS = 30_000;
|
|
5
|
+
const DEFAULT_POLL_INTERVAL_MS = 100;
|
|
6
|
+
const DEFAULT_STALE_MS = 60_000;
|
|
7
|
+
export const MIGRATE_DEV_LOCK_FILENAME = ".neoorm-migrate-dev.lock";
|
|
8
|
+
function errorCode(error) {
|
|
9
|
+
if (typeof error === "object" && error !== null && "code" in error) {
|
|
10
|
+
const entry = error;
|
|
11
|
+
return typeof entry.code === "string" ? entry.code : undefined;
|
|
12
|
+
}
|
|
13
|
+
return undefined;
|
|
14
|
+
}
|
|
15
|
+
function isNotFoundError(error) {
|
|
16
|
+
return errorCode(error) === "ENOENT";
|
|
17
|
+
}
|
|
18
|
+
async function delay(ms) {
|
|
19
|
+
await new Promise((resolve) => setTimeout(resolve, ms));
|
|
20
|
+
}
|
|
21
|
+
async function readHolderDesc(lockPath) {
|
|
22
|
+
try {
|
|
23
|
+
return (await readFile(lockPath, "utf-8")).trim() || "unknown";
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return "unknown";
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Acquire an exclusive file lock for `neoorm migrate dev` in `outDir`.
|
|
31
|
+
*
|
|
32
|
+
* Mutual exclusion comes from atomic exclusive-create (`O_EXCL` via `"wx"`).
|
|
33
|
+
* The lock file is never written with a truncating write, so concurrent
|
|
34
|
+
* acquirers cannot interleave content — exactly one creator wins.
|
|
35
|
+
*/
|
|
36
|
+
export async function acquireMigrateDevLock(outDir, options = {}) {
|
|
37
|
+
const timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
38
|
+
const pollIntervalMs = options.pollIntervalMs ?? DEFAULT_POLL_INTERVAL_MS;
|
|
39
|
+
const staleMs = options.staleMs ?? DEFAULT_STALE_MS;
|
|
40
|
+
const lockPath = join(outDir, MIGRATE_DEV_LOCK_FILENAME);
|
|
41
|
+
const token = randomUUID();
|
|
42
|
+
const content = `${process.pid}:${token}:${Date.now()}`;
|
|
43
|
+
const start = Date.now();
|
|
44
|
+
await mkdir(outDir, { recursive: true });
|
|
45
|
+
while (true) {
|
|
46
|
+
try {
|
|
47
|
+
const fh = await open(lockPath, "wx");
|
|
48
|
+
await fh.writeFile(content, "utf-8");
|
|
49
|
+
await fh.close();
|
|
50
|
+
let released = false;
|
|
51
|
+
return async () => {
|
|
52
|
+
if (released)
|
|
53
|
+
return;
|
|
54
|
+
released = true;
|
|
55
|
+
try {
|
|
56
|
+
const current = await readFile(lockPath, "utf-8");
|
|
57
|
+
if (!current.includes(token))
|
|
58
|
+
return;
|
|
59
|
+
await unlink(lockPath);
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
if (!isNotFoundError(error))
|
|
63
|
+
throw error;
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
if (errorCode(error) !== "EEXIST")
|
|
69
|
+
throw error;
|
|
70
|
+
}
|
|
71
|
+
// Lock exists: check staleness, else wait or time out.
|
|
72
|
+
let holderDesc = "unknown";
|
|
73
|
+
try {
|
|
74
|
+
const fileStat = await stat(lockPath);
|
|
75
|
+
const ageMs = Date.now() - fileStat.mtimeMs;
|
|
76
|
+
if (ageMs > staleMs) {
|
|
77
|
+
try {
|
|
78
|
+
await unlink(lockPath);
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
if (!isNotFoundError(error))
|
|
82
|
+
throw error;
|
|
83
|
+
}
|
|
84
|
+
continue;
|
|
85
|
+
}
|
|
86
|
+
// Negative age (clock skew) or unreadable content: treat as fresh.
|
|
87
|
+
if (ageMs >= 0)
|
|
88
|
+
holderDesc = await readHolderDesc(lockPath);
|
|
89
|
+
}
|
|
90
|
+
catch (error) {
|
|
91
|
+
if (isNotFoundError(error))
|
|
92
|
+
continue;
|
|
93
|
+
holderDesc = await readHolderDesc(lockPath);
|
|
94
|
+
}
|
|
95
|
+
if (Date.now() - start > timeoutMs) {
|
|
96
|
+
throw new Error(`Another \`neoorm migrate dev\` is running in ${outDir} (lock: ${lockPath}, holder: ${holderDesc}, waited ${timeoutMs}ms). Wait for it to finish and re-run.`);
|
|
97
|
+
}
|
|
98
|
+
await delay(pollIntervalMs);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=dev-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dev-lock.js","sourceRoot":"","sources":["../../src/migrate/dev-lock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/migrate/runner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAQnE,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/migrate/runner.ts"],"names":[],"mappings":"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"}
|
package/dist/migrate/runner.js
CHANGED
|
@@ -4,6 +4,7 @@ import { dirname, join } from "node:path";
|
|
|
4
4
|
import { diffManifest, formatDestructiveWarnings, resolveMigrationSql, } from "../codegen/diff-manifest.js";
|
|
5
5
|
import { compileSchemaToManifest, writeSnapshot } from "../codegen/generate.js";
|
|
6
6
|
import { applySchemaToManifest, DEFAULT_PG_SCHEMA, quoteQualifiedIdentifier, resolvePgSchemaName, } from "../dialect/postgres.js";
|
|
7
|
+
import { introspectMysqlToManifest } from "../introspect/mysql/to-manifest.js";
|
|
7
8
|
import { introspectSqliteToManifest } from "../introspect/sqlite/to-manifest.js";
|
|
8
9
|
import { introspectToManifest } from "../introspect/to-manifest.js";
|
|
9
10
|
import { schemaError } from "../runtime/error-builders.js";
|
|
@@ -23,28 +24,54 @@ function pgMigrateAdvisoryLockKeys(schema) {
|
|
|
23
24
|
return [PG_MIGRATE_LOCK_CLASSID, digest.readInt32BE(0)];
|
|
24
25
|
}
|
|
25
26
|
function migrationsTableRef(dialect, schema) {
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
switch (dialect.name) {
|
|
28
|
+
case "sqlite":
|
|
29
|
+
case "mysql":
|
|
30
|
+
case "mariadb":
|
|
31
|
+
return dialect.quoteIdentifier(MIGRATIONS_TABLE);
|
|
32
|
+
case "postgresql": {
|
|
33
|
+
const schemaName = resolvePgSchemaName(schema);
|
|
34
|
+
return schemaName === DEFAULT_PG_SCHEMA
|
|
35
|
+
? dialect.quoteIdentifier(MIGRATIONS_TABLE)
|
|
36
|
+
: quoteQualifiedIdentifier(schemaName, MIGRATIONS_TABLE);
|
|
37
|
+
}
|
|
38
|
+
default: {
|
|
39
|
+
const _never = dialect.name;
|
|
40
|
+
return _never;
|
|
41
|
+
}
|
|
28
42
|
}
|
|
29
|
-
const schemaName = resolvePgSchemaName(schema);
|
|
30
|
-
return schemaName === DEFAULT_PG_SCHEMA
|
|
31
|
-
? dialect.quoteIdentifier(MIGRATIONS_TABLE)
|
|
32
|
-
: quoteQualifiedIdentifier(schemaName, MIGRATIONS_TABLE);
|
|
33
43
|
}
|
|
34
44
|
async function migrationsLedgerHasChecksumColumn(client, dialect, schema) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
switch (dialect.name) {
|
|
46
|
+
case "sqlite": {
|
|
47
|
+
const result = await client.query(`PRAGMA table_info(${dialect.quoteIdentifier(MIGRATIONS_TABLE)})`);
|
|
48
|
+
return result.rows.some((row) => row.name === "checksum");
|
|
49
|
+
}
|
|
50
|
+
case "mysql":
|
|
51
|
+
case "mariadb": {
|
|
52
|
+
const result = await client.query(`SELECT COUNT(*) AS exists
|
|
53
|
+
FROM information_schema.COLUMNS
|
|
54
|
+
WHERE TABLE_SCHEMA = DATABASE()
|
|
55
|
+
AND TABLE_NAME = $1
|
|
56
|
+
AND COLUMN_NAME = 'checksum'`, [MIGRATIONS_TABLE]);
|
|
57
|
+
return Number(result.rows[0]?.exists ?? 0) > 0;
|
|
58
|
+
}
|
|
59
|
+
case "postgresql": {
|
|
60
|
+
const schemaName = resolvePgSchemaName(schema);
|
|
61
|
+
const result = await client.query(`SELECT EXISTS (
|
|
62
|
+
SELECT 1
|
|
63
|
+
FROM information_schema.columns
|
|
64
|
+
WHERE table_schema = $1
|
|
65
|
+
AND table_name = $2
|
|
66
|
+
AND column_name = 'checksum'
|
|
67
|
+
) AS exists`, [schemaName, MIGRATIONS_TABLE]);
|
|
68
|
+
return result.rows[0]?.exists === true;
|
|
69
|
+
}
|
|
70
|
+
default: {
|
|
71
|
+
const _never = dialect.name;
|
|
72
|
+
return _never;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
48
75
|
}
|
|
49
76
|
async function ensureMigrationsChecksumColumn(client, dialect, schema) {
|
|
50
77
|
if (await migrationsLedgerHasChecksumColumn(client, dialect, schema)) {
|
|
@@ -64,21 +91,44 @@ async function withSqliteForeignKeysOff(client, fn) {
|
|
|
64
91
|
}
|
|
65
92
|
}
|
|
66
93
|
async function withMigrateDeployLock(client, dialect, schema, fn) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
94
|
+
switch (dialect.name) {
|
|
95
|
+
case "sqlite":
|
|
96
|
+
// PRAGMA foreign_keys is a no-op inside a transaction. Disable
|
|
97
|
+
// before BEGIN IMMEDIATE so table rebuilds can DROP a parent.
|
|
98
|
+
return withSqliteForeignKeysOff(client, () => client.transaction(fn, { isolationLevel: "Serializable" }));
|
|
99
|
+
case "mysql":
|
|
100
|
+
case "mariadb":
|
|
101
|
+
return withMysqlDeployLock(client, fn);
|
|
102
|
+
case "postgresql":
|
|
103
|
+
// Session-level pg_advisory_lock on pool.query would bind a random
|
|
104
|
+
// connection. An xact lock on the deploy transaction stays on that
|
|
105
|
+
// backend until COMMIT, so a second deploy cannot apply the same files.
|
|
106
|
+
return client.transaction(async (tx) => {
|
|
107
|
+
const [classid, objid] = pgMigrateAdvisoryLockKeys(schema);
|
|
108
|
+
await tx.query("SELECT pg_advisory_xact_lock($1, $2)", [
|
|
109
|
+
classid,
|
|
110
|
+
objid,
|
|
111
|
+
]);
|
|
112
|
+
return fn(tx);
|
|
113
|
+
});
|
|
114
|
+
default: {
|
|
115
|
+
const _never = dialect.name;
|
|
116
|
+
return _never;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
async function withMysqlDeployLock(client, fn) {
|
|
75
121
|
return client.transaction(async (tx) => {
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
122
|
+
const dbResult = await tx.query("SELECT DATABASE() AS db");
|
|
123
|
+
const dbName = dbResult.rows[0]?.db ?? "neoorm";
|
|
124
|
+
const lockName = `neoorm.migrate.${dbName}`.slice(0, 64);
|
|
125
|
+
await tx.query("SELECT GET_LOCK($1, $2)", [lockName, 30]);
|
|
126
|
+
try {
|
|
127
|
+
return await fn(tx);
|
|
128
|
+
}
|
|
129
|
+
finally {
|
|
130
|
+
await tx.query("SELECT RELEASE_LOCK($1)", [lockName]);
|
|
131
|
+
}
|
|
82
132
|
});
|
|
83
133
|
}
|
|
84
134
|
async function verifyAppliedMigrationChecksums(client, dialect, migrationsDir, schema, applied) {
|
|
@@ -205,22 +255,52 @@ export function formatMigrateStatus(status, migrationsDir) {
|
|
|
205
255
|
return lines;
|
|
206
256
|
}
|
|
207
257
|
export async function resetDatabaseSchema(client, dialect, schema) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
258
|
+
switch (dialect.name) {
|
|
259
|
+
case "sqlite": {
|
|
260
|
+
const result = await client.query(`SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%'`);
|
|
261
|
+
for (const row of result.rows) {
|
|
262
|
+
await client.query(`DROP TABLE IF EXISTS ${dialect.quoteIdentifier(row.name)}`);
|
|
263
|
+
}
|
|
264
|
+
return;
|
|
212
265
|
}
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
266
|
+
case "mysql":
|
|
267
|
+
case "mariadb": {
|
|
268
|
+
// Session vars must run on one connection; pool.query may use a
|
|
269
|
+
// different connection per statement.
|
|
270
|
+
await client.transaction(async (tx) => {
|
|
271
|
+
await tx.query("SET FOREIGN_KEY_CHECKS=0");
|
|
272
|
+
try {
|
|
273
|
+
const result = await tx.query(`SELECT TABLE_NAME AS table_name
|
|
274
|
+
FROM information_schema.TABLES
|
|
275
|
+
WHERE TABLE_SCHEMA = DATABASE()
|
|
276
|
+
AND TABLE_TYPE = 'BASE TABLE'`);
|
|
277
|
+
for (const row of result.rows) {
|
|
278
|
+
await tx.query(`DROP TABLE IF EXISTS ${dialect.quoteIdentifier(row.table_name)}`);
|
|
279
|
+
}
|
|
280
|
+
}
|
|
281
|
+
finally {
|
|
282
|
+
await tx.query("SET FOREIGN_KEY_CHECKS=1");
|
|
283
|
+
}
|
|
284
|
+
});
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
287
|
+
case "postgresql": {
|
|
288
|
+
const schemaName = resolvePgSchemaName(schema);
|
|
289
|
+
const schemaSql = dialect.quoteIdentifier(schemaName);
|
|
290
|
+
await client.query(`
|
|
218
291
|
DROP SCHEMA ${schemaSql} CASCADE;
|
|
219
292
|
CREATE SCHEMA ${schemaSql};
|
|
220
293
|
`);
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
296
|
+
default: {
|
|
297
|
+
const _never = dialect.name;
|
|
298
|
+
return _never;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
221
301
|
}
|
|
222
302
|
export async function migrateReset(client, dialect, migrationsDir, options) {
|
|
223
|
-
if (dialect.name
|
|
303
|
+
if (dialect.name !== "postgresql") {
|
|
224
304
|
if (!options.force) {
|
|
225
305
|
throw schemaError(SchemaErrorCode.migration_guard, "migrate reset requires --force. This drops all tables and data.");
|
|
226
306
|
}
|
|
@@ -379,14 +459,26 @@ export async function migrateDown(client, dialect, migrationsDir, options) {
|
|
|
379
459
|
export async function dbPush(client, dialect, target, options = {}) {
|
|
380
460
|
let live;
|
|
381
461
|
let qualifiedTarget;
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
462
|
+
switch (dialect.name) {
|
|
463
|
+
case "sqlite":
|
|
464
|
+
live = await introspectSqliteToManifest(client);
|
|
465
|
+
qualifiedTarget = target;
|
|
466
|
+
break;
|
|
467
|
+
case "mysql":
|
|
468
|
+
case "mariadb":
|
|
469
|
+
live = await introspectMysqlToManifest(client);
|
|
470
|
+
qualifiedTarget = target;
|
|
471
|
+
break;
|
|
472
|
+
case "postgresql": {
|
|
473
|
+
const schemaName = resolvePgSchemaName(options.schema);
|
|
474
|
+
live = applySchemaToManifest(await introspectToManifest(client, { schema: schemaName }), schemaName);
|
|
475
|
+
qualifiedTarget = applySchemaToManifest(target, schemaName);
|
|
476
|
+
break;
|
|
477
|
+
}
|
|
478
|
+
default: {
|
|
479
|
+
const _never = dialect.name;
|
|
480
|
+
return _never;
|
|
481
|
+
}
|
|
390
482
|
}
|
|
391
483
|
const manifestDiff = diffManifest(live, qualifiedTarget, dialect);
|
|
392
484
|
const { sql, blocked } = resolveMigrationSql(manifestDiff, live, qualifiedTarget, options.acceptDataLoss ?? false, dialect);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/migrate/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/migrate/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ValidationType } from "../codegen/validation/types.js";
|
|
2
|
+
import type { ColumnBuilder, ColumnMeta, NumericColumnBuilder, TextColumnBuilder, TimestampColumnBuilder } from "../schema/column.js";
|
|
3
|
+
import { type JsonColumnBuilder } from "../schema/json-column.js";
|
|
2
4
|
import type { NeoOrmPlugin } from "./types.js";
|
|
3
5
|
export type UuidOptions = {
|
|
4
6
|
/** UUID version. @default 7 */
|
|
@@ -13,6 +15,10 @@ export type DecimalOptions = {
|
|
|
13
15
|
export type EnumTypeOptions = {
|
|
14
16
|
name?: string;
|
|
15
17
|
};
|
|
18
|
+
/** Options for {@link text}. */
|
|
19
|
+
export type TextOptions = {
|
|
20
|
+
maxLength?: number;
|
|
21
|
+
};
|
|
16
22
|
export declare const builtinPlugin: NeoOrmPlugin;
|
|
17
23
|
export declare const citextPlugin: NeoOrmPlugin;
|
|
18
24
|
type IdColumnMeta = {
|
|
@@ -24,16 +30,16 @@ type IdColumnMeta = {
|
|
|
24
30
|
};
|
|
25
31
|
/** App-generated `{prefix}_{uuid}` primary key (`TEXT`). */
|
|
26
32
|
export declare function id(): ColumnBuilder<string, IdColumnMeta>;
|
|
27
|
-
/** `TEXT` column. */
|
|
28
|
-
export declare function text():
|
|
33
|
+
/** `TEXT` column. Pass `{ maxLength: n }` for `VARCHAR(n)` on Postgres. */
|
|
34
|
+
export declare function text(options?: TextOptions): TextColumnBuilder<string | null>;
|
|
29
35
|
/** `BOOLEAN` column. */
|
|
30
36
|
export declare function bool(): ColumnBuilder<boolean | null>;
|
|
31
37
|
/** `INTEGER` column. */
|
|
32
|
-
export declare function int():
|
|
38
|
+
export declare function int(): NumericColumnBuilder<number | null, ColumnMeta & {
|
|
33
39
|
kind: "int";
|
|
34
40
|
}>;
|
|
35
41
|
/** `BIGINT` column (stored as `TEXT` on SQLite). */
|
|
36
|
-
export declare function bigint():
|
|
42
|
+
export declare function bigint(): NumericColumnBuilder<bigint | null, ColumnMeta & {
|
|
37
43
|
kind: "bigint";
|
|
38
44
|
}>;
|
|
39
45
|
/** `TIMESTAMPTZ` column with `defaultNow` / `updatedAt` support. */
|
|
@@ -44,12 +50,12 @@ export declare function timestamp(): TimestampColumnBuilder<Date | null>;
|
|
|
44
50
|
* @param options - UUID generation version.
|
|
45
51
|
*/
|
|
46
52
|
export declare function uuid(options?: UuidOptions): ColumnBuilder<string | null>;
|
|
47
|
-
/** `JSON` column. */
|
|
48
|
-
export declare function json<T = unknown
|
|
49
|
-
/** `JSONB` column (PostgreSQL; `JSON` on SQLite). */
|
|
50
|
-
export declare function jsonb<T = unknown
|
|
53
|
+
/** `JSON` column. Default Zod shape matches `Record<string, unknown>`. */
|
|
54
|
+
export declare function json<T = Record<string, unknown>>(validation?: ValidationType): JsonColumnBuilder<T | null>;
|
|
55
|
+
/** `JSONB` column (PostgreSQL; `JSON` on SQLite). Default Zod shape matches `Record<string, unknown>`. */
|
|
56
|
+
export declare function jsonb<T = Record<string, unknown>>(validation?: ValidationType): JsonColumnBuilder<T | null>;
|
|
51
57
|
/** `NUMERIC` column — use string values to avoid float loss. */
|
|
52
|
-
export declare function decimal(options?: DecimalOptions):
|
|
58
|
+
export declare function decimal(options?: DecimalOptions): NumericColumnBuilder<string | null, ColumnMeta & {
|
|
53
59
|
kind: "decimal";
|
|
54
60
|
}>;
|
|
55
61
|
/** Alias for {@link decimal}. */
|
|
@@ -57,7 +63,7 @@ export declare function numeric(options?: DecimalOptions): ColumnBuilder<string
|
|
|
57
63
|
kind: "decimal";
|
|
58
64
|
}>;
|
|
59
65
|
/** Auto-increment integer identity column. */
|
|
60
|
-
export declare function serial():
|
|
66
|
+
export declare function serial(): NumericColumnBuilder<number, ColumnMeta & {
|
|
61
67
|
kind: "serial";
|
|
62
68
|
nullable: false;
|
|
63
69
|
}>;
|
|
@@ -69,7 +75,51 @@ export declare function bytea(): ColumnBuilder<Buffer | null>;
|
|
|
69
75
|
export declare function textArray(): ColumnBuilder<string[] | null>;
|
|
70
76
|
/** `INTEGER[]` array column. */
|
|
71
77
|
export declare function intArray(): ColumnBuilder<number[] | null>;
|
|
78
|
+
/** `REAL` / `float4` column. Maps to `FLOAT` on MySQL. Prisma `Float` is {@link double}. */
|
|
79
|
+
export declare function real(): NumericColumnBuilder<number | null, ColumnMeta & {
|
|
80
|
+
kind: "real";
|
|
81
|
+
}>;
|
|
82
|
+
/** Alias for {@link real}. */
|
|
83
|
+
export declare function float(): NumericColumnBuilder<number | null, ColumnMeta & {
|
|
84
|
+
kind: "real";
|
|
85
|
+
}>;
|
|
86
|
+
/** `DOUBLE PRECISION` / `float8` column. Maps to `DOUBLE` on MySQL. Closest to Prisma `Float`. */
|
|
87
|
+
export declare function double(): NumericColumnBuilder<number | null, ColumnMeta & {
|
|
88
|
+
kind: "double";
|
|
89
|
+
}>;
|
|
90
|
+
/** `DATE` column (`YYYY-MM-DD` string, not `Date`). */
|
|
91
|
+
export declare function date(): ColumnBuilder<string | null>;
|
|
92
|
+
/** `TIME` column (string). */
|
|
93
|
+
export declare function time(): ColumnBuilder<string | null>;
|
|
94
|
+
/** `INTERVAL` column (string). PostgreSQL native; SQLite `TEXT`; rejected on MySQL/MariaDB. */
|
|
95
|
+
export declare function interval(): ColumnBuilder<string | null>;
|
|
96
|
+
/** `INET` column (string). PostgreSQL native; SQLite `TEXT`; rejected on MySQL/MariaDB. */
|
|
97
|
+
export declare function inet(): ColumnBuilder<string | null>;
|
|
98
|
+
/** `CIDR` column (string). PostgreSQL native; SQLite `TEXT`; rejected on MySQL/MariaDB. */
|
|
99
|
+
export declare function cidr(): ColumnBuilder<string | null>;
|
|
100
|
+
/** `XML` column. Maps to `LONGTEXT` on MySQL and `TEXT` on SQLite. */
|
|
101
|
+
export declare function xml(): ColumnBuilder<string | null>;
|
|
102
|
+
/** `MONEY` column (string). Maps to `DECIMAL(19,4)` on MySQL and `TEXT` on SQLite. */
|
|
103
|
+
export declare function money(): ColumnBuilder<string | null>;
|
|
104
|
+
/** PostgreSQL `int4range` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
105
|
+
export declare function int4Range(): ColumnBuilder<string | null>;
|
|
106
|
+
/** PostgreSQL `int8range` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
107
|
+
export declare function int8Range(): ColumnBuilder<string | null>;
|
|
108
|
+
/** PostgreSQL `numrange` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
109
|
+
export declare function numRange(): ColumnBuilder<string | null>;
|
|
110
|
+
/** PostgreSQL `tsrange` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
111
|
+
export declare function tsRange(): ColumnBuilder<string | null>;
|
|
112
|
+
/** PostgreSQL `tstzrange` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
113
|
+
export declare function tstzRange(): ColumnBuilder<string | null>;
|
|
114
|
+
/** PostgreSQL `daterange` (string). Rejected on SQLite and MySQL/MariaDB. */
|
|
115
|
+
export declare function dateRange(): ColumnBuilder<string | null>;
|
|
116
|
+
/** `UUID[]` array column. JSON on SQLite/MySQL. */
|
|
117
|
+
export declare function uuidArray(): ColumnBuilder<string[] | null>;
|
|
118
|
+
/** Enum array column. Native `name[]` or `TEXT[]` on Postgres; JSON on SQLite/MySQL. */
|
|
119
|
+
export declare function enumArray<const T extends readonly [string, ...string[]]>(values: T, options?: EnumTypeOptions): ColumnBuilder<T[number][] | null>;
|
|
72
120
|
/** `CITEXT` case-insensitive text (requires `citext` extension). */
|
|
73
|
-
export declare function citext():
|
|
121
|
+
export declare function citext(): TextColumnBuilder<string | null, ColumnMeta & {
|
|
122
|
+
kind: "citext";
|
|
123
|
+
}>;
|
|
74
124
|
export {};
|
|
75
125
|
//# sourceMappingURL=builtin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtin.d.ts","sourceRoot":"","sources":["../../src/plugins/builtin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"builtin.d.ts","sourceRoot":"","sources":["../../src/plugins/builtin.ts"],"names":[],"mappings":"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"}
|