UNPKG

informed

Version:

A lightweight framework and utility for building powerful forms in React applications

51 lines (43 loc) 1.58 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js'); var React = require('react'); var useFormController = require('../hooks/useFormController.js'); var debug = require('../debug.js'); var logger = debug.Debug('informed:FormField' + '\t'); var UpdateFields = function UpdateFields(_ref) { var schema = _ref.schema; var formController = useFormController.useFormController(); // When we render add props React.useEffect(function () { // Example schema // schema = { // product: { // oneOf: [ // { const: '', title: '- Select -' }, // { const: 'modelS', title: 'Model S' }, // { const: 'modelX', title: 'Model X' }, // { const: 'model3', title: 'Model 3' } // ] // } // } Object.entries(schema).forEach(function (_ref2) { var _ref3 = _rollupPluginBabelHelpers.slicedToArray(_ref2, 2), key = _ref3[0], value = _ref3[1]; logger("update-combine ".concat(key), value); formController.emitter.emit('update-combine', key, value); }); // When we unmount take away props return function () { Object.entries(schema).forEach(function (_ref4) { var _ref5 = _rollupPluginBabelHelpers.slicedToArray(_ref4, 1), key = _ref5[0]; logger("update-remove ".concat(key)); formController.emitter.emit('update-remove', key); }); }; }, []); return null; }; exports.UpdateFields = UpdateFields;