* feat(jsx/dom): rewrite renderer to use virtual tree
* test(deno): add runtime_tests/deno/deno.json in order to allow `document`, `Element`, etc.
* refactor(jsx/dom): Removed redundant `map()` calls
* refactor(jsx/dom): tweaks getNextChildren for reduce code size
* refactor(jsx/dom): optimize findInsertBefore
* refactor(jsx/dom): optimize `build()`
* refactor(jsx/dom): reuse oldChild even in text nodes.
* feat(jsx/dom): handle promise rejection in use()
* feat(jsx): The result of using Suspense and use() is now the same as React's renderToReadableStream().
* chore: denoify
* test(deno): "dom.iterable" is required for 'Headers.entries()'
* feat(jsx/dom): provide jsx-runtime and jsx-dev-runtime via jsx/dom
* refactor(jsx/dom): Enable to import dom specific Suspense and ErrorBoundary from hono/jsx/dom
* test(jsx/dom): remove unused test. await component is not supported.
* feat(jsx/dom): support old style jsx
JSXNode from old style jsx sometimes has no props.
* chore: denoify
* test(jsx/dom): Run tests for hono/jsx/jsx-runtime and hono/jsx/dom/jsx-runtime
* test(jsx/dom): tests for Suspense and ErrorBoundary both for common and dom
* feat(jsx/dom): support old style jsx
JSXNode from old style jsx sometimes has no props.
* chore: denoify
* chore(vitest): fix typo