Skip to content

Releases: azhukaudev/convex-angular

v1.6.0

12 Mar 19:20

Choose a tag to compare

✨ Features

  • Add injectQueries() for keyed multi-query subscriptions with per-key results(), errors(), statuses(), and aggregate isLoading().
  • Add injectPrewarmQuery() to warm the local Convex cache before navigation or other anticipated UI work.
  • Add injectConvexConnectionState() for reactive Convex connection diagnostics.
  • Add paginated optimistic update helpers for updating cached paginated query results during optimistic mutations.

⚠️ Breaking Changes

  • Enforce root-only provideConvexAuth() registration by throwing on duplicate or nested auth provider setup.

🐛 Bug Fixes

  • Ignore stale injectQuery() subscription callbacks so outdated responses do not overwrite newer state.
  • Ignore stale injectPaginatedQuery() callbacks and throw a clear error when experimental paginated query support is unavailable on the Convex client.
  • Scope Convex auth state to the root injector to prevent inconsistent auth sync across nested provider scopes.

📖 Documentation

  • Document injectQueries(), injectPrewarmQuery(), injectConvexConnectionState(), and paginated optimistic update helpers in both READMEs.
  • Add new frontend examples for multi-query subscriptions, connection state, prewarming queries, and paginated optimistic updates.

View changes on GitHub: v1.5.0...v1.6.0

v1.5.0

08 Mar 19:54

Choose a tag to compare

⚠️ Breaking Changes

  • Change injectQuery(), injectMutation(), and injectAction() so data() is typed as T | undefined, matching the existing initial, skipped, and reset runtime states.

🐛 Bug Fixes

  • Make injectMutation().mutate() and injectAction().run() reject on failure after updating the reactive error state.
  • Ignore stale mutation and action completions so only the latest invocation updates reactive state.

📖 Documentation

  • Document rejected promise behavior for mutate() and run() in both READMEs.
  • Document the corrected data() typing in both READMEs.

View changes on GitHub: v1.4.0...v1.5.0

v1.4.0

07 Mar 22:38

Choose a tag to compare

✨ Features

  • Rework injectAuth() auth sync so status() stays loading until Convex confirms the current token with the backend.
  • Extend ConvexAuthProvider with optional reauthVersion and error signals, and update built-in Clerk/Auth0 integrations to wire auth sync through provideConvexAuth() automatically.

📖 Documentation

  • Clarify injectAuth() loading/authenticated/error semantics and document the optional ConvexAuthProvider reauth/error hooks in both READMEs.

View changes on GitHub: v1.3.0...v1.4.0

v1.3.0

07 Mar 13:56

Choose a tag to compare

✨ Features

  • Add optional injectRef support to all public inject* helpers so they can be created outside the initial Angular injection context

📖 Documentation

  • Document injectRef usage for creating helpers outside the initial injection context.

View changes on GitHub: v1.2.0...v1.3.0

v1.2.0

07 Mar 13:06

Choose a tag to compare

⚠️ Breaking Changes

  • injectPaginatedQuery(...) now takes a plain options object, initialNumItems accepts number | Signal<number>, and the legacy () => options form was removed.

📖 Documentation

  • Update README and JSDoc examples to use object-form injectPaginatedQuery(...) options and signal-based initialNumItems.

View changes on GitHub: v1.1.0...v1.2.0

v1.1.0

04 Mar 12:29

Choose a tag to compare

✨ Features

  • Enforce root-only Convex setup by validating provideConvex(...) registrations and throwing on duplicate or nested provider scopes.

⚠️ Breaking Changes

  • provideConvex(...) now returns EnvironmentProviders and must be configured exactly once in root app providers.

📖 Documentation

  • Clarify root-only provideConvex(...) setup requirements in package and repository READMEs.

View changes on GitHub: v1.0.4...v1.1.0

v1.0.4

16 Feb 21:13

Choose a tag to compare

📖 Documentation

  • Refresh README examples and fix inconsistencies (requirements note, safer injectQuery, updated pagination/guard snippets, auth examples now use useExisting, repo dev commands).

View changes on GitHub: v1.0.3...v1.0.4

v1.0.3

14 Feb 16:49

Choose a tag to compare

✨ Features

  • Add provideConvexAuthFromExisting(...) to wire CONVEX_AUTH to an existing injectable auth provider instance (avoids accidental duplicate instances)

📖 Documentation

  • Update Custom Auth Provider examples to use useExisting and warn that useClass can create a second instance so auth signal changes won’t reach Convex auth sync
  • Add a @convex-dev/auth integration snippet and clarify that provideConvexAuth() handles setAuth/clearAuth automatically when isAuthenticated changes
  • Align JSDoc auth provider/token examples to prefer useExisting

View changes on GitHub: v1.0.2...v1.0.3

v1.0.2

27 Jan 20:09

Choose a tag to compare

🐛 Bug Fixes

  • Clear Convex auth when the provider is loading or unauthenticated to avoid stale tokens
  • Auto-initialize auth sync when registering auth providers so queries refresh on sign-in/out

📖 Documentation

  • Document automatic auth sync initialization and logout behavior

View changes on GitHub: v1.0.1...v1.0.2

v1.0.1

26 Jan 15:21

Choose a tag to compare

🐛 Bug Fixes

  • Prevent double unsubscribe when toggling skipToken, avoiding Convex numSubscribers errors in injectQuery and injectPaginatedQuery

View changes on GitHub: v1.0.0...v1.0.1