drizzle-orm 0.43.0 → 0.43.1-47c6ad4
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/mssql-core/alias.cjs +32 -0
- package/mssql-core/alias.cjs.map +1 -0
- package/mssql-core/alias.d.cts +4 -0
- package/mssql-core/alias.d.ts +4 -0
- package/mssql-core/alias.js +8 -0
- package/mssql-core/alias.js.map +1 -0
- package/mssql-core/checks.cjs +58 -0
- package/mssql-core/checks.cjs.map +1 -0
- package/mssql-core/checks.d.cts +18 -0
- package/mssql-core/checks.d.ts +18 -0
- package/mssql-core/checks.js +32 -0
- package/mssql-core/checks.js.map +1 -0
- package/mssql-core/columns/all.cjs +72 -0
- package/mssql-core/columns/all.cjs.map +1 -0
- package/mssql-core/columns/all.d.cts +43 -0
- package/mssql-core/columns/all.d.ts +43 -0
- package/mssql-core/columns/all.js +48 -0
- package/mssql-core/columns/all.js.map +1 -0
- package/mssql-core/columns/bigint.cjs +67 -0
- package/mssql-core/columns/bigint.cjs.map +1 -0
- package/mssql-core/columns/bigint.d.cts +33 -0
- package/mssql-core/columns/bigint.d.ts +33 -0
- package/mssql-core/columns/bigint.js +41 -0
- package/mssql-core/columns/bigint.js.map +1 -0
- package/mssql-core/columns/binary.cjs +57 -0
- package/mssql-core/columns/binary.cjs.map +1 -0
- package/mssql-core/columns/binary.d.cts +28 -0
- package/mssql-core/columns/binary.d.ts +28 -0
- package/mssql-core/columns/binary.js +31 -0
- package/mssql-core/columns/binary.js.map +1 -0
- package/mssql-core/columns/bit.cjs +54 -0
- package/mssql-core/columns/bit.cjs.map +1 -0
- package/mssql-core/columns/bit.d.cts +24 -0
- package/mssql-core/columns/bit.d.ts +24 -0
- package/mssql-core/columns/bit.js +28 -0
- package/mssql-core/columns/bit.js.map +1 -0
- package/mssql-core/columns/char.cjs +74 -0
- package/mssql-core/columns/char.cjs.map +1 -0
- package/mssql-core/columns/char.d.cts +37 -0
- package/mssql-core/columns/char.d.ts +37 -0
- package/mssql-core/columns/char.js +47 -0
- package/mssql-core/columns/char.js.map +1 -0
- package/mssql-core/columns/common.cjs +117 -0
- package/mssql-core/columns/common.cjs.map +1 -0
- package/mssql-core/columns/common.d.cts +67 -0
- package/mssql-core/columns/common.d.ts +67 -0
- package/mssql-core/columns/common.js +90 -0
- package/mssql-core/columns/common.js.map +1 -0
- package/mssql-core/columns/custom.cjs +75 -0
- package/mssql-core/columns/custom.cjs.map +1 -0
- package/mssql-core/columns/custom.d.cts +149 -0
- package/mssql-core/columns/custom.d.ts +149 -0
- package/mssql-core/columns/custom.js +49 -0
- package/mssql-core/columns/custom.js.map +1 -0
- package/mssql-core/columns/date.cjs +94 -0
- package/mssql-core/columns/date.cjs.map +1 -0
- package/mssql-core/columns/date.common.cjs +37 -0
- package/mssql-core/columns/date.common.cjs.map +1 -0
- package/mssql-core/columns/date.common.d.cts +12 -0
- package/mssql-core/columns/date.common.d.ts +12 -0
- package/mssql-core/columns/date.common.js +13 -0
- package/mssql-core/columns/date.common.js.map +1 -0
- package/mssql-core/columns/date.d.cts +55 -0
- package/mssql-core/columns/date.d.ts +55 -0
- package/mssql-core/columns/date.js +66 -0
- package/mssql-core/columns/date.js.map +1 -0
- package/mssql-core/columns/datetime.cjs +94 -0
- package/mssql-core/columns/datetime.cjs.map +1 -0
- package/mssql-core/columns/datetime.d.cts +54 -0
- package/mssql-core/columns/datetime.d.ts +54 -0
- package/mssql-core/columns/datetime.js +66 -0
- package/mssql-core/columns/datetime.js.map +1 -0
- package/mssql-core/columns/datetime2.cjs +102 -0
- package/mssql-core/columns/datetime2.cjs.map +1 -0
- package/mssql-core/columns/datetime2.d.cts +54 -0
- package/mssql-core/columns/datetime2.d.ts +54 -0
- package/mssql-core/columns/datetime2.js +74 -0
- package/mssql-core/columns/datetime2.js.map +1 -0
- package/mssql-core/columns/datetimeoffset.cjs +102 -0
- package/mssql-core/columns/datetimeoffset.cjs.map +1 -0
- package/mssql-core/columns/datetimeoffset.d.cts +54 -0
- package/mssql-core/columns/datetimeoffset.d.ts +54 -0
- package/mssql-core/columns/datetimeoffset.js +74 -0
- package/mssql-core/columns/datetimeoffset.js.map +1 -0
- package/mssql-core/columns/decimal.cjs +68 -0
- package/mssql-core/columns/decimal.cjs.map +1 -0
- package/mssql-core/columns/decimal.d.cts +30 -0
- package/mssql-core/columns/decimal.d.ts +30 -0
- package/mssql-core/columns/decimal.js +42 -0
- package/mssql-core/columns/decimal.js.map +1 -0
- package/mssql-core/columns/float.cjs +58 -0
- package/mssql-core/columns/float.cjs.map +1 -0
- package/mssql-core/columns/float.d.cts +28 -0
- package/mssql-core/columns/float.d.ts +28 -0
- package/mssql-core/columns/float.js +32 -0
- package/mssql-core/columns/float.js.map +1 -0
- package/mssql-core/columns/index.cjs +63 -0
- package/mssql-core/columns/index.cjs.map +1 -0
- package/mssql-core/columns/index.d.cts +21 -0
- package/mssql-core/columns/index.d.ts +21 -0
- package/mssql-core/columns/index.js +22 -0
- package/mssql-core/columns/index.js.map +1 -0
- package/mssql-core/columns/int.cjs +53 -0
- package/mssql-core/columns/int.cjs.map +1 -0
- package/mssql-core/columns/int.d.cts +23 -0
- package/mssql-core/columns/int.d.ts +23 -0
- package/mssql-core/columns/int.js +27 -0
- package/mssql-core/columns/int.js.map +1 -0
- package/mssql-core/columns/numeric.cjs +68 -0
- package/mssql-core/columns/numeric.cjs.map +1 -0
- package/mssql-core/columns/numeric.d.cts +27 -0
- package/mssql-core/columns/numeric.d.ts +27 -0
- package/mssql-core/columns/numeric.js +42 -0
- package/mssql-core/columns/numeric.js.map +1 -0
- package/mssql-core/columns/real.cjs +53 -0
- package/mssql-core/columns/real.cjs.map +1 -0
- package/mssql-core/columns/real.d.cts +23 -0
- package/mssql-core/columns/real.d.ts +23 -0
- package/mssql-core/columns/real.js +27 -0
- package/mssql-core/columns/real.js.map +1 -0
- package/mssql-core/columns/smallint.cjs +62 -0
- package/mssql-core/columns/smallint.cjs.map +1 -0
- package/mssql-core/columns/smallint.d.cts +24 -0
- package/mssql-core/columns/smallint.d.ts +24 -0
- package/mssql-core/columns/smallint.js +36 -0
- package/mssql-core/columns/smallint.js.map +1 -0
- package/mssql-core/columns/text.cjs +68 -0
- package/mssql-core/columns/text.cjs.map +1 -0
- package/mssql-core/columns/text.d.cts +45 -0
- package/mssql-core/columns/text.d.ts +45 -0
- package/mssql-core/columns/text.js +41 -0
- package/mssql-core/columns/text.js.map +1 -0
- package/mssql-core/columns/time.cjs +90 -0
- package/mssql-core/columns/time.cjs.map +1 -0
- package/mssql-core/columns/time.d.cts +49 -0
- package/mssql-core/columns/time.d.ts +49 -0
- package/mssql-core/columns/time.js +62 -0
- package/mssql-core/columns/time.js.map +1 -0
- package/mssql-core/columns/tinyint.cjs +62 -0
- package/mssql-core/columns/tinyint.cjs.map +1 -0
- package/mssql-core/columns/tinyint.d.cts +24 -0
- package/mssql-core/columns/tinyint.d.ts +24 -0
- package/mssql-core/columns/tinyint.js +36 -0
- package/mssql-core/columns/tinyint.js.map +1 -0
- package/mssql-core/columns/varbinary.cjs +61 -0
- package/mssql-core/columns/varbinary.cjs.map +1 -0
- package/mssql-core/columns/varbinary.d.cts +27 -0
- package/mssql-core/columns/varbinary.d.ts +27 -0
- package/mssql-core/columns/varbinary.js +35 -0
- package/mssql-core/columns/varbinary.js.map +1 -0
- package/mssql-core/columns/varchar.cjs +117 -0
- package/mssql-core/columns/varchar.cjs.map +1 -0
- package/mssql-core/columns/varchar.d.cts +66 -0
- package/mssql-core/columns/varchar.d.ts +66 -0
- package/mssql-core/columns/varchar.js +88 -0
- package/mssql-core/columns/varchar.js.map +1 -0
- package/mssql-core/db.cjs +254 -0
- package/mssql-core/db.cjs.map +1 -0
- package/mssql-core/db.d.cts +228 -0
- package/mssql-core/db.d.ts +228 -0
- package/mssql-core/db.js +235 -0
- package/mssql-core/db.js.map +1 -0
- package/mssql-core/dialect.cjs +568 -0
- package/mssql-core/dialect.cjs.map +1 -0
- package/mssql-core/dialect.d.cts +57 -0
- package/mssql-core/dialect.d.ts +57 -0
- package/mssql-core/dialect.js +550 -0
- package/mssql-core/dialect.js.map +1 -0
- package/mssql-core/expressions.cjs +49 -0
- package/mssql-core/expressions.cjs.map +1 -0
- package/mssql-core/expressions.d.cts +8 -0
- package/mssql-core/expressions.d.ts +8 -0
- package/mssql-core/expressions.js +22 -0
- package/mssql-core/expressions.js.map +1 -0
- package/mssql-core/foreign-keys.cjs +91 -0
- package/mssql-core/foreign-keys.cjs.map +1 -0
- package/mssql-core/foreign-keys.d.cts +51 -0
- package/mssql-core/foreign-keys.d.ts +51 -0
- package/mssql-core/foreign-keys.js +65 -0
- package/mssql-core/foreign-keys.js.map +1 -0
- package/mssql-core/index.cjs +55 -0
- package/mssql-core/index.cjs.map +1 -0
- package/mssql-core/index.d.cts +17 -0
- package/mssql-core/index.d.ts +17 -0
- package/mssql-core/index.js +18 -0
- package/mssql-core/index.js.map +1 -0
- package/mssql-core/indexes.cjs +80 -0
- package/mssql-core/indexes.cjs.map +1 -0
- package/mssql-core/indexes.d.cts +49 -0
- package/mssql-core/indexes.d.ts +49 -0
- package/mssql-core/indexes.js +52 -0
- package/mssql-core/indexes.js.map +1 -0
- package/mssql-core/primary-keys.cjs +64 -0
- package/mssql-core/primary-keys.cjs.map +1 -0
- package/mssql-core/primary-keys.d.cts +23 -0
- package/mssql-core/primary-keys.d.ts +23 -0
- package/mssql-core/primary-keys.js +38 -0
- package/mssql-core/primary-keys.js.map +1 -0
- package/mssql-core/query-builders/delete.cjs +101 -0
- package/mssql-core/query-builders/delete.cjs.map +1 -0
- package/mssql-core/query-builders/delete.d.cts +74 -0
- package/mssql-core/query-builders/delete.d.ts +74 -0
- package/mssql-core/query-builders/delete.js +77 -0
- package/mssql-core/query-builders/delete.js.map +1 -0
- package/mssql-core/query-builders/index.cjs +33 -0
- package/mssql-core/query-builders/index.cjs.map +1 -0
- package/mssql-core/query-builders/index.d.cts +6 -0
- package/mssql-core/query-builders/index.d.ts +6 -0
- package/mssql-core/query-builders/index.js +7 -0
- package/mssql-core/query-builders/index.js.map +1 -0
- package/mssql-core/query-builders/insert.cjs +95 -0
- package/mssql-core/query-builders/insert.cjs.map +1 -0
- package/mssql-core/query-builders/insert.d.cts +54 -0
- package/mssql-core/query-builders/insert.d.ts +54 -0
- package/mssql-core/query-builders/insert.js +70 -0
- package/mssql-core/query-builders/insert.js.map +1 -0
- package/mssql-core/query-builders/query-builder.cjs +95 -0
- package/mssql-core/query-builders/query-builder.cjs.map +1 -0
- package/mssql-core/query-builders/query-builder.d.cts +32 -0
- package/mssql-core/query-builders/query-builder.d.ts +32 -0
- package/mssql-core/query-builders/query-builder.js +71 -0
- package/mssql-core/query-builders/query-builder.js.map +1 -0
- package/mssql-core/query-builders/query.cjs +126 -0
- package/mssql-core/query-builders/query.cjs.map +1 -0
- package/mssql-core/query-builders/query.d.cts +42 -0
- package/mssql-core/query-builders/query.d.ts +42 -0
- package/mssql-core/query-builders/query.js +103 -0
- package/mssql-core/query-builders/query.js.map +1 -0
- package/mssql-core/query-builders/select.cjs +679 -0
- package/mssql-core/query-builders/select.cjs.map +1 -0
- package/mssql-core/query-builders/select.d.cts +549 -0
- package/mssql-core/query-builders/select.d.ts +549 -0
- package/mssql-core/query-builders/select.js +649 -0
- package/mssql-core/query-builders/select.js.map +1 -0
- package/mssql-core/query-builders/select.types.cjs +17 -0
- package/mssql-core/query-builders/select.types.cjs.map +1 -0
- package/mssql-core/query-builders/select.types.d.cts +138 -0
- package/mssql-core/query-builders/select.types.d.ts +138 -0
- package/mssql-core/query-builders/select.types.js +1 -0
- package/mssql-core/query-builders/select.types.js.map +1 -0
- package/mssql-core/query-builders/update.cjs +118 -0
- package/mssql-core/query-builders/update.cjs.map +1 -0
- package/mssql-core/query-builders/update.d.cts +93 -0
- package/mssql-core/query-builders/update.d.ts +93 -0
- package/mssql-core/query-builders/update.js +93 -0
- package/mssql-core/query-builders/update.js.map +1 -0
- package/mssql-core/schema.cjs +51 -0
- package/mssql-core/schema.cjs.map +1 -0
- package/mssql-core/schema.d.cts +22 -0
- package/mssql-core/schema.d.ts +22 -0
- package/mssql-core/schema.js +25 -0
- package/mssql-core/schema.js.map +1 -0
- package/mssql-core/session.cjs +74 -0
- package/mssql-core/session.cjs.map +1 -0
- package/mssql-core/session.d.cts +63 -0
- package/mssql-core/session.d.ts +63 -0
- package/mssql-core/session.js +48 -0
- package/mssql-core/session.js.map +1 -0
- package/mssql-core/subquery.cjs +17 -0
- package/mssql-core/subquery.cjs.map +1 -0
- package/mssql-core/subquery.d.cts +18 -0
- package/mssql-core/subquery.d.ts +18 -0
- package/mssql-core/subquery.js +1 -0
- package/mssql-core/subquery.js.map +1 -0
- package/mssql-core/table.cjs +81 -0
- package/mssql-core/table.cjs.map +1 -0
- package/mssql-core/table.d.cts +43 -0
- package/mssql-core/table.d.ts +43 -0
- package/mssql-core/table.js +53 -0
- package/mssql-core/table.js.map +1 -0
- package/mssql-core/unique-constraint.cjs +76 -0
- package/mssql-core/unique-constraint.cjs.map +1 -0
- package/mssql-core/unique-constraint.d.cts +23 -0
- package/mssql-core/unique-constraint.d.ts +23 -0
- package/mssql-core/unique-constraint.js +49 -0
- package/mssql-core/unique-constraint.js.map +1 -0
- package/mssql-core/utils.cjs +85 -0
- package/mssql-core/utils.cjs.map +1 -0
- package/mssql-core/utils.d.cts +31 -0
- package/mssql-core/utils.d.ts +31 -0
- package/mssql-core/utils.js +60 -0
- package/mssql-core/utils.js.map +1 -0
- package/mssql-core/view-base.cjs +33 -0
- package/mssql-core/view-base.cjs.map +1 -0
- package/mssql-core/view-base.d.cts +9 -0
- package/mssql-core/view-base.d.ts +9 -0
- package/mssql-core/view-base.js +9 -0
- package/mssql-core/view-base.js.map +1 -0
- package/mssql-core/view-common.cjs +29 -0
- package/mssql-core/view-common.cjs.map +1 -0
- package/mssql-core/view-common.d.cts +1 -0
- package/mssql-core/view-common.d.ts +1 -0
- package/mssql-core/view-common.js +5 -0
- package/mssql-core/view-common.js.map +1 -0
- package/mssql-core/view.cjs +154 -0
- package/mssql-core/view.cjs.map +1 -0
- package/mssql-core/view.d.cts +64 -0
- package/mssql-core/view.d.ts +64 -0
- package/mssql-core/view.js +125 -0
- package/mssql-core/view.js.map +1 -0
- package/node-mssql/driver.cjs +86 -0
- package/node-mssql/driver.cjs.map +1 -0
- package/node-mssql/driver.d.cts +32 -0
- package/node-mssql/driver.d.ts +32 -0
- package/node-mssql/driver.js +63 -0
- package/node-mssql/driver.js.map +1 -0
- package/node-mssql/index.cjs +25 -0
- package/node-mssql/index.cjs.map +1 -0
- package/node-mssql/index.d.cts +2 -0
- package/node-mssql/index.d.ts +2 -0
- package/node-mssql/index.js +3 -0
- package/node-mssql/index.js.map +1 -0
- package/node-mssql/migrator.cjs +33 -0
- package/node-mssql/migrator.cjs.map +1 -0
- package/node-mssql/migrator.d.cts +3 -0
- package/node-mssql/migrator.d.ts +3 -0
- package/node-mssql/migrator.js +9 -0
- package/node-mssql/migrator.js.map +1 -0
- package/node-mssql/session.cjs +243 -0
- package/node-mssql/session.cjs.map +1 -0
- package/node-mssql/session.d.cts +47 -0
- package/node-mssql/session.d.ts +47 -0
- package/node-mssql/session.js +211 -0
- package/node-mssql/session.js.map +1 -0
- package/package.json +653 -1
- package/pg-core/schema.cjs +2 -2
- package/pg-core/schema.cjs.map +1 -1
- package/pg-core/schema.d.cts +4 -1
- package/pg-core/schema.d.ts +4 -1
- package/pg-core/schema.js +2 -2
- package/pg-core/schema.js.map +1 -1
- package/relations.cjs +48 -0
- package/relations.cjs.map +1 -1
- package/relations.d.cts +1 -0
- package/relations.d.ts +1 -0
- package/relations.js +47 -0
- package/relations.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,48 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import { TransactionRollbackError } from "../errors.js";
|
|
3
|
+
import { sql } from "../sql/sql.js";
|
|
4
|
+
import { MsSqlDatabase } from "./db.js";
|
|
5
|
+
class PreparedQuery {
|
|
6
|
+
static [entityKind] = "MsSqlPreparedQuery";
|
|
7
|
+
/** @internal */
|
|
8
|
+
joinsNotNullableMap;
|
|
9
|
+
}
|
|
10
|
+
class MsSqlSession {
|
|
11
|
+
constructor(dialect) {
|
|
12
|
+
this.dialect = dialect;
|
|
13
|
+
}
|
|
14
|
+
static [entityKind] = "MsSqlSession";
|
|
15
|
+
execute(query) {
|
|
16
|
+
return this.prepareQuery(
|
|
17
|
+
this.dialect.sqlToQuery(query),
|
|
18
|
+
void 0
|
|
19
|
+
).execute();
|
|
20
|
+
}
|
|
21
|
+
getSetTransactionSQL(config) {
|
|
22
|
+
const parts = [];
|
|
23
|
+
if (config.isolationLevel) {
|
|
24
|
+
parts.push(`isolation level ${config.isolationLevel}`);
|
|
25
|
+
}
|
|
26
|
+
return parts.length ? sql.join(["set transaction ", parts.join(" ")]) : void 0;
|
|
27
|
+
}
|
|
28
|
+
getStartTransactionSQL(_config) {
|
|
29
|
+
return sql`begin transaction`;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
class MsSqlTransaction extends MsSqlDatabase {
|
|
33
|
+
constructor(dialect, session, schema, nestedIndex) {
|
|
34
|
+
super(dialect, session, schema);
|
|
35
|
+
this.schema = schema;
|
|
36
|
+
this.nestedIndex = nestedIndex;
|
|
37
|
+
}
|
|
38
|
+
static [entityKind] = "MsSqlTransaction";
|
|
39
|
+
rollback() {
|
|
40
|
+
throw new TransactionRollbackError();
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export {
|
|
44
|
+
MsSqlSession,
|
|
45
|
+
MsSqlTransaction,
|
|
46
|
+
PreparedQuery
|
|
47
|
+
};
|
|
48
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/session.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport { TransactionRollbackError } from '~/errors.ts';\nimport type { RelationalSchemaConfig, TablesRelationalConfig } from '~/relations.ts';\nimport { type Query, type SQL, sql } from '~/sql/sql.ts';\nimport type { Assume, Equal } from '~/utils.ts';\nimport { MsSqlDatabase } from './db.ts';\nimport type { MsSqlDialect } from './dialect.ts';\nimport type { SelectedFieldsOrdered } from './query-builders/select.types.ts';\n\nexport interface QueryResultHKT {\n\treadonly $brand: 'MsSqlQueryRowHKT';\n\treadonly row: unknown;\n\treadonly type: unknown;\n}\n\nexport interface AnyQueryResultHKT extends QueryResultHKT {\n\treadonly type: any;\n}\n\nexport type QueryResultKind<TKind extends QueryResultHKT, TRow> = (TKind & {\n\treadonly row: TRow;\n})['type'];\n\nexport interface PreparedQueryConfig {\n\texecute: unknown;\n\titerator: unknown;\n}\n\nexport interface PreparedQueryHKT {\n\treadonly $brand: 'MsSqlPreparedQueryHKT';\n\treadonly config: unknown;\n\treadonly type: unknown;\n}\n\nexport type PreparedQueryKind<\n\tTKind extends PreparedQueryHKT,\n\tTConfig extends PreparedQueryConfig,\n\tTAssume extends boolean = false,\n> = Equal<TAssume, true> extends true ? Assume<(TKind & { readonly config: TConfig })['type'], PreparedQuery<TConfig>>\n\t: (TKind & { readonly config: TConfig })['type'];\n\nexport abstract class PreparedQuery<T extends PreparedQueryConfig> {\n\tstatic readonly [entityKind]: string = 'MsSqlPreparedQuery';\n\n\t/** @internal */\n\tjoinsNotNullableMap?: Record<string, boolean>;\n\n\tabstract execute(placeholderValues?: Record<string, unknown>): Promise<T['execute']>;\n\n\tabstract iterator(placeholderValues?: Record<string, unknown>): AsyncGenerator<T['iterator']>;\n}\n\nexport interface MsSqlTransactionConfig {\n\tisolationLevel: 'read uncommitted' | 'read committed' | 'repeatable read' | 'serializable' | 'snapshot';\n}\n\nexport abstract class MsSqlSession<\n\tTQueryResult extends QueryResultHKT = QueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase = PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTSchema extends TablesRelationalConfig = Record<string, never>,\n> {\n\tstatic readonly [entityKind]: string = 'MsSqlSession';\n\n\tconstructor(protected dialect: MsSqlDialect) {}\n\n\tabstract prepareQuery<T extends PreparedQueryConfig, TPreparedQueryHKT extends PreparedQueryHKT>(\n\t\tquery: Query,\n\t\tfields: SelectedFieldsOrdered | undefined,\n\t\tcustomResultMapper?: (rows: unknown[][]) => T['execute'],\n\t): PreparedQueryKind<TPreparedQueryHKT, T>;\n\n\texecute<T>(query: SQL): Promise<T> {\n\t\treturn this.prepareQuery<PreparedQueryConfig & { execute: T }, PreparedQueryHKTBase>(\n\t\t\tthis.dialect.sqlToQuery(query),\n\t\t\tundefined,\n\t\t).execute();\n\t}\n\n\tabstract all<T = unknown>(query: SQL): Promise<T[]>;\n\n\tabstract transaction<T>(\n\t\ttransaction: (tx: MsSqlTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TSchema>) => Promise<T>,\n\t\tconfig?: MsSqlTransactionConfig,\n\t): Promise<T>;\n\n\tprotected getSetTransactionSQL(config: MsSqlTransactionConfig): SQL | undefined {\n\t\tconst parts: string[] = [];\n\n\t\tif (config.isolationLevel) {\n\t\t\tparts.push(`isolation level ${config.isolationLevel}`);\n\t\t}\n\n\t\treturn parts.length ? sql.join(['set transaction ', parts.join(' ')]) : undefined;\n\t}\n\n\tprotected getStartTransactionSQL(_config: MsSqlTransactionConfig): SQL | undefined {\n\t\treturn sql`begin transaction`;\n\t}\n}\n\nexport abstract class MsSqlTransaction<\n\tTQueryResult extends QueryResultHKT,\n\tTPreparedQueryHKT extends PreparedQueryHKTBase,\n\tTFullSchema extends Record<string, unknown> = Record<string, never>,\n\tTSchema extends TablesRelationalConfig = Record<string, never>,\n> extends MsSqlDatabase<TQueryResult, TPreparedQueryHKT, TFullSchema, TSchema> {\n\tstatic override readonly [entityKind]: string = 'MsSqlTransaction';\n\n\tconstructor(\n\t\tdialect: MsSqlDialect,\n\t\tsession: MsSqlSession,\n\t\tprotected schema: RelationalSchemaConfig<TSchema> | undefined,\n\t\tprotected readonly nestedIndex: number,\n\t) {\n\t\tsuper(dialect, session, schema);\n\t}\n\n\trollback(): never {\n\t\tthrow new TransactionRollbackError();\n\t}\n\n\t/** Nested transactions (aka savepoints) only work with InnoDB engine. */\n\tabstract override transaction<T>(\n\t\ttransaction: (tx: MsSqlTransaction<TQueryResult, TPreparedQueryHKT, TFullSchema, TSchema>) => Promise<T>,\n\t): Promise<T>;\n}\n\nexport interface PreparedQueryHKTBase extends PreparedQueryHKT {\n\ttype: PreparedQuery<Assume<this['config'], PreparedQueryConfig>>;\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAC3B,SAAS,gCAAgC;AAEzC,SAA+B,WAAW;AAE1C,SAAS,qBAAqB;AAoCvB,MAAe,cAA6C;AAAA,EAClE,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAKD;AAMO,MAAe,aAKpB;AAAA,EAGD,YAAsB,SAAuB;AAAvB;AAAA,EAAwB;AAAA,EAF9C,QAAiB,UAAU,IAAY;AAAA,EAUvC,QAAW,OAAwB;AAClC,WAAO,KAAK;AAAA,MACX,KAAK,QAAQ,WAAW,KAAK;AAAA,MAC7B;AAAA,IACD,EAAE,QAAQ;AAAA,EACX;AAAA,EASU,qBAAqB,QAAiD;AAC/E,UAAM,QAAkB,CAAC;AAEzB,QAAI,OAAO,gBAAgB;AAC1B,YAAM,KAAK,mBAAmB,OAAO,cAAc,EAAE;AAAA,IACtD;AAEA,WAAO,MAAM,SAAS,IAAI,KAAK,CAAC,oBAAoB,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI;AAAA,EACzE;AAAA,EAEU,uBAAuB,SAAkD;AAClF,WAAO;AAAA,EACR;AACD;AAEO,MAAe,yBAKZ,cAAqE;AAAA,EAG9E,YACC,SACA,SACU,QACS,aAClB;AACD,UAAM,SAAS,SAAS,MAAM;AAHpB;AACS;AAAA,EAGpB;AAAA,EATA,QAA0B,UAAU,IAAY;AAAA,EAWhD,WAAkB;AACjB,UAAM,IAAI,yBAAyB;AAAA,EACpC;AAMD;","names":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var subquery_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(subquery_exports);
|
|
17
|
+
//# sourceMappingURL=subquery.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/subquery.ts"],"sourcesContent":["import type { TypedQueryBuilder } from '~/query-builders/query-builder.ts';\nimport type { AddAliasToSelection } from '~/query-builders/select.types.ts';\nimport type { ColumnsSelection, SQL } from '~/sql/sql.ts';\nimport type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from '~/subquery.ts';\nimport type { QueryBuilder } from './query-builders/query-builder.ts';\n\nexport type SubqueryWithSelection<\n\tTSelection extends ColumnsSelection,\n\tTAlias extends string,\n> =\n\t& Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'mssql'>;\n\nexport type WithSubqueryWithSelection<\n\tTSelection extends ColumnsSelection,\n\tTAlias extends string,\n> =\n\t& WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>>\n\t& AddAliasToSelection<TSelection, TAlias, 'mssql'>;\n\nexport interface WithBuilder {\n\t<TAlias extends string>(alias: TAlias): {\n\t\tas: {\n\t\t\t<TSelection extends ColumnsSelection>(\n\t\t\t\tqb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>),\n\t\t\t): WithSubqueryWithSelection<TSelection, TAlias>;\n\t\t\t(\n\t\t\t\tqb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>),\n\t\t\t): WithSubqueryWithoutSelection<TAlias>;\n\t\t};\n\t};\n\t<TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {\n\t\tas: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { TypedQueryBuilder } from "../query-builders/query-builder.cjs";
|
|
2
|
+
import type { AddAliasToSelection } from "../query-builders/select.types.cjs";
|
|
3
|
+
import type { ColumnsSelection, SQL } from "../sql/sql.cjs";
|
|
4
|
+
import type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from "../subquery.cjs";
|
|
5
|
+
import type { QueryBuilder } from "./query-builders/query-builder.cjs";
|
|
6
|
+
export type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>> & AddAliasToSelection<TSelection, TAlias, 'mssql'>;
|
|
7
|
+
export type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>> & AddAliasToSelection<TSelection, TAlias, 'mssql'>;
|
|
8
|
+
export interface WithBuilder {
|
|
9
|
+
<TAlias extends string>(alias: TAlias): {
|
|
10
|
+
as: {
|
|
11
|
+
<TSelection extends ColumnsSelection>(qb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>)): WithSubqueryWithSelection<TSelection, TAlias>;
|
|
12
|
+
(qb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>)): WithSubqueryWithoutSelection<TAlias>;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
<TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {
|
|
16
|
+
as: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { TypedQueryBuilder } from "../query-builders/query-builder.js";
|
|
2
|
+
import type { AddAliasToSelection } from "../query-builders/select.types.js";
|
|
3
|
+
import type { ColumnsSelection, SQL } from "../sql/sql.js";
|
|
4
|
+
import type { Subquery, WithSubquery, WithSubqueryWithoutSelection } from "../subquery.js";
|
|
5
|
+
import type { QueryBuilder } from "./query-builders/query-builder.js";
|
|
6
|
+
export type SubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = Subquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>> & AddAliasToSelection<TSelection, TAlias, 'mssql'>;
|
|
7
|
+
export type WithSubqueryWithSelection<TSelection extends ColumnsSelection, TAlias extends string> = WithSubquery<TAlias, AddAliasToSelection<TSelection, TAlias, 'mssql'>> & AddAliasToSelection<TSelection, TAlias, 'mssql'>;
|
|
8
|
+
export interface WithBuilder {
|
|
9
|
+
<TAlias extends string>(alias: TAlias): {
|
|
10
|
+
as: {
|
|
11
|
+
<TSelection extends ColumnsSelection>(qb: TypedQueryBuilder<TSelection> | ((qb: QueryBuilder) => TypedQueryBuilder<TSelection>)): WithSubqueryWithSelection<TSelection, TAlias>;
|
|
12
|
+
(qb: TypedQueryBuilder<undefined> | ((qb: QueryBuilder) => TypedQueryBuilder<undefined>)): WithSubqueryWithoutSelection<TAlias>;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
<TAlias extends string, TSelection extends ColumnsSelection>(alias: TAlias, selection: TSelection): {
|
|
16
|
+
as: (qb: SQL | ((qb: QueryBuilder) => SQL)) => WithSubqueryWithSelection<TSelection, TAlias>;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=subquery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,81 @@
|
|
|
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 table_exports = {};
|
|
20
|
+
__export(table_exports, {
|
|
21
|
+
InlineForeignKeys: () => InlineForeignKeys,
|
|
22
|
+
MsSqlTable: () => MsSqlTable,
|
|
23
|
+
mssqlTable: () => mssqlTable,
|
|
24
|
+
mssqlTableCreator: () => mssqlTableCreator,
|
|
25
|
+
mssqlTableWithSchema: () => mssqlTableWithSchema
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(table_exports);
|
|
28
|
+
var import_entity = require("../entity.cjs");
|
|
29
|
+
var import_table = require("../table.cjs");
|
|
30
|
+
var import_all = require("./columns/all.cjs");
|
|
31
|
+
const InlineForeignKeys = Symbol.for("drizzle:MsSqlInlineForeignKeys");
|
|
32
|
+
class MsSqlTable extends import_table.Table {
|
|
33
|
+
static [import_entity.entityKind] = "MsSqlTable";
|
|
34
|
+
/** @internal */
|
|
35
|
+
static Symbol = Object.assign({}, import_table.Table.Symbol, {
|
|
36
|
+
InlineForeignKeys
|
|
37
|
+
});
|
|
38
|
+
/** @internal */
|
|
39
|
+
[import_table.Table.Symbol.Columns];
|
|
40
|
+
/** @internal */
|
|
41
|
+
[InlineForeignKeys] = [];
|
|
42
|
+
/** @internal */
|
|
43
|
+
[import_table.Table.Symbol.ExtraConfigBuilder] = void 0;
|
|
44
|
+
}
|
|
45
|
+
function mssqlTableWithSchema(name, columns, extraConfig, schema, baseName = name) {
|
|
46
|
+
const rawTable = new MsSqlTable(name, schema, baseName);
|
|
47
|
+
const parsedColumns = typeof columns === "function" ? columns((0, import_all.getMsSqlColumnBuilders)()) : columns;
|
|
48
|
+
const builtColumns = Object.fromEntries(
|
|
49
|
+
Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
|
|
50
|
+
const colBuilder = colBuilderBase;
|
|
51
|
+
colBuilder.setName(name2);
|
|
52
|
+
const column = colBuilder.build(rawTable);
|
|
53
|
+
rawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));
|
|
54
|
+
return [name2, column];
|
|
55
|
+
})
|
|
56
|
+
);
|
|
57
|
+
const table = Object.assign(rawTable, builtColumns);
|
|
58
|
+
table[import_table.Table.Symbol.Columns] = builtColumns;
|
|
59
|
+
table[import_table.Table.Symbol.ExtraConfigColumns] = builtColumns;
|
|
60
|
+
if (extraConfig) {
|
|
61
|
+
table[MsSqlTable.Symbol.ExtraConfigBuilder] = extraConfig;
|
|
62
|
+
}
|
|
63
|
+
return table;
|
|
64
|
+
}
|
|
65
|
+
const mssqlTable = (name, columns, extraConfig) => {
|
|
66
|
+
return mssqlTableWithSchema(name, columns, extraConfig, void 0, name);
|
|
67
|
+
};
|
|
68
|
+
function mssqlTableCreator(customizeTableName) {
|
|
69
|
+
return (name, columns, extraConfig) => {
|
|
70
|
+
return mssqlTableWithSchema(customizeTableName(name), columns, extraConfig, void 0, name);
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
74
|
+
0 && (module.exports = {
|
|
75
|
+
InlineForeignKeys,
|
|
76
|
+
MsSqlTable,
|
|
77
|
+
mssqlTable,
|
|
78
|
+
mssqlTableCreator,
|
|
79
|
+
mssqlTableWithSchema
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=table.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getMsSqlColumnBuilders, type MsSqlColumnBuilders } from './columns/all.ts';\nimport type { MsSqlColumn, MsSqlColumnBuilder, MsSqlColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type MsSqlTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type MsSqlTableExtraConfig = Record<\n\tstring,\n\tMsSqlTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<MsSqlColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:MsSqlInlineForeignKeys');\n\nexport class MsSqlTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'MsSqlTable';\n\n\tdeclare protected $columns: T['columns'];\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, MsSqlColumn>) => MsSqlTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnyMsSqlTable<TPartial extends Partial<TableConfig> = {}> = MsSqlTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type MsSqlTableWithColumns<T extends TableConfig> =\n\t& MsSqlTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\nexport function mssqlTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: MsSqlColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>,\n\t\t) => MsSqlTableExtraConfig | MsSqlTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): MsSqlTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\tdialect: 'mssql';\n}> {\n\tconst rawTable = new MsSqlTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getMsSqlColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as MsSqlColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'mssql'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[MsSqlTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, MsSqlColumn>,\n\t\t) => MsSqlTableExtraConfig;\n\t}\n\n\treturn table;\n}\n\nexport interface MsSqlTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[],\n\t): MsSqlTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: MsSqlColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[],\n\t): MsSqlTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>;\n}\n\nexport const mssqlTable: MsSqlTableFn = (name, columns, extraConfig) => {\n\treturn mssqlTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function mssqlTableCreator(customizeTableName: (name: string) => string): MsSqlTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn mssqlTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,oBAA2B;AAC3B,mBAAmF;AAEnF,iBAAiE;AAsB1D,MAAM,oBAAoB,OAAO,IAAI,gCAAgC;AAErE,MAAM,mBAAwD,mBAAS;AAAA,EAC7E,QAA0B,wBAAU,IAAY;AAAA;AAAA,EAKhD,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,mBAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAU,mBAAM,OAAO,OAAO;AAAA;AAAA,EAG9B,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,mBAAM,OAAO,kBAAkB,IAE1B;AAChB;AAYO,SAAS,qBAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,WAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,YAAQ,mCAAuB,CAAC,IAAI;AAEvG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,mBAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,mBAAM,OAAO,kBAAkB,IAAI;AAMzC,MAAI,aAAa;AAChB,UAAM,WAAW,OAAO,kBAAkB,IAAI;AAAA,EAG/C;AAEA,SAAO;AACR;AAgCO,MAAM,aAA2B,CAAC,MAAM,SAAS,gBAAgB;AACvE,SAAO,qBAAqB,MAAM,SAAS,aAAa,QAAW,IAAI;AACxE;AAEO,SAAS,kBAAkB,oBAA4D;AAC7F,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,qBAAqB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EAC3G;AACD;","names":["name"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { BuildColumns, BuildExtraConfigColumns } from "../column-builder.cjs";
|
|
2
|
+
import { entityKind } from "../entity.cjs";
|
|
3
|
+
import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from "../table.cjs";
|
|
4
|
+
import type { CheckBuilder } from "./checks.cjs";
|
|
5
|
+
import { type MsSqlColumnBuilders } from "./columns/all.cjs";
|
|
6
|
+
import type { MsSqlColumn, MsSqlColumnBuilderBase } from "./columns/common.cjs";
|
|
7
|
+
import type { ForeignKeyBuilder } from "./foreign-keys.cjs";
|
|
8
|
+
import type { AnyIndexBuilder } from "./indexes.cjs";
|
|
9
|
+
import type { PrimaryKeyBuilder } from "./primary-keys.cjs";
|
|
10
|
+
import type { UniqueConstraintBuilder } from "./unique-constraint.cjs";
|
|
11
|
+
export type MsSqlTableExtraConfigValue = AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder;
|
|
12
|
+
export type MsSqlTableExtraConfig = Record<string, MsSqlTableExtraConfigValue>;
|
|
13
|
+
export type TableConfig = TableConfigBase<MsSqlColumn>;
|
|
14
|
+
export declare class MsSqlTable<T extends TableConfig = TableConfig> extends Table<T> {
|
|
15
|
+
static readonly [entityKind]: string;
|
|
16
|
+
protected $columns: T['columns'];
|
|
17
|
+
}
|
|
18
|
+
export type AnyMsSqlTable<TPartial extends Partial<TableConfig> = {}> = MsSqlTable<UpdateTableConfig<TableConfig, TPartial>>;
|
|
19
|
+
export type MsSqlTableWithColumns<T extends TableConfig> = MsSqlTable<T> & {
|
|
20
|
+
[Key in keyof T['columns']]: T['columns'][Key];
|
|
21
|
+
};
|
|
22
|
+
export declare function mssqlTableWithSchema<TTableName extends string, TSchemaName extends string | undefined, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: TColumnsMap | ((columnTypes: MsSqlColumnBuilders) => TColumnsMap), extraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfig | MsSqlTableExtraConfigValue[]) | undefined, schema: TSchemaName, baseName?: TTableName): MsSqlTableWithColumns<{
|
|
23
|
+
name: TTableName;
|
|
24
|
+
schema: TSchemaName;
|
|
25
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
26
|
+
dialect: 'mssql';
|
|
27
|
+
}>;
|
|
28
|
+
export interface MsSqlTableFn<TSchema extends string | undefined = undefined> {
|
|
29
|
+
<TTableName extends string, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[]): MsSqlTableWithColumns<{
|
|
30
|
+
name: TTableName;
|
|
31
|
+
schema: TSchema;
|
|
32
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
33
|
+
dialect: 'mssql';
|
|
34
|
+
}>;
|
|
35
|
+
<TTableName extends string, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: (columnTypes: MsSqlColumnBuilders) => TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[]): MsSqlTableWithColumns<{
|
|
36
|
+
name: TTableName;
|
|
37
|
+
schema: TSchema;
|
|
38
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
39
|
+
dialect: 'mssql';
|
|
40
|
+
}>;
|
|
41
|
+
}
|
|
42
|
+
export declare const mssqlTable: MsSqlTableFn;
|
|
43
|
+
export declare function mssqlTableCreator(customizeTableName: (name: string) => string): MsSqlTableFn;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { BuildColumns, BuildExtraConfigColumns } from "../column-builder.js";
|
|
2
|
+
import { entityKind } from "../entity.js";
|
|
3
|
+
import { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from "../table.js";
|
|
4
|
+
import type { CheckBuilder } from "./checks.js";
|
|
5
|
+
import { type MsSqlColumnBuilders } from "./columns/all.js";
|
|
6
|
+
import type { MsSqlColumn, MsSqlColumnBuilderBase } from "./columns/common.js";
|
|
7
|
+
import type { ForeignKeyBuilder } from "./foreign-keys.js";
|
|
8
|
+
import type { AnyIndexBuilder } from "./indexes.js";
|
|
9
|
+
import type { PrimaryKeyBuilder } from "./primary-keys.js";
|
|
10
|
+
import type { UniqueConstraintBuilder } from "./unique-constraint.js";
|
|
11
|
+
export type MsSqlTableExtraConfigValue = AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder;
|
|
12
|
+
export type MsSqlTableExtraConfig = Record<string, MsSqlTableExtraConfigValue>;
|
|
13
|
+
export type TableConfig = TableConfigBase<MsSqlColumn>;
|
|
14
|
+
export declare class MsSqlTable<T extends TableConfig = TableConfig> extends Table<T> {
|
|
15
|
+
static readonly [entityKind]: string;
|
|
16
|
+
protected $columns: T['columns'];
|
|
17
|
+
}
|
|
18
|
+
export type AnyMsSqlTable<TPartial extends Partial<TableConfig> = {}> = MsSqlTable<UpdateTableConfig<TableConfig, TPartial>>;
|
|
19
|
+
export type MsSqlTableWithColumns<T extends TableConfig> = MsSqlTable<T> & {
|
|
20
|
+
[Key in keyof T['columns']]: T['columns'][Key];
|
|
21
|
+
};
|
|
22
|
+
export declare function mssqlTableWithSchema<TTableName extends string, TSchemaName extends string | undefined, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: TColumnsMap | ((columnTypes: MsSqlColumnBuilders) => TColumnsMap), extraConfig: ((self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfig | MsSqlTableExtraConfigValue[]) | undefined, schema: TSchemaName, baseName?: TTableName): MsSqlTableWithColumns<{
|
|
23
|
+
name: TTableName;
|
|
24
|
+
schema: TSchemaName;
|
|
25
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
26
|
+
dialect: 'mssql';
|
|
27
|
+
}>;
|
|
28
|
+
export interface MsSqlTableFn<TSchema extends string | undefined = undefined> {
|
|
29
|
+
<TTableName extends string, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[]): MsSqlTableWithColumns<{
|
|
30
|
+
name: TTableName;
|
|
31
|
+
schema: TSchema;
|
|
32
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
33
|
+
dialect: 'mssql';
|
|
34
|
+
}>;
|
|
35
|
+
<TTableName extends string, TColumnsMap extends Record<string, MsSqlColumnBuilderBase>>(name: TTableName, columns: (columnTypes: MsSqlColumnBuilders) => TColumnsMap, extraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[]): MsSqlTableWithColumns<{
|
|
36
|
+
name: TTableName;
|
|
37
|
+
schema: TSchema;
|
|
38
|
+
columns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;
|
|
39
|
+
dialect: 'mssql';
|
|
40
|
+
}>;
|
|
41
|
+
}
|
|
42
|
+
export declare const mssqlTable: MsSqlTableFn;
|
|
43
|
+
export declare function mssqlTableCreator(customizeTableName: (name: string) => string): MsSqlTableFn;
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import { Table } from "../table.js";
|
|
3
|
+
import { getMsSqlColumnBuilders } from "./columns/all.js";
|
|
4
|
+
const InlineForeignKeys = Symbol.for("drizzle:MsSqlInlineForeignKeys");
|
|
5
|
+
class MsSqlTable extends Table {
|
|
6
|
+
static [entityKind] = "MsSqlTable";
|
|
7
|
+
/** @internal */
|
|
8
|
+
static Symbol = Object.assign({}, Table.Symbol, {
|
|
9
|
+
InlineForeignKeys
|
|
10
|
+
});
|
|
11
|
+
/** @internal */
|
|
12
|
+
[Table.Symbol.Columns];
|
|
13
|
+
/** @internal */
|
|
14
|
+
[InlineForeignKeys] = [];
|
|
15
|
+
/** @internal */
|
|
16
|
+
[Table.Symbol.ExtraConfigBuilder] = void 0;
|
|
17
|
+
}
|
|
18
|
+
function mssqlTableWithSchema(name, columns, extraConfig, schema, baseName = name) {
|
|
19
|
+
const rawTable = new MsSqlTable(name, schema, baseName);
|
|
20
|
+
const parsedColumns = typeof columns === "function" ? columns(getMsSqlColumnBuilders()) : columns;
|
|
21
|
+
const builtColumns = Object.fromEntries(
|
|
22
|
+
Object.entries(parsedColumns).map(([name2, colBuilderBase]) => {
|
|
23
|
+
const colBuilder = colBuilderBase;
|
|
24
|
+
colBuilder.setName(name2);
|
|
25
|
+
const column = colBuilder.build(rawTable);
|
|
26
|
+
rawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));
|
|
27
|
+
return [name2, column];
|
|
28
|
+
})
|
|
29
|
+
);
|
|
30
|
+
const table = Object.assign(rawTable, builtColumns);
|
|
31
|
+
table[Table.Symbol.Columns] = builtColumns;
|
|
32
|
+
table[Table.Symbol.ExtraConfigColumns] = builtColumns;
|
|
33
|
+
if (extraConfig) {
|
|
34
|
+
table[MsSqlTable.Symbol.ExtraConfigBuilder] = extraConfig;
|
|
35
|
+
}
|
|
36
|
+
return table;
|
|
37
|
+
}
|
|
38
|
+
const mssqlTable = (name, columns, extraConfig) => {
|
|
39
|
+
return mssqlTableWithSchema(name, columns, extraConfig, void 0, name);
|
|
40
|
+
};
|
|
41
|
+
function mssqlTableCreator(customizeTableName) {
|
|
42
|
+
return (name, columns, extraConfig) => {
|
|
43
|
+
return mssqlTableWithSchema(customizeTableName(name), columns, extraConfig, void 0, name);
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
export {
|
|
47
|
+
InlineForeignKeys,
|
|
48
|
+
MsSqlTable,
|
|
49
|
+
mssqlTable,
|
|
50
|
+
mssqlTableCreator,
|
|
51
|
+
mssqlTableWithSchema
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=table.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/table.ts"],"sourcesContent":["import type { BuildColumns, BuildExtraConfigColumns } from '~/column-builder.ts';\nimport { entityKind } from '~/entity.ts';\nimport { Table, type TableConfig as TableConfigBase, type UpdateTableConfig } from '~/table.ts';\nimport type { CheckBuilder } from './checks.ts';\nimport { getMsSqlColumnBuilders, type MsSqlColumnBuilders } from './columns/all.ts';\nimport type { MsSqlColumn, MsSqlColumnBuilder, MsSqlColumnBuilderBase } from './columns/common.ts';\nimport type { ForeignKey, ForeignKeyBuilder } from './foreign-keys.ts';\nimport type { AnyIndexBuilder } from './indexes.ts';\nimport type { PrimaryKeyBuilder } from './primary-keys.ts';\nimport type { UniqueConstraintBuilder } from './unique-constraint.ts';\n\nexport type MsSqlTableExtraConfigValue =\n\t| AnyIndexBuilder\n\t| CheckBuilder\n\t| ForeignKeyBuilder\n\t| PrimaryKeyBuilder\n\t| UniqueConstraintBuilder;\n\nexport type MsSqlTableExtraConfig = Record<\n\tstring,\n\tMsSqlTableExtraConfigValue\n>;\n\nexport type TableConfig = TableConfigBase<MsSqlColumn>;\n\n/** @internal */\nexport const InlineForeignKeys = Symbol.for('drizzle:MsSqlInlineForeignKeys');\n\nexport class MsSqlTable<T extends TableConfig = TableConfig> extends Table<T> {\n\tstatic override readonly [entityKind]: string = 'MsSqlTable';\n\n\tdeclare protected $columns: T['columns'];\n\n\t/** @internal */\n\tstatic override readonly Symbol = Object.assign({}, Table.Symbol, {\n\t\tInlineForeignKeys: InlineForeignKeys as typeof InlineForeignKeys,\n\t});\n\n\t/** @internal */\n\toverride [Table.Symbol.Columns]!: NonNullable<T['columns']>;\n\n\t/** @internal */\n\t[InlineForeignKeys]: ForeignKey[] = [];\n\n\t/** @internal */\n\toverride [Table.Symbol.ExtraConfigBuilder]:\n\t\t| ((self: Record<string, MsSqlColumn>) => MsSqlTableExtraConfig)\n\t\t| undefined = undefined;\n}\n\nexport type AnyMsSqlTable<TPartial extends Partial<TableConfig> = {}> = MsSqlTable<\n\tUpdateTableConfig<TableConfig, TPartial>\n>;\n\nexport type MsSqlTableWithColumns<T extends TableConfig> =\n\t& MsSqlTable<T>\n\t& {\n\t\t[Key in keyof T['columns']]: T['columns'][Key];\n\t};\n\nexport function mssqlTableWithSchema<\n\tTTableName extends string,\n\tTSchemaName extends string | undefined,\n\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n>(\n\tname: TTableName,\n\tcolumns: TColumnsMap | ((columnTypes: MsSqlColumnBuilders) => TColumnsMap),\n\textraConfig:\n\t\t| ((\n\t\t\tself: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>,\n\t\t) => MsSqlTableExtraConfig | MsSqlTableExtraConfigValue[])\n\t\t| undefined,\n\tschema: TSchemaName,\n\tbaseName = name,\n): MsSqlTableWithColumns<{\n\tname: TTableName;\n\tschema: TSchemaName;\n\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\tdialect: 'mssql';\n}> {\n\tconst rawTable = new MsSqlTable<{\n\t\tname: TTableName;\n\t\tschema: TSchemaName;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>(name, schema, baseName);\n\n\tconst parsedColumns: TColumnsMap = typeof columns === 'function' ? columns(getMsSqlColumnBuilders()) : columns;\n\n\tconst builtColumns = Object.fromEntries(\n\t\tObject.entries(parsedColumns).map(([name, colBuilderBase]) => {\n\t\t\tconst colBuilder = colBuilderBase as MsSqlColumnBuilder;\n\t\t\tcolBuilder.setName(name);\n\t\t\tconst column = colBuilder.build(rawTable);\n\t\t\trawTable[InlineForeignKeys].push(...colBuilder.buildForeignKeys(column, rawTable));\n\t\t\treturn [name, column];\n\t\t}),\n\t) as unknown as BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\n\tconst table = Object.assign(rawTable, builtColumns);\n\n\ttable[Table.Symbol.Columns] = builtColumns;\n\ttable[Table.Symbol.ExtraConfigColumns] = builtColumns as unknown as BuildExtraConfigColumns<\n\t\tTTableName,\n\t\tTColumnsMap,\n\t\t'mssql'\n\t>;\n\n\tif (extraConfig) {\n\t\ttable[MsSqlTable.Symbol.ExtraConfigBuilder] = extraConfig as unknown as (\n\t\t\tself: Record<string, MsSqlColumn>,\n\t\t) => MsSqlTableExtraConfig;\n\t}\n\n\treturn table;\n}\n\nexport interface MsSqlTableFn<TSchema extends string | undefined = undefined> {\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[],\n\t): MsSqlTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>;\n\n\t<\n\t\tTTableName extends string,\n\t\tTColumnsMap extends Record<string, MsSqlColumnBuilderBase>,\n\t>(\n\t\tname: TTableName,\n\t\tcolumns: (columnTypes: MsSqlColumnBuilders) => TColumnsMap,\n\t\textraConfig?: (self: BuildExtraConfigColumns<TTableName, TColumnsMap, 'mssql'>) => MsSqlTableExtraConfigValue[],\n\t): MsSqlTableWithColumns<{\n\t\tname: TTableName;\n\t\tschema: TSchema;\n\t\tcolumns: BuildColumns<TTableName, TColumnsMap, 'mssql'>;\n\t\tdialect: 'mssql';\n\t}>;\n}\n\nexport const mssqlTable: MsSqlTableFn = (name, columns, extraConfig) => {\n\treturn mssqlTableWithSchema(name, columns, extraConfig, undefined, name);\n};\n\nexport function mssqlTableCreator(customizeTableName: (name: string) => string): MsSqlTableFn {\n\treturn (name, columns, extraConfig) => {\n\t\treturn mssqlTableWithSchema(customizeTableName(name) as typeof name, columns, extraConfig, undefined, name);\n\t};\n}\n"],"mappings":"AACA,SAAS,kBAAkB;AAC3B,SAAS,aAA0E;AAEnF,SAAS,8BAAwD;AAsB1D,MAAM,oBAAoB,OAAO,IAAI,gCAAgC;AAErE,MAAM,mBAAwD,MAAS;AAAA,EAC7E,QAA0B,UAAU,IAAY;AAAA;AAAA,EAKhD,OAAyB,SAAS,OAAO,OAAO,CAAC,GAAG,MAAM,QAAQ;AAAA,IACjE;AAAA,EACD,CAAC;AAAA;AAAA,EAGD,CAAU,MAAM,OAAO,OAAO;AAAA;AAAA,EAG9B,CAAC,iBAAiB,IAAkB,CAAC;AAAA;AAAA,EAGrC,CAAU,MAAM,OAAO,kBAAkB,IAE1B;AAChB;AAYO,SAAS,qBAKf,MACA,SACA,aAKA,QACA,WAAW,MAMT;AACF,QAAM,WAAW,IAAI,WAKlB,MAAM,QAAQ,QAAQ;AAEzB,QAAM,gBAA6B,OAAO,YAAY,aAAa,QAAQ,uBAAuB,CAAC,IAAI;AAEvG,QAAM,eAAe,OAAO;AAAA,IAC3B,OAAO,QAAQ,aAAa,EAAE,IAAI,CAAC,CAACA,OAAM,cAAc,MAAM;AAC7D,YAAM,aAAa;AACnB,iBAAW,QAAQA,KAAI;AACvB,YAAM,SAAS,WAAW,MAAM,QAAQ;AACxC,eAAS,iBAAiB,EAAE,KAAK,GAAG,WAAW,iBAAiB,QAAQ,QAAQ,CAAC;AACjF,aAAO,CAACA,OAAM,MAAM;AAAA,IACrB,CAAC;AAAA,EACF;AAEA,QAAM,QAAQ,OAAO,OAAO,UAAU,YAAY;AAElD,QAAM,MAAM,OAAO,OAAO,IAAI;AAC9B,QAAM,MAAM,OAAO,kBAAkB,IAAI;AAMzC,MAAI,aAAa;AAChB,UAAM,WAAW,OAAO,kBAAkB,IAAI;AAAA,EAG/C;AAEA,SAAO;AACR;AAgCO,MAAM,aAA2B,CAAC,MAAM,SAAS,gBAAgB;AACvE,SAAO,qBAAqB,MAAM,SAAS,aAAa,QAAW,IAAI;AACxE;AAEO,SAAS,kBAAkB,oBAA4D;AAC7F,SAAO,CAAC,MAAM,SAAS,gBAAgB;AACtC,WAAO,qBAAqB,mBAAmB,IAAI,GAAkB,SAAS,aAAa,QAAW,IAAI;AAAA,EAC3G;AACD;","names":["name"]}
|
|
@@ -0,0 +1,76 @@
|
|
|
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 unique_constraint_exports = {};
|
|
20
|
+
__export(unique_constraint_exports, {
|
|
21
|
+
UniqueConstraint: () => UniqueConstraint,
|
|
22
|
+
UniqueConstraintBuilder: () => UniqueConstraintBuilder,
|
|
23
|
+
UniqueOnConstraintBuilder: () => UniqueOnConstraintBuilder,
|
|
24
|
+
unique: () => unique
|
|
25
|
+
});
|
|
26
|
+
module.exports = __toCommonJS(unique_constraint_exports);
|
|
27
|
+
var import_entity = require("../entity.cjs");
|
|
28
|
+
function unique(name) {
|
|
29
|
+
return new UniqueOnConstraintBuilder(name);
|
|
30
|
+
}
|
|
31
|
+
class UniqueConstraintBuilder {
|
|
32
|
+
constructor(columns, name) {
|
|
33
|
+
this.name = name;
|
|
34
|
+
this.columns = columns;
|
|
35
|
+
}
|
|
36
|
+
static [import_entity.entityKind] = "MsSqlUniqueConstraintBuilder";
|
|
37
|
+
/** @internal */
|
|
38
|
+
columns;
|
|
39
|
+
/** @internal */
|
|
40
|
+
build(table) {
|
|
41
|
+
return new UniqueConstraint(table, this.columns, this.name);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
class UniqueOnConstraintBuilder {
|
|
45
|
+
static [import_entity.entityKind] = "MsSqlUniqueOnConstraintBuilder";
|
|
46
|
+
/** @internal */
|
|
47
|
+
name;
|
|
48
|
+
constructor(name) {
|
|
49
|
+
this.name = name;
|
|
50
|
+
}
|
|
51
|
+
on(...columns) {
|
|
52
|
+
return new UniqueConstraintBuilder(columns, this.name);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
class UniqueConstraint {
|
|
56
|
+
constructor(table, columns, name) {
|
|
57
|
+
this.table = table;
|
|
58
|
+
this.columns = columns;
|
|
59
|
+
this.name = name;
|
|
60
|
+
}
|
|
61
|
+
static [import_entity.entityKind] = "MsSqlUniqueConstraint";
|
|
62
|
+
columns;
|
|
63
|
+
name;
|
|
64
|
+
nullsNotDistinct = false;
|
|
65
|
+
getName() {
|
|
66
|
+
return this.name;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
70
|
+
0 && (module.exports = {
|
|
71
|
+
UniqueConstraint,
|
|
72
|
+
UniqueConstraintBuilder,
|
|
73
|
+
UniqueOnConstraintBuilder,
|
|
74
|
+
unique
|
|
75
|
+
});
|
|
76
|
+
//# sourceMappingURL=unique-constraint.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { MsSqlColumn } from './columns/index.ts';\nimport type { MsSqlTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: MsSqlColumn[];\n\n\tconstructor(\n\t\tcolumns: MsSqlColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\t/** @internal */\n\tbuild(table: MsSqlTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [MsSqlColumn, ...MsSqlColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraint';\n\n\treadonly columns: MsSqlColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: MsSqlTable, columns: MsSqlColumn[], name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,oBAA2B;AAIpB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,MAAM,wBAAwB;AAAA,EAMpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAVA,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAUA,MAAM,OAAqC;AAC1C,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,IAAI;AAAA,EAC3D;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,wBAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAA0C;AAC/C,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAmB,SAAwB,MAAe;AAA1D;AACpB,SAAK,UAAU;AACf,SAAK,OAAO;AAAA,EACb;AAAA,EATA,QAAiB,wBAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAOrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { entityKind } from "../entity.cjs";
|
|
2
|
+
import type { MsSqlColumn } from "./columns/index.cjs";
|
|
3
|
+
import type { MsSqlTable } from "./table.cjs";
|
|
4
|
+
export declare function unique(name?: string): UniqueOnConstraintBuilder;
|
|
5
|
+
export declare class UniqueConstraintBuilder {
|
|
6
|
+
private name?;
|
|
7
|
+
static readonly [entityKind]: string;
|
|
8
|
+
constructor(columns: MsSqlColumn[], name?: string | undefined);
|
|
9
|
+
}
|
|
10
|
+
export declare class UniqueOnConstraintBuilder {
|
|
11
|
+
static readonly [entityKind]: string;
|
|
12
|
+
constructor(name?: string);
|
|
13
|
+
on(...columns: [MsSqlColumn, ...MsSqlColumn[]]): UniqueConstraintBuilder;
|
|
14
|
+
}
|
|
15
|
+
export declare class UniqueConstraint {
|
|
16
|
+
readonly table: MsSqlTable;
|
|
17
|
+
static readonly [entityKind]: string;
|
|
18
|
+
readonly columns: MsSqlColumn[];
|
|
19
|
+
readonly name?: string;
|
|
20
|
+
readonly nullsNotDistinct: boolean;
|
|
21
|
+
constructor(table: MsSqlTable, columns: MsSqlColumn[], name?: string);
|
|
22
|
+
getName(): string | undefined;
|
|
23
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
import type { MsSqlColumn } from "./columns/index.js";
|
|
3
|
+
import type { MsSqlTable } from "./table.js";
|
|
4
|
+
export declare function unique(name?: string): UniqueOnConstraintBuilder;
|
|
5
|
+
export declare class UniqueConstraintBuilder {
|
|
6
|
+
private name?;
|
|
7
|
+
static readonly [entityKind]: string;
|
|
8
|
+
constructor(columns: MsSqlColumn[], name?: string | undefined);
|
|
9
|
+
}
|
|
10
|
+
export declare class UniqueOnConstraintBuilder {
|
|
11
|
+
static readonly [entityKind]: string;
|
|
12
|
+
constructor(name?: string);
|
|
13
|
+
on(...columns: [MsSqlColumn, ...MsSqlColumn[]]): UniqueConstraintBuilder;
|
|
14
|
+
}
|
|
15
|
+
export declare class UniqueConstraint {
|
|
16
|
+
readonly table: MsSqlTable;
|
|
17
|
+
static readonly [entityKind]: string;
|
|
18
|
+
readonly columns: MsSqlColumn[];
|
|
19
|
+
readonly name?: string;
|
|
20
|
+
readonly nullsNotDistinct: boolean;
|
|
21
|
+
constructor(table: MsSqlTable, columns: MsSqlColumn[], name?: string);
|
|
22
|
+
getName(): string | undefined;
|
|
23
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { entityKind } from "../entity.js";
|
|
2
|
+
function unique(name) {
|
|
3
|
+
return new UniqueOnConstraintBuilder(name);
|
|
4
|
+
}
|
|
5
|
+
class UniqueConstraintBuilder {
|
|
6
|
+
constructor(columns, name) {
|
|
7
|
+
this.name = name;
|
|
8
|
+
this.columns = columns;
|
|
9
|
+
}
|
|
10
|
+
static [entityKind] = "MsSqlUniqueConstraintBuilder";
|
|
11
|
+
/** @internal */
|
|
12
|
+
columns;
|
|
13
|
+
/** @internal */
|
|
14
|
+
build(table) {
|
|
15
|
+
return new UniqueConstraint(table, this.columns, this.name);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
class UniqueOnConstraintBuilder {
|
|
19
|
+
static [entityKind] = "MsSqlUniqueOnConstraintBuilder";
|
|
20
|
+
/** @internal */
|
|
21
|
+
name;
|
|
22
|
+
constructor(name) {
|
|
23
|
+
this.name = name;
|
|
24
|
+
}
|
|
25
|
+
on(...columns) {
|
|
26
|
+
return new UniqueConstraintBuilder(columns, this.name);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
class UniqueConstraint {
|
|
30
|
+
constructor(table, columns, name) {
|
|
31
|
+
this.table = table;
|
|
32
|
+
this.columns = columns;
|
|
33
|
+
this.name = name;
|
|
34
|
+
}
|
|
35
|
+
static [entityKind] = "MsSqlUniqueConstraint";
|
|
36
|
+
columns;
|
|
37
|
+
name;
|
|
38
|
+
nullsNotDistinct = false;
|
|
39
|
+
getName() {
|
|
40
|
+
return this.name;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
export {
|
|
44
|
+
UniqueConstraint,
|
|
45
|
+
UniqueConstraintBuilder,
|
|
46
|
+
UniqueOnConstraintBuilder,
|
|
47
|
+
unique
|
|
48
|
+
};
|
|
49
|
+
//# sourceMappingURL=unique-constraint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../src/mssql-core/unique-constraint.ts"],"sourcesContent":["import { entityKind } from '~/entity.ts';\nimport type { MsSqlColumn } from './columns/index.ts';\nimport type { MsSqlTable } from './table.ts';\n\nexport function unique(name?: string): UniqueOnConstraintBuilder {\n\treturn new UniqueOnConstraintBuilder(name);\n}\n\nexport class UniqueConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraintBuilder';\n\n\t/** @internal */\n\tcolumns: MsSqlColumn[];\n\n\tconstructor(\n\t\tcolumns: MsSqlColumn[],\n\t\tprivate name?: string,\n\t) {\n\t\tthis.columns = columns;\n\t}\n\n\t/** @internal */\n\tbuild(table: MsSqlTable): UniqueConstraint {\n\t\treturn new UniqueConstraint(table, this.columns, this.name);\n\t}\n}\n\nexport class UniqueOnConstraintBuilder {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueOnConstraintBuilder';\n\n\t/** @internal */\n\tname?: string;\n\n\tconstructor(\n\t\tname?: string,\n\t) {\n\t\tthis.name = name;\n\t}\n\n\ton(...columns: [MsSqlColumn, ...MsSqlColumn[]]) {\n\t\treturn new UniqueConstraintBuilder(columns, this.name);\n\t}\n}\n\nexport class UniqueConstraint {\n\tstatic readonly [entityKind]: string = 'MsSqlUniqueConstraint';\n\n\treadonly columns: MsSqlColumn[];\n\treadonly name?: string;\n\treadonly nullsNotDistinct: boolean = false;\n\n\tconstructor(readonly table: MsSqlTable, columns: MsSqlColumn[], name?: string) {\n\t\tthis.columns = columns;\n\t\tthis.name = name;\n\t}\n\n\tgetName() {\n\t\treturn this.name;\n\t}\n}\n"],"mappings":"AAAA,SAAS,kBAAkB;AAIpB,SAAS,OAAO,MAA0C;AAChE,SAAO,IAAI,0BAA0B,IAAI;AAC1C;AAEO,MAAM,wBAAwB;AAAA,EAMpC,YACC,SACQ,MACP;AADO;AAER,SAAK,UAAU;AAAA,EAChB;AAAA,EAVA,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA;AAAA,EAUA,MAAM,OAAqC;AAC1C,WAAO,IAAI,iBAAiB,OAAO,KAAK,SAAS,KAAK,IAAI;AAAA,EAC3D;AACD;AAEO,MAAM,0BAA0B;AAAA,EACtC,QAAiB,UAAU,IAAY;AAAA;AAAA,EAGvC;AAAA,EAEA,YACC,MACC;AACD,SAAK,OAAO;AAAA,EACb;AAAA,EAEA,MAAM,SAA0C;AAC/C,WAAO,IAAI,wBAAwB,SAAS,KAAK,IAAI;AAAA,EACtD;AACD;AAEO,MAAM,iBAAiB;AAAA,EAO7B,YAAqB,OAAmB,SAAwB,MAAe;AAA1D;AACpB,SAAK,UAAU;AACf,SAAK,OAAO;AAAA,EACb;AAAA,EATA,QAAiB,UAAU,IAAY;AAAA,EAE9B;AAAA,EACA;AAAA,EACA,mBAA4B;AAAA,EAOrC,UAAU;AACT,WAAO,KAAK;AAAA,EACb;AACD;","names":[]}
|