trellis
Version:
Agentic State Engine — event-sourced causal graph with branching, decision traces, and realtime sync for AI-native applications
31 lines (29 loc) • 672 B
JavaScript
import {
createDialogCore
} from "../../chunk-N4IEHPCJ.js";
import "../../chunk-2ESYSVXG.js";
// src/dialog/react/index.ts
import { useRef, useSyncExternalStore } from "react";
function asDialogCore(input) {
return "actions" in input ? input : createDialogCore(input);
}
function useDialog(input = {}) {
const ref = useRef(null);
if (ref.current === null) {
ref.current = asDialogCore(input);
}
const dialogs = ref.current;
const state = useSyncExternalStore(
dialogs.subscribe,
() => dialogs.state,
() => dialogs.state
);
return {
state,
actions: dialogs.actions,
subscribe: dialogs.subscribe
};
}
export {
useDialog
};