@ui-schema/react
Version:
Schema-driven UI generator for React using JSON Schema. Build powerful form and interface generators with headless components and hooks.
24 lines • 757 B
JavaScript
import * as React from 'react';
import { useUIStoreActions } from '@ui-schema/react/UIStoreActions';
import { getDisplayName } from '@ui-schema/react/Utils/memo';
import { useUIStore } from './UIStoreProvider.js';
import { jsx as _jsx } from "react/jsx-runtime";
export const extractValidity = Component => {
const ExtractValidity = p => {
const {
store,
showValidity
} = useUIStore();
const {
onChange
} = useUIStoreActions();
return _jsx(Component, {
...p,
validity: store?.extractValidity(p.storeKeys),
onChange: onChange,
showValidity: p.showValidity || showValidity
});
};
ExtractValidity.displayName = `ExtractValidity(${getDisplayName(Component)})`;
return ExtractValidity;
};