/** @jsxImportSource react */ import { useStore } from "@nanostores/react"; import React, { useState } from "react"; import AstroLogo from "../../images/astro.png?url"; import OutSystemsLogo from "../../images/outsystems.png?url"; import { Operation, setCounterCount } from "../../lib/setCounterCount"; import { setupStore } from "../../stores/demo"; interface DemoProps { children: React.ReactNode; header: React.ReactNode; initialCount: number; showMessage: string; } export default function Demo({ children, header, initialCount, showMessage, }: DemoProps) { const [count, setCount] = useState(initialCount); const add = () => setCount((i) => setCounterCount(i, Operation.Add)); const subtract = () => setCount((i) => setCounterCount(i, Operation.Subtract)); // eslint-disable-next-line @typescript-eslint/no-explicit-any const showParentMessage = () => (window as any)[showMessage](count); const store = setupStore("reactStore"); const nanoStoreValue = useStore(store); return ( <> {header}
{count}