convex-zen 1.0.2 → 1.2.0

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 (62) hide show
  1. package/dist/cli/generate.d.ts.map +1 -1
  2. package/dist/cli/generate.js +85 -17
  3. package/dist/cli/generate.js.map +1 -1
  4. package/dist/client/auth-runtime.d.ts +84 -0
  5. package/dist/client/auth-runtime.d.ts.map +1 -0
  6. package/dist/client/auth-runtime.js +434 -0
  7. package/dist/client/auth-runtime.js.map +1 -0
  8. package/dist/client/auth-token-manager.d.ts +34 -0
  9. package/dist/client/auth-token-manager.d.ts.map +1 -0
  10. package/dist/client/auth-token-manager.js +114 -0
  11. package/dist/client/auth-token-manager.js.map +1 -0
  12. package/dist/client/convex-fetchers.d.ts +21 -0
  13. package/dist/client/convex-fetchers.d.ts.map +1 -0
  14. package/dist/client/convex-fetchers.js +37 -0
  15. package/dist/client/convex-fetchers.js.map +1 -0
  16. package/dist/client/framework-adapter.d.ts +54 -0
  17. package/dist/client/framework-adapter.d.ts.map +1 -0
  18. package/dist/client/framework-adapter.js +218 -0
  19. package/dist/client/framework-adapter.js.map +1 -0
  20. package/dist/client/index.d.ts +10 -6
  21. package/dist/client/index.d.ts.map +1 -1
  22. package/dist/client/index.js +9 -9
  23. package/dist/client/index.js.map +1 -1
  24. package/dist/client/next.d.ts +250 -0
  25. package/dist/client/next.d.ts.map +1 -0
  26. package/dist/client/next.js +1626 -0
  27. package/dist/client/next.js.map +1 -0
  28. package/dist/client/react.d.ts +1 -3
  29. package/dist/client/react.d.ts.map +1 -1
  30. package/dist/client/react.js +3 -4
  31. package/dist/client/react.js.map +1 -1
  32. package/dist/client/tanstack-start-client.d.ts +138 -15
  33. package/dist/client/tanstack-start-client.d.ts.map +1 -1
  34. package/dist/client/tanstack-start-client.js +356 -14
  35. package/dist/client/tanstack-start-client.js.map +1 -1
  36. package/dist/client/tanstack-start-plugin-meta.d.ts +5 -0
  37. package/dist/client/tanstack-start-plugin-meta.d.ts.map +1 -1
  38. package/dist/client/tanstack-start-plugin-meta.js.map +1 -1
  39. package/dist/client/tanstack-start-plugins.d.ts +13 -1
  40. package/dist/client/tanstack-start-plugins.d.ts.map +1 -1
  41. package/dist/client/tanstack-start-plugins.js +135 -0
  42. package/dist/client/tanstack-start-plugins.js.map +1 -1
  43. package/dist/client/tanstack-start.d.ts +20 -37
  44. package/dist/client/tanstack-start.d.ts.map +1 -1
  45. package/dist/client/tanstack-start.js +139 -40
  46. package/dist/client/tanstack-start.js.map +1 -1
  47. package/package.json +22 -17
  48. package/src/cli/generate.ts +114 -21
  49. package/src/client/auth-runtime.ts +594 -0
  50. package/src/client/auth-token-manager.ts +196 -0
  51. package/src/client/convex-fetchers.ts +89 -0
  52. package/src/client/framework-adapter.ts +376 -0
  53. package/src/client/index.ts +877 -835
  54. package/src/client/next.ts +2769 -0
  55. package/src/client/react.ts +4 -6
  56. package/src/client/tanstack-start-client.ts +917 -24
  57. package/src/client/tanstack-start-plugin-meta.ts +7 -0
  58. package/src/client/tanstack-start-plugins.ts +188 -0
  59. package/src/client/tanstack-start.ts +209 -69
  60. package/src/component/_generated/component.ts +2 -2
  61. package/src/component/core/sessions.ts +33 -0
  62. package/src/component/gateway.ts +32 -20
@@ -1 +1 @@
1
- {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAsYD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CA8HzB"}
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,OAAO,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AA2cD,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CA+IzB"}
@@ -1,6 +1,13 @@
1
1
  import { access, mkdir, readFile, readdir, rm, writeFile, } from "node:fs/promises";
2
2
  import path from "node:path";
3
3
  const GENERATED_MARKER = "// @generated by convex-zen generate. DO NOT EDIT.";
4
+ const RESERVED_CORE_FUNCTION_NAMES = new Set([
5
+ "getSession",
6
+ "signIn",
7
+ "signOut",
8
+ "plugin",
9
+ "core",
10
+ ]);
4
11
  function normalizeContent(content) {
5
12
  return content.endsWith("\n") ? content : `${content}\n`;
6
13
  }
@@ -17,6 +24,16 @@ function isGeneratedFile(content) {
17
24
  return content.startsWith(GENERATED_MARKER);
18
25
  }
19
26
  async function resolveAuthSource(cwd) {
27
+ const zenConfigPath = path.join(cwd, "convex", "zen.config.ts");
28
+ if (await fileExists(zenConfigPath)) {
29
+ return {
30
+ absolutePath: zenConfigPath,
31
+ relativePath: path.join("convex", "zen.config.ts"),
32
+ layout: "zen",
33
+ coreAuthImportPath: "../zen.config",
34
+ pluginAuthImportPath: "../../zen.config",
35
+ };
36
+ }
20
37
  const zenPath = path.join(cwd, "convex", "zenConvex.ts");
21
38
  if (await fileExists(zenPath)) {
22
39
  return {
@@ -62,7 +79,9 @@ function hasOAuthProviders(authSource) {
62
79
  /\bgithubProvider\s*\(/.test(authSource));
63
80
  }
64
81
  function renderCoreFile(options) {
65
- const serverImports = options.includeOAuth ? "action, mutation" : "mutation";
82
+ const serverImports = options.includeOAuth
83
+ ? "action, mutation, query"
84
+ : "mutation, query";
66
85
  const authImportPath = options.authImportPath;
67
86
  const oauthExports = options.includeOAuth
68
87
  ? `
@@ -151,7 +170,7 @@ export const resetPassword = mutation({
151
170
  },
152
171
  });
153
172
 
154
- export const signOut = mutation({
173
+ export const invalidateSession = mutation({
155
174
  args: {
156
175
  token: v.string(),
157
176
  },
@@ -169,7 +188,7 @@ export const validateSession = mutation({
169
188
  },
170
189
  });
171
190
 
172
- export const currentUser = mutation({
191
+ export const currentUser = query({
173
192
  args: {
174
193
  token: v.optional(v.string()),
175
194
  },
@@ -263,7 +282,7 @@ export const deleteUser = mutation({
263
282
  });
264
283
  `);
265
284
  }
266
- function parsePluginFunctionKinds(source) {
285
+ function parseFunctionKinds(source) {
267
286
  const result = {};
268
287
  const pattern = /export\s+const\s+([A-Za-z0-9_]+)\s*=\s*(query|mutation|action)\s*\(/g;
269
288
  let match = pattern.exec(source);
@@ -277,20 +296,61 @@ function parsePluginFunctionKinds(source) {
277
296
  }
278
297
  return result;
279
298
  }
280
- function renderPluginMetaFile(pluginMeta) {
281
- const normalizedEntries = Object.entries(pluginMeta)
299
+ function parseExportedFunctionNames(source) {
300
+ const names = new Set();
301
+ const pattern = /export\s+const\s+([A-Za-z0-9_]+)\s*=/g;
302
+ let match = pattern.exec(source);
303
+ while (match) {
304
+ if (match[1]) {
305
+ names.add(match[1]);
306
+ }
307
+ match = pattern.exec(source);
308
+ }
309
+ return names;
310
+ }
311
+ function assertNoReservedCoreFunctionNames(source) {
312
+ const exportedNames = parseExportedFunctionNames(source);
313
+ const conflicts = [];
314
+ for (const reservedName of RESERVED_CORE_FUNCTION_NAMES) {
315
+ if (exportedNames.has(reservedName)) {
316
+ conflicts.push(reservedName);
317
+ }
318
+ }
319
+ if (conflicts.length === 0) {
320
+ return;
321
+ }
322
+ throw new Error(`Generated core wrappers include reserved auth-client names: ${conflicts.join(", ")}. ` +
323
+ "Rename core wrappers to non-reserved names.");
324
+ }
325
+ function renderAuthMetaFile(coreMeta, pluginMeta) {
326
+ const normalizedCore = Object.fromEntries(Object.entries(coreMeta).sort(([a], [b]) => a.localeCompare(b)));
327
+ const normalizedPluginEntries = Object.entries(pluginMeta)
282
328
  .sort(([a], [b]) => a.localeCompare(b))
283
329
  .map(([pluginName, functions]) => {
284
330
  const sortedFunctions = Object.fromEntries(Object.entries(functions).sort(([a], [b]) => a.localeCompare(b)));
285
331
  return [pluginName, sortedFunctions];
286
332
  });
287
- const normalizedMeta = Object.fromEntries(normalizedEntries);
333
+ const normalizedPlugin = Object.fromEntries(normalizedPluginEntries);
288
334
  return normalizeContent(`${GENERATED_MARKER}
289
- export const authPluginMeta = ${JSON.stringify(normalizedMeta, null, 2)} as const;
335
+ export const authMeta = ${JSON.stringify({
336
+ core: normalizedCore,
337
+ plugin: normalizedPlugin,
338
+ }, null, 2)} as const;
339
+
340
+ export const authCoreMeta = authMeta.core;
341
+ export const authPluginMeta = authMeta.plugin;
290
342
 
343
+ export type AuthMeta = typeof authMeta;
344
+ export type AuthCoreMeta = typeof authCoreMeta;
291
345
  export type AuthPluginMeta = typeof authPluginMeta;
292
346
  `);
293
347
  }
348
+ function renderPluginMetaCompatFile() {
349
+ return normalizeContent(`${GENERATED_MARKER}
350
+ export { authPluginMeta } from "../metaGenerated";
351
+ export type { AuthPluginMeta } from "../metaGenerated";
352
+ `);
353
+ }
294
354
  async function upsertGeneratedFile(file, options, result) {
295
355
  const exists = await fileExists(file.absolutePath);
296
356
  if (!exists) {
@@ -345,10 +405,10 @@ export async function generateAuthFunctions(options) {
345
405
  const pluginDir = path.join(authDir, "plugin");
346
406
  const authSource = await resolveAuthSource(options.cwd);
347
407
  if (!authSource) {
348
- throw new Error(`Missing auth source file. Expected: ${path.join("convex", "zenConvex.ts")}`);
408
+ throw new Error(`Missing auth source file. Expected one of: ${path.join("convex", "zen.config.ts")}, ${path.join("convex", "zenConvex.ts")}`);
349
409
  }
350
410
  if (authSource.layout !== "zen") {
351
- result.warnings.push(`Legacy auth source detected (${authSource.relativePath}). Move to ${path.join("convex", "zenConvex.ts")}.`);
411
+ result.warnings.push(`Legacy auth source detected (${authSource.relativePath}). Move to ${path.join("convex", "zen.config.ts")}.`);
352
412
  }
353
413
  const authSourceContents = await readFile(authSource.absolutePath, "utf8");
354
414
  const enabledPlugins = detectEnabledPlugins(authSourceContents);
@@ -358,17 +418,20 @@ export async function generateAuthFunctions(options) {
358
418
  if (!/export\s+const\s+authOptions\s*=/.test(authSourceContents)) {
359
419
  result.warnings.push(`authOptions export was not found in ${authSource.relativePath} (recommended for generator compatibility).`);
360
420
  }
421
+ const coreContent = renderCoreFile({
422
+ includeOAuth,
423
+ authImportPath: coreAuthImportPath,
424
+ });
425
+ assertNoReservedCoreFunctionNames(coreContent);
361
426
  const filesToGenerate = [
362
427
  {
363
428
  absolutePath: path.join(authDir, "core.ts"),
364
429
  relativePath: path.join("convex", "auth", "core.ts"),
365
- content: renderCoreFile({
366
- includeOAuth,
367
- authImportPath: coreAuthImportPath,
368
- }),
430
+ content: coreContent,
369
431
  },
370
432
  ];
371
433
  const generatedPluginSources = new Map();
434
+ const coreMeta = parseFunctionKinds(coreContent);
372
435
  if (enabledPlugins.has("admin")) {
373
436
  const adminContent = renderAdminPluginFile({
374
437
  authImportPath: pluginAuthImportPath,
@@ -389,7 +452,7 @@ export async function generateAuthFunctions(options) {
389
452
  }
390
453
  const pluginMeta = {};
391
454
  for (const [pluginName, source] of generatedPluginSources) {
392
- const kinds = parsePluginFunctionKinds(source);
455
+ const kinds = parseFunctionKinds(source);
393
456
  if (Object.keys(kinds).length > 0) {
394
457
  pluginMeta[pluginName] = kinds;
395
458
  }
@@ -414,16 +477,21 @@ export async function generateAuthFunctions(options) {
414
477
  isGeneratedFile(source)) {
415
478
  continue;
416
479
  }
417
- const kinds = parsePluginFunctionKinds(source);
480
+ const kinds = parseFunctionKinds(source);
418
481
  if (Object.keys(kinds).length > 0) {
419
482
  pluginMeta[pluginName] = kinds;
420
483
  }
421
484
  }
422
485
  }
486
+ await upsertGeneratedFile({
487
+ absolutePath: path.join(authDir, "metaGenerated.ts"),
488
+ relativePath: path.join("convex", "auth", "metaGenerated.ts"),
489
+ content: renderAuthMetaFile(coreMeta, pluginMeta),
490
+ }, options, result);
423
491
  await upsertGeneratedFile({
424
492
  absolutePath: path.join(pluginDir, "metaGenerated.ts"),
425
493
  relativePath: path.join("convex", "auth", "plugin", "metaGenerated.ts"),
426
- content: renderPluginMetaFile(pluginMeta),
494
+ content: renderPluginMetaCompatFile(),
427
495
  }, options, result);
428
496
  return result;
429
497
  }
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate.js","sourceRoot":"","sources":["../../src/cli/generate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ import { type AuthTokenPayload } from "./auth-token-manager";
2
+ type MaybePromise<T> = T | Promise<T>;
3
+ export interface ConvexAuthClientLike {
4
+ setAuth: (fetchAccessToken: () => Promise<string | null>, onChange?: (isAuthenticated: boolean) => void) => void;
5
+ clearAuth: () => void;
6
+ }
7
+ export type AuthStatus = "anonymous" | "authenticating" | "authenticated" | "refreshing" | "stale";
8
+ export interface AuthRuntimeState {
9
+ status: AuthStatus;
10
+ token: string | null;
11
+ issuedAtMs?: number;
12
+ expiresAtMs?: number;
13
+ lastRefreshAtMs?: number;
14
+ lastError?: Error;
15
+ }
16
+ export type AuthRuntimeEvent = {
17
+ type: "state";
18
+ state: AuthRuntimeState;
19
+ } | {
20
+ type: "token";
21
+ payload: AuthTokenPayload;
22
+ } | {
23
+ type: "signed-in";
24
+ } | {
25
+ type: "signed-out";
26
+ } | {
27
+ type: "invalidated";
28
+ reason?: string;
29
+ } | {
30
+ type: "error";
31
+ error: Error;
32
+ };
33
+ export interface AuthRuntimeStorage {
34
+ get: () => MaybePromise<AuthTokenPayload | null>;
35
+ set: (payload: AuthTokenPayload | null) => MaybePromise<void>;
36
+ clear: () => MaybePromise<void>;
37
+ }
38
+ export type AuthSyncSignal = "token-invalidated" | "token-cleared" | "signed-in" | "signed-out";
39
+ export interface AuthRuntimeSync {
40
+ publish: (signal: AuthSyncSignal) => void;
41
+ subscribe: (listener: (signal: AuthSyncSignal) => void) => () => void;
42
+ }
43
+ export interface AuthRuntimeTokenProvider {
44
+ getToken: (options?: {
45
+ forceRefresh?: boolean;
46
+ }) => Promise<AuthTokenPayload>;
47
+ }
48
+ export interface AuthRuntimeOptions {
49
+ tokenProvider: AuthRuntimeTokenProvider;
50
+ storage?: AuthRuntimeStorage;
51
+ sync?: AuthRuntimeSync;
52
+ now?: () => number;
53
+ refreshSkewMs?: number;
54
+ maxUnauthorizedRefreshRetries?: number;
55
+ debug?: boolean;
56
+ }
57
+ export interface AuthRuntime {
58
+ getState: () => AuthRuntimeState;
59
+ subscribe: (listener: (event: AuthRuntimeEvent) => void) => () => void;
60
+ getToken: (options?: {
61
+ forceRefresh?: boolean;
62
+ }) => Promise<string | null>;
63
+ getTokenPayload: (options?: {
64
+ forceRefresh?: boolean;
65
+ }) => Promise<AuthTokenPayload>;
66
+ onSignedIn: () => Promise<void>;
67
+ onSignedOut: () => Promise<void>;
68
+ invalidate: (reason?: string) => Promise<void>;
69
+ clear: () => Promise<void>;
70
+ onUnauthorized: (error?: unknown) => Promise<void>;
71
+ mountConvex: (client: ConvexAuthClientLike) => () => void;
72
+ }
73
+ export interface LocalStorageAuthStorageOptions {
74
+ key?: string;
75
+ }
76
+ export interface BroadcastAuthSyncOptions {
77
+ channelName?: string;
78
+ }
79
+ export declare function createMemoryAuthStorage(): AuthRuntimeStorage;
80
+ export declare function createLocalStorageAuthStorage(options?: LocalStorageAuthStorageOptions): AuthRuntimeStorage;
81
+ export declare function createBroadcastAuthSync(options?: BroadcastAuthSyncOptions): AuthRuntimeSync;
82
+ export declare function createAuthRuntime(options: AuthRuntimeOptions): AuthRuntime;
83
+ export {};
84
+ //# sourceMappingURL=auth-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-runtime.d.ts","sourceRoot":"","sources":["../../src/client/auth-runtime.ts"],"names":[],"mappings":"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"}