@rjsf/core 5.0.0-beta.15 → 5.0.0-beta.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@rjsf/utils"),require("lodash-es/get"),require("lodash-es/isEmpty"),require("lodash-es/pick"),require("lodash-es/isObject"),require("lodash-es/set"),require("nanoid"),require("lodash-es/unset"),require("lodash-es/has"),require("lodash-es/omit")):"function"==typeof define&&define.amd?define(["exports","react","@rjsf/utils","lodash-es/get","lodash-es/isEmpty","lodash-es/pick","lodash-es/isObject","lodash-es/set","nanoid","lodash-es/unset","lodash-es/has","lodash-es/omit"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@rjsf/core"]={},e.React,e.utils,e.get,e._isEmpty,e._pick,e.isObject,e.set,e.nanoid,e.unset,e.has,e.omit)}(this,(function(e,t,r,a,n,i,o,l,s,d,u,c){"use strict";function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=m(t),p=m(a),h=m(n),v=m(i),g=m(o),y=m(l),S=m(d),E=m(u),b=m(c);function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},C.apply(this,arguments)}function F(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,D(e,t)}function D(e,t){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},D(e,t)}function k(e,t){if(null==e)return{};var r,a,n={},i=Object.keys(e);for(a=0;a<i.length;a++)t.indexOf(r=i[a])>=0||(n[r]=e[r]);return n}function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=new Array(t);r<t;r++)a[r]=e[r];return a}var T=["widget"],w=["widget"],O=["widget"];function A(){return s.nanoid()}function N(e){return Array.isArray(e)?e.map((function(e){return{key:A(),item:e}})):[]}function B(e){return Array.isArray(e)?e.map((function(e){return e.item})):[]}var I=function(e){function t(t){var a;(a=e.call(this,t)||this)._getNewFormDataRow=function(){var e=a.props,t=e.schema,n=e.registry.schemaUtils,i=t.items;return r.isFixedItems(t)&&r.allowAdditionalItems(t)&&(i=t.additionalItems),n.getDefaultFormState(i)},a.onAddClick=function(e){e&&e.preventDefault();var t=a.props.onChange,r=a.state.keyedFormData,n={key:A(),item:a._getNewFormDataRow()},i=[].concat(r,[n]);a.setState({keyedFormData:i,updatedKeyedFormData:!0},(function(){return t(B(i))}))},a.onAddIndexClick=function(e){return function(t){t&&t.preventDefault();var r=a.props.onChange,n=a.state.keyedFormData,i={key:A(),item:a._getNewFormDataRow()},o=[].concat(n);o.splice(e,0,i),a.setState({keyedFormData:o,updatedKeyedFormData:!0},(function(){return r(B(o))}))}},a.onDropIndexClick=function(e){return function(t){t&&t.preventDefault();var r,n=a.props,i=n.onChange,o=n.errorSchema,l=a.state.keyedFormData;if(o)for(var s in r={},o){var d=parseInt(s);d<e?y.default(r,[d],o[s]):d>e&&y.default(r,[d-1],o[s])}var u=l.filter((function(t,r){return r!==e}));a.setState({keyedFormData:u,updatedKeyedFormData:!0},(function(){return i(B(u),r)}))}},a.onReorderClick=function(e,t){return function(r){r&&(r.preventDefault(),r.currentTarget.blur());var n,i=a.props,o=i.onChange,l=i.errorSchema;if(a.props.errorSchema)for(var s in n={},l){var d=parseInt(s);d==e?y.default(n,[t],l[e]):d==t?y.default(n,[e],l[t]):y.default(n,[s],l[d])}var u,c=a.state.keyedFormData,m=((u=c.slice()).splice(e,1),u.splice(t,0,c[e]),u);a.setState({keyedFormData:m},(function(){return o(B(m),n)}))}},a.onChangeForIndex=function(e){return function(t,r,n){var i,o=a.props,l=o.formData,s=o.errorSchema;(0,o.onChange)((Array.isArray(l)?l:[]).map((function(r,a){return e===a?void 0===t?null:t:r})),s&&s&&C({},s,((i={})[e]=r,i)),n)}},a.onSelectChange=function(e){var t=a.props,r=t.idSchema;(0,t.onChange)(e,void 0,r&&r.$id)};var n=t.formData,i=N(void 0===n?[]:n);return a.state={keyedFormData:i,updatedKeyedFormData:!1},a}F(t,e),t.getDerivedStateFromProps=function(e,t){if(t.updatedKeyedFormData)return{updatedKeyedFormData:!1};var r=Array.isArray(e.formData)?e.formData:[],a=t.keyedFormData||[];return{keyedFormData:r.length===a.length?a.map((function(e,t){return{key:e.key,item:r[t]}})):N(r)}};var a,n,i=t.prototype;return i.isItemRequired=function(e){return Array.isArray(e.type)?!e.type.includes("null"):"null"!==e.type},i.canAddItem=function(e){var t=this.props,a=t.schema,n=r.getUiOptions(t.uiSchema).addable;return!1!==n&&(n=void 0===a.maxItems||e.length<a.maxItems),n},i.render=function(){var e=this.props,t=e.schema,a=e.uiSchema,n=e.idSchema,i=e.registry,o=i.schemaUtils;if(!(r.ITEMS_KEY in t)){var l=r.getUiOptions(a),s=r.getTemplate("UnsupportedFieldTemplate",i,l);return f.default.createElement(s,{schema:t,idSchema:n,reason:"Missing items definition",registry:i})}return o.isMultiSelect(t)?this.renderMultiSelect():r.isCustomWidget(a)?this.renderCustomWidget():r.isFixedItems(t)?this.renderFixedArray():o.isFilesArray(t,a)?this.renderFiles():this.renderNormalArray()},i.renderNormalArray=function(){var e=this,t=this.props,a=t.schema,n=t.uiSchema,i=void 0===n?{}:n,o=t.errorSchema,l=t.idSchema,s=t.name,d=t.disabled,u=void 0!==d&&d,c=t.readonly,m=void 0!==c&&c,p=t.autofocus,h=void 0!==p&&p,v=t.required,y=void 0!==v&&v,S=t.registry,E=t.onBlur,b=t.onFocus,F=t.idPrefix,D=t.idSeparator,k=void 0===D?"_":D,x=t.rawErrors,T=this.state.keyedFormData,w=void 0===a.title?s:a.title,O=S.schemaUtils,A=S.formContext,N=r.getUiOptions(i),I=g.default(a.items)?a.items:{},U=O.retrieveSchema(I),q=B(this.state.keyedFormData),P={canAdd:this.canAddItem(q),items:T.map((function(t,r){var a=t.key,n=t.item,d=O.retrieveSchema(I,n),u=o?o[r]:void 0,c=O.toIdSchema(d,l.$id+k+r,n,F,k);return e.renderArrayFieldItem({key:a,index:r,name:s&&s+"-"+r,canMoveUp:r>0,canMoveDown:r<q.length-1,itemSchema:d,itemIdSchema:c,itemErrorSchema:u,itemData:n,itemUiSchema:i.items,autofocus:h&&0===r,onBlur:E,onFocus:b,rawErrors:x})})),className:"field field-array field-array-of-"+U.type,disabled:u,idSchema:l,uiSchema:i,onAddClick:this.onAddClick,readonly:m,required:y,schema:a,title:w,formContext:A,formData:q,rawErrors:x,registry:S},_=r.getTemplate("ArrayFieldTemplate",S,N);return f.default.createElement(_,C({},P))},i.renderCustomWidget=function(){var e=this.props,t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.required,m=void 0!==c&&c,p=e.hideError,h=e.placeholder,v=e.onBlur,g=e.onFocus,y=e.formData,S=void 0===y?[]:y,E=e.registry,b=e.rawErrors,C=E.widgets,F=E.formContext,D=t.title||e.name,x=r.getUiOptions(n),w=x.widget,O=k(x,T),A=r.getWidget(t,w,C);return f.default.createElement(A,{id:a&&a.$id,multiple:!0,onChange:this.onSelectChange,onBlur:v,onFocus:g,options:O,schema:t,uiSchema:n,registry:E,value:S,disabled:o,readonly:s,hideError:p,required:m,label:D,placeholder:h,formContext:F,autofocus:u,rawErrors:b})},i.renderMultiSelect=function(){var e=this.props,t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.formData,o=void 0===i?[]:i,l=e.disabled,s=void 0!==l&&l,d=e.readonly,u=void 0!==d&&d,c=e.autofocus,m=void 0!==c&&c,p=e.required,h=void 0!==p&&p,v=e.placeholder,g=e.onBlur,y=e.onFocus,S=e.registry,E=e.rawErrors,b=e.name,F=S.widgets,D=S.formContext,x=S.schemaUtils.retrieveSchema(t.items,o),T=t.title||b,O=r.optionsList(x),A=r.getUiOptions(n),N=A.widget,B=void 0===N?"select":N,I=k(A,w),U=r.getWidget(t,B,F);return f.default.createElement(U,{id:a&&a.$id,multiple:!0,onChange:this.onSelectChange,onBlur:g,onFocus:y,options:C({},I,{enumOptions:O}),schema:t,uiSchema:n,registry:S,value:o,disabled:s,readonly:u,required:h,label:T,placeholder:v,formContext:D,autofocus:m,rawErrors:E})},i.renderFiles=function(){var e=this.props,t=e.schema,a=e.uiSchema,n=e.idSchema,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.required,m=void 0!==c&&c,p=e.onBlur,h=e.onFocus,v=e.registry,g=e.formData,y=void 0===g?[]:g,S=e.rawErrors,E=t.title||e.name,b=v.widgets,C=v.formContext,F=r.getUiOptions(a),D=F.widget,x=void 0===D?"files":D,T=k(F,O),w=r.getWidget(t,x,b);return f.default.createElement(w,{options:T,id:n&&n.$id,multiple:!0,onChange:this.onSelectChange,onBlur:p,onFocus:h,schema:t,uiSchema:a,title:E,value:y,disabled:o,readonly:s,required:m,registry:v,formContext:C,autofocus:u,rawErrors:S,label:""})},i.renderFixedArray=function(){var e=this,t=this.props,a=t.schema,n=t.uiSchema,i=void 0===n?{}:n,o=t.formData,l=void 0===o?[]:o,s=t.errorSchema,d=t.idPrefix,u=t.idSeparator,c=void 0===u?"_":u,m=t.idSchema,p=t.name,h=t.disabled,v=void 0!==h&&h,y=t.readonly,S=void 0!==y&&y,E=t.autofocus,b=void 0!==E&&E,F=t.required,D=void 0!==F&&F,k=t.registry,x=t.onBlur,T=t.onFocus,w=t.rawErrors,O=this.state.keyedFormData,A=this.props.formData,N=void 0===A?[]:A,B=a.title||p,I=r.getUiOptions(i),U=k.schemaUtils,q=k.formContext,P=(g.default(a.items)?a.items:[]).map((function(e,t){return U.retrieveSchema(e,l[t])})),_=g.default(a.additionalItems)?U.retrieveSchema(a.additionalItems,l):null;(!N||N.length<P.length)&&(N=(N=N||[]).concat(new Array(P.length-N.length)));var R={canAdd:this.canAddItem(N)&&!!_,className:"field field-array field-array-fixed-items",disabled:v,idSchema:m,formData:l,items:O.map((function(t,r){var n=t.key,o=t.item,l=r>=P.length,u=l&&g.default(a.additionalItems)?U.retrieveSchema(a.additionalItems,o):P[r],f=U.toIdSchema(u,m.$id+c+r,o,d,c),h=l?i.additionalItems||{}:Array.isArray(i.items)?i.items[r]:i.items||{};return e.renderArrayFieldItem({key:n,index:r,name:p&&p+"-"+r,canRemove:l,canMoveUp:r>=P.length+1,canMoveDown:l&&r<N.length-1,itemSchema:u,itemData:o,itemUiSchema:h,itemIdSchema:f,itemErrorSchema:s?s[r]:void 0,autofocus:b&&0===r,onBlur:x,onFocus:T,rawErrors:w})})),onAddClick:this.onAddClick,readonly:S,required:D,registry:k,schema:a,uiSchema:i,title:B,formContext:q,rawErrors:w},j=r.getTemplate("ArrayFieldTemplate",k,I);return f.default.createElement(j,C({},R))},i.renderArrayFieldItem=function(e){var t=e.key,a=e.index,n=e.name,i=e.canRemove,o=void 0===i||i,l=e.canMoveUp,s=void 0===l||l,d=e.canMoveDown,u=void 0===d||d,c=e.itemSchema,m=e.itemData,p=e.itemUiSchema,h=e.itemIdSchema,v=e.itemErrorSchema,g=e.autofocus,y=e.onBlur,S=e.onFocus,E=e.rawErrors,b=this.props,C=b.disabled,F=b.hideError,D=b.idPrefix,k=b.idSeparator,x=b.readonly,T=b.registry,w=b.formContext,O=T.fields,A=O.ArraySchemaField||O.SchemaField,N=r.getUiOptions(b.uiSchema),B=N.orderable,I=void 0===B||B,U=N.removable,q={moveUp:I&&s,moveDown:I&&u,remove:(void 0===U||U)&&o,toolbar:!1};return q.toolbar=Object.keys(q).some((function(e){return q[e]})),{children:f.default.createElement(A,{name:n,index:a,schema:c,uiSchema:p,formData:m,formContext:w,errorSchema:v,idPrefix:D,idSeparator:k,idSchema:h,required:this.isItemRequired(c),onChange:this.onChangeForIndex(a),onBlur:y,onFocus:S,registry:T,disabled:C,readonly:x,hideError:F,autofocus:g,rawErrors:E}),className:"array-item",disabled:C,hasToolbar:q.toolbar,hasMoveUp:q.moveUp,hasMoveDown:q.moveDown,hasRemove:q.remove,index:a,key:t,onAddIndexClick:this.onAddIndexClick,onDropIndexClick:this.onDropIndexClick,onReorderClick:this.onReorderClick,readonly:x,registry:T,schema:c,uiSchema:p}},a=t,(n=[{key:"itemTitle",get:function(){var e=this.props.schema;return p.default(e,[r.ITEMS_KEY,"title"],p.default(e,[r.ITEMS_KEY,"description"],"Item"))}}])&&function(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}(a.prototype,n),Object.defineProperty(a,"prototype",{writable:!1}),t}(t.Component),U=["widget"];function q(e){var t,a=e.schema,n=e.name,i=e.uiSchema,o=e.idSchema,l=e.formData,s=e.registry,d=e.required,u=e.disabled,c=e.readonly,m=e.autofocus,p=e.onChange,h=e.onFocus,v=e.onBlur,y=e.rawErrors,S=a.title,E=s.widgets,b=s.formContext,F=r.getUiOptions(i),D=F.widget,x=void 0===D?"checkbox":D,T=k(F,U),w=r.getWidget(a,x,E);if(Array.isArray(a.oneOf))t=r.optionsList({oneOf:a.oneOf.map((function(e){if(g.default(e))return C({},e,{title:e.title||(!0===e.const?"Yes":"No")})})).filter((function(e){return e}))});else{var O,A=a,N=null!=(O=a.enum)?O:[!0,!1];t=!A.enumNames&&2===N.length&&N.every((function(e){return"boolean"==typeof e}))?[{value:N[0],label:N[0]?"Yes":"No"},{value:N[1],label:N[1]?"Yes":"No"}]:r.optionsList({enum:N,enumNames:A.enumNames})}return f.default.createElement(w,{options:C({},T,{enumOptions:t}),schema:a,uiSchema:i,id:o&&o.$id,onChange:p,onFocus:h,onBlur:v,label:void 0===S?n:S,value:l,required:d,disabled:u,readonly:c,registry:s,formContext:b,autofocus:m,rawErrors:y})}var P=["widget"],_=function(e){function t(t){var a;(a=e.call(this,t)||this).onOptionChange=function(e){var t=parseInt(e,10),n=a.props,i=n.formData,o=n.onChange,l=n.options,s=n.registry.schemaUtils,d=s.retrieveSchema(l[t],i),u=void 0;if("object"===r.guessType(i)&&("object"===d.type||d.properties)){u=Object.assign({},i);var c=l.slice();c.splice(t,1);for(var m,f=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return x(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?x(e,t):void 0}}(e))){r&&(e=r);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(c);!(m=f()).done;){var p=m.value;if(p.properties)for(var h in p.properties)h in u&&S.default(u,h)}}o(s.getDefaultFormState(l[t],u,"excludeObjectChildren"),void 0,a.getFieldId()),a.setState({selectedOption:parseInt(e,10)})};var n=a.props;return a.state={selectedOption:a.getMatchingOption(0,n.formData,n.options)},a}F(t,e);var a=t.prototype;return a.componentDidUpdate=function(e,t){var a=this.props,n=a.formData,i=a.options,o=a.idSchema,l=this.state.selectedOption;if(!r.deepEquals(n,e.formData)&&o.$id===e.idSchema.$id){var s=this.getMatchingOption(l,n,i);if(!t||s===l)return;this.setState({selectedOption:s})}},a.getMatchingOption=function(e,t,r){var a=this.props.registry.schemaUtils.getMatchingOption(t,r);return 0!==a?a:e||0},a.getFieldId=function(){var e=this.props;return e.idSchema.$id+(e.schema.oneOf?"__oneof_select":"__anyof_select")},a.render=function(){var e,t=this.props,a=t.name,n=t.baseType,i=t.disabled,o=void 0!==i&&i,l=t.readonly,s=void 0!==l&&l,d=t.hideError,u=void 0!==d&&d,c=t.errorSchema,m=void 0===c?{}:c,p=t.formData,h=t.formContext,v=t.idPrefix,g=t.idSeparator,y=t.idSchema,S=t.onBlur,E=t.onChange,b=t.onFocus,F=t.options,D=t.registry,x=t.uiSchema,T=D.widgets,w=D.fields.SchemaField,O=this.state.selectedOption,A=r.getUiOptions(x),N=A.widget,B=void 0===N?"select":N,I=k(A,P),U=r.getWidget({type:"number"},B,T),q=F[O]||null;q&&(e=q.type?q:Object.assign({},q,{type:n}));var _=F.map((function(e,t){return{label:e.title||"Option "+(t+1),value:t}}));return f.default.createElement("div",{className:"panel panel-default panel-body"},f.default.createElement("div",{className:"form-group"},f.default.createElement(U,C({id:this.getFieldId(),schema:{type:"number",default:0},onChange:this.onOptionChange,onBlur:S,onFocus:b,value:O,options:{enumOptions:_},registry:D,formContext:h},I,{label:""}))),null!==q&&f.default.createElement(w,{name:a,schema:e,uiSchema:x,errorSchema:m,idSchema:y,idPrefix:v,idSeparator:g,formData:p,formContext:h,onChange:E,onBlur:S,onFocus:b,registry:D,disabled:o,readonly:s,hideError:u}))},t}(t.Component),R=/\.([0-9]*0)*$/,j=/[0.]0*$/;function V(e){var a=e.registry,n=e.onChange,i=e.formData,o=t.useState(e.value),l=o[0],s=o[1],d=a.fields.StringField,u=i,c=t.useCallback((function(e){s(e),"."===(""+e).charAt(0)&&(e="0"+e);var t="string"==typeof e&&e.match(R)?r.asNumber(e.replace(j,"")):r.asNumber(e);n(t)}),[n]);if("string"==typeof l&&"number"==typeof u){var m=new RegExp((""+u).replace(".","\\.")+"\\.?0*$");l.match(m)&&(u=l)}return f.default.createElement(d,C({},e,{formData:u,onChange:c}))}var M=function(e){function t(){for(var t,a=arguments.length,n=new Array(a),i=0;i<a;i++)n[i]=arguments[i];return(t=e.call.apply(e,[this].concat(n))||this).state={wasPropertyKeyModified:!1,additionalProperties:{}},t.onPropertyChange=function(e,r){return void 0===r&&(r=!1),function(a,n,i){var o,l,s=t.props,d=s.errorSchema;void 0===a&&r&&(a=""),(0,s.onChange)(C({},s.formData,((o={})[e]=a,o)),d&&d&&C({},d,((l={})[e]=n,l)),i)}},t.onDropPropertyClick=function(e){return function(r){r.preventDefault();var a=t.props,n=a.onChange,i=C({},a.formData);S.default(i,e),n(i)}},t.getAvailableKey=function(e,a){for(var n=r.getUiOptions(t.props.uiSchema).duplicateKeySuffixSeparator,i=void 0===n?"-":n,o=0,l=e;l in a;)l=""+e+i+ ++o;return l},t.onKeyChange=function(e){return function(r,a){var n,i;if(e!==r){var o=t.props,l=o.formData,s=o.onChange,d=o.errorSchema;r=t.getAvailableKey(r,l);var u=C({},l),c=((n={})[e]=r,n),m=Object.keys(u).map((function(e){var t;return(t={})[c[e]||e]=u[e],t})),f=Object.assign.apply(Object,[{}].concat(m));t.setState({wasPropertyKeyModified:!0}),s(f,d&&d&&C({},d,((i={})[r]=a,i)))}}},t.handleAddClick=function(e){return function(){if(e.additionalProperties){var a=t.props,n=a.formData,i=a.onChange,o=a.registry,l=C({},n),s=void 0;g.default(e.additionalProperties)&&(s=e.additionalProperties.type,r.REF_KEY in e.additionalProperties&&(s=o.schemaUtils.retrieveSchema({$ref:e.additionalProperties[r.REF_KEY]},n).type));var d=t.getAvailableKey("newKey",l);y.default(l,d,t.getDefaultValue(s)),i(l)}}},t}F(t,e);var a=t.prototype;return a.isRequired=function(e){var t=this.props.schema;return Array.isArray(t.required)&&-1!==t.required.indexOf(e)},a.getDefaultValue=function(e){switch(e){case"string":default:return"New Value";case"array":return[];case"boolean":return!1;case"null":return null;case"number":return 0;case"object":return{}}},a.render=function(){var e,t=this,a=this.props,n=a.uiSchema,i=void 0===n?{}:n,o=a.formData,l=a.errorSchema,s=a.idSchema,d=a.name,u=a.required,c=void 0!==u&&u,m=a.disabled,h=void 0!==m&&m,v=a.readonly,g=void 0!==v&&v,y=a.hideError,S=a.idPrefix,b=a.idSeparator,F=a.onBlur,D=a.onFocus,k=a.registry,x=k.formContext,T=k.fields.SchemaField,w=k.schemaUtils.retrieveSchema(a.schema,o),O=r.getUiOptions(i),A=w.properties,N=void 0===A?{}:A,B=void 0===w.title?d:w.title,I=O.description||w.description;try{var U=Object.keys(N);e=r.orderProperties(U,O.order)}catch(e){return f.default.createElement("div",null,f.default.createElement("p",{className:"config-error",style:{color:"red"}},"Invalid ",d||"root"," object field configuration:",f.default.createElement("em",null,e.message),"."),f.default.createElement("pre",null,JSON.stringify(w)))}var q=r.getTemplate("ObjectFieldTemplate",k,O),P={title:O.title||B,description:I,properties:e.map((function(e){var a=E.default(w,[r.PROPERTIES_KEY,e,r.ADDITIONAL_PROPERTY_FLAG]),n=a?i.additionalProperties:i[e],d="hidden"===r.getUiOptions(n).widget,u=p.default(s,[e],{});return{content:f.default.createElement(T,{key:e,name:e,required:t.isRequired(e),schema:p.default(w,[r.PROPERTIES_KEY,e],{}),uiSchema:n,errorSchema:p.default(l,e),idSchema:u,idPrefix:S,idSeparator:b,formData:p.default(o,e),formContext:x,wasPropertyKeyModified:t.state.wasPropertyKeyModified,onKeyChange:t.onKeyChange(e),onChange:t.onPropertyChange(e,a),onBlur:F,onFocus:D,registry:k,disabled:h,readonly:g,hideError:y,onDropPropertyClick:t.onDropPropertyClick}),name:e,readonly:g,disabled:h,required:c,hidden:d}})),readonly:g,disabled:h,required:c,idSchema:s,uiSchema:i,schema:w,formData:o,formContext:x,registry:k};return f.default.createElement(q,C({},P,{onAddClick:this.handleAddClick}))},t}(t.Component),K=["__errors"],W={array:"ArrayField",boolean:"BooleanField",integer:"NumberField",number:"NumberField",object:"ObjectField",string:"StringField",null:"NullField"};function L(e){var t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.formData,o=e.errorSchema,l=e.idPrefix,s=e.idSeparator,d=e.name,u=e.onChange,c=e.onKeyChange,m=e.onDropPropertyClick,p=e.required,h=e.registry,v=e.wasPropertyKeyModified,y=void 0!==v&&v,S=h.formContext,E=h.schemaUtils,F=r.getUiOptions(n),D=r.getTemplate("FieldTemplate",h,F),x=r.getTemplate("DescriptionFieldTemplate",h,F),T=r.getTemplate("FieldHelpTemplate",h,F),w=r.getTemplate("FieldErrorTemplate",h,F),O=E.retrieveSchema(t,i),A=a[r.ID_KEY],N=r.mergeObjects(E.toIdSchema(O,A,i,l,s),a),B=f.default.useCallback((function(e,t,r){return u(e,t,r||A)}),[A,u]),I=function(e,t,a,n){var i=t.field,o=n.fields;if("function"==typeof i)return i;if("string"==typeof i&&i in o)return o[i];var l=r.getSchemaType(e),s=Array.isArray(l)?l[0]:l||"",d=W[s];return d||!e.anyOf&&!e.oneOf?d in o?o[d]:function(){var i=r.getTemplate("UnsupportedFieldTemplate",n,t);return f.default.createElement(i,{schema:e,idSchema:a,reason:"Unknown field type "+e.type,registry:n})}:function(){return null}}(O,F,N,h),U=Boolean(e.disabled||F.disabled),q=Boolean(e.readonly||F.readonly||e.schema.readOnly||O.readOnly),P=F.hideError,_=void 0===P?e.hideError:Boolean(P),R=Boolean(e.autofocus||F.autofocus);if(0===Object.keys(O).length)return null;var j=E.getDisplayLabel(O,n),V=o||{},M=V.__errors,L=k(V,K),$=b.default(n,["ui:classNames","classNames"]);"ui:options"in $&&($["ui:options"]=b.default($["ui:options"],["classNames"]));var Y,z=f.default.createElement(I,C({},e,{onChange:B,idSchema:N,schema:O,uiSchema:$,disabled:U,readonly:q,hideError:_,autofocus:R,errorSchema:L,formContext:S,rawErrors:M})),H=N[r.ID_KEY];Y=y||r.ADDITIONAL_PROPERTY_FLAG in O?d:F.title||e.schema.title||O.title||d;var J=F.description||e.schema.description||O.description||"",G=F.help,Q="hidden"===F.widget,X=["form-group","field","field-"+O.type];!_&&M&&M.length>0&&X.push("field-error has-error has-danger"),null!=n&&n.classNames&&X.push(n.classNames),F.classNames&&X.push(F.classNames);var Z=f.default.createElement(T,{help:G,idSchema:N,schema:O,uiSchema:n,hasErrors:!_&&M&&M.length>0,registry:h}),ee=_?void 0:f.default.createElement(w,{errors:M,errorSchema:o,idSchema:N,schema:O,uiSchema:n,registry:h}),te={description:f.default.createElement(x,{id:H+"__description",description:J,schema:O,uiSchema:n,registry:h}),rawDescription:J,help:Z,rawHelp:"string"==typeof G?G:void 0,errors:ee,rawErrors:_?void 0:M,id:H,label:Y,hidden:Q,onChange:u,onKeyChange:c,onDropPropertyClick:m,required:p,disabled:U,readonly:q,hideError:_,displayLabel:j,classNames:X.join(" ").trim(),formContext:S,formData:i,schema:O,uiSchema:n,registry:h},re=h.fields.AnyOfField,ae=h.fields.OneOfField;return f.default.createElement(D,C({},te),f.default.createElement(f.default.Fragment,null,z,O.anyOf&&!(null!=n&&n["ui:field"])&&!E.isSelect(O)&&f.default.createElement(re,{name:d,disabled:U,readonly:q,hideError:_,errorSchema:o,formData:i,formContext:S,idPrefix:l,idSchema:N,idSeparator:s,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,options:O.anyOf.map((function(e){return E.retrieveSchema(g.default(e)?e:{},i)})),baseType:O.type,registry:h,schema:O,uiSchema:n}),O.oneOf&&!(null!=n&&n["ui:field"])&&!E.isSelect(O)&&f.default.createElement(ae,{name:d,disabled:U,readonly:q,hideError:_,errorSchema:o,formData:i,formContext:S,idPrefix:l,idSchema:N,idSeparator:s,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,options:O.oneOf.map((function(e){return E.retrieveSchema(g.default(e)?e:{},i)})),baseType:O.type,registry:h,schema:O,uiSchema:n})))}var $=function(e){function t(){return e.apply(this,arguments)||this}F(t,e);var a=t.prototype;return a.shouldComponentUpdate=function(e){return!r.deepEquals(this.props,e)},a.render=function(){return f.default.createElement(L,C({},this.props))},t}(f.default.Component),Y=["widget","placeholder"];function z(e){var t=e.schema,a=e.name,n=e.uiSchema,i=e.idSchema,o=e.formData,l=e.required,s=e.disabled,d=void 0!==s&&s,u=e.readonly,c=void 0!==u&&u,m=e.autofocus,p=void 0!==m&&m,h=e.onChange,v=e.onBlur,g=e.onFocus,y=e.registry,S=e.rawErrors,E=t.title,b=t.format,F=y.widgets,D=y.formContext,x=y.schemaUtils.isSelect(t)?r.optionsList(t):void 0,T=x?"select":"text";b&&r.hasWidget(t,b,F)&&(T=b);var w=r.getUiOptions(n),O=w.widget,A=void 0===O?T:O,N=w.placeholder,B=void 0===N?"":N,I=k(w,Y),U=r.getWidget(t,A,F);return f.default.createElement(U,{options:C({},I,{enumOptions:x}),schema:t,uiSchema:n,id:i&&i.$id,label:void 0===E?a:E,value:o,onChange:h,onBlur:v,onFocus:g,required:l,disabled:d,readonly:c,formContext:D,autofocus:p,registry:y,placeholder:B,rawErrors:S})}function H(e){var r=e.formData,a=e.onChange;return t.useEffect((function(){void 0===r&&a(null)}),[r,a]),null}function J(e){var t=e.idSchema,a=e.description,n=e.registry,i=e.schema,o=e.uiSchema,l=r.getUiOptions(o),s=l.label;if(!a||void 0!==s&&!s)return null;var d=r.getTemplate("DescriptionFieldTemplate",n,l);return f.default.createElement(d,{id:t.$id+"__description",description:a,schema:i,uiSchema:o,registry:n})}function G(e){var t=e.disabled,r=e.hasToolbar,a=e.hasMoveDown,n=e.hasMoveUp,i=e.hasRemove,o=e.index,l=e.onDropIndexClick,s=e.onReorderClick,d=e.readonly,u=e.uiSchema,c=e.registry.templates.ButtonTemplates,m=c.MoveDownButton,p=c.MoveUpButton,h=c.RemoveButton,v={flex:1,paddingLeft:6,paddingRight:6,fontWeight:"bold"};return f.default.createElement("div",{className:e.className},f.default.createElement("div",{className:r?"col-xs-9":"col-xs-12"},e.children),r&&f.default.createElement("div",{className:"col-xs-3 array-item-toolbox"},f.default.createElement("div",{className:"btn-group",style:{display:"flex",justifyContent:"space-around"}},(n||a)&&f.default.createElement(p,{style:v,disabled:t||d||!n,onClick:s(o,o-1),uiSchema:u}),(n||a)&&f.default.createElement(m,{style:v,disabled:t||d||!a,onClick:s(o,o+1),uiSchema:u}),i&&f.default.createElement(h,{style:v,disabled:t||d,onClick:l(o),uiSchema:u}))))}var Q=["key"];function X(e){var t=e.canAdd,a=e.className,n=e.disabled,i=e.idSchema,o=e.uiSchema,l=e.items,s=e.onAddClick,d=e.readonly,u=e.registry,c=e.required,m=e.schema,p=e.title,h=r.getUiOptions(o),v=r.getTemplate("ArrayFieldDescriptionTemplate",u,h),g=r.getTemplate("ArrayFieldItemTemplate",u,h),y=r.getTemplate("ArrayFieldTitleTemplate",u,h),S=u.templates.ButtonTemplates.AddButton;return f.default.createElement("fieldset",{className:a,id:i.$id},f.default.createElement(y,{idSchema:i,title:h.title||p,required:c,schema:m,uiSchema:o,registry:u}),f.default.createElement(v,{idSchema:i,description:h.description||m.description,schema:m,uiSchema:o,registry:u}),f.default.createElement("div",{className:"row array-item-list"},l&&l.map((function(e){var t=e.key,r=k(e,Q);return f.default.createElement(g,C({key:t},r))}))),t&&f.default.createElement(S,{className:"array-item-add",onClick:s,disabled:n||d,uiSchema:o}))}function Z(e){var t=e.idSchema,a=e.title,n=e.schema,i=e.uiSchema,o=e.required,l=e.registry,s=r.getUiOptions(i),d=s.label;if(!a||void 0!==d&&!d)return null;var u=r.getTemplate("TitleFieldTemplate",l,s);return f.default.createElement(u,{id:t.$id+"__title",title:a,required:o,schema:n,uiSchema:i,registry:l})}var ee=["id","value","readonly","disabled","autofocus","onBlur","onFocus","onChange","options","schema","uiSchema","formContext","registry","rawErrors","type"];function te(e){var a=e.id,n=e.value,i=e.readonly,o=e.disabled,l=e.autofocus,s=e.onBlur,d=e.onFocus,u=e.onChange,c=e.options,m=e.schema,p=e.type,h=k(e,ee);if(!a)throw console.log("No id for",e),new Error("no id for props "+JSON.stringify(e));var v,g=C({},h,r.getInputProps(m,p,c));v="number"===g.type||"integer"===g.type?n||0===n?n:"":null==n?"":n;var y=t.useCallback((function(e){var t=e.target.value;return u(""===t?c.emptyValue:t)}),[u,c]),S=t.useCallback((function(e){return s(a,e.target.value)}),[s,a]),E=t.useCallback((function(e){return d(a,e.target.value)}),[d,a]);return f.default.createElement(f.default.Fragment,null,f.default.createElement("input",C({id:a,name:a,className:"form-control",readOnly:i,disabled:o,autoFocus:l,value:v},g,{list:m.examples?"examples_"+a:void 0,onChange:y,onBlur:S,onFocus:E})),Array.isArray(m.examples)&&f.default.createElement("datalist",{key:"datalist_"+a,id:"examples_"+a},[].concat(new Set(m.examples.concat(m.default?[m.default]:[]))).map((function(e){return f.default.createElement("option",{key:e,value:e})}))))}function re(e){var t=r.getSubmitButtonOptions(e.uiSchema),a=t.submitText,n=t.props,i=void 0===n?{}:n;return t.norender?null:f.default.createElement("div",null,f.default.createElement("button",C({type:"submit"},i,{className:"btn btn-info "+i.className}),a))}var ae=["iconType","icon","className","uiSchema"];function ne(e){var t=e.iconType,r=void 0===t?"default":t,a=e.icon,n=e.className,i=k(e,ae);return f.default.createElement("button",C({type:"button",className:"btn btn-"+r+" "+n},i),f.default.createElement("i",{className:"glyphicon glyphicon-"+a}))}function ie(e){return f.default.createElement(ne,C({title:"Move down",className:"array-item-move-down"},e,{icon:"arrow-down"}))}function oe(e){return f.default.createElement(ne,C({title:"Move up",className:"array-item-move-up"},e,{icon:"arrow-up"}))}function le(e){return f.default.createElement(ne,C({title:"Remove",className:"array-item-remove"},e,{iconType:"danger",icon:"remove"}))}function se(e){return f.default.createElement("div",{className:"row"},f.default.createElement("p",{className:"col-xs-3 col-xs-offset-9 text-right "+e.className},f.default.createElement(ne,{iconType:"info",icon:"plus",className:"btn-add col-xs-12",title:"Add",onClick:e.onClick,disabled:e.disabled})))}function de(e){var t=e.description;return t?f.default.createElement("string"==typeof t?"p":"div",{id:e.id,className:"field-description"},t):null}function ue(e){var t=e.errors;return f.default.createElement("div",{className:"panel panel-danger errors"},f.default.createElement("div",{className:"panel-heading"},f.default.createElement("h3",{className:"panel-title"},"Errors")),f.default.createElement("ul",{className:"list-group"},t.map((function(e,t){return f.default.createElement("li",{key:t,className:"list-group-item text-danger"},e.stack)}))))}function ce(e){var t=e.label;return t?f.default.createElement("label",{className:"control-label",htmlFor:e.id},t,e.required&&f.default.createElement("span",{className:"required"},"*")):null}function me(e){var t=e.id,a=e.label,n=e.children,i=e.errors,o=e.help,l=e.description,s=e.hidden,d=e.required,u=e.displayLabel,c=e.registry,m=r.getUiOptions(e.uiSchema),p=r.getTemplate("WrapIfAdditionalTemplate",c,m);return s?f.default.createElement("div",{className:"hidden"},n):f.default.createElement(p,C({},e),u&&f.default.createElement(ce,{label:a,required:d,id:t}),u&&l?l:null,n,i,o)}function fe(e){var t=e.errors,r=void 0===t?[]:t;return 0===r.length?null:f.default.createElement("div",null,f.default.createElement("ul",{id:e.idSchema.$id+"__error",className:"error-detail bs-callout bs-callout-info"},r.filter((function(e){return!!e})).map((function(e,t){return f.default.createElement("li",{className:"text-danger",key:t},e)}))))}function pe(e){var t=e.help;return t?f.default.createElement("string"==typeof t?"p":"div",{id:e.idSchema.$id+"__help",className:"help-block"},t):null}function he(e){var t=e.description,a=e.disabled,n=e.formData,i=e.idSchema,o=e.onAddClick,l=e.properties,s=e.readonly,d=e.registry,u=e.required,c=e.schema,m=e.title,p=e.uiSchema,h=r.getUiOptions(p),v=r.getTemplate("TitleFieldTemplate",d,h),g=r.getTemplate("DescriptionFieldTemplate",d,h),y=d.templates.ButtonTemplates.AddButton;return f.default.createElement("fieldset",{id:i.$id},(h.title||m)&&f.default.createElement(v,{id:i.$id+"__title",title:h.title||m,required:u,schema:c,uiSchema:p,registry:d}),(h.description||t)&&f.default.createElement(g,{id:i.$id+"__description",description:h.description||t,schema:c,uiSchema:p,registry:d}),l.map((function(e){return e.content})),r.canExpand(c,p,n)&&f.default.createElement(y,{className:"object-property-expand",onClick:o(c),disabled:a||s,uiSchema:p}))}function ve(e){return f.default.createElement("legend",{id:e.id},e.title,e.required&&f.default.createElement("span",{className:"required"},"*"))}function ge(e){var t=e.schema,r=e.idSchema,a=e.reason;return f.default.createElement("div",{className:"unsupported-field"},f.default.createElement("p",null,"Unsupported field schema",r&&r.$id&&f.default.createElement("span",null," for"," field ",f.default.createElement("code",null,r.$id)),a&&f.default.createElement("em",null,": ",a),"."),t&&f.default.createElement("pre",null,JSON.stringify(t,null,2)))}function ye(e){var t=e.id,a=e.disabled,n=e.label,i=e.onKeyChange,o=e.onDropPropertyClick,l=e.readonly,s=e.children,d=e.uiSchema,u=e.registry.templates.ButtonTemplates.RemoveButton;return f.default.createElement("div",{className:e.classNames},r.ADDITIONAL_PROPERTY_FLAG in e.schema?f.default.createElement("div",{className:"row"},f.default.createElement("div",{className:"col-xs-5 form-additional"},f.default.createElement("div",{className:"form-group"},f.default.createElement(ce,{label:n+" Key",required:e.required,id:t+"-key"}),f.default.createElement("input",{className:"form-control",type:"text",id:t+"-key",onBlur:function(e){return i(e.target.value)},defaultValue:n}))),f.default.createElement("div",{className:"form-additional form-group col-xs-5"},s),f.default.createElement("div",{className:"col-xs-2"},f.default.createElement(u,{className:"array-item-remove btn-block",style:{border:"0"},disabled:a||l,onClick:o(n),uiSchema:d}))):s)}function Se(e,t){for(var a=[],n=e;n<=t;n++)a.push({value:n,label:r.pad(n,2)});return a}function Ee(e){var t=e.type,r=e.range,a=e.value,n=e.select,i=e.disabled,o=e.readonly,l=e.autofocus,s=e.registry,d=e.onBlur,u=e.onFocus;return f.default.createElement(s.widgets.SelectWidget,{schema:{type:"integer"},id:e.rootId+"_"+t,className:"form-control",options:{enumOptions:Se(r[0],r[1])},placeholder:t,value:a,disabled:i,readonly:o,autofocus:l,onChange:function(e){return n(t,e)},onBlur:d,onFocus:u,registry:s,label:""})}function be(e){var a=e.time,n=void 0!==a&&a,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.options,m=e.id,p=e.registry,h=e.onBlur,v=e.onFocus,g=e.onChange,y=e.value,S=t.useReducer((function(e,t){return C({},e,t)}),r.parseDateString(y,n)),E=S[0],b=S[1];t.useEffect((function(){y&&y!==r.toDateString(E,n)&&b(r.parseDateString(y,n))}),[y,E,n]),t.useEffect((function(){(function(e){return Object.values(e).every((function(e){return-1!==e}))})(E)&&g(r.toDateString(E,n))}),[E,n,g]);var F=t.useCallback((function(e,t){var r;b(((r={})[e]=t,r))}),[]),D=t.useCallback((function(e){if(e.preventDefault(),!o&&!s){var t=r.parseDateString((new Date).toJSON(),n);b(t)}}),[o,s,n]),k=t.useCallback((function(e){e.preventDefault(),o||s||(b(r.parseDateString("",n)),g(void 0))}),[o,s,n,g]);return f.default.createElement("ul",{className:"list-inline"},function(e,t,r){void 0===r&&(r=[1900,(new Date).getFullYear()+2]);var a=[{type:"year",range:r,value:e.year},{type:"month",range:[1,12],value:e.month},{type:"day",range:[1,31],value:e.day}];return t&&a.push({type:"hour",range:[0,23],value:e.hour},{type:"minute",range:[0,59],value:e.minute},{type:"second",range:[0,59],value:e.second}),a}(E,n,c.yearsRange).map((function(e,t){return f.default.createElement("li",{key:t},f.default.createElement(Ee,C({rootId:m,select:F},e,{disabled:o,readonly:s,registry:p,onBlur:h,onFocus:v,autofocus:u&&0===t})))})),("undefined"===c.hideNowButton||!c.hideNowButton)&&f.default.createElement("li",null,f.default.createElement("a",{href:"#",className:"btn btn-info btn-now",onClick:D},"Now")),("undefined"===c.hideClearButton||!c.hideClearButton)&&f.default.createElement("li",null,f.default.createElement("a",{href:"#",className:"btn btn-warning btn-clear",onClick:k},"Clear")))}var Ce=["time"];function Fe(e){var t=e.time,r=void 0===t||t,a=k(e,Ce);return f.default.createElement(a.registry.widgets.AltDateWidget,C({time:r},a))}function De(e){var a=e.schema,n=e.uiSchema,i=e.id,o=e.value,l=e.disabled,s=e.readonly,d=e.label,u=e.autofocus,c=void 0!==u&&u,m=e.onBlur,p=e.onFocus,h=e.onChange,v=e.registry,g=r.getTemplate("DescriptionFieldTemplate",v,e.options),y=r.schemaRequiresTrueValue(a),S=t.useCallback((function(e){return h(e.target.checked)}),[h]),E=t.useCallback((function(e){return m(i,e.target.checked)}),[m,i]),b=t.useCallback((function(e){return p(i,e.target.checked)}),[p,i]);return f.default.createElement("div",{className:"checkbox "+(l||s?"disabled":"")},a.description&&f.default.createElement(g,{id:i+"__description",description:a.description,schema:a,uiSchema:n,registry:v}),f.default.createElement("label",null,f.default.createElement("input",{type:"checkbox",id:i,name:i,checked:void 0!==o&&o,required:y,disabled:l||s,autoFocus:c,onChange:S,onBlur:E,onFocus:b}),f.default.createElement("span",null,d)))}function ke(e){var t=e.id,r=e.disabled,a=e.options,n=a.inline,i=void 0!==n&&n,o=a.enumOptions,l=a.enumDisabled,s=e.value,d=e.autofocus,u=void 0!==d&&d,c=e.readonly,m=e.onChange;return f.default.createElement("div",{className:"checkboxes",id:t},Array.isArray(o)&&o.map((function(e,a){var n=-1!==s.indexOf(e.value),d=Array.isArray(l)&&-1!=l.indexOf(e.value),p=r||d||c?"disabled":"",h=f.default.createElement("span",null,f.default.createElement("input",{type:"checkbox",id:t+"-"+e.value,name:t,checked:n,disabled:r||d||c,autoFocus:u&&0===a,onChange:function(t){var r=o.map((function(e){return e.value}));m(t.target.checked?function(e,t,r){var a=r.indexOf(e);return t.slice(0,a).concat(e,t.slice(a)).sort((function(e,t){return Number(r.indexOf(e)>r.indexOf(t))}))}(e.value,s,r):function(e,t){return t.filter((function(t){return t!==e}))}(e.value,s))}}),f.default.createElement("span",null,e.label));return i?f.default.createElement("label",{key:e.value,className:"checkbox-inline "+p},h):f.default.createElement("div",{key:e.value,className:"checkbox "+p},f.default.createElement("label",null,h))})))}function xe(e){var t=e.disabled,a=e.readonly,n=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(n,C({type:"color"},e,{disabled:t||a}))}function Te(e){var a=e.onChange,n=r.getTemplate("BaseInputTemplate",e.registry,e.options),i=t.useCallback((function(e){return a(e||void 0)}),[a]);return f.default.createElement(n,C({type:"date"},e,{onChange:i}))}function we(e){var t=e.onChange,a=e.value,n=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(n,C({type:"datetime-local"},e,{value:r.utcToLocal(a),onChange:function(e){return t(r.localToUTC(e))}}))}function Oe(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"email"},e))}function Ae(e,t){return null===e?null:e.replace(";base64",";name="+encodeURIComponent(t)+";base64")}function Ne(e){var t=e.name,r=e.size,a=e.type;return new Promise((function(n,i){var o=new window.FileReader;o.onerror=i,o.onload=function(e){var i;"string"==typeof(null===(i=e.target)||void 0===i?void 0:i.result)?n({dataURL:Ae(e.target.result,t),name:t,size:r,type:a}):n({dataURL:null,name:t,size:r,type:a})},o.readAsDataURL(e)}))}function Be(e){var t=e.filesInfo;return 0===t.length?null:f.default.createElement("ul",{className:"file-info"},t.map((function(e,t){var r=e.size,a=e.type;return f.default.createElement("li",{key:t},f.default.createElement("strong",null,e.name)," (",a,", ",r," bytes)")})))}function Ie(e){return e.filter((function(e){return void 0!==e})).map((function(e){var t=r.dataURItoBlob(e),a=t.blob;return{name:t.name,size:a.size,type:a.type}}))}function Ue(e){var r=e.multiple,a=e.id,n=e.readonly,i=e.disabled,o=e.onChange,l=e.value,s=e.autofocus,d=void 0!==s&&s,u=e.options,c=t.useMemo((function(){return Array.isArray(l)?Ie(l):Ie([l])}),[l]),m=t.useState(c),p=m[0],h=m[1],v=t.useCallback((function(e){var t;e.target.files&&(t=e.target.files,Promise.all(Array.from(t).map(Ne))).then((function(e){h(e);var t=e.map((function(e){return e.dataURL}));o(r?t:t[0])}))}),[r,o]);return f.default.createElement("div",null,f.default.createElement("p",null,f.default.createElement("input",{id:a,name:a,type:"file",disabled:n||i,onChange:v,defaultValue:"",autoFocus:d,multiple:r,accept:u.accept?String(u.accept):void 0})),f.default.createElement(Be,{filesInfo:p}))}function qe(e){var t=e.id,r=e.value;return f.default.createElement("input",{type:"hidden",id:t,name:t,value:void 0===r?"":r})}function Pe(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"password"},e))}function _e(e){var r=e.options,a=e.value,n=e.required,i=e.disabled,o=e.readonly,l=e.autofocus,s=void 0!==l&&l,d=e.onBlur,u=e.onFocus,c=e.onChange,m=e.id,p=Math.random().toString(),h=r.enumOptions,v=r.enumDisabled,g=r.inline,y=t.useCallback((function(e){return d(m,e.target.value)}),[d,m]),S=t.useCallback((function(e){return u(m,e.target.value)}),[u,m]);return f.default.createElement("div",{className:"field-radio-group",id:m},Array.isArray(h)&&h.map((function(e,t){var r=e.value===a,l=Array.isArray(v)&&-1!=v.indexOf(e.value),d=i||l||o?"disabled":"",u=f.default.createElement("span",null,f.default.createElement("input",{type:"radio",id:m+"-"+e.value,checked:r,name:p,required:n,value:e.value,disabled:i||l||o,autoFocus:s&&0===t,onChange:function(){return c(e.value)},onBlur:y,onFocus:S}),f.default.createElement("span",null,e.label));return g?f.default.createElement("label",{key:e.value,className:"radio-inline "+d},u):f.default.createElement("div",{key:e.value,className:"radio "+d},f.default.createElement("label",null,u))})))}function Re(e){var t=e.value;return f.default.createElement("div",{className:"field-range-wrapper"},f.default.createElement(e.registry.templates.BaseInputTemplate,C({type:"range"},e)),f.default.createElement("span",{className:"range-view"},t))}function je(e,t){return t?Array.from(e.target.options).slice().filter((function(e){return e.selected})).map((function(e){return e.value})):e.target.value}function Ve(e){var a=e.schema,n=e.id,i=e.options,o=e.value,l=e.required,s=e.disabled,d=e.readonly,u=e.multiple,c=void 0!==u&&u,m=e.autofocus,p=void 0!==m&&m,h=e.onChange,v=e.onBlur,g=e.onFocus,y=e.placeholder,S=i.enumOptions,E=i.enumDisabled,b=c?[]:"",C=t.useCallback((function(e){var t=je(e,c);return g(n,r.processSelectValue(a,t,i))}),[g,n,a,c,i]),F=t.useCallback((function(e){var t=je(e,c);return v(n,r.processSelectValue(a,t,i))}),[v,n,a,c,i]),D=t.useCallback((function(e){var t=je(e,c);return h(r.processSelectValue(a,t,i))}),[h,a,c,i]);return f.default.createElement("select",{id:n,name:n,multiple:c,className:"form-control",value:void 0===o?b:o,required:l,disabled:s||d,autoFocus:p,onBlur:F,onFocus:C,onChange:D},!c&&void 0===a.default&&f.default.createElement("option",{value:""},y),Array.isArray(S)&&S.map((function(e,t){var r=e.value,a=e.label,n=E&&-1!=E.indexOf(r);return f.default.createElement("option",{key:t,value:r,disabled:n},a)})))}function Me(e){var r=e.id,a=e.options,n=void 0===a?{}:a,i=e.placeholder,o=e.value,l=e.required,s=e.disabled,d=e.readonly,u=e.autofocus,c=void 0!==u&&u,m=e.onChange,p=e.onBlur,h=e.onFocus,v=t.useCallback((function(e){var t=e.target.value;return m(""===t?n.emptyValue:t)}),[m,n.emptyValue]),g=t.useCallback((function(e){return p(r,e.target.value)}),[p,r]),y=t.useCallback((function(e){return h(r,e.target.value)}),[r,h]);return f.default.createElement("textarea",{id:r,name:r,className:"form-control",value:o||"",placeholder:i,required:l,disabled:s,readOnly:d,autoFocus:c,rows:n.rows,onBlur:g,onFocus:y,onChange:v})}function Ke(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({},e))}function We(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"url"},e))}function Le(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"number"},e))}function $e(){return{fields:{AnyOfField:_,ArrayField:I,BooleanField:q,NumberField:V,ObjectField:M,OneOfField:_,SchemaField:$,StringField:z,NullField:H},templates:{ArrayFieldDescriptionTemplate:J,ArrayFieldItemTemplate:G,ArrayFieldTemplate:X,ArrayFieldTitleTemplate:Z,ButtonTemplates:{SubmitButton:re,AddButton:se,MoveDownButton:ie,MoveUpButton:oe,RemoveButton:le},BaseInputTemplate:te,DescriptionFieldTemplate:de,ErrorListTemplate:ue,FieldTemplate:me,FieldErrorTemplate:fe,FieldHelpTemplate:pe,ObjectFieldTemplate:he,TitleFieldTemplate:ve,UnsupportedFieldTemplate:ge,WrapIfAdditionalTemplate:ye},widgets:{PasswordWidget:Pe,RadioWidget:_e,UpDownWidget:Le,RangeWidget:Re,SelectWidget:Ve,TextWidget:Ke,DateWidget:Te,DateTimeWidget:we,AltDateWidget:be,AltDateTimeWidget:Fe,EmailWidget:Oe,URLWidget:We,TextareaWidget:Me,HiddenWidget:qe,ColorWidget:xe,FileWidget:Ue,CheckboxWidget:De,CheckboxesWidget:ke},rootSchema:{},formContext:{}}}Me.defaultProps={autofocus:!1,options:{}};var Ye=function(e){function t(t){var a;if((a=e.call(this,t)||this).formElement=void 0,a.getUsedFormData=function(e,t){if(0===t.length&&"object"!=typeof e)return e;var r=v.default(e,t);return Array.isArray(e)?Object.keys(r).map((function(e){return r[e]})):r},a.getFieldNames=function(e,t){return function e(a,n,i){return void 0===n&&(n=[]),void 0===i&&(i=[[]]),Object.keys(a).forEach((function(o){if("object"==typeof a[o]){var l=i.map((function(e){return[].concat(e,[o])}));a[o][r.RJSF_ADDITONAL_PROPERTIES_FLAG]&&""!==a[o][r.NAME_KEY]?n.push(a[o][r.NAME_KEY]):e(a[o],n,l)}else o===r.NAME_KEY&&""!==a[o]&&i.forEach((function(e){var r=p.default(t,e);("object"!=typeof r||h.default(r))&&n.push(e)}))})),n}(e)},a.onChange=function(e,t,n){var i=a.props,o=i.extraErrors,l=i.omitExtraData,s=i.liveOmit,d=i.noValidate,u=i.liveValidate,c=i.onChange,m=a.state,f=m.schemaUtils,p=m.schema;(r.isObject(e)||Array.isArray(e))&&(e=a.getStateFromProps(a.props,e).formData);var h=!d&&u,v={formData:e,schema:p},g=e;if(!0===l&&!0===s){var y=f.retrieveSchema(p,e),S=f.toPathSchema(y,"",e),E=a.getFieldNames(S,e);g=a.getUsedFormData(e,E),v={formData:g}}if(h){var b=a.validate(g),F=b.errors,D=b.errorSchema,k=F,x=D;if(o){var T=f.mergeValidationData(b,o);D=T.errorSchema,F=T.errors}v={formData:g,errors:F,errorSchema:D,schemaValidationErrors:k,schemaValidationErrorSchema:x}}else if(!d&&t){var w=o?r.mergeObjects(t,o,"preventDuplicates"):t;v={formData:g,errorSchema:w,errors:f.getValidator().toErrorList(w)}}a.setState(v,(function(){return c&&c(C({},a.state,v),n)}))},a.onBlur=function(e,t){var r=a.props.onBlur;r&&r(e,t)},a.onFocus=function(e,t){var r=a.props.onFocus;r&&r(e,t)},a.onSubmit=function(e){if(e.preventDefault(),e.target===e.currentTarget){e.persist();var t=a.props,r=t.extraErrors,n=t.noValidate,i=t.onSubmit,o=a.state.formData,l=a.state,s=l.schemaUtils;if(!0===t.omitExtraData){var d=s.retrieveSchema(l.schema,o),u=s.toPathSchema(d,"",o),c=a.getFieldNames(u,o);o=a.getUsedFormData(o,c)}if(n||a.validateForm()){var m=r||{},f=r?s.getValidator().toErrorList(r):[];a.setState({formData:o,errors:f,errorSchema:m,schemaValidationErrors:[],schemaValidationErrorSchema:{}},(function(){i&&i(C({},a.state,{formData:o,status:"submitted"}),e)}))}}},!t.validator)throw new Error("A validator is required for Form functionality to work");return a.state=a.getStateFromProps(t,t.formData),a.props.onChange&&!r.deepEquals(a.state.formData,a.props.formData)&&a.props.onChange(a.state),a.formElement=f.default.createRef(),a}F(t,e);var a=t.prototype;return a.UNSAFE_componentWillReceiveProps=function(e){var t=this.getStateFromProps(e,e.formData);r.deepEquals(t.formData,e.formData)||r.deepEquals(t.formData,this.state.formData)||!e.onChange||e.onChange(t),this.setState(t)},a.getStateFromProps=function(e,t){var a=this.state||{},n="schema"in e?e.schema:this.props.schema,i=("uiSchema"in e?e.uiSchema:this.props.uiSchema)||{},o=void 0!==t,l=o&&!e.noValidate&&("liveValidate"in e?e.liveValidate:this.props.liveValidate),s=n,d=a.schemaUtils;d&&!d.doesSchemaUtilsDiffer(e.validator,s)||(d=r.createSchemaUtils(e.validator,s));var u,c,m=d.getDefaultFormState(n,t),f=d.retrieveSchema(n,m),p=a.schemaValidationErrors,h=a.schemaValidationErrorSchema;if(l){var v=this.validate(m,n,d);p=u=v.errors,h=c=v.errorSchema}else{var g=e.noValidate?{errors:[],errorSchema:{}}:e.liveValidate?{errors:a.errors||[],errorSchema:a.errorSchema||{}}:{errors:a.schemaValidationErrors||[],errorSchema:a.schemaValidationErrorSchema||{}};u=g.errors,c=g.errorSchema}if(e.extraErrors){var y=d.mergeValidationData({errorSchema:c,errors:u},e.extraErrors);c=y.errorSchema,u=y.errors}var S=d.toIdSchema(f,i["ui:rootFieldId"],m,e.idPrefix,e.idSeparator);return{schemaUtils:d,schema:n,uiSchema:i,idSchema:S,formData:m,edit:o,errors:u,errorSchema:c,schemaValidationErrors:p,schemaValidationErrorSchema:h}},a.shouldComponentUpdate=function(e,t){return r.shouldRender(this,e,t)},a.validate=function(e,t,r){void 0===t&&(t=this.props.schema);var a=r||this.state.schemaUtils,n=this.props,i=n.customValidate,o=n.transformErrors,l=a.retrieveSchema(t,e);return a.getValidator().validateFormData(e,l,i,o)},a.renderErrors=function(e){var t=this.state,a=t.errors,n=t.errorSchema,i=t.schema,o=t.uiSchema,l=this.props.formContext,s=r.getUiOptions(o),d=r.getTemplate("ErrorListTemplate",e,s);return a&&a.length?f.default.createElement(d,{errors:a,errorSchema:n||{},schema:i,uiSchema:o,formContext:l}):null},a.getRegistry=function(){var e,t=this.state.schemaUtils,r=$e(),a=r.templates,n=r.widgets,i=r.formContext;return{fields:C({},r.fields,this.props.fields),templates:C({},a,this.props.templates,{ButtonTemplates:C({},a.ButtonTemplates,null===(e=this.props.templates)||void 0===e?void 0:e.ButtonTemplates)}),widgets:C({},n,this.props.widgets),rootSchema:this.props.schema,formContext:this.props.formContext||i,schemaUtils:t}},a.submit=function(){this.formElement.current&&(this.formElement.current.dispatchEvent(new CustomEvent("submit",{cancelable:!0})),this.formElement.current.requestSubmit())},a.validateForm=function(){var e=this.props,t=e.extraErrors,r=e.onError,a=this.state.schemaUtils,n=this.validate(this.state.formData),i=n.errors,o=n.errorSchema,l=i,s=o;if(i.length>0){if(t){var d=a.mergeValidationData(n,t);o=d.errorSchema,i=d.errors}return this.setState({errors:i,errorSchema:o,schemaValidationErrors:l,schemaValidationErrorSchema:s},(function(){r?r(i):console.error("Form validation failed",i)})),!1}return!0},a.render=function(){var e=this.props,t=e.children,r=e.id,a=e.idPrefix,n=e.idSeparator,i=e.className,o=void 0===i?"":i,l=e.tagName,s=e.name,d=e.method,u=e.target,c=e.action,m=e.autoComplete,p=e.enctype,h=e.acceptcharset,v=e.noHtml5Validate,g=void 0!==v&&v,y=e.disabled,S=void 0!==y&&y,E=e.readonly,b=void 0!==E&&E,C=e.formContext,F=e.showErrorList,D=void 0===F?"top":F,k=e._internalFormWrapper,x=this.state,T=x.schema,w=x.uiSchema,O=x.formData,A=x.errorSchema,N=x.idSchema,B=this.getRegistry(),I=B.fields.SchemaField,U=B.templates.ButtonTemplates.SubmitButton;return f.default.createElement(k||l||"form",{className:o||"rjsf",id:r,name:s,method:d,target:u,action:c,autoComplete:m,encType:p,acceptCharset:h,noValidate:g,onSubmit:this.onSubmit,as:k?l:void 0,ref:this.formElement},"top"===D&&this.renderErrors(B),f.default.createElement(I,{name:"",schema:T,uiSchema:w,errorSchema:A,idSchema:N,idPrefix:a,idSeparator:n,formContext:C,formData:O,onChange:this.onChange,onBlur:this.onBlur,onFocus:this.onFocus,registry:B,disabled:S,readonly:b}),t||f.default.createElement(U,{uiSchema:w}),"bottom"===D&&this.renderErrors(B))},t}(t.Component),ze=["fields","widgets","templates"];e.default=Ye,e.getDefaultRegistry=$e,e.withTheme=function(e){return t.forwardRef((function(t,r){var a,n,i=t.fields,o=t.widgets,l=t.templates,s=k(t,ze);return i=C({},e.fields,i),o=C({},e.widgets,o),l=C({},e.templates,l,{ButtonTemplates:C({},null==e||null===(a=e.templates)||void 0===a?void 0:a.ButtonTemplates,null===(n=l)||void 0===n?void 0:n.ButtonTemplates)}),f.default.createElement(Ye,C({},e,s,{fields:i,widgets:o,templates:l,ref:r}))}))},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("@rjsf/utils"),require("lodash-es/get"),require("lodash-es/isEmpty"),require("lodash-es/pick"),require("lodash-es/isObject"),require("lodash-es/set"),require("nanoid"),require("lodash-es/unset"),require("lodash-es/has"),require("lodash-es/omit")):"function"==typeof define&&define.amd?define(["exports","react","@rjsf/utils","lodash-es/get","lodash-es/isEmpty","lodash-es/pick","lodash-es/isObject","lodash-es/set","nanoid","lodash-es/unset","lodash-es/has","lodash-es/omit"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JSONSchemaForm={},e.React,e.utils,e.get,e._isEmpty,e._pick,e.isObject,e.set,e.nanoid,e.unset,e.has,e.omit)}(this,(function(e,t,r,a,n,i,o,l,s,d,u,c){"use strict";function m(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var f=m(t),p=m(a),h=m(n),v=m(i),g=m(o),y=m(l),S=m(d),E=m(u),b=m(c);function C(){return C=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},C.apply(this,arguments)}function F(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,D(e,t)}function D(e,t){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},D(e,t)}function k(e,t){if(null==e)return{};var r,a,n={},i=Object.keys(e);for(a=0;a<i.length;a++)t.indexOf(r=i[a])>=0||(n[r]=e[r]);return n}function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=new Array(t);r<t;r++)a[r]=e[r];return a}var T=["widget"],A=["widget"],O=["widget"];function w(){return s.nanoid()}function N(e){return Array.isArray(e)?e.map((function(e){return{key:w(),item:e}})):[]}function B(e){return Array.isArray(e)?e.map((function(e){return e.item})):[]}var I=function(e){function t(t){var a;(a=e.call(this,t)||this)._getNewFormDataRow=function(){var e=a.props,t=e.schema,n=e.registry.schemaUtils,i=t.items;return r.isFixedItems(t)&&r.allowAdditionalItems(t)&&(i=t.additionalItems),n.getDefaultFormState(i)},a.onAddClick=function(e){a._handleAddClick(e)},a.onAddIndexClick=function(e){return function(t){a._handleAddClick(t,e)}},a.onDropIndexClick=function(e){return function(t){t&&t.preventDefault();var r,n=a.props,i=n.onChange,o=n.errorSchema,l=a.state.keyedFormData;if(o)for(var s in r={},o){var d=parseInt(s);d<e?y.default(r,[d],o[s]):d>e&&y.default(r,[d-1],o[s])}var u=l.filter((function(t,r){return r!==e}));a.setState({keyedFormData:u,updatedKeyedFormData:!0},(function(){return i(B(u),r)}))}},a.onReorderClick=function(e,t){return function(r){r&&(r.preventDefault(),r.currentTarget.blur());var n,i=a.props,o=i.onChange,l=i.errorSchema;if(a.props.errorSchema)for(var s in n={},l){var d=parseInt(s);d==e?y.default(n,[t],l[e]):d==t?y.default(n,[e],l[t]):y.default(n,[s],l[d])}var u,c=a.state.keyedFormData,m=((u=c.slice()).splice(e,1),u.splice(t,0,c[e]),u);a.setState({keyedFormData:m},(function(){return o(B(m),n)}))}},a.onChangeForIndex=function(e){return function(t,r,n){var i,o=a.props,l=o.formData,s=o.errorSchema;(0,o.onChange)((Array.isArray(l)?l:[]).map((function(r,a){return e===a?void 0===t?null:t:r})),s&&s&&C({},s,((i={})[e]=r,i)),n)}},a.onSelectChange=function(e){var t=a.props,r=t.idSchema;(0,t.onChange)(e,void 0,r&&r.$id)};var n=t.formData,i=N(void 0===n?[]:n);return a.state={keyedFormData:i,updatedKeyedFormData:!1},a}F(t,e),t.getDerivedStateFromProps=function(e,t){if(t.updatedKeyedFormData)return{updatedKeyedFormData:!1};var r=Array.isArray(e.formData)?e.formData:[],a=t.keyedFormData||[];return{keyedFormData:r.length===a.length?a.map((function(e,t){return{key:e.key,item:r[t]}})):N(r)}};var a,n,i=t.prototype;return i.isItemRequired=function(e){return Array.isArray(e.type)?!e.type.includes("null"):"null"!==e.type},i.canAddItem=function(e){var t=this.props,a=t.schema,n=r.getUiOptions(t.uiSchema).addable;return!1!==n&&(n=void 0===a.maxItems||e.length<a.maxItems),n},i._handleAddClick=function(e,t){e&&e.preventDefault();var r=this.props.onChange,a=this.state.keyedFormData,n={key:w(),item:this._getNewFormDataRow()},i=[].concat(a);void 0!==t?i.splice(t,0,n):i.push(n),this.setState({keyedFormData:i,updatedKeyedFormData:!0},(function(){return r(B(i))}))},i.render=function(){var e=this.props,t=e.schema,a=e.uiSchema,n=e.idSchema,i=e.registry,o=i.schemaUtils;if(!(r.ITEMS_KEY in t)){var l=r.getUiOptions(a),s=r.getTemplate("UnsupportedFieldTemplate",i,l);return f.default.createElement(s,{schema:t,idSchema:n,reason:"Missing items definition",registry:i})}return o.isMultiSelect(t)?this.renderMultiSelect():r.isCustomWidget(a)?this.renderCustomWidget():r.isFixedItems(t)?this.renderFixedArray():o.isFilesArray(t,a)?this.renderFiles():this.renderNormalArray()},i.renderNormalArray=function(){var e=this,t=this.props,a=t.schema,n=t.uiSchema,i=void 0===n?{}:n,o=t.errorSchema,l=t.idSchema,s=t.name,d=t.disabled,u=void 0!==d&&d,c=t.readonly,m=void 0!==c&&c,p=t.autofocus,h=void 0!==p&&p,v=t.required,y=void 0!==v&&v,S=t.registry,E=t.onBlur,b=t.onFocus,F=t.idPrefix,D=t.idSeparator,k=void 0===D?"_":D,x=t.rawErrors,T=this.state.keyedFormData,A=void 0===a.title?s:a.title,O=S.schemaUtils,w=S.formContext,N=r.getUiOptions(i),I=g.default(a.items)?a.items:{},U=O.retrieveSchema(I),_=B(this.state.keyedFormData),q=this.canAddItem(_),P={canAdd:q,items:T.map((function(t,r){var a=t.key,n=t.item,d=O.retrieveSchema(I,n),u=o?o[r]:void 0,c=O.toIdSchema(d,l.$id+k+r,n,F,k);return e.renderArrayFieldItem({key:a,index:r,name:s&&s+"-"+r,canAdd:q,canMoveUp:r>0,canMoveDown:r<_.length-1,itemSchema:d,itemIdSchema:c,itemErrorSchema:u,itemData:n,itemUiSchema:i.items,autofocus:h&&0===r,onBlur:E,onFocus:b,rawErrors:x,totalItems:T.length})})),className:"field field-array field-array-of-"+U.type,disabled:u,idSchema:l,uiSchema:i,onAddClick:this.onAddClick,readonly:m,required:y,schema:a,title:A,formContext:w,formData:_,rawErrors:x,registry:S},R=r.getTemplate("ArrayFieldTemplate",S,N);return f.default.createElement(R,C({},P))},i.renderCustomWidget=function(){var e=this.props,t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.required,m=void 0!==c&&c,p=e.hideError,h=e.placeholder,v=e.onBlur,g=e.onFocus,y=e.formData,S=void 0===y?[]:y,E=e.registry,b=e.rawErrors,C=E.widgets,F=E.formContext,D=t.title||e.name,x=r.getUiOptions(n),A=x.widget,O=k(x,T),w=r.getWidget(t,A,C);return f.default.createElement(w,{id:a&&a.$id,multiple:!0,onChange:this.onSelectChange,onBlur:v,onFocus:g,options:O,schema:t,uiSchema:n,registry:E,value:S,disabled:o,readonly:s,hideError:p,required:m,label:D,placeholder:h,formContext:F,autofocus:u,rawErrors:b})},i.renderMultiSelect=function(){var e=this.props,t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.formData,o=void 0===i?[]:i,l=e.disabled,s=void 0!==l&&l,d=e.readonly,u=void 0!==d&&d,c=e.autofocus,m=void 0!==c&&c,p=e.required,h=void 0!==p&&p,v=e.placeholder,g=e.onBlur,y=e.onFocus,S=e.registry,E=e.rawErrors,b=e.name,F=S.widgets,D=S.formContext,x=S.schemaUtils.retrieveSchema(t.items,o),T=t.title||b,O=r.optionsList(x),w=r.getUiOptions(n),N=w.widget,B=void 0===N?"select":N,I=k(w,A),U=r.getWidget(t,B,F);return f.default.createElement(U,{id:a&&a.$id,multiple:!0,onChange:this.onSelectChange,onBlur:g,onFocus:y,options:C({},I,{enumOptions:O}),schema:t,uiSchema:n,registry:S,value:o,disabled:s,readonly:u,required:h,label:T,placeholder:v,formContext:D,autofocus:m,rawErrors:E})},i.renderFiles=function(){var e=this.props,t=e.schema,a=e.uiSchema,n=e.idSchema,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.required,m=void 0!==c&&c,p=e.onBlur,h=e.onFocus,v=e.registry,g=e.formData,y=void 0===g?[]:g,S=e.rawErrors,E=t.title||e.name,b=v.widgets,C=v.formContext,F=r.getUiOptions(a),D=F.widget,x=void 0===D?"files":D,T=k(F,O),A=r.getWidget(t,x,b);return f.default.createElement(A,{options:T,id:n&&n.$id,multiple:!0,onChange:this.onSelectChange,onBlur:p,onFocus:h,schema:t,uiSchema:a,title:E,value:y,disabled:o,readonly:s,required:m,registry:v,formContext:C,autofocus:u,rawErrors:S,label:""})},i.renderFixedArray=function(){var e=this,t=this.props,a=t.schema,n=t.uiSchema,i=void 0===n?{}:n,o=t.formData,l=void 0===o?[]:o,s=t.errorSchema,d=t.idPrefix,u=t.idSeparator,c=void 0===u?"_":u,m=t.idSchema,p=t.name,h=t.disabled,v=void 0!==h&&h,y=t.readonly,S=void 0!==y&&y,E=t.autofocus,b=void 0!==E&&E,F=t.required,D=void 0!==F&&F,k=t.registry,x=t.onBlur,T=t.onFocus,A=t.rawErrors,O=this.state.keyedFormData,w=this.props.formData,N=void 0===w?[]:w,B=a.title||p,I=r.getUiOptions(i),U=k.schemaUtils,_=k.formContext,q=(g.default(a.items)?a.items:[]).map((function(e,t){return U.retrieveSchema(e,l[t])})),P=g.default(a.additionalItems)?U.retrieveSchema(a.additionalItems,l):null;(!N||N.length<q.length)&&(N=(N=N||[]).concat(new Array(q.length-N.length)));var R=this.canAddItem(N)&&!!P,j={canAdd:R,className:"field field-array field-array-fixed-items",disabled:v,idSchema:m,formData:l,items:O.map((function(t,r){var n=t.key,o=t.item,l=r>=q.length,u=l&&g.default(a.additionalItems)?U.retrieveSchema(a.additionalItems,o):q[r],f=U.toIdSchema(u,m.$id+c+r,o,d,c),h=l?i.additionalItems||{}:Array.isArray(i.items)?i.items[r]:i.items||{};return e.renderArrayFieldItem({key:n,index:r,name:p&&p+"-"+r,canAdd:R,canRemove:l,canMoveUp:r>=q.length+1,canMoveDown:l&&r<N.length-1,itemSchema:u,itemData:o,itemUiSchema:h,itemIdSchema:f,itemErrorSchema:s?s[r]:void 0,autofocus:b&&0===r,onBlur:x,onFocus:T,rawErrors:A,totalItems:O.length})})),onAddClick:this.onAddClick,readonly:S,required:D,registry:k,schema:a,uiSchema:i,title:B,formContext:_,rawErrors:A},V=r.getTemplate("ArrayFieldTemplate",k,I);return f.default.createElement(V,C({},j))},i.renderArrayFieldItem=function(e){var t=e.key,a=e.index,n=e.name,i=e.canAdd,o=e.canRemove,l=void 0===o||o,s=e.canMoveUp,d=void 0===s||s,u=e.canMoveDown,c=void 0===u||u,m=e.itemSchema,p=e.itemData,h=e.itemUiSchema,v=e.itemIdSchema,g=e.itemErrorSchema,y=e.autofocus,S=e.onBlur,E=e.onFocus,b=e.rawErrors,C=e.totalItems,F=this.props,D=F.disabled,k=F.hideError,x=F.idPrefix,T=F.idSeparator,A=F.readonly,O=F.registry,w=F.formContext,N=O.fields,B=N.ArraySchemaField||N.SchemaField,I=r.getUiOptions(F.uiSchema),U=I.orderable,_=void 0===U||U,q=I.removable,P={moveUp:_&&d,moveDown:_&&c,remove:(void 0===q||q)&&l,toolbar:!1};return P.toolbar=Object.keys(P).some((function(e){return P[e]})),{children:f.default.createElement(B,{name:n,index:a,schema:m,uiSchema:h,formData:p,formContext:w,errorSchema:g,idPrefix:x,idSeparator:T,idSchema:v,required:this.isItemRequired(m),onChange:this.onChangeForIndex(a),onBlur:S,onFocus:E,registry:O,disabled:D,readonly:A,hideError:k,autofocus:y,rawErrors:b}),className:"array-item",disabled:D,canAdd:i,hasToolbar:P.toolbar,hasMoveUp:P.moveUp,hasMoveDown:P.moveDown,hasRemove:P.remove,index:a,totalItems:C,key:t,onAddIndexClick:this.onAddIndexClick,onDropIndexClick:this.onDropIndexClick,onReorderClick:this.onReorderClick,readonly:A,registry:O,schema:m,uiSchema:h}},a=t,(n=[{key:"itemTitle",get:function(){var e=this.props.schema;return p.default(e,[r.ITEMS_KEY,"title"],p.default(e,[r.ITEMS_KEY,"description"],"Item"))}}])&&function(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}(a.prototype,n),Object.defineProperty(a,"prototype",{writable:!1}),t}(t.Component),U=["widget"];function _(e){var t,a=e.schema,n=e.name,i=e.uiSchema,o=e.idSchema,l=e.formData,s=e.registry,d=e.required,u=e.disabled,c=e.readonly,m=e.autofocus,p=e.onChange,h=e.onFocus,v=e.onBlur,y=e.rawErrors,S=a.title,E=s.widgets,b=s.formContext,F=r.getUiOptions(i),D=F.widget,x=void 0===D?"checkbox":D,T=k(F,U),A=r.getWidget(a,x,E);if(Array.isArray(a.oneOf))t=r.optionsList({oneOf:a.oneOf.map((function(e){if(g.default(e))return C({},e,{title:e.title||(!0===e.const?"Yes":"No")})})).filter((function(e){return e}))});else{var O,w=a,N=null!=(O=a.enum)?O:[!0,!1];t=!w.enumNames&&2===N.length&&N.every((function(e){return"boolean"==typeof e}))?[{value:N[0],label:N[0]?"Yes":"No"},{value:N[1],label:N[1]?"Yes":"No"}]:r.optionsList({enum:N,enumNames:w.enumNames})}return f.default.createElement(A,{options:C({},T,{enumOptions:t}),schema:a,uiSchema:i,id:o&&o.$id,onChange:p,onFocus:h,onBlur:v,label:void 0===S?n:S,value:l,required:d,disabled:u,readonly:c,registry:s,formContext:b,autofocus:m,rawErrors:y})}var q=["widget"],P=function(e){function t(t){var a;(a=e.call(this,t)||this).onOptionChange=function(e){var t=parseInt(e,10),n=a.props,i=n.formData,o=n.onChange,l=n.options,s=n.registry.schemaUtils,d=s.retrieveSchema(l[t],i),u=void 0;if("object"===r.guessType(i)&&("object"===d.type||d.properties)){u=Object.assign({},i);var c=l.slice();c.splice(t,1);for(var m,f=function(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return x(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?x(e,t):void 0}}(e))){r&&(e=r);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(c);!(m=f()).done;){var p=m.value;if(p.properties)for(var h in p.properties)h in u&&S.default(u,h)}}o(s.getDefaultFormState(l[t],u,"excludeObjectChildren"),void 0,a.getFieldId()),a.setState({selectedOption:parseInt(e,10)})};var n=a.props;return a.state={selectedOption:a.getMatchingOption(0,n.formData,n.options)},a}F(t,e);var a=t.prototype;return a.componentDidUpdate=function(e,t){var a=this.props,n=a.formData,i=a.options,o=a.idSchema,l=this.state.selectedOption;if(!r.deepEquals(n,e.formData)&&o.$id===e.idSchema.$id){var s=this.getMatchingOption(l,n,i);if(!t||s===l)return;this.setState({selectedOption:s})}},a.getMatchingOption=function(e,t,r){var a=this.props.registry.schemaUtils.getMatchingOption(t,r);return 0!==a?a:e||0},a.getFieldId=function(){var e=this.props;return e.idSchema.$id+(e.schema.oneOf?"__oneof_select":"__anyof_select")},a.render=function(){var e,t=this.props,a=t.name,n=t.baseType,i=t.disabled,o=void 0!==i&&i,l=t.readonly,s=void 0!==l&&l,d=t.hideError,u=void 0!==d&&d,c=t.errorSchema,m=void 0===c?{}:c,p=t.formData,h=t.formContext,v=t.idPrefix,g=t.idSeparator,y=t.idSchema,S=t.onBlur,E=t.onChange,b=t.onFocus,F=t.options,D=t.registry,x=t.uiSchema,T=D.widgets,A=D.fields.SchemaField,O=this.state.selectedOption,w=r.getUiOptions(x),N=w.widget,B=void 0===N?"select":N,I=k(w,q),U=r.getWidget({type:"number"},B,T),_=F[O]||null;_&&(e=_.type?_:Object.assign({},_,{type:n}));var P=F.map((function(e,t){return{label:e.title||"Option "+(t+1),value:t}}));return f.default.createElement("div",{className:"panel panel-default panel-body"},f.default.createElement("div",{className:"form-group"},f.default.createElement(U,C({id:this.getFieldId(),schema:{type:"number",default:0},onChange:this.onOptionChange,onBlur:S,onFocus:b,value:O,options:{enumOptions:P},registry:D,formContext:h},I,{label:""}))),null!==_&&f.default.createElement(A,{name:a,schema:e,uiSchema:x,errorSchema:m,idSchema:y,idPrefix:v,idSeparator:g,formData:p,formContext:h,onChange:E,onBlur:S,onFocus:b,registry:D,disabled:o,readonly:s,hideError:u}))},t}(t.Component),R=/\.([0-9]*0)*$/,j=/[0.]0*$/;function V(e){var a=e.registry,n=e.onChange,i=e.formData,o=t.useState(e.value),l=o[0],s=o[1],d=a.fields.StringField,u=i,c=t.useCallback((function(e){s(e),"."===(""+e).charAt(0)&&(e="0"+e);var t="string"==typeof e&&e.match(R)?r.asNumber(e.replace(j,"")):r.asNumber(e);n(t)}),[n]);if("string"==typeof l&&"number"==typeof u){var m=new RegExp((""+u).replace(".","\\.")+"\\.?0*$");l.match(m)&&(u=l)}return f.default.createElement(d,C({},e,{formData:u,onChange:c}))}var M=function(e){function t(){for(var t,a=arguments.length,n=new Array(a),i=0;i<a;i++)n[i]=arguments[i];return(t=e.call.apply(e,[this].concat(n))||this).state={wasPropertyKeyModified:!1,additionalProperties:{}},t.onPropertyChange=function(e,r){return void 0===r&&(r=!1),function(a,n,i){var o,l,s=t.props,d=s.errorSchema;void 0===a&&r&&(a=""),(0,s.onChange)(C({},s.formData,((o={})[e]=a,o)),d&&d&&C({},d,((l={})[e]=n,l)),i)}},t.onDropPropertyClick=function(e){return function(r){r.preventDefault();var a=t.props,n=a.onChange,i=C({},a.formData);S.default(i,e),n(i)}},t.getAvailableKey=function(e,a){for(var n=r.getUiOptions(t.props.uiSchema).duplicateKeySuffixSeparator,i=void 0===n?"-":n,o=0,l=e;l in a;)l=""+e+i+ ++o;return l},t.onKeyChange=function(e){return function(r,a){var n,i;if(e!==r){var o=t.props,l=o.formData,s=o.onChange,d=o.errorSchema;r=t.getAvailableKey(r,l);var u=C({},l),c=((n={})[e]=r,n),m=Object.keys(u).map((function(e){var t;return(t={})[c[e]||e]=u[e],t})),f=Object.assign.apply(Object,[{}].concat(m));t.setState({wasPropertyKeyModified:!0}),s(f,d&&d&&C({},d,((i={})[r]=a,i)))}}},t.handleAddClick=function(e){return function(){if(e.additionalProperties){var a=t.props,n=a.formData,i=a.onChange,o=a.registry,l=C({},n),s=void 0;g.default(e.additionalProperties)&&(s=e.additionalProperties.type,r.REF_KEY in e.additionalProperties&&(s=o.schemaUtils.retrieveSchema({$ref:e.additionalProperties[r.REF_KEY]},n).type));var d=t.getAvailableKey("newKey",l);y.default(l,d,t.getDefaultValue(s)),i(l)}}},t}F(t,e);var a=t.prototype;return a.isRequired=function(e){var t=this.props.schema;return Array.isArray(t.required)&&-1!==t.required.indexOf(e)},a.getDefaultValue=function(e){switch(e){case"string":default:return"New Value";case"array":return[];case"boolean":return!1;case"null":return null;case"number":return 0;case"object":return{}}},a.render=function(){var e,t=this,a=this.props,n=a.uiSchema,i=void 0===n?{}:n,o=a.formData,l=a.errorSchema,s=a.idSchema,d=a.name,u=a.required,c=void 0!==u&&u,m=a.disabled,h=void 0!==m&&m,v=a.readonly,g=void 0!==v&&v,y=a.hideError,S=a.idPrefix,b=a.idSeparator,F=a.onBlur,D=a.onFocus,k=a.registry,x=k.formContext,T=k.fields.SchemaField,A=k.schemaUtils.retrieveSchema(a.schema,o),O=r.getUiOptions(i),w=A.properties,N=void 0===w?{}:w,B=void 0===A.title?d:A.title,I=O.description||A.description;try{var U=Object.keys(N);e=r.orderProperties(U,O.order)}catch(e){return f.default.createElement("div",null,f.default.createElement("p",{className:"config-error",style:{color:"red"}},"Invalid ",d||"root"," object field configuration:",f.default.createElement("em",null,e.message),"."),f.default.createElement("pre",null,JSON.stringify(A)))}var _=r.getTemplate("ObjectFieldTemplate",k,O),q={title:O.title||B,description:I,properties:e.map((function(e){var a=E.default(A,[r.PROPERTIES_KEY,e,r.ADDITIONAL_PROPERTY_FLAG]),n=a?i.additionalProperties:i[e],d="hidden"===r.getUiOptions(n).widget,u=p.default(s,[e],{});return{content:f.default.createElement(T,{key:e,name:e,required:t.isRequired(e),schema:p.default(A,[r.PROPERTIES_KEY,e],{}),uiSchema:n,errorSchema:p.default(l,e),idSchema:u,idPrefix:S,idSeparator:b,formData:p.default(o,e),formContext:x,wasPropertyKeyModified:t.state.wasPropertyKeyModified,onKeyChange:t.onKeyChange(e),onChange:t.onPropertyChange(e,a),onBlur:F,onFocus:D,registry:k,disabled:h,readonly:g,hideError:y,onDropPropertyClick:t.onDropPropertyClick}),name:e,readonly:g,disabled:h,required:c,hidden:d}})),readonly:g,disabled:h,required:c,idSchema:s,uiSchema:i,schema:A,formData:o,formContext:x,registry:k};return f.default.createElement(_,C({},q,{onAddClick:this.handleAddClick}))},t}(t.Component),W=["__errors"],K={array:"ArrayField",boolean:"BooleanField",integer:"NumberField",number:"NumberField",object:"ObjectField",string:"StringField",null:"NullField"};function L(e){var t=e.schema,a=e.idSchema,n=e.uiSchema,i=e.formData,o=e.errorSchema,l=e.idPrefix,s=e.idSeparator,d=e.name,u=e.onChange,c=e.onKeyChange,m=e.onDropPropertyClick,p=e.required,h=e.registry,v=e.wasPropertyKeyModified,y=void 0!==v&&v,S=h.formContext,E=h.schemaUtils,F=r.getUiOptions(n),D=r.getTemplate("FieldTemplate",h,F),x=r.getTemplate("DescriptionFieldTemplate",h,F),T=r.getTemplate("FieldHelpTemplate",h,F),A=r.getTemplate("FieldErrorTemplate",h,F),O=E.retrieveSchema(t,i),w=a[r.ID_KEY],N=r.mergeObjects(E.toIdSchema(O,w,i,l,s),a),B=f.default.useCallback((function(e,t,r){return u(e,t,r||w)}),[w,u]),I=function(e,t,a,n){var i=t.field,o=n.fields;if("function"==typeof i)return i;if("string"==typeof i&&i in o)return o[i];var l=r.getSchemaType(e),s=Array.isArray(l)?l[0]:l||"",d=K[s];return d||!e.anyOf&&!e.oneOf?d in o?o[d]:function(){var i=r.getTemplate("UnsupportedFieldTemplate",n,t);return f.default.createElement(i,{schema:e,idSchema:a,reason:"Unknown field type "+e.type,registry:n})}:function(){return null}}(O,F,N,h),U=Boolean(e.disabled||F.disabled),_=Boolean(e.readonly||F.readonly||e.schema.readOnly||O.readOnly),q=F.hideError,P=void 0===q?e.hideError:Boolean(q),R=Boolean(e.autofocus||F.autofocus);if(0===Object.keys(O).length)return null;var j=E.getDisplayLabel(O,n),V=o||{},M=V.__errors,L=k(V,W),$=b.default(n,["ui:classNames","classNames"]);"ui:options"in $&&($["ui:options"]=b.default($["ui:options"],["classNames"]));var Y,z=f.default.createElement(I,C({},e,{onChange:B,idSchema:N,schema:O,uiSchema:$,disabled:U,readonly:_,hideError:P,autofocus:R,errorSchema:L,formContext:S,rawErrors:M})),J=N[r.ID_KEY];Y=y||r.ADDITIONAL_PROPERTY_FLAG in O?d:F.title||e.schema.title||O.title||d;var H=F.description||e.schema.description||O.description||"",G=F.help,Q="hidden"===F.widget,X=["form-group","field","field-"+O.type];!P&&M&&M.length>0&&X.push("field-error has-error has-danger"),null!=n&&n.classNames&&X.push(n.classNames),F.classNames&&X.push(F.classNames);var Z=f.default.createElement(T,{help:G,idSchema:N,schema:O,uiSchema:n,hasErrors:!P&&M&&M.length>0,registry:h}),ee=P?void 0:f.default.createElement(A,{errors:M,errorSchema:o,idSchema:N,schema:O,uiSchema:n,registry:h}),te={description:f.default.createElement(x,{id:J+"__description",description:H,schema:O,uiSchema:n,registry:h}),rawDescription:H,help:Z,rawHelp:"string"==typeof G?G:void 0,errors:ee,rawErrors:P?void 0:M,id:J,label:Y,hidden:Q,onChange:u,onKeyChange:c,onDropPropertyClick:m,required:p,disabled:U,readonly:_,hideError:P,displayLabel:j,classNames:X.join(" ").trim(),formContext:S,formData:i,schema:O,uiSchema:n,registry:h},re=h.fields.AnyOfField,ae=h.fields.OneOfField;return f.default.createElement(D,C({},te),f.default.createElement(f.default.Fragment,null,z,O.anyOf&&!(null!=n&&n["ui:field"])&&!E.isSelect(O)&&f.default.createElement(re,{name:d,disabled:U,readonly:_,hideError:P,errorSchema:o,formData:i,formContext:S,idPrefix:l,idSchema:N,idSeparator:s,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,options:O.anyOf.map((function(e){return E.retrieveSchema(g.default(e)?e:{},i)})),baseType:O.type,registry:h,schema:O,uiSchema:n}),O.oneOf&&!(null!=n&&n["ui:field"])&&!E.isSelect(O)&&f.default.createElement(ae,{name:d,disabled:U,readonly:_,hideError:P,errorSchema:o,formData:i,formContext:S,idPrefix:l,idSchema:N,idSeparator:s,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,options:O.oneOf.map((function(e){return E.retrieveSchema(g.default(e)?e:{},i)})),baseType:O.type,registry:h,schema:O,uiSchema:n})))}var $=function(e){function t(){return e.apply(this,arguments)||this}F(t,e);var a=t.prototype;return a.shouldComponentUpdate=function(e){return!r.deepEquals(this.props,e)},a.render=function(){return f.default.createElement(L,C({},this.props))},t}(f.default.Component),Y=["widget","placeholder"];function z(e){var t=e.schema,a=e.name,n=e.uiSchema,i=e.idSchema,o=e.formData,l=e.required,s=e.disabled,d=void 0!==s&&s,u=e.readonly,c=void 0!==u&&u,m=e.autofocus,p=void 0!==m&&m,h=e.onChange,v=e.onBlur,g=e.onFocus,y=e.registry,S=e.rawErrors,E=t.title,b=t.format,F=y.widgets,D=y.formContext,x=y.schemaUtils.isSelect(t)?r.optionsList(t):void 0,T=x?"select":"text";b&&r.hasWidget(t,b,F)&&(T=b);var A=r.getUiOptions(n),O=A.widget,w=void 0===O?T:O,N=A.placeholder,B=void 0===N?"":N,I=k(A,Y),U=r.getWidget(t,w,F);return f.default.createElement(U,{options:C({},I,{enumOptions:x}),schema:t,uiSchema:n,id:i&&i.$id,label:void 0===E?a:E,value:o,onChange:h,onBlur:v,onFocus:g,required:l,disabled:d,readonly:c,formContext:D,autofocus:p,registry:y,placeholder:B,rawErrors:S})}function J(e){var r=e.formData,a=e.onChange;return t.useEffect((function(){void 0===r&&a(null)}),[r,a]),null}function H(e){var t=e.idSchema,a=e.description,n=e.registry,i=e.schema,o=e.uiSchema,l=r.getUiOptions(o),s=l.label;if(!a||void 0!==s&&!s)return null;var d=r.getTemplate("DescriptionFieldTemplate",n,l);return f.default.createElement(d,{id:t.$id+"__description",description:a,schema:i,uiSchema:o,registry:n})}function G(e){var t=e.disabled,r=e.hasToolbar,a=e.hasMoveDown,n=e.hasMoveUp,i=e.hasRemove,o=e.index,l=e.onDropIndexClick,s=e.onReorderClick,d=e.readonly,u=e.registry,c=e.uiSchema,m=u.templates.ButtonTemplates,p=m.MoveDownButton,h=m.MoveUpButton,v=m.RemoveButton,g={flex:1,paddingLeft:6,paddingRight:6,fontWeight:"bold"};return f.default.createElement("div",{className:e.className},f.default.createElement("div",{className:r?"col-xs-9":"col-xs-12"},e.children),r&&f.default.createElement("div",{className:"col-xs-3 array-item-toolbox"},f.default.createElement("div",{className:"btn-group",style:{display:"flex",justifyContent:"space-around"}},(n||a)&&f.default.createElement(h,{style:g,disabled:t||d||!n,onClick:s(o,o-1),uiSchema:c,registry:u}),(n||a)&&f.default.createElement(p,{style:g,disabled:t||d||!a,onClick:s(o,o+1),uiSchema:c,registry:u}),i&&f.default.createElement(v,{style:g,disabled:t||d,onClick:l(o),uiSchema:c,registry:u}))))}var Q=["key"];function X(e){var t=e.canAdd,a=e.className,n=e.disabled,i=e.idSchema,o=e.uiSchema,l=e.items,s=e.onAddClick,d=e.readonly,u=e.registry,c=e.required,m=e.schema,p=e.title,h=r.getUiOptions(o),v=r.getTemplate("ArrayFieldDescriptionTemplate",u,h),g=r.getTemplate("ArrayFieldItemTemplate",u,h),y=r.getTemplate("ArrayFieldTitleTemplate",u,h),S=u.templates.ButtonTemplates.AddButton;return f.default.createElement("fieldset",{className:a,id:i.$id},f.default.createElement(y,{idSchema:i,title:h.title||p,required:c,schema:m,uiSchema:o,registry:u}),f.default.createElement(v,{idSchema:i,description:h.description||m.description,schema:m,uiSchema:o,registry:u}),f.default.createElement("div",{className:"row array-item-list"},l&&l.map((function(e){var t=e.key,r=k(e,Q);return f.default.createElement(g,C({key:t},r))}))),t&&f.default.createElement(S,{className:"array-item-add",onClick:s,disabled:n||d,uiSchema:o,registry:u}))}function Z(e){var t=e.idSchema,a=e.title,n=e.schema,i=e.uiSchema,o=e.required,l=e.registry,s=r.getUiOptions(i),d=s.label;if(!a||void 0!==d&&!d)return null;var u=r.getTemplate("TitleFieldTemplate",l,s);return f.default.createElement(u,{id:t.$id+"__title",title:a,required:o,schema:n,uiSchema:i,registry:l})}var ee=["id","value","readonly","disabled","autofocus","onBlur","onFocus","onChange","options","schema","uiSchema","formContext","registry","rawErrors","type"];function te(e){var a=e.id,n=e.value,i=e.readonly,o=e.disabled,l=e.autofocus,s=e.onBlur,d=e.onFocus,u=e.onChange,c=e.options,m=e.schema,p=e.type,h=k(e,ee);if(!a)throw console.log("No id for",e),new Error("no id for props "+JSON.stringify(e));var v,g=C({},h,r.getInputProps(m,p,c));v="number"===g.type||"integer"===g.type?n||0===n?n:"":null==n?"":n;var y=t.useCallback((function(e){var t=e.target.value;return u(""===t?c.emptyValue:t)}),[u,c]),S=t.useCallback((function(e){return s(a,e.target.value)}),[s,a]),E=t.useCallback((function(e){return d(a,e.target.value)}),[d,a]);return f.default.createElement(f.default.Fragment,null,f.default.createElement("input",C({id:a,name:a,className:"form-control",readOnly:i,disabled:o,autoFocus:l,value:v},g,{list:m.examples?"examples_"+a:void 0,onChange:y,onBlur:S,onFocus:E})),Array.isArray(m.examples)&&f.default.createElement("datalist",{key:"datalist_"+a,id:"examples_"+a},[].concat(new Set(m.examples.concat(m.default?[m.default]:[]))).map((function(e){return f.default.createElement("option",{key:e,value:e})}))))}function re(e){var t=r.getSubmitButtonOptions(e.uiSchema),a=t.submitText,n=t.props,i=void 0===n?{}:n;return t.norender?null:f.default.createElement("div",null,f.default.createElement("button",C({type:"submit"},i,{className:"btn btn-info "+i.className}),a))}var ae=["iconType","icon","className","uiSchema","registry"];function ne(e){var t=e.iconType,r=void 0===t?"default":t,a=e.icon,n=e.className,i=k(e,ae);return f.default.createElement("button",C({type:"button",className:"btn btn-"+r+" "+n},i),f.default.createElement("i",{className:"glyphicon glyphicon-"+a}))}function ie(e){return f.default.createElement(ne,C({title:"Move down",className:"array-item-move-down"},e,{icon:"arrow-down"}))}function oe(e){return f.default.createElement(ne,C({title:"Move up",className:"array-item-move-up"},e,{icon:"arrow-up"}))}function le(e){return f.default.createElement(ne,C({title:"Remove",className:"array-item-remove"},e,{iconType:"danger",icon:"remove"}))}function se(e){return f.default.createElement("div",{className:"row"},f.default.createElement("p",{className:"col-xs-3 col-xs-offset-9 text-right "+e.className},f.default.createElement(ne,{iconType:"info",icon:"plus",className:"btn-add col-xs-12",title:"Add",onClick:e.onClick,disabled:e.disabled,registry:e.registry})))}function de(e){var t=e.description;return t?f.default.createElement("string"==typeof t?"p":"div",{id:e.id,className:"field-description"},t):null}function ue(e){var t=e.errors;return f.default.createElement("div",{className:"panel panel-danger errors"},f.default.createElement("div",{className:"panel-heading"},f.default.createElement("h3",{className:"panel-title"},"Errors")),f.default.createElement("ul",{className:"list-group"},t.map((function(e,t){return f.default.createElement("li",{key:t,className:"list-group-item text-danger"},e.stack)}))))}function ce(e){var t=e.label;return t?f.default.createElement("label",{className:"control-label",htmlFor:e.id},t,e.required&&f.default.createElement("span",{className:"required"},"*")):null}function me(e){var t=e.id,a=e.label,n=e.children,i=e.errors,o=e.help,l=e.description,s=e.hidden,d=e.required,u=e.displayLabel,c=e.registry,m=r.getUiOptions(e.uiSchema),p=r.getTemplate("WrapIfAdditionalTemplate",c,m);return s?f.default.createElement("div",{className:"hidden"},n):f.default.createElement(p,C({},e),u&&f.default.createElement(ce,{label:a,required:d,id:t}),u&&l?l:null,n,i,o)}function fe(e){var t=e.errors,r=void 0===t?[]:t;return 0===r.length?null:f.default.createElement("div",null,f.default.createElement("ul",{id:e.idSchema.$id+"__error",className:"error-detail bs-callout bs-callout-info"},r.filter((function(e){return!!e})).map((function(e,t){return f.default.createElement("li",{className:"text-danger",key:t},e)}))))}function pe(e){var t=e.help;return t?f.default.createElement("string"==typeof t?"p":"div",{id:e.idSchema.$id+"__help",className:"help-block"},t):null}function he(e){var t=e.description,a=e.disabled,n=e.formData,i=e.idSchema,o=e.onAddClick,l=e.properties,s=e.readonly,d=e.registry,u=e.required,c=e.schema,m=e.title,p=e.uiSchema,h=r.getUiOptions(p),v=r.getTemplate("TitleFieldTemplate",d,h),g=r.getTemplate("DescriptionFieldTemplate",d,h),y=d.templates.ButtonTemplates.AddButton;return f.default.createElement("fieldset",{id:i.$id},(h.title||m)&&f.default.createElement(v,{id:i.$id+"__title",title:h.title||m,required:u,schema:c,uiSchema:p,registry:d}),(h.description||t)&&f.default.createElement(g,{id:i.$id+"__description",description:h.description||t,schema:c,uiSchema:p,registry:d}),l.map((function(e){return e.content})),r.canExpand(c,p,n)&&f.default.createElement(y,{className:"object-property-expand",onClick:o(c),disabled:a||s,uiSchema:p,registry:d}))}function ve(e){return f.default.createElement("legend",{id:e.id},e.title,e.required&&f.default.createElement("span",{className:"required"},"*"))}function ge(e){var t=e.schema,r=e.idSchema,a=e.reason;return f.default.createElement("div",{className:"unsupported-field"},f.default.createElement("p",null,"Unsupported field schema",r&&r.$id&&f.default.createElement("span",null," for"," field ",f.default.createElement("code",null,r.$id)),a&&f.default.createElement("em",null,": ",a),"."),t&&f.default.createElement("pre",null,JSON.stringify(t,null,2)))}function ye(e){var t=e.id,a=e.disabled,n=e.label,i=e.onKeyChange,o=e.onDropPropertyClick,l=e.readonly,s=e.children,d=e.uiSchema,u=e.registry,c=u.templates.ButtonTemplates.RemoveButton;return f.default.createElement("div",{className:e.classNames},r.ADDITIONAL_PROPERTY_FLAG in e.schema?f.default.createElement("div",{className:"row"},f.default.createElement("div",{className:"col-xs-5 form-additional"},f.default.createElement("div",{className:"form-group"},f.default.createElement(ce,{label:n+" Key",required:e.required,id:t+"-key"}),f.default.createElement("input",{className:"form-control",type:"text",id:t+"-key",onBlur:function(e){return i(e.target.value)},defaultValue:n}))),f.default.createElement("div",{className:"form-additional form-group col-xs-5"},s),f.default.createElement("div",{className:"col-xs-2"},f.default.createElement(c,{className:"array-item-remove btn-block",style:{border:"0"},disabled:a||l,onClick:o(n),uiSchema:d,registry:u}))):s)}function Se(e,t){for(var a=[],n=e;n<=t;n++)a.push({value:n,label:r.pad(n,2)});return a}function Ee(e){var t=e.type,r=e.range,a=e.value,n=e.select,i=e.disabled,o=e.readonly,l=e.autofocus,s=e.registry,d=e.onBlur,u=e.onFocus;return f.default.createElement(s.widgets.SelectWidget,{schema:{type:"integer"},id:e.rootId+"_"+t,className:"form-control",options:{enumOptions:Se(r[0],r[1])},placeholder:t,value:a,disabled:i,readonly:o,autofocus:l,onChange:function(e){return n(t,e)},onBlur:d,onFocus:u,registry:s,label:""})}function be(e){var a=e.time,n=void 0!==a&&a,i=e.disabled,o=void 0!==i&&i,l=e.readonly,s=void 0!==l&&l,d=e.autofocus,u=void 0!==d&&d,c=e.options,m=e.id,p=e.registry,h=e.onBlur,v=e.onFocus,g=e.onChange,y=e.value,S=t.useReducer((function(e,t){return C({},e,t)}),r.parseDateString(y,n)),E=S[0],b=S[1];t.useEffect((function(){y&&y!==r.toDateString(E,n)&&b(r.parseDateString(y,n))}),[y,E,n]),t.useEffect((function(){(function(e){return Object.values(e).every((function(e){return-1!==e}))})(E)&&g(r.toDateString(E,n))}),[E,n,g]);var F=t.useCallback((function(e,t){var r;b(((r={})[e]=t,r))}),[]),D=t.useCallback((function(e){if(e.preventDefault(),!o&&!s){var t=r.parseDateString((new Date).toJSON(),n);b(t)}}),[o,s,n]),k=t.useCallback((function(e){e.preventDefault(),o||s||(b(r.parseDateString("",n)),g(void 0))}),[o,s,n,g]);return f.default.createElement("ul",{className:"list-inline"},function(e,t,r){void 0===r&&(r=[1900,(new Date).getFullYear()+2]);var a=[{type:"year",range:r,value:e.year},{type:"month",range:[1,12],value:e.month},{type:"day",range:[1,31],value:e.day}];return t&&a.push({type:"hour",range:[0,23],value:e.hour},{type:"minute",range:[0,59],value:e.minute},{type:"second",range:[0,59],value:e.second}),a}(E,n,c.yearsRange).map((function(e,t){return f.default.createElement("li",{key:t},f.default.createElement(Ee,C({rootId:m,select:F},e,{disabled:o,readonly:s,registry:p,onBlur:h,onFocus:v,autofocus:u&&0===t})))})),("undefined"===c.hideNowButton||!c.hideNowButton)&&f.default.createElement("li",null,f.default.createElement("a",{href:"#",className:"btn btn-info btn-now",onClick:D},"Now")),("undefined"===c.hideClearButton||!c.hideClearButton)&&f.default.createElement("li",null,f.default.createElement("a",{href:"#",className:"btn btn-warning btn-clear",onClick:k},"Clear")))}var Ce=["time"];function Fe(e){var t=e.time,r=void 0===t||t,a=k(e,Ce);return f.default.createElement(a.registry.widgets.AltDateWidget,C({time:r},a))}function De(e){var a=e.schema,n=e.uiSchema,i=e.id,o=e.value,l=e.disabled,s=e.readonly,d=e.label,u=e.autofocus,c=void 0!==u&&u,m=e.onBlur,p=e.onFocus,h=e.onChange,v=e.registry,g=r.getTemplate("DescriptionFieldTemplate",v,e.options),y=r.schemaRequiresTrueValue(a),S=t.useCallback((function(e){return h(e.target.checked)}),[h]),E=t.useCallback((function(e){return m(i,e.target.checked)}),[m,i]),b=t.useCallback((function(e){return p(i,e.target.checked)}),[p,i]);return f.default.createElement("div",{className:"checkbox "+(l||s?"disabled":"")},a.description&&f.default.createElement(g,{id:i+"__description",description:a.description,schema:a,uiSchema:n,registry:v}),f.default.createElement("label",null,f.default.createElement("input",{type:"checkbox",id:i,name:i,checked:void 0!==o&&o,required:y,disabled:l||s,autoFocus:c,onChange:S,onBlur:E,onFocus:b}),f.default.createElement("span",null,d)))}function ke(e){var t=e.id,r=e.disabled,a=e.options,n=a.inline,i=void 0!==n&&n,o=a.enumOptions,l=a.enumDisabled,s=e.value,d=e.autofocus,u=void 0!==d&&d,c=e.readonly,m=e.onChange;return f.default.createElement("div",{className:"checkboxes",id:t},Array.isArray(o)&&o.map((function(e,a){var n=-1!==s.indexOf(e.value),d=Array.isArray(l)&&-1!=l.indexOf(e.value),p=r||d||c?"disabled":"",h=f.default.createElement("span",null,f.default.createElement("input",{type:"checkbox",id:t+"-"+e.value,name:t,checked:n,disabled:r||d||c,autoFocus:u&&0===a,onChange:function(t){var r=o.map((function(e){return e.value}));m(t.target.checked?function(e,t,r){var a=r.indexOf(e);return t.slice(0,a).concat(e,t.slice(a)).sort((function(e,t){return Number(r.indexOf(e)>r.indexOf(t))}))}(e.value,s,r):function(e,t){return t.filter((function(t){return t!==e}))}(e.value,s))}}),f.default.createElement("span",null,e.label));return i?f.default.createElement("label",{key:e.value,className:"checkbox-inline "+p},h):f.default.createElement("div",{key:e.value,className:"checkbox "+p},f.default.createElement("label",null,h))})))}function xe(e){var t=e.disabled,a=e.readonly,n=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(n,C({type:"color"},e,{disabled:t||a}))}function Te(e){var a=e.onChange,n=r.getTemplate("BaseInputTemplate",e.registry,e.options),i=t.useCallback((function(e){return a(e||void 0)}),[a]);return f.default.createElement(n,C({type:"date"},e,{onChange:i}))}function Ae(e){var t=e.onChange,a=e.value,n=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(n,C({type:"datetime-local"},e,{value:r.utcToLocal(a),onChange:function(e){return t(r.localToUTC(e))}}))}function Oe(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"email"},e))}function we(e,t){return null===e?null:e.replace(";base64",";name="+encodeURIComponent(t)+";base64")}function Ne(e){var t=e.name,r=e.size,a=e.type;return new Promise((function(n,i){var o=new window.FileReader;o.onerror=i,o.onload=function(e){var i;"string"==typeof(null===(i=e.target)||void 0===i?void 0:i.result)?n({dataURL:we(e.target.result,t),name:t,size:r,type:a}):n({dataURL:null,name:t,size:r,type:a})},o.readAsDataURL(e)}))}function Be(e){var t=e.filesInfo;return 0===t.length?null:f.default.createElement("ul",{className:"file-info"},t.map((function(e,t){var r=e.size,a=e.type;return f.default.createElement("li",{key:t},f.default.createElement("strong",null,e.name)," (",a,", ",r," bytes)")})))}function Ie(e){return e.filter((function(e){return void 0!==e})).map((function(e){var t=r.dataURItoBlob(e),a=t.blob;return{name:t.name,size:a.size,type:a.type}}))}function Ue(e){var r=e.multiple,a=e.id,n=e.readonly,i=e.disabled,o=e.onChange,l=e.value,s=e.autofocus,d=void 0!==s&&s,u=e.options,c=t.useMemo((function(){return Array.isArray(l)?Ie(l):Ie([l])}),[l]),m=t.useState(c),p=m[0],h=m[1],v=t.useCallback((function(e){var t;e.target.files&&(t=e.target.files,Promise.all(Array.from(t).map(Ne))).then((function(e){h(e);var t=e.map((function(e){return e.dataURL}));o(r?t:t[0])}))}),[r,o]);return f.default.createElement("div",null,f.default.createElement("p",null,f.default.createElement("input",{id:a,name:a,type:"file",disabled:n||i,onChange:v,defaultValue:"",autoFocus:d,multiple:r,accept:u.accept?String(u.accept):void 0})),f.default.createElement(Be,{filesInfo:p}))}function _e(e){var t=e.id,r=e.value;return f.default.createElement("input",{type:"hidden",id:t,name:t,value:void 0===r?"":r})}function qe(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"password"},e))}function Pe(e){var r=e.options,a=e.value,n=e.required,i=e.disabled,o=e.readonly,l=e.autofocus,s=void 0!==l&&l,d=e.onBlur,u=e.onFocus,c=e.onChange,m=e.id,p=Math.random().toString(),h=r.enumOptions,v=r.enumDisabled,g=r.inline,y=t.useCallback((function(e){return d(m,e.target.value)}),[d,m]),S=t.useCallback((function(e){return u(m,e.target.value)}),[u,m]);return f.default.createElement("div",{className:"field-radio-group",id:m},Array.isArray(h)&&h.map((function(e,t){var r=e.value===a,l=Array.isArray(v)&&-1!=v.indexOf(e.value),d=i||l||o?"disabled":"",u=f.default.createElement("span",null,f.default.createElement("input",{type:"radio",id:m+"-"+e.value,checked:r,name:p,required:n,value:e.value,disabled:i||l||o,autoFocus:s&&0===t,onChange:function(){return c(e.value)},onBlur:y,onFocus:S}),f.default.createElement("span",null,e.label));return g?f.default.createElement("label",{key:e.value,className:"radio-inline "+d},u):f.default.createElement("div",{key:e.value,className:"radio "+d},f.default.createElement("label",null,u))})))}function Re(e){var t=e.value;return f.default.createElement("div",{className:"field-range-wrapper"},f.default.createElement(e.registry.templates.BaseInputTemplate,C({type:"range"},e)),f.default.createElement("span",{className:"range-view"},t))}function je(e,t){return t?Array.from(e.target.options).slice().filter((function(e){return e.selected})).map((function(e){return e.value})):e.target.value}function Ve(e){var a=e.schema,n=e.id,i=e.options,o=e.value,l=e.required,s=e.disabled,d=e.readonly,u=e.multiple,c=void 0!==u&&u,m=e.autofocus,p=void 0!==m&&m,h=e.onChange,v=e.onBlur,g=e.onFocus,y=e.placeholder,S=i.enumOptions,E=i.enumDisabled,b=c?[]:"",C=t.useCallback((function(e){var t=je(e,c);return g(n,r.processSelectValue(a,t,i))}),[g,n,a,c,i]),F=t.useCallback((function(e){var t=je(e,c);return v(n,r.processSelectValue(a,t,i))}),[v,n,a,c,i]),D=t.useCallback((function(e){var t=je(e,c);return h(r.processSelectValue(a,t,i))}),[h,a,c,i]);return f.default.createElement("select",{id:n,name:n,multiple:c,className:"form-control",value:void 0===o?b:o,required:l,disabled:s||d,autoFocus:p,onBlur:F,onFocus:C,onChange:D},!c&&void 0===a.default&&f.default.createElement("option",{value:""},y),Array.isArray(S)&&S.map((function(e,t){var r=e.value,a=e.label,n=E&&-1!=E.indexOf(r);return f.default.createElement("option",{key:t,value:r,disabled:n},a)})))}function Me(e){var r=e.id,a=e.options,n=void 0===a?{}:a,i=e.placeholder,o=e.value,l=e.required,s=e.disabled,d=e.readonly,u=e.autofocus,c=void 0!==u&&u,m=e.onChange,p=e.onBlur,h=e.onFocus,v=t.useCallback((function(e){var t=e.target.value;return m(""===t?n.emptyValue:t)}),[m,n.emptyValue]),g=t.useCallback((function(e){return p(r,e.target.value)}),[p,r]),y=t.useCallback((function(e){return h(r,e.target.value)}),[r,h]);return f.default.createElement("textarea",{id:r,name:r,className:"form-control",value:o||"",placeholder:i,required:l,disabled:s,readOnly:d,autoFocus:c,rows:n.rows,onBlur:g,onFocus:y,onChange:v})}function We(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({},e))}function Ke(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"url"},e))}function Le(e){var t=r.getTemplate("BaseInputTemplate",e.registry,e.options);return f.default.createElement(t,C({type:"number"},e))}function $e(){return{fields:{AnyOfField:P,ArrayField:I,BooleanField:_,NumberField:V,ObjectField:M,OneOfField:P,SchemaField:$,StringField:z,NullField:J},templates:{ArrayFieldDescriptionTemplate:H,ArrayFieldItemTemplate:G,ArrayFieldTemplate:X,ArrayFieldTitleTemplate:Z,ButtonTemplates:{SubmitButton:re,AddButton:se,MoveDownButton:ie,MoveUpButton:oe,RemoveButton:le},BaseInputTemplate:te,DescriptionFieldTemplate:de,ErrorListTemplate:ue,FieldTemplate:me,FieldErrorTemplate:fe,FieldHelpTemplate:pe,ObjectFieldTemplate:he,TitleFieldTemplate:ve,UnsupportedFieldTemplate:ge,WrapIfAdditionalTemplate:ye},widgets:{PasswordWidget:qe,RadioWidget:Pe,UpDownWidget:Le,RangeWidget:Re,SelectWidget:Ve,TextWidget:We,DateWidget:Te,DateTimeWidget:Ae,AltDateWidget:be,AltDateTimeWidget:Fe,EmailWidget:Oe,URLWidget:Ke,TextareaWidget:Me,HiddenWidget:_e,ColorWidget:xe,FileWidget:Ue,CheckboxWidget:De,CheckboxesWidget:ke},rootSchema:{},formContext:{}}}Me.defaultProps={autofocus:!1,options:{}};var Ye=function(e){function t(t){var a;if((a=e.call(this,t)||this).formElement=void 0,a.getUsedFormData=function(e,t){if(0===t.length&&"object"!=typeof e)return e;var r=v.default(e,t);return Array.isArray(e)?Object.keys(r).map((function(e){return r[e]})):r},a.getFieldNames=function(e,t){return function e(a,n,i){return void 0===n&&(n=[]),void 0===i&&(i=[[]]),Object.keys(a).forEach((function(o){if("object"==typeof a[o]){var l=i.map((function(e){return[].concat(e,[o])}));a[o][r.RJSF_ADDITONAL_PROPERTIES_FLAG]&&""!==a[o][r.NAME_KEY]?n.push(a[o][r.NAME_KEY]):e(a[o],n,l)}else o===r.NAME_KEY&&""!==a[o]&&i.forEach((function(e){var r=p.default(t,e);("object"!=typeof r||h.default(r))&&n.push(e)}))})),n}(e)},a.onChange=function(e,t,n){var i=a.props,o=i.extraErrors,l=i.omitExtraData,s=i.liveOmit,d=i.noValidate,u=i.liveValidate,c=i.onChange,m=a.state,f=m.schemaUtils,p=m.schema;(r.isObject(e)||Array.isArray(e))&&(e=a.getStateFromProps(a.props,e).formData);var h=!d&&u,v={formData:e,schema:p},g=e;if(!0===l&&!0===s){var y=f.retrieveSchema(p,e),S=f.toPathSchema(y,"",e),E=a.getFieldNames(S,e);g=a.getUsedFormData(e,E),v={formData:g}}if(h){var b=a.validate(g),F=b.errors,D=b.errorSchema,k=F,x=D;if(o){var T=f.mergeValidationData(b,o);D=T.errorSchema,F=T.errors}v={formData:g,errors:F,errorSchema:D,schemaValidationErrors:k,schemaValidationErrorSchema:x}}else if(!d&&t){var A=o?r.mergeObjects(t,o,"preventDuplicates"):t;v={formData:g,errorSchema:A,errors:f.getValidator().toErrorList(A)}}a.setState(v,(function(){return c&&c(C({},a.state,v),n)}))},a.onBlur=function(e,t){var r=a.props.onBlur;r&&r(e,t)},a.onFocus=function(e,t){var r=a.props.onFocus;r&&r(e,t)},a.onSubmit=function(e){if(e.preventDefault(),e.target===e.currentTarget){e.persist();var t=a.props,r=t.extraErrors,n=t.noValidate,i=t.onSubmit,o=a.state.formData,l=a.state,s=l.schemaUtils;if(!0===t.omitExtraData){var d=s.retrieveSchema(l.schema,o),u=s.toPathSchema(d,"",o),c=a.getFieldNames(u,o);o=a.getUsedFormData(o,c)}if(n||a.validateForm()){var m=r||{},f=r?s.getValidator().toErrorList(r):[];a.setState({formData:o,errors:f,errorSchema:m,schemaValidationErrors:[],schemaValidationErrorSchema:{}},(function(){i&&i(C({},a.state,{formData:o,status:"submitted"}),e)}))}}},!t.validator)throw new Error("A validator is required for Form functionality to work");return a.state=a.getStateFromProps(t,t.formData),a.props.onChange&&!r.deepEquals(a.state.formData,a.props.formData)&&a.props.onChange(a.state),a.formElement=f.default.createRef(),a}F(t,e);var a=t.prototype;return a.UNSAFE_componentWillReceiveProps=function(e){var t=this.getStateFromProps(e,e.formData);r.deepEquals(t.formData,e.formData)||r.deepEquals(t.formData,this.state.formData)||!e.onChange||e.onChange(t),this.setState(t)},a.getStateFromProps=function(e,t){var a=this.state||{},n="schema"in e?e.schema:this.props.schema,i=("uiSchema"in e?e.uiSchema:this.props.uiSchema)||{},o=void 0!==t,l=o&&!e.noValidate&&("liveValidate"in e?e.liveValidate:this.props.liveValidate),s=n,d=a.schemaUtils;d&&!d.doesSchemaUtilsDiffer(e.validator,s)||(d=r.createSchemaUtils(e.validator,s));var u,c,m=d.getDefaultFormState(n,t),f=d.retrieveSchema(n,m),p=a.schemaValidationErrors,h=a.schemaValidationErrorSchema;if(l){var v=this.validate(m,n,d);p=u=v.errors,h=c=v.errorSchema}else{var g=e.noValidate?{errors:[],errorSchema:{}}:e.liveValidate?{errors:a.errors||[],errorSchema:a.errorSchema||{}}:{errors:a.schemaValidationErrors||[],errorSchema:a.schemaValidationErrorSchema||{}};u=g.errors,c=g.errorSchema}if(e.extraErrors){var y=d.mergeValidationData({errorSchema:c,errors:u},e.extraErrors);c=y.errorSchema,u=y.errors}var S=d.toIdSchema(f,i["ui:rootFieldId"],m,e.idPrefix,e.idSeparator);return{schemaUtils:d,schema:n,uiSchema:i,idSchema:S,formData:m,edit:o,errors:u,errorSchema:c,schemaValidationErrors:p,schemaValidationErrorSchema:h}},a.shouldComponentUpdate=function(e,t){return r.shouldRender(this,e,t)},a.validate=function(e,t,r){void 0===t&&(t=this.props.schema);var a=r||this.state.schemaUtils,n=this.props,i=n.customValidate,o=n.transformErrors,l=n.uiSchema,s=a.retrieveSchema(t,e);return a.getValidator().validateFormData(e,s,i,o,l)},a.renderErrors=function(e){var t=this.state,a=t.errors,n=t.errorSchema,i=t.schema,o=t.uiSchema,l=this.props.formContext,s=r.getUiOptions(o),d=r.getTemplate("ErrorListTemplate",e,s);return a&&a.length?f.default.createElement(d,{errors:a,errorSchema:n||{},schema:i,uiSchema:o,formContext:l}):null},a.getRegistry=function(){var e,t=this.state.schemaUtils,r=$e(),a=r.templates,n=r.widgets,i=r.formContext;return{fields:C({},r.fields,this.props.fields),templates:C({},a,this.props.templates,{ButtonTemplates:C({},a.ButtonTemplates,null===(e=this.props.templates)||void 0===e?void 0:e.ButtonTemplates)}),widgets:C({},n,this.props.widgets),rootSchema:this.props.schema,formContext:this.props.formContext||i,schemaUtils:t}},a.submit=function(){this.formElement.current&&(this.formElement.current.dispatchEvent(new CustomEvent("submit",{cancelable:!0})),this.formElement.current.requestSubmit())},a.validateForm=function(){var e=this.props,t=e.extraErrors,r=e.onError,a=this.state.schemaUtils,n=this.validate(this.state.formData),i=n.errors,o=n.errorSchema,l=i,s=o;if(i.length>0){if(t){var d=a.mergeValidationData(n,t);o=d.errorSchema,i=d.errors}return this.setState({errors:i,errorSchema:o,schemaValidationErrors:l,schemaValidationErrorSchema:s},(function(){r?r(i):console.error("Form validation failed",i)})),!1}return!0},a.render=function(){var e=this.props,t=e.children,r=e.id,a=e.idPrefix,n=e.idSeparator,i=e.className,o=void 0===i?"":i,l=e.tagName,s=e.name,d=e.method,u=e.target,c=e.action,m=e.autoComplete,p=e.enctype,h=e.acceptcharset,v=e.noHtml5Validate,g=void 0!==v&&v,y=e.disabled,S=void 0!==y&&y,E=e.readonly,b=void 0!==E&&E,C=e.formContext,F=e.showErrorList,D=void 0===F?"top":F,k=e._internalFormWrapper,x=this.state,T=x.schema,A=x.uiSchema,O=x.formData,w=x.errorSchema,N=x.idSchema,B=this.getRegistry(),I=B.fields.SchemaField,U=B.templates.ButtonTemplates.SubmitButton;return f.default.createElement(k||l||"form",{className:o||"rjsf",id:r,name:s,method:d,target:u,action:c,autoComplete:m,encType:p,acceptCharset:h,noValidate:g,onSubmit:this.onSubmit,as:k?l:void 0,ref:this.formElement},"top"===D&&this.renderErrors(B),f.default.createElement(I,{name:"",schema:T,uiSchema:A,errorSchema:w,idSchema:N,idPrefix:a,idSeparator:n,formContext:C,formData:O,onChange:this.onChange,onBlur:this.onBlur,onFocus:this.onFocus,registry:B,disabled:S,readonly:b}),t||f.default.createElement(U,{uiSchema:A,registry:B}),"bottom"===D&&this.renderErrors(B))},t}(t.Component),ze=["fields","widgets","templates"];e.default=Ye,e.getDefaultRegistry=$e,e.withTheme=function(e){return t.forwardRef((function(t,r){var a,n,i=t.fields,o=t.widgets,l=t.templates,s=k(t,ze);return i=C({},e.fields,i),o=C({},e.widgets,o),l=C({},e.templates,l,{ButtonTemplates:C({},null==e||null===(a=e.templates)||void 0===a?void 0:a.ButtonTemplates,null===(n=l)||void 0===n?void 0:n.ButtonTemplates)}),f.default.createElement(Ye,C({},e,s,{fields:i,widgets:o,templates:l,ref:r}))}))},Object.defineProperty(e,"__esModule",{value:!0})}));
2
2
  //# sourceMappingURL=core.umd.production.min.js.map