@renderlesskit/react
Version:
Collection of headless components/hooks that are accessible, composable, customizable from low level to build your own UI & Design System powered by Reakit
41 lines • 1.12 kB
JavaScript
import React from "react";
import { createEvent } from "reakit-utils";
export function getChecked(options) {
var {
checked,
value,
state
} = options;
if (typeof checked !== "undefined") return checked;
return typeof value !== "undefined" && state === value;
}
export function useInitialChecked(options) {
var [initialChecked] = React.useState(() => getChecked(options));
var {
id,
currentId,
setCurrentId
} = options;
var [initialCurrentId] = React.useState(currentId);
React.useEffect(() => {
if (initialChecked && id && initialCurrentId !== id) {
setCurrentId === null || setCurrentId === void 0 ? void 0 : setCurrentId(id);
}
}, [initialChecked, id, setCurrentId, initialCurrentId]);
}
export function fireChange(element, onChange) {
var event = createEvent(element, "change");
Object.defineProperties(event, {
type: {
value: "change"
},
target: {
value: element
},
currentTarget: {
value: element
}
});
onChange === null || onChange === void 0 ? void 0 : onChange(event);
}
//# sourceMappingURL=helpers.js.map