UNPKG

@ariakit/react-core

Version:

Ariakit React core

83 lines (81 loc) 2.02 kB
"use client"; import { useFormControl } from "../__chunks/GSOIM56U.js"; import { useFormContext } from "../__chunks/F53GGRQB.js"; import "../__chunks/RZ4GPYOB.js"; import { useCheckboxStore } from "../__chunks/HAVBGUA3.js"; import { useCheckbox } from "../__chunks/IAEAQUOT.js"; import "../__chunks/2RSXSRCN.js"; import "../__chunks/PFRGBC2K.js"; import "../__chunks/SWN3JYXT.js"; import "../__chunks/EYKMH5G5.js"; import "../__chunks/RNCDFVMF.js"; import "../__chunks/YV4JVR4I.js"; import "../__chunks/VDHZ5F7K.js"; import { createElement, createHook, forwardRef, memo } from "../__chunks/LMDWO4NN.js"; import "../__chunks/ABQUS43J.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 };