@visma/rjsf-material-ui
Version:
Material UI theme, fields and widgets for react-jsonschema-form
3 lines (2 loc) • 32.8 kB
JavaScript
;function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@visma/rjsf-core"),r=require("react"),n=e(r),a=e(require("@material-ui/core/Box")),i=e(require("@material-ui/core/Button")),l=require("react-intl"),o=e(require("@material-ui/core/Grid")),u=e(require("@material-ui/core/Paper")),s=e(require("@material-ui/icons/Add")),c=e(require("@material-ui/icons/ArrowUpward")),m=e(require("@material-ui/icons/ArrowDownward")),d=e(require("@material-ui/icons/DeleteForever")),p=e(require("@material-ui/icons/VerticalAlignTop")),f=e(require("@material-ui/icons/VerticalAlignBottom")),g=e(require("@material-ui/core/Typography")),h=e(require("@material-ui/core/Divider")),v=e(require("@material-ui/core/Checkbox")),b=e(require("@material-ui/core/FormControlLabel")),y=e(require("@material-ui/core/List")),E=e(require("@material-ui/core/ListItem")),x=e(require("@material-ui/core/ListItemIcon")),w=e(require("@material-ui/icons/Error")),S=e(require("@material-ui/core/ListItemText")),C=require("@material-ui/styles"),k=e(require("@material-ui/core/FormControl")),F=e(require("@material-ui/core/FormHelperText")),M=e(require("@material-ui/core/Input")),q=e(require("@material-ui/core/InputLabel")),L=require("@material-ui/core"),I=e(require("@material-ui/core/FormGroup")),O=e(require("@material-ui/core/Radio")),T=e(require("@material-ui/core/RadioGroup")),A=e(require("@material-ui/core/Slider")),P=require("@material-ui/core/styles"),R=e(require("@material-ui/core/MenuItem")),D=e(require("@material-ui/core/TextField")),W=e(require("@material-ui/core/IconButton")),B=e(require("@material-ui/icons/Description")),j=e(require("@material-ui/icons/HighlightOff")),N=e(require("pretty-bytes"));function z(){return(z=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function U(e){if(null==e)throw new TypeError("Cannot destructure undefined")}function $(e,t){if(null==e)return{};var r,n,a={},i=Object.keys(e);for(n=0;n<i.length;n++)t.indexOf(r=i[n])>=0||(a[r]=e[r]);return a}var _=function(e){return n.createElement(i,Object.assign({},e,{color:"secondary"}),n.createElement(s,null)," ",l.useIntl().formatMessage({id:"kNLPWW",defaultMessage:[{type:0,value:"Add Item"}]}))},V={remove:d,plus:s,"arrow-up":c,"arrow-down":m,"double-arrow-up":p,"double-arrow-down":f},G=function(e){var t=e.icon,r=e.iconProps,a=$(e,["icon","className","iconProps"]),l=V[t];return n.createElement(i,Object.assign({},a,{variant:"outlined",size:"small"}),n.createElement(l,Object.assign({alt:a["aria-label"]},r)))},H=t.utils.isMultiSelect,K=t.utils.getDefaultRegistry,X=function(e){return e.indent},Z=function(e){var t=e.schema,r=e.idSchema,i=e.title,l=e.required;if(!i)return null;var o=r.$id.split("_").length+1;return n.createElement(a,{id:r.$id+"__title",mb:1,mt:1},n.createElement(g,Object.assign({},t.items&&"object"===t.items.type?{component:2===o?"h2":"h3"}:{component:"p","aria-hidden":!0},{variant:"subtitle1"}),i,l&&n.createElement(n.Fragment,null," *")),n.createElement(h,null))},J=function(e){var r=e.description;if(!r)return null;var a=t.utils.descriptionId(e.idSchema.$id);return n.createElement(g,{component:"p",variant:"subtitle2",id:a},r)},Q=function(e){var t={flex:1,paddingLeft:3,paddingRight:3,fontWeight:"bold",minWidth:0,marginLeft:5,marginBottom:10,borderRadius:15,borderWidth:2},r=l.useIntl();return n.createElement(o,{container:!0,key:e.key,alignItems:"center"},e.extraOptions&&n.createElement(o,{container:!0,style:{justifyContent:"flex-end"}},n.createElement(o,{item:!0},n.createElement(a,{mb:2},n.createElement(_,{className:"array-item-add",onClick:e.onAddIndexClick(e.index),disabled:e.disabled||e.readonly})))),n.createElement(o,{item:!0,xs:!0},n.createElement(a,{mb:2},n.createElement(u,{elevation:2},n.createElement(a,{p:2},e.children)))),e.hasToolbar&&n.createElement(o,{item:!0},n.createElement(o,{container:!0,direction:"column"},(e.hasMoveUp||e.hasMoveDown)&&e.extraOptions&&n.createElement(G,{icon:"double-arrow-up",className:"array-item-move-up","aria-label":r.formatMessage({id:"CEqozz",defaultMessage:[{type:0,value:"Move first"}]}),style:t,iconProps:{fontSize:"small"},disabled:e.disabled||e.readonly||!e.hasMoveUp,onClick:e.onReorderClick(e.index,0)}),(e.hasMoveUp||e.hasMoveDown)&&n.createElement(n.Fragment,null,n.createElement(G,{icon:"arrow-up",className:"array-item-move-up","aria-label":r.formatMessage({id:"wmFdws",defaultMessage:[{type:0,value:"Move up"}]}),style:t,iconProps:{fontSize:"small"},disabled:e.disabled||e.readonly||!e.hasMoveUp,onClick:e.onReorderClick(e.index,e.index-1)}),n.createElement(G,{icon:"arrow-down","aria-label":r.formatMessage({id:"H/r5m6",defaultMessage:[{type:0,value:"Move down"}]}),style:t,iconProps:{fontSize:"small"},disabled:e.disabled||e.readonly||!e.hasMoveDown,onClick:e.onReorderClick(e.index,e.index+1)})),(e.hasMoveUp||e.hasMoveDown)&&e.extraOptions&&n.createElement(G,{icon:"double-arrow-down",className:"array-item-move-up","aria-label":r.formatMessage({id:"Q5rRZ3",defaultMessage:[{type:0,value:"Move last"}]}),style:t,iconProps:{fontSize:"small"},disabled:e.disabled||e.readonly||!e.hasMoveDown,onClick:e.onReorderClick(e.index,e.size-1)}),e.hasRemove&&n.createElement(G,{icon:"remove","aria-label":r.formatMessage({id:"3dwSlf",defaultMessage:[{type:0,value:"Remove item"}]}),style:t,iconProps:{fontSize:"small"},disabled:e.disabled||e.readonly,onClick:e.onDropIndexClick(e.index)}))))},Y=function(e){return n.createElement("fieldset",{className:e.className},n.createElement(Z,{key:"array-field-title-"+e.idSchema.$id,TitleField:e.TitleField,idSchema:e.idSchema,title:e.uiSchema["ui:title"]||e.title,required:e.required,schema:e.schema}),(e.uiSchema["ui:description"]||e.schema.description)&&n.createElement(J,{key:"array-field-description-"+e.idSchema.$id,idSchema:e.idSchema,description:e.uiSchema["ui:description"]||e.schema.description}),n.createElement("div",{className:"row array-item-list",key:"array-item-list-"+e.idSchema.$id},e.items&&e.items.map((function(t){return Q(z({},t,{size:e.items.length,hasRemove:e.items.length>(e.schema.minItems?e.schema.minItems:0)&&t.hasRemove,extraOptions:e.schema.extraListOptions}))}))),e.canAdd&&n.createElement(_,{className:"array-item-add",onClick:e.onAddClick,disabled:e.disabled||e.readonly}))},ee=function(e){var t=e.currentPage,r=e.pageAmount,a=e.setPage;return n.createElement(n.Fragment,null,n.createElement(i,{size:"large",style:{minWidth:20,marginLeft:20},disabled:0===t,onClick:function(){return a(0)}},"<<|"),n.createElement(i,{size:"large",style:{minWidth:20,marginLeft:5},disabled:0===t,onClick:function(){return a(t-1)}},"<|"),Array.from({length:r},(function(e,t){return t})).map((function(e){return n.createElement(i,{size:"large",style:{minWidth:40,marginLeft:5},disabled:e===t,onClick:function(){return a(e)}},e+1)})),n.createElement(i,{size:"large",style:{minWidth:20,marginLeft:5},disabled:t===r-1,onClick:function(){return a(t+1)}},"|>"),n.createElement(i,{size:"large",style:{minWidth:20,marginLeft:5},disabled:t===r-1,onClick:function(){return a(r-1)}},"|>>"))},te=function(e){var t=l.useIntl(),s=void 0!==e.schema.items.pagination&&e.schema.items.pagination,c=r.useState([]),m=c[0],d=c[1],p=r.useState("true"===localStorage.getItem("formulaDisablePagination")),f=p[0],g=p[1],h=r.useState(0),y=h[0],E=h[1],x=r.useState(localStorage.getItem("formulaPaginationElements")?Number(localStorage.getItem("formulaPaginationElements")):5),w=x[0],S=x[1],C=r.useState(s?Math.ceil(e.items.length/w):1),k=C[0],F=C[1],M=r.useState(!1),q=M[0],L=M[1];r.useEffect((function(){if(m&&m.length>0&&q){var t=document.getElementById(e.idSchema.$id+"__title");t.focus(),t.scrollIntoView({behavior:"smooth"}),L(!1)}}),[m]),r.useEffect((function(){y>e.items.length/w&&y>-1?E(Math.floor(e.items.length/w)):y>-1&&d(e.items.slice(w*y,w*y+w))}),[y,e.items,w]),r.useEffect((function(){F(s?Math.ceil(e.items.length/w):1)}),[e.items,w]);var I=function(e){E(e),L(!0)};return n.createElement(u,{elevation:2},n.createElement(a,{p:2},n.createElement(Z,{key:"array-field-title-"+e.idSchema.$id,TitleField:e.TitleField,idSchema:e.idSchema,title:e.uiSchema["ui:title"]||e.title,required:e.required,schema:e.schema}),(e.uiSchema["ui:description"]||e.schema.description)&&n.createElement(J,{key:"array-field-description-"+e.idSchema.$id,idSchema:e.idSchema,description:e.uiSchema["ui:description"]||e.schema.description}),s&&!f&&k>1&&n.createElement(ee,{currentPage:y,pageAmount:k,setPage:I}),n.createElement(o,{container:!0,key:"array-item-list-"+e.idSchema.$id},s&&!f&&m&&m.map((function(t){return Q(z({},t,{size:e.items.length,hasRemove:e.items.length>(e.schema.minItems?e.schema.minItems:0)&&t.hasRemove,extraOptions:e.schema.extraListOptions}))})),!(s&&!f)&&e.items&&e.items.map((function(t){return Q(z({},t,{size:e.items.length,hasRemove:e.items.length>(e.schema.minItems?e.schema.minItems:0)&&t.hasRemove,extraOptions:e.schema.extraListOptions}))})),e.canAdd&&n.createElement(o,{container:!0,style:{justifyContent:"flex-end"}},n.createElement(o,{item:!0},n.createElement(a,{mt:2},n.createElement(_,{className:"array-item-add",onClick:s&&!f&&e.items.length>0?function(){e.items[0].onAddIndexClick((y+1)*w)(),(y+1<k||e.items.length-(y+1)*w>=0)&&(L(!0),E(y+1))}:e.onAddClick,disabled:e.disabled||e.readonly})))))),s&&!f&&k>1&&n.createElement(ee,{currentPage:y,pageAmount:k,setPage:I}),s&&!f&&n.createElement("p",{style:{paddingLeft:20}},t.formatMessage({id:"vJPbhT",defaultMessage:[{type:0,value:"Elements per page:"}]}),[5,10,15].map((function(e){return n.createElement(i,{size:"small",style:{minWidth:1,maxWidth:30,borderRadius:32,marginLeft:5},variant:"outlined",disabled:e===w,onClick:function(){return t=e,localStorage.setItem("formulaPaginationElements",t.toString()),void S(t);var t}},e)}))),s&&n.createElement(b,{style:{paddingLeft:20,paddingBottom:15},control:n.createElement(v,{checked:f,onChange:function(e){localStorage.setItem("formulaDisablePagination",e.target.checked?"true":"false"),g(e.target.checked)}}),label:t.formatMessage({id:"FsKJR1",defaultMessage:[{type:0,value:"Disable pagination"}]})}))},re=function(e){var t=e.schema,r=e.registry,i=void 0===r?K():r,l=e.uiSchema;return n.createElement(a,{pl:l.items&&l.items["ui:options"]&&X(l.items["ui:options"].element)?3*X(l.items["ui:options"].element):0},H(t,i.rootSchema)?n.createElement(Y,Object.assign({},e)):n.createElement(te,Object.assign({},e)))},ne=C.makeStyles({root:{marginTop:5}}),ae={DescriptionField:function(e){var t=e.description;if(t){var r=ne();return n.createElement(g,{component:"span",variant:"subtitle2",className:r.root},t)}return null},TitleField:function(e){return n.createElement(n.Fragment,null,n.createElement(a,{mb:1,mt:1},n.createElement(g,{component:"h2",variant:"h5"},e.title),n.createElement(h,null)))}},ie=t.utils.ADDITIONAL_PROPERTY_FLAG,le=function(e){var r=e.children,a=e.disabled,i=e.id,l=e.label,u=e.uiSchema,s=e.onDropPropertyClick,c=e.onKeyChange,m=e.readonly,d=e.required,p=l+" Key";return e.schema.hasOwnProperty(ie)?n.createElement(o,{container:!0,key:i+"-key",alignItems:"center",spacing:2},n.createElement(o,{item:!0,xs:!0},n.createElement(k,{fullWidth:!0,required:d},n.createElement(q,null,p),n.createElement(M,{defaultValue:l,disabled:a||m,id:i+"-key",name:i+"-key",onBlur:m?void 0:function(e){return c(e.target.value)},type:"text","aria-describedby":t.utils.ariaDescribedBy(i,u)}))),n.createElement(o,{item:!0,xs:!0},r),n.createElement(o,{item:!0},n.createElement(G,{icon:"remove",tabIndex:-1,style:{flex:1,paddingLeft:6,paddingRight:6,fontWeight:"bold"},disabled:a||m,onClick:s(l)}))):n.createElement(n.Fragment,null,r)},oe=function(e,t){if(e["ui:options"]&&e["ui:options"].element){var r=e["ui:options"].element;return r.useLabel?r.label:r.title}return t},ue=function(e){return e.list||!e.list&&e.listItem?0:e.indent},se=function(e){var r=e.errors;return n.createElement(y,{id:t.utils.errorsId(e.id),dense:!0,disablePadding:!0},r.map((function(e,t){return n.createElement(E,{key:t,disableGutters:!0},n.createElement(F,null,e))})))},ce=function(e){var r=e.id,i=e.children,l=e.classNames,o=e.disabled,u=e.label,s=e.onDropPropertyClick,c=e.onKeyChange,m=e.readonly,d=e.required,p=e.rawErrors,f=void 0===p?[]:p,h=e.rawHelp,v=e.rawDescription,b=e.schema,y=e.uiSchema;if(e.hidden)return null;var E=b.type,x=function(e){return!!e.properties.start};return n.createElement(a,{pl:y["ui:options"]&&ue(y["ui:options"].element)?3*ue(y["ui:options"].element):0},n.createElement(le,{classNames:l,disabled:o,id:r,uiSchema:y,label:u,onDropPropertyClick:s,onKeyChange:c,readonly:m,required:d,schema:b},n.createElement(k,{fullWidth:!0,error:!!f.length,required:d},function(e,t){return"array"===e.type?"object"!==e.items.type&&(e.items.enum||e.items.enumNames):"dateRange"===t["ui:options"].element.type&&!1===t["ui:options"].element.list?t["ui:options"].element.title||t["ui:options"].element.label:!("checkbox"===t["ui:widget"]||"boolean"===e.type&&"radio"!==t["ui:widget"]||"button"===t["ui:options"].element.type||"table"!==e.format&&"confirmField"!==e.format&&("object"===e.type||"string"===e.type&&void 0===e.title))}(b,y)&&oe(y,u)&&""!==oe(y,u).trim()?n.createElement(g,{"aria-hidden":!0,component:"p",variant:"subtitle1"},oe(y,u),d&&" *"):null,function(e){return!!e["ui:options"].element.description}&&v&&("boolean"!==b.type||"radio"===y["ui:widget"])?n.createElement(g,{id:t.utils.descriptionId(r),variant:"caption",color:"textSecondary"},v):null,f.length>0&&"object"===E&&!x(b)&&n.createElement(se,{id:r,errors:f}),i,f.length>0&&("object"!==E||x(b))&&n.createElement(se,{id:r,errors:f}),h&&n.createElement(F,{id:t.utils.helpId(r)},h))))},me=t.utils.canExpand,de=C.makeStyles({root:{marginTop:10}}),pe=function(e){var t=e.DescriptionField,r=e.description,i=e.title,l=e.properties,u=e.disabled,s=e.readonly,c=e.uiSchema,m=e.idSchema,d=e.schema,p=e.formData,f=e.onAddClick,v=de();return n.createElement(n.Fragment,null,(c["ui:title"]||i)&&!(d.originalConfig&&d.originalConfig.listItem)&&n.createElement(a,{id:m.$id+"-title",mb:1,mt:1},n.createElement(g,{component:"root"===m.$id?"h2":"h3",variant:"subtitle1",style:{fontSize:18}},i),n.createElement(h,null)),r&&n.createElement(t,{id:m.$id+"-description",description:r}),n.createElement(o,{container:!0,spacing:2,className:v.root},l.map((function(e,t){return e.hidden?e.content:n.createElement(o,{item:!0,xs:12,key:t,style:{marginBottom:"10px"}},e.content)})),me(d,c,p)&&n.createElement(o,{container:!0,style:{justifyContent:"flex-end"}},n.createElement(o,{item:!0},n.createElement(_,{className:"object-property-expand",onClick:f(d),disabled:u||s})))))},fe=t.utils.localToUTC,ge=t.utils.utcToLocal,he=t.utils.rangeSpec,ve=function(e,t){return void 0===e||void 0===t?void 0:[{value:e,label:e.toString()},{value:t,label:t.toString()}]},be=P.makeStyles({inputLabelRoot:{clip:"rect(0 0 0 0)",clipPath:"inset(50%)",height:1,overflow:"hidden",position:"absolute",whiteSpace:"nowrap",width:1},inputFormControl:{"label + &":{marginTop:0}}}),ye=t.utils.asNumber,Ee=t.utils.guessType,xe=new Set(["number","integer"]),we=function(e,t){var r=e.type,n=e.items;if(""!==t){if("array"===r&&n&&xe.has(n.type))return t.map(ye);if("boolean"===r)return"true"===t;if("number"===r)return ye(t);if(e.enum){if(e.enum.every((function(e){return"number"===Ee(e)})))return ye(t);if(e.enum.every((function(e){return"boolean"===Ee(e)})))return"true"===t}return t}},Se=P.makeStyles({inputLabelRoot:{clip:"rect(0 0 0 0)",clipPath:"inset(50%)",height:1,overflow:"hidden",position:"absolute",whiteSpace:"nowrap",width:1},inputFormControl:{"label + &":{marginTop:0}}}),Ce=function(e){var r=e.id,a=e.placeholder,i=e.value,l=e.label,o=e.required,u=e.disabled,s=e.autofocus,c=e.readonly,m=e.onBlur,d=e.onFocus,p=e.onChange,f=e.options,h=e.schema,v=e.rawErrors,b=void 0===v?[]:v,y=Se();return n.createElement(n.Fragment,null,n.createElement(D,{id:r,placeholder:a,disabled:u||c,value:i,label:t.utils.generateAriaLabel(l,f,o),required:o,autoFocus:s,multiline:!0,rows:f.rows||5,rowsMax:1e3,error:b.length>0,onChange:function(e){var t=e.target.value,r=""===t?f.emptyValue:t;p(r?h.maxLength?r.substring(0,h.maxLength):r:"")},onBlur:function(e){return m(r,e.target.value)},onFocus:function(e){return d(r,e.target.value)},InputProps:{"aria-describedby":t.utils.ariaDescribedBy(r,f,b),classes:{formControl:y.inputFormControl}},InputLabelProps:{shrink:!1,className:y.inputLabelRoot}}),f.showCharacterCounter&&n.createElement("div",null,n.createElement(g,{component:"span",variant:"subtitle2",style:{float:"right"}},i?i.length:0," ",void 0!==h.maxLength&&" / "+h.maxLength)))},ke=t.utils.rangeSpec,Fe=P.makeStyles({inputLabelRoot:{clip:"rect(0 0 0 0)",clipPath:"inset(50%)",height:1,overflow:"hidden",position:"absolute",whiteSpace:"nowrap",width:1},inputFormControl:{"label + &":{marginTop:0}}}),Me=function(e){var r=e.id,a=e.placeholder,i=e.required,l=e.readonly,o=e.disabled,u=e.type,s=e.label,c=e.value,m=e.onChange,d=e.onBlur,p=e.onFocus,f=e.autofocus,h=e.options,v=e.schema,b=e.uiSchema,y=e.rawErrors,E=void 0===y?[]:y,x=$(e,["id","placeholder","required","readonly","disabled","type","label","value","onChange","onBlur","onFocus","autofocus","options","schema","uiSchema","rawErrors","formContext","registry"]),w=h&&h.element?h.element.bannedCharacters:void 0,S=v?v.allowedCharacters:void 0,C=v?v.numberOfDecimals:void 0,k=Fe(),F="string"===(u||v.type)?"text":""+(u||v.type);return n.createElement(n.Fragment,null,n.createElement(D,Object.assign({id:r,placeholder:a,autoFocus:f,required:i,label:t.utils.generateAriaLabel(s,h,i),hiddenLabel:!0,disabled:o||l,type:F,value:c||0===c?c:"",error:E.length>0,onChange:function(e){var t=e.target.value,r=""===t?h.emptyValue:t;if("string"==typeof r&&w&&w.length>0){var n=w,a=Array.isArray(n),i=0;for(n=a?n:n[Symbol.iterator]();;){var l;if(a){if(i>=n.length)break;l=n[i++]}else{if((i=n.next()).done)break;l=i.value}r=r.split(l).join("")}}else if("string"==typeof r&&S&&S.length>0){var o="",u=r,s=Array.isArray(u),c=0;for(u=s?u:u[Symbol.iterator]();;){var d;if(s){if(c>=u.length)break;d=u[c++]}else{if((c=u.next()).done)break;d=c.value}var p=d;S.includes(p)&&(o+=p)}r=o}if(void 0!==C&&r){var f=r.toString().indexOf(".");f>0&&r.toString().length-1-f>C&&(r=Number(r.toString().substring(0,f+C+1)))}m(r?v.maxLength?String(r).substring(0,Number(v.maxLength)):r:"")},onBlur:function(e){return d(r,e.target.value)},onFocus:function(e){return p(r,e.target.value)},InputProps:{"aria-describedby":t.utils.ariaDescribedBy(r,b,E),classes:{formControl:k.inputFormControl}},inputProps:"number"===F?z({},ke(v)):{}},x,{InputLabelProps:{shrink:!1,className:k.inputLabelRoot}})),h.showCharacterCounter&&n.createElement("div",null,n.createElement(g,{component:"span",variant:"subtitle2",style:{float:"right"}},c?c.length:0," ",void 0!==v.maxLength&&" / "+v.maxLength)))},qe=P.makeStyles({inputLabel:{position:"absolute",left:"-10000px",top:"auto",width:"1px",height:"1px",overflow:"hidden"}});function Le(e,t){return e.replace(";base64",";name="+encodeURIComponent(t)+";base64")}function Ie(e){var t=e.name,r=e.size,n=e.type;return new Promise((function(a,i){var l=new window.FileReader;l.onerror=i,l.onload=function(e){a({dataURL:Le(e.target.result,t),name:t,size:r,type:n})},l.readAsDataURL(e)}))}var Oe=["*",'"',"/","\\","<",">",":","|","?"],Te=function(e){return function(t){var a,i,l=(i=r.useState(a=t.value),r.useEffect((function(){i[0]!==a&&(0,i[1])(a)}),[a]),i),o=l[0];return n.createElement(e,Object.assign({},t,{value:o,onChange:l[1],onBlur:function(){for(var e=arguments.length,r=new Array(e),n=0;n<e;n++)r[n]=arguments[n];t.onBlur.apply(void 0,r),t.onChange(o)}}))}},Ae={CheckboxWidget:function(e){var r=e.id,a=e.value,i=e.disabled,l=e.readonly,o=e.autofocus,u=e.onChange,s=e.onBlur,c=e.onFocus,m=e.options,d=e.required,p=e.rawErrors;return n.createElement(n.Fragment,null,m.description&&n.createElement(L.FormHelperText,{id:r+"__description"},m.description),n.createElement(b,{control:n.createElement(v,{id:r,checked:void 0!==a&&a,required:d,disabled:i||l,autoFocus:o,onChange:function(e,t){return U(e),u(t)},onBlur:function(e){return s(r,e.target.value)},onFocus:function(e){return c(r,e.target.value)},inputProps:{"aria-describedby":t.utils.ariaDescribedBy(r,{"ui:options":{element:e.options}},p)}}),"aria-label":t.utils.generateAriaLabel(e.label,m,d),label:n.createElement("span",null,e.label,d&&" *")}))},CheckboxesWidget:function(e){var r=e.id,a=e.disabled,i=e.label,l=e.required,o=e.options,u=e.value,s=e.autofocus,c=e.readonly,m=e.onChange,d=e.onBlur,p=e.onFocus,f=o.enumOptions,h=o.enumDisabled,y=o.inline,E=o.showScore,x=o.element?o.element.choices:[],w=function(e){return function(t){var r=t.target.checked,n=f.map((function(e){return e.value}));m(r?function(e,t,r){var n=r.indexOf(e);return t.slice(0,n).concat(e,t.slice(n)).sort((function(e,t){return r.indexOf(e)>r.indexOf(t)}))}(e.value,u,n):function(e,t){return t.filter((function(t){return t!==e}))}(e.value,u))}},S=function(e){return d(r,e.target.value)},C=function(e){return p(r,e.target.value)},F=t.utils.ariaDescribedBy(r,{"ui:options":{element:o}},e.rawErrors);return n.createElement("div",{style:{display:"flex"}},n.createElement("div",{style:{flex:"1 1"}},n.createElement(k,{component:"fieldset","aria-describedby":F},n.createElement("legend",{style:{position:"absolute",clip:"rect(0,0,0,0)"}},t.utils.generateAriaLabel(i,o,l)),n.createElement(I,{row:!!y},f.map((function(e,t){var i=-1!==u.indexOf(e.value),l=h&&-1!=h.indexOf(e.value),o=n.createElement(v,{id:r+"_"+t,checked:i,disabled:a||l||c,autoFocus:s&&0===t,onChange:w(e),onBlur:S,onFocus:C});return n.createElement(b,{control:o,key:t,style:{marginTop:"6px"},label:e.label})}))))),n.createElement("div",null,E&&u&&n.createElement(g,null,function(e,t){if(t.length>0){var r=t.map((function(t){return function(e,t){var r=e.find((function(e){return e.enum===t}));return r||(r=e[Number(t)]),r&&r.meta?r.meta.score:void 0}(e,t)}));return(r=r.filter((function(e){return void 0!==e}))).length>0?r.join(", "):""}return""}(x,u))))},ColorWidget:function(e){return n.createElement(e.registry.widgets.TextWidget,Object.assign({type:"color"},e))},DateWidget:function(e){return n.createElement(e.registry.widgets.TextWidget,Object.assign({type:"date",InputLabelProps:{shrink:!0}},e))},DateTimeWidget:function(e){var t=e.registry.widgets.TextWidget,r=ge(e.value);return n.createElement(t,Object.assign({type:"datetime-local",InputLabelProps:{shrink:!0}},e,{value:r,onChange:function(t){e.onChange(fe(t))}}))},EmailWidget:function(e){return n.createElement(e.registry.widgets.TextWidget,Object.assign({type:"email"},e))},PasswordWidget:function(e){return n.createElement(e.registry.widgets.TextWidget,Object.assign({type:"password"},e))},RadioWidget:function(e){var r=e.id,a=e.schema,i=e.label,l=e.options,o=e.value,u=e.required,s=e.disabled,c=e.readonly,m=e.onChange,d=e.onBlur,p=e.onFocus,f=l.enumOptions,h=l.enumDisabled,v=!!l&&l.inline,y=!!l&&l.showScore,E=l&&l.element?l.element.choices:[];return n.createElement("div",{style:{display:"flex"}},n.createElement("div",{style:{flex:"1 1"}},n.createElement(k,{component:"fieldset","aria-describedby":t.utils.ariaDescribedBy(r,e.uiSchema,e.rawErrors)},n.createElement("legend",{style:{position:"absolute",clip:"rect(0,0,0,0)"}},t.utils.generateAriaLabel(i,l,u)),"boolean"===a.type&&n.createElement(L.FormHelperText,{component:"span"},l.description),n.createElement(T,{value:""+o,row:v,onChange:function(e,t){return U(e),m("boolean"==a.type?"false"!==t:t)},onBlur:function(e){return d(r,e.target.value)},onFocus:function(e){return p(r,e.target.value)}},f.map((function(e,t){var r=h&&-1!=h.indexOf(e.value);return n.createElement(b,{control:n.createElement(O,{color:"primary",key:t}),style:{marginTop:"6px"},label:""+e.label,value:""+e.value,key:t,disabled:s||r||c})}))))),y&&o&&n.createElement(g,null,function(e,t){var r=e.find((function(e){return e.enum===t}));return r||(r=e[Number(t)]),r&&r.meta?r.meta.score:0}(E,o)))},RangeWidget:function(e){var r=e.value,a=e.readonly,i=e.disabled,l=e.onBlur,o=e.required,u=e.onFocus,s=e.options,c=e.onChange,m=e.label,d=e.id,p=e.uiSchema,f=e.rawErrors,h=z({value:r,label:m,id:d},he(e.schema)),v=s.element?function(e){return{widget:e.element.widget,scaleMarks:e.element.scaleMarks&&void 0===e.element.scaleMarks[0]?void 0:e.element.scaleMarks}}(s):{widget:"noScale",scaleMarks:void 0},b="customScale"===v.widget?v.scaleMarks:"automaticScale"===v.widget?function(e,t,r){if(void 0===e||void 0===t)return[];var n=function(e,t,r){for(var n=1,a=t-e,i=a/r;i>=10;)a%(r*++n)==0?i=a/(r*n):n/a>.5&&(n=-1,i=0);return n}(e,t,r?r<1?.5:r:1);return n>0?function(e,t,r){for(var n=[],a=e;a<t;a+=r)n.push({value:a,label:a.toString()});return n.push({value:t,label:t.toString()}),n}(e,t,(r?r<1?.5:r:1)*n):ve(e,t)}(h.min,h.max,h.step):ve(h.min,h.max),y=b&&Array.isArray(b)?Math.floor(95/b.length):15,E=P.makeStyles({slider:{marginTop:"45px","& .MuiSlider-markLabel":{wordWrap:"break-word",whiteSpace:"normal",textAlign:"center",width:(y>15?y:15)+"%",'&[style="left: 0%;"]':{textAlign:"left",transform:"translateX(0%)"},'&[style="left: 100%;"]':{textAlign:"right",transform:"translateX(-100%)"}}},sliderRoot:{marginBottom:"45px"}})();return n.createElement("div",{className:E.sliderRoot},s.description&&""!==s.description&&n.createElement(g,{id:t.utils.descriptionId(d),variant:"caption",color:"textSecondary"},s.description),n.createElement(A,Object.assign({className:E.slider,"aria-label":t.utils.generateAriaLabel(m,s,o),"aria-describedby":t.utils.ariaDescribedBy(d,p,f),disabled:i||a,onChange:function(e,t){return U(e),c(""===t?s.emptyValue:t)},onBlur:function(e){return l(d,e.target.value)},onFocus:function(e){return u(d,e.target.value)},valueLabelDisplay:"on",defaultValue:r&&isNaN(r)&&""!==r?r:h.min,marks:b},h)))},SelectWidget:function(e){var r=e.schema,a=e.id,i=e.options,l=e.label,o=e.required,u=e.disabled,s=e.readonly,c=e.value,m=e.multiple,d=e.autofocus,p=e.onChange,f=e.onBlur,h=e.onFocus,v=e.rawErrors,b=void 0===v?[]:v,y=i.enumOptions,E=i.enumDisabled,x=m?[]:"",w=!!i&&i.showScore,S=i&&i.element?i.element.choices:[],C=be();return n.createElement("div",{style:{display:"flex"}},n.createElement("div",{style:{flex:"1 1"}},n.createElement(D,{id:a,select:!0,fullWidth:!0,value:void 0===c?x:c,required:o,label:t.utils.generateAriaLabel(l,i,o),disabled:u||s,autoFocus:d,error:b.length>0,onChange:function(e){return p(we(r,e.target.value))},onBlur:function(e){return f(a,we(r,e.target.value))},onFocus:function(e){return h(a,we(r,e.target.value))},role:"combobox",InputProps:{id:a+"-input","aria-describedby":t.utils.ariaDescribedBy(a,i,b),classes:{formControl:C.inputFormControl}},InputLabelProps:{htmlFor:a+"-input",shrink:!1,className:C.inputLabelRoot},SelectProps:{labelId:a+"-label",multiple:void 0!==m&&m}},y.map((function(e,t){var r=e.value,a=e.label,i=E&&-1!=E.indexOf(r);return n.createElement(R,{key:t,value:r,disabled:i},a)})))),w&&c&&n.createElement(g,null,function e(t,r){if("string"==typeof r){var n=t.find((function(e){return e.enum===r}));return n||(n=t[Number(r)]),n&&n.meta?n.meta.score:void 0}if(Array.isArray(r)&&r.length>0){var a=r.map((function(r){return e(t,r)}));return(a=a.filter((function(e){return void 0!==e}))).length>0?a.join(", "):""}return""}(S,c)))},TextareaWidget:Te(Ce),TextWidget:Te(Me),UpDownWidget:function(e){var t=e.id,r=e.required,a=e.readonly,i=e.disabled,l=e.value,o=e.onChange,u=e.onBlur,s=e.onFocus,c=e.autofocus;return n.createElement(k,{fullWidth:!0,required:r},n.createElement(q,null,e.label),n.createElement(M,{id:t,autoFocus:c,required:r,type:"number",disabled:i||a,value:l||0===l?l:"",onChange:function(e){return o(e.target.value)},onBlur:function(e){return u(t,e.target.value)},onFocus:function(e){return s(t,e.target.value)}}))},URLWidget:function(e){return n.createElement(e.registry.widgets.TextWidget,Object.assign({type:"url"},e))},FileWidget:function(e){var a=e.id,o=e.options,u=e.value,s=e.disabled,c=e.readonly,m=e.multiple,d=e.autofocus,p=e.onChange,f=e.label,g=e.required,h=e.uiSchema,v=e.rawErrors,b=r.useState(),w=b[0],C=b[1],k=r.useRef(null),F=l.useIntl(),M=qe(),q=F.locale;r.useEffect((function(){if(null===u)C(void 0);else{var e=(Array.isArray(u)?u:[u]).filter((function(e){return void 0!==e})).map((function(e){var t=function(e){var t,r=e.split(","),n=r[0].split(";"),a=n[0].replace("data:",""),i=n.filter((function(e){return"name"===e.split("=")[0]}));t=1!==i.length?"unknown":i[0].split("=")[1];for(var l=atob(r[1]),o=[],u=0;u<l.length;u++)o.push(l.charCodeAt(u));return{blob:new window.Blob([new Uint8Array(o)],{type:a}),name:t}}(e),r=t.blob;return{name:t.name,size:r.size,type:r.type}}));C(e.length>0?e:void 0)}}),[u]);var L=function(e){var t=e.index;return n.createElement(W,{"aria-label":F.formatMessage({id:"hgAzMV",defaultMessage:[{type:0,value:"Remove file"}]}),onClick:function(){if(m){var e=u.splice(t,1);p(e)}else p(void 0)}},n.createElement(j,null))},I=t.utils.generateAriaLabel(f,o,g);return n.createElement(n.Fragment,null,I&&""!==I?n.createElement("label",{htmlFor:"file-input-"+a,className:M.inputLabel},I):null,n.createElement("input",{ref:k,id:"file-input-"+a,type:"file",disabled:c||s,onChange:function(e){var t;(t=e.target.files,Promise.all([].map.call(t,Ie))).then((function(e){var t,r,n=null==(t=h["ui:options"])||null==(r=t.element)?void 0:r.maxFileSizeMb;if(n){var a=n*Math.pow(1e3,2);e=e.filter((function(e){var t=e.size<=a;return t||alert(F.formatMessage({id:"YZMoKC",defaultMessage:[{type:0,value:'File "'},{type:1,value:"name"},{type:0,value:'" is not accepted. Maximum file size is '},{type:1,value:"size"},{type:0,value:"."}]},{name:e.name,size:N(a,{locale:q})})),t}))}if(o.accept){var i=o.accept.split(",");e=e.filter((function(e){var t=i.some((function(t){return e.name.endsWith(t)}));return t||alert(F.formatMessage({id:"Q7OsfP",defaultMessage:[{type:0,value:'File "'},{type:1,value:"name"},{type:0,value:'" is not accepted. Accepted file extensions are: '},{type:1,value:"accept"},{type:0,value:"."}]},{name:e.name,accept:o.accept})),t}))}e=e.filter((function(e){var t=!Oe.some((function(t){return e.name.includes(t)}));return t||alert(F.formatMessage({id:"MzG5Gx",defaultMessage:[{type:0,value:'File "'},{type:1,value:"name"},{type:0,value:'" is not accepted. Filename cannot contain following characters: '},{type:1,value:"characters"}]},{name:e.name,characters:Oe.join(" ")})),t})),C(e);var l=e.map((function(e){return e.dataURL}));p(m?l:l[0])}))},autoFocus:d,multiple:m,"aria-hidden":!0,accept:o.accept,style:{display:"none"}}),n.createElement(i,{"aria-label":I&&I+": "+F.formatMessage({id:"kdTF/d",defaultMessage:[{type:0,value:"Choose file"}]}),"aria-describedby":t.utils.ariaDescribedBy(a,h,v),variant:"outlined",onClick:function(){return k.current.click()}},F.formatMessage({id:"kdTF/d",defaultMessage:[{type:0,value:"Choose file"}]})),n.createElement((function(e){var t=e.filesInfo;return t&&0!==t.length?n.createElement(y,{id:"file-info"},t.map((function(e,t){var r=e.name,a=e.size,i=e.type,l=r;try{l=decodeURIComponent(r)}catch(e){}return n.createElement(E,{key:t},n.createElement(x,null,n.createElement(B,null)),n.createElement(S,{primary:l,secondary:i+", "+N(a,{locale:q})}),n.createElement(L,{index:t}))}))):null}),{filesInfo:w}))}},Pe=(0,t.utils.getDefaultRegistry)(),Re=Pe.fields,De=Pe.widgets,We=function(){return n.createElement(a,{marginTop:3},n.createElement(i,{type:"submit",variant:"contained",color:"primary"},l.useIntl().formatMessage({id:"wSZR47",defaultMessage:[{type:0,value:"Submit"}]})))},Be={children:n.createElement(We,null),ArrayFieldTemplate:re,fields:z({},Re,ae),FieldTemplate:ce,widgets:z({},De,Ae),ObjectFieldTemplate:pe,ErrorList:function(e){var t=e.errors,r=e.uiSchema,i=l.useIntl(),o=r["ui:order"]||[],s=t.map((function(e){var t=z({},e),r=t.property?t.property.match(/\[(.*?)\]/):void 0;return r?t.property=r[1].replace(/'/g,""):/^\./.test(t.property)&&(t.property=t.property.replace(".","")),t})).sort((function(e,t){return o.indexOf(e.property)-o.indexOf(t.property)}));return n.createElement(u,{elevation:2},n.createElement(a,{id:"formula-validation-errors",mb:2,p:2},n.createElement(g,r.formWithSteps?{component:"h4",variant:"h6",role:"alert"}:{component:"h2",variant:"h6",role:"alert"},i.formatMessage({id:"9XTsp0",defaultMessage:[{type:0,value:"Invalid inputs"}]})),n.createElement(y,{dense:!0,role:"alert"},s.map((function(e,t){return n.createElement(E,{key:t},n.createElement(x,null,n.createElement(w,{color:"error"})),n.createElement(S,{primary:e.stack}))})))))}},je=t.withTheme(Be);exports.ArrayFieldTemplate=re,exports.FieldTemplate=ce,exports.Fields=ae,exports.MuiForm=je,exports.ObjectFieldTemplate=pe,exports.Theme=Be,exports.Widgets=Ae,exports.default=je;
//# sourceMappingURL=rjsf-material-ui.cjs.production.min.js.map