@scrolia/vanilla
Version:
A headless scrollbar component
21 lines (19 loc) • 721 B
JavaScript
import { useScrollCore } from "../contexts/scrollcore.mjs";
import { getPropsFromAttributes } from "../functions/attribute.mjs";
import { getComponentProps } from "../functions/props/get.mjs";
import { setComponentProps } from "../functions/props/set.mjs";
import * as Atom from "atomico";
/** Hook to set component props automatically. */
const useComponentPropsSetter = (name) => {
const elRef = Atom.useHost();
const { options: { plugins } } = useScrollCore();
const props = getPropsFromAttributes(elRef.current.attributes);
const newProps = getComponentProps({
name,
props,
plugins
});
setComponentProps(elRef.current, newProps);
};
export { useComponentPropsSetter };
//# sourceMappingURL=props.mjs.map