@rjsf/core 5.0.0-beta.2 → 5.0.0-beta.20

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