UNPKG

@ariakit/react-core

Version:

Ariakit React core

78 lines (61 loc) 2.35 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _MJ6BWJ6Scjs = require('../__chunks/MJ6BWJ6S.cjs'); require('../__chunks/YOCJTLRX.cjs'); var _ZZIPS7YZcjs = require('../__chunks/ZZIPS7YZ.cjs'); var _JDF6CMNNcjs = require('../__chunks/JDF6CMNN.cjs'); require('../__chunks/DYMTSYDC.cjs'); require('../__chunks/MIBORXQW.cjs'); require('../__chunks/XFOFWDPY.cjs'); require('../__chunks/GCJBB4ZT.cjs'); require('../__chunks/HMZCNR7F.cjs'); require('../__chunks/YAKNSXYI.cjs'); require('../__chunks/T3QB4FR3.cjs'); require('../__chunks/EMYYI4CZ.cjs'); require('../__chunks/QJGTENWI.cjs'); var _WBFXWJUHcjs = require('../__chunks/WBFXWJUH.cjs'); var _MZ2HG624cjs = require('../__chunks/MZ2HG624.cjs'); require('../__chunks/XMDZRF6Y.cjs'); // src/form/form-radio.tsx var _misc = require('@ariakit/core/utils/misc'); var TagName = "input"; var useFormRadio = _WBFXWJUHcjs.createHook.call(void 0, function useFormRadio2({ store, name: nameProp, value, ...props }) { const context = _JDF6CMNNcjs.useFormContext.call(void 0, ); store = store || context; _misc.invariant.call(void 0, store, process.env.NODE_ENV !== "production" && "FormRadio must be wrapped in a Form component." ); const name = `${nameProp}`; const onChangeProp = props.onChange; const onChange = _MZ2HG624cjs.useEvent.call(void 0, (event) => { onChangeProp == null ? void 0 : onChangeProp(event); if (event.defaultPrevented) return; store == null ? void 0 : store.setValue(name, value); }); const checkedProp = props.checked; const checked = store.useState( () => checkedProp != null ? checkedProp : (store == null ? void 0 : store.getValue(name)) === value ); props = { ...props, checked, onChange }; props = _MJ6BWJ6Scjs.useRadio.call(void 0, { value, ...props }); props = _ZZIPS7YZcjs.useFormControl.call(void 0, { store, name, "aria-labelledby": void 0, ...props }); return props; } ); var FormRadio = _WBFXWJUHcjs.memo.call(void 0, _WBFXWJUHcjs.forwardRef.call(void 0, function FormRadio2(props) { const htmlProps = useFormRadio(props); return _WBFXWJUHcjs.createElement.call(void 0, TagName, htmlProps); }) ); exports.FormRadio = FormRadio; exports.useFormRadio = useFormRadio;