@json-render/xstate

XState Store adapter for json-render's StateStore interface.

Requires @xstate/store v3+.

Installation

npm install @json-render/xstate @json-render/core @json-render/react @xstate/store

xstateStoreStateStore

Create a StateStore backed by an @xstate/store atom.

import { xstateStoreStateStore } from "@json-render/xstate";

Options

OptionTypeRequiredDescription
atomAtom<StateModel>YesAn @xstate/store atom (from createAtom) holding the json-render state model.

Example

import { createAtom } from "@xstate/store";
import { xstateStoreStateStore } from "@json-render/xstate";
import { StateProvider } from "@json-render/react";

const uiAtom = createAtom({ count: 0 });
const store = xstateStoreStateStore({ atom: uiAtom });
<StateProvider store={store}>
  {/* json-render reads/writes go through @xstate/store */}
</StateProvider>

Re-exports

ExportSource
StateStore@json-render/core