@artibet/react-mui-components 2.4.0 → 2.4.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1 +1 @@
1
- import{TextField as e,FormGroup as r,FormControlLabel as n,Switch as o,Typography as t,Stack as l,Box as a,Popover as i,Autocomplete as u}from"@mui/material";import d from"react";import{Controller as c}from"react-hook-form";import{ChromePicker as s}from"react-color";function f(){return f=Object.assign?Object.assign.bind():function(e){for(var r=1;r<arguments.length;r++){var n=arguments[r];for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(e[o]=n[o])}return e},f.apply(this,arguments)}function v(e,r){if(null==e)return{};var n,o,t=function(e,r){if(null==e)return{};var n,o,t={},l=Object.keys(e);for(o=0;o<l.length;o++)n=l[o],r.indexOf(n)>=0||(t[n]=e[n]);return t}(e,r);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(o=0;o<l.length;o++)n=l[o],r.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(t[n]=e[n])}return t}function m(e,r){return function(e){if(Array.isArray(e))return e}(e)||function(e,r){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o,t,l,a,i=[],u=!0,d=!1;try{if(l=(n=n.call(e)).next,0===r){if(Object(n)!==n)return;u=!1}else for(;!(u=(o=l.call(n)).done)&&(i.push(o.value),i.length!==r);u=!0);}catch(e){d=!0,t=e}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(d)throw t}}return i}}(e,r)||function(e,r){if(!e)return;if("string"==typeof e)return b(e,r);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,r)}(e,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,r){(null==r||r>e.length)&&(r=e.length);for(var n=0,o=new Array(r);n<r;n++)o[n]=e[n];return o}var p=["form","name","label","maxLength","required","disabled","autofocus"],g=function(r){var n=r.form,o=r.name,t=r.label,l=r.maxLength,a=void 0===l?255:l,i=r.required,u=void 0!==i&&i,s=r.disabled,m=void 0!==s&&s,b=r.autofocus,g=void 0!==b&&b,h=v(r,p),x=n.control,y=n.formState.errors;return d.createElement(c,{name:o,control:x,rules:{required:u,disabled:m},render:function(r){var n,l,i=r.field,c=i.onChange,s=i.onBlur,v=i.value;return d.createElement(e,f({required:u,label:t,value:v,onChange:c,onBlur:s,error:Boolean(null===(n=y[o])||void 0===n?void 0:n.message),fullWidth:!0,helperText:null===(l=y[o])||void 0===l?void 0:l.message,variant:"outlined",disabled:m,autoFocus:g,inputProps:{maxLength:a}},h))}})},h=["form","name","label","required","disabled","autofocus"],x=function(r){var n=r.form,o=r.name,t=void 0===o?"password":o,l=r.label,a=void 0===l?"Κωδικός Πρόσβασης":l,i=r.required,u=void 0===i||i,s=r.disabled,m=void 0!==s&&s,b=r.autofocus,p=void 0!==b&&b,g=v(r,h),x=n.control,y=n.formState.errors;return d.createElement(c,{name:t,control:x,rules:{required:u,disabled:m},render:function(r){var n,o,l=r.field,i=l.onChange,c=l.onBlur,s=l.value;return d.createElement(e,f({required:u,label:a,value:s,onChange:i,onBlur:c,error:Boolean(null===(n=y[t])||void 0===n?void 0:n.message),fullWidth:!0,helperText:null===(o=y[t])||void 0===o?void 0:o.message,variant:"outlined",disabled:m,autoFocus:p,type:"password"},g))}})},y=["form","name","label","required","disabled","autofocus"],E=function(r){var n=r.form,o=r.name,t=void 0===o?"email":o,l=r.label,a=void 0===l?"E-mail":l,i=r.required,u=void 0===i||i,s=r.disabled,m=void 0!==s&&s,b=r.autofocus,p=void 0!==b&&b,g=v(r,y),h=n.control,x=n.formState.errors;return d.createElement(c,{name:t,control:h,rules:{required:u,disabled:m},render:function(r){var n,o,l=r.field,i=l.onChange,c=l.onBlur,s=l.value;return d.createElement(e,f({required:u,label:a,value:s,onChange:i,onBlur:c,error:Boolean(null===(n=x[t])||void 0===n?void 0:n.message),fullWidth:!0,helperText:null===(o=x[t])||void 0===o?void 0:o.message,variant:"outlined",disabled:m,autoFocus:p},g))}})},O=["form","name","label","disabled"],q=function(e){var t=e.form,l=e.name,a=e.label,i=e.disabled,u=void 0!==i&&i,s=v(e,O),f=t.control;return d.createElement(c,{name:l,control:f,rules:{disabled:u},render:function(e){var i=e.field;i.onChange,i.onBlur;var u=i.value;return d.createElement(r,s,d.createElement(n,{control:d.createElement(o,{checked:Boolean(u),onChange:function(e){return t.setValue(l,e.target.checked)},inputProps:{"aria-label":a}}),label:a}))}})},C=function(e){var r=e.label,n=void 0===r?"":r,o=e.color,l=void 0===o?"white":o,a=e.backgroundColor,i=void 0===a?"#888888":a,u=e.paddingX,c=void 0===u?"10px":u,s=e.paddingY,f=void 0===s?"5px":s,v=e.borderRadius,m=void 0===v?"10px":v,b=e.fontSize,p=void 0===b?"14px":b,g=e.width,h={text:{display:"inline-block",textAlign:"center",backgroundColor:i,paddingX:c,paddingY:f,borderRadius:m,width:void 0===g?"auto":g,color:l,fontSize:p}};return d.createElement(t,{sx:h.text},n)},w=["form","name","label","selectionWidth","pickerWidth","selectionTextColor","paddingY","paddingX","required","disabled"],B=function(e){var r=e.form,n=e.name,o=void 0===n?"color":n,u=e.label,b=void 0===u?"Επιλογή Χρώματος":u,p=e.selectionWidth,g=void 0===p?70:p,h=e.pickerWidth,x=void 0===h?350:h,y=e.selectionTextColor,E=void 0===y?"white":y,O=e.paddingY,q=void 0===O?"10px":O,B=e.paddingX,S=void 0===B?"10px":B,T=e.required,j=void 0!==T&&T,k=e.disabled,W=void 0!==k&&k,A=v(e,w),L=m(d.useState(null),2),P=L[0],I=L[1],X=Boolean(P),Y=X?"color-picker":void 0,F=r.control;return d.createElement(c,{name:o,control:F,rules:{disabled:W},render:function(e){var r=e.field,n=r.onChange;r.onBlur;var o=r.value;return d.createElement(l,f({gap:1},A),d.createElement(t,null,"".concat(b," ").concat(j?"*":"")),d.createElement(a,{sx:{display:"flex"}},d.createElement(a,{"aria-describedby":Y,sx:{cursor:"pointer"},onClick:function(e){return I(e.currentTarget)}},d.createElement(C,{color:E,backgroundColor:o,paddingY:q,paddingX:S,width:g,label:o}))),d.createElement(i,{sx:{marginTop:"10px"},id:Y,open:X,anchorEl:P,onClose:function(){return I(null)},anchorOrigin:{vertical:"bottom",horizontal:"left"}},d.createElement(a,null,d.createElement(s,{width:x,color:o,onChange:function(e){return n(e.hex)}}))))}})},S=["form","name","label","required","disabled","options","valueKey","labelKey","maxLength","autofocus","noOptionsText"],T=function(r){var n=r.form,o=r.name,t=r.label,l=r.required,a=void 0!==l&&l,i=r.disabled,s=void 0!==i&&i,b=r.options,p=void 0===b?[]:b,g=r.valueKey,h=void 0===g?"id":g;r.labelKey;var x=r.maxLength,y=void 0===x?255:x,E=r.autofocus,O=void 0!==E&&E,q=r.noOptionsText,C=void 0===q?"Δεν υπάρχουν επιλογές":q,w=v(r,S),B=m(d.useState(null),2),T=B[0],j=B[1],k=n.watch(o);d.useEffect((function(){j(p.find((function(e){return e[h]===k}))||null)}),[k]);var W=n.control,A=n.formState.errors;return d.createElement(c,{name:o,control:W,rules:{required:a,disabled:s},render:function(r){var n=r.field,l=n.onChange,i=n.onBlur;return n.value,d.createElement(u,{value:T,required:a,onChange:function(e,r){return l(r?r[h]:null)},options:p,isOptionEqualToValue:function(e,r){return e[h]===r[h]},noOptionsText:C,renderInput:function(r){var n,l;return d.createElement(e,f({label:t,required:a,disabled:s,autoFocus:O,inputProps:{maxLength:y},error:Boolean(null===(n=A[o])||void 0===n?void 0:n.message),onBlur:i,variant:"outlined",fullWidth:!0,helperText:null===(l=A[o])||void 0===l?void 0:l.message},r,w))}})}})};export{T as MyAutocompleteField,B as MyColorPickerField,E as MyEmailField,x as MyPasswordField,q as MySwitchField,g as MyTextField};
1
+ import{TextField as e,FormGroup as t,FormControlLabel as r,Switch as n,Typography as o,Stack as i,Box as a,Popover as l,Autocomplete as u}from"@mui/material";import c from"react";import{Controller as d}from"react-hook-form";import{ChromePicker as s}from"react-color";import f from"axios";import"date-fns";import"date-fns/locale";function v(){v=function(){return t};var e,t={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(e,t,r){e[t]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",l=i.asyncIterator||"@@asyncIterator",u=i.toStringTag||"@@toStringTag";function c(e,t,r){return Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,r){return e[t]=r}}function d(e,t,r,n){var i=t&&t.prototype instanceof y?t:y,a=Object.create(i.prototype),l=new B(n||[]);return o(a,"_invoke",{value:q(e,r,l)}),a}function s(e,t,r){try{return{type:"normal",arg:e.call(t,r)}}catch(e){return{type:"throw",arg:e}}}t.wrap=d;var f="suspendedStart",h="suspendedYield",p="executing",m="completed",g={};function y(){}function b(){}function x(){}var w={};c(w,a,(function(){return this}));var E=Object.getPrototypeOf,O=E&&E(E(P([])));O&&O!==r&&n.call(O,a)&&(w=O);var L=x.prototype=y.prototype=Object.create(w);function T(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function S(e,t){function r(o,i,a,l){var u=s(e[o],e,i);if("throw"!==u.type){var c=u.arg,d=c.value;return d&&"object"==typeof d&&n.call(d,"__await")?t.resolve(d.__await).then((function(e){r("next",e,a,l)}),(function(e){r("throw",e,a,l)})):t.resolve(d).then((function(e){c.value=e,a(c)}),(function(e){return r("throw",e,a,l)}))}l(u.arg)}var i;o(this,"_invoke",{value:function(e,n){function o(){return new t((function(t,o){r(e,n,t,o)}))}return i=i?i.then(o,o):o()}})}function q(t,r,n){var o=f;return function(i,a){if(o===p)throw new Error("Generator is already running");if(o===m){if("throw"===i)throw a;return{value:e,done:!0}}for(n.method=i,n.arg=a;;){var l=n.delegate;if(l){var u=j(l,n);if(u){if(u===g)continue;return u}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===f)throw o=m,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=p;var c=s(t,r,n);if("normal"===c.type){if(o=n.done?m:h,c.arg===g)continue;return{value:c.arg,done:n.done}}"throw"===c.type&&(o=m,n.method="throw",n.arg=c.arg)}}}function j(t,r){var n=r.method,o=t.iterator[n];if(o===e)return r.delegate=null,"throw"===n&&t.iterator.return&&(r.method="return",r.arg=e,j(t,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),g;var i=s(o,t.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,g;var a=i.arg;return a?a.done?(r[t.resultName]=a.value,r.next=t.nextLoc,"return"!==r.method&&(r.method="next",r.arg=e),r.delegate=null,g):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,g)}function k(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function C(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function B(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(k,this),this.reset(!0)}function P(t){if(t||""===t){var r=t[a];if(r)return r.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var o=-1,i=function r(){for(;++o<t.length;)if(n.call(t,o))return r.value=t[o],r.done=!1,r;return r.value=e,r.done=!0,r};return i.next=i}}throw new TypeError(typeof t+" is not iterable")}return b.prototype=x,o(L,"constructor",{value:x,configurable:!0}),o(x,"constructor",{value:b,configurable:!0}),b.displayName=c(x,u,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===b||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,x):(e.__proto__=x,c(e,u,"GeneratorFunction")),e.prototype=Object.create(L),e},t.awrap=function(e){return{__await:e}},T(S.prototype),c(S.prototype,l,(function(){return this})),t.AsyncIterator=S,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new S(d(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(e){return e.done?e.value:a.next()}))},T(L),c(L,u,"Generator"),c(L,a,(function(){return this})),c(L,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),r=[];for(var n in t)r.push(n);return r.reverse(),function e(){for(;r.length;){var n=r.pop();if(n in t)return e.value=n,e.done=!1,e}return e.done=!0,e}},t.values=P,B.prototype={constructor:B,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(C),!t)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var r=this;function o(n,o){return l.type="throw",l.arg=t,r.next=n,o&&(r.method="next",r.arg=e),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],l=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var u=n.call(a,"catchLoc"),c=n.call(a,"finallyLoc");if(u&&c){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!c)throw new Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===e||"continue"===e)&&i.tryLoc<=t&&t<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=e,a.arg=t,i?(this.method="next",this.next=i.finallyLoc,g):this.complete(a)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),g},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.finallyLoc===e)return this.complete(r.completion,r.afterLoc),C(r),g}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var r=this.tryEntries[t];if(r.tryLoc===e){var n=r.completion;if("throw"===n.type){var o=n.arg;C(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,r,n){return this.delegate={iterator:P(t),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=e),g}},t}function h(e,t,r,n,o,i,a){try{var l=e[i](a),u=l.value}catch(e){return void r(e)}l.done?t(u):Promise.resolve(u).then(n,o)}function p(e){return function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(e){h(i,n,o,a,l,"next",e)}function l(e){h(i,n,o,a,l,"throw",e)}a(void 0)}))}}function m(){return m=Object.assign?Object.assign.bind():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},m.apply(this,arguments)}function g(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function y(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,i,a,l=[],u=!0,c=!1;try{if(i=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(l.push(n.value),l.length!==t);u=!0);}catch(e){c=!0,o=e}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(c)throw o}}return l}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return b(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);"Object"===r&&e.constructor&&(r=e.constructor.name);if("Map"===r||"Set"===r)return Array.from(e);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return b(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}var x=["form","name","label","maxLength","required","disabled","autofocus"],w=function(t){var r=t.form,n=t.name,o=t.label,i=t.maxLength,a=void 0===i?255:i,l=t.required,u=void 0!==l&&l,s=t.disabled,f=void 0!==s&&s,v=t.autofocus,h=void 0!==v&&v,p=g(t,x),y=r.control,b=r.formState.errors;return c.createElement(d,{name:n,control:y,rules:{required:u,disabled:f},render:function(t){var r,i,l=t.field,d=l.onChange,s=l.onBlur,v=l.value;return c.createElement(e,m({required:u,label:o,value:v,onChange:d,onBlur:s,error:Boolean(null===(r=b[n])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(i=b[n])||void 0===i?void 0:i.message,variant:"outlined",disabled:f,autoFocus:h,inputProps:{maxLength:a}},p))}})},E=["form","name","label","required","disabled","autofocus"],O=function(t){var r=t.form,n=t.name,o=void 0===n?"password":n,i=t.label,a=void 0===i?"Κωδικός Πρόσβασης":i,l=t.required,u=void 0===l||l,s=t.disabled,f=void 0!==s&&s,v=t.autofocus,h=void 0!==v&&v,p=g(t,E),y=r.control,b=r.formState.errors;return c.createElement(d,{name:o,control:y,rules:{required:u,disabled:f},render:function(t){var r,n,i=t.field,l=i.onChange,d=i.onBlur,s=i.value;return c.createElement(e,m({required:u,label:a,value:s,onChange:l,onBlur:d,error:Boolean(null===(r=b[o])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(n=b[o])||void 0===n?void 0:n.message,variant:"outlined",disabled:f,autoFocus:h,type:"password"},p))}})},L=["form","name","label","required","disabled","autofocus"],T=function(t){var r=t.form,n=t.name,o=void 0===n?"email":n,i=t.label,a=void 0===i?"E-mail":i,l=t.required,u=void 0===l||l,s=t.disabled,f=void 0!==s&&s,v=t.autofocus,h=void 0!==v&&v,p=g(t,L),y=r.control,b=r.formState.errors;return c.createElement(d,{name:o,control:y,rules:{required:u,disabled:f},render:function(t){var r,n,i=t.field,l=i.onChange,d=i.onBlur,s=i.value;return c.createElement(e,m({required:u,label:a,value:s,onChange:l,onBlur:d,error:Boolean(null===(r=b[o])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(n=b[o])||void 0===n?void 0:n.message,variant:"outlined",disabled:f,autoFocus:h},p))}})},S=["form","name","label","disabled"],q=function(e){var o=e.form,i=e.name,a=e.label,l=e.disabled,u=void 0!==l&&l,s=g(e,S),f=o.control;return c.createElement(d,{name:i,control:f,rules:{disabled:u},render:function(e){var l=e.field;l.onChange,l.onBlur;var u=l.value;return c.createElement(t,s,c.createElement(r,{control:c.createElement(n,{checked:Boolean(u),onChange:function(e){return o.setValue(i,e.target.checked)},inputProps:{"aria-label":a}}),label:a}))}})},j=function(e){var t=e.label,r=void 0===t?"":t,n=e.color,i=void 0===n?"white":n,a=e.backgroundColor,l=void 0===a?"#888888":a,u=e.paddingX,d=void 0===u?"10px":u,s=e.paddingY,f=void 0===s?"5px":s,v=e.borderRadius,h=void 0===v?"10px":v,p=e.fontSize,m=void 0===p?"14px":p,g=e.width,y={text:{display:"inline-block",textAlign:"center",backgroundColor:l,paddingX:d,paddingY:f,borderRadius:h,width:void 0===g?"auto":g,color:i,fontSize:m}};return c.createElement(o,{sx:y.text},r)},k=["form","name","label","selectionWidth","pickerWidth","selectionTextColor","paddingY","paddingX","required","disabled"],C=function(e){var t=e.form,r=e.name,n=void 0===r?"color":r,u=e.label,f=void 0===u?"Επιλογή Χρώματος":u,v=e.selectionWidth,h=void 0===v?70:v,p=e.pickerWidth,b=void 0===p?350:p,x=e.selectionTextColor,w=void 0===x?"white":x,E=e.paddingY,O=void 0===E?"10px":E,L=e.paddingX,T=void 0===L?"10px":L,S=e.required,q=void 0!==S&&S,C=e.disabled,B=void 0!==C&&C,P=g(e,k),_=y(c.useState(null),2),A=_[0],F=_[1],I=Boolean(A),W=I?"color-picker":void 0,G=t.control;return c.createElement(d,{name:n,control:G,rules:{disabled:B},render:function(e){var t=e.field,r=t.onChange;t.onBlur;var n=t.value;return c.createElement(i,m({gap:1},P),c.createElement(o,null,"".concat(f," ").concat(q?"*":"")),c.createElement(a,{sx:{display:"flex"}},c.createElement(a,{"aria-describedby":W,sx:{cursor:"pointer"},onClick:function(e){return F(e.currentTarget)}},c.createElement(j,{color:w,backgroundColor:n,paddingY:O,paddingX:T,width:h,label:n}))),c.createElement(l,{sx:{marginTop:"10px"},id:W,open:I,anchorEl:A,onClose:function(){return F(null)},anchorOrigin:{vertical:"bottom",horizontal:"left"}},c.createElement(a,null,c.createElement(s,{width:b,color:n,onChange:function(e){return r(e.hex)}}))))}})},B=["form","name","label","required","disabled","options","valueKey","labelKey","maxLength","autofocus","noOptionsText"],P=function(t){var r=t.form,n=t.name,o=t.label,i=t.required,a=void 0!==i&&i,l=t.disabled,s=void 0!==l&&l,f=t.options,v=void 0===f?[]:f,h=t.valueKey,p=void 0===h?"id":h;t.labelKey;var b=t.maxLength,x=void 0===b?255:b,w=t.autofocus,E=void 0!==w&&w,O=t.noOptionsText,L=void 0===O?"Δεν υπάρχουν επιλογές":O,T=g(t,B),S=y(c.useState(null),2),q=S[0],j=S[1],k=r.watch(n);c.useEffect((function(){j(v.find((function(e){return e[p]===k}))||null)}),[k]);var C=r.control,P=r.formState.errors;return c.createElement(d,{name:n,control:C,rules:{required:a,disabled:s},render:function(t){var r=t.field,i=r.onChange,l=r.onBlur;return r.value,c.createElement(u,{value:q,required:a,onChange:function(e,t){return i(t?t[p]:null)},options:v,isOptionEqualToValue:function(e,t){return e[p]===t[p]},noOptionsText:L,renderInput:function(t){var r,i;return c.createElement(e,m({label:o,required:a,disabled:s,autoFocus:E,inputProps:{maxLength:x},error:Boolean(null===(r=P[n])||void 0===r?void 0:r.message),onBlur:l,variant:"outlined",fullWidth:!0,helperText:null===(i=P[n])||void 0===i?void 0:i.message},t,T))}})}})},_=["form","name","label","optionsUrl","valueKey","labelKey","minChars","required","disabled","maxLength","autofocus","loadingText","noOptionsText","placeholder","size"],A=function(t){var r=t.form,n=t.name,o=t.label,i=t.optionsUrl,a=t.valueKey,l=void 0===a?"id":a,s=t.labelKey,h=void 0===s?"label":s,b=t.minChars,x=void 0===b?2:b,w=t.required,E=void 0!==w&&w,O=t.disabled,L=void 0!==O&&O,T=t.maxLength,S=void 0===T?255:T,q=t.autofocus,j=void 0!==q&&q,k=t.loadingText,C=void 0===k?"Ανάκτηση...":k,B=t.noOptionsText,P=void 0===B?"Δεν υπάρχουν επιλογές":B,A=t.placeholder,F=void 0===A?"":A,I=t.size,W=void 0===I?"medium":I,G=g(t,_),K=y(c.useState(null),2),N=K[0],z=K[1],Y=y(c.useState([]),2),V=Y[0],X=Y[1],U=y(c.useState(!1),2),R=U[0],M=U[1],$=y(c.useState(""),2),D=$[0],H=$[1],J=r.watch(n),Q=r.control,Z=r.formState;r.setValue,r.getValues;var ee=Z.errors;c.useState((function(){if(console.log(V.length,J),0===V.length&&J){var e=function(){var e=p(v().mark((function e(){var t;return v().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return M(!0),e.next=3,f.get("".concat(i,"?id=").concat(J));case 3:t=e.sent,X(t.data),z(t.data.find((function(e){return e[l]===J}))||null),M(!1);case 7:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();e()}}),[]),c.useEffect((function(){z(V.find((function(e){return e[l]===J}))||null)}),[J]),c.useEffect((function(){re()}),[D]);var te=function(e,t){H(t)},re=function(){var e=p(v().mark((function e(){var t;return v().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(D.length<x)){e.next=4;break}return X([]),M(!1),e.abrupt("return");case 4:return M(!0),e.next=7,f.get("".concat(i,"?token=").concat(D));case 7:t=e.sent,X(t.data),M(!1);case 10:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}();return c.createElement(d,{name:n,control:Q,rules:{required:E,disabled:L},render:function(t){var r,i,a,d=t.field,s=d.onChange,f=d.onBlur;return d.value,c.createElement(u,{value:N,options:V,onInputChange:(r=te,i=300,function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];a&&clearTimeout(a),a=setTimeout((function(){r.apply(void 0,t)}),i)}),onChange:function(e,t){return s(t?t[l]:null)},isOptionEqualToValue:function(e,t){return e[l]===t[l]},getOptionLabel:function(e){return e[h]},filterOptions:function(e){return e},noOptionsText:P,loadingText:C,loading:R,required:E,size:W,renderInput:function(t){var r,i;return c.createElement(e,m({label:o,required:E,disabled:L,autoFocus:j,placeholder:F,inputProps:{maxLength:S},error:Boolean(null===(r=ee[n])||void 0===r?void 0:r.message),onBlur:f,variant:"outlined",fullWidth:!0,helperText:null===(i=ee[n])||void 0===i?void 0:i.message,size:W},t,G))},renderOption:function(e,t,r){return c.createElement("li",m({},e,{key:t[l]}),t[h])}})}})};export{A as MyAutocompleteApiField,P as MyAutocompleteField,C as MyColorPickerField,T as MyEmailField,O as MyPasswordField,q as MySwitchField,w as MyTextField};
package/modals/index.js CHANGED
@@ -1 +1 @@
1
- import e from"react";import{TextField as t,Typography as n,Autocomplete as r,Dialog as o,DialogTitle as l,DialogContent as a,DialogActions as i,Button as u,Stack as d,DialogContentText as c}from"@mui/material";import{Controller as s,useForm as m}from"react-hook-form";import{yupResolver as f}from"@hookform/resolvers/yup";import*as v from"yup";import{ChromePicker as p}from"react-color";function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},b.apply(this,arguments)}function h(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},l=Object.keys(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,a,i=[],u=!0,d=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){d=!0,o=e}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(d)throw o}}return i}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var y=["form","name","label","maxLength","required","disabled","autofocus"],x=function(n){var r=n.form,o=n.name,l=n.label,a=n.maxLength,i=void 0===a?255:a,u=n.required,d=void 0!==u&&u,c=n.disabled,m=void 0!==c&&c,f=n.autofocus,v=void 0!==f&&f,p=h(n,y),E=r.control,g=r.formState.errors;return e.createElement(s,{name:o,control:E,rules:{required:d,disabled:m},render:function(n){var r,a,u=n.field,c=u.onChange,s=u.onBlur,f=u.value;return e.createElement(t,b({required:d,label:l,value:f,onChange:c,onBlur:s,error:Boolean(null===(r=g[o])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(a=g[o])||void 0===a?void 0:a.message,variant:"outlined",disabled:m,autoFocus:v,inputProps:{maxLength:i}},p))}})},C=["form","name","label","required","disabled","autofocus"],q=function(n){var r=n.form,o=n.name,l=void 0===o?"email":o,a=n.label,i=void 0===a?"E-mail":a,u=n.required,d=void 0===u||u,c=n.disabled,m=void 0!==c&&c,f=n.autofocus,v=void 0!==f&&f,p=h(n,C),E=r.control,g=r.formState.errors;return e.createElement(s,{name:l,control:E,rules:{required:d,disabled:m},render:function(n){var r,o,a=n.field,u=a.onChange,c=a.onBlur,s=a.value;return e.createElement(t,b({required:d,label:i,value:s,onChange:u,onBlur:c,error:Boolean(null===(r=g[l])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(o=g[l])||void 0===o?void 0:o.message,variant:"outlined",disabled:m,autoFocus:v},p))}})},w=function(t){var r=t.label,o=void 0===r?"":r,l=t.color,a=void 0===l?"white":l,i=t.backgroundColor,u=void 0===i?"#888888":i,d=t.paddingX,c=void 0===d?"10px":d,s=t.paddingY,m=void 0===s?"5px":s,f=t.borderRadius,v=void 0===f?"10px":f,p=t.fontSize,b=void 0===p?"14px":p,h=t.width,E={text:{display:"inline-block",textAlign:"center",backgroundColor:u,paddingX:c,paddingY:m,borderRadius:v,width:void 0===h?"auto":h,color:a,fontSize:b}};return e.createElement(n,{sx:E.text},o)},S=["form","name","label","required","disabled","options","valueKey","labelKey","maxLength","autofocus","noOptionsText"],k=function(n){var o=n.form,l=n.name,a=n.label,i=n.required,u=void 0!==i&&i,d=n.disabled,c=void 0!==d&&d,m=n.options,f=void 0===m?[]:m,v=n.valueKey,p=void 0===v?"id":v;n.labelKey;var g=n.maxLength,y=void 0===g?255:g,x=n.autofocus,C=void 0!==x&&x,q=n.noOptionsText,w=void 0===q?"Δεν υπάρχουν επιλογές":q,k=h(n,S),O=E(e.useState(null),2),T=O[0],L=O[1],j=o.watch(l);e.useEffect((function(){L(f.find((function(e){return e[p]===j}))||null)}),[j]);var B=o.control,K=o.formState.errors;return e.createElement(s,{name:l,control:B,rules:{required:u,disabled:c},render:function(n){var o=n.field,i=o.onChange,d=o.onBlur;return o.value,e.createElement(r,{value:T,required:u,onChange:function(e,t){return i(t?t[p]:null)},options:f,isOptionEqualToValue:function(e,t){return e[p]===t[p]},noOptionsText:w,renderInput:function(n){var r,o;return e.createElement(t,b({label:a,required:u,disabled:c,autoFocus:C,inputProps:{maxLength:y},error:Boolean(null===(r=K[l])||void 0===r?void 0:r.message),onBlur:d,variant:"outlined",fullWidth:!0,helperText:null===(o=K[l])||void 0===o?void 0:o.message},n,k))}})}})},O=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.width,h=void 0===b?500:b,E=t.required,g=void 0===E||E,y=t.requiredMessage,C=void 0===y?"Υποχρεωτικό πεδίο":y,q=t.okLabel,w=void 0===q?"ΚΑΤΑΧΩΡΗΣΗ":q,S=t.cancelLabel,k=void 0===S?"ΑΚΥΡΩΣΗ":S,O=t.maxLength,T=void 0===O?255:O,L={textField:c||""},j=v.object({textField:g?v.string().max(T,"Παρακαλώ πληκτρολογείστε μέχρι ".concat(T," χαρακτήρες")).required(C):v.string().max(T)}),B=m({defaultValues:L,resolver:f(j)});return e.useEffect((function(){n&&(B.clearErrors(),B.setValue("textField",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),B.handleSubmit(s)())},disableRestoreFocus:!0},e.createElement(l,null,r),e.createElement(a,null,e.createElement(x,{form:B,name:"textField",label:d,required:g,autofocus:!0,maxLength:T,sx:{width:h,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:B.handleSubmit(s)},w),e.createElement(u,{color:"error",onClick:function(){return p()}},k)))},T=/^$|^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,L=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.width,h=void 0===b?500:b,E=t.required,g=void 0===E||E,y=t.requiredMessage,x=void 0===y?"Υποχρεωτικό πεδίο":y,C=t.okLabel,w=void 0===C?"ΚΑΤΑΧΩΡΗΣΗ":C,S=t.cancelLabel,k=void 0===S?"ΑΚΥΡΩΣΗ":S,O=t.maxLength,L=void 0===O?255:O,j={email:c||""},B=v.object({email:g?v.string().matches(T,"Μη έγκυρη μορφή Email").required(x):v.string().matches(T,"Μη έγκυρη μορφή Email")}),K=m({defaultValues:j,resolver:f(B)});return e.useEffect((function(){n&&(K.clearErrors(),K.setValue("email",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),K.handleSubmit(s)())},disableRestoreFocus:!0},e.createElement(l,null,r),e.createElement(a,null,e.createElement(q,{form:K,label:d,required:g,autofocus:!0,maxLength:L,sx:{width:h,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:K.handleSubmit(s)},w),e.createElement(u,{color:"error",onClick:function(){return p()}},k)))};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}(".chrome-picker {\r\n -webkit-box-shadow: none !important;\r\n -moz-box-shadow: none !important;\r\n box-shadow: none !important;\r\n}");var j=function(t){var n=t.open,r=t.onSubmit,c=t.onCancel,s=t.title,m=void 0===s?"Επιλογή Χρώματος":s,f=t.color,v=void 0===f?"#000000":f,b=t.pickerWidth,h=void 0===b?350:b,g=t.selectionTextColor,y=void 0===g?"white":g,x=t.paddingY,C=void 0===x?"10px":x,q=t.paddingX,S=void 0===q?"10px":q,k=t.okLabel,O=void 0===k?"ΚΑΤΑΧΩΡΗΣΗ":k,T=t.cancelLabel,L=void 0===T?"ΑΚΥΡΩΣΗ":T,j=E(e.useState("#000000"),2),B=j[0],K=j[1];e.useEffect((function(){n&&K(v)}),[n,v]);return e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),form.handleSubmit(r)())}},e.createElement(l,null,m),e.createElement(a,null,e.createElement(d,{gap:2},e.createElement(w,{color:y,backgroundColor:B,paddingX:S,paddingY:C,label:B}),e.createElement(p,{width:h,color:B,onChange:function(e){return K(e.hex)}}))),e.createElement(i,null,e.createElement(u,{color:"success",onClick:function(){return r(B)}},O),e.createElement(u,{color:"error",onClick:function(){return c()}},L)))},B=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.options,h=void 0===b?[]:b,E=t.valueKey,g=void 0===E?"id":E,y=t.labelKey,x=void 0===y?"label":y,C=t.required,q=void 0===C||C,w=t.width,S=void 0===w?500:w,O=t.requiredMessage,T=void 0===O?"Υποχρεωτικό πεδίο":O,L=t.okLabel,j=void 0===L?"ΚΑΤΑΧΩΡΗΣΗ":L,B=t.cancelLabel,K=void 0===B?"ΑΚΥΡΩΣΗ":B,A={field:c||null},V=v.object({field:q?v.string().required(T):v.string().nullable()}),D=m({defaultValues:A,resolver:f(V)});return e.useEffect((function(){n&&(D.clearErrors(),D.setValue("field",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){}},e.createElement(l,null,r),e.createElement(a,null,e.createElement(k,{form:D,name:"field",label:d,options:h,valueKey:g,labelKey:x,required:q,autofocus:!0,sx:{width:S,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:D.handleSubmit(s)},j),e.createElement(u,{color:"error",onClick:function(){return p()}},K)))},K=function(t){var n=t.open,r=t.title,d=t.message,s=t.onConfirm,m=t.onCancel,f=t.confirmText,v=void 0===f?"ΕΠΙΒΕΒΑΙΩΣΗ":f,p=t.cancelText,b=void 0===p?"ΑΚΥΡΩΣΗ":p;return e.createElement(o,{open:n,onClose:function(){}},e.createElement(l,null,r),e.createElement(a,null,e.createElement(c,null,d)),e.createElement(i,null,e.createElement(u,{color:"success",onClick:s},v),e.createElement(u,{color:"error",onClick:m},b)))};export{B as AutocompleteModalForm,K as ConfirmationDialog,L as EmailModalForm,j as PickColorModalForm,O as TextModalForm};
1
+ import e from"react";import{TextField as t,Typography as n,Autocomplete as r,Dialog as o,DialogTitle as l,DialogContent as a,DialogActions as i,Button as u,Stack as d,DialogContentText as c}from"@mui/material";import{Controller as s,useForm as m}from"react-hook-form";import{yupResolver as f}from"@hookform/resolvers/yup";import*as v from"yup";import{ChromePicker as p}from"react-color";import"axios";import"date-fns";import"date-fns/locale";function b(){return b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},b.apply(this,arguments)}function h(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},l=Object.keys(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,a,i=[],u=!0,d=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;u=!1}else for(;!(u=(r=l.call(n)).done)&&(i.push(r.value),i.length!==t);u=!0);}catch(e){d=!0,o=e}finally{try{if(!u&&null!=n.return&&(a=n.return(),Object(a)!==a))return}finally{if(d)throw o}}return i}}(e,t)||function(e,t){if(!e)return;if("string"==typeof e)return g(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return g(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var x=["form","name","label","maxLength","required","disabled","autofocus"],y=function(n){var r=n.form,o=n.name,l=n.label,a=n.maxLength,i=void 0===a?255:a,u=n.required,d=void 0!==u&&u,c=n.disabled,m=void 0!==c&&c,f=n.autofocus,v=void 0!==f&&f,p=h(n,x),E=r.control,g=r.formState.errors;return e.createElement(s,{name:o,control:E,rules:{required:d,disabled:m},render:function(n){var r,a,u=n.field,c=u.onChange,s=u.onBlur,f=u.value;return e.createElement(t,b({required:d,label:l,value:f,onChange:c,onBlur:s,error:Boolean(null===(r=g[o])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(a=g[o])||void 0===a?void 0:a.message,variant:"outlined",disabled:m,autoFocus:v,inputProps:{maxLength:i}},p))}})},C=["form","name","label","required","disabled","autofocus"],q=function(n){var r=n.form,o=n.name,l=void 0===o?"email":o,a=n.label,i=void 0===a?"E-mail":a,u=n.required,d=void 0===u||u,c=n.disabled,m=void 0!==c&&c,f=n.autofocus,v=void 0!==f&&f,p=h(n,C),E=r.control,g=r.formState.errors;return e.createElement(s,{name:l,control:E,rules:{required:d,disabled:m},render:function(n){var r,o,a=n.field,u=a.onChange,c=a.onBlur,s=a.value;return e.createElement(t,b({required:d,label:i,value:s,onChange:u,onBlur:c,error:Boolean(null===(r=g[l])||void 0===r?void 0:r.message),fullWidth:!0,helperText:null===(o=g[l])||void 0===o?void 0:o.message,variant:"outlined",disabled:m,autoFocus:v},p))}})},w=function(t){var r=t.label,o=void 0===r?"":r,l=t.color,a=void 0===l?"white":l,i=t.backgroundColor,u=void 0===i?"#888888":i,d=t.paddingX,c=void 0===d?"10px":d,s=t.paddingY,m=void 0===s?"5px":s,f=t.borderRadius,v=void 0===f?"10px":f,p=t.fontSize,b=void 0===p?"14px":p,h=t.width,E={text:{display:"inline-block",textAlign:"center",backgroundColor:u,paddingX:c,paddingY:m,borderRadius:v,width:void 0===h?"auto":h,color:a,fontSize:b}};return e.createElement(n,{sx:E.text},o)},S=["form","name","label","required","disabled","options","valueKey","labelKey","maxLength","autofocus","noOptionsText"],k=function(n){var o=n.form,l=n.name,a=n.label,i=n.required,u=void 0!==i&&i,d=n.disabled,c=void 0!==d&&d,m=n.options,f=void 0===m?[]:m,v=n.valueKey,p=void 0===v?"id":v;n.labelKey;var g=n.maxLength,x=void 0===g?255:g,y=n.autofocus,C=void 0!==y&&y,q=n.noOptionsText,w=void 0===q?"Δεν υπάρχουν επιλογές":q,k=h(n,S),O=E(e.useState(null),2),T=O[0],L=O[1],j=o.watch(l);e.useEffect((function(){L(f.find((function(e){return e[p]===j}))||null)}),[j]);var B=o.control,K=o.formState.errors;return e.createElement(s,{name:l,control:B,rules:{required:u,disabled:c},render:function(n){var o=n.field,i=o.onChange,d=o.onBlur;return o.value,e.createElement(r,{value:T,required:u,onChange:function(e,t){return i(t?t[p]:null)},options:f,isOptionEqualToValue:function(e,t){return e[p]===t[p]},noOptionsText:w,renderInput:function(n){var r,o;return e.createElement(t,b({label:a,required:u,disabled:c,autoFocus:C,inputProps:{maxLength:x},error:Boolean(null===(r=K[l])||void 0===r?void 0:r.message),onBlur:d,variant:"outlined",fullWidth:!0,helperText:null===(o=K[l])||void 0===o?void 0:o.message},n,k))}})}})},O=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.width,h=void 0===b?500:b,E=t.required,g=void 0===E||E,x=t.requiredMessage,C=void 0===x?"Υποχρεωτικό πεδίο":x,q=t.okLabel,w=void 0===q?"ΚΑΤΑΧΩΡΗΣΗ":q,S=t.cancelLabel,k=void 0===S?"ΑΚΥΡΩΣΗ":S,O=t.maxLength,T=void 0===O?255:O,L={textField:c||""},j=v.object({textField:g?v.string().max(T,"Παρακαλώ πληκτρολογείστε μέχρι ".concat(T," χαρακτήρες")).required(C):v.string().max(T)}),B=m({defaultValues:L,resolver:f(j)});return e.useEffect((function(){n&&(B.clearErrors(),B.setValue("textField",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),B.handleSubmit(s)())},disableRestoreFocus:!0},e.createElement(l,null,r),e.createElement(a,null,e.createElement(y,{form:B,name:"textField",label:d,required:g,autofocus:!0,maxLength:T,sx:{width:h,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:B.handleSubmit(s)},w),e.createElement(u,{color:"error",onClick:function(){return p()}},k)))},T=/^$|^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,L=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.width,h=void 0===b?500:b,E=t.required,g=void 0===E||E,x=t.requiredMessage,y=void 0===x?"Υποχρεωτικό πεδίο":x,C=t.okLabel,w=void 0===C?"ΚΑΤΑΧΩΡΗΣΗ":C,S=t.cancelLabel,k=void 0===S?"ΑΚΥΡΩΣΗ":S,O=t.maxLength,L=void 0===O?255:O,j={email:c||""},B=v.object({email:g?v.string().matches(T,"Μη έγκυρη μορφή Email").required(y):v.string().matches(T,"Μη έγκυρη μορφή Email")}),K=m({defaultValues:j,resolver:f(B)});return e.useEffect((function(){n&&(K.clearErrors(),K.setValue("email",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),K.handleSubmit(s)())},disableRestoreFocus:!0},e.createElement(l,null,r),e.createElement(a,null,e.createElement(q,{form:K,label:d,required:g,autofocus:!0,maxLength:L,sx:{width:h,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:K.handleSubmit(s)},w),e.createElement(u,{color:"error",onClick:function(){return p()}},k)))};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}(".chrome-picker {\r\n -webkit-box-shadow: none !important;\r\n -moz-box-shadow: none !important;\r\n box-shadow: none !important;\r\n}");var j=function(t){var n=t.open,r=t.onSubmit,c=t.onCancel,s=t.title,m=void 0===s?"Επιλογή Χρώματος":s,f=t.color,v=void 0===f?"#000000":f,b=t.pickerWidth,h=void 0===b?350:b,g=t.selectionTextColor,x=void 0===g?"white":g,y=t.paddingY,C=void 0===y?"10px":y,q=t.paddingX,S=void 0===q?"10px":q,k=t.okLabel,O=void 0===k?"ΚΑΤΑΧΩΡΗΣΗ":k,T=t.cancelLabel,L=void 0===T?"ΑΚΥΡΩΣΗ":T,j=E(e.useState("#000000"),2),B=j[0],K=j[1];e.useEffect((function(){n&&K(v)}),[n,v]);return e.createElement(o,{open:n,onClose:function(){},onKeyDown:function(e){"Enter"!==e.code&&"NumpadEnter"!==e.code||(e.preventDefault(),form.handleSubmit(r)())}},e.createElement(l,null,m),e.createElement(a,null,e.createElement(d,{gap:2},e.createElement(w,{color:x,backgroundColor:B,paddingX:S,paddingY:C,label:B}),e.createElement(p,{width:h,color:B,onChange:function(e){return K(e.hex)}}))),e.createElement(i,null,e.createElement(u,{color:"success",onClick:function(){return r(B)}},O),e.createElement(u,{color:"error",onClick:function(){return c()}},L)))},B=function(t){var n=t.open,r=t.title,d=t.label,c=t.value,s=t.onSubmit,p=t.onCancel,b=t.options,h=void 0===b?[]:b,E=t.valueKey,g=void 0===E?"id":E,x=t.labelKey,y=void 0===x?"label":x,C=t.required,q=void 0===C||C,w=t.width,S=void 0===w?500:w,O=t.requiredMessage,T=void 0===O?"Υποχρεωτικό πεδίο":O,L=t.okLabel,j=void 0===L?"ΚΑΤΑΧΩΡΗΣΗ":L,B=t.cancelLabel,K=void 0===B?"ΑΚΥΡΩΣΗ":B,A={field:c||null},V=v.object({field:q?v.string().required(T):v.string().nullable()}),D=m({defaultValues:A,resolver:f(V)});return e.useEffect((function(){n&&(D.clearErrors(),D.setValue("field",c,{shouldValidate:!1,shouldDirty:!1,shouldTouch:!1}))}),[n,c]),e.createElement(o,{open:n,onClose:function(){}},e.createElement(l,null,r),e.createElement(a,null,e.createElement(k,{form:D,name:"field",label:d,options:h,valueKey:g,labelKey:y,required:q,autofocus:!0,sx:{width:S,marginTop:2}})),e.createElement(i,null,e.createElement(u,{color:"success",onClick:D.handleSubmit(s)},j),e.createElement(u,{color:"error",onClick:function(){return p()}},K)))},K=function(t){var n=t.open,r=t.title,d=t.message,s=t.onConfirm,m=t.onCancel,f=t.confirmText,v=void 0===f?"ΕΠΙΒΕΒΑΙΩΣΗ":f,p=t.cancelText,b=void 0===p?"ΑΚΥΡΩΣΗ":p;return e.createElement(o,{open:n,onClose:function(){}},e.createElement(l,null,r),e.createElement(a,null,e.createElement(c,null,d)),e.createElement(i,null,e.createElement(u,{color:"success",onClick:s},v),e.createElement(u,{color:"error",onClick:m},b)))};export{B as AutocompleteModalForm,K as ConfirmationDialog,L as EmailModalForm,j as PickColorModalForm,O as TextModalForm};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@artibet/react-mui-components",
3
- "version": "2.4.0",
3
+ "version": "2.4.2",
4
4
  "description": "Various react components build with mui library",
5
5
  "main": "./core/index.js",
6
6
  "scripts": {
package/tables/index.js CHANGED
@@ -1 +1 @@
1
- import{TextField as e,InputAdornment as t,IconButton as n,Typography as r,Tooltip as o,Button as l,Box as i,Select as a,MenuItem as c,Autocomplete as u,TableRow as s,TableCell as f,TableContainer as d,Table as p,TableHead as m,TableBody as g,TablePagination as v}from"@mui/material";import b from"react";import{MdClear as y,MdOutlineAdd as h}from"react-icons/md";import"date-fns";import"date-fns/locale";import C from"nprogress";import{TiArrowSortedUp as E,TiArrowSortedDown as S,TiArrowUnsorted as w}from"react-icons/ti";import x from"react-input-mask";import k from"axios";function F(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?F(Object(n),!0).forEach((function(t){I(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):F(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function I(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(){return P=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},P.apply(this,arguments)}function j(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},l=Object.keys(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function A(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],c=!0,u=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw o}}return a}}(e,t)||T(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(e){return function(e){if(Array.isArray(e))return K(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||T(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){if(e){if("string"==typeof e)return K(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?K(e,t):void 0}}function K(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var R=function(r){var o=r.initialValue,l=r.onChange,i=r.placeholder,a=void 0===i?"":i,c=r.activeColor,u=void 0===c?"#D4F7F4":c,s=r.inactiveColor,f=void 0===s?"white":s,d=r.clearIcon,p=void 0===d||d,m=A(b.useState(o),2),g=m[0],v=m[1];b.useEffect((function(){v(o)}),[o]);return b.createElement(e,{sx:{backgroundColor:g?u:f},placeholder:a,value:g||"",fullWidth:!0,onChange:function(e){v(e.target.value),l(e.target.value)},size:"small",InputProps:{endAdornment:p&&b.createElement(t,{position:"end",disablePointerEvents:!g},b.createElement(n,{onClick:function(){return l("")}},g?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))}})},D=b.createContext(),B=function(e,t){var n;return function(){for(var r=arguments.length,o=new Array(r),l=0;l<r;l++)o[l]=arguments[l];n&&clearTimeout(n),n=setTimeout((function(){e.apply(void 0,o)}),t)}},V=function(){var e=b.useContext(D),t=e.state,n=e.props,r=e.api;return n.enableGlobalFilter?b.createElement(R,{initialValue:t.globalFilter,onChange:B(r.handleGlobalFilterChange,300),placeholder:n.globalFilterPlaceholder}):null};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}("#nprogress {\r\n pointer-events: none;\r\n}\r\n\r\n#nprogress .bar {\r\n background: #29d;\r\n position: fixed;\r\n z-index: 99999;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n}\r\n\r\n/* Fancy blur effect */\r\n#nprogress .peg {\r\n display: block;\r\n position: absolute;\r\n right: 0px;\r\n width: 100px;\r\n height: 100%;\r\n box-shadow: 0 0 10px #29d, 0 0 5px #29d;\r\n opacity: 1.0;\r\n -webkit-transform: rotate(3deg) translate(0px, -4px);\r\n -ms-transform: rotate(3deg) translate(0px, -4px);\r\n transform: rotate(3deg) translate(0px, -4px);\r\n}\r\n\r\n/* Remove these to get rid of the spinner */\r\n#nprogress .spinner {\r\n display: block;\r\n position: fixed;\r\n z-index: 1031;\r\n top: 15px;\r\n right: 15px;\r\n}\r\n\r\n#nprogress .spinner-icon {\r\n width: 18px;\r\n height: 18px;\r\n box-sizing: border-box;\r\n border: solid 2px transparent;\r\n border-top-color: #29d;\r\n border-left-color: #29d;\r\n border-radius: 50%;\r\n -webkit-animation: nprogress-spinner 400ms linear infinite;\r\n animation: nprogress-spinner 400ms linear infinite;\r\n}\r\n\r\n.nprogress-custom-parent {\r\n overflow: hidden;\r\n position: relative;\r\n}\r\n\r\n.nprogress-custom-parent #nprogress .spinner,\r\n.nprogress-custom-parent #nprogress .bar {\r\n position: absolute;\r\n}\r\n\r\n@-webkit-keyframes nprogress-spinner {\r\n 0% {\r\n -webkit-transform: rotate(0deg);\r\n }\r\n\r\n 100% {\r\n -webkit-transform: rotate(360deg);\r\n }\r\n}\r\n\r\n@keyframes nprogress-spinner {\r\n 0% {\r\n transform: rotate(0deg);\r\n }\r\n\r\n 100% {\r\n transform: rotate(360deg);\r\n }\r\n}");var M=function(){var e=b.useContext(D).props;return b.createElement(r,{variant:"h5",sx:e.titleStyle},e.title)},N=function(){var e=b.useContext(D).props;return e.enableCreateRow?b.createElement(o,{title:e.createButtonTooltip,arrow:!0,placement:"top"},b.createElement(l,{variant:e.createButtonVariant,color:"success",onClick:function(){return e.onCreateRow()}},b.createElement(h,{size:24}))):null},L=function(){var e=b.useContext(D).props;return e.globalActions?b.createElement(b.Fragment,null,e.globalActions.map((function(e,t){return b.createElement(i,{key:t},e)}))):null},G=function(e){var t,n=e.column;b.useContext(D).props;var r=b.useContext(D).api;return b.createElement(b.Fragment,null,b.createElement(i,{sx:{dispaly:"flex",flexDirection:"column",justifyContent:"start",alignItems:"start"}},b.createElement(i,{sx:{display:"flex",flexDirection:"row",gap:.5,aligntItems:"center",cursor:n.enableSorting?"pointer":"default"},onClick:n.enableSorting?function(e){return r.toggleSorting(e,n)}:null},b.createElement(i,null,n.label),b.createElement(i,null,n.enableSorting?null!==(t={asc:b.createElement(E,{size:20}),desc:b.createElement(S,{size:20})}[r.getSortingStatus(n)])&&void 0!==t?t:b.createElement(w,{size:20,color:"#cccccc"}):null))))},J=function(r){var o=r.initialValue,l=r.mask,i=void 0===l?"999999":l,a=r.onChange,c=r.placeholder,u=void 0===c?"":c,s=r.activeColor,f=void 0===s?"#D4F7F4":s,d=r.inactiveColor,p=void 0===d?"white":d,m=r.clearIcon,g=void 0===m||m,v=A(b.useState(o),2),h=v[0],C=v[1];b.useEffect((function(){C(o)}),[o]);return b.createElement(x,{mask:i,value:h,onChange:function(e){C((function(t){return t===e.target.value?t:(a(e.target.value),e.target.value)}))},maskChar:""},(function(){return b.createElement(e,{sx:{backgroundColor:h?f:p},placeholder:u,fullWidth:!0,size:"small",InputProps:{endAdornment:g&&b.createElement(t,{position:"end",disablePointerEvents:!h},b.createElement(n,{onClick:function(){return a("")}},h?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))}})}))},W=function(e){var r=e.value,o=e.options,l=e.onChange,i=e.valueKey,u=void 0===i?"id":i,s=e.labelKey,f=void 0===s?"label":s,d=e.placeholder,p=void 0===d?"":d,m=e.activeColor,g=void 0===m?"#D4F7F4":m,v=e.inactiveColor,h=void 0===v?"white":v,C=e.clearIcon,E=void 0===C||C,S=A(b.useState(-1),2),w=S[0],x=S[1];b.useEffect((function(){x(null===r||""===r?-1:r)}),[r]);return b.createElement(a,{sx:{backgroundColor:-1!==w?g:h,color:-1==w?"#cccccc":""},value:w,fullWidth:!0,onChange:function(e){var t=e.target.value;l(-1!==t?t:"")},size:"small",endAdornment:E&&b.createElement(t,{position:"end",disablePointerEvents:null===r},b.createElement(n,{onClick:function(){return l("")}},-1!==w?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))},b.createElement(c,{value:-1},p),o.map((function(e){return b.createElement(c,{key:e[u],value:e[u]},e[f])})))},U=["value","options","valueKey","labelKey","onChange","placeholder","activeColor","inactiveColor"],_=function(t){var n=t.value,r=t.options,o=void 0===r?[]:r,l=t.valueKey,i=void 0===l?"id":l;t.labelKey;var a=t.onChange,c=t.placeholder,s=void 0===c?"":c,f=t.activeColor,d=void 0===f?"#D4F7F4":f,p=t.inactiveColor,m=void 0===p?"white":p,g=j(t,U),v=A(b.useState(null),2),y=v[0],h=v[1];return b.useEffect((function(){h(o.find((function(e){return e[i]===n}))||null)}),[n]),b.createElement(u,{value:y,onChange:function(e,t){return a(t?t[i]:null)},options:o,isOptionEqualToValue:function(e,t){return e[i]===t[i]},noOptionsText:"Δεν υπάρχουν επιλογές",size:"small",renderInput:function(t){return b.createElement(e,P({variant:"outlined",fullWidth:!0,placeholder:s,sx:{backgroundColor:null!==y?d:m,color:-1==y?"#cccccc":""},size:"small"},t,g))}})},q=function(e){var t=e.column,n=b.useContext(D),r=n.api,o=n.props,l=r.getColumnFilter(t);return"text"===t.filterType?b.createElement(R,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,initialValue:l,onChange:B((function(e){return r.handleColumnFilterChange(t,e)}),300),placeholder:t.filterPlaceholder}):"integer"===t.filterType?b.createElement(J,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,initialValue:l,mask:t.filterMask,onChange:B((function(e){return r.handleColumnFilterChange(t,e)}),300),placeholder:t.filterPlaceholder}):"autocomplete"===t.filterType?b.createElement(_,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,value:l,valueKey:t.filterValueKey,labelKey:t.filterLabelKey,onChange:function(e){return r.handleColumnFilterChange(t,e)},placeholder:t.filterPlaceholder,options:t.filterOptions}):"select"===t.filterType?b.createElement(W,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,value:l,onChange:function(e){return r.handleColumnFilterChange(t,e)},placeholder:t.filterPlaceholder,options:t.filterOptions}):null},$=function(){var e=b.useContext(D),t=e.props,n=e.state;return b.createElement(b.Fragment,null,b.createElement(s,null,n.columns.map((function(e){return b.createElement(f,{key:e.id,width:e.width},b.createElement(G,{column:e}))})),t.rowActions.length>0&&b.createElement(f,null)),t.enableColumnFilters&&b.createElement(s,null,n.columns.map((function(e){return b.createElement(f,{key:e.id},e.enableFilter?b.createElement(q,{column:e}):null)})),t.rowActions.length>0&&b.createElement(f,null)))},H=function(e){var t=e.row,n=b.useContext(D).props;return n.rowActions?b.createElement(f,null,b.createElement(i,{sx:{display:"flex",justifyContent:"flex-end",alignItems:"center"}},n.rowActions.map((function(e,n){return b.createElement(i,{key:n},e(t))})))):null},Q=function(e){var t=e.row,n=b.useContext(D),r=n.props,o=n.state,l=A(b.useState({}),2),i=l[0],a=l[1],c=A(b.useState({}),2),u=c[0],d=c[1];return b.useEffect((function(){r.rowStyle&&a(r.rowStyle(t)),r.cellStyle&&d(r.cellStyle(t))}),[t]),b.createElement(s,{hover:r.rowsClickable,sx:O({cursor:r.rowsClickable?"pointer":"default"},i),onClick:function(){return r.onRowClick&&r.onRowClick(t)}},o.columns.map((function(e){return b.createElement(f,{key:e.id,sx:O({},u)},e.render?e.render(t):t[e.id])})),r.rowActions.length>0&&b.createElement(H,{row:t}))},X={id:"",label:"",enableSorting:!0,enableFilter:!0,filterType:"text",filterValueKey:"id",filterLabelKey:"label",filterMark:"999999",filterPlaceholder:"Αναζήτηση",filterOptions:[],style:null,width:"",render:null},Y={data:[],page:0,page_size:10,total:0},Z=function(e){var t=e.title,n=e.titleStyle,r=void 0===n?{}:n,o=e.rowStyle,l=void 0===o?null:o,a=e.cellStyle,c=void 0===a?null:a,u=e.tableSize,s=void 0===u?"medium":u,f=e.columns,y=e.dataUrl,h=e.enableGlobalFilter,E=void 0!==h&&h,S=e.enableColumnFilters,w=void 0!==S&&S,x=e.globalFilterPlaceholder,F=void 0===x?"Καθολική Αναζήτηση":x,I=e.enableCreateRow,P=void 0!==I&&I,j=e.createButtonVariant,T=void 0===j?"contained":j,K=e.createButtonTooltip,R=void 0===K?"Νέα Εγγραφή":K,B=e.onCreateRow,G=void 0===B?null:B,J=e.rowsClickable,W=void 0!==J&&J,U=e.onRowClick,_=void 0===U?null:U,q=e.globalActions,H=void 0===q?[]:q,Z=e.rowActions,ee=void 0===Z?[]:Z,te=e.keepState,ne=void 0===te||te,re=e.stateKey,oe=void 0===re?null:re,le=e.filterActiveColor,ie=void 0===le?"#D4F7F4":le,ae=e.filterInactiveColor,ce=void 0===ae?"white":ae,ue=e.defaultSorting,se=void 0===ue?[]:ue,fe=b.useMemo((function(){return!(!ne||!oe)&&"".concat(oe,".pageIndex")}),[]),de=b.useMemo((function(){return!(!ne||!oe)&&"".concat(oe,".pageSize")}),[]),pe=b.useMemo((function(){return!(!ne||!oe)&&"".concat(oe,".sorting")}),[]),me=b.useMemo((function(){return!(!ne||!oe)&&"".concat(oe,".globalFilter")}),[]),ge=b.useMemo((function(){return!(!ne||!oe)&&"".concat(oe,".columnFilters")}),[]),ve=b.useMemo((function(){return f.map((function(e){return O(O({},X),e)}))})),be=A(b.useState(Y),2),ye=be[0],he=be[1],Ce=A(b.useState(pe&&JSON.parse(sessionStorage.getItem(pe))||se),2),Ee=Ce[0],Se=Ce[1],we=A(b.useState(me&&sessionStorage.getItem(me)||""),2),xe=we[0],ke=we[1],Fe=A(b.useState(ge&&JSON.parse(sessionStorage.getItem(ge))||[]),2),Oe=Fe[0],Ie=Fe[1],Pe=A(b.useState(fe&&parseInt(sessionStorage.getItem(fe))||0),2),je=Pe[0],Ae=Pe[1],ze=A(b.useState(de&&parseInt(sessionStorage.getItem(de))||10),2),Te=ze[0],Ke=ze[1],Re=function(){var e=A(b.useState(!1),2),t=e[0],n=e[1];return{loader:t,startLoader:function(){n(!0),C.start()},stopLoader:function(){n(!1),C.done()}}}(),De=Re.startLoader,Be=Re.stopLoader,Ve=function(e,t,n,r,o){De(),k.get("".concat(y,"?page=").concat(e+1,"&pageSize=").concat(t,"&sorting=").concat(JSON.stringify(n),"&globalFilter=").concat(r,"&columnFilters=").concat(JSON.stringify(o))).then((function(e){he(e.data),Be()})).catch((function(e){console.log(e.message),Be()}))},Me={props:{title:t,titleStyle:r,rowStyle:l,cellStyle:c,tableSize:s,columns:f,dataUrl:y,enableGlobalFilter:E,enableColumnFilters:w,globalFilterPlaceholder:F,enableCreateRow:P,createButtonVariant:T,createButtonTooltip:R,onCreateRow:G,rowsClickable:W,onRowClick:_,globalActions:H,rowActions:ee,keepState:ne,stateKey:oe,filterActiveColor:ie,filterInactiveColor:ce,defaultSorting:se},state:{data:ye,columns:ve,setData:he,sorting:Ee,setSorting:Se,globalFilter:xe,setGlobalFilter:ke,columnFilters:Oe,setColumnFilters:Ie,pageIndex:je,setPageIndex:Ae,pageSize:Te,setPageSize:Ke},api:{toggleSorting:function(e,t){Se((function(n){var r=n.find((function(e){return e.id===t.id})),o=[];r?o=!r.desc?e.altKey?[].concat(z(n.filter((function(e){return e.id!==t.id}))),[{id:t.id,desc:!0}]):[{id:t.id,desc:!0}]:e.altKey?z(n.filter((function(e){return e.id!==t.id}))):[]:o=e.altKey?[].concat(z(n),[{id:t.id,desc:!1}]):[{id:t.id,desc:!1}];return Ae(0),Ve(0,Te,o,xe,Oe),o}))},getSortingStatus:function(e){var t=Ee.find((function(t){return t.id===e.id}));return t?t.desc?"desc":"asc":null},handleGlobalFilterChange:function(e){ke(e),Ae(0),Ve(0,Te,Ee,e,Oe)},getColumnFilter:function(e){var t=Oe.find((function(t){return t.id===e.id}));return t?t.value:""},handleColumnFilterChange:function(e,t){Ie((function(n){var r=[];return r=n.find((function(t){return t.id===e.id}))?t?[].concat(z(n.filter((function(t){return t.id!==e.id}))),[{id:e.id,value:t}]):z(n.filter((function(t){return t.id!==e.id}))):[].concat(z(n),[{id:e.id,value:t}]),Ae(0),Ve(0,Te,Ee,xe,r),r}))}}};return b.useEffect((function(){Ve(je,Te,Ee,xe,Oe)}),[]),b.useEffect((function(){fe&&sessionStorage.setItem(fe,je)}),[je]),b.useEffect((function(){de&&sessionStorage.setItem(de,Te)}),[Te]),b.useEffect((function(){pe&&sessionStorage.setItem(pe,JSON.stringify(Ee))}),[Ee]),b.useEffect((function(){me&&sessionStorage.setItem(me,xe)}),[xe]),b.useEffect((function(){ge&&sessionStorage.setItem(ge,JSON.stringify(Oe))}),[Oe]),b.createElement(b.Fragment,null,b.createElement(D.Provider,{value:Me},b.createElement(i,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:1}},b.createElement(M,null),b.createElement(i,{sx:{display:"flex",gap:2,justifyContent:"end",alignItems:"center"}},b.createElement(V,null),b.createElement(N,null),b.createElement(L,null))),b.createElement(d,null,b.createElement(p,{size:s},b.createElement(m,null,b.createElement($,null)),b.createElement(g,null,ye.data.map((function(e){return b.createElement(Q,{key:e.id,row:e})})))))),b.createElement(v,{sx:{marginTop:1,overflow:"hidden"},component:"div",showFirstButton:!0,showLastButton:!0,count:parseInt(ye.total),page:0!=ye.page?ye.page-1:0,rowsPerPage:ye.page_size,onPageChange:function(e,t){return Ae(n=t),void Ve(n,Te,Ee,xe,Oe);var n},onRowsPerPageChange:function(e){return t=e.target.value,Ke(t),Ae(0),void Ve(0,t,Ee,xe,Oe);var t},labelDisplayedRows:function(e){return"".concat(e.from," έως ").concat(e.to," από ").concat(e.count)},labelRowsPerPage:"Εγγραφές ανά σελίδα"}))};export{Z as ServerSideTable};
1
+ import{TextField as e,InputAdornment as t,IconButton as n,Typography as r,Tooltip as o,Button as l,Box as i,Select as a,MenuItem as c,Autocomplete as u,TableRow as s,TableCell as f,TableContainer as d,Table as m,TableHead as p,TableBody as g,TablePagination as v}from"@mui/material";import b from"react";import{MdClear as y,MdOutlineAdd as h}from"react-icons/md";import"date-fns";import"date-fns/locale";import C from"nprogress";import{TiArrowSortedUp as E,TiArrowSortedDown as S,TiArrowUnsorted as w}from"react-icons/ti";import x from"react-input-mask";import k from"axios";function F(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function O(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?F(Object(n),!0).forEach((function(t){I(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):F(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function I(e,t,n){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function P(){return P=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},P.apply(this,arguments)}function j(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},l=Object.keys(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(r=0;r<l.length;r++)n=l[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}function A(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,l,i,a=[],c=!0,u=!1;try{if(l=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=l.call(n)).done)&&(a.push(r.value),a.length!==t);c=!0);}catch(e){u=!0,o=e}finally{try{if(!c&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(u)throw o}}return a}}(e,t)||T(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function z(e){return function(e){if(Array.isArray(e))return K(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||T(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function T(e,t){if(e){if("string"==typeof e)return K(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?K(e,t):void 0}}function K(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var R=function(r){var o=r.initialValue,l=r.onChange,i=r.placeholder,a=void 0===i?"":i,c=r.activeColor,u=void 0===c?"#D4F7F4":c,s=r.inactiveColor,f=void 0===s?"white":s,d=r.clearIcon,m=void 0===d||d,p=A(b.useState(o),2),g=p[0],v=p[1];b.useEffect((function(){v(o)}),[o]);return b.createElement(e,{sx:{backgroundColor:g?u:f},placeholder:a,value:g||"",fullWidth:!0,onChange:function(e){v(e.target.value),l(e.target.value)},size:"small",InputProps:{endAdornment:m&&b.createElement(t,{position:"end",disablePointerEvents:!g},b.createElement(n,{onClick:function(){return l("")}},g?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))}})},D=b.createContext(),B=function(e,t){var n;return function(){for(var r=arguments.length,o=new Array(r),l=0;l<r;l++)o[l]=arguments[l];n&&clearTimeout(n),n=setTimeout((function(){e.apply(void 0,o)}),t)}},V=function(){var e=b.useContext(D),t=e.state,n=e.props,r=e.api;return n.enableGlobalFilter?b.createElement(R,{initialValue:t.globalFilter,onChange:B(r.handleGlobalFilterChange,300),placeholder:n.globalFilterPlaceholder}):null};!function(e,t){void 0===t&&(t={});var n=t.insertAt;if(e&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===n&&r.firstChild?r.insertBefore(o,r.firstChild):r.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}("#nprogress {\r\n pointer-events: none;\r\n}\r\n\r\n#nprogress .bar {\r\n background: #29d;\r\n position: fixed;\r\n z-index: 99999;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 4px;\r\n}\r\n\r\n/* Fancy blur effect */\r\n#nprogress .peg {\r\n display: block;\r\n position: absolute;\r\n right: 0px;\r\n width: 100px;\r\n height: 100%;\r\n box-shadow: 0 0 10px #29d, 0 0 5px #29d;\r\n opacity: 1.0;\r\n -webkit-transform: rotate(3deg) translate(0px, -4px);\r\n -ms-transform: rotate(3deg) translate(0px, -4px);\r\n transform: rotate(3deg) translate(0px, -4px);\r\n}\r\n\r\n/* Remove these to get rid of the spinner */\r\n#nprogress .spinner {\r\n display: block;\r\n position: fixed;\r\n z-index: 1031;\r\n top: 15px;\r\n right: 15px;\r\n}\r\n\r\n#nprogress .spinner-icon {\r\n width: 18px;\r\n height: 18px;\r\n box-sizing: border-box;\r\n border: solid 2px transparent;\r\n border-top-color: #29d;\r\n border-left-color: #29d;\r\n border-radius: 50%;\r\n -webkit-animation: nprogress-spinner 400ms linear infinite;\r\n animation: nprogress-spinner 400ms linear infinite;\r\n}\r\n\r\n.nprogress-custom-parent {\r\n overflow: hidden;\r\n position: relative;\r\n}\r\n\r\n.nprogress-custom-parent #nprogress .spinner,\r\n.nprogress-custom-parent #nprogress .bar {\r\n position: absolute;\r\n}\r\n\r\n@-webkit-keyframes nprogress-spinner {\r\n 0% {\r\n -webkit-transform: rotate(0deg);\r\n }\r\n\r\n 100% {\r\n -webkit-transform: rotate(360deg);\r\n }\r\n}\r\n\r\n@keyframes nprogress-spinner {\r\n 0% {\r\n transform: rotate(0deg);\r\n }\r\n\r\n 100% {\r\n transform: rotate(360deg);\r\n }\r\n}");var M=function(){var e=b.useContext(D).props;return b.createElement(r,{variant:"h5",sx:e.titleStyle},e.title)},N=function(){var e=b.useContext(D).props;return e.enableCreateRow?b.createElement(o,{title:e.createButtonTooltip,arrow:!0,placement:"top"},b.createElement(l,{variant:e.createButtonVariant,onClick:function(){return e.onCreateRow()}},b.createElement(h,{size:24}))):null},L=function(){var e=b.useContext(D).props;return e.globalActions?b.createElement(b.Fragment,null,e.globalActions.map((function(e,t){return b.createElement(i,{key:t},e)}))):null},G=function(e){var t,n=e.column;b.useContext(D).props;var r=b.useContext(D).api;return b.createElement(b.Fragment,null,b.createElement(i,{sx:{dispaly:"flex",flexDirection:"column",justifyContent:"start",alignItems:"start"}},b.createElement(i,{sx:{display:"flex",flexDirection:"row",gap:.5,aligntItems:"center",cursor:n.enableSorting?"pointer":"default"},onClick:n.enableSorting?function(e){return r.toggleSorting(e,n)}:null},b.createElement(i,null,n.label),b.createElement(i,null,n.enableSorting?null!==(t={asc:b.createElement(E,{size:20}),desc:b.createElement(S,{size:20})}[r.getSortingStatus(n)])&&void 0!==t?t:b.createElement(w,{size:20,color:"#cccccc"}):null))))},J=function(r){var o=r.initialValue,l=r.mask,i=void 0===l?"999999":l,a=r.onChange,c=r.placeholder,u=void 0===c?"":c,s=r.activeColor,f=void 0===s?"#D4F7F4":s,d=r.inactiveColor,m=void 0===d?"white":d,p=r.clearIcon,g=void 0===p||p,v=A(b.useState(o),2),h=v[0],C=v[1];b.useEffect((function(){C(o)}),[o]);return b.createElement(x,{mask:i,value:h,onChange:function(e){C((function(t){return t===e.target.value?t:(a(e.target.value),e.target.value)}))},maskChar:""},(function(){return b.createElement(e,{sx:{backgroundColor:h?f:m},placeholder:u,fullWidth:!0,size:"small",InputProps:{endAdornment:g&&b.createElement(t,{position:"end",disablePointerEvents:!h},b.createElement(n,{onClick:function(){return a("")}},h?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))}})}))},W=function(e){var r=e.value,o=e.options,l=e.onChange,i=e.valueKey,u=void 0===i?"id":i,s=e.labelKey,f=void 0===s?"label":s,d=e.placeholder,m=void 0===d?"":d,p=e.activeColor,g=void 0===p?"#D4F7F4":p,v=e.inactiveColor,h=void 0===v?"white":v,C=e.clearIcon,E=void 0===C||C,S=A(b.useState(-1),2),w=S[0],x=S[1];b.useEffect((function(){x(null===r||""===r?-1:r)}),[r]);return b.createElement(a,{sx:{backgroundColor:-1!==w?g:h,color:-1==w?"#cccccc":""},value:w,fullWidth:!0,onChange:function(e){var t=e.target.value;l(-1!==t?t:"")},size:"small",endAdornment:E&&b.createElement(t,{position:"end",disablePointerEvents:null===r},b.createElement(n,{onClick:function(){return l("")}},-1!==w?b.createElement(y,null):b.createElement(y,{color:"#cccccc"})))},b.createElement(c,{value:-1},m),o.map((function(e){return b.createElement(c,{key:e[u],value:e[u]},e[f])})))},U=["value","options","valueKey","labelKey","onChange","placeholder","activeColor","inactiveColor"],Q=function(t){var n=t.value,r=t.options,o=void 0===r?[]:r,l=t.valueKey,i=void 0===l?"id":l;t.labelKey;var a=t.onChange,c=t.placeholder,s=void 0===c?"":c,f=t.activeColor,d=void 0===f?"#D4F7F4":f,m=t.inactiveColor,p=void 0===m?"white":m,g=j(t,U),v=A(b.useState(null),2),y=v[0],h=v[1];return b.useEffect((function(){h(o.find((function(e){return e[i]===n}))||null)}),[n]),b.createElement(u,{value:y,onChange:function(e,t){return a(t?t[i]:null)},options:o,isOptionEqualToValue:function(e,t){return e[i]===t[i]},noOptionsText:"Δεν υπάρχουν επιλογές",size:"small",renderInput:function(t){return b.createElement(e,P({variant:"outlined",fullWidth:!0,placeholder:s,sx:{backgroundColor:null!==y?d:p,color:-1==y?"#cccccc":""},size:"small"},t,g))}})},_=function(e){var t=e.column,n=b.useContext(D),r=n.api,o=n.props,l=r.getColumnFilter(t);return"text"===t.filterType?b.createElement(R,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,initialValue:l,onChange:B((function(e){return r.handleColumnFilterChange(t,e)}),300),placeholder:t.filterPlaceholder}):"integer"===t.filterType?b.createElement(J,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,initialValue:l,mask:t.filterMask,onChange:B((function(e){return r.handleColumnFilterChange(t,e)}),300),placeholder:t.filterPlaceholder}):"autocomplete"===t.filterType?b.createElement(Q,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,value:l,valueKey:t.filterValueKey,labelKey:t.filterLabelKey,onChange:function(e){return r.handleColumnFilterChange(t,e)},placeholder:t.filterPlaceholder,options:t.filterOptions}):"select"===t.filterType?b.createElement(W,{activeColor:o.filterActiveColor,inactiveColor:o.filterInactiveColor,value:l,onChange:function(e){return r.handleColumnFilterChange(t,e)},placeholder:t.filterPlaceholder,options:t.filterOptions}):null},q=function(){var e=b.useContext(D),t=e.props,n=e.state;return b.createElement(b.Fragment,null,b.createElement(s,null,n.columns.map((function(e){return b.createElement(f,{key:e.id,width:e.width},b.createElement(G,{column:e}))})),t.rowActions.length>0&&b.createElement(f,null)),t.enableColumnFilters&&b.createElement(s,null,n.columns.map((function(e){return b.createElement(f,{key:e.id},e.enableFilter?b.createElement(_,{column:e}):null)})),t.rowActions.length>0&&b.createElement(f,null)))},$=function(e){var t=e.row,n=b.useContext(D).props;return n.rowActions?b.createElement(f,null,b.createElement(i,{sx:{display:"flex",justifyContent:"flex-end",alignItems:"center"}},n.rowActions.map((function(e,n){return b.createElement(i,{key:n},e(t))})))):null},H=function(e){var t=e.row,n=b.useContext(D),r=n.props,o=n.state,l=A(b.useState({}),2),i=l[0],a=l[1],c=A(b.useState({}),2),u=c[0],d=c[1];return b.useEffect((function(){r.rowStyle&&a(r.rowStyle(t)),r.cellStyle&&d(r.cellStyle(t))}),[t]),b.createElement(s,{hover:r.rowsClickable,sx:O({cursor:r.rowsClickable?"pointer":"default"},i),onClick:function(){return r.onRowClick&&r.onRowClick(t)}},o.columns.map((function(e){return b.createElement(f,{key:e.id,sx:O({},u)},e.render?e.render(t):t[e.id])})),r.rowActions.length>0&&b.createElement($,{row:t}))},X={id:"",label:"",enableSorting:!0,enableFilter:!0,filterType:"text",filterValueKey:"id",filterLabelKey:"label",filterMark:"999999",filterPlaceholder:"Αναζήτηση",filterOptions:[],style:null,width:"",render:null},Y={data:[],page:0,page_size:10,total:0},Z=function(e){var t=e.title,n=e.titleStyle,r=void 0===n?{}:n,o=e.rowStyle,l=void 0===o?null:o,a=e.cellStyle,c=void 0===a?null:a,u=e.tableSize,s=void 0===u?"medium":u,f=e.columns,y=e.dataUrl,h=e.hasQueryParams,E=void 0!==h&&h,S=e.enableGlobalFilter,w=void 0!==S&&S,x=e.enableColumnFilters,F=void 0!==x&&x,I=e.globalFilterPlaceholder,P=void 0===I?"Καθολική Αναζήτηση":I,j=e.enableCreateRow,T=void 0!==j&&j,K=e.createButtonVariant,R=void 0===K?"contained":K,B=e.createButtonTooltip,G=void 0===B?"Νέα Εγγραφή":B,J=e.onCreateRow,W=void 0===J?null:J,U=e.rowsClickable,Q=void 0!==U&&U,_=e.onRowClick,$=void 0===_?null:_,Z=e.globalActions,ee=void 0===Z?[]:Z,te=e.rowActions,ne=void 0===te?[]:te,re=e.keepState,oe=void 0===re||re,le=e.stateKey,ie=void 0===le?null:le,ae=e.filterActiveColor,ce=void 0===ae?"#D4F7F4":ae,ue=e.filterInactiveColor,se=void 0===ue?"white":ue,fe=e.defaultSorting,de=void 0===fe?[]:fe,me=b.useMemo((function(){return!(!oe||!ie)&&"".concat(ie,".pageIndex")}),[]),pe=b.useMemo((function(){return!(!oe||!ie)&&"".concat(ie,".pageSize")}),[]),ge=b.useMemo((function(){return!(!oe||!ie)&&"".concat(ie,".sorting")}),[]),ve=b.useMemo((function(){return!(!oe||!ie)&&"".concat(ie,".globalFilter")}),[]),be=b.useMemo((function(){return!(!oe||!ie)&&"".concat(ie,".columnFilters")}),[]),ye=b.useMemo((function(){return f.map((function(e){return O(O({},X),e)}))})),he=A(b.useState(Y),2),Ce=he[0],Ee=he[1],Se=A(b.useState(ge&&JSON.parse(sessionStorage.getItem(ge))||de),2),we=Se[0],xe=Se[1],ke=A(b.useState(ve&&sessionStorage.getItem(ve)||""),2),Fe=ke[0],Oe=ke[1],Ie=A(b.useState(be&&JSON.parse(sessionStorage.getItem(be))||[]),2),Pe=Ie[0],je=Ie[1],Ae=A(b.useState(me&&parseInt(sessionStorage.getItem(me))||0),2),ze=Ae[0],Te=Ae[1],Ke=A(b.useState(pe&&parseInt(sessionStorage.getItem(pe))||10),2),Re=Ke[0],De=Ke[1],Be=function(){var e=A(b.useState(!1),2),t=e[0],n=e[1];return{loader:t,startLoader:function(){n(!0),C.start()},stopLoader:function(){n(!1),C.done()}}}(),Ve=Be.startLoader,Me=Be.stopLoader,Ne=function(e,t,n,r,o){Ve();var l=E?"&":"?";k.get("".concat(y).concat(l,"page=").concat(e+1,"&pageSize=").concat(t,"&sorting=").concat(JSON.stringify(n),"&globalFilter=").concat(r,"&columnFilters=").concat(JSON.stringify(o))).then((function(e){Ee(e.data),Me()})).catch((function(e){console.log(e.message),Me()}))},Le={props:{title:t,titleStyle:r,rowStyle:l,cellStyle:c,tableSize:s,columns:f,dataUrl:y,hasQueryParams:E,enableGlobalFilter:w,enableColumnFilters:F,globalFilterPlaceholder:P,enableCreateRow:T,createButtonVariant:R,createButtonTooltip:G,onCreateRow:W,rowsClickable:Q,onRowClick:$,globalActions:ee,rowActions:ne,keepState:oe,stateKey:ie,filterActiveColor:ce,filterInactiveColor:se,defaultSorting:de},state:{data:Ce,columns:ye,setData:Ee,sorting:we,setSorting:xe,globalFilter:Fe,setGlobalFilter:Oe,columnFilters:Pe,setColumnFilters:je,pageIndex:ze,setPageIndex:Te,pageSize:Re,setPageSize:De},api:{toggleSorting:function(e,t){xe((function(n){var r=n.find((function(e){return e.id===t.id})),o=[];r?o=!r.desc?e.altKey?[].concat(z(n.filter((function(e){return e.id!==t.id}))),[{id:t.id,desc:!0}]):[{id:t.id,desc:!0}]:e.altKey?z(n.filter((function(e){return e.id!==t.id}))):[]:o=e.altKey?[].concat(z(n),[{id:t.id,desc:!1}]):[{id:t.id,desc:!1}];return Te(0),Ne(0,Re,o,Fe,Pe),o}))},getSortingStatus:function(e){var t=we.find((function(t){return t.id===e.id}));return t?t.desc?"desc":"asc":null},handleGlobalFilterChange:function(e){Oe(e),Te(0),Ne(0,Re,we,e,Pe)},getColumnFilter:function(e){var t=Pe.find((function(t){return t.id===e.id}));return t?t.value:""},handleColumnFilterChange:function(e,t){je((function(n){var r=[];return r=n.find((function(t){return t.id===e.id}))?t?[].concat(z(n.filter((function(t){return t.id!==e.id}))),[{id:e.id,value:t}]):z(n.filter((function(t){return t.id!==e.id}))):[].concat(z(n),[{id:e.id,value:t}]),Te(0),Ne(0,Re,we,Fe,r),r}))}}};return b.useEffect((function(){Ne(ze,Re,we,Fe,Pe)}),[]),b.useEffect((function(){me&&sessionStorage.setItem(me,ze)}),[ze]),b.useEffect((function(){pe&&sessionStorage.setItem(pe,Re)}),[Re]),b.useEffect((function(){ge&&sessionStorage.setItem(ge,JSON.stringify(we))}),[we]),b.useEffect((function(){ve&&sessionStorage.setItem(ve,Fe)}),[Fe]),b.useEffect((function(){be&&sessionStorage.setItem(be,JSON.stringify(Pe))}),[Pe]),b.createElement(b.Fragment,null,b.createElement(D.Provider,{value:Le},b.createElement(i,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:1}},b.createElement(M,null),b.createElement(i,{sx:{display:"flex",gap:2,justifyContent:"end",alignItems:"center"}},b.createElement(V,null),b.createElement(N,null),b.createElement(L,null))),b.createElement(d,null,b.createElement(m,{size:s},b.createElement(p,null,b.createElement(q,null)),b.createElement(g,null,Ce.data.map((function(e){return b.createElement(H,{key:e.id,row:e})})))))),b.createElement(v,{sx:{marginTop:1,overflow:"hidden"},component:"div",showFirstButton:!0,showLastButton:!0,count:parseInt(Ce.total),page:0!=Ce.page?Ce.page-1:0,rowsPerPage:Ce.page_size,onPageChange:function(e,t){return Te(n=t),void Ne(n,Re,we,Fe,Pe);var n},onRowsPerPageChange:function(e){return t=e.target.value,De(t),Te(0),void Ne(0,t,we,Fe,Pe);var t},labelDisplayedRows:function(e){return"".concat(e.from," έως ").concat(e.to," από ").concat(e.count)},labelRowsPerPage:"Εγγραφές ανά σελίδα"}))};export{Z as ServerSideTable};