diff options
author | 2022-09-22 10:32:42 -0400 | |
---|---|---|
committer | 2022-09-22 10:32:42 -0400 | |
commit | 25a5b9a89aee81c87affca64e1682ebc0c553eaf (patch) | |
tree | d635f1f003f7f3eff5ee6516387f7ba1a4066c62 /packages/integrations/preact/src/client.ts | |
parent | d650a1161a0288f8f2d35ae67771279d067920e9 (diff) | |
download | astro-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/src/client.ts')
-rw-r--r-- | packages/integrations/preact/src/client.ts | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/packages/integrations/preact/src/client.ts b/packages/integrations/preact/src/client.ts deleted file mode 100644 index 4549e79f4..000000000 --- a/packages/integrations/preact/src/client.ts +++ /dev/null @@ -1,33 +0,0 @@ -import { h, render } from 'preact'; -import StaticHtml from './static-html.js'; -import type { SignalLike } from './types'; - -const sharedSignalMap: Map<string, SignalLike> = new Map(); - -export default (element: HTMLElement) => - async ( - Component: any, - props: Record<string, any>, - { default: children, ...slotted }: Record<string, any> - ) => { - if (!element.hasAttribute('ssr')) return; - for (const [key, value] of Object.entries(slotted)) { - props[key] = h(StaticHtml, { value, name: key }); - } - let signalsRaw = element.dataset.preactSignals; - if (signalsRaw) { - const { signal } = await import('@preact/signals'); - let signals: Record<string, string> = JSON.parse(element.dataset.preactSignals as string); - for (const [propName, signalId] of Object.entries(signals)) { - if (!sharedSignalMap.has(signalId)) { - const signalValue = signal(props[propName]); - sharedSignalMap.set(signalId, signalValue); - } - props[propName] = sharedSignalMap.get(signalId); - } - } - render( - h(Component, props, children != null ? h(StaticHtml, { value: children }) : children), - element - ); - }; |