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