@tanstack/db 0.5.17 → 0.5.19

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 (83) hide show
  1. package/dist/cjs/collection/changes.cjs +3 -0
  2. package/dist/cjs/collection/changes.cjs.map +1 -1
  3. package/dist/cjs/collection/sync.cjs +2 -1
  4. package/dist/cjs/collection/sync.cjs.map +1 -1
  5. package/dist/cjs/proxy.cjs +1 -1
  6. package/dist/cjs/proxy.cjs.map +1 -1
  7. package/dist/cjs/query/builder/index.cjs +5 -4
  8. package/dist/cjs/query/builder/index.cjs.map +1 -1
  9. package/dist/cjs/query/builder/index.d.cts +5 -4
  10. package/dist/cjs/query/builder/ref-proxy.cjs +63 -0
  11. package/dist/cjs/query/builder/ref-proxy.cjs.map +1 -1
  12. package/dist/cjs/query/builder/ref-proxy.d.cts +13 -0
  13. package/dist/cjs/query/builder/types.d.cts +26 -1
  14. package/dist/cjs/query/compiler/evaluators.cjs +29 -2
  15. package/dist/cjs/query/compiler/evaluators.cjs.map +1 -1
  16. package/dist/cjs/query/compiler/group-by.cjs +29 -12
  17. package/dist/cjs/query/compiler/group-by.cjs.map +1 -1
  18. package/dist/cjs/query/compiler/group-by.d.cts +18 -2
  19. package/dist/cjs/query/compiler/index.cjs +5 -5
  20. package/dist/cjs/query/compiler/index.cjs.map +1 -1
  21. package/dist/cjs/query/compiler/order-by.cjs +1 -1
  22. package/dist/cjs/query/compiler/order-by.cjs.map +1 -1
  23. package/dist/cjs/query/compiler/order-by.d.cts +1 -1
  24. package/dist/cjs/query/compiler/select.cjs +1 -1
  25. package/dist/cjs/query/compiler/select.cjs.map +1 -1
  26. package/dist/cjs/query/compiler/select.d.cts +1 -1
  27. package/dist/cjs/query/live/collection-config-builder.cjs +26 -10
  28. package/dist/cjs/query/live/collection-config-builder.cjs.map +1 -1
  29. package/dist/cjs/query/live/collection-subscriber.cjs +42 -33
  30. package/dist/cjs/query/live/collection-subscriber.cjs.map +1 -1
  31. package/dist/cjs/query/live/internal.cjs +1 -1
  32. package/dist/cjs/query/live/internal.cjs.map +1 -1
  33. package/dist/cjs/query/live/types.d.cts +2 -1
  34. package/dist/cjs/types.d.cts +6 -0
  35. package/dist/esm/collection/changes.js +3 -0
  36. package/dist/esm/collection/changes.js.map +1 -1
  37. package/dist/esm/collection/sync.js +2 -1
  38. package/dist/esm/collection/sync.js.map +1 -1
  39. package/dist/esm/proxy.js +1 -1
  40. package/dist/esm/proxy.js.map +1 -1
  41. package/dist/esm/query/builder/index.d.ts +5 -4
  42. package/dist/esm/query/builder/index.js +6 -5
  43. package/dist/esm/query/builder/index.js.map +1 -1
  44. package/dist/esm/query/builder/ref-proxy.d.ts +13 -0
  45. package/dist/esm/query/builder/ref-proxy.js +63 -0
  46. package/dist/esm/query/builder/ref-proxy.js.map +1 -1
  47. package/dist/esm/query/builder/types.d.ts +26 -1
  48. package/dist/esm/query/compiler/evaluators.js +29 -2
  49. package/dist/esm/query/compiler/evaluators.js.map +1 -1
  50. package/dist/esm/query/compiler/group-by.d.ts +18 -2
  51. package/dist/esm/query/compiler/group-by.js +30 -13
  52. package/dist/esm/query/compiler/group-by.js.map +1 -1
  53. package/dist/esm/query/compiler/index.js +5 -5
  54. package/dist/esm/query/compiler/index.js.map +1 -1
  55. package/dist/esm/query/compiler/order-by.d.ts +1 -1
  56. package/dist/esm/query/compiler/order-by.js +1 -1
  57. package/dist/esm/query/compiler/order-by.js.map +1 -1
  58. package/dist/esm/query/compiler/select.d.ts +1 -1
  59. package/dist/esm/query/compiler/select.js +1 -1
  60. package/dist/esm/query/compiler/select.js.map +1 -1
  61. package/dist/esm/query/live/collection-config-builder.js +26 -10
  62. package/dist/esm/query/live/collection-config-builder.js.map +1 -1
  63. package/dist/esm/query/live/collection-subscriber.js +42 -33
  64. package/dist/esm/query/live/collection-subscriber.js.map +1 -1
  65. package/dist/esm/query/live/internal.js +1 -1
  66. package/dist/esm/query/live/internal.js.map +1 -1
  67. package/dist/esm/query/live/types.d.ts +2 -1
  68. package/dist/esm/types.d.ts +6 -0
  69. package/package.json +2 -2
  70. package/src/collection/changes.ts +7 -0
  71. package/src/collection/sync.ts +2 -2
  72. package/src/query/builder/index.ts +22 -6
  73. package/src/query/builder/ref-proxy.ts +90 -0
  74. package/src/query/builder/types.ts +26 -1
  75. package/src/query/compiler/evaluators.ts +38 -2
  76. package/src/query/compiler/group-by.ts +76 -22
  77. package/src/query/compiler/index.ts +13 -13
  78. package/src/query/compiler/order-by.ts +7 -6
  79. package/src/query/compiler/select.ts +5 -8
  80. package/src/query/live/collection-config-builder.ts +66 -16
  81. package/src/query/live/collection-subscriber.ts +60 -41
  82. package/src/query/live/types.ts +3 -1
  83. package/src/types.ts +6 -0
@@ -22,9 +22,11 @@ export type SyncState = {
22
22
  graph?: D2
23
23
  inputs?: Record<string, RootStreamBuilder<unknown>>
24
24
  pipeline?: ResultStream
25
+ flushPendingChanges?: () => void
25
26
  }
26
27
 
27
- export type FullSyncState = Required<SyncState>
28
+ export type FullSyncState = Required<Omit<SyncState, `flushPendingChanges`>> &
29
+ Pick<SyncState, `flushPendingChanges`>
28
30
 
29
31
  /**
30
32
  * Configuration interface for live query collection options
package/src/types.ts CHANGED
@@ -798,6 +798,12 @@ export interface SubscribeChangesOptions<
798
798
  where?: (row: SingleRowRefProxy<T>) => any
799
799
  /** Pre-compiled expression for filtering changes */
800
800
  whereExpression?: BasicExpression<boolean>
801
+ /**
802
+ * Listener for subscription status changes.
803
+ * Registered BEFORE any snapshot is requested, ensuring no status transitions are missed.
804
+ * @internal
805
+ */
806
+ onStatusChange?: (event: SubscriptionStatusChangeEvent) => void
801
807
  }
802
808
 
803
809
  export interface SubscribeChangesSnapshotOptions<