Chris Tate 4 сар өмнө
parent
commit
cd82f969c8

+ 1 - 0
README.md

@@ -117,6 +117,7 @@ function Dashboard({ spec }) {
 | `@json-render/redux` | Redux / Redux Toolkit adapter for `StateStore` |
 | `@json-render/zustand` | Zustand adapter for `StateStore` |
 | `@json-render/jotai` | Jotai adapter for `StateStore` |
+| `@json-render/xstate-store` | XState Store (atom) adapter for `StateStore` |
 
 ## Renderers
 

+ 12 - 0
packages/xstate-store/src/index.test.ts

@@ -133,4 +133,16 @@ describe("xstateStoreStateStore", () => {
     expect(store.get("/count")).toBe(99);
     expect(store.getSnapshot().count).toBe(99);
   });
+
+  it("subscribe fires on external atom.set", () => {
+    const atom = createAtom<Record<string, unknown>>({ count: 0 });
+    const store = xstateStoreStateStore({ atom });
+    const listener = vi.fn();
+    store.subscribe(listener);
+
+    atom.set({ count: 99 });
+
+    expect(listener).toHaveBeenCalledTimes(1);
+    expect(store.get("/count")).toBe(99);
+  });
 });

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 148 - 148
pnpm-lock.yaml


Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно