summaryrefslogtreecommitdiff
path: root/packages/integrations/preact/client.js
diff options
context:
space:
mode:
authorGravatar Matthew Phillips <matthew@skypack.dev> 2022-09-22 10:32:42 -0400
committerGravatar GitHub <noreply@github.com> 2022-09-22 10:32:42 -0400
commit25a5b9a89aee81c87affca64e1682ebc0c553eaf (patch)
treed635f1f003f7f3eff5ee6516387f7ba1a4066c62 /packages/integrations/preact/client.js
parentd650a1161a0288f8f2d35ae67771279d067920e9 (diff)
downloadastro-25a5b9a89aee81c87affca64e1682ebc0c553eaf.tar.gz
astro-25a5b9a89aee81c87affca64e1682ebc0c553eaf.tar.zst
astro-25a5b9a89aee81c87affca64e1682ebc0c553eaf.zip
Revert preact signals support (#4843)
* Revert "Update preact example to match @astrojs/preact ranges (#4840)" This reverts commit d650a1161a0288f8f2d35ae67771279d067920e9. * Revert "[ci] format" This reverts commit e3c78c5b164c338389c437743ba02a7be64e27fb. * Revert "Support shared signals in Preact islands (#4763)" This reverts commit 5e46be54683592773e6dfc2d33825493886114b0.
Diffstat (limited to 'packages/integrations/preact/client.js')
-rw-r--r--packages/integrations/preact/client.js14
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/integrations/preact/client.js b/packages/integrations/preact/client.js
new file mode 100644
index 000000000..78d8720f0
--- /dev/null
+++ b/packages/integrations/preact/client.js
@@ -0,0 +1,14 @@
+import { h, render } from 'preact';
+import StaticHtml from './static-html.js';
+
+export default (element) =>
+ (Component, props, { default: children, ...slotted }) => {
+ if (!element.hasAttribute('ssr')) return;
+ for (const [key, value] of Object.entries(slotted)) {
+ props[key] = h(StaticHtml, { value, name: key });
+ }
+ render(
+ h(Component, props, children != null ? h(StaticHtml, { value: children }) : children),
+ element
+ );
+ };