Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | 1x 1x 9x 9x 9x 9x 9x 9x 9x 9x | import type { Component, JSX } from 'solid-js';
import { proxyProps } from './props.js';
import type { BindableComponentProps, BindableProps } from './types.js';
export type BindableComponent<P> = (props: P) => JSX.Element;
// biome-ignore lint/suspicious/noExplicitAny: library
export function bindable<P extends Record<string, any>>(
Component: Component<BindableComponentProps<P>>
): BindableComponent<BindableProps<P>> {
const Bindable = (props: BindableComponentProps<P>) => {
const bindableProps = proxyProps(props);
return Component(bindableProps as never);
};
return Bindable as never;
}
|