@lunora/angular 1.0.0-alpha.4 → 1.0.0-alpha.41

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 (43) hide show
  1. package/README.md +27 -0
  2. package/dist/index.d.mts +1214 -279
  3. package/dist/index.d.ts +1214 -279
  4. package/dist/index.mjs +1 -13
  5. package/dist/packem_shared/LUNORA_CLIENT-B0toApHY.mjs +1 -0
  6. package/dist/packem_shared/agent-BPvUvuXh.mjs +1 -0
  7. package/dist/packem_shared/agentChat-BgD9zNFw.mjs +1 -0
  8. package/dist/packem_shared/agentState-BBAruY2b.mjs +1 -0
  9. package/dist/packem_shared/agentToolEvents-CUwrn-Nu.mjs +1 -0
  10. package/dist/packem_shared/auth-BgwruT_M.mjs +1 -0
  11. package/dist/packem_shared/connectionStatus-UhmuwzMa.mjs +1 -0
  12. package/dist/packem_shared/flag-orUoJY7A.mjs +1 -0
  13. package/dist/packem_shared/hydratePreloaded-C8lNoww0.mjs +1 -0
  14. package/dist/packem_shared/infiniteQuery-CIprZdJt.mjs +1 -0
  15. package/dist/packem_shared/liveQuery-BvA2co81.mjs +1 -0
  16. package/dist/packem_shared/mutate-BZvLQLyu.mjs +1 -0
  17. package/dist/packem_shared/mutator-DjG1yGk8.mjs +1 -0
  18. package/dist/packem_shared/platform-I2VyCEIl.mjs +1 -0
  19. package/dist/packem_shared/presence-vJUxsR5f.mjs +1 -0
  20. package/dist/packem_shared/rateLimit-B3h9qzh-.mjs +1 -0
  21. package/dist/packem_shared/runAction-BfiPq4Xz.mjs +1 -0
  22. package/dist/packem_shared/stream-CcjYdpzt.mjs +1 -0
  23. package/dist/packem_shared/subscription-DqtYnats.mjs +1 -0
  24. package/dist/packem_shared/voiceAgent-CzyUcUKj.mjs +1 -0
  25. package/dist/server.d.mts +1 -0
  26. package/dist/server.d.ts +1 -0
  27. package/dist/server.mjs +1 -0
  28. package/dist/upload.d.mts +57 -0
  29. package/dist/upload.d.ts +57 -0
  30. package/dist/upload.mjs +1 -0
  31. package/package.json +12 -3
  32. package/dist/packem_shared/LUNORA_CLIENT-DHUfNu9x.mjs +0 -23
  33. package/dist/packem_shared/auth-Df9N87Z4.mjs +0 -27
  34. package/dist/packem_shared/connectionStatus-BlLodleK.mjs +0 -15
  35. package/dist/packem_shared/flag-CGBo90HJ.mjs +0 -70
  36. package/dist/packem_shared/hydratePreloaded-ClRc-7rL.mjs +0 -29
  37. package/dist/packem_shared/infiniteQuery-DUV60k-n.mjs +0 -200
  38. package/dist/packem_shared/liveQuery-D5VQBOgf.mjs +0 -28
  39. package/dist/packem_shared/mutate-D3rEHwbb.mjs +0 -8
  40. package/dist/packem_shared/mutator-BHL8bakL.mjs +0 -19
  41. package/dist/packem_shared/presence-h2xonCZM.mjs +0 -59
  42. package/dist/packem_shared/rateLimit-CKcAig4M.mjs +0 -60
  43. package/dist/packem_shared/subscription-Dd9dQiBB.mjs +0 -37
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # @lunora/angular
2
2
 
3
+ > **Experimental** — this package is outside the Lunora 1.0 stability promise: its API may change in any release, without a major version bump.
4
+
3
5
  Angular reactive adapter for Lunora — signal-based live queries and mutations.
4
6
 
5
7
  Thin, idiomatic glue over the framework-neutral `@lunora/client`. Angular signals
@@ -55,6 +57,31 @@ export class MessagesComponent {
55
57
 
56
58
  Pass `"skip"` as the args to short-circuit (no network call, no socket).
57
59
 
60
+ Pass a function/`Signal` instead of a plain object to make the args reactive —
61
+ each change tears the old subscription down and opens a fresh one for the new
62
+ args:
63
+
64
+ ```ts
65
+ export class MessagesComponent {
66
+ private readonly channelId = input.required<string>();
67
+
68
+ readonly messages = liveQuery(api.messages.list, () => ({ channelId: this.channelId() }));
69
+ }
70
+ ```
71
+
72
+ `subscription` and `paginatedQuery`/`infiniteQuery` accept the same reactive
73
+ args form. Calling from outside an injection context (e.g. `ngOnInit`) needs an
74
+ explicit `injector` alongside `client`/`destroyRef` for the reactive form —
75
+ `effect()` can't resolve one on its own there:
76
+
77
+ ```ts
78
+ liveQuery(api.messages.list, () => ({ channelId: this.channelId() }), {
79
+ client: this.client,
80
+ destroyRef: this.destroyRef,
81
+ injector: this.injector,
82
+ });
83
+ ```
84
+
58
85
  ## Mutations
59
86
 
60
87
  ```ts