UNPKG

@ariakit/react-core

Version:

Ariakit React core

62 lines (47 loc) 2.28 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } var _4EKRCHT6cjs = require('./4EKRCHT6.cjs'); var _76LCMKUIcjs = require('./76LCMKUI.cjs'); var _L5A2ID7Scjs = require('./L5A2ID7S.cjs'); var _7EQBAZ46cjs = require('./7EQBAZ46.cjs'); // src/form/form-store.ts var _formstore = require('@ariakit/core/form/form-store'); var Core = _interopRequireWildcard(_formstore); var _react = require('react'); function useFormStoreProps(store, update, props) { store = _4EKRCHT6cjs.useCollectionStoreProps.call(void 0, store, update, props); _76LCMKUIcjs.useStoreProps.call(void 0, store, props, "values", "setValues"); _76LCMKUIcjs.useStoreProps.call(void 0, store, props, "errors", "setErrors"); _76LCMKUIcjs.useStoreProps.call(void 0, store, props, "touched", "setTouched"); const useValue = _react.useCallback.call(void 0, (name) => store.useState(() => store.getValue(name)), [store] ); const useValidate = _react.useCallback.call(void 0, (callback) => { callback = _L5A2ID7Scjs.useEvent.call(void 0, callback); const items = store.useState("items"); _react.useEffect.call(void 0, () => store.onValidate(callback), [items, callback]); }, [store] ); const useSubmit = _react.useCallback.call(void 0, (callback) => { callback = _L5A2ID7Scjs.useEvent.call(void 0, callback); const items = store.useState("items"); _react.useEffect.call(void 0, () => store.onSubmit(callback), [items, callback]); }, [store] ); return _react.useMemo.call(void 0, () => _7EQBAZ46cjs.__spreadProps.call(void 0, _7EQBAZ46cjs.__spreadValues.call(void 0, {}, store), { useValue, useValidate, useSubmit }), [] ); } function useFormStore(props = {}) { const [store, update] = _76LCMKUIcjs.useStore.call(void 0, Core.createFormStore, props); return useFormStoreProps(store, update, props); } exports.useFormStoreProps = useFormStoreProps; exports.useFormStore = useFormStore;