neoorm 0.9.3 → 0.9.6

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.
@@ -172,26 +172,61 @@ ${validationBlock}`;
172
172
  const NEOORM_PACKAGE = "neoorm";
173
173
  export { buildDownSql, columnSqlType, columnsEqual, diffManifest, emptyManifest, explainNoMigrationSql, formatDestructiveWarnings, resolveMigrationSql, } from "./diff-manifest.js";
174
174
  export { formatGenerateSummary, summarizeGenerateOutcome, } from "./generate-summary.js";
175
+ export function missingMigrationNameError() {
176
+ return schemaError("migration_guard", "Missing migration name. Re-run with --name <name> (e.g. neoorm generate --name add_users).", undefined, ["Use --name add_users to name the migration"]);
177
+ }
178
+ export function invalidMigrationNameError(name) {
179
+ return schemaError("migration_guard", `Invalid migration name "${name}". Use letters, numbers, and underscores (e.g. add_users).`, undefined, ["Re-run with --name add_users"]);
180
+ }
175
181
  function sanitizeMigrationName(name) {
176
- const cleaned = name
177
- .replace(/[\\/]/g, "_")
178
- .replace(/\.\./g, "_")
179
- .replace(/\0/g, "");
180
- const trimmed = cleaned.trim();
181
- return trimmed.length > 0 ? trimmed : "migration";
182
+ const slug = slugifyMigrationName(name);
183
+ if (!slug) {
184
+ throw invalidMigrationNameError(name);
185
+ }
186
+ return slug;
187
+ }
188
+ export const MIGRATION_SLUG_MAX_LENGTH = 50;
189
+ /** Slugify a user-supplied migration name (`Add Users` → `add_users`, capped at 50 chars). */
190
+ export function slugifyMigrationName(name) {
191
+ const slug = name
192
+ .toLowerCase()
193
+ .trim()
194
+ .replace(/[\s-]+/g, "_")
195
+ .replace(/[^a-z0-9_]/g, "")
196
+ .replace(/__+/g, "_")
197
+ .replace(/^_+|_+$/g, "")
198
+ .slice(0, MIGRATION_SLUG_MAX_LENGTH)
199
+ .replace(/_+$/g, "");
200
+ return slug;
201
+ }
202
+ function migrationTimestamp() {
203
+ return new Date()
204
+ .toISOString()
205
+ .replace(/[-:T.Z]/g, "")
206
+ .slice(0, 14);
207
+ }
208
+ async function resolveUniqueMigrationName(migrationsDir, base) {
209
+ let candidate = base;
210
+ for (let attempt = 1;; attempt += 1) {
211
+ try {
212
+ await readFile(join(migrationsDir, candidate, "migration.sql"), "utf-8");
213
+ candidate = `${base}_${attempt}`;
214
+ }
215
+ catch {
216
+ return candidate;
217
+ }
218
+ }
182
219
  }
183
220
  export async function writeMigration(outDir, sql, options) {
184
221
  if (sql.length === 0)
185
222
  return null;
186
223
  const migrationsDir = join(outDir, "migrations");
187
224
  await mkdir(migrationsDir, { recursive: true });
188
- const timestamp = new Date()
189
- .toISOString()
190
- .replace(/[-:T.Z]/g, "")
191
- .slice(0, 14);
192
- const migrationName = options?.name
193
- ? sanitizeMigrationName(options.name)
225
+ const timestamp = migrationTimestamp();
226
+ const base = options?.name
227
+ ? `${timestamp}_${sanitizeMigrationName(options.name)}`
194
228
  : `${timestamp}_migration`;
229
+ const migrationName = await resolveUniqueMigrationName(migrationsDir, base);
195
230
  const migrationDir = join(migrationsDir, migrationName);
196
231
  await mkdir(migrationDir, { recursive: true });
197
232
  await writeFile(join(migrationDir, "migration.sql"), sql.join("\n\n"), "utf-8");
@@ -263,6 +298,7 @@ export async function writeGeneratedFiles(outDir, manifest, migrationSql, _schem
263
298
  prev,
264
299
  next: manifest,
265
300
  ...(dialect ? { dialect } : {}),
301
+ ...(options?.name ? { name: options.name } : {}),
266
302
  });
267
303
  return { migrationName };
268
304
  }
@@ -307,23 +343,11 @@ async function compileSchemaToManifestInner(schemaPath, options) {
307
343
  return { manifest, warnings };
308
344
  }
309
345
  /**
310
- * Generate client, models, and migration SQL from a schema file.
311
- *
312
- * @param schemaPath - Path to `schema.ts`.
313
- * @param outDir - Output directory from config `out`.
346
+ * Shared compile → diff → resolve prefix of `generateFromSchemaInner`.
347
+ * Extracted so `previewMigrationSql` and `generateFromSchema` can never
348
+ * diverge: the preview shows exactly what generate would write.
314
349
  */
315
- export async function generateFromSchema(schemaPath, outDir, options = {}) {
316
- try {
317
- return await generateFromSchemaInner(schemaPath, outDir, options);
318
- }
319
- catch (err) {
320
- if (err instanceof NeoOrmSchemaError) {
321
- throw err;
322
- }
323
- throw schemaCompileError(schemaPath, err instanceof Error ? err.message : String(err), err);
324
- }
325
- }
326
- async function generateFromSchemaInner(schemaPath, outDir, options = {}) {
350
+ async function computeMigrationPreview(schemaPath, outDir, options = {}) {
327
351
  const { manifest, warnings } = await compileSchemaToManifest(schemaPath, options);
328
352
  const prev = await readSnapshot(outDir);
329
353
  const schemaChanged = !prev || hashManifest(prev) !== hashManifest(manifest);
@@ -351,8 +375,85 @@ async function generateFromSchemaInner(schemaPath, outDir, options = {}) {
351
375
  }
352
376
  const migrationBlocked = blocked.length > 0 && !(options.acceptDataLoss ?? false);
353
377
  const migrationSql = migrationBlocked ? [] : sql;
378
+ return {
379
+ manifest,
380
+ prev,
381
+ manifestDiff,
382
+ dialect,
383
+ schemaChanged,
384
+ sql,
385
+ blocked,
386
+ migrationSql,
387
+ migrationBlocked,
388
+ warnings: allWarnings,
389
+ };
390
+ }
391
+ /**
392
+ * Preview the migration SQL for a schema file without writing any files.
393
+ *
394
+ * Computes exactly what `generateFromSchema` would write to `migration.sql`
395
+ * (same snapshot diff, same `--accept-data-loss` handling) but never writes
396
+ * client files, snapshots, or migrations — and never requires `--name`.
397
+ *
398
+ * @param schemaPath - Path to `schema.ts`.
399
+ * @param outDir - Output directory from config `out` (only read).
400
+ */
401
+ export async function previewMigrationSql(schemaPath, outDir, options = {}) {
402
+ try {
403
+ const preview = await computeMigrationPreview(schemaPath, outDir, options);
404
+ const warnings = [...preview.warnings];
405
+ if (preview.migrationBlocked) {
406
+ warnings.push(...formatDestructiveWarnings(preview.blocked));
407
+ warnings.push("Destructive schema changes are excluded from this preview. Re-run with --accept-data-loss to include them.");
408
+ }
409
+ return {
410
+ manifest: preview.manifest,
411
+ schemaChanged: preview.schemaChanged,
412
+ sql: preview.migrationSql,
413
+ blocked: preview.blocked,
414
+ destructiveBlocked: preview.migrationBlocked,
415
+ warnings,
416
+ };
417
+ }
418
+ catch (err) {
419
+ if (err instanceof NeoOrmSchemaError) {
420
+ throw err;
421
+ }
422
+ throw schemaCompileError(schemaPath, err instanceof Error ? err.message : String(err), err);
423
+ }
424
+ }
425
+ /**
426
+ * Generate client, models, and migration SQL from a schema file.
427
+ *
428
+ * @param schemaPath - Path to `schema.ts`.
429
+ * @param outDir - Output directory from config `out`.
430
+ */
431
+ export async function generateFromSchema(schemaPath, outDir, options = {}) {
432
+ try {
433
+ return await generateFromSchemaInner(schemaPath, outDir, options);
434
+ }
435
+ catch (err) {
436
+ if (err instanceof NeoOrmSchemaError) {
437
+ throw err;
438
+ }
439
+ throw schemaCompileError(schemaPath, err instanceof Error ? err.message : String(err), err);
440
+ }
441
+ }
442
+ async function generateFromSchemaInner(schemaPath, outDir, options = {}) {
443
+ const preview = await computeMigrationPreview(schemaPath, outDir, options);
444
+ const { manifest, prev, manifestDiff, dialect, schemaChanged, blocked, migrationSql, migrationBlocked, } = preview;
445
+ const allWarnings = [...preview.warnings];
446
+ if (migrationSql.length > 0) {
447
+ const rawName = options.name?.trim();
448
+ if (!rawName) {
449
+ throw missingMigrationNameError();
450
+ }
451
+ // Validate before any files are written.
452
+ sanitizeMigrationName(rawName);
453
+ }
354
454
  const { migrationName } = await writeGeneratedFiles(outDir, manifest, migrationSql, schemaPath, prev, dialect, {
355
455
  updateSnapshot: !migrationBlocked,
456
+ ...(options.name ? { name: options.name } : {}),
356
457
  ...(options.zod === true ? { zod: true } : {}),
357
458
  ...(options.typebox === true ? { typebox: true } : {}),
358
459
  ...(options.elysia === true ? { elysia: true } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/codegen/generate.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -22,6 +22,12 @@ export type NeoOrmConfig = {
22
22
  /** Emit Elysia `t` Select/Create/Update schemas to `out/elysia.ts`. @default false */
23
23
  elysia?: boolean;
24
24
  };
25
+ seed?: {
26
+ /** Default seed file (project-root relative). CLI `--file` overrides it. */
27
+ file?: string;
28
+ /** Default environment: runs `seeds/<env>.ts` next to the schema. CLI `--env` overrides it. */
29
+ env?: string;
30
+ };
25
31
  };
26
32
  export declare function validateConfig(config: unknown): NeoOrmConfig;
27
33
  /** Type-safe config object for `neoorm.config.ts`. */
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,gBAAgB,EAErB,MAAM,0BAA0B,CAAC;AAMlC,MAAM,MAAM,YAAY,GAAG;IAC1B,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE;QACX,iFAAiF;QACjF,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,0CAA0C;QAC1C,GAAG,EAAE,MAAM,CAAC;QACZ,8BAA8B;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,yDAAyD;QACzD,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;KACpC,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,4EAA4E;QAC5E,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,oFAAoF;QACpF,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,sFAAsF;QACtF,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;CACF,CAAC;AAyBF,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CA4D5D;AA2CD,sDAAsD;AACtD,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAE/D;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAcnE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AACA,OAAO,EAEN,KAAK,gBAAgB,EAErB,MAAM,0BAA0B,CAAC;AAMlC,MAAM,MAAM,YAAY,GAAG;IAC1B,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE;QACX,iFAAiF;QACjF,QAAQ,EAAE,gBAAgB,CAAC;QAC3B,0CAA0C;QAC1C,GAAG,EAAE,MAAM,CAAC;QACZ,8BAA8B;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,yDAAyD;QACzD,IAAI,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;KACpC,CAAC;IACF,QAAQ,CAAC,EAAE;QACV,4EAA4E;QAC5E,GAAG,CAAC,EAAE,OAAO,CAAC;QACd,oFAAoF;QACpF,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,sFAAsF;QACtF,MAAM,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,IAAI,CAAC,EAAE;QACN,4EAA4E;QAC5E,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,+FAA+F;QAC/F,GAAG,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;CACF,CAAC;AAyBF,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,YAAY,CA8D5D;AAgFD,sDAAsD;AACtD,wBAAgB,YAAY,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAE/D;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,CAcnE"}
package/dist/config.js CHANGED
@@ -42,6 +42,7 @@ export function validateConfig(config) {
42
42
  throw schemaError(SchemaErrorCode.invalid_config, "neoorm.config.ts datasource.schema must be a string");
43
43
  }
44
44
  const generate = parseGenerateOptions(config.generate);
45
+ const seed = parseSeedOptions(config.seed);
45
46
  return {
46
47
  schema,
47
48
  out,
@@ -54,6 +55,7 @@ export function validateConfig(config) {
54
55
  ...(datasource.enum !== undefined ? { enum: datasource.enum } : {}),
55
56
  },
56
57
  ...(generate ? { generate } : {}),
58
+ ...(seed ? { seed } : {}),
57
59
  };
58
60
  }
59
61
  function parseGenerateOptions(value) {
@@ -84,6 +86,32 @@ function parseGenerateFlag(value, key) {
84
86
  }
85
87
  return value;
86
88
  }
89
+ function parseSeedOptions(value) {
90
+ if (value === undefined) {
91
+ return undefined;
92
+ }
93
+ if (!isRecord(value)) {
94
+ throw schemaError(SchemaErrorCode.invalid_config, "neoorm.config.ts seed must be an object");
95
+ }
96
+ const file = parseSeedString(value.file, "file");
97
+ const env = parseSeedString(value.env, "env");
98
+ if (file === undefined && env === undefined) {
99
+ return undefined;
100
+ }
101
+ return {
102
+ ...(file !== undefined ? { file } : {}),
103
+ ...(env !== undefined ? { env } : {}),
104
+ };
105
+ }
106
+ function parseSeedString(value, key) {
107
+ if (value === undefined) {
108
+ return undefined;
109
+ }
110
+ if (typeof value !== "string" || value.length === 0) {
111
+ throw schemaError(SchemaErrorCode.invalid_config, `neoorm.config.ts seed.${key} must be a non-empty string`);
112
+ }
113
+ return value;
114
+ }
87
115
  /** Type-safe config object for `neoorm.config.ts`. */
88
116
  export function defineConfig(config) {
89
117
  return config;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,8 +6,8 @@
6
6
  * config, migrations, codegen, and runtime client factories.
7
7
  */
8
8
  export { buildDownSql, diffManifest, emptyManifest, explainNoMigrationSql, formatDestructiveWarnings, resolveMigrationSql, } from "./codegen/diff-manifest.js";
9
- export type { CompileSchemaOptions, GenerateResult, GenerateStatus, GenerateSummary, } from "./codegen/generate.js";
10
- export { compileSchemaToManifest, formatGenerateSummary, generateFromSchema, summarizeGenerateOutcome, } from "./codegen/generate.js";
9
+ export type { CompileSchemaOptions, GenerateResult, GenerateStatus, GenerateSummary, PreviewMigrationOptions, PreviewMigrationResult, } from "./codegen/generate.js";
10
+ export { compileSchemaToManifest, formatGenerateSummary, generateFromSchema, previewMigrationSql, summarizeGenerateOutcome, } from "./codegen/generate.js";
11
11
  export type { SchemaValidationIssue } from "./codegen/schema-to-manifest.js";
12
12
  export { schemaToManifest, validateManifest, } from "./codegen/schema-to-manifest.js";
13
13
  export type { NeoOrmConfig } from "./config.js";
@@ -30,4 +30,6 @@ export { decodeCursor, encodeCursor } from "./runtime/query/cursor-codec.js";
30
30
  export type { StripCapablePayload } from "./runtime/types.js";
31
31
  export type { CursorInput, ScalarPkName } from "./schema/relation-types.js";
32
32
  export type { PaginateArgs, PaginateResult } from "./schema/types.js";
33
+ export type { ResolveSeedFileOptions, SeedContext, SeedFunction, } from "./seed/runner.js";
34
+ export { loadSeedFunction, resolveSeedFile, runSeed, } from "./seed/runner.js";
33
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@
6
6
  * config, migrations, codegen, and runtime client factories.
7
7
  */
8
8
  export { buildDownSql, diffManifest, emptyManifest, explainNoMigrationSql, formatDestructiveWarnings, resolveMigrationSql, } from "./codegen/diff-manifest.js";
9
- export { compileSchemaToManifest, formatGenerateSummary, generateFromSchema, summarizeGenerateOutcome, } from "./codegen/generate.js";
9
+ export { compileSchemaToManifest, formatGenerateSummary, generateFromSchema, previewMigrationSql, summarizeGenerateOutcome, } from "./codegen/generate.js";
10
10
  export { schemaToManifest, validateManifest, } from "./codegen/schema-to-manifest.js";
11
11
  export { defineConfig, loadConfig } from "./config.js";
12
12
  export { mariadbDialect } from "./dialect/mariadb.js";
@@ -19,4 +19,5 @@ export { createNeoOrmClient, createNeoOrmClientFromMariadb, createNeoOrmClientFr
19
19
  export { QueryErrorCode, SchemaErrorCode, } from "./runtime/error-codes.js";
20
20
  export { CheckViolationError, createQueryError, ForeignKeyViolationError, formatQueryError, formatSchemaError, InvalidInputError, isCheckViolation, isForeignKeyViolation, isInvalidInput, isNeoOrmError, isNotNullViolation, isQueryCompileError, isQueryError, isSchemaDriftError, isSchemaError, isUniqueViolation, NeoOrmDriverError, NeoOrmError, NeoOrmQueryError, NeoOrmSchemaError, NotNullViolationError, QueryCompileError, SchemaDriftError, UniqueViolationError, } from "./runtime/errors.js";
21
21
  export { decodeCursor, encodeCursor } from "./runtime/query/cursor-codec.js";
22
+ export { loadSeedFunction, resolveSeedFile, runSeed, } from "./seed/runner.js";
22
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,yBAAyB,EACzB,mBAAmB,GACnB,MAAM,4BAA4B,CAAC;AAOpC,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,wBAAwB,GACxB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAQnE,OAAO,EACN,QAAQ,EACR,sBAAsB,EACtB,MAAM,EACN,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GACf,MAAM,qBAAqB,CAAC;AAqB7B,OAAO,EACN,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,cAAc,EAEd,eAAe,GAEf,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EACN,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,qBAAqB,EACrB,yBAAyB,EACzB,mBAAmB,GACnB,MAAM,4BAA4B,CAAC;AASpC,OAAO,EACN,uBAAuB,EACvB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,GACxB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACN,gBAAgB,EAChB,gBAAgB,GAChB,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AASpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAQnE,OAAO,EACN,QAAQ,EACR,sBAAsB,EACtB,MAAM,EACN,mBAAmB,EACnB,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,WAAW,EACX,YAAY,EACZ,aAAa,EACb,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,GACf,MAAM,qBAAqB,CAAC;AAqB7B,OAAO,EACN,kBAAkB,EAClB,6BAA6B,EAC7B,2BAA2B,EAC3B,0BAA0B,EAC1B,4BAA4B,GAC5B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACN,cAAc,EAEd,eAAe,GAEf,MAAM,0BAA0B,CAAC;AAMlC,OAAO,EACN,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,qBAAqB,EACrB,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,oBAAoB,GACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAS7E,OAAO,EACN,gBAAgB,EAChB,eAAe,EACf,OAAO,GACP,MAAM,kBAAkB,CAAC"}
@@ -44,6 +44,7 @@ export declare const SchemaErrorCode: {
44
44
  readonly migration_drift: "migration_drift";
45
45
  readonly migration_guard: "migration_guard";
46
46
  readonly invalid_config: "invalid_config";
47
+ readonly invalid_seed: "invalid_seed";
47
48
  readonly plugin_error: "plugin_error";
48
49
  };
49
50
  export type SchemaErrorCodeValue = (typeof SchemaErrorCode)[keyof typeof SchemaErrorCode];
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,eAAO,MAAM,cAAc;aAE1B,gBAAgB,EAAE,kBAAkB;aACpC,kBAAkB,EAAE,oBAAoB;aACxC,qBAAqB,EAAE,uBAAuB;aAC9C,eAAe,EAAE,iBAAiB;aAClC,aAAa,EAAE,eAAe;aAC9B,kBAAkB,EAAE,oBAAoB;aACxC,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,gBAAgB,EAAE,kBAAkB;aACpC,YAAY,EAAE,cAAc;aAG5B,aAAa,EAAE,eAAe;aAC9B,cAAc,EAAE,gBAAgB;aAChC,gBAAgB,EAAE,kBAAkB;aACpC,oBAAoB,EAAE,sBAAsB;aAC5C,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;aAC5B,cAAc,EAAE,gBAAgB;aAChC,oBAAoB,EAAE,sBAAsB;aAC5C,mBAAmB,EAAE,qBAAqB;aAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC9B,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEtD,+CAA+C;AAC/C,eAAO,MAAM,eAAe;aAC3B,qBAAqB,EAAE,uBAAuB;aAC9C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,sBAAsB,EAAE,wBAAwB;aAChD,mBAAmB,EAAE,qBAAqB;aAC1C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,mBAAmB,EAAE,qBAAqB;aAC1C,kBAAkB,EAAE,oBAAoB;aACxC,uBAAuB,EAAE,yBAAyB;aAClD,iBAAiB,EAAE,mBAAmB;aACtC,oBAAoB,EAAE,sBAAsB;aAC5C,wBAAwB,EAAE,0BAA0B;aACpD,iBAAiB,EAAE,mBAAmB;aACtC,iBAAiB,EAAE,mBAAmB;aACtC,mBAAmB,EAAE,qBAAqB;aAC1C,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,eAAe,EAAE,iBAAiB;aAClC,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;CACnB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC/B,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,wBAAwB,0BAInC,CAAC"}
1
+ {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,eAAO,MAAM,cAAc;aAE1B,gBAAgB,EAAE,kBAAkB;aACpC,kBAAkB,EAAE,oBAAoB;aACxC,qBAAqB,EAAE,uBAAuB;aAC9C,eAAe,EAAE,iBAAiB;aAClC,aAAa,EAAE,eAAe;aAC9B,kBAAkB,EAAE,oBAAoB;aACxC,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,gBAAgB,EAAE,kBAAkB;aACpC,YAAY,EAAE,cAAc;aAG5B,aAAa,EAAE,eAAe;aAC9B,cAAc,EAAE,gBAAgB;aAChC,gBAAgB,EAAE,kBAAkB;aACpC,oBAAoB,EAAE,sBAAsB;aAC5C,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;aAC5B,cAAc,EAAE,gBAAgB;aAChC,oBAAoB,EAAE,sBAAsB;aAC5C,mBAAmB,EAAE,qBAAqB;aAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAC9B,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAEtD,+CAA+C;AAC/C,eAAO,MAAM,eAAe;aAC3B,qBAAqB,EAAE,uBAAuB;aAC9C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,sBAAsB,EAAE,wBAAwB;aAChD,mBAAmB,EAAE,qBAAqB;aAC1C,cAAc,EAAE,gBAAgB;aAChC,kBAAkB,EAAE,oBAAoB;aACxC,mBAAmB,EAAE,qBAAqB;aAC1C,kBAAkB,EAAE,oBAAoB;aACxC,uBAAuB,EAAE,yBAAyB;aAClD,iBAAiB,EAAE,mBAAmB;aACtC,oBAAoB,EAAE,sBAAsB;aAC5C,wBAAwB,EAAE,0BAA0B;aACpD,iBAAiB,EAAE,mBAAmB;aACtC,iBAAiB,EAAE,mBAAmB;aACtC,mBAAmB,EAAE,qBAAqB;aAC1C,gBAAgB,EAAE,kBAAkB;aACpC,eAAe,EAAE,iBAAiB;aAClC,eAAe,EAAE,iBAAiB;aAClC,cAAc,EAAE,gBAAgB;aAChC,YAAY,EAAE,cAAc;aAC5B,YAAY,EAAE,cAAc;CACnB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC/B,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,wBAAwB,0BAInC,CAAC"}
@@ -45,6 +45,7 @@ export const SchemaErrorCode = {
45
45
  migration_drift: "migration_drift",
46
46
  migration_guard: "migration_guard",
47
47
  invalid_config: "invalid_config",
48
+ invalid_seed: "invalid_seed",
48
49
  plugin_error: "plugin_error",
49
50
  };
50
51
  export const SCHEMA_DRIFT_QUERY_CODES = new Set([
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,iCAAiC;IACjC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,YAAY,EAAE,cAAc;IAE5B,4BAA4B;IAC5B,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;IAC5C,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAKX,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,sBAAsB,EAAE,wBAAwB;IAChD,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,qBAAqB;IAC1C,kBAAkB,EAAE,oBAAoB;IACxC,uBAAuB,EAAE,yBAAyB;IAClD,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,iBAAiB,EAAE,mBAAmB;IACtC,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,qBAAqB;IAC1C,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;CACnB,CAAC;AAKX,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAsB;IACpE,cAAc,CAAC,kBAAkB;IACjC,cAAc,CAAC,gBAAgB;IAC/B,cAAc,CAAC,qBAAqB;CACpC,CAAC,CAAC"}
1
+ {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../../src/runtime/error-codes.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC7B,iCAAiC;IACjC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,eAAe,EAAE,iBAAiB;IAClC,aAAa,EAAE,eAAe;IAC9B,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,gBAAgB,EAAE,kBAAkB;IACpC,YAAY,EAAE,cAAc;IAE5B,4BAA4B;IAC5B,aAAa,EAAE,eAAe;IAC9B,cAAc,EAAE,gBAAgB;IAChC,gBAAgB,EAAE,kBAAkB;IACpC,oBAAoB,EAAE,sBAAsB;IAC5C,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,cAAc,EAAE,gBAAgB;IAChC,oBAAoB,EAAE,sBAAsB;IAC5C,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,uBAAuB;CACrC,CAAC;AAKX,+CAA+C;AAC/C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC9B,qBAAqB,EAAE,uBAAuB;IAC9C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,sBAAsB,EAAE,wBAAwB;IAChD,mBAAmB,EAAE,qBAAqB;IAC1C,cAAc,EAAE,gBAAgB;IAChC,kBAAkB,EAAE,oBAAoB;IACxC,mBAAmB,EAAE,qBAAqB;IAC1C,kBAAkB,EAAE,oBAAoB;IACxC,uBAAuB,EAAE,yBAAyB;IAClD,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,iBAAiB,EAAE,mBAAmB;IACtC,iBAAiB,EAAE,mBAAmB;IACtC,mBAAmB,EAAE,qBAAqB;IAC1C,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;IAChC,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;CACnB,CAAC;AAKX,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAsB;IACpE,cAAc,CAAC,kBAAkB;IACjC,cAAc,CAAC,gBAAgB;IAC/B,cAAc,CAAC,qBAAqB;CACpC,CAAC,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { TransactionClient, TypedNeoOrmClient } from "../runtime/client.js";
2
+ import type { TableDef } from "../schema/table.js";
3
+ /**
4
+ * Transaction-scoped client passed to seed functions.
5
+ *
6
+ * This is the loose, manifest-agnostic context. Seed files that want full
7
+ * per-table types should annotate with their own schema instead:
8
+ *
9
+ * ```ts
10
+ * import type { TransactionClient } from "neoorm";
11
+ * import { schema } from "./schema.js";
12
+ *
13
+ * export async function seed(
14
+ * db: TransactionClient<typeof schema._tables>,
15
+ * ) { ... }
16
+ * ```
17
+ */
18
+ export type SeedContext = TransactionClient<Record<string, TableDef>>;
19
+ /** A seed function: receives a transaction-scoped client. Runs atomically. */
20
+ export type SeedFunction = (db: SeedContext) => Promise<unknown>;
21
+ export type ResolveSeedFileOptions = {
22
+ cwd: string;
23
+ schemaPath: string;
24
+ env?: string;
25
+ file?: string;
26
+ /** `seed.file` from `neoorm.config.ts` (project-root relative). */
27
+ configFile?: string;
28
+ };
29
+ /**
30
+ * Resolve which seed file to run. Precedence: `--file` → config
31
+ * `seed.file` → `seeds/<env>.ts` → `seed.ts` next to the schema.
32
+ * Throws `invalid_seed` when nothing resolves.
33
+ */
34
+ export declare function resolveSeedFile(options: ResolveSeedFileOptions): Promise<string>;
35
+ /**
36
+ * Load the `seed(db)` export from a seed file. Accepts a named `seed`
37
+ * export or a default-exported function.
38
+ */
39
+ export declare function loadSeedFunction(seedPath: string): Promise<SeedFunction>;
40
+ /**
41
+ * Run a seed file inside a single transaction. Any failure rolls the whole
42
+ * seed back, so failed runs are safe to retry. Execution errors propagate
43
+ * unwrapped so their original code and context are preserved.
44
+ */
45
+ export declare function runSeed<TTables extends Record<string, TableDef>>(db: Pick<TypedNeoOrmClient<TTables>, "$transaction">, seedPath: string): Promise<void>;
46
+ //# sourceMappingURL=runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/seed/runner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACX,iBAAiB,EACjB,iBAAiB,EACjB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,WAAW,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEtE,8EAA8E;AAC9E,MAAM,MAAM,YAAY,GAAG,CAAC,EAAE,EAAE,WAAW,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAyBjE,MAAM,MAAM,sBAAsB,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AASF;;;;GAIG;AACH,wBAAsB,eAAe,CACpC,OAAO,EAAE,sBAAsB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAoCjB;AAED;;;GAGG;AACH,wBAAsB,gBAAgB,CACrC,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,YAAY,CAAC,CA8BvB;AAED;;;;GAIG;AACH,wBAAsB,OAAO,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,EACrE,EAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,EACpD,QAAQ,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAQf"}
@@ -0,0 +1,99 @@
1
+ import { stat } from "node:fs/promises";
2
+ import { dirname, join, resolve } from "node:path";
3
+ import { schemaError } from "../runtime/error-builders.js";
4
+ import { SchemaErrorCode } from "../runtime/error-codes.js";
5
+ import { importTsModule } from "../utils/load-ts.js";
6
+ const SEED_EXTENSIONS = [".ts", ".mts", ".cts"];
7
+ function isRecord(value) {
8
+ return value !== null && typeof value === "object" && !Array.isArray(value);
9
+ }
10
+ async function isFile(path) {
11
+ try {
12
+ return (await stat(path)).isFile();
13
+ }
14
+ catch {
15
+ return false;
16
+ }
17
+ }
18
+ async function firstExisting(paths) {
19
+ for (const path of paths) {
20
+ if (await isFile(path)) {
21
+ return path;
22
+ }
23
+ }
24
+ return undefined;
25
+ }
26
+ function seedFileSuggestions(lookedFor) {
27
+ return [
28
+ `Create ${lookedFor[0]} exporting \`export async function seed(db) { ... }\``,
29
+ "Or pass an explicit path with --file <path>",
30
+ ];
31
+ }
32
+ /**
33
+ * Resolve which seed file to run. Precedence: `--file` → config
34
+ * `seed.file` → `seeds/<env>.ts` → `seed.ts` next to the schema.
35
+ * Throws `invalid_seed` when nothing resolves.
36
+ */
37
+ export async function resolveSeedFile(options) {
38
+ if (options.file) {
39
+ return resolve(options.cwd, options.file);
40
+ }
41
+ if (options.configFile) {
42
+ return resolve(options.cwd, options.configFile);
43
+ }
44
+ const schemaDir = dirname(options.schemaPath);
45
+ if (options.env) {
46
+ const candidates = SEED_EXTENSIONS.map((ext) => join(schemaDir, "seeds", `${options.env}${ext}`));
47
+ const found = await firstExisting(candidates);
48
+ if (!found) {
49
+ throw schemaError(SchemaErrorCode.invalid_seed, `No seed file found for --env "${options.env}". Looked for: ${candidates.join(", ")}.`, undefined, seedFileSuggestions(candidates));
50
+ }
51
+ return found;
52
+ }
53
+ const candidates = SEED_EXTENSIONS.map((ext) => join(schemaDir, `seed${ext}`));
54
+ const found = await firstExisting(candidates);
55
+ if (!found) {
56
+ throw schemaError(SchemaErrorCode.invalid_seed, `No seed file found. Looked for: ${candidates.join(", ")}.`, undefined, seedFileSuggestions(candidates));
57
+ }
58
+ return found;
59
+ }
60
+ /**
61
+ * Load the `seed(db)` export from a seed file. Accepts a named `seed`
62
+ * export or a default-exported function.
63
+ */
64
+ export async function loadSeedFunction(seedPath) {
65
+ let mod;
66
+ try {
67
+ mod = await importTsModule(seedPath);
68
+ }
69
+ catch (err) {
70
+ throw schemaError(SchemaErrorCode.invalid_seed, `Could not load seed file "${seedPath}": ${err instanceof Error ? err.message : String(err)}`, undefined, ["Check the path and that the file compiles"]);
71
+ }
72
+ const exported = mod.seed;
73
+ const defaultExport = mod.default;
74
+ const fromDefault = typeof defaultExport === "function"
75
+ ? defaultExport
76
+ : isRecord(defaultExport)
77
+ ? defaultExport.seed
78
+ : undefined;
79
+ const fn = exported ?? fromDefault;
80
+ if (typeof fn !== "function") {
81
+ throw schemaError(SchemaErrorCode.invalid_seed, `Seed file "${seedPath}" must export a seed function: \`export async function seed(db) { ... }\`.`, undefined, ["Export a named `seed` function or a default function"]);
82
+ }
83
+ return fn;
84
+ }
85
+ /**
86
+ * Run a seed file inside a single transaction. Any failure rolls the whole
87
+ * seed back, so failed runs are safe to retry. Execution errors propagate
88
+ * unwrapped so their original code and context are preserved.
89
+ */
90
+ export async function runSeed(db, seedPath) {
91
+ const seed = await loadSeedFunction(seedPath);
92
+ await db.$transaction(async (tx) => {
93
+ // The runtime shape is identical for every manifest (repositories by
94
+ // accessor); only the static table types differ, so seed files may
95
+ // annotate with their own `TransactionClient<typeof schema._tables>`.
96
+ await seed(tx);
97
+ });
98
+ }
99
+ //# sourceMappingURL=runner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/seed/runner.ts"],"names":[],"mappings":"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"}