thecore-auth 0.0.0 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,30 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const f=require("react"),Nt=require("jwt-decode"),J=require("react-router-dom"),Dt=require("axios");var le={exports:{}},Q={};/**
2
+ * @license React
3
+ * react-jsx-runtime.production.min.js
4
+ *
5
+ * Copyright (c) Facebook, Inc. and its affiliates.
6
+ *
7
+ * This source code is licensed under the MIT license found in the
8
+ * LICENSE file in the root directory of this source tree.
9
+ */var Je;function $t(){if(Je)return Q;Je=1;var t=f,n=Symbol.for("react.element"),a=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,c=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,v={key:!0,ref:!0,__self:!0,__source:!0};function h(p,u,w){var j,b={},C=null,T=null;w!==void 0&&(C=""+w),u.key!==void 0&&(C=""+u.key),u.ref!==void 0&&(T=u.ref);for(j in u)s.call(u,j)&&!v.hasOwnProperty(j)&&(b[j]=u[j]);if(p&&p.defaultProps)for(j in u=p.defaultProps,u)b[j]===void 0&&(b[j]=u[j]);return{$$typeof:n,type:p,key:C,ref:T,props:b,_owner:c.current}}return Q.Fragment=a,Q.jsx=h,Q.jsxs=h,Q}var ee={};/**
10
+ * @license React
11
+ * react-jsx-runtime.development.js
12
+ *
13
+ * Copyright (c) Facebook, Inc. and its affiliates.
14
+ *
15
+ * This source code is licensed under the MIT license found in the
16
+ * LICENSE file in the root directory of this source tree.
17
+ */var Ke;function Lt(){return Ke||(Ke=1,process.env.NODE_ENV!=="production"&&function(){var t=f,n=Symbol.for("react.element"),a=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),c=Symbol.for("react.strict_mode"),v=Symbol.for("react.profiler"),h=Symbol.for("react.provider"),p=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),w=Symbol.for("react.suspense"),j=Symbol.for("react.suspense_list"),b=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),T=Symbol.for("react.offscreen"),N=Symbol.iterator,L="@@iterator";function O(e){if(e===null||typeof e!="object")return null;var r=N&&e[N]||e[L];return typeof r=="function"?r:null}var x=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function E(e){{for(var r=arguments.length,o=new Array(r>1?r-1:0),l=1;l<r;l++)o[l-1]=arguments[l];$("error",e,o)}}function $(e,r,o){{var l=x.ReactDebugCurrentFrame,m=l.getStackAddendum();m!==""&&(r+="%s",o=o.concat([m]));var y=o.map(function(g){return String(g)});y.unshift("Warning: "+r),Function.prototype.apply.call(console[e],console,y)}}var I=!1,G=!1,H=!1,_=!1,k=!1,M;M=Symbol.for("react.module.reference");function F(e){return!!(typeof e=="string"||typeof e=="function"||e===s||e===v||k||e===c||e===w||e===j||_||e===T||I||G||H||typeof e=="object"&&e!==null&&(e.$$typeof===C||e.$$typeof===b||e.$$typeof===h||e.$$typeof===p||e.$$typeof===u||e.$$typeof===M||e.getModuleId!==void 0))}function ne(e,r,o){var l=e.displayName;if(l)return l;var m=r.displayName||r.name||"";return m!==""?o+"("+m+")":o}function V(e){return e.displayName||"Context"}function z(e){if(e==null)return null;if(typeof e.tag=="number"&&E("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case s:return"Fragment";case a:return"Portal";case v:return"Profiler";case c:return"StrictMode";case w:return"Suspense";case j:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case p:var r=e;return V(r)+".Consumer";case h:var o=e;return V(o._context)+".Provider";case u:return ne(e,e.render,"ForwardRef");case b:var l=e.displayName||null;return l!==null?l:z(e.type)||"Memo";case C:{var m=e,y=m._payload,g=m._init;try{return z(g(y))}catch{return null}}}return null}var W=Object.assign,X=0,Ce,Se,Re,Te,_e,Pe,Oe;function ke(){}ke.__reactDisabledLog=!0;function it(){{if(X===0){Ce=console.log,Se=console.info,Re=console.warn,Te=console.error,_e=console.group,Pe=console.groupCollapsed,Oe=console.groupEnd;var e={configurable:!0,enumerable:!0,value:ke,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}X++}}function lt(){{if(X--,X===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:W({},e,{value:Ce}),info:W({},e,{value:Se}),warn:W({},e,{value:Re}),error:W({},e,{value:Te}),group:W({},e,{value:_e}),groupCollapsed:W({},e,{value:Pe}),groupEnd:W({},e,{value:Oe})})}X<0&&E("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var de=x.ReactCurrentDispatcher,ge;function ae(e,r,o){{if(ge===void 0)try{throw Error()}catch(m){var l=m.stack.trim().match(/\n( *(at )?)/);ge=l&&l[1]||""}return`
18
+ `+ge+e}}var ve=!1,oe;{var ut=typeof WeakMap=="function"?WeakMap:Map;oe=new ut}function Ae(e,r){if(!e||ve)return"";{var o=oe.get(e);if(o!==void 0)return o}var l;ve=!0;var m=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var y;y=de.current,de.current=null,it();try{if(r){var g=function(){throw Error()};if(Object.defineProperty(g.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(g,[])}catch(A){l=A}Reflect.construct(e,[],g)}else{try{g.call()}catch(A){l=A}e.call(g.prototype)}}else{try{throw Error()}catch(A){l=A}e()}}catch(A){if(A&&l&&typeof A.stack=="string"){for(var d=A.stack.split(`
19
+ `),P=l.stack.split(`
20
+ `),S=d.length-1,R=P.length-1;S>=1&&R>=0&&d[S]!==P[R];)R--;for(;S>=1&&R>=0;S--,R--)if(d[S]!==P[R]){if(S!==1||R!==1)do if(S--,R--,R<0||d[S]!==P[R]){var D=`
21
+ `+d[S].replace(" at new "," at ");return e.displayName&&D.includes("<anonymous>")&&(D=D.replace("<anonymous>",e.displayName)),typeof e=="function"&&oe.set(e,D),D}while(S>=1&&R>=0);break}}}finally{ve=!1,de.current=y,lt(),Error.prepareStackTrace=m}var U=e?e.displayName||e.name:"",B=U?ae(U):"";return typeof e=="function"&&oe.set(e,B),B}function ct(e,r,o){return Ae(e,!1)}function ft(e){var r=e.prototype;return!!(r&&r.isReactComponent)}function se(e,r,o){if(e==null)return"";if(typeof e=="function")return Ae(e,ft(e));if(typeof e=="string")return ae(e);switch(e){case w:return ae("Suspense");case j:return ae("SuspenseList")}if(typeof e=="object")switch(e.$$typeof){case u:return ct(e.render);case b:return se(e.type,r,o);case C:{var l=e,m=l._payload,y=l._init;try{return se(y(m),r,o)}catch{}}}return""}var Z=Object.prototype.hasOwnProperty,Ie={},Ne=x.ReactDebugCurrentFrame;function ie(e){if(e){var r=e._owner,o=se(e.type,e._source,r?r.type:null);Ne.setExtraStackFrame(o)}else Ne.setExtraStackFrame(null)}function dt(e,r,o,l,m){{var y=Function.call.bind(Z);for(var g in e)if(y(e,g)){var d=void 0;try{if(typeof e[g]!="function"){var P=Error((l||"React class")+": "+o+" type `"+g+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof e[g]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw P.name="Invariant Violation",P}d=e[g](r,g,l,o,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(S){d=S}d&&!(d instanceof Error)&&(ie(m),E("%s: type specification of %s `%s` is invalid; the type checker function must return `null` or an `Error` but returned a %s. You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument).",l||"React class",o,g,typeof d),ie(null)),d instanceof Error&&!(d.message in Ie)&&(Ie[d.message]=!0,ie(m),E("Failed %s type: %s",o,d.message),ie(null))}}}var gt=Array.isArray;function pe(e){return gt(e)}function vt(e){{var r=typeof Symbol=="function"&&Symbol.toStringTag,o=r&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o}}function pt(e){try{return De(e),!1}catch{return!0}}function De(e){return""+e}function $e(e){if(pt(e))return E("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",vt(e)),De(e)}var Le=x.ReactCurrentOwner,ht={key:!0,ref:!0,__self:!0,__source:!0},Fe,Me;function mt(e){if(Z.call(e,"ref")){var r=Object.getOwnPropertyDescriptor(e,"ref").get;if(r&&r.isReactWarning)return!1}return e.ref!==void 0}function bt(e){if(Z.call(e,"key")){var r=Object.getOwnPropertyDescriptor(e,"key").get;if(r&&r.isReactWarning)return!1}return e.key!==void 0}function xt(e,r){typeof e.ref=="string"&&Le.current}function yt(e,r){{var o=function(){Fe||(Fe=!0,E("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",r))};o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}}function wt(e,r){{var o=function(){Me||(Me=!0,E("%s: `ref` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://reactjs.org/link/special-props)",r))};o.isReactWarning=!0,Object.defineProperty(e,"ref",{get:o,configurable:!0})}}var jt=function(e,r,o,l,m,y,g){var d={$$typeof:n,type:e,key:r,ref:o,props:g,_owner:y};return d._store={},Object.defineProperty(d._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(d,"_self",{configurable:!1,enumerable:!1,writable:!1,value:l}),Object.defineProperty(d,"_source",{configurable:!1,enumerable:!1,writable:!1,value:m}),Object.freeze&&(Object.freeze(d.props),Object.freeze(d)),d};function Et(e,r,o,l,m){{var y,g={},d=null,P=null;o!==void 0&&($e(o),d=""+o),bt(r)&&($e(r.key),d=""+r.key),mt(r)&&(P=r.ref,xt(r,m));for(y in r)Z.call(r,y)&&!ht.hasOwnProperty(y)&&(g[y]=r[y]);if(e&&e.defaultProps){var S=e.defaultProps;for(y in S)g[y]===void 0&&(g[y]=S[y])}if(d||P){var R=typeof e=="function"?e.displayName||e.name||"Unknown":e;d&&yt(g,R),P&&wt(g,R)}return jt(e,d,P,m,l,Le.current,g)}}var he=x.ReactCurrentOwner,ze=x.ReactDebugCurrentFrame;function Y(e){if(e){var r=e._owner,o=se(e.type,e._source,r?r.type:null);ze.setExtraStackFrame(o)}else ze.setExtraStackFrame(null)}var me;me=!1;function be(e){return typeof e=="object"&&e!==null&&e.$$typeof===n}function We(){{if(he.current){var e=z(he.current.type);if(e)return`
22
+
23
+ Check the render method of \``+e+"`."}return""}}function Ct(e){return""}var Be={};function St(e){{var r=We();if(!r){var o=typeof e=="string"?e:e.displayName||e.name;o&&(r=`
24
+
25
+ Check the top-level render call using <`+o+">.")}return r}}function Ve(e,r){{if(!e._store||e._store.validated||e.key!=null)return;e._store.validated=!0;var o=St(r);if(Be[o])return;Be[o]=!0;var l="";e&&e._owner&&e._owner!==he.current&&(l=" It was passed a child from "+z(e._owner.type)+"."),Y(e),E('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',o,l),Y(null)}}function Ye(e,r){{if(typeof e!="object")return;if(pe(e))for(var o=0;o<e.length;o++){var l=e[o];be(l)&&Ve(l,r)}else if(be(e))e._store&&(e._store.validated=!0);else if(e){var m=O(e);if(typeof m=="function"&&m!==e.entries)for(var y=m.call(e),g;!(g=y.next()).done;)be(g.value)&&Ve(g.value,r)}}}function Rt(e){{var r=e.type;if(r==null||typeof r=="string")return;var o;if(typeof r=="function")o=r.propTypes;else if(typeof r=="object"&&(r.$$typeof===u||r.$$typeof===b))o=r.propTypes;else return;if(o){var l=z(r);dt(o,e.props,"prop",l,e)}else if(r.PropTypes!==void 0&&!me){me=!0;var m=z(r);E("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",m||"Unknown")}typeof r.getDefaultProps=="function"&&!r.getDefaultProps.isReactClassApproved&&E("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function Tt(e){{for(var r=Object.keys(e.props),o=0;o<r.length;o++){var l=r[o];if(l!=="children"&&l!=="key"){Y(e),E("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",l),Y(null);break}}e.ref!==null&&(Y(e),E("Invalid attribute `ref` supplied to `React.Fragment`."),Y(null))}}var Ue={};function qe(e,r,o,l,m,y){{var g=F(e);if(!g){var d="";(e===void 0||typeof e=="object"&&e!==null&&Object.keys(e).length===0)&&(d+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.");var P=Ct();P?d+=P:d+=We();var S;e===null?S="null":pe(e)?S="array":e!==void 0&&e.$$typeof===n?(S="<"+(z(e.type)||"Unknown")+" />",d=" Did you accidentally export a JSX literal instead of a component?"):S=typeof e,E("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",S,d)}var R=Et(e,r,o,m,y);if(R==null)return R;if(g){var D=r.children;if(D!==void 0)if(l)if(pe(D)){for(var U=0;U<D.length;U++)Ye(D[U],e);Object.freeze&&Object.freeze(D)}else E("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else Ye(D,e)}if(Z.call(r,"key")){var B=z(e),A=Object.keys(r).filter(function(It){return It!=="key"}),xe=A.length>0?"{key: someKey, "+A.join(": ..., ")+": ...}":"{key: someKey}";if(!Ue[B+xe]){var At=A.length>0?"{"+A.join(": ..., ")+": ...}":"{}";E(`A props object containing a "key" prop is being spread into JSX:
26
+ let props = %s;
27
+ <%s {...props} />
28
+ React keys must be passed directly to JSX without using spread:
29
+ let props = %s;
30
+ <%s key={someKey} {...props} />`,xe,B,At,B),Ue[B+xe]=!0}}return e===s?Tt(R):Rt(R),R}}function _t(e,r,o){return qe(e,r,o,!0)}function Pt(e,r,o){return qe(e,r,o,!1)}var Ot=Pt,kt=_t;ee.Fragment=s,ee.jsx=Ot,ee.jsxs=kt}()),ee}var Ge;function Ft(){return Ge||(Ge=1,process.env.NODE_ENV==="production"?le.exports=$t():le.exports=Lt()),le.exports}var i=Ft();const Ze=f.createContext(),Mt=({children:t})=>{const[n,a]=f.useState(!1);return i.jsx(Ze.Provider,{value:{isLoading:n,setIsLoading:a},children:t})},je=()=>{const t=f.useContext(Ze);if(t===void 0)throw new Error("Non puoi settare il loading");return t},Qe=f.createContext(),zt=({children:t})=>{const[n,a]=f.useState({}),s=async()=>{try{const v=await(await fetch("/config.json")).json();a(v)}catch(c){console.error(c)}};return f.useEffect(()=>{s()},[]),Object.keys(n).length===0?null:i.jsx(Qe.Provider,{value:n,children:t})},fe=()=>{const t=f.useContext(Qe);if(t===void 0)throw new Error("Non puoi leggere i config");return t},et=f.createContext(),Wt=({children:t})=>{const[n,a]=f.useState(!1),[s,c]=f.useState(),[v,h]=f.useState(),p={showAlert:n,setShowAlert:a,typeAlert:s,setTypeAlert:c,messageAlert:v,setMessageAlert:h};return i.jsx(et.Provider,{value:p,children:t})},K=()=>{const t=f.useContext(et);if(t===void 0)throw new Error("Non puoi modificare l'alert");return t};let q;const te=async(t,n,a)=>{if(q)return q;try{const c=await(await fetch("/config.json")).json(),v=c.baseUri,{unauthorized:h,notFound:p,defaultMessage:u}=c.axiosErrors;return q=Dt.create({baseURL:v,timeout:3e3}),q.interceptors.request.use(w=>w),q.interceptors.response.use(w=>w,w=>{if(w.response)switch(t(!0),n("danger"),w.response.status){case 401:localStorage.removeItem("accessToken"),a(h);break;case 404:a(p);break;default:a(`${u} ${w.response.status} ${w.response.data.error}`)}return Promise.reject(w)}),q}catch(s){console.error(s)}},tt=f.createContext(),Bt=({children:t})=>{const{heartbeatEndpoint:n,infiniteSession:a,timeDeducted:s,authenticatedEndpoint:c}=fe(),{setIsLoading:v}=je(),{setShowAlert:h,setMessageAlert:p,setTypeAlert:u}=K(),w=J.useNavigate(),[j,b]=f.useState(null),[C,T]=f.useState(),[N,L]=f.useState(),[O,x]=f.useState(),E=async(_,k)=>{_.preventDefault();try{v(!0),h(!1);const F=await(await te(h,u,p)).post(c,{auth:k}),ne=F.data.id,V=F.headers.token;V&&(localStorage.setItem("accessToken",V),localStorage.setItem("id",ne),b(!0),T(V),w(`/dashboard/${ne}`))}catch(M){console.error(M),v(!1)}},$=()=>{localStorage.removeItem("accessToken"),localStorage.removeItem("id"),b(!1),T(null)},I=async()=>{try{const _=localStorage.getItem("accessToken"),F=(await(await te(h,u,p)).get(`${n}`,{headers:{Authorization:_}})).headers.token;localStorage.setItem("accessToken",F),T(F)}catch(_){console.error(_),$()}},G=()=>{if(!C)return;const k=Nt(C).exp,M=Math.floor(Date.now()/1e3),F=(k-M)*1e3;x(F),L(F-s)};f.useEffect(()=>{if(localStorage.getItem("accessToken"))b(!0);else{b(!1);return}},[]),f.useEffect(()=>{G();let _;a&&C&&N&&(_=setInterval(()=>{I()},N));let k;return!a&&C&&O&&(k=setTimeout(()=>{$(),h(!0),u("danger"),p("Sessione scaduta")},O)),()=>{_&&clearInterval(_),k&&clearTimeout(k)}},[C,N]);const H={isAuthenticated:j,setIsAuthenticated:b,login:E,logout:$,setCurrentToken:T};return i.jsx(tt.Provider,{value:H,children:t})},Ee=()=>{const t=f.useContext(tt);if(t===void 0)throw new Error("Non sei dentro al Auth Provider");return t},Vt=()=>{const{isAuthenticated:t}=Ee(),{setShowAlert:n,setTypeAlert:a,setMessageAlert:s}=K(),c=localStorage.getItem("accessToken");return f.useEffect(()=>{!t&&!c&&(n(!0),a("danger"),s("Non sei autorizzato"))},[]),t===null?null:t?i.jsx(J.Outlet,{}):i.jsx(J.Navigate,{to:"/"})};var rt={color:void 0,size:void 0,className:void 0,style:void 0,attr:void 0},He=f.createContext&&f.createContext(rt),Yt=["attr","size","title"];function Ut(t,n){if(t==null)return{};var a=qt(t,n),s,c;if(Object.getOwnPropertySymbols){var v=Object.getOwnPropertySymbols(t);for(c=0;c<v.length;c++)s=v[c],!(n.indexOf(s)>=0)&&Object.prototype.propertyIsEnumerable.call(t,s)&&(a[s]=t[s])}return a}function qt(t,n){if(t==null)return{};var a={};for(var s in t)if(Object.prototype.hasOwnProperty.call(t,s)){if(n.indexOf(s)>=0)continue;a[s]=t[s]}return a}function ue(){return ue=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var a=arguments[n];for(var s in a)Object.prototype.hasOwnProperty.call(a,s)&&(t[s]=a[s])}return t},ue.apply(this,arguments)}function Xe(t,n){var a=Object.keys(t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(t);n&&(s=s.filter(function(c){return Object.getOwnPropertyDescriptor(t,c).enumerable})),a.push.apply(a,s)}return a}function ce(t){for(var n=1;n<arguments.length;n++){var a=arguments[n]!=null?arguments[n]:{};n%2?Xe(Object(a),!0).forEach(function(s){Jt(t,s,a[s])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):Xe(Object(a)).forEach(function(s){Object.defineProperty(t,s,Object.getOwnPropertyDescriptor(a,s))})}return t}function Jt(t,n,a){return n=Kt(n),n in t?Object.defineProperty(t,n,{value:a,enumerable:!0,configurable:!0,writable:!0}):t[n]=a,t}function Kt(t){var n=Gt(t,"string");return typeof n=="symbol"?n:n+""}function Gt(t,n){if(typeof t!="object"||!t)return t;var a=t[Symbol.toPrimitive];if(a!==void 0){var s=a.call(t,n||"default");if(typeof s!="object")return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return(n==="string"?String:Number)(t)}function nt(t){return t&&t.map((n,a)=>f.createElement(n.tag,ce({key:a},n.attr),nt(n.child)))}function re(t){return n=>f.createElement(Ht,ue({attr:ce({},t.attr)},n),nt(t.child))}function Ht(t){var n=a=>{var{attr:s,size:c,title:v}=t,h=Ut(t,Yt),p=c||a.size||"1em",u;return a.className&&(u=a.className),t.className&&(u=(u?u+" ":"")+t.className),f.createElement("svg",ue({stroke:"currentColor",fill:"currentColor",strokeWidth:"0"},a.attr,s,h,{className:u,style:ce(ce({color:t.color||a.color},a.style),t.style),height:p,width:p,xmlns:"http://www.w3.org/2000/svg"}),v&&f.createElement("title",null,v),t.children)};return He!==void 0?f.createElement(He.Consumer,null,a=>n(a)):n(rt)}function Xt(t){return re({tag:"svg",attr:{version:"1.1",viewBox:"0 0 16 16"},child:[{tag:"path",attr:{d:"M8 0c-4.355 0-7.898 3.481-7.998 7.812 0.092-3.779 2.966-6.812 6.498-6.812 3.59 0 6.5 3.134 6.5 7 0 0.828 0.672 1.5 1.5 1.5s1.5-0.672 1.5-1.5c0-4.418-3.582-8-8-8zM8 16c4.355 0 7.898-3.481 7.998-7.812-0.092 3.779-2.966 6.812-6.498 6.812-3.59 0-6.5-3.134-6.5-7 0-0.828-0.672-1.5-1.5-1.5s-1.5 0.672-1.5 1.5c0 4.418 3.582 8 8 8z"},child:[]}]})(t)}const at=()=>i.jsxs("div",{className:"fixed top-0 bottom-0 left-0 right-0 flex items-center justify-center bg-[#00000080]",children:[i.jsx(Xt,{className:"text-[20rem] relative animate-spin text-white"}),i.jsx("p",{className:"text-white text-2xl select-none absolute",children:"Loading..."})]});function Zt(t){return re({tag:"svg",attr:{viewBox:"0 0 15 15",fill:"none"},child:[{tag:"path",attr:{fillRule:"evenodd",clipRule:"evenodd",d:"M11.7816 4.03157C12.0062 3.80702 12.0062 3.44295 11.7816 3.2184C11.5571 2.99385 11.193 2.99385 10.9685 3.2184L7.50005 6.68682L4.03164 3.2184C3.80708 2.99385 3.44301 2.99385 3.21846 3.2184C2.99391 3.44295 2.99391 3.80702 3.21846 4.03157L6.68688 7.49999L3.21846 10.9684C2.99391 11.193 2.99391 11.557 3.21846 11.7816C3.44301 12.0061 3.80708 12.0061 4.03164 11.7816L7.50005 8.31316L10.9685 11.7816C11.193 12.0061 11.5571 12.0061 11.7816 11.7816C12.0062 11.557 12.0062 11.193 11.7816 10.9684L8.31322 7.49999L11.7816 4.03157Z",fill:"currentColor"},child:[]}]})(t)}function Qt(t){return re({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"},child:[]}]})(t)}function er(t){return re({tag:"svg",attr:{viewBox:"0 0 1024 1024"},child:[{tag:"path",attr:{d:"M955.7 856l-416-720c-6.2-10.7-16.9-16-27.7-16s-21.6 5.3-27.7 16l-416 720C56 877.4 71.4 904 96 904h832c24.6 0 40-26.6 27.7-48zM480 416c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v184c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V416zm32 352a48.01 48.01 0 0 1 0-96 48.01 48.01 0 0 1 0 96z"},child:[]}]})(t)}function tr(t){return re({tag:"svg",attr:{viewBox:"0 0 512 512"},child:[{tag:"path",attr:{d:"M17.47 250.9C88.82 328.1 158 397.6 224.5 485.5c72.3-143.8 146.3-288.1 268.4-444.37L460 26.06C356.9 135.4 276.8 238.9 207.2 361.9c-48.4-43.6-126.62-105.3-174.38-137z"},child:[]}]})(t)}const ot=()=>{const{showAlert:t,setShowAlert:n,messageAlert:a,typeAlert:s}=K(),{alertTimeout:c}=fe(),[v,h]=f.useState(0),p={danger:{bgColor:"bg-red-50",textColor:"text-red-700",buttonBg:"bg-red-50",hoverBg:"hover:bg-red-200",focusRing:"focus:ring-red-400",progressColor:"bg-red-400"},info:{bgColor:"bg-blue-50",textColor:"text-blue-700",buttonBg:"bg-blue-50",hoverBg:"hover:bg-blue-200",focusRing:"focus:ring-blue-400",progressColor:"bg-blue-400"},success:{bgColor:"bg-green-50",textColor:"text-green-700",buttonBg:"bg-green-50",hoverBg:"hover:bg-green-200",focusRing:"focus:ring-green-400",progressColor:"bg-green-400"}},{bgColor:u,textColor:w,buttonBg:j,hoverBg:b,focusRing:C,progressColor:T}=p[s],N=O=>{switch(O){case"danger":return i.jsx(er,{className:"text-xl"});case"info":return i.jsx(Qt,{className:"text-xl"});case"success":return i.jsx(tr,{className:"text-xl"})}},L=()=>{n(!t)};return f.useEffect(()=>{let O;const E=100/(c/100);O=setInterval(()=>{h(I=>I>=100?(clearInterval(O),100):I+E)},100);const $=setTimeout(()=>{L()},c);return()=>{clearTimeout($),clearInterval(O)}},[]),i.jsxs("div",{className:`flex items-center p-4 pt-6 ${w} rounded-lg ${u} mx-auto fixed top-[calc(100vh-100px)] right-10`,role:"alert",children:[i.jsx("div",{className:"w-full bg-gray-200 rounded-t-lg overflow-hidden h-2.5 dark:bg-gray-700 absolute top-0 left-0 right-0",children:i.jsx("div",{className:`${T} h-2.5 rounded-t-lg`,style:{width:`${v}%`}})}),N(s),i.jsx("div",{className:"px-4 text-sm font-medium",children:a}),i.jsx("button",{type:"button",className:`ms-auto ${j} rounded-lg focus:ring-2 ${C} p-1.5 ${b} inline-flex items-center justify-center h-8 w-8`,title:"Close",onClick:L,children:i.jsx(Zt,{className:"text-xl"})})]})},rr=()=>{const{isLoading:t}=je(),{showAlert:n}=K();return i.jsxs(i.Fragment,{children:[t&&i.jsx(at,{}),i.jsxs("main",{className:t?"hidden":"",children:[n&&i.jsx(ot,{}),i.jsx(J.Outlet,{})]})]})},ye=t=>{const{inputType:n,inputId:a,inputPlaceholder:s,inputRequired:c,inputValue:v,inputChange:h}=t,u=["text","email","password","search","tel","url"].includes(n)?n:"text";return i.jsx("input",{type:u,id:a,className:"bg-gray-50 border border-gray-300 text-gray-900 text-sm rounded-lg focus:ring-blue-500 focus:border-blue-500 block w-full p-2.5",placeholder:s,required:c??!0,value:v,onChange:h})},we=({label:t,labelId:n,labelStyle:a})=>i.jsx("label",{htmlFor:n,className:`${a??"block mb-2 text-sm font-medium text-gray-900"}`,children:t}),st=t=>{const{submitForm:n,formData:a,changeValue:s,formSize:c="w-[800px]",formBgColor:v="bg-slate-50",formRounded:h="rounded-lg",formShadow:p="shadow-lg",userData:u,userLabel:w="Email",userType:j="email",userPlaceholder:b="email@email.it",formTitle:C="Login",titleSize:T="text-4xl",titlePosition:N="text-center",titleSpacing:L="my-12",buttonPosition:O="justify-center",buttonSpacing:x="my-12",buttonColor:E="bg-blue-500",buttonHoverColor:$="hoverbg-blue-700",buttonTextColor:I="text-white",buttonSize:G="py-2 px-4",buttonRounded:H="rounded-full",buttonText:_="Login"}=t;return i.jsxs("form",{onSubmit:n,className:`${c} ${h} ${p} ${v}`,children:[i.jsx("h1",{className:`${T} ${N} ${L}`,children:C}),i.jsxs("div",{className:"flex justify-center flex-col gap-1 my-4 w-1/2 mx-auto",children:[i.jsx(we,{labelId:"user-email",label:w}),i.jsx(ye,{inputType:j,inputId:"user-email",inputPlaceholder:b,inputValue:u?a[u]:a.email,inputChange:k=>{s(u||"email",k.target.value)}})]}),i.jsxs("div",{className:"flex justify-center flex-col gap-1 my-4 w-1/2 mx-auto",children:[i.jsx(we,{labelId:"password",label:"Password"}),i.jsx(ye,{inputType:"password",inputId:"password",inputPlaceholder:"Password",inputValue:a.password,inputChange:k=>{s("password",k.target.value)}})]}),i.jsx("div",{className:`flex ${O} items-center ${x}`,children:i.jsx("button",{className:`${E} ${$} ${I} font-bold ${G} ${H}`,children:_})})]})},nr=()=>{const{login:t}=Ee(),{setShowAlert:n,setTypeAlert:a,setMessageAlert:s}=K(),{clearLoginFormOnError:c}=fe(),v=J.useNavigate(),h={email:"",password:""},[p,u]=f.useState(h),w=(b,C)=>{u(T=>({...T,[b]:C}))},j=b=>{t(b,p),c&&u(h)};return f.useEffect(()=>{const b=localStorage.getItem("id");localStorage.getItem("accessToken")&&b&&(v(`/dashboard/${b}`),n(!0),a("info"),s("Sei già loggato"))},[]),i.jsx("section",{children:i.jsx("div",{className:"container mx-auto flex items-center justify-center h-screen",children:i.jsx(st,{submitForm:j,formData:p,changeValue:w})})})},ar=()=>{const{id:t}=J.useParams(),{logout:n,setCurrentToken:a}=Ee(),{usersEndpoint:s}=fe(),{setIsLoading:c}=je(),{setShowAlert:v,setTypeAlert:h,setMessageAlert:p}=K(),[u,w]=f.useState({}),[j,b]=f.useState(null),[C,T]=f.useState(!1),N=async()=>{try{c(!0);const x=localStorage.getItem("accessToken");if(!x){n(),v(!0),h("danger"),p("Sessione scaduta");return}a(x);const I=(await(await te(v,h,p)).get(`${s}${t}`,{headers:{Authorization:x}})).data;w(I),c(!1)}catch(x){console.error(x),c(!1),n()}},L=async()=>{try{T(!0);const x=localStorage.getItem("accessToken");if(!x){n(),v(!0),h("danger"),p("Sessione scaduta");return}const I=(await(await te(v,h,p)).get(`${s}`,{headers:{Authorization:x}})).data;b(I),I&&T(!1)}catch(x){console.error(x),c(!1),x.status===401&&n(),T(!1)}},O=()=>{n(),v(!0),h("info"),p("Hai effettuato il logout")};return f.useEffect(()=>{N()},[]),i.jsx("section",{children:i.jsxs("div",{className:"container mx-auto py-8",children:[i.jsxs("div",{className:"flex items-center justify-center gap-8 h-20",children:[i.jsxs("h1",{className:"text-4xl text-center text-slate-800",children:["Email: ",u.email]}),i.jsx("button",{onClick:O,className:"bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded-full",children:"Logout"})]}),i.jsx("div",{className:"flex justify-center items-center my-12",children:i.jsx("button",{onClick:L,className:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded-full disabled:bg-blue-300 disabled:text-gray-500 disabled:cursor-not-allowed",disabled:C,children:"Lista degli utenti"})}),i.jsx("div",{className:"flex justify-center items-center",children:j&&i.jsx("ul",{children:j.map(x=>i.jsxs("li",{className:"text-xl my-4",children:[x.id," - ",x.email]},`user-${x.id}`))})})]})})};exports.Alert=ot;exports.AlertProvider=Wt;exports.AuthPage=Vt;exports.AuthProvider=Bt;exports.ConfigProvider=zt;exports.Dashboard=ar;exports.DefaultLayout=rr;exports.Input=ye;exports.InputLabel=we;exports.Loading=at;exports.LoadingProvider=Mt;exports.Login=nr;exports.LoginForm=st;exports.fetchAxiosConfig=te;