-
-
Notifications
You must be signed in to change notification settings - Fork 883
/
index.ts
41 lines (34 loc) · 914 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import { ssrElement } from "./server.js";
import { splitProps, Component, JSX } from "solid-js";
export * from "./server";
export {
For,
Show,
Suspense,
SuspenseList,
Switch,
Match,
Index,
ErrorBoundary,
mergeProps
} from "solid-js";
export const isServer = true;
export function insert() {}
export function spread() {}
export function delegateEvents(): void {}
export function Dynamic<T>(
props: T & { children?: any; component?: Component<T> | string | keyof JSX.IntrinsicElements }
) {
const [p, others] = splitProps(props, ["component"]);
const comp = p.component,
t = typeof comp;
if (comp) {
if (t === "function") return (comp as Function)(others);
else if (t === "string") {
return ssrElement(comp as string, others, undefined, true);
}
}
}
export function Portal(props: { mount?: Node; useShadow?: boolean; children: JSX.Element }) {
return "";
}