/// import { computed, Default, NAME, pattern, Stream, UI } from "commontools"; import { decrement, increment, nth, previous } from "./counter-handlers.ts"; interface RecipeState { value: Default; } /** The output of a #counter */ interface RecipeOutput { value: Default; increment: Stream; decrement: Stream; } export default pattern((state) => { return { [NAME]: computed(() => `Simple counter: ${state.value}`), [UI]: (
dec to {previous(state.value)} Counter is the {nth(state.value)} number inc to {(state.value ?? 0) + 1}
), value: state.value, increment: increment(state), decrement: decrement(state), }; });