@rjsf/core 5.1.0 → 5.2.0

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