@bleedingdev/modern-js-create 3.5.0-ultramodern.10 → 3.5.0-ultramodern.12

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.
Files changed (25) hide show
  1. package/dist/cjs/ultramodern-tooling/commands.cjs +176 -2
  2. package/dist/cjs/ultramodern-workspace/app-files.cjs +8 -11
  3. package/dist/cjs/ultramodern-workspace/package-json.cjs +14 -6
  4. package/dist/cjs/ultramodern-workspace/versions.cjs +5 -0
  5. package/dist/cjs/ultramodern-workspace/workspace-scripts.cjs +1 -0
  6. package/dist/cjs/ultramodern-workspace/write-workspace.cjs +1 -0
  7. package/dist/esm/ultramodern-tooling/commands.js +177 -3
  8. package/dist/esm/ultramodern-workspace/app-files.js +8 -11
  9. package/dist/esm/ultramodern-workspace/package-json.js +4 -6
  10. package/dist/esm/ultramodern-workspace/versions.js +3 -1
  11. package/dist/esm/ultramodern-workspace/workspace-scripts.js +2 -1
  12. package/dist/esm/ultramodern-workspace/write-workspace.js +2 -1
  13. package/dist/esm-node/ultramodern-tooling/commands.js +177 -3
  14. package/dist/esm-node/ultramodern-workspace/app-files.js +8 -11
  15. package/dist/esm-node/ultramodern-workspace/package-json.js +4 -6
  16. package/dist/esm-node/ultramodern-workspace/versions.js +3 -1
  17. package/dist/esm-node/ultramodern-workspace/workspace-scripts.js +2 -1
  18. package/dist/esm-node/ultramodern-workspace/write-workspace.js +2 -1
  19. package/dist/types/ultramodern-workspace/versions.d.ts +2 -0
  20. package/package.json +3 -3
  21. package/template-workspace/.gitignore.handlebars +2 -0
  22. package/template-workspace/patches/drizzle-orm-ts7-strict-declarations.patch +452 -0
  23. package/template-workspace/patches/effect-schema-error-type-id.patch +18 -0
  24. package/template-workspace/pnpm-workspace.yaml.handlebars +1 -0
  25. package/templates/workspace-scripts/validate-ultramodern-workspace.mjs.handlebars +37 -2
@@ -0,0 +1,452 @@
1
+ diff --git a/arktype/column.d.ts b/arktype/column.d.ts
2
+ index 6ee3575..65adb61 100644
3
+ --- a/arktype/column.d.ts
4
+ +++ b/arktype/column.d.ts
5
+ @@ -3,6 +3,7 @@ import * as arktype from "arktype";
6
+ import { Type } from "arktype";
7
+ import * as arktype_internal_variants_object_ts0 from "arktype/internal/variants/object.ts";
8
+ import * as arktype_internal_variants_string_ts0 from "arktype/internal/variants/string.ts";
9
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
10
+
11
+ //#region src/arktype/column.d.ts
12
+ declare const literalSchema: arktype.BaseType<string | number | boolean | null, {}>;
13
+ diff --git a/better-sqlite3/driver.d.ts b/better-sqlite3/driver.d.ts
14
+ index 02ff3ee..de2ccc0 100644
15
+ --- a/better-sqlite3/driver.d.ts
16
+ +++ b/better-sqlite3/driver.d.ts
17
+ @@ -4,6 +4,7 @@ import { SQLiteAsyncDatabase } from "../sqlite-core/async/db.js";
18
+ import { Database, Options } from "better-sqlite3";
19
+ import { AnyRelations, EmptyRelations } from "../relations.js";
20
+ import { DrizzleSQLiteConfig } from "../sqlite-core/utils.js";
21
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
22
+
23
+ //#region src/better-sqlite3/driver.d.ts
24
+ type DrizzleBetterSQLite3DatabaseConfig = ({
25
+ diff --git a/cockroach-core/policies.d.ts b/cockroach-core/policies.d.ts
26
+ index 3d00007..d2f3f2a 100644
27
+ --- a/cockroach-core/policies.d.ts
28
+ +++ b/cockroach-core/policies.d.ts
29
+ @@ -12,7 +12,7 @@ interface CockroachPolicyConfig {
30
+ using?: SQL;
31
+ withCheck?: SQL;
32
+ }
33
+ -declare class CockroachPolicy implements CockroachPolicyConfig {
34
+ +declare class CockroachPolicy {
35
+ readonly name: string;
36
+ static readonly [entityKind]: string;
37
+ readonly as: CockroachPolicyConfig['as'];
38
+ diff --git a/cockroach-core/roles.d.ts b/cockroach-core/roles.d.ts
39
+ index d797efa..1dbb593 100644
40
+ --- a/cockroach-core/roles.d.ts
41
+ +++ b/cockroach-core/roles.d.ts
42
+ @@ -5,7 +5,7 @@ interface CockroachRoleConfig {
43
+ createDb?: boolean;
44
+ createRole?: boolean;
45
+ }
46
+ -declare class CockroachRole implements CockroachRoleConfig {
47
+ +declare class CockroachRole {
48
+ readonly name: string;
49
+ static readonly [entityKind]: string;
50
+ constructor(name: string, config?: CockroachRoleConfig);
51
+ diff --git a/column-builder.d.ts b/column-builder.d.ts
52
+ index ef98a22..6f6703b 100644
53
+ --- a/column-builder.d.ts
54
+ +++ b/column-builder.d.ts
55
+ @@ -143,11 +143,12 @@ type IsIdentity<T, TType extends 'always' | 'byDefault'> = T & {
56
+ identity: TType;
57
+ };
58
+ };
59
+ -interface ColumnBuilderBase<out T extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>> {
60
+ +interface ColumnBuilderBase<T extends ColumnBuilderBaseConfig<ColumnType> = ColumnBuilderBaseConfig<ColumnType>> {
61
+ _: T;
62
+ }
63
+ -declare abstract class ColumnBuilder<out T extends ColumnBuilderBaseConfig<ColumnType>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> implements ColumnBuilderBase<T> {
64
+ +declare abstract class ColumnBuilder<T extends ColumnBuilderBaseConfig<ColumnType>, TRuntimeConfig extends object = object, TExtraConfig extends ColumnBuilderExtraConfig = ColumnBuilderExtraConfig> implements ColumnBuilderBase<T> {
65
+ static readonly [entityKind]: string;
66
+ + protected config: ColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig;
67
+ _: T;
68
+ constructor(name: string, dataType: ColumnType, columnType: string);
69
+ /**
70
+ diff --git a/column.d.ts b/column.d.ts
71
+ index 1ca227f..1c9f1bf 100644
72
+ --- a/column.d.ts
73
+ +++ b/column.d.ts
74
+ @@ -21,10 +21,10 @@ interface ColumnBaseConfig<TDataType extends ColumnType> {
75
+ generated: unknown;
76
+ identity: undefined | 'always' | 'byDefault';
77
+ }
78
+ -interface Column<out T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, out TRuntimeConfig extends object = object> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {
79
+ +interface Column<T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, TRuntimeConfig extends object = object> extends DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {
80
+ as(alias: string): this;
81
+ }
82
+ -declare abstract class Column<out T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, out TRuntimeConfig extends object = object> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {
83
+ +declare abstract class Column<T extends ColumnBaseConfig<ColumnType> = ColumnBaseConfig<ColumnType>, TRuntimeConfig extends object = object> implements DriverValueMapper<T['data'], T['driverParam']>, SQLWrapper {
84
+ static readonly [entityKind]: string;
85
+ readonly _: T;
86
+ readonly name: string;
87
+ diff --git a/effect-schema/column.d.ts b/effect-schema/column.d.ts
88
+ index 11aa6de..f6a1750 100644
89
+ --- a/effect-schema/column.d.ts
90
+ +++ b/effect-schema/column.d.ts
91
+ @@ -1,6 +1,7 @@
92
+ import { Column } from "../column.js";
93
+ import { Schema, Top } from "effect/Schema";
94
+ import { Schema as Schema$1 } from "effect";
95
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
96
+
97
+ //#region src/effect-schema/column.d.ts
98
+ declare const literalSchema: Schema$1.Union<readonly [Schema$1.String, Schema$1.Number, Schema$1.Boolean, Schema$1.Null]>;
99
+ diff --git a/mssql-core/columns/binary.d.ts b/mssql-core/columns/binary.d.ts
100
+ index 926d12b..f0e8ad4 100644
101
+ --- a/mssql-core/columns/binary.d.ts
102
+ +++ b/mssql-core/columns/binary.d.ts
103
+ @@ -1,6 +1,7 @@
104
+ import { MsSqlColumn, MsSqlColumnBuilder } from "./common.js";
105
+ import { entityKind } from "../../entity.js";
106
+ import { ColumnBaseConfig } from "../../column.js";
107
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
108
+
109
+ //#region src/mssql-core/columns/binary.d.ts
110
+ declare class MsSqlBinaryBuilder extends MsSqlColumnBuilder<{
111
+ diff --git a/mssql-core/columns/varbinary.d.ts b/mssql-core/columns/varbinary.d.ts
112
+ index 86cf734..89777a0 100644
113
+ --- a/mssql-core/columns/varbinary.d.ts
114
+ +++ b/mssql-core/columns/varbinary.d.ts
115
+ @@ -1,6 +1,7 @@
116
+ import { MsSqlColumn, MsSqlColumnBuilder } from "./common.js";
117
+ import { entityKind } from "../../entity.js";
118
+ import { ColumnBaseConfig } from "../../column.js";
119
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
120
+
121
+ //#region src/mssql-core/columns/varbinary.d.ts
122
+ declare class MsSqlVarBinaryBuilder extends MsSqlColumnBuilder<{
123
+ diff --git a/mysql-core/codecs.d.ts b/mysql-core/codecs.d.ts
124
+ index 82688dc..c3214ef 100644
125
+ --- a/mysql-core/codecs.d.ts
126
+ +++ b/mysql-core/codecs.d.ts
127
+ @@ -1,6 +1,7 @@
128
+ import { PartialWithUndefined } from "../utils.js";
129
+ import { CastCodec, Codecs } from "../codecs.js";
130
+ import * as __sql_sql_ts0 from "../sql/sql.js";
131
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
132
+
133
+ //#region src/mysql-core/codecs.d.ts
134
+ type MySqlType = 'tinyint' | 'smallint' | 'mediumint' | 'int' | 'bigint' | 'bigint:number' | 'bigint:string' | 'serial' | 'decimal' | 'decimal:number' | 'decimal:bigint' | 'float' | 'double' | 'real' | 'bit' | 'boolean' | 'char' | 'varchar' | 'tinytext' | 'text' | 'mediumtext' | 'longtext' | 'enum' | 'set' | 'binary' | 'varbinary' | 'tinyblob' | 'tinyblob:buffer' | 'blob' | 'blob:buffer' | 'mediumblob' | 'mediumblob:buffer' | 'longblob' | 'longblob:buffer' | 'date' | 'date:string' | 'datetime' | 'datetime:string' | 'time' | 'timestamp' | 'timestamp:string' | 'year' | 'json' | 'geometry' | 'point' | 'linestring' | 'polygon' | 'multipoint' | 'multilinestring' | 'multipolygon' | 'geometrycollection';
135
+ diff --git a/mysql-core/columns/blob.d.ts b/mysql-core/columns/blob.d.ts
136
+ index b351f03..5e5354a 100644
137
+ --- a/mysql-core/columns/blob.d.ts
138
+ +++ b/mysql-core/columns/blob.d.ts
139
+ @@ -2,6 +2,7 @@ import { MySqlColumn, MySqlColumnBuilder } from "./common.js";
140
+ import { entityKind } from "../../entity.js";
141
+ import { Equal } from "../../utils.js";
142
+ import { ColumnBaseConfig } from "../../column.js";
143
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
144
+
145
+ //#region src/mysql-core/columns/blob.d.ts
146
+ type MySqlBlobColumnType = 'tinyblob' | 'blob' | 'mediumblob' | 'longblob';
147
+ diff --git a/pg-core/codecs.d.ts b/pg-core/codecs.d.ts
148
+ index 4cade44..836270e 100644
149
+ --- a/pg-core/codecs.d.ts
150
+ +++ b/pg-core/codecs.d.ts
151
+ @@ -3,6 +3,7 @@ import { PartialWithUndefined } from "../utils.js";
152
+ import { CastArrayCodec, CastCodec, Codecs, NormalizeArrayCodec, NormalizeCodec } from "../codecs.js";
153
+ import * as __sql_sql_ts0 from "../sql/sql.js";
154
+ import { SQLChunk } from "../sql/sql.js";
155
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
156
+
157
+ //#region src/pg-core/codecs.d.ts
158
+ type PostGISType = 'geometry(point)' | 'geometry(pointz)' | 'geometry(pointm)' | 'geometry(pointzm)' | 'geometry(linestring)' | 'geometry(linestringz)' | 'geometry(linestringm)' | 'geometry(linestringzm)' | 'geometry(polygon)' | 'geometry(polygonz)' | 'geometry(polygonm)' | 'geometry(polygonzm)' | 'geometry(multipoint)' | 'geometry(multipointz)' | 'geometry(multipointm)' | 'geometry(multipointzm)' | 'geometry(multilinestring)' | 'geometry(multilinestringz)' | 'geometry(multilinestringm)' | 'geometry(multilinestringzm)' | 'geometry(multipolygon)' | 'geometry(multipolygonz)' | 'geometry(multipolygonm)' | 'geometry(multipolygonzm)' | 'geometry(geometrycollection)' | 'geometry(geometrycollectionz)' | 'geometry(geometrycollectionm)' | 'geometry(geometrycollectionzm)' | 'geometry(circularstring)' | 'geometry(circularstringz)' | 'geometry(circularstringm)' | 'geometry(circularstringzm)' | 'geometry(compoundcurve)' | 'geometry(compoundcurvez)' | 'geometry(compoundcurvem)' | 'geometry(compoundcurvezm)' | 'geometry(curvepolygon)' | 'geometry(curvepolygonz)' | 'geometry(curvepolygonm)' | 'geometry(curvepolygonzm)' | 'geometry(multicurve)' | 'geometry(multicurvez)' | 'geometry(multicurvem)' | 'geometry(multicurvezm)' | 'geometry(multisurface)' | 'geometry(multisurfacez)' | 'geometry(multisurfacem)' | 'geometry(multisurfacezm)' | 'geometry(polyhedralsurface)' | 'geometry(polyhedralsurfacez)' | 'geometry(polyhedralsurfacem)' | 'geometry(polyhedralsurfacezm)' | 'geometry(tin)' | 'geometry(tinz)' | 'geometry(tinm)' | 'geometry(tinzm)' | 'geometry(triangle)' | 'geometry(trianglez)' | 'geometry(trianglem)' | 'geometry(trianglezm)' | 'geography(point)' | 'geography(linestring)' | 'geography(polygon)' | 'geography(multipoint)' | 'geography(multilinestring)' | 'geography(multipolygon)' | 'geography(geometrycollection)' | 'box2d' | 'box3d' | 'raster';
159
+ diff --git a/pg-core/columns/bytea.d.ts b/pg-core/columns/bytea.d.ts
160
+ index bb1dd83..00e56e0 100644
161
+ --- a/pg-core/columns/bytea.d.ts
162
+ +++ b/pg-core/columns/bytea.d.ts
163
+ @@ -1,5 +1,6 @@
164
+ import { PgColumn, PgColumnBuilder } from "./common.js";
165
+ import { entityKind } from "../../entity.js";
166
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
167
+
168
+ //#region src/pg-core/columns/bytea.d.ts
169
+ declare class PgByteaBuilder extends PgColumnBuilder<{
170
+ diff --git a/pg-core/columns/common.d.ts b/pg-core/columns/common.d.ts
171
+ index 440bc5c..6ed0933 100644
172
+ --- a/pg-core/columns/common.d.ts
173
+ +++ b/pg-core/columns/common.d.ts
174
+ @@ -44,7 +44,7 @@ interface PgColumnBuilderRuntimeConfig<TData> {
175
+ generatedIdentity: GeneratedIdentityConfig | undefined;
176
+ dimensions?: PgArrayDimension;
177
+ }
178
+ -interface PgColumnBaseConfig<out TDataType extends ColumnType = ColumnType> {
179
+ +interface PgColumnBaseConfig<TDataType extends ColumnType = ColumnType> {
180
+ name: string;
181
+ dataType: TDataType;
182
+ tableName: string;
183
+ @@ -111,7 +111,7 @@ type GetBaseData<T> = T extends {
184
+ } ? U : T extends {
185
+ data: infer D;
186
+ } ? D : unknown;
187
+ -type ResolvePgColumnConfig<out T extends PgColumnBuilderConfig, out TTableName extends string, out TData = (T['dimensions'] extends 1 | 2 | 3 | 4 | 5 ? WrapArray<GetBaseData<T>, T['dimensions']> : GetBaseData<T>)> = {
188
+ +type ResolvePgColumnConfig<T extends PgColumnBuilderConfig, TTableName extends string, TData = (T['dimensions'] extends 1 | 2 | 3 | 4 | 5 ? WrapArray<GetBaseData<T>, T['dimensions']> : GetBaseData<T>)> = {
189
+ name: string;
190
+ tableName: TTableName;
191
+ dataType: T['dataType'];
192
+ @@ -132,8 +132,8 @@ interface AnyPgColumnBuilder {
193
+ readonly _: PgColumnBuilderConfig;
194
+ }
195
+ type PgBuildColumn<TTableName extends string, TBuilder extends AnyPgColumnBuilder, TBuiltConfig extends PgColumnBaseConfig<ColumnType> = ResolvePgColumnConfig<TBuilder['_'], TTableName>> = PgColumn<ColumnType, TBuiltConfig, {}>;
196
+ -type PgBuildColumns<out TTableName extends string, out TConfigMap extends Record<string, AnyPgColumnBuilder>> = { [Key in keyof TConfigMap]: PgBuildColumn<TTableName, TConfigMap[Key]> } & {};
197
+ -type PgBuildExtraConfigColumns<out TConfigMap extends Record<string, AnyPgColumnBuilder>> = { [Key in keyof TConfigMap]: ExtraConfigColumn } & {};
198
+ +type PgBuildColumns<TTableName extends string, TConfigMap extends Record<string, AnyPgColumnBuilder>> = { [Key in keyof TConfigMap]: PgBuildColumn<TTableName, TConfigMap[Key]> } & {};
199
+ +type PgBuildExtraConfigColumns<TConfigMap extends Record<string, AnyPgColumnBuilder>> = { [Key in keyof TConfigMap]: ExtraConfigColumn } & {};
200
+ type PgColumns = Record<string, PgColumn>;
201
+ interface ReferenceConfig {
202
+ ref: () => PgColumn;
203
+ @@ -143,7 +143,7 @@ interface ReferenceConfig {
204
+ onDelete?: UpdateDeleteAction;
205
+ };
206
+ }
207
+ -declare abstract class PgColumnBuilder<out T extends PgColumnBuilderConfig = PgColumnBuilderConfig, out TRuntimeConfig extends object = object> {
208
+ +declare abstract class PgColumnBuilder<T extends PgColumnBuilderConfig = PgColumnBuilderConfig, TRuntimeConfig extends object = object> {
209
+ static readonly [entityKind]: string;
210
+ readonly _: T;
211
+ private foreignKeyConfigs;
212
+ @@ -256,7 +256,7 @@ declare abstract class PgColumnBuilder<out T extends PgColumnBuilderConfig = PgC
213
+ }): this;
214
+ generatedAlwaysAs(as: SQL | (() => SQL)): SetHasGenerated<this>;
215
+ }
216
+ -declare abstract class PgColumn<out TColumnType extends ColumnType = any, out T extends PgColumnBaseConfig<TColumnType> = PgColumnBaseConfig<TColumnType>, out TRuntimeConfig extends object = {}> extends Column<T, TRuntimeConfig> {
217
+ +declare abstract class PgColumn<TColumnType extends ColumnType = any, T extends PgColumnBaseConfig<TColumnType> = PgColumnBaseConfig<TColumnType>, TRuntimeConfig extends object = {}> extends Column<T, TRuntimeConfig> {
218
+ static readonly [entityKind]: string;
219
+ readonly dimensions: PgArrayDimension;
220
+ constructor(table: PgTable, config: PgColumnBuilderRuntimeConfig<T['data']> & TRuntimeConfig);
221
+ @@ -266,7 +266,7 @@ type IndexedExtraConfigType = {
222
+ nulls?: 'first' | 'last';
223
+ opClass?: string;
224
+ };
225
+ -declare class ExtraConfigColumn<out T extends PgColumnBaseConfig<ColumnType> = PgColumnBaseConfig<ColumnType>> extends PgColumn<ColumnType, T, IndexedExtraConfigType> {
226
+ +declare class ExtraConfigColumn<T extends PgColumnBaseConfig<ColumnType> = PgColumnBaseConfig<ColumnType>> extends PgColumn<ColumnType, T, IndexedExtraConfigType> {
227
+ static readonly [entityKind]: string;
228
+ /** @itnernal */
229
+ readonly codec: undefined;
230
+ diff --git a/pg-core/columns/date.common.d.ts b/pg-core/columns/date.common.d.ts
231
+ index ac7d730..058a76b 100644
232
+ --- a/pg-core/columns/date.common.d.ts
233
+ +++ b/pg-core/columns/date.common.d.ts
234
+ @@ -2,7 +2,7 @@ import { PgColumnBuilder, PgColumnBuilderConfig, SetHasDefault } from "./common.
235
+ import { entityKind } from "../../entity.js";
236
+
237
+ //#region src/pg-core/columns/date.common.d.ts
238
+ -declare abstract class PgDateColumnBuilder<out T extends PgColumnBuilderConfig = PgColumnBuilderConfig, out TRuntimeConfig extends object = object> extends PgColumnBuilder<T, TRuntimeConfig> {
239
+ +declare abstract class PgDateColumnBuilder<T extends PgColumnBuilderConfig = PgColumnBuilderConfig, TRuntimeConfig extends object = object> extends PgColumnBuilder<T, TRuntimeConfig> {
240
+ static readonly [entityKind]: string;
241
+ /**
242
+ * Adds a `default now()` clause to the column definition.
243
+ diff --git a/pg-core/columns/int.common.d.ts b/pg-core/columns/int.common.d.ts
244
+ index 1f84a02..a43b929 100644
245
+ --- a/pg-core/columns/int.common.d.ts
246
+ +++ b/pg-core/columns/int.common.d.ts
247
+ @@ -3,7 +3,7 @@ import { HasIdentity, PgColumnBuilder, PgColumnBuilderConfig } from "./common.js
248
+ import { entityKind } from "../../entity.js";
249
+
250
+ //#region src/pg-core/columns/int.common.d.ts
251
+ -declare abstract class PgIntColumnBuilder<out T extends PgColumnBuilderConfig = PgColumnBuilderConfig, out TRuntimeConfig extends object = object> extends PgColumnBuilder<T, TRuntimeConfig> {
252
+ +declare abstract class PgIntColumnBuilder<T extends PgColumnBuilderConfig = PgColumnBuilderConfig, TRuntimeConfig extends object = object> extends PgColumnBuilder<T, TRuntimeConfig> {
253
+ static readonly [entityKind]: string;
254
+ /**
255
+ * Adds an `ALWAYS AS IDENTITY` clause to the column definition.
256
+ diff --git a/pg-core/policies.d.ts b/pg-core/policies.d.ts
257
+ index 8dddf4c..8cf30d5 100644
258
+ --- a/pg-core/policies.d.ts
259
+ +++ b/pg-core/policies.d.ts
260
+ @@ -12,7 +12,7 @@ interface PgPolicyConfig {
261
+ using?: SQL;
262
+ withCheck?: SQL;
263
+ }
264
+ -declare class PgPolicy implements PgPolicyConfig {
265
+ +declare class PgPolicy {
266
+ readonly name: string;
267
+ static readonly [entityKind]: string;
268
+ readonly as: PgPolicyConfig['as'];
269
+ diff --git a/pg-core/roles.d.ts b/pg-core/roles.d.ts
270
+ index 24534db..2fa36a4 100644
271
+ --- a/pg-core/roles.d.ts
272
+ +++ b/pg-core/roles.d.ts
273
+ @@ -6,7 +6,7 @@ interface PgRoleConfig {
274
+ createRole?: boolean;
275
+ inherit?: boolean;
276
+ }
277
+ -declare class PgRole implements PgRoleConfig {
278
+ +declare class PgRole {
279
+ readonly name: string;
280
+ static readonly [entityKind]: string;
281
+ constructor(name: string, config?: PgRoleConfig);
282
+ diff --git a/pg-core/table.d.ts b/pg-core/table.d.ts
283
+ index adccbf6..f9b6ebf 100644
284
+ --- a/pg-core/table.d.ts
285
+ +++ b/pg-core/table.d.ts
286
+ @@ -14,7 +14,7 @@ import { Casing } from "../casing.js";
287
+ type PgTableExtraConfigValue = AnyIndexBuilder | CheckBuilder | ForeignKeyBuilder | PrimaryKeyBuilder | UniqueConstraintBuilder | PgPolicy;
288
+ type PgTableExtraConfig = Record<string, PgTableExtraConfigValue>;
289
+ type TableConfig = TableConfig$1<PgColumns>;
290
+ -declare class PgTable<out T extends TableConfig = TableConfig> extends Table<T> {
291
+ +declare class PgTable<T extends TableConfig = TableConfig> extends Table<T> {
292
+ static readonly [entityKind]: string;
293
+ }
294
+ type AnyPgTable<TPartial extends Partial<TableConfig> = {}> = PgTable<UpdateTableConfig<TableConfig, TPartial>>;
295
+ diff --git a/singlestore-core/columns/binary.d.ts b/singlestore-core/columns/binary.d.ts
296
+ index dd01a90..0c882c5 100644
297
+ --- a/singlestore-core/columns/binary.d.ts
298
+ +++ b/singlestore-core/columns/binary.d.ts
299
+ @@ -1,6 +1,7 @@
300
+ import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
301
+ import { entityKind } from "../../entity.js";
302
+ import { ColumnBaseConfig } from "../../column.js";
303
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
304
+
305
+ //#region src/singlestore-core/columns/binary.d.ts
306
+ declare class SingleStoreBinaryBuilder extends SingleStoreColumnBuilder<{
307
+ diff --git a/singlestore-core/columns/varbinary.d.ts b/singlestore-core/columns/varbinary.d.ts
308
+ index 7850009..89f380f 100644
309
+ --- a/singlestore-core/columns/varbinary.d.ts
310
+ +++ b/singlestore-core/columns/varbinary.d.ts
311
+ @@ -1,6 +1,7 @@
312
+ import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
313
+ import { entityKind } from "../../entity.js";
314
+ import { ColumnBaseConfig } from "../../column.js";
315
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
316
+
317
+ //#region src/singlestore-core/columns/varbinary.d.ts
318
+ declare class SingleStoreVarBinaryBuilder extends SingleStoreColumnBuilder<{
319
+ diff --git a/singlestore-core/columns/vector.d.ts b/singlestore-core/columns/vector.d.ts
320
+ index d129b98..c72325e 100644
321
+ --- a/singlestore-core/columns/vector.d.ts
322
+ +++ b/singlestore-core/columns/vector.d.ts
323
+ @@ -2,6 +2,7 @@ import { SingleStoreColumn, SingleStoreColumnBuilder } from "./common.js";
324
+ import { entityKind } from "../../entity.js";
325
+ import { Equal } from "../../utils.js";
326
+ import { ColumnBaseConfig } from "../../column.js";
327
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
328
+
329
+ //#region src/singlestore-core/columns/vector.d.ts
330
+ declare class SingleStoreVectorBuilder extends SingleStoreColumnBuilder<{
331
+ diff --git a/sqlite-core/columns/blob.d.ts b/sqlite-core/columns/blob.d.ts
332
+ index aaf8ade..c76d313 100644
333
+ --- a/sqlite-core/columns/blob.d.ts
334
+ +++ b/sqlite-core/columns/blob.d.ts
335
+ @@ -2,6 +2,7 @@ import { SQLiteColumn, SQLiteColumnBuilder } from "./common.js";
336
+ import { entityKind } from "../../entity.js";
337
+ import { Equal } from "../../utils.js";
338
+ import { ColumnBaseConfig } from "../../column.js";
339
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
340
+
341
+ //#region src/sqlite-core/columns/blob.d.ts
342
+ type BlobMode = 'buffer' | 'json' | 'bigint';
343
+ diff --git a/sqlite-core/columns/custom.d.ts b/sqlite-core/columns/custom.d.ts
344
+ index c9b5ae9..344bd59 100644
345
+ --- a/sqlite-core/columns/custom.d.ts
346
+ +++ b/sqlite-core/columns/custom.d.ts
347
+ @@ -5,6 +5,7 @@ import { ColumnBaseConfig } from "../../column.js";
348
+ import { SQL, SQLGenerator } from "../../sql/sql.js";
349
+ import { ColumnBuilderBaseConfig } from "../../column-builder.js";
350
+ import { AnySQLiteTable } from "../table.js";
351
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
352
+
353
+ //#region src/sqlite-core/columns/custom.d.ts
354
+ type ConvertCustomConfig<T extends Partial<CustomTypeValues>> = {
355
+ diff --git a/sqlite-core/query-builders/select.types.d.ts b/sqlite-core/query-builders/select.types.d.ts
356
+ index d427f70..e74334b 100644
357
+ --- a/sqlite-core/query-builders/select.types.d.ts
358
+ +++ b/sqlite-core/query-builders/select.types.d.ts
359
+ @@ -77,7 +77,7 @@ type SQLiteSelectKind<T extends SQLiteSelectHKTBase, TTableName extends string |
360
+ interface SQLiteSelectQueryBuilderHKT extends SQLiteSelectHKTBase {
361
+ _type: SQLiteSelectBase<SQLiteSelectQueryBuilderHKT, this['tableName'], this['runResult'], Assume<this['selection'], ColumnsSelection>, this['selectMode'], Assume<this['nullabilityMap'], Record<string, JoinNullability>>, this['dynamic'], this['excludedMethods'], Assume<this['result'], any[]>, Assume<this['selectedFields'], ColumnsSelection>>;
362
+ }
363
+ -type SQLiteSetOperatorExcludedMethods = 'config' | 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin' | 'where' | 'having' | 'groupBy';
364
+ +type SQLiteSetOperatorExcludedMethods = 'leftJoin' | 'rightJoin' | 'innerJoin' | 'fullJoin' | 'where' | 'having' | 'groupBy';
365
+ type CreateSQLiteSelectFromBuilderMode<TBuilderMode extends 'db' | 'qb', THKT extends SQLiteSelectHKTBase, TTableName extends string | undefined, TRunResult, TSelection extends ColumnsSelection, TSelectMode extends SelectMode> = TBuilderMode extends 'db' ? SQLiteSelectKind<THKT, TTableName, TRunResult, TSelection, TSelectMode, TTableName extends string ? Record<TTableName, 'not-null'> : {}, false, never> : SQLiteSelectBase<SQLiteSelectQueryBuilderHKT, TTableName, TRunResult, TSelection, TSelectMode>;
366
+ type SQLiteSelectWithout<T extends AnySQLiteSelectQueryBuilder, TDynamic extends boolean, K extends keyof T & string, TResetExcluded extends boolean = false> = TDynamic extends true ? T : Omit<SQLiteSelectKind<T['_']['hkt'], T['_']['tableName'], T['_']['runResult'], T['_']['selection'], T['_']['selectMode'], T['_']['nullabilityMap'], TDynamic, TResetExcluded extends true ? K : T['_']['excludedMethods'] | K, T['_']['result'], T['_']['selectedFields']>, TResetExcluded extends true ? K : T['_']['excludedMethods'] | K>;
367
+ type SQLiteSelectExecute<T extends AnySQLiteSelect> = T['_']['result'];
368
+ diff --git a/table.d.ts b/table.d.ts
369
+ index 8249814..cf1bacc 100644
370
+ --- a/table.d.ts
371
+ +++ b/table.d.ts
372
+ @@ -19,7 +19,7 @@ interface TableTypeConfig<T extends TableConfig> {
373
+ readonly columns: T['columns'];
374
+ readonly dialect: T['dialect'];
375
+ }
376
+ -declare class Table<out T extends TableConfig = TableConfig> {
377
+ +declare class Table<T extends TableConfig = TableConfig> {
378
+ static readonly [entityKind]: string;
379
+ readonly _: TableTypeConfig<T>;
380
+ constructor(name: string, schema: string | undefined, baseName: string);
381
+ diff --git a/typebox-legacy/column.types.d.ts b/typebox-legacy/column.types.d.ts
382
+ index 7d0414c..c0ce84c 100644
383
+ --- a/typebox-legacy/column.types.d.ts
384
+ +++ b/typebox-legacy/column.types.d.ts
385
+ @@ -4,6 +4,7 @@ import { Assume } from "../utils.js";
386
+ import { Column } from "../column.js";
387
+ import { ColumnTypeData, ExtractColumnTypeData } from "../column-builder.js";
388
+ import * as t from "@sinclair/typebox";
389
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
390
+
391
+ //#region src/typebox-legacy/column.types.d.ts
392
+ interface GenericSchema<T> extends t.TSchema {
393
+ diff --git a/typebox/column.d.ts b/typebox/column.d.ts
394
+ index 966a89a..76c575d 100644
395
+ --- a/typebox/column.d.ts
396
+ +++ b/typebox/column.d.ts
397
+ @@ -1,6 +1,7 @@
398
+ import { JsonSchema } from "./column.types.js";
399
+ import { Column } from "../column.js";
400
+ import Type, { TSchema } from "typebox";
401
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
402
+
403
+ //#region src/typebox/column.d.ts
404
+ declare class TBuffer extends Type.Base<Buffer> {
405
+ diff --git a/valibot/column.d.ts b/valibot/column.d.ts
406
+ index f7c9d94..00d10aa 100644
407
+ --- a/valibot/column.d.ts
408
+ +++ b/valibot/column.d.ts
409
+ @@ -1,6 +1,7 @@
410
+ import { Json } from "../utils.js";
411
+ import { Column } from "../column.js";
412
+ import * as v from "valibot";
413
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
414
+
415
+ //#region src/valibot/column.d.ts
416
+ declare const literalSchema: v.UnionSchema<[v.StringSchema<undefined>, v.NumberSchema<undefined>, v.BooleanSchema<undefined>, v.NullSchema<undefined>], undefined>;
417
+ diff --git a/valibot/column.types.d.ts b/valibot/column.types.d.ts
418
+ index cab6045..6583423 100644
419
+ --- a/valibot/column.types.d.ts
420
+ +++ b/valibot/column.types.d.ts
421
+ @@ -4,6 +4,7 @@ import { Assume } from "../utils.js";
422
+ import { Column } from "../column.js";
423
+ import { ColumnDataConstraint, ColumnDataType, ColumnTypeData, ExtractColumnTypeData } from "../column-builder.js";
424
+ import * as v from "valibot";
425
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
426
+
427
+ //#region src/valibot/column.types.d.ts
428
+ type ExtractAdditionalProperties<TColumn extends Column> = {
429
+ diff --git a/zod/column.d.ts b/zod/column.d.ts
430
+ index a8b8182..beae528 100644
431
+ --- a/zod/column.d.ts
432
+ +++ b/zod/column.d.ts
433
+ @@ -2,6 +2,7 @@ import { Json } from "../utils.js";
434
+ import { FactoryOptions } from "./schema.types.js";
435
+ import { Column } from "../column.js";
436
+ import { z } from "zod/v4";
437
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
438
+
439
+ //#region src/zod/column.d.ts
440
+ declare const literalSchema: z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>;
441
+ diff --git a/zod/column.types.d.ts b/zod/column.types.d.ts
442
+ index b542477..dd71e63 100644
443
+ --- a/zod/column.types.d.ts
444
+ +++ b/zod/column.types.d.ts
445
+ @@ -5,6 +5,7 @@ import { Assume } from "../utils.js";
446
+ import { Column } from "../column.js";
447
+ import { ColumnTypeData, ExtractColumnTypeData } from "../column-builder.js";
448
+ import { z } from "zod/v4";
449
+ +type Buffer<T extends ArrayBufferLike = ArrayBufferLike> = Uint8Array<T>;
450
+
451
+ //#region src/zod/column.types.d.ts
452
+ type GetArrayDepth<T, Depth extends number = 0> = Depth extends 5 ? 5 : T extends readonly (infer U)[] ? GetArrayDepth<U, [1, 2, 3, 4, 5][Depth]> : Depth;
@@ -0,0 +1,18 @@
1
+ diff --git a/dist/internal/schema/schema.d.ts b/dist/internal/schema/schema.d.ts
2
+ index 7fbeec1a56a85ab1569f8b80e319fb4638a91615..21d38f72238f748d989d3080f77d0edfc63c0e16 100644
3
+ --- a/dist/internal/schema/schema.d.ts
4
+ +++ b/dist/internal/schema/schema.d.ts
5
+ @@ -3,0 +4 @@
6
+ +export declare const SchemaErrorTypeId: "~effect/Schema/SchemaError";
7
+ diff --git a/dist/unstable/http/internal/preResponseHandler.d.ts b/dist/unstable/http/internal/preResponseHandler.d.ts
8
+ index 81e81e744fa55db2647a8483991db403d451e7dd..040d6c97b85d0c01d4a477013010b9f54d462de8 100644
9
+ --- a/dist/unstable/http/internal/preResponseHandler.d.ts
10
+ +++ b/dist/unstable/http/internal/preResponseHandler.d.ts
11
+ @@ -1 +1,6 @@
12
+ -export {};
13
+ +import type * as Effect from "../../../Effect.ts";
14
+ +import type { HttpServerError } from "../HttpServerError.ts";
15
+ +import type { HttpServerRequest } from "../HttpServerRequest.ts";
16
+ +import type { HttpServerResponse } from "../HttpServerResponse.ts";
17
+ +export declare const requestPreResponseHandlers: WeakMap<object, (request: HttpServerRequest, response: HttpServerResponse) => Effect.Effect<HttpServerResponse, HttpServerError>>;
18
+ +export declare const appendPreResponseHandlerUnsafe: (request: HttpServerRequest, handler: (request: HttpServerRequest, response: HttpServerResponse) => Effect.Effect<HttpServerResponse, HttpServerError>) => void;
@@ -63,3 +63,4 @@ allowBuilds:
63
63
 
64
64
  patchedDependencies:
65
65
  '@tanstack/router-core@{{tanstackRouterCoreVersion}}': patches/@tanstack__router-core@{{tanstackRouterCoreVersion}}.patch
66
+ 'effect@{{effectVersion}}': patches/effect-schema-error-type-id.patch
@@ -1116,6 +1116,7 @@ const assertProjectReferenceEmitConfig = (tsConfig, packagePath) => {
1116
1116
  );
1117
1117
  };
1118
1118
  const assertTsConfigReferenceGraph = () => {
1119
+ const baseTsConfig = readJson('tsconfig.base.json');
1119
1120
  const rootTsConfig = readJson('tsconfig.json');
1120
1121
  const shellTsConfig = readJson('apps/shell-super-app/tsconfig.json');
1121
1122
  const shellMfTypesTsConfig = readJson(
@@ -1151,6 +1152,13 @@ const assertTsConfigReferenceGraph = () => {
1151
1152
  'apps/shell-super-app/tsconfig.json references',
1152
1153
  'restore the generated shell project-reference graph',
1153
1154
  );
1155
+ assert(baseTsConfig.compilerOptions?.skipLibCheck !== true, 'tsconfig.base.json must not use skipLibCheck');
1156
+ assertSameJson(
1157
+ shellTsConfig.include ?? [],
1158
+ ['src', 'locales/**/*.json', 'package.json', 'shared'],
1159
+ 'apps/shell-super-app/tsconfig.json include',
1160
+ 'restore the generated shell typecheck boundary',
1161
+ );
1154
1162
  assertProjectReferenceEmitConfig(
1155
1163
  shellTsConfig,
1156
1164
  'apps/shell-super-app',
@@ -1158,7 +1166,7 @@ const assertTsConfigReferenceGraph = () => {
1158
1166
  assertSameJson(
1159
1167
  shellMfTypesTsConfig,
1160
1168
  {
1161
- extends: './tsconfig.json',
1169
+ extends: '../../tsconfig.base.json',
1162
1170
  include: ['src/modern-app-env.d.ts'],
1163
1171
  },
1164
1172
  'apps/shell-super-app/tsconfig.mf-types.json',
@@ -1191,11 +1199,17 @@ const assertTsConfigReferenceGraph = () => {
1191
1199
  `${vertical.path}/tsconfig.json references`,
1192
1200
  'restore the generated MicroVertical project-reference graph',
1193
1201
  );
1202
+ assertSameJson(
1203
+ verticalTsConfig.include ?? [],
1204
+ ['src', 'locales/**/*.json', 'package.json', 'shared', 'api'],
1205
+ `${vertical.path}/tsconfig.json include`,
1206
+ 'restore the generated MicroVertical typecheck boundary',
1207
+ );
1194
1208
  assertProjectReferenceEmitConfig(verticalTsConfig, vertical.path);
1195
1209
  assertSameJson(
1196
1210
  verticalMfTypesTsConfig,
1197
1211
  {
1198
- extends: './tsconfig.json',
1212
+ extends: '../../tsconfig.base.json',
1199
1213
  include: [
1200
1214
  'src/federation-entry.tsx',
1201
1215
  ...vertical.componentPaths.map(componentPath =>
@@ -1478,6 +1492,7 @@ const requiredPaths = [
1478
1492
  '.gitignore',
1479
1493
  'package.json',
1480
1494
  'pnpm-workspace.yaml',
1495
+ 'patches/effect-schema-error-type-id.patch',
1481
1496
  'tsconfig.json',
1482
1497
  'tsconfig.base.json',
1483
1498
  'oxlint.config.ts',
@@ -1553,6 +1568,13 @@ for (const vertical of fullStackVerticals) {
1553
1568
  for (const requiredPath of requiredPaths) {
1554
1569
  assertExists(requiredPath);
1555
1570
  }
1571
+ const pnpmWorkspace = readText('pnpm-workspace.yaml');
1572
+ assert(
1573
+ pnpmWorkspace.includes(
1574
+ "'effect@{{effectVersion}}': patches/effect-schema-error-type-id.patch",
1575
+ ),
1576
+ 'pnpm-workspace.yaml must patch the generated Effect declaration cohort',
1577
+ );
1556
1578
  for (const oldRemotePath of oldRemotePaths) {
1557
1579
  assertNotExists(oldRemotePath);
1558
1580
  }
@@ -1767,8 +1789,16 @@ assert(JSON.stringify(generatedContract.performanceReadiness?.signals?.map(signa
1767
1789
 
1768
1790
  const shellModernConfig = readText('apps/shell-super-app/modern.config.ts');
1769
1791
  const shellModuleFederationConfig = readText('apps/shell-super-app/module-federation.config.ts');
1792
+ const shellModernAppEnv = readText('apps/shell-super-app/src/modern-app-env.d.ts');
1793
+ const gitignore = readText('.gitignore');
1770
1794
  const shellRouteHead = readText('apps/shell-super-app/src/routes/ultramodern-route-head.tsx');
1771
1795
  const shellRouteMetadata = readText('apps/shell-super-app/src/routes/ultramodern-route-metadata.ts');
1796
+ assert(/^\.mf\/$/mu.test(gitignore), 'Generated .gitignore must ignore root Module Federation diagnostics');
1797
+ assert(/^\*\*\/\.mf\/$/mu.test(gitignore), 'Generated .gitignore must ignore per-app Module Federation diagnostics');
1798
+ assert(shellModernAppEnv.includes("import '@modern-js/app-tools/types';"), 'Shell app env must import the framework-owned app ambient type bundle through module resolution');
1799
+ assert(/declare global \{\s*const ULTRAMODERN_SITE_URL: string;\s*\}/u.test(shellModernAppEnv), 'Shell app env must keep generated globals explicit after importing app ambient types');
1800
+ assert(!shellModernAppEnv.includes("declare module '*.svg'"), 'Shell app env must not redeclare framework-owned svg asset modules');
1801
+ assert(!shellModernAppEnv.includes("declare module '*.css'"), 'Shell app env must not redeclare framework-owned css asset modules');
1772
1802
  assert(shellRouteMetadata.includes('@generated by @modern-js/create'), 'Shell route metadata compatibility manifest must be marked generated');
1773
1803
  assert(shellRouteMetadata.includes("authoring: 'colocated-route-meta'"), 'Shell route metadata manifest must advertise colocated authoring');
1774
1804
  const expectedZephyrDependencies = Object.fromEntries(
@@ -1860,8 +1890,13 @@ for (const vertical of fullStackVerticals) {
1860
1890
  const packageJson = readJson(`${vertical.path}/package.json`);
1861
1891
  const modernConfig = readText(`${vertical.path}/modern.config.ts`);
1862
1892
  const moduleFederationConfig = readText(`${vertical.path}/module-federation.config.ts`);
1893
+ const modernAppEnv = readText(`${vertical.path}/src/modern-app-env.d.ts`);
1863
1894
  const routeHead = readText(`${vertical.path}/src/routes/ultramodern-route-head.tsx`);
1864
1895
  const routeMetadata = readText(`${vertical.path}/src/routes/ultramodern-route-metadata.ts`);
1896
+ assert(modernAppEnv.includes("import '@modern-js/app-tools/types';"), `${vertical.id} app env must import the framework-owned app ambient type bundle through module resolution`);
1897
+ assert(/declare global \{\s*const ULTRAMODERN_SITE_URL: string;\s*\}/u.test(modernAppEnv), `${vertical.id} app env must keep generated globals explicit after importing app ambient types`);
1898
+ assert(!modernAppEnv.includes("declare module '*.svg'"), `${vertical.id} app env must not redeclare framework-owned svg asset modules`);
1899
+ assert(!modernAppEnv.includes("declare module '*.css'"), `${vertical.id} app env must not redeclare framework-owned css asset modules`);
1865
1900
  assert(routeMetadata.includes('@generated by @modern-js/create'), `${vertical.id} route metadata compatibility manifest must be marked generated`);
1866
1901
  assert(routeMetadata.includes("authoring: 'colocated-route-meta'"), `${vertical.id} route metadata manifest must advertise colocated authoring`);
1867
1902
  assert(packageJson.name === vertical.packageName, `${vertical.id} package name is incorrect`);