@livestore/react 0.4.0-dev.2 → 0.4.0-dev.20

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 (91) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/LiveStoreProvider.d.ts +6 -7
  3. package/dist/LiveStoreProvider.d.ts.map +1 -1
  4. package/dist/LiveStoreProvider.js +39 -24
  5. package/dist/LiveStoreProvider.js.map +1 -1
  6. package/dist/LiveStoreProvider.test.js +7 -7
  7. package/dist/LiveStoreProvider.test.js.map +1 -1
  8. package/dist/__tests__/fixture.d.ts +34 -12
  9. package/dist/__tests__/fixture.d.ts.map +1 -1
  10. package/dist/__tests__/fixture.js +13 -5
  11. package/dist/__tests__/fixture.js.map +1 -1
  12. package/dist/experimental/components/LiveList.js +1 -1
  13. package/dist/experimental/mod.d.ts +1 -0
  14. package/dist/experimental/mod.d.ts.map +1 -1
  15. package/dist/experimental/mod.js +1 -0
  16. package/dist/experimental/mod.js.map +1 -1
  17. package/dist/experimental/multi-store/StoreRegistry.d.ts +61 -0
  18. package/dist/experimental/multi-store/StoreRegistry.d.ts.map +1 -0
  19. package/dist/experimental/multi-store/StoreRegistry.js +275 -0
  20. package/dist/experimental/multi-store/StoreRegistry.js.map +1 -0
  21. package/dist/experimental/multi-store/StoreRegistry.test.d.ts +2 -0
  22. package/dist/experimental/multi-store/StoreRegistry.test.d.ts.map +1 -0
  23. package/dist/experimental/multi-store/StoreRegistry.test.js +464 -0
  24. package/dist/experimental/multi-store/StoreRegistry.test.js.map +1 -0
  25. package/dist/experimental/multi-store/StoreRegistryContext.d.ts +10 -0
  26. package/dist/experimental/multi-store/StoreRegistryContext.d.ts.map +1 -0
  27. package/dist/experimental/multi-store/StoreRegistryContext.js +15 -0
  28. package/dist/experimental/multi-store/StoreRegistryContext.js.map +1 -0
  29. package/dist/experimental/multi-store/mod.d.ts +6 -0
  30. package/dist/experimental/multi-store/mod.d.ts.map +1 -0
  31. package/dist/experimental/multi-store/mod.js +6 -0
  32. package/dist/experimental/multi-store/mod.js.map +1 -0
  33. package/dist/experimental/multi-store/storeOptions.d.ts +4 -0
  34. package/dist/experimental/multi-store/storeOptions.d.ts.map +1 -0
  35. package/dist/experimental/multi-store/storeOptions.js +4 -0
  36. package/dist/experimental/multi-store/storeOptions.js.map +1 -0
  37. package/dist/experimental/multi-store/types.d.ts +44 -0
  38. package/dist/experimental/multi-store/types.d.ts.map +1 -0
  39. package/dist/experimental/multi-store/types.js +2 -0
  40. package/dist/experimental/multi-store/types.js.map +1 -0
  41. package/dist/experimental/multi-store/useStore.d.ts +11 -0
  42. package/dist/experimental/multi-store/useStore.d.ts.map +1 -0
  43. package/dist/experimental/multi-store/useStore.js +21 -0
  44. package/dist/experimental/multi-store/useStore.js.map +1 -0
  45. package/dist/experimental/multi-store/useStore.test.d.ts +2 -0
  46. package/dist/experimental/multi-store/useStore.test.d.ts.map +1 -0
  47. package/dist/experimental/multi-store/useStore.test.js +144 -0
  48. package/dist/experimental/multi-store/useStore.test.js.map +1 -0
  49. package/dist/mod.d.ts +1 -1
  50. package/dist/mod.d.ts.map +1 -1
  51. package/dist/mod.js.map +1 -1
  52. package/dist/useClientDocument.d.ts +10 -13
  53. package/dist/useClientDocument.d.ts.map +1 -1
  54. package/dist/useClientDocument.js +4 -5
  55. package/dist/useClientDocument.js.map +1 -1
  56. package/dist/useClientDocument.test.js +29 -7
  57. package/dist/useClientDocument.test.js.map +1 -1
  58. package/dist/useQuery.d.ts +28 -6
  59. package/dist/useQuery.d.ts.map +1 -1
  60. package/dist/useQuery.js +63 -18
  61. package/dist/useQuery.js.map +1 -1
  62. package/dist/useQuery.test.js +35 -11
  63. package/dist/useQuery.test.js.map +1 -1
  64. package/dist/useRcResource.test.js +1 -1
  65. package/dist/useStore.d.ts +2 -1
  66. package/dist/useStore.d.ts.map +1 -1
  67. package/dist/useStore.js +1 -1
  68. package/dist/useStore.js.map +1 -1
  69. package/package.json +14 -14
  70. package/src/LiveStoreProvider.test.tsx +7 -7
  71. package/src/LiveStoreProvider.tsx +58 -45
  72. package/src/__snapshots__/useClientDocument.test.tsx.snap +208 -100
  73. package/src/__snapshots__/useQuery.test.tsx.snap +400 -128
  74. package/src/__tests__/fixture.tsx +23 -24
  75. package/src/experimental/components/LiveList.tsx +1 -1
  76. package/src/experimental/mod.ts +1 -0
  77. package/src/experimental/multi-store/StoreRegistry.test.ts +631 -0
  78. package/src/experimental/multi-store/StoreRegistry.ts +347 -0
  79. package/src/experimental/multi-store/StoreRegistryContext.tsx +23 -0
  80. package/src/experimental/multi-store/mod.ts +5 -0
  81. package/src/experimental/multi-store/storeOptions.ts +8 -0
  82. package/src/experimental/multi-store/types.ts +55 -0
  83. package/src/experimental/multi-store/useStore.test.tsx +197 -0
  84. package/src/experimental/multi-store/useStore.ts +34 -0
  85. package/src/mod.ts +2 -1
  86. package/src/useClientDocument.test.tsx +105 -75
  87. package/src/useClientDocument.ts +23 -13
  88. package/src/useQuery.test.tsx +62 -11
  89. package/src/useQuery.ts +98 -27
  90. package/src/useRcResource.test.tsx +1 -1
  91. package/src/useStore.ts +4 -3
package/src/useStore.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import type { LiveStoreSchema } from '@livestore/common/schema'
1
2
  import type { Store } from '@livestore/livestore'
2
3
  import React from 'react'
3
4
 
@@ -6,14 +7,14 @@ import { LiveStoreContext } from './LiveStoreContext.ts'
6
7
  import { useClientDocument } from './useClientDocument.ts'
7
8
  import { useQuery } from './useQuery.ts'
8
9
 
9
- export const withReactApi = (store: Store): Store & ReactApi => {
10
+ export const withReactApi = <TSchema extends LiveStoreSchema>(store: Store<TSchema>): Store<TSchema> & ReactApi => {
10
11
  // @ts-expect-error TODO properly implement this
11
12
 
12
- store.useQuery = (queryDef) => useQuery(queryDef, { store })
13
+ store.useQuery = (queryable) => useQuery(queryable, { store })
13
14
  // @ts-expect-error TODO properly implement this
14
15
 
15
16
  store.useClientDocument = (table, idOrOptions, options) => useClientDocument(table, idOrOptions, options, { store })
16
- return store as Store & ReactApi
17
+ return store as Store<TSchema> & ReactApi
17
18
  }
18
19
 
19
20
  export const useStore = (options?: { store?: Store }): { store: Store & ReactApi } => {