summaryrefslogtreecommitdiff
path: root/packages/renderers/preact
diff options
context:
space:
mode:
Diffstat (limited to 'packages/renderers/preact')
-rw-r--r--packages/renderers/preact/client.js4
-rw-r--r--packages/renderers/preact/index.js5
-rw-r--r--packages/renderers/preact/package.json15
-rw-r--r--packages/renderers/preact/server.js20
-rw-r--r--packages/renderers/preact/static-html.js24
5 files changed, 0 insertions, 68 deletions
diff --git a/packages/renderers/preact/client.js b/packages/renderers/preact/client.js
deleted file mode 100644
index 2b8d4bd49..000000000
--- a/packages/renderers/preact/client.js
+++ /dev/null
@@ -1,4 +0,0 @@
-import { h, hydrate } from 'preact';
-import StaticHtml from './static-html.js';
-
-export default (element) => (Component, props, children) => hydrate(h(Component, props, h(StaticHtml, { value: children })), element);
diff --git a/packages/renderers/preact/index.js b/packages/renderers/preact/index.js
deleted file mode 100644
index cfd4ae8c6..000000000
--- a/packages/renderers/preact/index.js
+++ /dev/null
@@ -1,5 +0,0 @@
-export default {
- name: '@astro-renderer/preact',
- client: './client',
- server: './server',
-};
diff --git a/packages/renderers/preact/package.json b/packages/renderers/preact/package.json
deleted file mode 100644
index 063a28b50..000000000
--- a/packages/renderers/preact/package.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "name": "@astro-renderer/preact",
- "version": "0.0.1",
- "type": "module",
- "exports": {
- ".": "./index.js",
- "./client": "./client.js",
- "./server": "./server.js",
- "./package.json": "./package.json"
- },
- "dependencies": {
- "preact": "^10.5.13",
- "preact-render-to-string": "^5.1.18"
- }
-}
diff --git a/packages/renderers/preact/server.js b/packages/renderers/preact/server.js
deleted file mode 100644
index e8ece01ba..000000000
--- a/packages/renderers/preact/server.js
+++ /dev/null
@@ -1,20 +0,0 @@
-import { h } from 'preact';
-import { renderToString } from 'preact-render-to-string';
-import StaticHtml from './static-html.js';
-
-function check(Component, props) {
- try {
- return Boolean(renderToString(h(Component, props)));
- } catch (e) {}
- return false;
-}
-
-function renderToStaticMarkup(Component, props, children) {
- const html = renderToString(h(Component, props, h(StaticHtml, { value: children })));
- return { html };
-}
-
-export default {
- check,
- renderToStaticMarkup,
-};
diff --git a/packages/renderers/preact/static-html.js b/packages/renderers/preact/static-html.js
deleted file mode 100644
index 5a31a68af..000000000
--- a/packages/renderers/preact/static-html.js
+++ /dev/null
@@ -1,24 +0,0 @@
-import { h } from 'preact';
-
-/**
- * Astro passes `children` as a string of HTML, so we need
- * a wrapper `div` to render that content as VNodes.
- *
- * As a bonus, we can signal to Preact that this subtree is
- * entirely static and will never change via `shouldComponentUpdate`.
- */
-const StaticHtml = ({ value }) => {
- if (!value) return null;
- return h('astro-fragment', { dangerouslySetInnerHTML: { __html: value } });
-};
-
-/**
- * This tells Preact to opt-out of re-rendering this subtree,
- * In addition to being a performance optimization,
- * this also allows other frameworks to attach to `children`.
- *
- * See https://preactjs.com/guide/v8/external-dom-mutations
- */
-StaticHtml.shouldComponentUpdate = () => false;
-
-export default StaticHtml;