UNPKG

@ariakit/react-core

Version:

Ariakit React core

83 lines (81 loc) 2.02 kB
"use client"; import { useFormControl } from "../__chunks/HMMAPSBX.js"; import { useFormContext } from "../__chunks/GSXI3IAI.js"; import "../__chunks/Y62RTBST.js"; import { useCheckboxStore } from "../__chunks/KPSSTU6K.js"; import { useCheckbox } from "../__chunks/KPUWHTQJ.js"; import "../__chunks/2W3RN7C5.js"; import "../__chunks/OE2EFRVA.js"; import "../__chunks/SWN3JYXT.js"; import "../__chunks/EYKMH5G5.js"; import "../__chunks/WWPIG7YG.js"; import "../__chunks/RTNCFSKZ.js"; import "../__chunks/5CPL3B7G.js"; import { createElement, createHook, forwardRef, memo } from "../__chunks/VOQWLFSQ.js"; import "../__chunks/5GGHRIN3.js"; import "../__chunks/SK3NAZA3.js"; import { __objRest, __spreadValues } from "../__chunks/3YLGPPWQ.js"; // src/form/form-checkbox.tsx import { invariant } from "@ariakit/core/utils/misc"; var TagName = "input"; var useFormCheckbox = createHook( function useFormCheckbox2(_a) { var _b = _a, { store, name: nameProp, value, checked, defaultChecked } = _b, props = __objRest(_b, [ "store", "name", "value", "checked", "defaultChecked" ]); const context = useFormContext(); store = store || context; invariant( store, process.env.NODE_ENV !== "production" && "FormCheckbox must be wrapped in a Form component." ); const name = `${nameProp}`; const checkboxStore = useCheckboxStore({ value: store.useValue(name), setValue: (value2) => store == null ? void 0 : store.setValue(name, value2) }); props = useCheckbox(__spreadValues({ store: checkboxStore, value, checked }, props)); props = useFormControl(__spreadValues({ store, name, "aria-labelledby": void 0 }, props)); return props; } ); var FormCheckbox = memo( forwardRef(function FormCheckbox2(props) { const htmlProps = useFormCheckbox(props); return createElement(TagName, htmlProps); }) ); export { FormCheckbox, useFormCheckbox };