bunderstack 0.24.0 → 0.24.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +1 -0
  3. package/dist/auth.d.ts +20 -9
  4. package/dist/auth.d.ts.map +1 -1
  5. package/dist/auth.js +3 -8
  6. package/dist/auth.js.map +1 -1
  7. package/dist/backend.d.ts +4 -4
  8. package/dist/backend.d.ts.map +1 -1
  9. package/dist/backend.js.map +1 -1
  10. package/dist/config.d.ts +10 -6
  11. package/dist/config.d.ts.map +1 -1
  12. package/dist/config.js.map +1 -1
  13. package/dist/provision-internals.d.ts +1 -1
  14. package/dist/provision-internals.js +1 -1
  15. package/dist/provision-internals.js.map +1 -1
  16. package/dist/provision-runtime.d.ts +7 -0
  17. package/dist/provision-runtime.d.ts.map +1 -0
  18. package/dist/provision-runtime.js +50 -0
  19. package/dist/provision-runtime.js.map +1 -0
  20. package/dist/provision-schema.d.ts +16 -0
  21. package/dist/provision-schema.d.ts.map +1 -0
  22. package/dist/provision-schema.js +63 -0
  23. package/dist/provision-schema.js.map +1 -0
  24. package/dist/provision.d.ts +4 -21
  25. package/dist/provision.d.ts.map +1 -1
  26. package/dist/provision.js +10 -111
  27. package/dist/provision.js.map +1 -1
  28. package/dist/runtime.d.ts +9 -7
  29. package/dist/runtime.d.ts.map +1 -1
  30. package/dist/runtime.js +2 -3
  31. package/dist/runtime.js.map +1 -1
  32. package/dist/testing/fixture.d.ts +1 -1
  33. package/dist/testing/fixture.d.ts.map +1 -1
  34. package/dist/testing/fixture.js +1 -1
  35. package/dist/testing/fixture.js.map +1 -1
  36. package/llms-full.txt +416 -226
  37. package/llms.txt +4 -3
  38. package/package.json +5 -1
  39. package/skills/creating-bunderstack-apps/references/verification.md +7 -6
  40. package/skills/migrating-to-bunderstack/SKILL.md +22 -20
  41. package/skills/migrating-to-bunderstack/references/runtime-replacements.md +4 -3
@@ -0,0 +1,63 @@
1
+ import { detectDialect } from './dialect.js';
2
+ import { applyCommittedMigrations, ensureLocalDataDir, getProvisionInternals, } from './provision-runtime.js';
3
+ const DRIZZLE_KIT_HINT = '[bunderstack] Schema push requires drizzle-kit, which is not installed.\n' +
4
+ ' Development: run `bun add -d drizzle-kit` and import provision from `bunderstack/provision-schema`.\n' +
5
+ ' Production: generate migrations with `bunx drizzle-kit generate`, commit them, and use `bunderstack/provision`.';
6
+ /** Push the merged schema to the database via drizzle-kit/api. */
7
+ export async function provisionSchema(db, schema, options) {
8
+ const dialect = detectDialect(schema);
9
+ if (options?.databaseUrl) {
10
+ await ensureLocalDataDir(options.databaseUrl, dialect);
11
+ }
12
+ let kit;
13
+ try {
14
+ kit = await import('drizzle-kit/api');
15
+ }
16
+ catch (cause) {
17
+ throw new Error(DRIZZLE_KIT_HINT, { cause });
18
+ }
19
+ const result = dialect === 'pg'
20
+ ? await kit.pushSchema(schema, db)
21
+ : await kit.pushSQLiteSchema(schema, db);
22
+ if (result.hasDataLoss && !options?.force) {
23
+ throw new Error('[bunderstack] Schema push would cause data loss. Run `bunx drizzle-kit push` or call provision(app, { force: true }).');
24
+ }
25
+ for (const warning of result.warnings) {
26
+ console.warn(`[bunderstack] ${warning}`);
27
+ }
28
+ if (result.statementsToExecute.length === 0)
29
+ return;
30
+ await result.apply();
31
+ console.log(`[bunderstack] provisioned ${result.statementsToExecute.length} schema change(s)`);
32
+ }
33
+ /**
34
+ * Development provisioning: apply committed migrations when present,
35
+ * otherwise push the current schema through Drizzle Kit.
36
+ */
37
+ export async function provision(app, options) {
38
+ if (await applyCommittedMigrations(app))
39
+ return;
40
+ const internals = getProvisionInternals(app);
41
+ await provisionSchema(internals.db, internals.schema, {
42
+ force: options?.force,
43
+ databaseUrl: internals.databaseUrl,
44
+ });
45
+ }
46
+ export async function provisionForTest(app, mode) {
47
+ if (mode === 'auto') {
48
+ await provision(app, { force: true });
49
+ return;
50
+ }
51
+ const internals = getProvisionInternals(app);
52
+ if (mode === 'push') {
53
+ await provisionSchema(internals.db, internals.schema, {
54
+ force: true,
55
+ databaseUrl: internals.databaseUrl,
56
+ });
57
+ return;
58
+ }
59
+ if (!(await applyCommittedMigrations(app))) {
60
+ throw new Error('[bunderstack] committed migrations journal not found');
61
+ }
62
+ }
63
+ //# sourceMappingURL=provision-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision-schema.js","sourceRoot":"","sources":["../src/provision-schema.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AnyDb } from './dialect'\n\nimport { detectDialect } from './dialect'\nimport {\n applyCommittedMigrations,\n ensureLocalDataDir,\n getProvisionInternals,\n} from './provision-runtime'\n\nconst DRIZZLE_KIT_HINT =\n '[bunderstack] Schema push requires drizzle-kit, which is not installed.\\n' +\n ' Development: run `bun add -d drizzle-kit` and import provision from `bunderstack/provision-schema`.\\n' +\n ' Production: generate migrations with `bunx drizzle-kit generate`, commit them, and use `bunderstack/provision`.'\n\n/** Push the merged schema to the database via drizzle-kit/api. */\nexport async function provisionSchema<TSchema extends Record<string, unknown>>(\n db: AnyDb,\n schema: TSchema,\n options?: { force?: boolean; databaseUrl?: string },\n): Promise<void> {\n const dialect = detectDialect(schema)\n if (options?.databaseUrl) {\n await ensureLocalDataDir(options.databaseUrl, dialect)\n }\n\n let kit: typeof import('drizzle-kit/api')\n try {\n kit = await import('drizzle-kit/api')\n } catch (cause) {\n throw new Error(DRIZZLE_KIT_HINT, { cause })\n }\n\n const result =\n dialect === 'pg'\n ? await kit.pushSchema(schema, db as never)\n : await kit.pushSQLiteSchema(schema, db as never)\n\n if (result.hasDataLoss && !options?.force) {\n throw new Error(\n '[bunderstack] Schema push would cause data loss. Run `bunx drizzle-kit push` or call provision(app, { force: true }).',\n )\n }\n for (const warning of result.warnings) {\n console.warn(`[bunderstack] ${warning}`)\n }\n if (result.statementsToExecute.length === 0) return\n\n await result.apply()\n console.log(\n `[bunderstack] provisioned ${result.statementsToExecute.length} schema change(s)`,\n )\n}\n\n/**\n * Development provisioning: apply committed migrations when present,\n * otherwise push the current schema through Drizzle Kit.\n */\nexport async function provision(\n app: object,\n options?: { force?: boolean },\n): Promise<void> {\n if (await applyCommittedMigrations(app)) return\n const internals = getProvisionInternals(app)\n await provisionSchema(internals.db, internals.schema, {\n force: options?.force,\n databaseUrl: internals.databaseUrl,\n })\n}\n\nexport type TestSchemaMode = 'auto' | 'push' | 'migrations'\n\nexport async function provisionForTest(\n app: object,\n mode: TestSchemaMode,\n): Promise<void> {\n if (mode === 'auto') {\n await provision(app, { force: true })\n return\n }\n\n const internals = getProvisionInternals(app)\n if (mode === 'push') {\n await provisionSchema(internals.db, internals.schema, {\n force: true,\n databaseUrl: internals.databaseUrl,\n })\n return\n }\n\n if (!(await applyCommittedMigrations(app))) {\n throw new Error('[bunderstack] committed migrations journal not found')\n }\n}\n"]}
@@ -1,25 +1,8 @@
1
- import type { AnyDb } from './dialect.js';
2
- /** Push the merged schema to the database via drizzle-kit/api. */
3
- export declare function provisionSchema<TSchema extends Record<string, unknown>>(db: AnyDb, schema: TSchema, options?: {
4
- force?: boolean;
5
- databaseUrl?: string;
6
- }): Promise<void>;
7
1
  /**
8
- * Provision the database for a Bunderstack app.
2
+ * Apply committed migrations for a Bunderstack app.
9
3
  *
10
- * The migrations folder is the mode switch:
11
- * - `<migrations>/meta/_journal.json` exists → apply committed migrations via
12
- * drizzle-orm's migrator. Pure runtime; drizzle-kit is never imported, so a
13
- * fresh clone deploys with `bun install --production`.
14
- * - No migrations → development: push the schema straight to the database via
15
- * drizzle-kit (install it with `bun add -d drizzle-kit`).
16
- *
17
- * Once you run `bunx drizzle-kit generate` for the first time, provision stops
18
- * pushing and every schema change goes through an explicit `generate`.
4
+ * This production entrypoint has no Drizzle Kit dependency. Development
5
+ * schema push is deliberately isolated in `bunderstack/provision-schema`.
19
6
  */
20
- export declare function provision(app: object, options?: {
21
- force?: boolean;
22
- }): Promise<void>;
23
- export type TestSchemaMode = 'auto' | 'push' | 'migrations';
24
- export declare function provisionForTest(app: object, mode: TestSchemaMode): Promise<void>;
7
+ export declare function provision(app: object): Promise<void>;
25
8
  //# sourceMappingURL=provision.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAW,MAAM,WAAW,CAAA;AA0C/C,kEAAkE;AAClE,wBAAsB,eAAe,CAAC,OAAO,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3E,EAAE,EAAE,KAAK,EACT,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAClD,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,SAAS,CAC7B,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAC5B,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,YAAY,CAAA;AAE3D,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,IAAI,CAAC,CA8Bf"}
1
+ {"version":3,"file":"provision.d.ts","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1D"}
package/dist/provision.js CHANGED
@@ -1,117 +1,16 @@
1
- // src/provision.ts
2
- import { access, mkdir } from 'node:fs/promises';
3
- import { dirname, join } from 'node:path';
4
- import { detectDialect } from './dialect.js';
5
- import { PROVISION_INTERNALS, } from './provision-internals.js';
6
- /** Create the local backing directory for file-based urls, per dialect. */
7
- async function ensureLocalDataDir(url, dialect) {
8
- if (dialect === 'pg') {
9
- // PGlite data dir: `file:<dir>` or a bare path; server/memory urls need nothing.
10
- if (/^postgres(ql)?:\/\//.test(url))
11
- return;
12
- const raw = url.startsWith('file:') ? url.slice('file:'.length) : url;
13
- if (raw === ':memory:' || raw.startsWith('memory://'))
14
- return;
15
- await mkdir(raw, { recursive: true });
16
- return;
17
- }
18
- const match = /^file:(.+)$/.exec(url);
19
- if (!match)
20
- return;
21
- const filePath = match[1];
22
- if (filePath === ':memory:')
23
- return;
24
- await mkdir(dirname(filePath), { recursive: true });
25
- }
26
- async function exists(path) {
27
- try {
28
- await access(path);
29
- return true;
30
- }
31
- catch {
32
- return false;
33
- }
34
- }
35
- const DRIZZLE_KIT_HINT = '[bunderstack] Schema push requires drizzle-kit, which is not installed.\n' +
36
- ' Development: run `bun add -d drizzle-kit` — provision() will push schema changes to the database on startup.\n' +
37
- ' Production: generate migrations locally with `bunx drizzle-kit generate` and commit the folder — provision() applies them without drizzle-kit.';
38
- /** Push the merged schema to the database via drizzle-kit/api. */
39
- export async function provisionSchema(db, schema, options) {
40
- const dialect = detectDialect(schema);
41
- if (options?.databaseUrl) {
42
- await ensureLocalDataDir(options.databaseUrl, dialect);
43
- }
44
- let kit;
45
- try {
46
- kit = await import('drizzle-kit/api');
47
- }
48
- catch (cause) {
49
- throw new Error(DRIZZLE_KIT_HINT, { cause });
50
- }
51
- const result = dialect === 'pg'
52
- ? await kit.pushSchema(schema, db)
53
- : await kit.pushSQLiteSchema(schema, db);
54
- if (result.hasDataLoss && !options?.force) {
55
- throw new Error('[bunderstack] Schema push would cause data loss. Run `bunx drizzle-kit push` or call provision(app, { force: true }).');
56
- }
57
- if (result.warnings.length > 0) {
58
- for (const warning of result.warnings) {
59
- console.warn(`[bunderstack] ${warning}`);
60
- }
61
- }
62
- if (result.statementsToExecute.length === 0)
63
- return;
64
- await result.apply();
65
- console.log(`[bunderstack] provisioned ${result.statementsToExecute.length} schema change(s)`);
66
- }
1
+ import { applyCommittedMigrations } from './provision-runtime.js';
2
+ const MIGRATIONS_REQUIRED = '[bunderstack] No committed migrations journal was found.\n' +
3
+ ' Production: generate migrations with `bunx drizzle-kit generate`, commit them, and keep using `bunderstack/provision`.\n' +
4
+ ' Development schema push: import provision from `bunderstack/provision-schema`.';
67
5
  /**
68
- * Provision the database for a Bunderstack app.
69
- *
70
- * The migrations folder is the mode switch:
71
- * - `<migrations>/meta/_journal.json` exists → apply committed migrations via
72
- * drizzle-orm's migrator. Pure runtime; drizzle-kit is never imported, so a
73
- * fresh clone deploys with `bun install --production`.
74
- * - No migrations → development: push the schema straight to the database via
75
- * drizzle-kit (install it with `bun add -d drizzle-kit`).
6
+ * Apply committed migrations for a Bunderstack app.
76
7
  *
77
- * Once you run `bunx drizzle-kit generate` for the first time, provision stops
78
- * pushing and every schema change goes through an explicit `generate`.
8
+ * This production entrypoint has no Drizzle Kit dependency. Development
9
+ * schema push is deliberately isolated in `bunderstack/provision-schema`.
79
10
  */
80
- export async function provision(app, options) {
81
- const internals = app[PROVISION_INTERNALS];
82
- if (!internals) {
83
- throw new Error('[bunderstack] provision() expects the app returned by bunderstack().');
84
- }
85
- const { db, schema, databaseUrl, migrationsFolder, dialect, adapter } = internals;
86
- const journal = join(migrationsFolder, 'meta', '_journal.json');
87
- if (await exists(journal)) {
88
- await ensureLocalDataDir(databaseUrl, dialect);
89
- await adapter.migrate(db, migrationsFolder);
90
- return;
91
- }
92
- await provisionSchema(db, schema, { force: options?.force, databaseUrl });
93
- }
94
- export async function provisionForTest(app, mode) {
95
- if (mode === 'auto') {
96
- await provision(app, { force: true });
97
- return;
98
- }
99
- const internals = app[PROVISION_INTERNALS];
100
- if (!internals) {
101
- throw new Error('[bunderstack] test provisioning expects a Bunderstack runtime');
102
- }
103
- if (mode === 'push') {
104
- await provisionSchema(internals.db, internals.schema, {
105
- force: true,
106
- databaseUrl: internals.databaseUrl,
107
- });
108
- return;
109
- }
110
- const journal = join(internals.migrationsFolder, 'meta', '_journal.json');
111
- if (!(await exists(journal))) {
112
- throw new Error('[bunderstack] committed migrations journal not found');
11
+ export async function provision(app) {
12
+ if (!(await applyCommittedMigrations(app))) {
13
+ throw new Error(MIGRATIONS_REQUIRED);
113
14
  }
114
- await ensureLocalDataDir(internals.databaseUrl, internals.dialect);
115
- await internals.adapter.migrate(internals.db, internals.migrationsFolder);
116
15
  }
117
16
  //# sourceMappingURL=provision.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provision.js","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"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","sourcesContent":["// src/provision.ts\nimport { access, mkdir } from 'node:fs/promises'\nimport { dirname, join } from 'node:path'\n\nimport type { AnyDb, Dialect } from './dialect'\n\nimport { detectDialect } from './dialect'\nimport {\n PROVISION_INTERNALS,\n type WithProvisionInternals,\n} from './provision-internals'\n\n/** Create the local backing directory for file-based urls, per dialect. */\nasync function ensureLocalDataDir(\n url: string,\n dialect: Dialect,\n): Promise<void> {\n if (dialect === 'pg') {\n // PGlite data dir: `file:<dir>` or a bare path; server/memory urls need nothing.\n if (/^postgres(ql)?:\\/\\//.test(url)) return\n const raw = url.startsWith('file:') ? url.slice('file:'.length) : url\n if (raw === ':memory:' || raw.startsWith('memory://')) return\n await mkdir(raw, { recursive: true })\n return\n }\n const match = /^file:(.+)$/.exec(url)\n if (!match) return\n const filePath = match[1]!\n if (filePath === ':memory:') return\n await mkdir(dirname(filePath), { recursive: true })\n}\n\nasync function exists(path: string): Promise<boolean> {\n try {\n await access(path)\n return true\n } catch {\n return false\n }\n}\n\nconst DRIZZLE_KIT_HINT =\n '[bunderstack] Schema push requires drizzle-kit, which is not installed.\\n' +\n ' Development: run `bun add -d drizzle-kit` — provision() will push schema changes to the database on startup.\\n' +\n ' Production: generate migrations locally with `bunx drizzle-kit generate` and commit the folder — provision() applies them without drizzle-kit.'\n\n/** Push the merged schema to the database via drizzle-kit/api. */\nexport async function provisionSchema<TSchema extends Record<string, unknown>>(\n db: AnyDb,\n schema: TSchema,\n options?: { force?: boolean; databaseUrl?: string },\n): Promise<void> {\n const dialect = detectDialect(schema)\n if (options?.databaseUrl) {\n await ensureLocalDataDir(options.databaseUrl, dialect)\n }\n\n let kit: typeof import('drizzle-kit/api')\n try {\n kit = await import('drizzle-kit/api')\n } catch (cause) {\n throw new Error(DRIZZLE_KIT_HINT, { cause })\n }\n\n const result =\n dialect === 'pg'\n ? await kit.pushSchema(schema, db as never)\n : await kit.pushSQLiteSchema(schema, db as never)\n\n if (result.hasDataLoss && !options?.force) {\n throw new Error(\n '[bunderstack] Schema push would cause data loss. Run `bunx drizzle-kit push` or call provision(app, { force: true }).',\n )\n }\n\n if (result.warnings.length > 0) {\n for (const warning of result.warnings) {\n console.warn(`[bunderstack] ${warning}`)\n }\n }\n\n if (result.statementsToExecute.length === 0) return\n\n await result.apply()\n\n console.log(\n `[bunderstack] provisioned ${result.statementsToExecute.length} schema change(s)`,\n )\n}\n\n/**\n * Provision the database for a Bunderstack app.\n *\n * The migrations folder is the mode switch:\n * - `<migrations>/meta/_journal.json` exists → apply committed migrations via\n * drizzle-orm's migrator. Pure runtime; drizzle-kit is never imported, so a\n * fresh clone deploys with `bun install --production`.\n * - No migrations → development: push the schema straight to the database via\n * drizzle-kit (install it with `bun add -d drizzle-kit`).\n *\n * Once you run `bunx drizzle-kit generate` for the first time, provision stops\n * pushing and every schema change goes through an explicit `generate`.\n */\nexport async function provision(\n app: object,\n options?: { force?: boolean },\n): Promise<void> {\n const internals = (app as WithProvisionInternals)[PROVISION_INTERNALS]\n if (!internals) {\n throw new Error(\n '[bunderstack] provision() expects the app returned by bunderstack().',\n )\n }\n\n const { db, schema, databaseUrl, migrationsFolder, dialect, adapter } =\n internals\n const journal = join(migrationsFolder, 'meta', '_journal.json')\n\n if (await exists(journal)) {\n await ensureLocalDataDir(databaseUrl, dialect)\n await adapter.migrate(db as never, migrationsFolder)\n return\n }\n\n await provisionSchema(db, schema, { force: options?.force, databaseUrl })\n}\n\nexport type TestSchemaMode = 'auto' | 'push' | 'migrations'\n\nexport async function provisionForTest(\n app: object,\n mode: TestSchemaMode,\n): Promise<void> {\n if (mode === 'auto') {\n await provision(app, { force: true })\n return\n }\n\n const internals = (app as WithProvisionInternals)[PROVISION_INTERNALS]\n if (!internals) {\n throw new Error(\n '[bunderstack] test provisioning expects a Bunderstack runtime',\n )\n }\n\n if (mode === 'push') {\n await provisionSchema(internals.db, internals.schema, {\n force: true,\n databaseUrl: internals.databaseUrl,\n })\n return\n }\n\n const journal = join(internals.migrationsFolder, 'meta', '_journal.json')\n if (!(await exists(journal))) {\n throw new Error('[bunderstack] committed migrations journal not found')\n }\n await ensureLocalDataDir(internals.databaseUrl, internals.dialect)\n await internals.adapter.migrate(\n internals.db as never,\n internals.migrationsFolder,\n )\n}\n"]}
1
+ {"version":3,"file":"provision.js","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,MAAM,mBAAmB,GACvB,4DAA4D;IAC5D,4HAA4H;IAC5H,kFAAkF,CAAA;AAEpF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,CAAC,MAAM,wBAAwB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;IACtC,CAAC;AACH,CAAC","sourcesContent":["import { applyCommittedMigrations } from './provision-runtime'\n\nconst MIGRATIONS_REQUIRED =\n '[bunderstack] No committed migrations journal was found.\\n' +\n ' Production: generate migrations with `bunx drizzle-kit generate`, commit them, and keep using `bunderstack/provision`.\\n' +\n ' Development schema push: import provision from `bunderstack/provision-schema`.'\n\n/**\n * Apply committed migrations for a Bunderstack app.\n *\n * This production entrypoint has no Drizzle Kit dependency. Development\n * schema push is deliberately isolated in `bunderstack/provision-schema`.\n */\nexport async function provision(app: object): Promise<void> {\n if (!(await applyCommittedMigrations(app))) {\n throw new Error(MIGRATIONS_REQUIRED)\n }\n}\n"]}
package/dist/runtime.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import type { AnyRouter as AnyORPCRouter } from '@orpc/server';
2
+ import type { Auth } from 'better-auth';
2
3
  import type { TableAccessInput } from './access.js';
3
4
  import type { AuthSessionResolver } from './access.js';
4
5
  import type { RealtimeApiRouter } from './api/realtime-router.js';
@@ -11,13 +12,14 @@ import type { MessagingConfig, MessagingFacadesFor } from './messaging/index.js'
11
12
  import type { MessagingAdapter } from './messaging/runtime.js';
12
13
  import type { ResolvedStorageBuckets, StorageConfigInput } from './storage/buckets.js';
13
14
  import type { StorageAdapter } from './storage/index.js';
14
- import { createAuth } from './auth.js';
15
- import { type BunderstackConfig } from './config.js';
15
+ import { type BunderstackAuth } from './auth.js';
16
+ import { type BetterAuthConfig, type BunderstackConfig } from './config.js';
16
17
  import { type EnvConfigInput, type ValidatedEnv } from './env.js';
17
18
  import { type LifecycleStatus } from './lifecycle.js';
18
19
  import { type BunderstackLogger } from './logging.js';
19
20
  import { type RealtimeFacade } from './realtime/facade.js';
20
- export type AuthInstance = ReturnType<typeof createAuth>;
21
+ /** Base Better Auth contract used by framework internals and API context. */
22
+ export type AuthInstance = Auth;
21
23
  export type RuntimeOverrides = {
22
24
  database?: DatabaseConnection;
23
25
  resolvedStorage?: ResolvedStorageBuckets;
@@ -77,10 +79,10 @@ export type AppRunWorkerOptions = AppStartWorkerOptions & {
77
79
  export type BucketNamesOf<TStorage> = TStorage extends {
78
80
  buckets: infer B extends Record<string, unknown>;
79
81
  } ? keyof B & string : string;
80
- export type BunderstackApp<TSchema extends Record<string, unknown>, TAccess extends Record<string, TableAccessInput> | undefined = undefined, TBuckets extends string = string, TEnv extends EnvConfigInput | undefined = undefined, TJobsDefs extends JobsDefs | undefined = undefined, TCustomApiRouter extends AnyORPCRouter | undefined = undefined, TRealtime = undefined, TMessaging extends MessagingConfig | undefined = undefined> = {
82
+ export type BunderstackApp<TSchema extends Record<string, unknown>, TAccess extends Record<string, TableAccessInput> | undefined = undefined, TBuckets extends string = string, TEnv extends EnvConfigInput | undefined = undefined, TJobsDefs extends JobsDefs | undefined = undefined, TCustomApiRouter extends AnyORPCRouter | undefined = undefined, TRealtime = undefined, TMessaging extends MessagingConfig | undefined = undefined, TAuthConfig extends BetterAuthConfig = BetterAuthConfig> = {
81
83
  handler: (req: Request) => Promise<Response>;
82
84
  db: DbFor<TSchema>;
83
- auth: AuthInstance;
85
+ auth: BunderstackAuth<TAuthConfig>;
84
86
  storage: StorageFacade;
85
87
  /** Validated env: bunderstack's base vars plus the config's `env` extension. */
86
88
  env: ValidatedEnv<TEnv>;
@@ -113,11 +115,11 @@ export type BunderstackApp<TSchema extends Record<string, unknown>, TAccess exte
113
115
  ] extends [false | undefined] ? {} : RealtimeApiRouter>;
114
116
  };
115
117
  };
116
- export declare function materializeBunderstack<TSchema extends Record<string, unknown>, const TAccess extends Record<string, TableAccessInput> | undefined = undefined, const TStorage extends StorageConfigInput | undefined = undefined, const TEnv extends EnvConfigInput | undefined = undefined, const TJobsDefs extends JobsDefs | undefined = undefined, TCustomApiRouter extends AnyORPCRouter | undefined = undefined, const TRealtime extends BunderstackConfig<TSchema, TAccess, TStorage, TEnv, TCustomApiRouter>['realtime'] = undefined, const TMessaging extends MessagingConfig | undefined = undefined>(options: BunderstackConfig<TSchema, TAccess, TStorage, TEnv, TCustomApiRouter> & {
118
+ export declare function materializeBunderstack<TSchema extends Record<string, unknown>, const TAccess extends Record<string, TableAccessInput> | undefined = undefined, const TStorage extends StorageConfigInput | undefined = undefined, const TEnv extends EnvConfigInput | undefined = undefined, const TJobsDefs extends JobsDefs | undefined = undefined, TCustomApiRouter extends AnyORPCRouter | undefined = undefined, const TRealtime extends BunderstackConfig<TSchema, TAccess, TStorage, TEnv, TCustomApiRouter>['realtime'] = undefined, const TMessaging extends MessagingConfig | undefined = undefined, const TAuthConfig extends BetterAuthConfig = BetterAuthConfig>(options: BunderstackConfig<TSchema, TAccess, TStorage, TEnv, TCustomApiRouter, TAuthConfig> & {
117
119
  realtime?: TRealtime;
118
120
  messaging?: TMessaging;
119
121
  jobs?: TJobsDefs | ((j: BunderstackJobsBuilder<TSchema, ValidatedEnv<TEnv>, TMessaging>) => TJobsDefs);
120
- }, source: Record<string, string | undefined>, overrides?: RuntimeOverrides, env?: ValidatedEnv<TEnv>): Promise<BunderstackApp<TSchema, TAccess, BucketNamesOf<TStorage>, TEnv, TJobsDefs, TCustomApiRouter, TRealtime, TMessaging>>;
122
+ }, source: Record<string, string | undefined>, overrides?: RuntimeOverrides, env?: ValidatedEnv<TEnv>): Promise<BunderstackApp<TSchema, TAccess, BucketNamesOf<TStorage>, TEnv, TJobsDefs, TCustomApiRouter, TRealtime, TMessaging, TAuthConfig>>;
121
123
  export { listSpec } from './api/list-spec.js';
122
124
  export type { ListSpecOptions } from './api/list-spec.js';
123
125
  export type { BunderstackDb, BunderstackTx } from './db.js';
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/runtime.js CHANGED
@@ -1,4 +1,3 @@
1
- // src/runtime.ts
2
1
  import { SmartCoercionHandlerPlugin } from '@orpc/json-schema';
3
2
  import { OpenAPIGenerator, OpenAPIGeneratorError } from '@orpc/openapi';
4
3
  import { OpenAPIHandler } from '@orpc/openapi/fetch';
@@ -13,7 +12,7 @@ import { buildApiRegistry, normalizeForeignOpenAPISpec } from './api/registry.js
13
12
  import { buildApiRouter } from './api/router.js';
14
13
  import { buildStorageApiRouter } from './api/storage-router.js';
15
14
  import { createAuth, missingAuthModels, toAuthSessionResolver, withEmailAuthDefaults, } from './auth.js';
16
- import { resolveConfig } from './config.js';
15
+ import { resolveConfig, } from './config.js';
17
16
  import { resolveAuthConfig, resolveRealtimeRedisUrl } from './config.js';
18
17
  import { createDb } from './db.js';
19
18
  import { detectDialect } from './dialect.js';
@@ -442,7 +441,7 @@ export async function materializeBunderstack(options, source, overrides = {}, in
442
441
  messaging,
443
442
  jobs,
444
443
  realtime,
445
- auth,
444
+ auth: auth,
446
445
  authResolver,
447
446
  logger,
448
447
  }, req);