informed
Version:
A lightweight framework and utility for building powerful forms in React applications
43 lines (36 loc) • 1.46 kB
JavaScript
;
Object.defineProperty(exports, '__esModule', { value: true });
var _rollupPluginBabelHelpers = require('../_virtual/_rollupPluginBabelHelpers.js');
var React = require('react');
var useFieldState = require('../hooks/useFieldState.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
var _excluded = ["name"];
var DebugField = function DebugField(_ref) {
var name = _ref.name,
props = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
var fieldState = useFieldState.useFieldState(name);
var displayState = {};
if (Object.keys(props).length > 0) {
Object.keys(props).forEach(function (key) {
displayState[key] = fieldState[key];
});
} else {
displayState = fieldState;
}
React.useEffect(function () {
var _window;
// eslint-disable-next-line
if ((_window = window) !== null && _window !== void 0 && _window.Prism) Prism.highlightAll();
}, [displayState]);
var content = JSON.stringify(displayState, null, 2);
if (props.label) {
content = "// ".concat(props.label, "\n") + content;
}
return /*#__PURE__*/React__default["default"].createElement("pre", {
className: "language-js"
}, /*#__PURE__*/React__default["default"].createElement("code", {
className: "language-js"
}, content));
};
exports.DebugField = DebugField;