@trii/components 2.0.70 → 2.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/cjs/index.js CHANGED
@@ -1,21 +1,21 @@
1
- "use strict";var l=require("react"),r=require("@mui/material"),Ae=require("@mui/icons-material"),Yn=require("@mui/icons-material/ArrowForward"),qn=require("@mui/icons-material/Message"),se=require("@trii/types/dist/Contacts"),at=require("moment"),We=require("react-i18next"),Gn=require("i18next"),Pa=require("@mui/icons-material/Close"),bt=require("@mui/icons-material/Edit"),Hn=require("@mui/icons-material/Label"),qt=require("@mui/icons-material/Delete"),Kn=require("@mui/icons-material/PhotoCamera"),ha=require("@mui/icons-material/ArrowBack"),nt=require("@mui/icons-material/Save"),Jn=require("@mui/material/Popper"),qe=require("@mui/lab"),ct=require("@trii/types/dist/Common/Channels"),K=require("dayjs"),Qn=require("@mui/icons-material/AddLocationAlt"),vt=require("@mui/x-date-pickers/AdapterDayjs"),Ct=require("@mui/x-date-pickers/LocalizationProvider"),Ma=require("@mui/x-date-pickers"),jt=require("@mui/material/Box"),Ra=require("@mui/icons-material/Cancel"),Xn=require("@mui/x-date-pickers/TimePicker"),_e=require("@mui/x-date-pickers-pro"),Se=require("@mui/system"),Zn=require("@mui/icons-material/LocalPhone"),Na=require("google-libphonenumber"),La=require("@mui/icons-material/Add"),es=require("@mui/icons-material/MoreVert"),ts=require("@mui/icons-material/WhatsApp"),as=require("@mui/icons-material/Mms"),ns=require("@mui/icons-material/CheckRounded"),ss=require("@mui/icons-material/CloseRounded"),rs=require("@mui/material/CircularProgress"),os=require("@mui/material/InputAdornment"),is=require("@mui/material/Typography"),ls=require("@mui/icons-material/Warning"),cs=require("@mui/material/Chip"),Gt=require("@trii/types/dist/Calendar"),Oa=require("@mui/x-date-pickers-pro/AdapterDayjs"),za=require("@mui/icons-material/Place"),Wa=require("@mui/icons-material/Person"),ds=require("@mui/icons-material/CalendarMonth"),ma=require("@mui/icons-material/Repeat"),us=require("@mui/icons-material/WarningAmber"),ps=require("@mui/icons-material/ContentCopy"),hs=require("@mui/icons-material/AccessTime");function ms(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ga={exports:{}},St={},_a;function gs(){if(_a)return St;_a=1;var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function c(d,u,m){var x,g={},p=null,y=null;m!==void 0&&(p=""+m),u.key!==void 0&&(p=""+u.key),u.ref!==void 0&&(y=u.ref);for(x in u)s.call(u,x)&&!o.hasOwnProperty(x)&&(g[x]=u[x]);if(d&&d.defaultProps)for(x in u=d.defaultProps,u)g[x]===void 0&&(g[x]=u[x]);return{$$typeof:a,type:d,key:p,ref:y,props:g,_owner:i.current}}return St.Fragment=n,St.jsx=c,St.jsxs=c,St}var wt={},Va;function ys(){return Va||(Va=1,process.env.NODE_ENV!=="production"&&(function(){var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),d=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),x=Symbol.for("react.suspense_list"),g=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),y=Symbol.for("react.offscreen"),v=Symbol.iterator,C="@@iterator";function f(h){if(h===null||typeof h!="object")return null;var k=v&&h[v]||h[C];return typeof k=="function"?k:null}var S=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function j(h){{for(var k=arguments.length,O=new Array(k>1?k-1:0),Z=1;Z<k;Z++)O[Z-1]=arguments[Z];w("error",h,O)}}function w(h,k,O){{var Z=S.ReactDebugCurrentFrame,ce=Z.getStackAddendum();ce!==""&&(k+="%s",O=O.concat([ce]));var pe=O.map(function(ie){return String(ie)});pe.unshift("Warning: "+k),Function.prototype.apply.call(console[h],console,pe)}}var I=!1,z=!1,E=!1,D=!1,F=!1,U;U=Symbol.for("react.module.reference");function V(h){return!!(typeof h=="string"||typeof h=="function"||h===s||h===o||F||h===i||h===m||h===x||D||h===y||I||z||E||typeof h=="object"&&h!==null&&(h.$$typeof===p||h.$$typeof===g||h.$$typeof===c||h.$$typeof===d||h.$$typeof===u||h.$$typeof===U||h.getModuleId!==void 0))}function Y(h,k,O){var Z=h.displayName;if(Z)return Z;var ce=k.displayName||k.name||"";return ce!==""?O+"("+ce+")":O}function R(h){return h.displayName||"Context"}function H(h){if(h==null)return null;if(typeof h.tag=="number"&&j("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof h=="function")return h.displayName||h.name||null;if(typeof h=="string")return h;switch(h){case s:return"Fragment";case n:return"Portal";case o:return"Profiler";case i:return"StrictMode";case m:return"Suspense";case x:return"SuspenseList"}if(typeof h=="object")switch(h.$$typeof){case d:var k=h;return R(k)+".Consumer";case c:var O=h;return R(O._context)+".Provider";case u:return Y(h,h.render,"ForwardRef");case g:var Z=h.displayName||null;return Z!==null?Z:H(h.type)||"Memo";case p:{var ce=h,pe=ce._payload,ie=ce._init;try{return H(ie(pe))}catch{return null}}}return null}var $=Object.assign,ee=0,P,N,B,T,W,M,_;function J(){}J.__reactDisabledLog=!0;function te(){{if(ee===0){P=console.log,N=console.info,B=console.warn,T=console.error,W=console.group,M=console.groupCollapsed,_=console.groupEnd;var h={configurable:!0,enumerable:!0,value:J,writable:!0};Object.defineProperties(console,{info:h,log:h,warn:h,error:h,group:h,groupCollapsed:h,groupEnd:h})}ee++}}function de(){{if(ee--,ee===0){var h={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:$({},h,{value:P}),info:$({},h,{value:N}),warn:$({},h,{value:B}),error:$({},h,{value:T}),group:$({},h,{value:W}),groupCollapsed:$({},h,{value:M}),groupEnd:$({},h,{value:_})})}ee<0&&j("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var he=S.ReactCurrentDispatcher,ve;function X(h,k,O){{if(ve===void 0)try{throw Error()}catch(ce){var Z=ce.stack.trim().match(/\n( *(at )?)/);ve=Z&&Z[1]||""}return`
2
- `+ve+h}}var Q=!1,Ne;{var ue=typeof WeakMap=="function"?WeakMap:Map;Ne=new ue}function xe(h,k){if(!h||Q)return"";{var O=Ne.get(h);if(O!==void 0)return O}var Z;Q=!0;var ce=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var pe;pe=he.current,he.current=null,te();try{if(k){var ie=function(){throw Error()};if(Object.defineProperty(ie.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ie,[])}catch(q){Z=q}Reflect.construct(h,[],ie)}else{try{ie.call()}catch(q){Z=q}h.call(ie.prototype)}}else{try{throw Error()}catch(q){Z=q}h()}}catch(q){if(q&&Z&&typeof q.stack=="string"){for(var re=q.stack.split(`
3
- `),De=Z.stack.split(`
4
- `),ge=re.length-1,be=De.length-1;ge>=1&&be>=0&&re[ge]!==De[be];)be--;for(;ge>=1&&be>=0;ge--,be--)if(re[ge]!==De[be]){if(ge!==1||be!==1)do if(ge--,be--,be<0||re[ge]!==De[be]){var b=`
5
- `+re[ge].replace(" at new "," at ");return h.displayName&&b.includes("<anonymous>")&&(b=b.replace("<anonymous>",h.displayName)),typeof h=="function"&&Ne.set(h,b),b}while(ge>=1&&be>=0);break}}}finally{Q=!1,he.current=pe,de(),Error.prepareStackTrace=ce}var L=h?h.displayName||h.name:"",A=L?X(L):"";return typeof h=="function"&&Ne.set(h,A),A}function me(h,k,O){return xe(h,!1)}function Ce(h){var k=h.prototype;return!!(k&&k.isReactComponent)}function G(h,k,O){if(h==null)return"";if(typeof h=="function")return xe(h,Ce(h));if(typeof h=="string")return X(h);switch(h){case m:return X("Suspense");case x:return X("SuspenseList")}if(typeof h=="object")switch(h.$$typeof){case u:return me(h.render);case g:return G(h.type,k,O);case p:{var Z=h,ce=Z._payload,pe=Z._init;try{return G(pe(ce),k,O)}catch{}}}return""}var ne=Object.prototype.hasOwnProperty,le={},je=S.ReactDebugCurrentFrame;function ae(h){if(h){var k=h._owner,O=G(h.type,h._source,k?k.type:null);je.setExtraStackFrame(O)}else je.setExtraStackFrame(null)}function ot(h,k,O,Z,ce){{var pe=Function.call.bind(ne);for(var ie in h)if(pe(h,ie)){var re=void 0;try{if(typeof h[ie]!="function"){var De=Error((Z||"React class")+": "+O+" type `"+ie+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof h[ie]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw De.name="Invariant Violation",De}re=h[ie](k,ie,Z,O,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(ge){re=ge}re&&!(re instanceof Error)&&(ae(ce),j("%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).",Z||"React class",O,ie,typeof re),ae(null)),re instanceof Error&&!(re.message in le)&&(le[re.message]=!0,ae(ce),j("Failed %s type: %s",O,re.message),ae(null))}}}var Ee=Array.isArray;function ht(h){return Ee(h)}function sa(h){{var k=typeof Symbol=="function"&&Symbol.toStringTag,O=k&&h[Symbol.toStringTag]||h.constructor.name||"Object";return O}}function ra(h){try{return Xe(h),!1}catch{return!0}}function Xe(h){return""+h}function Pt(h){if(ra(h))return j("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",sa(h)),Xe(h)}var He=S.ReactCurrentOwner,Oe={key:!0,ref:!0,__self:!0,__source:!0},Ze,it,lt;lt={};function oa(h){if(ne.call(h,"ref")){var k=Object.getOwnPropertyDescriptor(h,"ref").get;if(k&&k.isReactWarning)return!1}return h.ref!==void 0}function Mt(h){if(ne.call(h,"key")){var k=Object.getOwnPropertyDescriptor(h,"key").get;if(k&&k.isReactWarning)return!1}return h.key!==void 0}function mt(h,k){if(typeof h.ref=="string"&&He.current&&k&&He.current.stateNode!==k){var O=H(He.current.type);lt[O]||(j('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',H(He.current.type),h.ref),lt[O]=!0)}}function ia(h,k){{var O=function(){Ze||(Ze=!0,j("%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)",k))};O.isReactWarning=!0,Object.defineProperty(h,"key",{get:O,configurable:!0})}}function Ye(h,k){{var O=function(){it||(it=!0,j("%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)",k))};O.isReactWarning=!0,Object.defineProperty(h,"ref",{get:O,configurable:!0})}}var et=function(h,k,O,Z,ce,pe,ie){var re={$$typeof:a,type:h,key:k,ref:O,props:ie,_owner:pe};return re._store={},Object.defineProperty(re._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(re,"_self",{configurable:!1,enumerable:!1,writable:!1,value:Z}),Object.defineProperty(re,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ce}),Object.freeze&&(Object.freeze(re.props),Object.freeze(re)),re};function gt(h,k,O,Z,ce){{var pe,ie={},re=null,De=null;O!==void 0&&(Pt(O),re=""+O),Mt(k)&&(Pt(k.key),re=""+k.key),oa(k)&&(De=k.ref,mt(k,ce));for(pe in k)ne.call(k,pe)&&!Oe.hasOwnProperty(pe)&&(ie[pe]=k[pe]);if(h&&h.defaultProps){var ge=h.defaultProps;for(pe in ge)ie[pe]===void 0&&(ie[pe]=ge[pe])}if(re||De){var be=typeof h=="function"?h.displayName||h.name||"Unknown":h;re&&ia(ie,be),De&&Ye(ie,be)}return et(h,re,De,ce,Z,He.current,ie)}}var tt=S.ReactCurrentOwner,Rt=S.ReactDebugCurrentFrame;function Ke(h){if(h){var k=h._owner,O=G(h.type,h._source,k?k.type:null);Rt.setExtraStackFrame(O)}else Rt.setExtraStackFrame(null)}var yt;yt=!1;function ft(h){return typeof h=="object"&&h!==null&&h.$$typeof===a}function Nt(){{if(tt.current){var h=H(tt.current.type);if(h)return`
1
+ "use strict";var l=require("react"),r=require("@mui/material"),$e=require("@mui/icons-material"),Yn=require("@mui/icons-material/ArrowForward"),Hn=require("@mui/icons-material/Message"),ne=require("@trii/types/dist/Contacts"),lt=require("moment"),_e=require("react-i18next"),Gn=require("i18next"),La=require("@mui/icons-material/Close"),bt=require("@mui/icons-material/Edit"),Kn=require("@mui/icons-material/Label"),Kt=require("@mui/icons-material/Delete"),Jn=require("@mui/icons-material/PhotoCamera"),ya=require("@mui/icons-material/ArrowBack"),ct=require("@mui/icons-material/Save"),Qn=require("@mui/material/Popper"),Qe=require("@mui/lab"),ht=require("@trii/types/dist/Common/Channels"),J=require("dayjs"),Xn=require("@mui/icons-material/AddLocationAlt"),vt=require("@mui/x-date-pickers/AdapterDayjs"),Ct=require("@mui/x-date-pickers/LocalizationProvider"),za=require("@mui/x-date-pickers"),jt=require("@mui/material/Box"),Oa=require("@mui/icons-material/Cancel"),Zn=require("@mui/x-date-pickers/TimePicker"),Ve=require("@mui/x-date-pickers-pro"),Se=require("@mui/system"),es=require("@mui/icons-material/LocalPhone"),Wa=require("google-libphonenumber"),_a=require("@mui/icons-material/Add"),ts=require("@mui/icons-material/MoreVert"),as=require("@mui/icons-material/WhatsApp"),ns=require("@mui/icons-material/Mms"),ss=require("@mui/icons-material/CheckRounded"),rs=require("@mui/icons-material/CloseRounded"),os=require("@mui/material/CircularProgress"),is=require("@mui/material/InputAdornment"),ls=require("@mui/material/Typography"),cs=require("@mui/icons-material/Warning"),ds=require("@mui/material/Chip"),Jt=require("@trii/types/dist/Calendar"),Va=require("@mui/x-date-pickers-pro/AdapterDayjs"),qa=require("@mui/icons-material/Place"),fa=require("@mui/icons-material/Person"),us=require("@mui/icons-material/CalendarMonth"),xa=require("@mui/icons-material/Repeat"),ps=require("@mui/icons-material/WarningAmber"),hs=require("@mui/icons-material/ContentCopy"),ms=require("@mui/icons-material/AccessTime");function gs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ba={exports:{}},St={},Ya;function ys(){if(Ya)return St;Ya=1;var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.fragment"),s=Object.prototype.hasOwnProperty,i=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,o={key:!0,ref:!0,__self:!0,__source:!0};function c(d,u,g){var x,y={},p=null,h=null;g!==void 0&&(p=""+g),u.key!==void 0&&(p=""+u.key),u.ref!==void 0&&(h=u.ref);for(x in u)s.call(u,x)&&!o.hasOwnProperty(x)&&(y[x]=u[x]);if(d&&d.defaultProps)for(x in u=d.defaultProps,u)y[x]===void 0&&(y[x]=u[x]);return{$$typeof:a,type:d,key:p,ref:h,props:y,_owner:i.current}}return St.Fragment=n,St.jsx=c,St.jsxs=c,St}var wt={},Ha;function fs(){return Ha||(Ha=1,process.env.NODE_ENV!=="production"&&(function(){var e=l,a=Symbol.for("react.element"),n=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),d=Symbol.for("react.context"),u=Symbol.for("react.forward_ref"),g=Symbol.for("react.suspense"),x=Symbol.for("react.suspense_list"),y=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),h=Symbol.for("react.offscreen"),v=Symbol.iterator,j="@@iterator";function f(m){if(m===null||typeof m!="object")return null;var D=v&&m[v]||m[j];return typeof D=="function"?D:null}var I=e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function C(m){{for(var D=arguments.length,O=new Array(D>1?D-1:0),Z=1;Z<D;Z++)O[Z-1]=arguments[Z];w("error",m,O)}}function w(m,D,O){{var Z=I.ReactDebugCurrentFrame,ce=Z.getStackAddendum();ce!==""&&(D+="%s",O=O.concat([ce]));var ue=O.map(function(oe){return String(oe)});ue.unshift("Warning: "+D),Function.prototype.apply.call(console[m],console,ue)}}var S=!1,z=!1,k=!1,F=!1,$=!1,T;T=Symbol.for("react.module.reference");function V(m){return!!(typeof m=="string"||typeof m=="function"||m===s||m===o||$||m===i||m===g||m===x||F||m===h||S||z||k||typeof m=="object"&&m!==null&&(m.$$typeof===p||m.$$typeof===y||m.$$typeof===c||m.$$typeof===d||m.$$typeof===u||m.$$typeof===T||m.getModuleId!==void 0))}function W(m,D,O){var Z=m.displayName;if(Z)return Z;var ce=D.displayName||D.name||"";return ce!==""?O+"("+ce+")":O}function _(m){return m.displayName||"Context"}function Y(m){if(m==null)return null;if(typeof m.tag=="number"&&C("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),typeof m=="function")return m.displayName||m.name||null;if(typeof m=="string")return m;switch(m){case s:return"Fragment";case n:return"Portal";case o:return"Profiler";case i:return"StrictMode";case g:return"Suspense";case x:return"SuspenseList"}if(typeof m=="object")switch(m.$$typeof){case d:var D=m;return _(D)+".Consumer";case c:var O=m;return _(O._context)+".Provider";case u:return W(m,m.render,"ForwardRef");case y:var Z=m.displayName||null;return Z!==null?Z:Y(m.type)||"Memo";case p:{var ce=m,ue=ce._payload,oe=ce._init;try{return Y(oe(ue))}catch{return null}}}return null}var P=Object.assign,X=0,K,E,M,B,R,N,H;function q(){}q.__reactDisabledLog=!0;function te(){{if(X===0){K=console.log,E=console.info,M=console.warn,B=console.error,R=console.group,N=console.groupCollapsed,H=console.groupEnd;var m={configurable:!0,enumerable:!0,value:q,writable:!0};Object.defineProperties(console,{info:m,log:m,warn:m,error:m,group:m,groupCollapsed:m,groupEnd:m})}X++}}function le(){{if(X--,X===0){var m={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:P({},m,{value:K}),info:P({},m,{value:E}),warn:P({},m,{value:M}),error:P({},m,{value:B}),group:P({},m,{value:R}),groupCollapsed:P({},m,{value:N}),groupEnd:P({},m,{value:H})})}X<0&&C("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}}var he=I.ReactCurrentDispatcher,fe;function Ce(m,D,O){{if(fe===void 0)try{throw Error()}catch(ce){var Z=ce.stack.trim().match(/\n( *(at )?)/);fe=Z&&Z[1]||""}return`
2
+ `+fe+m}}var L=!1,be;{var de=typeof WeakMap=="function"?WeakMap:Map;be=new de}function ve(m,D){if(!m||L)return"";{var O=be.get(m);if(O!==void 0)return O}var Z;L=!0;var ce=Error.prepareStackTrace;Error.prepareStackTrace=void 0;var ue;ue=he.current,he.current=null,te();try{if(D){var oe=function(){throw Error()};if(Object.defineProperty(oe.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(oe,[])}catch(U){Z=U}Reflect.construct(m,[],oe)}else{try{oe.call()}catch(U){Z=U}m.call(oe.prototype)}}else{try{throw Error()}catch(U){Z=U}m()}}catch(U){if(U&&Z&&typeof U.stack=="string"){for(var se=U.stack.split(`
3
+ `),Fe=Z.stack.split(`
4
+ `),me=se.length-1,xe=Fe.length-1;me>=1&&xe>=0&&se[me]!==Fe[xe];)xe--;for(;me>=1&&xe>=0;me--,xe--)if(se[me]!==Fe[xe]){if(me!==1||xe!==1)do if(me--,xe--,xe<0||se[me]!==Fe[xe]){var Le=`
5
+ `+se[me].replace(" at new "," at ");return m.displayName&&Le.includes("<anonymous>")&&(Le=Le.replace("<anonymous>",m.displayName)),typeof m=="function"&&be.set(m,Le),Le}while(me>=1&&xe>=0);break}}}finally{L=!1,he.current=ue,le(),Error.prepareStackTrace=ce}var tt=m?m.displayName||m.name:"",b=tt?Ce(tt):"";return typeof m=="function"&&be.set(m,b),b}function pe(m,D,O){return ve(m,!1)}function qe(m){var D=m.prototype;return!!(D&&D.isReactComponent)}function G(m,D,O){if(m==null)return"";if(typeof m=="function")return ve(m,qe(m));if(typeof m=="string")return Ce(m);switch(m){case g:return Ce("Suspense");case x:return Ce("SuspenseList")}if(typeof m=="object")switch(m.$$typeof){case u:return pe(m.render);case y:return G(m.type,D,O);case p:{var Z=m,ce=Z._payload,ue=Z._init;try{return G(ue(ce),D,O)}catch{}}}return""}var Ie=Object.prototype.hasOwnProperty,ee={},ie=I.ReactDebugCurrentFrame;function ae(m){if(m){var D=m._owner,O=G(m.type,m._source,D?D.type:null);ie.setExtraStackFrame(O)}else ie.setExtraStackFrame(null)}function Te(m,D,O,Z,ce){{var ue=Function.call.bind(Ie);for(var oe in m)if(ue(m,oe)){var se=void 0;try{if(typeof m[oe]!="function"){var Fe=Error((Z||"React class")+": "+O+" type `"+oe+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof m[oe]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw Fe.name="Invariant Violation",Fe}se=m[oe](D,oe,Z,O,null,"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED")}catch(me){se=me}se&&!(se instanceof Error)&&(ae(ce),C("%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).",Z||"React class",O,oe,typeof se),ae(null)),se instanceof Error&&!(se.message in ee)&&(ee[se.message]=!0,ae(ce),C("Failed %s type: %s",O,se.message),ae(null))}}}var Ze=Array.isArray;function Ae(m){return Ze(m)}function la(m){{var D=typeof Symbol=="function"&&Symbol.toStringTag,O=D&&m[Symbol.toStringTag]||m.constructor.name||"Object";return O}}function ca(m){try{return Pt(m),!1}catch{return!0}}function Pt(m){return""+m}function st(m){if(ca(m))return C("The provided key is an unsupported type %s. This value must be coerced to a string before before using it here.",la(m)),Pt(m)}var rt=I.ReactCurrentOwner,Mt={key:!0,ref:!0,__self:!0,__source:!0},Re,ot,it;it={};function Rt(m){if(Ie.call(m,"ref")){var D=Object.getOwnPropertyDescriptor(m,"ref").get;if(D&&D.isReactWarning)return!1}return m.ref!==void 0}function da(m){if(Ie.call(m,"key")){var D=Object.getOwnPropertyDescriptor(m,"key").get;if(D&&D.isReactWarning)return!1}return m.key!==void 0}function Ge(m,D){if(typeof m.ref=="string"&&rt.current&&D&&rt.current.stateNode!==D){var O=Y(rt.current.type);it[O]||(C('Component "%s" contains the string ref "%s". Support for string refs will be removed in a future major release. This case cannot be automatically converted to an arrow function. We ask you to manually fix this case by using useRef() or createRef() instead. Learn more about using refs safely here: https://reactjs.org/link/strict-mode-string-ref',Y(rt.current.type),m.ref),it[O]=!0)}}function Nt(m,D){{var O=function(){Re||(Re=!0,C("%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)",D))};O.isReactWarning=!0,Object.defineProperty(m,"key",{get:O,configurable:!0})}}function et(m,D){{var O=function(){ot||(ot=!0,C("%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)",D))};O.isReactWarning=!0,Object.defineProperty(m,"ref",{get:O,configurable:!0})}}var ua=function(m,D,O,Z,ce,ue,oe){var se={$$typeof:a,type:m,key:D,ref:O,props:oe,_owner:ue};return se._store={},Object.defineProperty(se._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:!1}),Object.defineProperty(se,"_self",{configurable:!1,enumerable:!1,writable:!1,value:Z}),Object.defineProperty(se,"_source",{configurable:!1,enumerable:!1,writable:!1,value:ce}),Object.freeze&&(Object.freeze(se.props),Object.freeze(se)),se};function Ke(m,D,O,Z,ce){{var ue,oe={},se=null,Fe=null;O!==void 0&&(st(O),se=""+O),da(D)&&(st(D.key),se=""+D.key),Rt(D)&&(Fe=D.ref,Ge(D,ce));for(ue in D)Ie.call(D,ue)&&!Mt.hasOwnProperty(ue)&&(oe[ue]=D[ue]);if(m&&m.defaultProps){var me=m.defaultProps;for(ue in me)oe[ue]===void 0&&(oe[ue]=me[ue])}if(se||Fe){var xe=typeof m=="function"?m.displayName||m.name||"Unknown":m;se&&Nt(oe,xe),Fe&&et(oe,xe)}return ua(m,se,Fe,ce,Z,rt.current,oe)}}var Je=I.ReactCurrentOwner,pt=I.ReactDebugCurrentFrame;function Ye(m){if(m){var D=m._owner,O=G(m.type,m._source,D?D.type:null);pt.setExtraStackFrame(O)}else pt.setExtraStackFrame(null)}var ft;ft=!1;function xt(m){return typeof m=="object"&&m!==null&&m.$$typeof===a}function Lt(){{if(Je.current){var m=Y(Je.current.type);if(m)return`
6
6
 
7
- Check the render method of \``+h+"`."}return""}}function Lt(h){{if(h!==void 0){var k=h.fileName.replace(/^.*[\\\/]/,""),O=h.lineNumber;return`
7
+ Check the render method of \``+m+"`."}return""}}function pa(m){{if(m!==void 0){var D=m.fileName.replace(/^.*[\\\/]/,""),O=m.lineNumber;return`
8
8
 
9
- Check your code at `+k+":"+O+"."}return""}}var Ot={};function la(h){{var k=Nt();if(!k){var O=typeof h=="string"?h:h.displayName||h.name;O&&(k=`
9
+ Check your code at `+D+":"+O+"."}return""}}var zt={};function Ot(m){{var D=Lt();if(!D){var O=typeof m=="string"?m:m.displayName||m.name;O&&(D=`
10
10
 
11
- Check the top-level render call using <`+O+">.")}return k}}function zt(h,k){{if(!h._store||h._store.validated||h.key!=null)return;h._store.validated=!0;var O=la(k);if(Ot[O])return;Ot[O]=!0;var Z="";h&&h._owner&&h._owner!==tt.current&&(Z=" It was passed a child from "+H(h._owner.type)+"."),Ke(h),j('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',O,Z),Ke(null)}}function Wt(h,k){{if(typeof h!="object")return;if(ht(h))for(var O=0;O<h.length;O++){var Z=h[O];ft(Z)&&zt(Z,k)}else if(ft(h))h._store&&(h._store.validated=!0);else if(h){var ce=f(h);if(typeof ce=="function"&&ce!==h.entries)for(var pe=ce.call(h),ie;!(ie=pe.next()).done;)ft(ie.value)&&zt(ie.value,k)}}}function ca(h){{var k=h.type;if(k==null||typeof k=="string")return;var O;if(typeof k=="function")O=k.propTypes;else if(typeof k=="object"&&(k.$$typeof===u||k.$$typeof===g))O=k.propTypes;else return;if(O){var Z=H(k);ot(O,h.props,"prop",Z,h)}else if(k.PropTypes!==void 0&&!yt){yt=!0;var ce=H(k);j("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ce||"Unknown")}typeof k.getDefaultProps=="function"&&!k.getDefaultProps.isReactClassApproved&&j("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function da(h){{for(var k=Object.keys(h.props),O=0;O<k.length;O++){var Z=k[O];if(Z!=="children"&&Z!=="key"){Ke(h),j("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",Z),Ke(null);break}}h.ref!==null&&(Ke(h),j("Invalid attribute `ref` supplied to `React.Fragment`."),Ke(null))}}var xt={};function _t(h,k,O,Z,ce,pe){{var ie=V(h);if(!ie){var re="";(h===void 0||typeof h=="object"&&h!==null&&Object.keys(h).length===0)&&(re+=" 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 De=Lt(ce);De?re+=De:re+=Nt();var ge;h===null?ge="null":ht(h)?ge="array":h!==void 0&&h.$$typeof===a?(ge="<"+(H(h.type)||"Unknown")+" />",re=" Did you accidentally export a JSX literal instead of a component?"):ge=typeof h,j("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",ge,re)}var be=gt(h,k,O,ce,pe);if(be==null)return be;if(ie){var b=k.children;if(b!==void 0)if(Z)if(ht(b)){for(var L=0;L<b.length;L++)Wt(b[L],h);Object.freeze&&Object.freeze(b)}else j("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 Wt(b,h)}if(ne.call(k,"key")){var A=H(h),q=Object.keys(k).filter(function(Ue){return Ue!=="key"}),oe=q.length>0?"{key: someKey, "+q.join(": ..., ")+": ...}":"{key: someKey}";if(!xt[A+oe]){var Re=q.length>0?"{"+q.join(": ..., ")+": ...}":"{}";j(`A props object containing a "key" prop is being spread into JSX:
11
+ Check the top-level render call using <`+O+">.")}return D}}function Wt(m,D){{if(!m._store||m._store.validated||m.key!=null)return;m._store.validated=!0;var O=Ot(D);if(zt[O])return;zt[O]=!0;var Z="";m&&m._owner&&m._owner!==Je.current&&(Z=" It was passed a child from "+Y(m._owner.type)+"."),Ye(m),C('Each child in a list should have a unique "key" prop.%s%s See https://reactjs.org/link/warning-keys for more information.',O,Z),Ye(null)}}function _t(m,D){{if(typeof m!="object")return;if(Ae(m))for(var O=0;O<m.length;O++){var Z=m[O];xt(Z)&&Wt(Z,D)}else if(xt(m))m._store&&(m._store.validated=!0);else if(m){var ce=f(m);if(typeof ce=="function"&&ce!==m.entries)for(var ue=ce.call(m),oe;!(oe=ue.next()).done;)xt(oe.value)&&Wt(oe.value,D)}}}function ha(m){{var D=m.type;if(D==null||typeof D=="string")return;var O;if(typeof D=="function")O=D.propTypes;else if(typeof D=="object"&&(D.$$typeof===u||D.$$typeof===y))O=D.propTypes;else return;if(O){var Z=Y(D);Te(O,m.props,"prop",Z,m)}else if(D.PropTypes!==void 0&&!ft){ft=!0;var ce=Y(D);C("Component %s declared `PropTypes` instead of `propTypes`. Did you misspell the property assignment?",ce||"Unknown")}typeof D.getDefaultProps=="function"&&!D.getDefaultProps.isReactClassApproved&&C("getDefaultProps is only used on classic React.createClass definitions. Use a static property named `defaultProps` instead.")}}function ma(m){{for(var D=Object.keys(m.props),O=0;O<D.length;O++){var Z=D[O];if(Z!=="children"&&Z!=="key"){Ye(m),C("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",Z),Ye(null);break}}m.ref!==null&&(Ye(m),C("Invalid attribute `ref` supplied to `React.Fragment`."),Ye(null))}}var Vt={};function qt(m,D,O,Z,ce,ue){{var oe=V(m);if(!oe){var se="";(m===void 0||typeof m=="object"&&m!==null&&Object.keys(m).length===0)&&(se+=" 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 Fe=pa(ce);Fe?se+=Fe:se+=Lt();var me;m===null?me="null":Ae(m)?me="array":m!==void 0&&m.$$typeof===a?(me="<"+(Y(m.type)||"Unknown")+" />",se=" Did you accidentally export a JSX literal instead of a component?"):me=typeof m,C("React.jsx: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: %s.%s",me,se)}var xe=Ke(m,D,O,ce,ue);if(xe==null)return xe;if(oe){var Le=D.children;if(Le!==void 0)if(Z)if(Ae(Le)){for(var tt=0;tt<Le.length;tt++)_t(Le[tt],m);Object.freeze&&Object.freeze(Le)}else C("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 _t(Le,m)}if(Ie.call(D,"key")){var b=Y(m),U=Object.keys(D).filter(function(re){return re!=="key"}),A=U.length>0?"{key: someKey, "+U.join(": ..., ")+": ...}":"{key: someKey}";if(!Vt[b+A]){var Q=U.length>0?"{"+U.join(": ..., ")+": ...}":"{}";C(`A props object containing a "key" prop is being spread into JSX:
12
12
  let props = %s;
13
13
  <%s {...props} />
14
14
  React keys must be passed directly to JSX without using spread:
15
15
  let props = %s;
16
- <%s key={someKey} {...props} />`,oe,A,Re,A),xt[A+oe]=!0}}return h===s?da(be):ca(be),be}}function Vt(h,k,O){return _t(h,k,O,!0)}function Yt(h,k,O){return _t(h,k,O,!1)}var ua=Yt,pa=Vt;wt.Fragment=s,wt.jsx=ua,wt.jsxs=pa})()),wt}process.env.NODE_ENV==="production"?ga.exports=gs():ga.exports=ys();var t=ga.exports;ms(t);const fs=r.styled(r.Box)(({theme:e})=>({position:"absolute",top:8,right:8,display:"flex",flexDirection:"column",gap:4,zIndex:1,backgroundColor:e.palette.background.panel})),Ya=r.styled(r.IconButton)({padding:4}),xs=r.styled(r.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),bs=r.styled(r.Avatar)({width:60,height:60,marginBottom:8}),vs=r.styled(r.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),Cs=r.styled(r.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),js=({imgUrl:e,name:a,contactId:n,navigate:s,isLoading:i=!1,onError:o,onClose:c,isBusiness:d=!1})=>{const u=l.useCallback(y=>v=>{try{if(v.preventDefault(),v.stopPropagation(),!y)throw new Error("Navigation URL is required");v.ctrlKey||v.metaKey||v.button===1?window.open(y,"_blank","noopener,noreferrer"):s(y)}catch(C){o?.(C instanceof Error?C:new Error("Navigation failed"))}},[s,o]),m=u(d?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),x=u(`/a/conversations/conversations?contactId=${n}`),g=a||"Unknown Contact",p=`Avatar for ${g}`;return t.jsxs(xs,{children:[t.jsxs(fs,{children:[t.jsx(Ya,{color:"info",size:"small",onClick:y=>{m(y),c()},onMouseDown:y=>{y.button===1&&(m(y),c())},disabled:!n,"aria-label":"View contact details",children:t.jsx(Yn,{fontSize:"small"})}),t.jsx(Ya,{color:"info",size:"small",onClick:y=>{x(y),c()},onMouseDown:y=>{y.button===1&&(x(y),c())},"aria-label":"Go to conversations",children:t.jsx(qn,{fontSize:"small"})})]}),i?t.jsx(Cs,{children:t.jsx(r.CircularProgress,{size:24})}):t.jsx(bs,{src:e,alt:p,onError:()=>o?.(new Error("Failed to load avatar"))}),t.jsx(vs,{variant:"h6",title:g,children:g})]})},Ss=r.styled(r.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),ws=r.styled(r.Box)({width:"100%",borderBottom:"1px solid lightgray"}),Is=r.styled(r.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),Ts=r.styled(r.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),Es=r.styled(r.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),Ds=r.styled(r.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%"}),ks=r.styled(r.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),As=({icon:e,contactList:a,title:n,showTitle:s=!0})=>{const i=o=>t.jsx(Is,{children:t.jsxs(Es,{children:[t.jsx(Ts,{children:e}),t.jsxs(Ds,{children:[t.jsx(r.Tooltip,{title:o.address,arrow:!0,placement:"top",children:t.jsx(r.Typography,{variant:"subtitle1",fontWeight:"semi-bold",fontSize:14,color:"text.primary",sx:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",cursor:"default"},children:o.address})}),o.profileName&&t.jsx(r.Typography,{variant:"body2",fontSize:10,color:"text.disabled",sx:{marginLeft:"5px",marginTop:"10px"},children:o.profileName})]}),o.note&&t.jsx(ks,{variant:"body2",fontSize:12,color:"text.secondary",children:o.note})]})},o.id);return t.jsxs(Ss,{children:[s&&t.jsx(ws,{children:t.jsx(r.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(i)]})},Fs=r.styled(r.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),$s=r.styled(r.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),Bs=r.styled(r.Box)({display:"flex",alignItems:"center",gap:8,width:"100%"}),Us=r.styled(r.Typography)({fontSize:14}),Ps=r.styled(Ae.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Ms=({properties:e,title:a})=>{const n=i=>i.replace(/-/g," "),s=(i,o)=>{if(!i||Array.isArray(i)&&i.length===0)return"";if(Array.isArray(i))return i.map(c=>s(c,o)).join(", ");if(typeof i=="string"){const c=at(i,at.ISO_8601).isValid(),d=u=>at(i).format(u);switch(o){case se.ContactField_type.TIME:return c?d("HH:mm"):i;case se.ContactField_type.DATE:return c?d("DD/MM/YYYY"):i;case se.ContactField_type.TIMERANGE:case se.ContactField_type.DATERANGE:if(c)return o===se.ContactField_type.TIMERANGE?d("HH:mm"):d("DD/MM/YYYY");const u=i.split(" ");if(u.length===2){const[m,x]=u,g=o===se.ContactField_type.TIMERANGE?at(m).format("HH:mm"):at(m).format("DD/MM/YYYY"),p=o===se.ContactField_type.TIMERANGE?at(x).format("HH:mm"):at(x).format("DD/MM/YYYY");return`${g} - ${p}`}return i;default:return i}}return i};return t.jsxs(Fs,{children:[t.jsx($s,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((i,o)=>i.value.length>0&&t.jsxs(Bs,{children:[t.jsx(Ps,{}),t.jsxs(Us,{children:[n(i.nameKey),":"," ",s(i.value,i.type)]})]},o))]})},Rs=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ns=r.styled(r.Box)({marginBottom:16}),Ls=r.styled(r.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),Os=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Rs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(Ns,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(Ls,{label:n.name,color:"primary",size:"small"},n.id))})]});function qa(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const zs=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ws=({contactData:e,title:a})=>!e||!qa(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(zs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(r.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function Ga(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}const _s=({name:e,memberId:a,navigate:n})=>{const s=`/a/conversations/conversations?contactId=${a}`,i=o=>{o.preventDefault(),o.stopPropagation(),o.ctrlKey||o.metaKey||o.button===1?window.open(s,"_blank","noopener,noreferrer"):n(s)};return t.jsx(r.Typography,{variant:"body2",color:"text.secondary",role:"link",tabIndex:0,sx:{cursor:"pointer","&:hover":{textDecoration:"underline"}},onClick:i,onMouseDown:o=>{o.button===1&&i(o)},onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&i(o)},children:e})},Vs=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ys=({contactData:e,title:a,navigate:n})=>!e||!Ga(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Vs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(s=>t.jsx(_s,{memberId:String(s.id),name:s.name,navigate:n},s.id))]});var qs="Labels",Gs="Phone",Hs="Business",Ks="Business Members",Js="Properties",Qs="View",Xs="Tags",Zs={add:"Add",note:"Note",number:"Number",email:"Email",phones:"Phones",close:"Close",back:"Back",createNew:"Create new",delete:"Delete",cancel:"Cancel",save:"Save",noOptions:"No options",noValue:"No value",birthdate:"Birthdate",country:"Country",searchLocation:"Search location",date:"Date",from:"From",to:"To",time:"Time",title:"Title",addTitle:"Add title",description:"Description",location:"Location",addLocation:"Add location",selectLocation:"Select location",color:"Color",allDay:"All day",calendar:"Calendar",selectCalendar:"Select calendar",recurrence:"Recurrence",noRepeat:"Does not repeat",edit:"Edit",duplicate:"Duplicate",event:"Event",task:"Task",editEvent:"Edit event",editTask:"Edit task",saveEvent:"Save event",saveTask:"Save task",createEvent:"Create event",createTask:"Create task",finalizeEvent:"Finalize event",markAsCompleted:"Mark as completed",markAsIncomplete:"Mark as incomplete",linkContacts:"Linked contacts",searchContacts:"Search contacts",errorSavingChanges:"Error saving changes",savingChanges:"Saving changes...",changesSaved:"Changes saved",nameRequired:"Name is required",calendarCreatedSuccess:"Calendar created successfully",calendarUpdatedSuccess:"Calendar updated successfully",eventAlreadyDeleted:"Event has already been deleted",taskAlreadyDeleted:"Task has already been deleted",deleting:"Deleting...",confirm:"Confirm",name:"Name",create:"Create",showEvent:"Show Event",finalizeTask:"Finalize Task",showTask:"Show Task",createCalendar:"Create Calendar",editCalendar:"Edit Calendar",calendarInfo:"Calendar Information",deleteCalendar:"Delete Calendar",deleteConfirm:'Are you sure you want to delete the calendar "{{title}}"?',day:"Day",week:"Week",month:"Month",today:"Today",next:"Next",reminders:"Reminders",addReminder:"Add Reminder",shareWithUsers:"Share with Users",noSharedUsers:"No shared users",loading:"Loading...",moreActions:"More Actions",createdBy:"Created by",private:"Private",everyDay:"Every day",everyWeek:"Every week",everyMonth:"Every month",everyYear:"Every year",everyTwoDays:"Every 2 days",everyTwoWeeks:"Every 2 weeks",everyWeekday:"Weekdays (M-F)",seeMore:"See more"},er={searchAddress:"Search address",enterLocation:"Enter a location",city:"City",state:"State",postalCode:"Postal code",country:"Country",saveMainAddress:"Save main address",saveSecondaryAddress:"Save secondary address",loadingGoogleMaps:"Loading Google Maps...",googleMapsUnavailable:"Google Maps unavailable",googleMapsNotLoaded:"Google Maps not loaded",selectedPlaceNoLocation:"Selected place has no location data"},tr={upload:"Upload photo",delete:"Delete photo"},ar={from:"From",to:"To"},nr={contactDetails:{contactOwner:"Contact Owner",business:"Business",createdBy:"Created By",modifiedBy:"Modified By",street:"Street",city:"City",state:"State",postcode:"Postcode",country:"Country",addressInformation:"Address Information",primaryAddress:"Primary Address",secondaryAddress:"Secondary Address",contactInformation:"Contact Information",phones:"Phones",contactInfo:{emptySelection:"No selection"}},businessDetails:{businessOwner:"Business Owner"},sidebar:{events:{errorDate:"End date must be after start date"}}},sr={reminders:{title:"Reminders",addReminder:"Add Reminder",errorDate:"The 'To' date must be greater than the 'From' date",searchContact:"Search Contact",sendReminder:{pt1:"Send reminder",pt2:"before."},timePeriod:{minute:"minute/s",hour:"hour/s",day:"day/s"},sendReminderToContact:"Send reminder to external contact"},shortcuts:{title:"Keyboard Shortcuts",advice:"Tip: You can use these shortcuts to speed up event creation and editing"},myCalendars:"My calendars",noCalendar:"No calendar",othersCalendars:"Other calendars"},rr={labels:qs,phone:Gs,business:Hs,businessMembers:Ks,properties:Js,view:Qs,tags:Xs,global:Zs,searchLocationModal:er,avatar:tr,contactEdit:ar,conversations:nr,calendarView:sr},or="Etiquetas",ir="Tel\xE9fono",lr="Empresa",cr="Miembros de la empresa",dr="Propiedades",ur="Ver",pr="Etiquetas",hr={add:"Agregar",note:"Nota",number:"N\xFAmero",email:"Correo electr\xF3nico",phones:"Tel\xE9fonos",close:"Cerrar",back:"Volver",createNew:"Crear nuevo",delete:"Eliminar",cancel:"Cancelar",save:"Guardar",noOptions:"Sin opciones",noValue:"Sin valor",birthdate:"Fecha de nacimiento",country:"Pa\xEDs",searchLocation:"Buscar ubicaci\xF3n",date:"Fecha",from:"Desde",to:"Hasta",time:"Hora",title:"T\xEDtulo",addTitle:"Agregar t\xEDtulo",description:"Descripci\xF3n",location:"Ubicaci\xF3n",addLocation:"Agregar ubicaci\xF3n",selectLocation:"Seleccionar ubicaci\xF3n",color:"Color",allDay:"Todo el d\xEDa",calendar:"Calendario",selectCalendar:"Seleccionar calendario",recurrence:"Recurrencia",noRepeat:"No se repite",edit:"Editar",duplicate:"Duplicar",event:"Evento",task:"Tarea",editEvent:"Editar evento",editTask:"Editar tarea",saveEvent:"Guardar evento",saveTask:"Guardar tarea",createEvent:"Crear evento",createTask:"Crear tarea",finalizeEvent:"Finalizar evento",markAsCompleted:"Marcar como completado",markAsIncomplete:"Marcar como incompleto",linkContacts:"Contactos vinculados",searchContacts:"Buscar contactos",errorSavingChanges:"Error al guardar los cambios",savingChanges:"Guardando cambios...",changesSaved:"Cambios guardados",nameRequired:"El nombre es obligatorio",calendarCreatedSuccess:"Calendario creado con \xE9xito",calendarUpdatedSuccess:"Calendario actualizado con \xE9xito",eventAlreadyDeleted:"l evento ya ha sido eliminado",taskAlreadyDeleted:"La tarea ya ha sido eliminada",deleting:"Eliminando...",confirm:"Confirmar",name:"Nombre",create:"Crear",showEvent:"Mostrar evento",finalizeTask:"Finalizar tarea",showTask:"Mostrar tarea",createCalendar:"Crear calendario",editCalendar:"Editar calendario",calendarInfo:"Informaci\xF3n del calendario",deleteCalendar:"Eliminar calendario",deleteConfirm:'\xBFEst\xE1 seguro de que desea eliminar el calendario "{{title}}"?',day:"\xEDa",week:"Semana",month:"Mes",today:"Hoy",next:"Siguiente",reminders:"Recordatorios",addReminder:"Agregar recordatorio",shareWithUsers:"Compartir con usuarios",noSharedUsers:"Sin usuarios compartidos",loading:"Cargando...",moreActions:"M\xE1s acciones",createdBy:"Creado por",private:"Privado",everyDay:"Cada d\xEDa",everyWeek:"Cada semana",everyMonth:"Cada mes",everyYear:"Cada a\xF1o",everyTwoDays:"Cada 2 d\xEDas",everyTwoWeeks:"Cada 2 semanas",everyWeekday:"D\xEDas laborables (L-V)",seeMore:"Ver m\xE1s"},mr={searchAddress:"Buscar direcci\xF3n",enterLocation:"Ingres\xE1 una ubicaci\xF3n",city:"Ciudad",state:"Estado",postalCode:"C\xF3digo postal",country:"Pa\xEDs",saveMainAddress:"Guardar como direcci\xF3n principal",saveSecondaryAddress:"Guardar como direcci\xF3n secundaria",loadingGoogleMaps:"Cargando Google Maps...",googleMapsUnavailable:"Google Maps no disponible",googleMapsNotLoaded:"Google Maps no est\xE1 cargado",selectedPlaceNoLocation:"La ubicaci\xF3n seleccionada no tiene coordenadas"},gr={upload:"Subir foto",delete:"Eliminar foto"},yr={from:"Desde",to:"Hasta"},fr={contactDetails:{contactOwner:"Propietario del contacto",business:"Empresa",createdBy:"Creado por",modifiedBy:"Modificado por",street:"Calle",city:"Ciudad",state:"Estado",postcode:"C\xF3digo postal",country:"Pa\xEDs",addressInformation:"Informaci\xF3n de direcci\xF3n",primaryAddress:"Direcci\xF3n principal",secondaryAddress:"Direcci\xF3n secundaria",contactInformation:"Informaci\xF3n de contacto",phones:"Tel\xE9fonos",contactInfo:{emptySelection:"Sin selecci\xF3n"}},businessDetails:{businessOwner:"Propietario de la empresa"},sidebar:{events:{errorDate:"La fecha de finalizaci\xF3n debe ser posterior a la fecha de inicio"}}},xr={reminders:{title:"Recordatorios",addReminder:"Agregar recordatorio",errorDate:"La fecha 'Hasta' debe ser mayor que la fecha 'Desde'",searchContact:"Buscar contacto",sendReminder:{pt1:"Enviar recordatorio",pt2:"antes."},timePeriod:{minute:"minuto/s",hour:"hora/s",day:"d\xEDa/s"},sendReminderToContact:"Enviar recordatorio al contacto externo"},shortcuts:{title:"Atajos de teclado",advice:"Consejo: Puedes usar estos atajos para acelerar la creaci\xF3n y edici\xF3n de eventos"},myCalendars:"Mis calendarios",noCalendar:"Sin calendario",othersCalendars:"Otros calendarios"},br={labels:or,phone:ir,business:lr,businessMembers:cr,properties:dr,view:ur,tags:pr,global:hr,searchLocationModal:mr,avatar:gr,contactEdit:yr,conversations:fr,calendarView:xr};const vr={en:{translation:rr},es:{translation:br}},It=Gn.createInstance();It.use(We.initReactI18next).init({resources:vr,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const Cr=r.styled(r.Box)(({theme:e})=>({backgroundColor:e.palette.background.panel,boxShadow:"0px 4px 10px rgba(0, 0, 0, 0.1)",borderRadius:"8px",width:300,maxHeight:"calc(100vh - 500px)",overflowY:"auto",transition:"opacity 0.3s ease, transform 0.3s ease",padding:"8px",zIndex:1300,"&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-track":{background:"#E0E0E0",borderRadius:10},"&::-webkit-scrollbar-thumb":{background:"#9E9E9E",borderRadius:10,transition:"background 0.3s"},"&::-webkit-scrollbar-thumb:hover":{background:"#616161"}})),jr=({open:e,anchorEl:a,onClose:n,contactData:s,avatarImgUrl:i,navigate:o,language:c="en"})=>{const{t:d,i18n:u}=We.useTranslation();l.useEffect(()=>{c&&u.changeLanguage(c)},[c,u]);const m=d,x=Ga(s),g=qa(s),p=[{icon:t.jsx(Ae.PhoneEnabled,{fontSize:"small"}),title:m("phone"),contactList:s?.phones||[],showTitle:!0},{icon:t.jsx(Ae.Email,{fontSize:"small"}),title:m("email"),contactList:s?.emails||[],showTitle:!0},{icon:t.jsx(Ae.WhatsApp,{fontSize:"small"}),title:"IM",contactList:s?.ims_whatsapp||[],showTitle:!0},{icon:t.jsx(Ae.Facebook,{fontSize:"small"}),contactList:s?.ims_facebook||[],showTitle:!1},{icon:t.jsx(Ae.Instagram,{fontSize:"small"}),contactList:s?.ims_instagram||[],showTitle:!1},{icon:t.jsx(Ae.ThreeP,{fontSize:"small"}),contactList:s?.ims_webchat||[],showTitle:!1}];return l.useEffect(()=>{const y=v=>{v.key==="Escape"&&n()};return e&&window.addEventListener("keydown",y),()=>{window.removeEventListener("keydown",y)}},[e,n]),t.jsx(r.Popper,{sx:{zIndex:1300},open:e,anchorEl:a,placement:"bottom-start","data-popper-child":"true",children:t.jsx(r.ClickAwayListener,{onClickAway:n,children:t.jsx(Cr,{children:t.jsxs(r.CardContent,{children:[t.jsx(js,{navigate:o,contactId:s?.id,imgUrl:i,name:s?.name,onClose:n,isBusiness:x}),t.jsx(Os,{contactData:s,title:m("labels")}),g&&t.jsx(Ws,{contactData:s,title:m("business")}),x&&t.jsx(Ys,{contactData:s,title:m("businessMembers"),navigate:o}),p.map((y,v)=>t.jsx(As,{icon:y.icon,title:y.title,contactList:y.contactList,showTitle:y.showTitle},v)),t.jsx(Ms,{properties:s?.properties,title:m("properties")})]})})})})},Ha=e=>t.jsx(We.I18nextProvider,{i18n:It,children:t.jsx(jr,{...e})}),Ka=e=>e,Ja=l.createContext(Ka),Sr=({t:e,children:a})=>t.jsx(Ja.Provider,{value:e,children:a}),ye=()=>{const e=l.useContext(Ja);return e?(...a)=>{const[n,...s]=a;return e(n,...s)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),Ka)},wr=({tags:e,onEditTags:a})=>{const n=ye(),[s,i]=l.useState(null),o=l.useMemo(()=>e??[],[e]),c=o.slice(0,4),d=Math.max(o.length-c.length,0),u=g=>{i(g.currentTarget)},m=()=>{i(null)},x=!!s;return t.jsxs(r.Box,{sx:{mt:1,display:"flex",justifyContent:"center"},children:[t.jsxs(r.Box,{sx:{maxWidth:320,position:"relative","&:hover .tags-action, &:focus-within .tags-action":{opacity:1}},children:[t.jsxs(r.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",justifyContent:"center",children:[c.map(g=>t.jsx(r.Chip,{label:g.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:140,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},g.id)),d>0?t.jsx(r.Chip,{label:`+${d}`,size:"small",variant:"outlined",onClick:u,sx:{borderRadius:999}}):null]}),t.jsx(r.IconButton,{className:"tags-action",size:"small","aria-label":o.length?n("tags.edit"):n("tags.add"),onClick:a,sx:{position:"absolute",left:"100%",ml:1,top:"50%",transform:"translateY(-50%)",color:"text.secondary",bgcolor:g=>g.palette.background.panel,opacity:0,transition:"opacity 0.2s ease-in-out","&:hover":{bgcolor:"action.hover",color:"text.primary"}},children:o.length?t.jsx(bt,{fontSize:"small"}):t.jsx(Hn,{fontSize:"small"})})]}),t.jsx(r.Popover,{open:x,anchorEl:s,onClose:m,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:t.jsxs(r.Box,{sx:{p:1.5,maxWidth:320,maxHeight:240,overflowY:"auto"},children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{mb:1},children:n("tags")}),t.jsx(r.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",children:o.map(g=>t.jsx(r.Chip,{label:g.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:160,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},g.id))})]})})]})},Qa=l.createContext(null),Ir=Qa.Provider,Je=()=>l.useContext(Qa),Tr=r.styled(r.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),Er=r.styled(r.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),Dr=r.styled(r.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),kr=r.styled(r.IconButton)({opacity:0,visibility:"hidden",transition:"all 0.2s",position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)"}),Ar=({displayName:e,contactType:a,firstName:n,lastName:s,name:i,entityId:o,onEntityUpdated:c})=>{const d=Je(),[u,m]=l.useState(!1),[x,g]=l.useState(!1),[p,y]=l.useState({firstName:n||"",lastName:s||"",name:i||""});l.useEffect(()=>{y({firstName:n||"",lastName:s||"",name:i||""})},[n,s,i]);const v=async()=>{if(!(!d||!o||!a||a==="unknown")){g(!0);try{let f={};a==="contact"?f={firstName:p.firstName,lastName:p.lastName}:a==="business"&&(f={name:p.name});const S=await d.updateEntity({entityType:a,entityId:o,body:f});S&&c&&c(S),m(!1)}catch(f){console.error("Failed to update name",f)}finally{g(!1)}}},C=a==="contact"||a==="business";return u?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,mt:1},children:[a==="contact"?t.jsxs(t.Fragment,{children:[t.jsx(r.TextField,{value:p.firstName,onChange:f=>y({...p,firstName:f.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(r.TextField,{value:p.lastName,onChange:f=>y({...p,lastName:f.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(r.TextField,{value:p.name,onChange:f=>y({...p,name:f.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(r.IconButton,{onClick:v,disabled:x,color:"primary",children:x?t.jsx(r.CircularProgress,{size:24}):t.jsx(Ae.Save,{})})]}):t.jsx(Er,{children:t.jsxs(Dr,{children:[t.jsx(Tr,{variant:"h6",title:e,children:e}),C&&t.jsx(kr,{size:"small",onClick:()=>m(!0),className:"edit-icon",sx:{ml:1},children:t.jsx(Ae.Edit,{fontSize:"small"})})]})})},Fr=({src:e,alt:a,onError:n,onUpload:s,onDelete:i,isUploading:o,isDeleting:c})=>{const d=ye();return t.jsxs(r.Box,{sx:{width:60,height:60,mb:1,position:"relative","&:hover .avatar-actions, &:focus-within .avatar-actions":{opacity:1,pointerEvents:"auto"}},children:[t.jsx(r.Avatar,{src:e,alt:a,onError:n,sx:{width:60,height:60}}),t.jsxs(r.Box,{className:"avatar-actions",sx:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",gap:.5,bgcolor:"rgba(0, 0, 0, 0.35)",opacity:0,pointerEvents:"none",transition:"opacity 0.2s ease-in-out"},children:[t.jsx(r.IconButton,{size:"small","aria-label":d("avatar.upload"),onClick:s,disabled:!!o,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(Kn,{fontSize:"small"})}),t.jsx(r.IconButton,{size:"small","aria-label":d("avatar.delete"),onClick:i,disabled:!!c,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(qt,{fontSize:"small"})})]})]})},$r=r.styled(r.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),Br=({imgUrl:e,displayName:a,onError:n,tags:s,onEditTags:i,onUploadPhoto:o,onPhotoFileChange:c,photoInputRef:d,isUploadingPhoto:u,onDeletePhoto:m,isDeletingPhoto:x,contactType:g,firstName:p,lastName:y,name:v,entityId:C,onEntityUpdated:f})=>{const S=`Avatar for ${a}`;return t.jsxs($r,{children:[t.jsx("input",{ref:d,type:"file",accept:"image/*",onChange:c,style:{display:"none"}}),t.jsx(Fr,{src:e,alt:S,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:o,isUploading:u,onDelete:m,isDeleting:x}),t.jsx(Ar,{displayName:a,contactType:g,firstName:p,lastName:y,name:v,entityId:C,onEntityUpdated:f}),t.jsx(wr,{tags:s,onEditTags:i})]})},ya=20,Ur=e=>{const{popperContainer:a,...n}=e;return t.jsx(Jn,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},Pr=({value:e,options:a,onChange:n,onBack:s,onSave:i,isSaving:o,onCreateNew:c,isCreatingNew:d,popperContainer:u})=>{const m=ye(),[x,g]=l.useState(""),[p,y]=l.useState(ya),v=l.useDeferredValue(x),C=l.useMemo(()=>a??[],[a]),f=l.useMemo(()=>{const E=String(v??"").trim().toLowerCase();return E?C.filter(D=>String(D?.name??"").toLowerCase().includes(E)):C},[C,v]),S=l.useMemo(()=>f.slice(0,p),[f,p]),j=l.useMemo(()=>{const E=new Map;for(const D of e??[])D?.id&&E.set(String(D.id),D);for(const D of S??[])D?.id&&(E.has(String(D.id))||E.set(String(D.id),D));return Array.from(E.values())},[e,S]),w=(E,D)=>{g(D??""),y(ya)},I=E=>{const D=E;D.scrollTop+D.clientHeight>=D.scrollHeight-24&&y(F=>F+ya)},z=()=>{const E=String(x??"").trim(),D=!E||o||d;return t.jsxs(r.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[m("global.noOptions"),t.jsx(qe.LoadingButton,{onClick:()=>c(E),loading:d,disabled:D,variant:"contained",size:"small",sx:{marginTop:1.3},children:m("global.createNew")})]})};return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(r.IconButton,{size:"small",onClick:s,"aria-label":m("global.back"),disabled:o,children:t.jsx(ha,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"subtitle1",children:m("tags")}),t.jsx(r.Box,{sx:{flex:1}}),t.jsx(qe.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(nt,{}),onClick:i,loading:o,disabled:o,children:m("global.save")})]}),t.jsx(r.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(E,D)=>n(D),options:j,filterOptions:E=>E,inputValue:x,onInputChange:w,getOptionLabel:E=>E?.name??"",isOptionEqualToValue:(E,D)=>String(E?.id)===String(D?.id),PopperComponent:E=>t.jsx(Ur,{...E,popperContainer:u}),renderOption:(E,D)=>{const{key:F,...U}=E;return l.createElement("li",{...U,key:D?.id?String(D.id):String(F??D?.name??"")},D.name??"")},renderTags:(E,D)=>E.map((F,U)=>{const V=D({index:U}),{key:Y,...R}=V;return t.jsx(r.Chip,{label:F.name??"",...R},F?.id?String(F.id):String(Y??F?.name??U))}),size:"small",renderInput:E=>t.jsx(r.TextField,{...E,size:"small"}),ListboxProps:{onScroll:I,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(z,{}),sx:{width:"100%"}})]})};var Mr=Object.defineProperty,Rr=(e,a,n)=>a in e?Mr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Xa=(e,a,n)=>Rr(e,typeof a!="symbol"?a+"":a,n);let Za=class extends Error{constructor(a,n,s){super(a),Xa(this,"status"),Xa(this,"body"),this.name="ApiError",this.status=n,this.body=s}};async function Me({url:e,method:a="GET",headers:n,body:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...s?{"Content-Type":"application/json"}:{},...n??{}},body:s?JSON.stringify(s):void 0,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new Za(d,o.status,c)}return c}async function Nr({url:e,method:a="POST",headers:n,formData:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...n??{}},body:s,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new Za(d,o.status,c)}return c}function we(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,s=a.startsWith("/")?a:`/${a}`;return`${n}${s}`}function Pe(e,a){const n=encodeURIComponent(a);return{CONTACTS:we(e,`/contacts/${n}`),MEDIA:we(e,`/media/${n}`),SETTINGS:we(e,`/settings/${n}`)}}async function Lr({baseUrl:e,spaceId:a,signal:n}){const s=Pe(e,a),i=we(s.CONTACTS,"/labels");return Me({url:i,signal:n})}async function en({baseUrl:e,spaceId:a,name:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/labels");return Me({url:o,method:"POST",body:{name:n},signal:s})}async function Or({baseUrl:e,spaceId:a,contactId:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return Me({url:o,signal:s})}async function zr({baseUrl:e,spaceId:a,businessId:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,`/business/${encodeURIComponent(n)}`);return Me({url:o,signal:s})}async function Wr({baseUrl:e,spaceId:a,forType:n,signal:s}){const i=Pe(e,a),o=`${we(i.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return Me({url:o,signal:s})}async function Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:i,signal:o}){const c=n==="business"?`/business/${encodeURIComponent(s)}`:`/contacts/${encodeURIComponent(s)}`,d=Pe(e,a),u=we(d.CONTACTS,c);return Me({url:u,method:"PUT",body:i,signal:o})}async function _r({baseUrl:e,spaceId:a,pagination:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/Search");return Me({url:o,method:"POST",body:n,signal:s})}async function Vr({baseUrl:e,spaceId:a,business:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/business");return Me({url:o,method:"POST",body:n,signal:s})}async function Ht({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/contactAddresses");return Me({url:o,method:"DELETE",body:n,signal:s})}async function Yr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/contactAddresses/check");return Me({url:o,method:"POST",body:n,signal:s})}async function qr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,"/contactAddresses/set");return Me({url:o,method:"POST",body:n,signal:s})}async function Gr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Pe(e,a),o=we(i.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return Me({url:o,method:"PUT",body:n,signal:s})}async function tn({baseUrl:e,spaceId:a,signal:n}){const s=Pe(e,a),i=we(s.SETTINGS,"/user");return Me({url:i,signal:n})}async function Hr({baseUrl:e,spaceId:a,signal:n}){const s=Pe(e,a),i=we(s.SETTINGS,"/users");return Me({url:i,signal:n})}async function Kr({baseUrl:e,spaceId:a,signal:n,userId:s}){const i=Pe(e,a),o=we(i.SETTINGS,`/usersInfor/${s}`);return Me({url:o,signal:n})}async function an({baseUrl:e,spaceId:a,contactId:n,file:s,signal:i}){const o=Pe(e,a),c=new FormData;c.append("file",s,s.name);const d=we(o.MEDIA,`/upload?module=contacts&folderType=avatars&contactId=${encodeURIComponent(n)}`);return Nr({url:d,formData:c,signal:i})}const nn=(e,a)=>({fetchLabels:({signal:n}={})=>Lr({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:s})=>en({baseUrl:e,spaceId:a,name:n,signal:s}),fetchContact:({contactId:n,signal:s})=>Or({baseUrl:e,spaceId:a,contactId:n,signal:s}),fetchBusiness:({businessId:n,signal:s})=>zr({baseUrl:e,spaceId:a,businessId:n,signal:s}),fetchBusinessTableData:({pagination:n,signal:s})=>_r({baseUrl:e,spaceId:a,pagination:n,signal:s}),createBusiness:({business:n,signal:s})=>Vr({baseUrl:e,spaceId:a,business:n,signal:s}),fetchContactFields:({forType:n,signal:s})=>Wr({baseUrl:e,spaceId:a,forType:n,signal:s}),updateEntity:({entityType:n,entityId:s,body:i,signal:o})=>Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:i,signal:o}),deleteAddress:({data:n,signal:s})=>Ht({baseUrl:e,spaceId:a,data:n,signal:s}),deleteAddres:({data:n,signal:s})=>Ht({baseUrl:e,spaceId:a,data:n,signal:s}),checkContactAddress:({data:n,signal:s})=>Yr({baseUrl:e,spaceId:a,data:n,signal:s}),setContactAddress:({data:n,signal:s})=>qr({baseUrl:e,spaceId:a,data:n,signal:s}),updateContactAddress:({data:n,signal:s})=>Gr({baseUrl:e,spaceId:a,data:n,signal:s}),fetchUserTrii:({signal:n}={})=>tn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Hr({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:s})=>Kr({baseUrl:e,spaceId:a,userId:n,signal:s}),uploadAvatar:({contactId:n,file:s,signal:i})=>an({baseUrl:e,spaceId:a,contactId:n,file:s,signal:i})}),sn=()=>!!window?.google?.maps?.places?.Autocomplete,Jr=(e=1e4)=>new Promise(a=>{if(sn()){a(!0);return}const n=Date.now(),s=window.setInterval(()=>{if(sn()){window.clearInterval(s),a(!0);return}Date.now()-n>e&&(window.clearInterval(s),a(!1))},100)}),Qr=()=>{const[e,a]=l.useState(!1),[n,s]=l.useState(!0),[i,o]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const c=await Jr(1e4);a(c),c||o("Google Maps API failed to load")}catch{o("Error loading Google Maps API"),a(!1)}finally{s(!1)}})()},[]),{isLoaded:e,isLoading:n,error:i}},Xr=({onPlaceSelected:e,onError:a,placeholder:n})=>{const s=ye(),i=l.useRef(null),o=l.useRef(null),c=l.useRef(e),d=l.useRef(a),{isLoaded:u,isLoading:m,error:x}=Qr(),g=l.useMemo(()=>m?s("searchLocationModal.loadingGoogleMaps"):x?s("searchLocationModal.googleMapsUnavailable"):u?n??s("searchLocationModal.enterLocation"):s("searchLocationModal.googleMapsNotLoaded"),[u,m,x,n,s]);return l.useEffect(()=>{c.current=e},[e]),l.useEffect(()=>{d.current=a},[a]),l.useEffect(()=>{if(!u||!i.current||o.current)return;const p=window?.google;if(!p?.maps?.places?.Autocomplete){d.current?.(s("searchLocationModal.googleMapsUnavailable"));return}i.current.focus();let y=null;const v=()=>{document.querySelectorAll(".pac-container").forEach(f=>{const S=f;S.style.zIndex="20000",S.style.position="fixed"})};y=new MutationObserver(f=>{for(const S of f)for(const j of Array.from(S.addedNodes)){if(j.nodeType!==Node.ELEMENT_NODE)continue;const w=j;w.classList?.contains("pac-container")&&(w.style.zIndex="20000",w.style.position="fixed")}}),y.observe(document.body,{childList:!0,subtree:!0}),v(),window.setTimeout(v,100),o.current=new p.maps.places.Autocomplete(i.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const C=o.current.addListener?.("place_changed",()=>{const f=o.current?.getPlace?.();if(!f?.geometry?.location){d.current?.(s("searchLocationModal.selectedPlaceNoLocation"));return}let S="",j="",w="",I="",z="",E="";const D=f.address_components??[];for(const Y of D){const R=Y?.types??[];if(R.includes("locality")||R.includes("administrative_area_level_2")){S=Y.long_name;continue}if(R.includes("administrative_area_level_1")){j=Y.long_name;continue}if(R.includes("country")){w=Y.long_name;continue}if(R.includes("postal_code")){I=Y.long_name;continue}if(R.includes("route")){z=Y.long_name;continue}R.includes("street_number")&&(E=Y.long_name)}const F=typeof f.geometry.location.lat=="function"?f.geometry.location.lat():0,U=typeof f.geometry.location.lng=="function"?f.geometry.location.lng():0,V={location:{lat:F,lng:U},address:f.formatted_address??"",city:S,state:j,country:w,postalCode:I,streetName:z,streetNumber:E,shortAddress:[z,E].filter(Boolean).join(" ")};c.current(V)});return()=>{y&&y.disconnect(),C?.remove&&C.remove(),o.current=null}},[u,s]),t.jsx(r.TextField,{fullWidth:!0,size:"small",inputRef:i,placeholder:g,disabled:m||!u||!!x,error:!!x})},Zr={street:"",city:"",state:"",zipcode:"",country:""},eo=({baseUrl:e,spaceId:a,entityType:n,entityId:s,onBack:i,onEntityUpdated:o})=>{const c=ye(),[d,u]=l.useState(Zr),[m,x]=l.useState(""),[g,p]=l.useState(""),[y,v]=l.useState(!1),[C,f]=l.useState(!1),S=l.useMemo(()=>!!(String(d.street??"").trim()||String(d.city??"").trim()||String(d.state??"").trim()||String(d.zipcode??"").trim()||String(d.country??"").trim()),[d]),j=F=>{x(F.address??"");const U=String(F.shortAddress??"").trim()||[F.streetName,F.streetNumber].filter(Boolean).join(" ").trim();u({street:U,city:F.city??"",state:F.state??"",zipcode:F.postalCode??"",country:F.country??""}),p("")},w=F=>{p(String(F??""))},I=F=>U=>{const V=U.target.value;u(Y=>({...Y,[F]:V}))},z=async()=>{if(!y&&!(!e||!a)&&s){v(!0);try{const F=await Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{address1:{street:String(d.street??""),city:String(d.city??""),state:String(d.state??""),zipcode:String(d.zipcode??""),country:String(d.country??"")}}});o?.(F),i()}finally{v(!1)}}},E=async()=>{if(!C&&!(!e||!a)&&s){f(!0);try{const F=await Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{address2:{street:String(d.street??""),city:String(d.city??""),state:String(d.state??""),zipcode:String(d.zipcode??""),country:String(d.country??"")}}});o?.(F),i()}finally{f(!1)}}},D=!S||y||C;return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:3},children:[t.jsx(r.IconButton,{size:"small",onClick:i,"aria-label":c("global.back"),children:t.jsx(ha,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"h6",children:c("searchLocationModal.searchAddress")})]}),t.jsxs(r.Stack,{spacing:3,children:[t.jsxs(r.Box,{sx:{position:"relative",zIndex:1400},children:[t.jsx(Xr,{onPlaceSelected:j,onError:w,placeholder:c("searchLocationModal.enterLocation")}),g?t.jsx(r.Typography,{variant:"caption",color:"error",sx:{mt:.5,display:"block"},children:g}):null]}),t.jsx(r.TextField,{label:c("conversations.contactDetails.street"),value:d.street,onChange:I("street"),fullWidth:!0,size:"medium"}),t.jsxs(r.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(r.TextField,{label:c("searchLocationModal.city"),value:d.city,onChange:I("city"),fullWidth:!0,size:"medium"}),t.jsx(r.TextField,{label:c("searchLocationModal.state"),value:d.state,onChange:I("state"),fullWidth:!0,size:"medium"})]}),t.jsxs(r.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(r.TextField,{label:c("searchLocationModal.postalCode"),value:d.zipcode,onChange:I("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(r.TextField,{label:c("searchLocationModal.country"),value:d.country,onChange:I("country"),fullWidth:!0,size:"medium"})]}),m?t.jsx(r.Typography,{variant:"caption",sx:{opacity:.7},children:m}):null,t.jsxs(r.Stack,{direction:"row",spacing:2,justifyContent:"flex-end",sx:{pt:2},children:[t.jsx(qe.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(nt,{}),onClick:z,loading:y,disabled:D,children:c("searchLocationModal.saveMainAddress")}),t.jsx(qe.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(nt,{}),onClick:E,loading:C,disabled:D,children:c("searchLocationModal.saveSecondaryAddress")})]})]})]})};function fa(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}function rn(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}function to({open:e,baseUrl:a,spaceId:n,contactId:s}){const i=l.useRef(null),o=l.useMemo(()=>!a||!n?null:nn(a,n),[a,n]),[c,d]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),u=l.useMemo(()=>!!(e&&o&&s),[e,o,s]);l.useEffect(()=>{e||(i.current?.abort(),d({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e]);const m=l.useMemo(()=>!!(e&&o),[e,o]);l.useEffect(()=>{if(!m||!o)return;const p=new AbortController;return d(y=>({...y,labelsLoading:!0,labelsError:null})),o.fetchLabels({signal:p.signal}).then(y=>{d(v=>({...v,labels:y,labelsLoading:!1,labelsError:null}))}).catch(y=>{p.signal.aborted||d(v=>({...v,labelsLoading:!1,labelsError:y}))}),()=>{p.abort()}},[o,m]),l.useEffect(()=>{if(!u||!o)return;i.current?.abort();const p=new AbortController;return i.current=p,d(y=>({...y,isLoading:!0,error:null,contactData:null})),o.fetchContact({contactId:s,signal:p.signal}).then(y=>{d(v=>({...v,isLoading:!1,error:null,contactData:y}))}).catch(y=>{p.signal.aborted||d(v=>({...v,isLoading:!1,error:y}))}),()=>{p.abort()}},[o,u,s]);const x=l.useMemo(()=>!!(e&&o),[e,o]);l.useEffect(()=>{if(!x||!o)return;const p=new AbortController;return d(y=>({...y,userLoading:!0,userError:null})),o.fetchUserTrii({signal:p.signal}).then(y=>{d(v=>({...v,userLoading:!1,userError:null,userTrii:y}))}).catch(y=>{p.signal.aborted||d(v=>({...v,userLoading:!1,userError:y}))}),()=>{p.abort()}},[o,x]);const g=l.useMemo(()=>{const p=c.contactData,y=fa(p),v=rn(p);let C="unknown";y&&(C="business"),v&&(C="contact");let f="Unknown Contact";y?f=p.name:v&&(f=`${p.firstName} ${p.lastName}`.trim());const S=p?.tags??[];return{isBusiness:y,isContact:v,contactType:C,displayName:f,tags:S,labels:c.labels,contactFields:c.contactFields,userTrii:c.userTrii,userLoading:c.userLoading,userError:c.userError}},[c.contactData,c.labels,c.contactFields,c.userTrii,c.userLoading,c.userError]);return l.useEffect(()=>{if(!e||!o)return;const p=c.contactData,y=fa(p),v=rn(p),C=y?"business":v?"contact":null;if(!C)return;const f=new AbortController;return d(S=>({...S,contactFieldsLoading:!0,contactFieldsError:null})),o.fetchContactFields({forType:C,signal:f.signal}).then(S=>{d(j=>({...j,contactFields:S,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(S=>{f.signal.aborted||d(j=>({...j,contactFieldsLoading:!1,contactFieldsError:S}))}),()=>{f.abort()}},[o,e,c.contactData]),{state:c,selectors:g,actions:{setContactData:p=>d(y=>({...y,contactData:p??null})),clearError:()=>d(p=>({...p,error:null}))}}}const Tt=({baseUrl:e,spaceId:a,entityType:n,entityId:s,initialImageUrl:i,onEntityUpdated:o})=>{const[c,d]=l.useState(i??""),[u,m]=l.useState(null),[x,g]=l.useState(!1),[p,y]=l.useState(!1),v=l.useRef(null),C=l.useMemo(()=>!!(e&&a&&n&&s),[e,a,n,s]);function f(U){return U.split("?sv=")[0]}function S(U){return U.split("&cacheId=")[0]}function j(U){let V=f(U);return!V||(V=S(V),!V)?"":V}const w=async()=>{if(!e||!a)return null;const U=await tn({baseUrl:e,spaceId:a});return m(U),U},I=async U=>{const V=(u??await w())?.storageAzureSAS,Y=V?.expireAt,R=Y?new Date(Y):null;let H=V?.sas??"";if((!H||R&&R<new Date)&&(H=(await w())?.storageAzureSAS?.sas??""),!H)return U;const $=`${Date.now()}`;return`${U}${H}&cacheId=${$}`},z=async U=>{if(!U){d("");return}const V=f(U);if(!V)return;const Y=await I(V);d(Y)},E=async U=>{const V=U.target.files?.[0];if(V&&C){v.current&&(v.current.value=""),g(!0);try{const Y=await an({baseUrl:e,spaceId:a,contactId:s,file:V}),R=await Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{imageUrl:Y}});o?.(R),await z(Y)}finally{g(!1)}}},D=()=>{v.current?.click()},F=async()=>{if(C&&!p){y(!0);try{await Ve({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{imageUrl:""}}),o?.({imageUrl:""}),d("")}finally{y(!1)}}};return l.useEffect(()=>{if(!i){d("");return}z(i)},[i]),{inputAtributes:{onChange:E,ref:v,type:"file",accept:"image/*"},action:{uploadImage:D,deleteImage:F},imageUrl:c,removeParams:j,isUploading:x,isDeleting:p}},fe=(e,a)=>{const[n,s]=l.useState(a||""),[i,o]=l.useState(!1),[c,d]=l.useState("");return l.useEffect(()=>{s(a||"")},[a]),{actions:{onError:u=>{o(!0),d(u)},onSuccess:()=>{o(!1),d("")},resetValue:()=>{s(a||"")},changeValue:u=>{s(u)}},attributes:{error:i,helperText:c,type:e,value:n,onChange:u=>{s(u.target.value)}}}},on=(e="")=>{const[a,n]=l.useState(e),s=c=>{n(c.target.value)},i=c=>{n(c)},o=()=>{n(e??"")};return l.useEffect(()=>{n(e)},[e]),{actions:{resetValue:o,changeValue:i},attributes:{value:a,onChange:s}}};let Kt;const ao=new Uint8Array(16);function no(){if(!Kt&&(Kt=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Kt))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Kt(ao)}const Fe=[];for(let e=0;e<256;++e)Fe.push((e+256).toString(16).slice(1));function so(e,a=0){return Fe[e[a+0]]+Fe[e[a+1]]+Fe[e[a+2]]+Fe[e[a+3]]+"-"+Fe[e[a+4]]+Fe[e[a+5]]+"-"+Fe[e[a+6]]+Fe[e[a+7]]+"-"+Fe[e[a+8]]+Fe[e[a+9]]+"-"+Fe[e[a+10]]+Fe[e[a+11]]+Fe[e[a+12]]+Fe[e[a+13]]+Fe[e[a+14]]+Fe[e[a+15]]}const ro=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var ln={randomUUID:ro};function xa(e,a,n){if(ln.randomUUID&&!a&&!e)return ln.randomUUID();e=e||{};const s=e.random||(e.rng||no)();if(s[6]=s[6]&15|64,s[8]=s[8]&63|128,a){n=n||0;for(let i=0;i<16;++i)a[n+i]=s[i];return a}return so(s)}function oo(e){return{id:xa(),address:"",note:"",channelType:e,isSaved:!1}}var Jt={createNewAddress:oo};const io=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const s={};return s[e]=n,s}return null},lo=(e,a,n)=>n.map(s=>s.id===a?{...s,address:e}:s);var dt={getEditedField:io,getAddressesWithUpdatedValues:lo};const cn=({entityId:e,initial:a,dispatch:n,deleteAddress:s})=>{const[i,o]=l.useState(!1),[c,d]=l.useState(()=>a),[u,m]=l.useState(a?.ims_facebook||[]),[x,g]=l.useState(a?.ims_mercadolibre||[]),[p,y]=l.useState(a?.ims_webchat||[]),[v,C]=l.useState(a?.ims_instagram||[]),[f,S]=l.useState(a?.ims_whatsapp||[]),[j,w]=l.useState(a?.emails||[]),[I,z]=l.useState(a?.phones||[]),[E,D]=l.useState(a?.ims_rcs||[]),F=()=>{const B=Jt.createNewAddress(ct.ChannelType.PHONE),T=[...I,B];z(T)},U=()=>{const B=Jt.createNewAddress(ct.ChannelType.EMAIL),T=[...j,B];w(T)},V=()=>{const B=Jt.createNewAddress(ct.ChannelType.WHATSAPP),T=[...f,B];S(T)},Y=()=>{const B=Jt.createNewAddress(ct.ChannelType.RCS),T=[...E,B];D(T)},R=B=>{const T=[...f,B];S(T),d(W=>({...W??{},ims_whatsapp:T}))},H=(B,T)=>{if(T){if(T.channelType===3){const W=j.map(M=>M.id===B?T:M);w(W),d(M=>({...M??{},emails:W}))}if(T.channelType===5){const W=I.map(M=>M.id===B?T:M);z(W),d(M=>({...M??{},phones:W}))}if(T.channelType===13){const W=f.map(M=>M.id===B?T:M);S(W),d(M=>({...M??{},ims_whatsapp:W}))}if(T.channelType===21){const W=E.map(M=>M.id===B?T:M);D(W),d(M=>({...M??{},ims_rcs:W}))}if(T.channelType===41){const W=x.map(M=>M.id===B?T:M);g(W),d(M=>({...M??{},ims_mercadolibre:W}))}}},$=async(B,T,W)=>{const M=B.target.value;if(W===3){const _=dt.getAddressesWithUpdatedValues(M,T,j);w(_)}else if(W===5){const _=dt.getAddressesWithUpdatedValues(M,T,I);z(_)}else if(W===13){const _=dt.getAddressesWithUpdatedValues(M,T,f);S(_)}else if(W===21){const _=dt.getAddressesWithUpdatedValues(M,T,E);D(_)}else if(W===41){const _=dt.getAddressesWithUpdatedValues(M,T,x);g(_)}},ee=(B,T,W)=>{if(W===14){const M=u.map(_=>_.id===T?{..._,note:B.target.value}:_);m(M)}if(W===20){const M=p.map(_=>_.id===T?{..._,note:B.target.value}:_);y(M)}if(W===16){const M=v.map(_=>_.id===T?{..._,note:B.target.value}:_);C(M)}if(W===3){const M=j.map(_=>_.id===T?{..._,note:B.target.value}:_);w(M)}if(W===5){const M=I.map(_=>_.id===T?{..._,note:B.target.value}:_);z(M)}if(W===13){const M=f.map(_=>_.id===T?{..._,note:B.target.value}:_);S(M)}if(W===21){const M=E.map(_=>_.id===T?{..._,note:B.target.value}:_);D(M)}if(W===41){const M=x.map(_=>_.id===T?{..._,note:B.target.value}:_);g(M)}},P=async(B,T)=>{if(e&&(T===3||T===5||T===13||T===14||T===20||T===16||T===21||T===41)){o(B);const W={contactId:e,contactAddressId:B,type:T};switch(n?await n(s(W)):await s(W),o(!1),T){case 3:const M=j.filter(Q=>Q.id!==B);w(M),d(Q=>({...Q??{},emails:M}));break;case 5:const _=I.filter(Q=>Q.id!==B);z(_),d(Q=>({...Q??{},phones:_}));break;case 13:const J=f.filter(Q=>Q.id!==B);S(J),d(Q=>({...Q??{},ims_whatsapp:J}));break;case 21:const te=E.filter(Q=>Q.id!==B);D(te),d(Q=>({...Q??{},ims_rcs:te}));break;case 41:const de=x.filter(Q=>Q.id!==B);g(de),d(Q=>({...Q??{},ims_mercadolibre:de}));break;case 14:const he=u.filter(Q=>Q.id!==B);m(he),d(Q=>({...Q??{},ims_facebook:he}));break;case 20:const ve=p.filter(Q=>Q.id!==B);y(ve),d(Q=>({...Q??{},ims_webchat:ve}));break;case 16:const X=v.filter(Q=>Q.id!==B);C(X),d(Q=>({...Q??{},ims_instagram:X}));break}}};function N(){m(c?.ims_facebook||[]),g(c?.ims_mercadolibre||[]),y(c?.ims_webchat||[]),C(c?.ims_instagram||[]),S(c?.ims_whatsapp||[]),D(c?.ims_rcs||[]),w(c?.emails||[]),z(c?.phones||[])}return l.useEffect(()=>{d(a),a?.emails&&a?.phones&&(w(a.emails),z(a.phones)),S(a?.ims_whatsapp||[]),D(a?.ims_rcs||[]),m(a?.ims_facebook||[]),y(a?.ims_webchat||[]),C(a?.ims_instagram||[]),g(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:f,imsRCS:E,imsMercadolibre:x,imsFacebooks:u,imsWebchats:p,imsInstagrams:v,emails:j,phoneNumbers:I},action:{handleAddressFieldChange:$,handleNoteFieldChange:ee,handleDeleteAddress:P,addPhone:F,addEmail:U,addWhatsapp:V,addRCS:Y,replaceAddress:H,addWhatsappVerified:R,resetToInitialContactInformation:N},state:{isDeletingAddress:i}}},dn=({initialState:e=[]}={})=>{const[a,n]=l.useState(e);return{attributes:{value:a,onChange:(s,i)=>{const o=i.some(c=>!a.some(d=>c.id===d.id));(a.filter(c=>!i.some(d=>d.id===c.id)).length>0||o)&&n(i)}},actions:{addValue:s=>{n(i=>i.concat(s))},setValue:s=>{n(s)}}}},co=({business:e,customContactFields:a,baseUrl:n,spaceId:s})=>{const i=l.useMemo(()=>async ue=>{!n||!s||await Ht({baseUrl:n,spaceId:s,data:ue})},[n,s]),o=async ue=>ue,[c,d]=l.useState([]),u=fe("text",e?.name||""),m=Tt({baseUrl:n,spaceId:s,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),x=on(e?.owner),g=dn({initialState:e?.tags??[]}),[p,y]=l.useState([]),{field:{imsFacebooks:v,imsMercadolibre:C,imsWebchats:f,imsInstagrams:S,imsWhatsapp:j,emails:w,phoneNumbers:I,imsRCS:z},action:{addPhone:E,addEmail:D,addWhatsapp:F,addRCS:U,addWhatsappVerified:V,replaceAddress:Y,handleAddressFieldChange:R,handleNoteFieldChange:H,handleDeleteAddress:$,resetToInitialContactInformation:ee},state:{isDeletingAddress:P}}=cn({entityId:e?.id,initial:e,dispatch:o,deleteAddress:i}),N=fe("text",e?.address1?.street||""),B=fe("text",e?.address2?.street||""),T=fe("text",e?.address1?.city||""),W=fe("text",e?.address2?.city||""),M=fe("text",e?.address1?.state||""),_=fe("text",e?.address2?.state||""),J=fe("text",e?.address1?.zipcode||""),te=fe("text",e?.address2?.zipcode||""),de=fe("text",e?.address1?.country||""),he=fe("text",e?.address2?.country||""),ve=(ue,xe,me)=>xe!==me&&!(xe===null&&me==="")?{[ue]:me}:{},X=()=>{if(!e)return null;const ue={street:N.attributes.value,city:T.attributes.value,state:M.attributes.value,zipcode:J.attributes.value,country:de.attributes.value},xe={street:B.attributes.value,city:W.attributes.value,state:_.attributes.value,zipcode:te.attributes.value,country:he.attributes.value};return{id:e.id,...ve("owner",e.owner,x.attributes.value),...ve("name",e.name,u.attributes.value),imageUrl:m.imageUrl?m.removeParams(m.imageUrl):null,tags:g.attributes.value,properties:c,members:p,phoneNumbers:I,emails:w,address1:ue,address2:xe}};function Q(ue){if(!e)return;const xe=G=>G.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),me=e.properties.find(G=>G.nameKey===ue)??e.properties.find(G=>xe(G.nameKey)===xe(ue));if(!me){console.error(`No se encontr\xF3 una propiedad con nameKey: ${ue}`);return}const Ce=c.map(G=>G.nameKey===ue?{...G,value:me.value}:G);d(Ce)}const Ne=()=>e?a.map(ue=>{const xe=G=>G.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),me=e.properties.find(G=>G.nameKey===ue.nameKey)??e.properties.find(G=>xe(G.nameKey)===xe(ue.nameKey));if(me)return{...me,nameKey:ue.nameKey,type:me.type??ue.type,value:me.value};const Ce=c.find(G=>G.nameKey===ue.nameKey);return{nameKey:ue.nameKey,type:ue.type,value:Ce?Ce.value:""}}):[];return l.useEffect(()=>{e&&a&&d(Ne())},[e,a]),l.useEffect(()=>{e&&g.actions.setValue(e.tags??[])},[e]),{field:{name:u,imsWhatsapp:j,imsRCS:z,contactImage:m,contactPropietary:x,imsMercadolibre:C,imsFacebooks:v,imsWebchats:f,imsInstagrams:S,emails:w,phoneNumbers:I,homeAddress:N,secondaryHomeAddress:B,city:T,secondaryCity:W,state:M,secondaryState:_,postalCode:J,secondaryPostalCode:te,country:de,secondaryCountry:he,customProperties:c,labelMultipleSelect:g},action:{setCustomProperties:d,addWhatsapp:F,addRCS:U,getEditedBusiness:X,handleAddressFieldChange:R,handleNoteFieldChange:H,handleDeleteAddress:$,addPhone:E,addEmail:D,replaceAddress:Y,addWhatsappVerified:V,resetToInitialContactInformation:ee,resetCustomProperty:Q},state:{isDeletingAddress:P},selectedContacts:p,setSelectedContacts:y}},uo=({contact:e,customContactFields:a,baseUrl:n,spaceId:s})=>{const i=l.useMemo(()=>async G=>{!n||!s||await Ht({baseUrl:n,spaceId:s,data:G})},[n,s]),o=async G=>G,{getEditedField:c}=dt,[d,u]=l.useState([]),m=fe("text",e?.firstName||""),x=fe("text",e?.lastName||""),g=Tt({baseUrl:n,spaceId:s,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[p,y]=l.useState(e?.birthDate?K(e.birthDate):null),v=cn({entityId:e?.id,initial:e,dispatch:o,deleteAddress:i}),{field:{imsFacebooks:C,imsMercadolibre:f,imsWebchats:S,imsInstagrams:j,imsWhatsapp:w,emails:I,phoneNumbers:z,imsRCS:E},action:{addPhone:D,addEmail:F,addWhatsapp:U,addRCS:V,addWhatsappVerified:Y,replaceAddress:R,handleAddressFieldChange:H,handleNoteFieldChange:$,handleDeleteAddress:ee,resetToInitialContactInformation:P},state:{isDeletingAddress:N}}=v,B=dn({initialState:e?.tags}),T=on(e?.owner),W=fe("text",e?.address1?.street),M=fe("text",e?.address2?.street),_=fe("text",e?.address1?.city),J=fe("text",e?.address2?.city),te=fe("text",e?.address1?.state),de=fe("text",e?.address2?.state),he=fe("text",e?.address1?.zipcode),ve=fe("text",e?.address2?.zipcode),X=fe("text",e?.address1?.country),Q=fe("text",e?.address2?.country),Ne=()=>{if(!e)return null;const G=e,ne=B.attributes.value.map(ae=>({id:ae.id,name:ae.name})),le=z.map(ae=>{const{id:ot,...Ee}=ae;return Ee}),je=I.map(ae=>{const{id:ot,...Ee}=ae;return Ee});return{id:G.id,owner:T.attributes.value,firstName:m.attributes.value,lastName:x.attributes.value,address1:{...c("street",G.address1?.street,W.attributes.value),...c("city",G.address1?.street,_.attributes.value),...c("state",G.address1?.street,te.attributes.value),...c("zipcode",G.address1?.street,he.attributes.value),...c("country",G.address1?.street,X.attributes.value)},address2:{...c("street",G.address2?.street,M.attributes.value),...c("city",G.address2?.street,J.attributes.value),...c("state",G.address2?.street,de.attributes.value),...c("zipcode",G.address2?.street,ve.attributes.value),...c("country",G.address2?.street,Q.attributes.value)},emails:je,phones:le,tags:ne,imageUrl:g.imageUrl?g.removeParams(g.imageUrl):null,properties:d,birthDate:p?.toDate()}};function ue(){e&&(!e.businessId||e.businessName)}function xe(){y(e?.birthDate?K(e.birthDate):null)}function me(G){if(!e)return;const ne=ae=>ae.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),le=e.properties.find(ae=>ae.nameKey===G)??e.properties.find(ae=>ne(ae.nameKey)===ne(G));if(!le){console.error(`No se encontr\xF3 una propiedad con nameKey: ${G}`);return}const je=d.map(ae=>ae.nameKey===G?{...ae,value:le.value}:ae);u(je)}const Ce=()=>e?a.map(G=>{const ne=ae=>ae.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),le=e.properties.find(ae=>ae.nameKey===G.nameKey)??e.properties.find(ae=>ne(ae.nameKey)===ne(G.nameKey));if(le)return{...le,nameKey:G.nameKey,type:le.type??G.type,value:le.value};const je=d.find(ae=>ae.nameKey===G.nameKey);return{nameKey:G.nameKey,type:G.type,value:je?je.value:""}}):[];return l.useEffect(()=>{e&&a&&u(Ce())},[e,a]),l.useEffect(()=>{e?.tags&&B.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:p,imsWhatsapp:w,imsRCS:E,contactFirstname:m,contactLastname:x,contactImage:g,contactPropietary:T,imsMercadolibre:f,imsFacebooks:C,imsWebchats:S,imsInstagrams:j,emails:I,phoneNumbers:z,homeAddress:W,secondaryHomeAddress:M,city:_,secondaryCity:J,state:te,secondaryState:de,postalCode:he,secondaryPostalCode:ve,country:X,secondaryCountry:Q,customProperties:d,labelMultipleSelect:B},action:{setBirthDate:y,setCustomProperties:u,getEditedContact:Ne,handleAddressFieldChange:H,handleNoteFieldChange:$,handleDeleteAddress:ee,addPhone:D,addEmail:F,addWhatsapp:U,addRCS:V,replaceAddress:R,addWhatsappVerified:Y,resetToInitialContactInformation:P,resetSelectedBusiness:ue,resetBirthDate:xe,resetCustomProperty:me},state:{isDeletingAddress:N}}},ba=l.createContext(null),po=({children:e,contact:a,customContactFields:n,baseUrl:s,spaceId:i})=>{const o=uo({contact:a,customContactFields:n,baseUrl:s,spaceId:i});return t.jsx(ba.Provider,{value:{entityType:"contact",editEntity:o,entityId:String(a.id)},children:e})},ho=({children:e,business:a,customContactFields:n,baseUrl:s,spaceId:i})=>{const o=co({business:a,customContactFields:n,baseUrl:s,spaceId:i});return t.jsx(ba.Provider,{value:{entityType:"business",editEntity:o,entityId:String(a.id)},children:e})},mo=({children:e,entityType:a,entityData:n,customContactFields:s,baseUrl:i,spaceId:o})=>a==="contact"?t.jsx(po,{contact:n,customContactFields:s,baseUrl:i,spaceId:o,children:e}):t.jsx(ho,{business:n,customContactFields:s,baseUrl:i,spaceId:o,children:e}),Ge=()=>{const e=l.useContext(ba);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},ut=({userId:e,users:a,currentUser:n})=>{if(!e)return null;if(n?.uid&&n.uid===e)return n.display_name||n.email||null;const s=a.find(i=>i?.id===e);return s?.name?.trim()||s?.email||null},Qt=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:s})=>{const i=ye();return t.jsxs(r.Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:2,p:2,mb:2},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",children:[t.jsx(r.Typography,{variant:"subtitle1",children:e}),n&&t.jsx(r.Button,{startIcon:t.jsx(Qn,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>s&&s(),children:i("global.searchLocation")})]}),t.jsx(r.Divider,{sx:{my:1.5}}),a]})},un=({children:e,...a})=>t.jsx(r.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e}),go=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const s=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ma.DatePicker,{value:e,onChange:i=>a(i),slotProps:{textField:{size:"small"}},format:s})})})},yo={view:"main",setView:()=>{}},pn=l.createContext(null),fo=pn.Provider,xo=()=>l.useContext(pn)||(console.warn("[useEditContactView] using noop, context value is missing"),yo),hn=()=>{},mn=l.createContext(hn),bo=({navigate:e,children:a})=>t.jsx(mn.Provider,{value:e,children:a}),vo=()=>l.useContext(mn)||(console.warn("[useNavigateContext] using noop, context value is falsy"),hn);function Co({value:e,displayValue:a,businessId:n}){const s=Je(),i=vo(),[o,c]=l.useState(null),d=Tt({initialImageUrl:o?.imageUrl,entityType:"business",entityId:n}),[u,m]=l.useState(null),[x,g]=l.useState(!1);return t.jsxs(r.Box,{display:"flex",alignItems:"center",children:[t.jsx(r.Typography,{onClick:async p=>{const y=p.currentTarget;if(g(!0),!s){console.error("API is null");return}const v=await s.fetchBusiness({businessId:n});if(v&&fa(v)&&c(v),g(!1),!y){console.error("Target element is null");return}m(y)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:p=>p.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),o&&t.jsx(Ha,{contactData:o,open:!!u,anchorEl:u,onClose:()=>m(null),navigate:i,avatarImgUrl:d.imageUrl}),x&&t.jsx(r.Box,{display:"flex",alignItems:"center",justifyContent:"center",p:1,children:t.jsx(r.CircularProgress,{size:20})})]})}const jo=e=>"email"in e,va=e=>e.entityType==="contact"&&e.inputType==="birthday",So=r.styled(r.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),gn=r.styled(r.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),Qe=e=>{const{title:a,value:n,isNotEditable:s,displayValue:i,baseUrl:o,spaceId:c,minWidth:d,onEntityUpdated:u}=e,m=ye(),{setView:x}=xo(),g=e.inputType??"text",[p,y]=l.useState(!1),[v,C]=l.useState(!1),f=l.useRef(null),[S,j]=l.useState(!1),[w,I]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const $=f.current;if(!$)return;const ee=()=>{const P=$.scrollWidth>$.clientWidth;j(N=>N===P?N:P)};if(ee(),typeof ResizeObserver<"u"){let P=0;const N=new ResizeObserver(()=>{if(typeof window>"u"){ee();return}P&&window.cancelAnimationFrame(P),P=window.requestAnimationFrame(()=>{ee()})});return N.observe($),()=>{typeof window<"u"&&P&&window.cancelAnimationFrame(P),N.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",ee),()=>{window.removeEventListener("resize",ee)}},[a]),l.useEffect(()=>{e.entityType==="business"?I(n):I(typeof n=="string"?n:void 0)},[n,e.entityType]);const z=()=>{if(e.entityType==="contact"&&g==="selectBusiness"){x("businessSelect");return}y($=>!$)},E=$=>{I($.target.value)},D=$=>{const ee=$.target.value;I(ee)},F=()=>{va(e)&&e.contact.action.resetBirthDate(),y(!1)},U=async()=>{if(!e.constructUpdateObject){y(!1);return}if(e.entityType==="business"&&w===void 0){y(!1);return}C(!0);try{if(!o||!c)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let $=w===void 0?null:w;if(va(e)){const B=K(e.contact.field.birthDate);B.isValid()&&($=B.toISOString())}const ee=e.constructUpdateObject($),P=e.entityId??ee?.id;if(!P)throw new Error("Missing contactId for updateEntity");const N=await Ve({baseUrl:o,spaceId:c,entityType:"contact",entityId:P,body:ee});u?.(N)}else{const $=e.constructUpdateObject(w),ee=e.entityId??$?.id;if(!ee)throw new Error("Missing businessId for updateEntity");const P=await Ve({baseUrl:o,spaceId:c,entityType:"business",entityId:ee,body:$});u?.(P)}}finally{C(!1),y(!1)}},V=typeof w=="string"?w:"",Y=w instanceof Date?w.toISOString():typeof w=="string"?w:"",R=d??(e.entityType==="contact"?"45%":"200px"),H=e.options??[];return t.jsxs(r.Box,{className:"fadein contacts-col-5",sx:{display:"flex",backgroundColor:$=>$.palette.mode==="dark"?"1e1e1e":$.palette.background.default,flexDirection:"column",borderRadius:1,minWidth:R,"&:hover .edit-icon":{opacity:1}},children:[t.jsxs(r.Box,{display:"flex",position:"relative",minHeight:"25px",children:[S?t.jsx(r.Tooltip,{title:a,arrow:!0,children:t.jsx(r.Typography,{ref:f,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:p?1:0,color:$=>$.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(r.Typography,{ref:f,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:p?1:0,color:$=>$.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),s?null:p?t.jsxs(t.Fragment,{children:[t.jsx(gn,{size:"small",onClick:U,children:v?t.jsx(r.CircularProgress,{size:24}):t.jsx(nt,{})}),t.jsx(gn,{size:"small",onClick:F,children:t.jsx(Ra,{})})]}):t.jsx(So,{className:"edit-icon",size:"small",onClick:z,children:t.jsx(bt,{})})]}),t.jsx(r.Box,{width:p?"100%":"50%",position:"relative",children:p&&g==="text"?t.jsx(r.TextField,{value:Y,onChange:E,variant:"standard",size:"small",sx:{width:"100%"}}):p&&(g==="select"||g==="selectMembers")?t.jsxs(r.Select,{value:V,onChange:D,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(r.MenuItem,{value:"",children:m("conversations.contactDetails.contactInfo.emptySelection")}):null,H.map(($,ee)=>t.jsx(r.MenuItem,{value:$.id,children:e.entityType==="contact"?$.name?.trim()||(jo($)?$.email:"")||"Sin nombre":$.name?.trim()||$.email||"Sin nombre"},ee))]}):p&&va(e)?t.jsx(go,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!p&&e.entityType==="contact"&&g==="selectBusiness"&&e.businessId?t.jsx(Co,{value:String(n??""),displayValue:String(i??""),businessId:e.businessId}):t.jsx(r.Typography,{variant:"body2",fontWeight:"400",sx:{padding:"2.5px 14px 8.5px 0px"},color:$=>$.palette.text.primary,children:i||typeof n=="string"&&n||"-"})})]})},Et=e=>{const{title:a,value:n,isNotEditable:s,options:i=[],displayValue:o,constructUpdateObject:c,businessId:d,baseUrl:u,spaceId:m,contactId:x,onEntityUpdated:g}=e;if(e.inputType==="birthday")return t.jsx(Qe,{entityType:"contact",entityId:x,title:a,value:n,isNotEditable:s,inputType:"birthday",options:i,displayValue:o,constructUpdateObject:c,contact:e.contact,businessId:d,baseUrl:u,spaceId:m,dateFormat:e.dateFormat,onEntityUpdated:g});const p=e.inputType??"text";return t.jsx(Qe,{entityType:"contact",entityId:x,title:a,value:n,isNotEditable:s,inputType:p,options:i,displayValue:o,constructUpdateObject:c,businessId:d,baseUrl:u,spaceId:m,onEntityUpdated:g})},wo=({nameKey:e,value:a,onChange:n,type:s})=>{const i=u=>{s===se.ContactField_type.NUMBER_ACCOUNTING||s===se.ContactField_type.NUMBER_DECIMAL||s===se.ContactField_type.NUMBER_CURRENCY||s===se.ContactField_type.CURRENCY?c(u):s===se.ContactField_type.NUMBER_INTEGER?d(u):(s===se.ContactField_type.LONGTEXT||s===se.ContactField_type.TEXT||s===se.ContactField_type.ADDRESS)&&o(u)},o=u=>{n(e,u.target.value)},c=u=>{const m=u.target.value.replace(/[^0-9.]/g,"");n(e,m)},d=u=>{const m=u.target.value;/^\d*$/.test(m)&&n(e,m)};return t.jsx(r.TextField,{size:"small",variant:"standard",value:a,onChange:i,inputProps:{pattern:"[0-9]*"},multiline:s===se.ContactField_type.LONGTEXT,rows:s===se.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},Io=({value:e,handleChange:a,dateFormat:n})=>{const s=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ma.DatePicker,{value:e?K(e):null,onChange:i=>a(i),format:s,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},To=({handleChange:e,value:a,options:n})=>{const s=ye();return t.jsx(r.FormControl,{className:"fadein",sx:{width:"100%"},children:t.jsxs(r.Select,{value:a,onChange:i=>e(i.target.value),size:"small",variant:"standard",children:[t.jsx(r.MenuItem,{value:"",children:s("global.noValue")}),n.map((i,o)=>t.jsx(r.MenuItem,{value:i,children:i},o))]})})},Eo=({value:e,handleChange:a,userTimeFormat:n})=>{const s=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Xn.TimePicker,{value:e?K(e):null,onChange:i=>a(i),format:s,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Do=({value:e,handleChange:a,userTimeFormat:n})=>{const s=ye(),i=[K().set("hour",0).set("minute",0),K().set("hour",0).set("minute",0)],o=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(_e.MultiInputTimeRangeField,{slotProps:{textField:({position:c})=>({label:s(c==="start"?"contactEdit.from":"contactEdit.to"),size:"small",variant:"standard",inputProps:{placeholder:o}})},value:e||i,onChange:c=>a(c),format:o})})})},ko=({value:e,handleChange:a,userDateFormat:n})=>{const s=ye(),i=[K(),K()],o=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(_e.MultiInputDateRangeField,{slotProps:{textField:({position:c})=>({label:s(c==="start"?"contactEdit.from":"contactEdit.to"),size:"small",sx:{width:"100%"},variant:"standard",inputProps:{placeholder:o}})},value:e||i,onChange:c=>a(c),format:o})})})},Ao=r.styled(r.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),yn=r.styled(r.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),Fo=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),fn=r.styled(r.Typography)(({theme:e})=>({fontWeight:600,fontSize:"0.875rem",alignSelf:"center",color:e.palette.text.primary,letterSpacing:-.5,padding:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0})),$o=r.styled(r.Typography)(({theme:e})=>({fontWeight:400,fontSize:"0.875rem",padding:"2.5px 14px 8.5px 0px",color:e.palette.text.primary,wordWrap:"break-word",maxHeight:"80px",overflow:"auto",whiteSpace:"break-spaces"})),xn=({property:e,entity:a,entityType:n,entityId:s,customContactFields:i,userTrii:o,baseUrl:c,spaceId:d,onEntityUpdated:u})=>{const{customProperties:m}=a.field,{setCustomProperties:x}=a.action,[g,p]=l.useState(!1),[y,v]=l.useState(!1),C=l.useRef(null),[f,S]=l.useState(!1),j=(o?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),w=o?.regCon_timeFormat||"24",I=N=>N===se.ContactField_type.NUMBER_INTEGER||N===se.ContactField_type.NUMBER_DECIMAL||N===se.ContactField_type.NUMBER_CURRENCY||N===se.ContactField_type.NUMBER_ACCOUNTING||N===se.ContactField_type.CURRENCY,z=(N,B)=>N.toLowerCase()==="dni"?!0:I(B),E=(N,B,T)=>{if(T===""||T===null||T===void 0)return null;if(z(N,B)){const W=Number(T);return Number.isNaN(W)?T:W}return T},D=()=>p(N=>!N),F=()=>{p(!1),a.action.resetCustomProperty(e.nameKey)},U=async()=>{if(!c||!d||!s)return;v(!0);const N=m.find(J=>J.nameKey===e.nameKey)||e,{nameKey:B,value:T}=N,W=i.find(J=>J.nameKey===B)?.type??N.type;let M;if(W===se.ContactField_type.TIME){const J=K(T);J.isValid()?M=J.format(w==="24"?"HH:mm":"hh:mm"):M=T}else if(W===se.ContactField_type.DATE){const J=K(T);J.isValid()?M=J.toISOString():M=T}else M=E(B,W,T);const _={properties:[{nameKey:B,type:W,value:M}]};try{const J=await Ve({baseUrl:c,spaceId:d,entityType:n,entityId:s,body:_}),te=m.map(de=>de.nameKey===B?{...de,type:W,value:M}:de);x(te),u?.(J)}finally{v(!1),p(!1)}},V=N=>i.find(B=>B.nameKey===N)?.name||N;l.useEffect(()=>{const N=C.current;if(!N)return;const B=()=>{const T=N.scrollWidth>N.clientWidth;S(W=>W===T?W:T)};if(B(),typeof ResizeObserver<"u"){let T=0;const W=new ResizeObserver(()=>{if(typeof window>"u"){B();return}T&&window.cancelAnimationFrame(T),T=window.requestAnimationFrame(()=>{B()})});return W.observe(N),()=>{typeof window<"u"&&T&&window.cancelAnimationFrame(T),W.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",B),()=>{window.removeEventListener("resize",B)}},[i,e.nameKey]);const Y=(N,B)=>{const T=e.type===se.ContactField_type.DATERANGE?Array.isArray(B)&&B[0]&&B[1]?`${K(B[0]).toISOString()} - ${K(B[1]).toISOString()}`:"":e.type===se.ContactField_type.DATE?K(B).isValid()?K(B).toISOString():"Invalid Date":e.type===se.ContactField_type.TIME?K(B).isValid()?K(B).toISOString():"Invalid Time":B,W=m.map(M=>M.nameKey===N?{...M,value:T}:M);x(W)},{type:R,nameKey:H,value:$}=e,ee=N=>N==null?!1:typeof N=="string"?N.trim().length>0:!0,P=()=>R===se.ContactField_type.DATE?t.jsx(Io,{value:$?K($):null,handleChange:N=>Y(H,N?.toDate()),dateFormat:j}):R===se.ContactField_type.TIME?t.jsx(Eo,{value:e?.valueDate?K(e.valueDate):$?K($):null,handleChange:N=>Y(H,N),userTimeFormat:w}):R===se.ContactField_type.DATERANGE?t.jsx(ko,{value:$&&typeof $=="string"&&$.includes(" - ")?[K($.split(" - ")[0]),K($.split(" - ")[1])]:null,handleChange:N=>Y(H,[N[0]?.toDate?.(),N[1]?.toDate?.()]),userDateFormat:j}):R===se.ContactField_type.TIMERANGE?t.jsx(Do,{value:Array.isArray($)&&$.length===2?[K($[0]),K($[1])]:null,handleChange:N=>Y(H,[N[0]?.toDate?.(),N[1]?.toDate?.()]),userTimeFormat:w}):R===se.ContactField_type.OPTIONS?t.jsx(To,{value:typeof $=="string"?$:"",handleChange:N=>Y(H,N),options:i.find(N=>N.nameKey===H)?.typeOptions??[]}):t.jsx(wo,{type:R,nameKey:H,value:$,onChange:Y});return t.jsxs(Fo,{className:`fadein ${e.type===se.ContactField_type.LONGTEXT?"contacts-col-12":"contacts-col-5"}`,children:[t.jsxs(r.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[f?t.jsx(r.Tooltip,{title:V(e.nameKey),arrow:!0,children:t.jsx(fn,{ref:C,flexGrow:1,noWrap:!0,children:V(e.nameKey)})}):t.jsx(fn,{ref:C,flexGrow:1,noWrap:!0,children:V(e.nameKey)}),g?t.jsxs(t.Fragment,{children:[t.jsx(yn,{size:"small",onClick:U,children:y?t.jsx(r.CircularProgress,{size:24}):t.jsx(nt,{})}),t.jsx(yn,{size:"small",onClick:F,children:t.jsx(Ra,{})})]}):t.jsx(Ao,{className:"edit-icon",size:"small",onClick:D,children:t.jsx(bt,{})})]}),t.jsx(r.Box,{width:g||e.type===se.ContactField_type.LONGTEXT?"100%":"50%",position:"relative",children:g?P():t.jsx($o,{children:ee(e?.value)?e.type===se.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const N=e.value.split(" - ");if(N.length===2){const[B,T]=N,W=K(B),M=K(T);return`${W.isValid()?W.format(j):"-"} - ${M.isValid()?M.format(j):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${K(e.value[0]).format(j)} - ${K(e.value[1]).format(j)}`;return`${e.value}`})():e.type===se.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${K(e.value[0]).format(w==="24"?"HH:mm":"hh:mm")} - ${K(e.value[1]).format(w==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===se.ContactField_type.TIME?(()=>{try{const N=e.valueDate||e.value;return`${K(N).format(w==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===se.ContactField_type.DATE?(()=>{try{return`${K(e.value).format(j)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},Bo=e=>{const{dateFormat:a,entityData:n,customContactFields:s,baseUrl:i,spaceId:o,currentUser:c,onEntityUpdated:d}=e,u=ye(),{entityType:m,editEntity:x}=Ge(),g=Je();if(m!=="contact")return null;const[p,y]=l.useState([]),[v,C]=l.useState(null),[f,S]=l.useState(null),[j,w]=l.useState(null),I=x;l.useEffect(()=>{if(!g)return;const U=new AbortController;return g.fetchUsers({signal:U.signal}).then(V=>{U.signal.aborted||y(V??[])}).catch(()=>{U.signal.aborted||y([])}),()=>{U.abort()}},[g]),l.useEffect(()=>{const U=new AbortController,V=async Y=>{if(!Y||!g)return null;try{const R=await g.fetchUserTriiById({userId:Y,signal:U.signal});return R?.display_name||R?.email||null}catch{return null}};return(async()=>{const Y=ut({userId:n.owner,users:p,currentUser:c})??(n.owner?await V(n.owner):null),R=ut({userId:n.createdBy??void 0,users:p,currentUser:c})??(n.createdBy?await V(n.createdBy):null),H=ut({userId:n.updatedBy??void 0,users:p,currentUser:c})??(n.updatedBy?await V(n.updatedBy):null);U.signal.aborted||(C(Y),w(R),S(H))})(),()=>{U.abort()}},[g,n,p,c]);const z=(a||"YYYY/MM/DD").toUpperCase(),E=I.field.birthDate,D=E?.isValid()?E.format(z):null,F=U=>{const V=new Date;let Y=V.getFullYear()-U.getFullYear();const R=V.getMonth()-U.getMonth();return(R<0||R===0&&V.getDate()<U.getDate())&&Y--,Y};return t.jsx(Qt,{title:"General",children:t.jsxs(un,{children:[t.jsx(Et,{title:u("conversations.contactDetails.contactOwner"),displayValue:v||"-",value:n.owner,inputType:"select",options:p,constructUpdateObject:U=>({owner:typeof U=="string"?U:""}),contact:I,baseUrl:i,spaceId:o,contactId:n.id,onEntityUpdated:d}),t.jsx(Et,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:I,baseUrl:i,spaceId:o,contactId:n.id,onEntityUpdated:d}),t.jsx(Et,{title:u("conversations.contactDetails.createdBy"),value:j||"-",isNotEditable:!0,contact:I,baseUrl:i,spaceId:o,contactId:n.id}),t.jsx(Et,{title:u("conversations.contactDetails.modifiedBy"),value:f||"-",isNotEditable:!0,contact:I,baseUrl:i,spaceId:o,contactId:n.id}),t.jsx(Et,{title:u("global.birthdate"),inputType:"birthday",displayValue:E?`${D} (${F(E.toDate())})`:"-",value:E?E.toISOString():"",constructUpdateObject:U=>({birthDate:U}),contact:I,baseUrl:i,spaceId:o,contactId:n.id,dateFormat:a,onEntityUpdated:d}),I.field.customProperties.map(U=>t.jsx(xn,{property:U,entity:I,entityType:"contact",entityId:String(n.id),customContactFields:s,userTrii:c,baseUrl:i,spaceId:o,onEntityUpdated:d},U.nameKey))]})})},Ca=({title:e,value:a,isNotEditable:n,inputType:s="text",options:i=[],displayValue:o,constructUpdateObject:c,baseUrl:d,spaceId:u,businessId:m,onEntityUpdated:x})=>t.jsx(Qe,{entityType:"business",entityId:m,title:e,value:a,isNotEditable:n,inputType:s,options:i,displayValue:o,constructUpdateObject:c,baseUrl:d,spaceId:u,onEntityUpdated:x}),Uo=e=>{const a=ye(),{entityData:n,customContactFields:s,baseUrl:i,spaceId:o,currentUser:c,onEntityUpdated:d}=e,{entityType:u,editEntity:m}=Ge(),x=Je();if(u!=="business")return null;const[g,p]=l.useState([]),[y,v]=l.useState(null),[C,f]=l.useState(null),[S,j]=l.useState(null),w=m;return l.useEffect(()=>{if(!x)return;const I=new AbortController;return x.fetchUsers({signal:I.signal}).then(z=>{I.signal.aborted||p(z??[])}).catch(()=>{I.signal.aborted||p([])}),()=>{I.abort()}},[x]),l.useEffect(()=>{const I=new AbortController,z=async E=>{if(!E||!x)return null;try{const D=await x.fetchUserTriiById({userId:E,signal:I.signal});return D?.display_name||D?.email||null}catch{return null}};return(async()=>{const E=ut({userId:n.owner,users:g,currentUser:c})??(n.owner?await z(n.owner):null),D=ut({userId:n.createdBy??void 0,users:g,currentUser:c})??(n.createdBy?await z(n.createdBy):null),F=ut({userId:n.updatedBy??void 0,users:g,currentUser:c})??(n.updatedBy?await z(n.updatedBy):null);I.signal.aborted||(v(E),j(D),f(F))})(),()=>{I.abort()}},[x,n,g,c]),t.jsx(Qt,{title:"General",children:t.jsxs(un,{children:[t.jsx(Ca,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:y||"-",inputType:"select",options:g,constructUpdateObject:I=>({owner:typeof I=="string"?I:""}),baseUrl:i,spaceId:o,businessId:n.id,onEntityUpdated:d}),t.jsx(Ca,{title:a("conversations.contactDetails.createdBy"),value:S||"-",isNotEditable:!0}),t.jsx(Ca,{title:a("conversations.contactDetails.modifiedBy"),value:C||"-",isNotEditable:!0}),w.field.customProperties.map(I=>t.jsx(xn,{property:I,entity:w,entityType:"business",entityId:String(n.id),customContactFields:s,userTrii:c,baseUrl:i,spaceId:o,onEntityUpdated:d},I.nameKey))]})})},Po=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(Bo,{...e,entityData:n,entityType:"contact"}):t.jsx(Uo,{...e,entityData:n,entityType:"business"})},Mo=()=>{const[e,a]=l.useState(!1),[n,s]=l.useState("");return{isOpen:e,title:n,openModal:i=>{s(i),a(!0)},closeModal:()=>{a(!1),s("")}}},Ro=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),No=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),Lo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Oo=Se.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),zo=Se.styled(r.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),ja=Se.styled(r.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Wo=Se.styled(ja)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),_o=Se.styled(ja)(({})=>({fontSize:14,fontWeight:500})),Vo=Se.styled(ja)(({})=>({fontSize:14,fontWeight:500})),Yo=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Tt({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(Ro,{children:[t.jsx(No,{children:t.jsxs(Oo,{children:[t.jsx(r.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx(_o,{children:e.address})}),t.jsx(r.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(Vo,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(r.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Wo,{children:e.note})})]})}),t.jsxs(Lo,{children:[a!==""&&t.jsx(zo,{src:n,alt:e.profileName,style:{cursor:"pointer"},children:e?.profileName?.charAt(0).toUpperCase()}),t.jsx(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(r.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Ae.Star,{sx:{color:"#fcac34"}}):t.jsx(Ae.StarBorder,{sx:{color:"#fcac34"}})})})]})]})})},Sa=Na.PhoneNumberUtil.getInstance(),qo=e=>{if(!e||!e.trim())return e;try{const a=Sa.parse(e,void 0);return Sa.isValidNumber(a)?Sa.format(a,Na.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},Go=Se.styled(r.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),Ho=Se.styled(Zn)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),Ko=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),Jo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),Qo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Xo=Se.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),bn=Se.styled(r.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),Zo=Se.styled(bn)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),ei=Se.styled(bn)(({})=>({fontSize:14,fontWeight:500})),ti=({item:e})=>{const a=()=>{const s=e.address;if(!s)return;const i=new CustomEvent("call-contact-header",{detail:{phoneAddress:s}});window.dispatchEvent(i)},n=l.useMemo(()=>qo(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(Ko,{children:[t.jsxs(Jo,{children:[t.jsx(Go,{onClick:a,color:"primary",size:"small",children:t.jsx(Ho,{})}),t.jsxs(Xo,{children:[t.jsx(r.Tooltip,{title:n||"",arrow:!0,children:t.jsx(ei,{children:n})}),t.jsx(r.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(Zo,{children:e.note})})]})]}),t.jsx(Qo,{children:t.jsx(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(r.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx(Ae.Star,{sx:{color:"#fcac34"}}):t.jsx(Ae.StarBorder,{sx:{color:"#fcac34"}})})})})]})})},ai=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",padding:e.spacing(1,0,2,0),width:"100%",gap:e.spacing(1),"&:hover .edit-icon":{opacity:1}})),ni=r.styled(r.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),si=r.styled(r.Box)(({})=>({display:"flex",alignItems:"center"})),ri=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),oi=r.styled(r.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),ii=({title:e,methodItems:a,isPhone:n,handleEdit:s,owner:i})=>t.jsxs(ai,{children:[t.jsxs(si,{children:[t.jsx(ni,{children:e}),t.jsx(oi,{className:"edit-icon",size:"small",onClick:s,children:t.jsx(bt,{fontSize:"small",sx:{color:o=>o.palette.secondary.main}})})]}),t.jsx(ri,{children:a.map((o,c)=>n?t.jsx(ti,{item:o},c):t.jsx(Yo,{item:o,owner:i},c))})]}),li=({title:e})=>t.jsx(r.Box,{children:t.jsx(r.Typography,{variant:"subtitle2",children:e})}),ci={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},Xt=({title:e,handleAdd:a})=>{const n=ye();return console.log("[SubsectionHeaderWithButton] title:",e,"t fn:",n?.name||"anonymous"),t.jsxs(r.Box,{sx:ci.container,children:[t.jsx(r.Typography,{variant:"subtitle2",children:e}),t.jsx(r.Button,{onClick:a,size:"small",startIcon:t.jsx(La,{}),variant:"text",color:"primary",children:n("global.add")})]})},di={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},Dt=({children:e})=>t.jsx(r.Box,{sx:di.container,children:e}),vn={container:{display:"flex",width:"50%",alignItems:"center",justifyContent:"end"},noteTextField:{width:"100%",marginRight:"15px"}},ui=({onDelete:e,addressData:a,handleLinkAccountSave:n,checked:s,onCheckContactAddress:i})=>{const o=ye(),[c,d]=l.useState(null),u=!!c,{channelType:m,address:x}=a,[g,p]=l.useState(!1),[y,v]=l.useState(null),[C,f]=l.useState(!1),S=F=>{d(F.currentTarget)},j=()=>{d(null)},w=()=>{f(!1)},I=()=>{e(),j()},z=async()=>{p(!0);try{if(!i)return;const F=await i(13);if(!F)return;v(F),f(!0)}catch(F){console.error("Error verifying WhatsApp account:",F)}finally{p(!1)}j()},E=async()=>{p(!0);try{if(!i)return;const F=await i(21);if(!F)return;v(F),f(!0)}catch(F){console.error("Error verifying RCS account:",F)}finally{p(!1)}j()},D=async()=>{await n(),f(!1)};return t.jsxs(r.Box,{children:[t.jsx(r.IconButton,{"aria-controls":u?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":u?"true":void 0,onClick:S,children:t.jsx(es,{})}),t.jsxs(r.Menu,{id:"basic-menu",anchorEl:c,open:u,onClose:j,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(r.MenuItem,{onClick:I,children:[t.jsx(r.ListItemIcon,{children:t.jsx(qt,{color:"error"})}),t.jsx(r.ListItemText,{children:o("global.delete")})]}),m===5&&t.jsxs(r.MenuItem,{onClick:z,disabled:!s,children:[t.jsx(r.ListItemIcon,{children:g?t.jsx(r.CircularProgress,{size:24}):t.jsx(ts,{sx:{color:"green"}})}),t.jsx(r.ListItemText,{children:o("optionsMenu.verifyWspAccount")})]}),m===21&&t.jsxs(r.MenuItem,{onClick:E,disabled:!s,children:[t.jsx(r.ListItemIcon,{children:g?t.jsx(r.CircularProgress,{size:24}):t.jsx(as,{})}),t.jsx(r.ListItemText,{children:o("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(r.Modal,{open:C,onClose:w,"aria-labelledby":"modal-modal-title","aria-describedby":"modal-modal-description",children:t.jsx(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,boxShadow:24,p:4,backgroundColor:F=>F.palette.background.default},children:y?.success?t.jsxs(t.Fragment,{children:[t.jsxs(r.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[o("optionsMenu.wspAccountFound")," ",x]}),t.jsx(r.Typography,{id:"modal-modal-description",sx:{mt:2},children:o("optionsMenu.wantToLinkContact")}),t.jsxs(r.Box,{sx:{marginTop:"10px"},children:[t.jsx(r.Button,{onClick:D,color:"primary",children:o("optionsMenu.yesLink")}),t.jsx(r.Button,{onClick:w,color:"secondary",children:"No"})]})]}):t.jsxs(r.Box,{sx:{position:"relative"},children:[t.jsxs(r.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[o("optionsMenu.noWspAccountFound")," ",x]}),t.jsx(r.Button,{onClick:w,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:o("global.cancel")})]})})})]})},kt=e=>{const a=ye(),n=Je(),{editEntity:s,entityId:i}=Ge(),[o,c]=l.useState(!1),d=e.checked??!0,u=e.entityId??i,{note:m,channelType:x,id:g,address:p}=e.addressData,y=!e.addressData.hasOwnProperty("isSaved"),v=e.replaceAddress??s.action.replaceAddress,C=e.addWhatsappVerified||(typeof s.action?.addWhatsappVerified=="function"?s.action.addWhatsappVerified:void 0),f=async I=>{if(!n||!u)return null;const z=await n.setContactAddress({data:{address:p,contactId:u,type:I}});return v(g,z),z},S=async()=>{if(!n||!u)return;const I=await n.updateContactAddress({data:{contactAddressId:g,contactId:u,note:m??""}});v(g,I)},j=async()=>{c(!0),y?(await S(),c(!1)):await f(x)&&c(!1)},w=async()=>{c(!0);const I=await f(13);I&&C&&C(I),I&&c(!1)};return t.jsxs(r.Box,{sx:{...vn.container},children:[y&&t.jsx(r.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:I=>e.handleNoteFieldChange(I,g,x),value:m,fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",sx:vn.noteTextField}),t.jsx(r.IconButton,{onClick:j,children:o?t.jsx(r.CircularProgress,{size:24}):t.jsx(nt,{color:"primary"})}),t.jsx(ui,{onDelete:()=>e.handleDeleteAddress(g,x),addressData:e.addressData,handleLinkAccountSave:w,checked:d&&!o,onCheckContactAddress:async I=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:p,type:I}})}catch{return null}}})]})},pi={container:{display:"flex",gap:"100px",alignItems:"center"}},At=({children:e})=>t.jsx(r.Box,{sx:pi.container,children:e}),hi={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},Ft=({children:e})=>t.jsx(r.Box,{sx:{...hi.container},children:e}),mi=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(rs,{size:20});case"available":return t.jsx(ns,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(ss,{style:{height:27,width:27},color:"error"});default:return null}},Cn=({status:e,text:a})=>t.jsxs(os,{position:"end",children:[a?t.jsx(is,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(mi,{status:e})})]}),gi={code:{width:"60%",color:"gray"}},yi=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(Dt,{children:t.jsxs(At,{children:[t.jsx(r.Typography,{sx:gi.code,variant:"body2",children:e.address}),t.jsx(kt,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},fi=({IMSs:e,editEntity:a})=>t.jsx(Ft,{children:e?.map(n=>t.jsx(yi,{data:n,editEntity:a},n.id))}),Zt=({editEntity:e,title:a,IMSs:n})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(li,{title:a}),t.jsx(fi,{IMSs:n,editEntity:e})]}),xi={addressField:{}},wa=({data:e,onChange:a,setWarnings:n})=>{const{id:s,channelType:i,address:o}=e,c=ye(),d=Je(),[u,m]=l.useState("idle"),[x,g]=l.useState(o),p=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let y=setTimeout(async()=>{if(o!==""&&o!==x){if(!d)return;m("loading"),g(o);const v={address:o,type:i};try{const C=await d.checkContactAddress({data:v}),{success:f,warnings:S}=C;n(S),m(f?"available":"unavailable")}catch{n([]),m("unavailable")}}},1700);return()=>clearTimeout(y)},[d,e,o,i,x,n]),t.jsx(t.Fragment,{children:t.jsx(r.TextField,{disabled:p,sx:xi.addressField,size:"small",label:i===ct.ChannelType.WHATSAPP||i===ct.ChannelType.RCS?c?c("global.number"):"Number":c?c("global.email"):"Email",value:o,onChange:y=>{a(y,s,i)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Cn,{status:u})})}})})},bi={addressField:{}},vi=({data:e,onChange:a,setWarnings:n})=>{const s=Je(),i=ye(),{id:o,channelType:c,address:d}=e,[u,m]=l.useState("idle"),[x,g]=l.useState(d),p=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let y=setTimeout(async()=>{if(d!==""&&d!==x){if(!s)return;m("loading"),g(d);const v={address:d,type:c};try{const{success:C,warnings:f}=await s.checkContactAddress({data:v});n(f),m(C?"available":"unavailable")}catch{n([]),m("unavailable")}}},1700);return()=>clearTimeout(y)},[e]),t.jsx(t.Fragment,{children:t.jsx(r.TextField,{disabled:p,sx:bi.addressField,size:"small",label:i("global.number"),value:d,onChange:y=>{a(y,o,c)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(Cn,{status:u})})}})})},Ia={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},Ci=({text:e})=>t.jsx(r.Grid,{item:!0,children:t.jsx(r.Box,{sx:Ia.secondaryContainer,children:t.jsx(cs,{icon:t.jsx(ls,{sx:Ia.icon}),sx:Ia.chip,label:e,color:"error",variant:"outlined"})})}),ea=({warnings:e})=>{const a=ye();return t.jsx(r.Box,{children:t.jsx(r.Grid,{container:!0,children:e?.map((n,s)=>t.jsx(Ci,{text:a(`contactAddressError.${n}`)},s))})})},ji={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},Si=({data:e})=>{const a="edit",{editEntity:n}=Ge(),s=n.action,i=n.state,[o,c]=l.useState([]),[d,u]=l.useState(!0);return l.useEffect(()=>{u(o.length===0&&(e.address??"")!=="")},[o,e.address]),t.jsx(Dt,{children:t.jsxs(At,{children:[t.jsxs(r.Box,{sx:{...ji.numberCountryContainer,flexDirection:"column"},children:[t.jsx(vi,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange}),o.length>0&&t.jsx(ea,{warnings:o})]}),t.jsx(kt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress,addWhatsappVerified:s.addWhatsappVerified,checked:d})]})})},wi=({phoneNumbers:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(Si,{data:a},a.id))}),Ii=({phoneNumbers:e,handleAdd:a})=>{const n=ye();return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(Xt,{handleAdd:a,title:n("global.phones")}),t.jsx(wi,{phoneNumbers:e})]})},jn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Ti=({data:e})=>{const a="edit",{editEntity:n}=Ge(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(Dt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:jn.numberCountryContainer,children:t.jsx(r.Box,{sx:jn.adressInputBox,children:t.jsx(wa,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(kt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(ea,{warnings:o})]})},Ei=({emails:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(Ti,{data:a},a.id))}),Di=({emails:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(Xt,{handleAdd:a,title:"Emails"}),t.jsx(Ei,{emails:e})]}),Sn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},ki=({data:e})=>{const a="edit",{editEntity:n}=Ge(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(Dt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:Sn.numberCountryContainer,children:t.jsx(r.Box,{sx:Sn.adressInputBox,children:t.jsx(wa,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(kt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(ea,{warnings:o})]})},Ai=({whatsapps:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(ki,{data:a},a.id))}),Fi=({whatsapps:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(Xt,{handleAdd:a,title:"WhatsApp"}),t.jsx(Ai,{whatsapps:e})]}),wn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},$i=({data:e})=>{const a="edit",{editEntity:n}=Ge(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(Dt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:wn.numberCountryContainer,children:t.jsx(r.Box,{sx:wn.adressInputBox,children:t.jsx(wa,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(kt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(ea,{warnings:o})]})},Bi=({RCSs:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx($i,{data:a},a.id))}),Ui=({RCSs:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(Xt,{handleAdd:a,title:"RCS"}),t.jsx(Bi,{RCSs:e})]}),Pi=Se.styled(r.Box)(({theme:e})=>({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:1e3,backgroundColor:e.palette.background.panel,padding:e.spacing(4),borderRadius:e.shape.borderRadius})),Mi=({open:e,onClose:a,title:n})=>{const s=ye(),{editEntity:i}=Ge(),{emails:o,phoneNumbers:c,imsWhatsapp:d,imsRCS:u}=i.field,{addEmail:m,addPhone:x,addWhatsapp:g,resetToInitialContactInformation:p,addRCS:y}=i.action;function v(){a(),p()}return t.jsx(r.Modal,{open:e,onClose:a,children:t.jsxs(Pi,{children:[(()=>{switch(n){case"Phones":return t.jsx(Ii,{handleAdd:x,phoneNumbers:c});case"Emails":return t.jsx(Di,{handleAdd:m,emails:o});case"Whatsapp":return t.jsx(Fi,{handleAdd:g,whatsapps:d});case"RCS":return t.jsx(Ui,{handleAdd:y,RCSs:u});case"Facebook":return t.jsx(Zt,{title:"Facebook",IMSs:i.field.imsFacebooks,editEntity:i});case"Webchat":return t.jsx(Zt,{title:"Webchat",IMSs:i.field.imsWebchats,editEntity:i});case"Instagram":return t.jsx(Zt,{title:"Instagram",IMSs:i.field.imsInstagrams,editEntity:i});case"Mercado libre":return t.jsx(Zt,{title:"Mercado Libre",IMSs:i.field.imsMercadolibre,editEntity:i});default:return t.jsx(r.Typography,{children:"No information available for this section."})}})(),t.jsx(r.Box,{mt:2,display:"flex",justifyContent:"flex-end",children:t.jsx(r.Button,{variant:"contained",color:"primary",onClick:v,children:s("global.close")})})]})})},Ri=({ownerData:e})=>{const{isOpen:a,title:n,openModal:s,closeModal:i}=Mo(),{editEntity:o}=Ge(),c=ye(),d=o.field.phoneNumbers,u=o.field.emails,m=o.field.imsFacebooks,x=o.field.imsWhatsapp,g=o.field.imsMercadolibre,p=o.field.imsWebchats,y=o.field.imsInstagrams,v=o.field.imsRCS,C=[{key:"phones",title:c("conversations.contactDetails.phones"),items:d,isPhone:!0,modalTitle:"Phones",visible:!0},{key:"emails",title:"Emails",items:u,modalTitle:"Emails",visible:!0},{key:"facebook",title:"Facebook",items:m,modalTitle:"Facebook",visible:!0},{key:"whatsapp",title:"Whatsapp",items:x,modalTitle:"Whatsapp",visible:!0},{key:"rcs",title:"RCS",items:v,modalTitle:"RCS",visible:v.length>0},{key:"mercado-libre",title:"Mercado libre",items:g,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:p,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:y,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(Qt,{title:c("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:C.filter(f=>f.visible).map(f=>t.jsx(ii,{handleEdit:()=>s(f.modalTitle),title:f.title,methodItems:f.items,isPhone:f.isPhone,owner:e},f.key))})}),t.jsx(Mi,{open:a,onClose:i,title:n})]})},Ni=({entityType:e,entityData:a,baseUrl:n,spaceId:s,onEntityUpdated:i,onDirectionSearchClick:o})=>{const c={baseUrl:n,spaceId:s,entityId:String(a.id),onEntityUpdated:i},d=ye(),u=({addressNumber:m,title:x})=>t.jsxs("div",{className:"flex flex-col gap-4 rounded-xl p-4",children:[t.jsx(r.Typography,{variant:"body2",children:x}),t.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-3",children:[t.jsx("div",{className:"col-span-2",children:t.jsx(Qe,{entityType:e,title:d("conversations.contactDetails.street"),value:a[m]?.street??"",...c,constructUpdateObject:g=>({[m]:{street:g}}),minWidth:"100%"})}),t.jsx(Qe,{entityType:e,title:d("conversations.contactDetails.city"),value:a[m]?.city??"",...c,constructUpdateObject:g=>({[m]:{city:g}}),minWidth:"100%"}),t.jsx(Qe,{entityType:e,title:d("conversations.contactDetails.state"),value:a[m]?.state??"",...c,constructUpdateObject:g=>({[m]:{state:g}}),minWidth:"100%"}),t.jsx(Qe,{entityType:e,title:d("conversations.contactDetails.postcode"),value:a[m]?.zipcode??"",...c,constructUpdateObject:g=>({[m]:{zipcode:g}}),minWidth:"100%"}),t.jsx(Qe,{entityType:e,title:d("conversations.contactDetails.country"),value:a[m]?.country??"",...c,constructUpdateObject:g=>({[m]:{country:g}}),minWidth:"100%"})]})]});return t.jsx(Qt,{title:d("conversations.contactDetails.addressInformation"),enableDirectionSearch:!0,onDirectionSearchClick:o,children:t.jsxs("div",{className:"flex flex-col gap-4",children:[t.jsx(u,{addressNumber:"address1",title:d("conversations.contactDetails.primaryAddress")}),t.jsx(u,{addressNumber:"address2",title:d("conversations.contactDetails.secondaryAddress")})]})})},Li=({entity:e,setEntity:a})=>l.useCallback(n=>{if(!n||typeof n!="object")return;const s=n;if("id"in s){a(n);return}if(!e)return;const i={...e,...s};a(i)},[e,a]),Oi=({open:e,baseUrl:a,spaceId:n,contactData:s,contactType:i,labels:o,selectedTags:c,onTagsUpdated:d})=>{const[u,m]=l.useState("main"),[x,g]=l.useState([]),[p,y]=l.useState(!1),[v,C]=l.useState(!1),[f,S]=l.useState([]),[j,w]=l.useState(!1),I=l.useMemo(()=>{const F=o??[],U=f??[],V=new Map;for(const Y of F)Y?.id&&V.set(String(Y.id),Y);for(const Y of U)Y?.id&&V.set(String(Y.id),Y);return Array.from(V.values())},[o,f]),z=l.useCallback(()=>{m("main"),g([]),y(!1),C(!1),S([]),w(!1)},[]);l.useEffect(()=>{e||z()},[e,z]),l.useEffect(()=>{if(u!=="tags"){y(!1);return}if(p||!I.length)return;const F=new Set(c.map(V=>String(V.id))),U=I.filter(V=>F.has(String(V?.id)));g(U),y(!0)},[u,p,I,c]);const E=l.useCallback(async F=>{if(j||!a||!n)return;const U=String(F??"").trim();if(!U)return;const V=U.toLowerCase(),Y=I.find(R=>String(R?.name??"").trim().toLowerCase()===V);if(Y?.id){g(R=>{const H=R??[];return H.some($=>String($?.id)===String(Y.id))?H:[...H,Y]});return}w(!0);try{const R=await en({baseUrl:a,spaceId:n,name:U});S(H=>{const $=H??[];return!R?.id||$.some(ee=>String(ee?.id)===String(R.id))?$:[...$,R]}),g(H=>{const $=H??[];return!R?.id||$.some(ee=>String(ee?.id)===String(R.id))?$:[...$,R]})}finally{w(!1)}},[j,a,n,I]),D=l.useCallback(async()=>{if(v||!a||!n||!s||i!=="contact"&&i!=="business")return;const F=x.filter(U=>U?.id&&U?.name).map(U=>({id:String(U.id),name:String(U.name)}));C(!0);try{await Ve({baseUrl:a,spaceId:n,entityType:i,entityId:String(s.id),body:{tags:F}}),d(F),m("main")}finally{C(!1)}},[v,a,n,s,i,x,d]);return{view:u,setView:m,draftLabels:x,setDraftLabels:g,labelsOptions:I,isSaving:v,isCreatingLabel:j,handleCreateLabel:E,handleSaveTags:D}},zi=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),Wi={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},_i=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:s,onBack:i,onEntityUpdated:o,currentUser:c})=>{const d=ye(),u=Je(),m=l.useRef(null),x=l.useRef(null),[g,p]=l.useState(()=>s?.businessName??""),[y,v]=l.useState(!1),[C,f]=l.useState(!1),[S,j]=l.useState(!1),[w,I]=l.useState([]),[z,E]=l.useState(s??null),[D,F]=l.useState(1),[U,V]=l.useState(!1),[Y,R]=l.useState(!1),H=l.useMemo(()=>{const J=c?.display_name,te=c?.email;return String(J||te||"").trim()},[c]);l.useEffect(()=>()=>{m.current&&(clearTimeout(m.current),m.current=null),x.current?.abort()},[]),l.useEffect(()=>{E(s??null),p(s?.businessName??"")},[s]);const $=()=>{x.current?.abort(),x.current=null,m.current&&(clearTimeout(m.current),m.current=null),v(!1),R(!1),F(1),V(!1),I([])},ee=J=>J.filter(te=>!!te?.id).map(te=>({businessId:String(te.id),businessName:String(te.name??"")})),P=async({query:J,page:te})=>{if(!u)return;x.current?.abort();const de=new AbortController;x.current=de,f(!0);try{const he={...Wi,currentPage:te,filter:[{value:J,column:"name",condition:""}]},ve=await u.fetchBusinessTableData({pagination:he,signal:de.signal});if(de.signal.aborted)return;const X=ee(ve?.contactos??[]);v(!0);const Q=ve?.paginacion?.total??0;I(Ne=>{const ue=te===1?X:(()=>{const xe=new Map;for(const me of Ne)xe.set(me.businessId,me);for(const me of X)xe.set(me.businessId,me);return Array.from(xe.values())})();return Q&&ue.length>=Q&&R(!0),ue})}finally{f(!1),j(!1),V(!1)}},N=J=>{$(),J&&(m.current&&(clearTimeout(m.current),m.current=null),j(!0),m.current=setTimeout(()=>{P({query:J,page:1})},800))},B=J=>{const te=J.target;if(!(te.scrollHeight-te.scrollTop-te.clientHeight<1)||Y||C||!g)return;const de=D+1;V(!0),F(de),P({query:g,page:de})},T=async()=>{if(!u||!H)return;const J=String(g??"").trim();if(J){f(!0);try{const te={name:J,owner:H,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},de=await u.createBusiness({business:te}),he={businessId:String(de.id??""),businessName:String(de.name??J)};I([he]),E(he),v(!0)}finally{f(!1)}}},W=async()=>{if(!e||!a||!n)return;const J=z?.businessId??"",te=await Ve({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:J}});o?.(te),i()},M=y&&w.length===0&&g?t.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",sx:{px:1,py:.5},children:[t.jsx(r.Typography,{variant:"body2",children:d("global.noOptions")}),t.jsx(qe.LoadingButton,{size:"small",variant:"contained",onClick:T,loading:C,disabled:C||!H,children:d("global.createNew")})]}):t.jsx(r.Typography,{variant:"body2",children:d("global.noOptions")}),_=!n||!e||!a;return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(r.IconButton,{size:"small",onClick:i,"aria-label":d("global.back"),children:t.jsx(ha,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"subtitle1",children:d("conversations.contactDetails.business")}),t.jsx(r.Box,{sx:{flex:1}}),t.jsx(qe.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(nt,{}),onClick:W,loading:!1,disabled:_,children:d("global.save")})]}),t.jsxs(r.Box,{sx:{position:"relative"},children:[C||S||U?t.jsx(r.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(r.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(r.Autocomplete,{fullWidth:!0,disablePortal:!0,value:z,onChange:(J,te)=>{E(te)},inputValue:g,onInputChange:(J,te,de)=>{p(te),de==="input"&&N(te)},options:w,getOptionLabel:J=>J?.businessName??"",isOptionEqualToValue:(J,te)=>J.businessId===te.businessId,noOptionsText:M,renderInput:J=>t.jsx(r.TextField,{...J,size:"small",label:d("conversations.contactDetails.business"),placeholder:d("global.noValue"),InputProps:{...J.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[C||S?t.jsx(r.CircularProgress,{size:18,sx:{mr:1}}):null,J.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:B}})]})]})},Vi=({open:e,onClose:a,baseUrl:n,spaceId:s,contactId:i,sx:o,language:c="en",navigate:d,googleMapsApiKey:u,onEntityUpdated:m})=>{const{t:x,i18n:g}=We.useTranslation(),p=l.useRef(null);l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!u){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const P=document.createElement("script");return P.src=`https://maps.googleapis.com/maps/api/js?key=${u}&libraries=places`,P.async=!0,P.defer=!0,document.body.appendChild(P),()=>{}},[u]),l.useEffect(()=>{c&&g.changeLanguage(c)},[c,g]);const y=P=>x(P),v=l.useMemo(()=>!n||!s?null:nn(n,s),[n,s]),{state:C,selectors:f,actions:S}=to({open:e,baseUrl:n,spaceId:s,contactId:i}),j=Li({entity:C.contactData,setEntity:P=>{S.setContactData(P??void 0),P&&m&&m(P)}}),{view:w,setView:I,draftLabels:z,setDraftLabels:E,labelsOptions:D,isSaving:F,isCreatingLabel:U,handleCreateLabel:V,handleSaveTags:Y}=Oi({open:e,baseUrl:n,spaceId:s,contactData:C.contactData,contactType:f.contactType,labels:f.labels,selectedTags:f.tags,onTagsUpdated:P=>{if(!C.contactData)return;const N={...C.contactData,tags:P};S.setContactData(N),m&&m(N)}}),R=Tt({baseUrl:n,spaceId:s,entityType:f.contactType==="business"||f.contactType==="contact"?f.contactType:void 0,entityId:C.contactData?String(C.contactData.id):void 0,initialImageUrl:C.contactData?.imageUrl,onEntityUpdated:j}),H=zi({onClose:a}),$={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:P=>P.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},ee=Array.isArray(o)?[$,...o]:o?[$,o]:$;return t.jsx(Ir,{value:v,children:t.jsx(Sr,{t:y,children:t.jsx(bo,{navigate:d,children:t.jsx(r.Modal,{open:e,onClose:H,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:e,timeout:200,children:t.jsxs(r.Box,{sx:ee,ref:p,children:[t.jsx(r.IconButton,{"aria-label":"close",onClick:H,sx:{position:"absolute",right:5,top:5,color:P=>P.palette.grey[500],zIndex:1},size:"small",children:t.jsx(Pa,{sx:{fontSize:20}})}),C.isLoading&&!C.contactData?t.jsx(r.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(r.CircularProgress,{})}):C.error?t.jsx(r.Box,{sx:{mb:2},children:"Failed to load contact"}):C.contactData?t.jsx(fo,{value:{view:w,setView:I},children:t.jsx(mo,{entityType:f.contactType==="business"?"business":"contact",entityData:C.contactData,customContactFields:f.contactFields,baseUrl:n,spaceId:s,children:t.jsxs(r.Box,{sx:{position:"relative",height:"100%"},children:[t.jsx(r.Fade,{in:w==="main",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsxs(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:[t.jsx(Br,{imgUrl:R.imageUrl,displayName:f.displayName,tags:f.tags,onEditTags:()=>{I("tags")},onUploadPhoto:R.action.uploadImage,onPhotoFileChange:R.inputAtributes.onChange,photoInputRef:R.inputAtributes.ref,isUploadingPhoto:R.isUploading,onDeletePhoto:R.action.deleteImage,isDeletingPhoto:R.isDeleting,contactType:f.contactType,entityId:C.contactData?.id,firstName:f.isContact?C.contactData.firstName:void 0,lastName:f.isContact?C.contactData.lastName:void 0,name:f.isBusiness?C.contactData.name:void 0,onEntityUpdated:j}),t.jsxs(r.Box,{sx:{px:1,pb:2},children:[t.jsx(Po,{dateFormat:f.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:f.contactType==="contact"||f.contactType==="business"?f.contactType:"contact",entityData:C.contactData,customContactFields:f.contactFields,baseUrl:n,spaceId:s,onEntityUpdated:j,currentUser:f.userTrii}),t.jsx(Ni,{entityType:f.contactType==="contact"||f.contactType==="business"?f.contactType:"contact",entityData:C.contactData,baseUrl:n,spaceId:s,onEntityUpdated:j,onDirectionSearchClick:()=>I("searchLocation")}),t.jsx(Ri,{ownerData:C.contactData})]})]})}),t.jsx(r.Fade,{in:w==="searchLocation",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(eo,{baseUrl:n,spaceId:s,entityType:f.contactType==="business"?"business":"contact",entityId:String(C.contactData.id),onBack:()=>I("main"),onEntityUpdated:j})})}),t.jsx(r.Fade,{in:w==="tags",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Pr,{value:z,options:D,onChange:E,onBack:()=>I("main"),onSave:Y,isSaving:F,onCreateNew:V,isCreatingNew:U,popperContainer:p.current})})}),t.jsx(r.Fade,{in:w==="businessSelect",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(_i,{baseUrl:n,spaceId:s,contactId:String(C.contactData.id),initialBusiness:f.isContact&&C.contactData?.businessId?{businessId:String(C.contactData.businessId),businessName:String(C.contactData.businessName??"")}:null,onBack:()=>I("main"),onEntityUpdated:j,currentUser:f.userTrii})})})]})})}):null]})})})})})})},Yi=e=>t.jsx(We.I18nextProvider,{i18n:It,children:t.jsx(Vi,{...e})}),In=l.createContext(null),qi=In.Provider,Tn=()=>l.useContext(In),Gi={events:[],setEvents:()=>{},filteredEvents:[]},Hi=(e,a)=>{const[n,s]=l.useState([]);l.useEffect(()=>{if(!a?.length){s([]);return}const o=a.map(c=>({id:c.id,title:c.title||"",start:new Date(c.startAt),end:new Date(c.endAt||c.startAt),startAt:c.startAt,endAt:c.endAt,allDay:c.allDay||!1,color:c.color,calendarId:c.calendarId,details:c.details,location:c.location,isPrivate:c.isPrivate,rule:c.rule,relatedContact:c.relatedContact,sharedWith:c.sharedWith,finalized:c.finalized,kind:"event",originalOccurrenceDate:c.originalOccurrenceDate,parentId:c.parentId}));s(o)},[a]);const i=l.useMemo(()=>e?.length?n.filter(o=>o.calendarId&&e.includes(o.calendarId)):n,[n,e]);return l.useMemo(()=>({events:n,setEvents:s,filteredEvents:i}),[n,i])},En={open:!1,handleOpen:()=>{},handleClose:()=>{}},Dn=()=>{const[e,a]=l.useState(!1),n=l.useCallback(()=>{a(!0)},[]),s=l.useCallback(()=>{a(!1)},[]);return l.useMemo(()=>({open:e,handleOpen:n,handleClose:s}),[e,n,s])},st={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},rt=(e,a)=>{const[n,s]=l.useState(a||""),[i,o]=l.useState(!1),[c,d]=l.useState("");l.useEffect(()=>{s(a||"")},[a]);const u=l.useCallback(C=>{o(!0),d(C)},[]),m=l.useCallback(()=>{o(!1),d("")},[]),x=l.useCallback(C=>{s(C.target.value)},[]),g=l.useCallback(C=>{s(C)},[]),p=l.useCallback(()=>{s(a||"")},[a]),y=l.useMemo(()=>({onError:u,onSuccess:m,resetValue:p,changeValue:g}),[u,m,p,g]),v=l.useMemo(()=>({error:i,helperText:c,type:e,value:n,onChange:x}),[i,c,e,n,x]);return{actions:y,attributes:v}};function kn(e){return typeof e=="number"}const Ki={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function Ji(e){const[a,n]=l.useState(e||[]),s=l.useCallback(()=>{const x={id:xa(),timeValue:0,timePeriod:Gt.EventNotificationPeriod.MINUTE,sendToContact:!1};n(g=>g.concat(x))},[]),i=l.useCallback(x=>{n(g=>g.filter(p=>p.id!==x))},[]),o=l.useCallback((x,g)=>{const p=Number(x.target.value);kn(p)&&n(y=>y.map(v=>v.id===g?{...v,timeValue:p}:v))},[]),c=l.useCallback((x,g)=>{if(!kn(x.target.value))return;const p=x.target.value;n(y=>y.map(v=>v.id===g?{...v,timePeriod:p}:v))},[]),d=l.useCallback((x,g)=>{const p=x.target.checked;n(y=>y.map(v=>v.id===g?{...v,sendToContact:p}:v))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{e&&n(e)},[e]);const m=l.useMemo(()=>({addNotification:s,deleteNotification:i,handleTimeFieldChange:o,handleTimePeriodChange:c,handleReminderChange:d,resetNotifications:u}),[s,i,o,c,d,u]);return{notifications:a,action:m}}const Qi={state:{selectedStartDate:K(),selectedEndDate:K().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},Xi={state:{search:"",contactSelectedId:""},action:{handleSelectContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},Zi={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},el={titleField:st,descriptionField:st,locationField:st,colorField:st,date:Qi,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:Ki,shareWithUsers:Zi,linkContact:Xi,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],sharedWith:[],rule:""}),resetFields:()=>{}},tl=(e,a)=>{const[n,s]=l.useState(e??K()),[i,o]=l.useState(a??K().add(30,"minute")),[c,d]=l.useState(!1),u=l.useCallback(g=>p=>{g(p)},[]),m=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:i,error:c}),[n,i,c]),x=l.useMemo(()=>({setSelectedStartDate:s,setSelectedEndDate:o,setError:d,handleSelect:u}),[u]);return{state:m,action:x}},al=()=>{const[e,a]=l.useState(""),[n,s]=l.useState(""),i=l.useCallback(m=>{a(m.name??""),s(m.id)},[]),o=l.useCallback(m=>{a(m),m||s("")},[]),c=l.useCallback(()=>{a(""),s("")},[]),d=l.useMemo(()=>({search:e,contactSelectedId:n}),[e,n]),u=l.useMemo(()=>({handleSelectContact:i,handleSearchChange:o,resetField:c}),[i,o,c]);return{state:d,action:u}},nl=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),s=l.useMemo(()=>({userIds:e}),[e]),i=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:s,action:i}},sl=e=>{const a=l.useRef(null),n=rt("text",e?.title??""),s=rt("text",e?.details??e?.description??""),i=rt("text",e?.location??""),o=rt("text",e?.color??"#1976d2"),c=tl(e?.startAt?K(e.startAt):void 0,e?.endAt?K(e.endAt):void 0),[d,u]=l.useState(e?.allDay??!1),[m,x]=l.useState(e?.isPrivate??!1),[g,p]=l.useState(e?.rule??""),y=Ji(e?.notifications),v=nl(),C=al(),f=l.useCallback(()=>({title:n.attributes.value,details:s.attributes.value,location:i.attributes.value,allDay:d,isPrivate:m,color:o.attributes.value,startAt:c.state.selectedStartDate.toISOString(),endAt:c.state.selectedEndDate.toISOString(),notifications:y.notifications.map(j=>({timePeriod:j.timePeriod,timeValue:j.timeValue,sendToContact:j.sendToContact})),sharedWith:v.field.userIds,rule:g,relatedContactId:C.state.contactSelectedId||null}),[n.attributes.value,s.attributes.value,i.attributes.value,d,m,o.attributes.value,c.state.selectedStartDate,c.state.selectedEndDate,y.notifications,v.field.userIds,g,C.state.contactSelectedId]),S=l.useCallback(()=>{n.actions.resetValue(),s.actions.resetValue(),i.actions.resetValue(),o.actions.changeValue("#1976d2"),u(!1),x(!1),p(""),y.action.resetNotifications(),v.action.resetField(),C.action.resetField(),c.action.setError(!1)},[n.actions,s.actions,i.actions,o.actions,y.action,v.action,C.action,c.action]);return l.useEffect(()=>{const j=e?.id;!e||a.current===j||(a.current=j,u(e.allDay??!1),x(e.isPrivate??!1),p(e.rule??""),n.actions.changeValue(e.title??""),s.actions.changeValue(e.details??e.description??""),i.actions.changeValue(e.location??""),o.actions.changeValue(e.color??"#1976d2"),e.startAt&&c.action.setSelectedStartDate(K(e.startAt)),e.endAt&&c.action.setSelectedEndDate(K(e.endAt)))},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:s,locationField:i,colorField:o,date:c,allDay:d,setAllDay:u,isPrivate:m,setIsPrivate:x,recurrenceRule:g,setRecurrenceRule:p,notifications:y,shareWithUsers:v,linkContact:C,create:f,resetFields:S}),[n,s,i,o,c,d,m,g,y,v,C,f,S])},rl={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},ol={nameField:st,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:rl,googleCalendar:null,handleGoogleCalendarChange:()=>{}},il=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),s=l.useMemo(()=>({userIds:e}),[e]),i=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:s,action:i}},ll=()=>{const e=rt("text",""),[a,n]=l.useState("#ffffff"),[s,i]=l.useState(null),o=il(),c=l.useCallback(u=>{n(u)},[]),d=l.useCallback(u=>{i(u)},[]);return l.useMemo(()=>({nameField:e,color:a,handleColorChange:c,shareWithUsers:o,googleCalendar:s,handleGoogleCalendarChange:d}),[e,a,c,o,s,d])},cl={tasks:[],setTasks:()=>{},filteredTasks:[]},dl=e=>{const[a,n]=l.useState([]),s=l.useMemo(()=>e?.length?a.filter(i=>i.calendarId&&e.includes(i.calendarId)):a,[a,e]);return l.useMemo(()=>({tasks:a,setTasks:n,filteredTasks:s}),[a,s])},ul={state:{selectedStartDate:K(),selectedEndDate:K(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},pl={state:{search:"",contactSelectedId:""},action:{handleSelectContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},hl={titleField:st,descriptionField:st,date:ul,linkContact:pl,create:()=>({title:"",description:"",startAt:"",endAt:""}),resetFields:()=>{}},ml=(e,a)=>{const[n,s]=l.useState(e??K()),[i,o]=l.useState(a??K()),[c,d]=l.useState(!1),u=l.useCallback(g=>p=>{g(p)},[]),m=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:i,error:c}),[n,i,c]),x=l.useMemo(()=>({setSelectedStartDate:s,setSelectedEndDate:o,setError:d,handleSelect:u}),[u]);return{state:m,action:x}},gl=()=>{const[e,a]=l.useState(""),[n,s]=l.useState(""),i=l.useCallback(m=>{a(m.name??""),s(m.id)},[]),o=l.useCallback(m=>{a(m),m||s("")},[]),c=l.useCallback(()=>{a(""),s("")},[]),d=l.useMemo(()=>({search:e,contactSelectedId:n}),[e,n]),u=l.useMemo(()=>({handleSelectContact:i,handleSearchChange:o,resetField:c}),[i,o,c]);return{state:d,action:u}},yl=e=>{const a=l.useRef(null),n=rt("text",e?.title??""),s=rt("text",e?.description??""),i=ml(e?.startAt?K(e.startAt):void 0,e?.startAt?K(e.startAt):void 0),o=gl(),c=l.useCallback(()=>({title:n.attributes.value,description:s.attributes.value,startAt:i.state.selectedStartDate.toISOString(),endAt:i.state.selectedStartDate.toISOString(),relatedContactId:o.state.contactSelectedId||null}),[n.attributes.value,s.attributes.value,i.state.selectedStartDate,o.state.contactSelectedId]),d=l.useCallback(()=>{n.actions.resetValue(),s.actions.resetValue(),o.action.resetField(),i.action.setError(!1)},[n.actions,s.actions,o.action,i.action]);return l.useEffect(()=>{const u=e?.id;if(!(!e||a.current===u)&&(a.current=u,n.actions.changeValue(e.title??""),s.actions.changeValue(e.description??""),e.startAt)){const m=K(e.startAt);i.action.setSelectedStartDate(m),i.action.setSelectedEndDate(m)}},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:s,date:i,linkContact:o,create:c,resetFields:d}),[n,s,i,o,c,d])},Ta=l.createContext({eventDialog:En,createCalendarDialog:En,event:el,events:Gi,calendar:ol,dialogMode:"view",handleCreateEvent:()=>{},handleSelectEvent:()=>{},handleOpenEventCreate:()=>{},handleStartEditingEvent:()=>{},handleSaveUpdatedEvent:()=>{},handleEndEvent:()=>{},handleDeleteEvent:()=>{},handleResizeEvent:()=>{},selectedEvent:{},savingSnackbar:{open:!1,message:"",severity:"info"},handleCloseSnackbar:()=>{},dialogType:"event",setDialogType:()=>{},handleOpenTaskCreate:()=>{},handleOpenCreateFromSlot:()=>{},handleCloseCreateCalendarDialog:()=>{},calendarDialogMode:"create",editingCalendar:null,handleOpenCreateCalendarDialog:()=>{},handleOpenEditCalendarDialog:()=>{},handleSubmitCalendar:async()=>{},tasks:cl,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:hl,selectedTask:null,taskCalendarId:"",setTaskCalendarId:()=>{},eventCalendarId:"",setEventCalendarId:()=>{},userManuallyChangedColor:!1,setUserManuallyChangedColor:()=>{},myCalendars:[],otherCalendars:[],handleSaveUpdatedTask:()=>{},handleDeleteTask:()=>{},handleToggleTaskCompleted:()=>{},handleDuplicateItem:()=>{},calendarView:"month",setCalendarView:()=>{},calendarDate:new Date,setCalendarDate:()=>{},navigateToDate:()=>{},confirmDeleteDialog:{open:!1,handleClose:()=>{},itemType:"event"},handleConfirmDelete:()=>{},deleteRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmDeleteRecurring:()=>{},editRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmEditRecurring:()=>{},hiddenTabs:!1}),An=e=>e,Fn=l.createContext(An),fl=({t:e,children:a})=>t.jsx(Fn.Provider,{value:e,children:a}),$e=()=>{const e=l.useContext(Fn);return e?(...a)=>{const[n,...s]=a;return e(n,...s)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),An)};var xl=Object.defineProperty,bl=(e,a,n)=>a in e?xl(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,$n=(e,a,n)=>bl(e,typeof a!="symbol"?a+"":a,n);class vl extends Error{constructor(a,n,s){super(a),$n(this,"status"),$n(this,"body"),this.name="ApiError",this.status=n,this.body=s}}async function Be({url:e,method:a="GET",headers:n,body:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...s?{"Content-Type":"application/json"}:{},...n??{}},body:s?JSON.stringify(s):void 0,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new vl(d,o.status,c)}return c}function Te(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,s=a.startsWith("/")?a:`/${a}`;return`${n}${s}`}function Ea(e,a){const n=encodeURIComponent(a);return{CONTACTS:Te(e,`/contacts/${n}`),MEDIA:Te(e,`/media/${n}`),SETTINGS:Te(e,`/settings/${n}`),CALENDAR:Te(e,`/calendar/${n}`)}}function Le(e){return Ea(e.baseUrl,e.spaceId).CALENDAR}async function Cl(e){const a=Ea(e.baseUrl,e.spaceId);return Be({url:Te(a.SETTINGS,"/user")})}async function jl(e,a,n){const s=`${Le(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return Be({url:s})}async function Sl(e,a){const n=Le(e);return Be({url:Te(n,"/events"),method:"POST",body:a})}async function Bn(e,a){const n=Le(e),{activityId:s,updatedActivity:i,originalOccurrenceDate:o}=a;if(o){const c=o instanceof Date?o.toISOString():o,d=`${n}/events/occurrence/${s}?occurrence=${c}`;return Be({url:d,method:"PUT",body:i})}return Be({url:Te(n,`/events/${s}`),method:"PUT",body:i})}async function Da(e,a,n){const s=Le(e);if(n){const i=n instanceof Date?n.toISOString():n,o=`${s}/events/${a}?occurrence=${i}`;await Be({url:o,method:"DELETE"})}else await Be({url:Te(s,`/events/${a}`),method:"DELETE"})}async function wl(e,a){const n=Le(e);return Be({url:Te(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function Il(e,a){const n=Le(e);return Be({url:Te(n,`/Task/${a}`)})}async function Tl(e,a){const n=Le(e);return Be({url:Te(n,"/Task"),method:"POST",body:a})}async function Un(e,a,n){const s=Le(e);return Be({url:Te(s,`/Task/${a}`),method:"PUT",body:n})}async function El(e,a){const n=Le(e);await Be({url:Te(n,`/Task/${a}`),method:"DELETE"})}async function Dl(e,a,n){const s=Le(e);return Be({url:Te(s,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function kl(e){const a=Le(e);return Be({url:Te(a,"/Calendar")})}async function Al(e,a){const n=Le(e);return Be({url:Te(n,"/Calendar"),method:"POST",body:a})}async function Fl(e,a,n){const s=Le(e);return Be({url:Te(s,`/Calendar/${a}`),method:"PUT",body:n})}function Pn(e){const a=K(e),n=a.minute();return n===0||n===30?a.second(0).millisecond(0):n>0&&n<30?a.minute(30).second(0).millisecond(0):a.add(1,"hour").minute(0).second(0).millisecond(0)}const $t=e=>{if(!e)return e;const a=e.indexOf("_");if(a===-1)return e;const n=e.substring(0,a),s=e.substring(a+1);return/^\d{14}$/.test(s)?n:e},Bt=e=>e?e.parentId?e.parentId:$t(e.id):"",$l=({children:e,externalOpen:a,externalOnClose:n,externalMode:s="create",externalType:i="event",externalEventCalendarId:o,externalTaskCalendarId:c,externalSelectedEvent:d,externalSelectedTask:u,hiddenTabs:m=!1})=>{const{t:x}=We.useTranslation(),g=Tn(),p=(b,...L)=>x(b,...L),[y,v]=l.useState(i),[C,f]=l.useState(null),[S,j]=l.useState(null),[w,I]=l.useState(s),[z,E]=l.useState(c||""),[D,F]=l.useState(o||""),[U,V]=l.useState(!1),[Y,R]=l.useState("create"),[H,$]=l.useState(null),[ee,P]=l.useState({open:!1,message:"",severity:"info"}),[N,B]=l.useState(!1),[T,W]=l.useState("event"),[M,_]=l.useState(!1),[J,te]=l.useState(!1),[de,he]=l.useState(null),ve="trii_calendar_last_view",X=b=>b==="month"||b==="week"||b==="day",[Q,Ne]=l.useState(()=>{try{const b=localStorage.getItem(ve);return X(b)?b:"month"}catch{return"month"}}),[ue,xe]=l.useState(new Date),me=b=>{xe(b),Ne("day")},Ce=Dn(),G=Dn(),ne=sl(C??void 0),le=yl(S??void 0);l.useEffect(()=>{s!==void 0&&I(s)},[s]),l.useEffect(()=>{i!==void 0&&v(i)},[i]),l.useEffect(()=>{o!==void 0&&F(o)},[o]),l.useEffect(()=>{c!==void 0&&E(c)},[c]),l.useEffect(()=>{d!==void 0&&f(d)},[d]),l.useEffect(()=>{u!==void 0&&j(u)},[u]),l.useEffect(()=>{a!==void 0&&(a&&!Ce.open?Ce.handleOpen():!a&&Ce.open&&Ce.handleClose())},[a,Ce]);const je=()=>{(w==="edit"||w==="create")&&(ne.resetFields(),le.resetFields()),ne.date.action.setError(!1),le.date.action.setError(!1),n?n():Ce.handleClose()},ae=ll(),ot=Y==="create",[Ee,ht]=l.useState([]),[sa,ra]=l.useState([]),[Xe,Pt]=l.useState(""),He="calendar_selected_ids",[Oe,Ze]=l.useState(()=>{try{const b=localStorage.getItem(He);return b?JSON.parse(b):[]}catch{return[]}}),it=Hi(Oe,sa),lt=dl(Oe),oa=()=>{P(b=>({...b,open:!1}))};function Mt(b){const L=b?.startAt??b?.start,A=b?.endAt??b?.end??L;return{startAt:L,endAt:A}}const{myCalendars:mt,otherCalendars:ia}=l.useMemo(()=>{if(!Xe)return{myCalendars:Ee??[],otherCalendars:[]};const b=(Ee??[]).filter(A=>A.userId===Xe),L=(Ee??[]).filter(A=>A.userId!==Xe);return{myCalendars:b,otherCalendars:L}},[Ee,Xe]),Ye=l.useCallback(async()=>{if(g)try{const b=new Date,L=b.getUTCFullYear(),A=b.getUTCMonth(),q=new Date(Date.UTC(L,A-1,1,0,0,0)).toISOString(),oe=new Date(Date.UTC(L,A+2,1,0,0,0)).toISOString(),Re=await jl(g,q,oe);ra(Re)}catch(b){console.error("Error fetching activities:",b)}},[g]),et=l.useCallback(async b=>{if(g)try{const L=await Il(g,b);lt.setTasks(L.map(A=>({id:A.id,title:A.title||"",start:new Date(A.startAt),end:new Date(A.endAt||A.startAt),startAt:A.startAt,endAt:A.endAt,description:A.description,calendarId:A.calendarId,isCompleted:A.isCompleted||!1,relatedContact:A.relatedContact,kind:"task"})))}catch(L){console.error("Error fetching tasks:",L)}},[g]),gt=l.useCallback(async()=>{if(g)try{const b=await kl(g);ht(b)}catch(b){console.error("Error fetching calendars:",b)}},[g]);l.useEffect(()=>{if(!g)return;gt(),Ye();let b=!1;return Cl(g).then(L=>{b||Pt(L.uid)}).catch(()=>{}),()=>{b=!0}},[g,gt,Ye]);function tt(b,L,A){v(b),I("create"),f(null),j(null),ne.resetFields(),le.resetFields(),V(!1);const q=Pn(L??new Date),oe=A?Pn(A):q.add(30,"minute"),Re=oe.isAfter(q)?oe:q.add(30,"minute");if(b==="task"){le.date.action.setSelectedStartDate(q),le.date.action.setSelectedEndDate(q),le.date.action.setError(!1);const Ue=Oe?.[0]??Ee?.[0]?.id??"";E(Ue)}else{ne.date.action.setSelectedStartDate(q),ne.date.action.setSelectedEndDate(Re),ne.date.action.setError(!1);const Ue=Oe?.[0]??mt?.[0]?.id??Ee?.[0]?.id??"";F(Ue);const ke=mt?.find(Ie=>Ie.id===Ue)??Ee?.find(Ie=>Ie.id===Ue);ke?.color&&ne.colorField.actions.changeValue(ke.color)}Ce.handleOpen()}function Rt(){tt("event")}function Ke(){ne.date.action.setError(!1),le.date.action.setError(!1),I("edit")}function yt(b){const{startAt:L,endAt:A}=Mt(b),q={...b,kind:"event",startAt:L,endAt:A,details:b?.details??""};v("event"),f(q),j(null),F(q.calendarId??""),I("view"),ne.date.action.setError(!1),le.date.action.setError(!1),Ce.handleOpen()}async function ft(b){if(!g)return;let L;if(b)L={title:b.title,details:b.description||b.details||"",startAt:new Date(b.startAt),endAt:new Date(b.endAt),allDay:b.allDay,location:b.location||"",isPrivate:b.isPrivate||!1,color:b.color||"",rule:b.rule||"",contactId:b.relatedContactId||null,sharedWith:b.sharedWith||[],notifications:(b.notifications||[]).map(oe=>({id:xa(),timeValue:oe.value,timePeriod:oe.type,sendToContact:oe.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const oe=ne.create();L={...oe,startAt:new Date(oe.startAt),endAt:new Date(oe.endAt),contactId:oe.relatedContactId||null,eventTypeId:"",repeatId:""}}const A=D;if(!A){P({open:!0,message:p("global.errorSavingChanges"),severity:"error"});return}const q={...L,calendarId:A};try{P({open:!0,message:p("global.savingChanges"),severity:"info"}),ne.resetFields(),je(),await Sl(g,q),Oe.includes(A)||Ze(oe=>[...oe,A]),P({open:!0,message:p("global.changesSaved"),severity:"success"}),Ye()}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}async function Nt(){if(!C?.id)return;const b=ne.create(),L=D||C.calendarId||"";if(!L){P({open:!0,message:p("global.errorSavingChanges"),severity:"error"});return}C.originalOccurrenceDate!=null?(he(()=>async A=>{await Lt(b,L,A)}),te(!0)):await Lt(b,L,!1)}async function Lt(b,L,A){const q=C?.originalOccurrenceDate!=null,oe={title:b.title,details:b.details,startAt:b.startAt,endAt:b.endAt,allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:L,notifications:b.notifications,sharedWith:b.sharedWith};(A||!q)&&(oe.rule=b.rule);const Re=Bt(C),Ue={updatedActivity:oe,activityId:Re};q&&!A&&(Ue.originalOccurrenceDate=C.originalOccurrenceDate);try{const ke=await Bn(g,Ue);ke&&f(ke),je(),P({open:!0,message:p("global.changesSaved"),severity:"success"}),Ye()}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}async function Ot(b){te(!1),de&&(await de(b),he(null))}async function la(){C?.originalOccurrenceDate!=null?_(!0):(W("event"),B(!0))}async function zt(){if(g)if(B(!1),T==="event")try{const b=Bt(C);je(),await Da(g,b),P({open:!0,message:p("global.changesSaved"),severity:"success"}),Ye()}catch(b){console.error("Error deleting event:",b);const L=b?.message?.includes("duplicate key")?p("global.eventAlreadyDeleted","El evento ya fue eliminado"):p("global.errorSavingChanges");P({open:!0,message:L,severity:"error"})}else{if(!S?.id)return;try{const b=$t(S.id),L=S.calendarId;je(),await El(g,b),j(null),le.resetFields(),P({open:!0,message:p("global.changesSaved"),severity:"success"}),L&&et(L)}catch(b){console.error("Error deleting task:",b);const L=b?.message?.includes("duplicate key")?p("global.taskAlreadyDeleted","La tarea ya fue eliminada"):p("global.errorSavingChanges");P({open:!0,message:L,severity:"error"})}}}async function Wt(b){_(!1);const L=Bt(C);je();try{b?await Da(g,L):await Da(g,L,C.originalOccurrenceDate),P({open:!0,message:p("global.changesSaved"),severity:"success"}),Ye()}catch(A){console.error("Error deleting recurring event:",A);const q=A?.message?.includes("duplicate key")?p("global.eventAlreadyDeleted","El evento ya fue eliminado"):p("global.errorSavingChanges");P({open:!0,message:q,severity:"error"})}}async function ca(){if(!g)return;const b=Bt(C);await wl(g,b),je()}async function da(b,L,A){const q=L instanceof Date?L:new Date(L),oe=A instanceof Date?A:new Date(A),Re=q.toISOString(),Ue=oe.toISOString(),ke=b.kind==="task";!ke&&b.originalOccurrenceDate!=null?(f(b),he(()=>async Ie=>{await xt(b,Re,Ue,q,oe,ke,Ie)}),te(!0)):await xt(b,Re,Ue,q,oe,ke,!1)}async function xt(b,L,A,q,oe,Re,Ue){Re||it.setEvents(ke=>ke.map(Ie=>Ie.id===b.id?{...Ie,start:q,end:oe,startAt:q,endAt:oe}:Ie)),P({open:!0,message:p("global.savingChanges"),severity:"info"});try{if(Re){const ke=$t(b.id),Ie={title:b.title,description:b.description,startAt:L,endAt:A,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Un(g,ke,Ie),await et(b.calendarId)}else{const ke=Bt(b),Ie=b.originalOccurrenceDate!=null,Ba={title:b.title,details:b.details,startAt:new Date(L),endAt:new Date(A),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(Ue||!Ie)&&(Ba.rule=b.rule);const Ua={updatedActivity:Ba,activityId:ke};Ie&&!Ue&&(Ua.originalOccurrenceDate=b.originalOccurrenceDate),await Bn(g,Ua)}P({open:!0,message:p("global.changesSaved"),severity:"success"}),Ye()}catch{Re||it.setEvents(ke=>ke.map(Ie=>Ie.id===b.id?{...Ie,start:b.start,end:b.end}:Ie)),P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}function _t(b,L){tt("event",b,L)}function Vt(){ae.nameField.actions.resetValue(),ae.handleColorChange("#ffffff"),ae.shareWithUsers.action.resetField(),ae.handleGoogleCalendarChange(null)}function Yt(){Vt(),$(null),R("create"),G.handleClose()}function ua(b){ae.nameField.actions.changeValue(b.title??""),ae.nameField.actions.onSuccess(),ae.handleColorChange(b.color??"#ffffff"),ae.shareWithUsers.action.setUserIds(b.sharedWith??[]),ae.handleGoogleCalendarChange(b.googleCalendar??null)}function pa(){R("create"),$(null),Vt(),G.handleOpen()}function h(b){R("edit"),$(b),ua(b),G.handleOpen()}async function k(){if(!g)return;const b=(ae.nameField.attributes.value??"").trim();if(!b){P({open:!0,message:p("global.nameRequired"),severity:"error"});return}const L=ae.shareWithUsers.field.userIds,A={title:b,color:ae.color,sharedWith:L.length?L:void 0,googleCalendar:ae.googleCalendar};try{if(ot)await Al(g,A);else{const q=H?.id;if(!q)return;await Fl(g,q,A)}Yt(),P({open:!0,message:p(ot?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),gt()}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}async function O(b){if(!g)return;let L;if(b?L={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:L=le.create(),!L.title){P({open:!0,message:p("global.nameRequired"),severity:"error"});return}const A=z;if(!A){P({open:!0,message:p("global.errorSavingChanges"),severity:"error"});return}const q={...L,calendarId:A};try{P({open:!0,message:p("global.savingChanges"),severity:"info"}),le.resetFields(),je(),await Tl(g,q),Oe.includes(A)||Ze(oe=>[...oe,A]),P({open:!0,message:p("global.changesSaved"),severity:"success"}),et(A)}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}function Z(){tt("task")}async function ce(){if(!g||!S?.id)return;const b=le.create();if(!b.title){P({open:!0,message:p("global.nameRequired"),severity:"error"});return}const L=z||S.calendarId;if(!L){P({open:!0,message:p("global.errorSavingChanges"),severity:"error"});return}const A={...b,calendarId:L};try{P({open:!0,message:p("global.savingChanges"),severity:"info"});const q=$t(S.id),oe=await Un(g,q,A);oe&&j(oe),je(),P({open:!0,message:p("global.changesSaved"),severity:"success"}),et(L)}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}async function pe(){S?.id&&(W("task"),B(!0))}async function ie(){if(!g||!S?.id)return;const b=!S.isCompleted;try{const L=$t(S.id),A=S.calendarId,q=await Dl(g,L,b);q&&j(q),P({open:!0,message:p("global.changesSaved"),severity:"success"}),A&&et(A)}catch{P({open:!0,message:p("global.errorSavingChanges"),severity:"error"})}}function re(){const b=y==="event",L=b?C:S;if(!L)return;const A={...L};b?(f(null),I("create"),V(!0),setTimeout(()=>{if(ne.titleField.actions.changeValue(A.title??""),ne.descriptionField.actions.changeValue(A.details??A.description??""),ne.locationField.actions.changeValue(A.location??""),ne.colorField.actions.changeValue(A.color??""),ne.setAllDay(A.allDay??!1),ne.setIsPrivate(A.isPrivate??!1),ne.setRecurrenceRule(A.rule??""),ne.date.action.setSelectedStartDate(K(A.startAt)),ne.date.action.setSelectedEndDate(K(A.endAt)),ne.date.action.setError(!1),ne.notifications.action.resetNotifications(),A.relatedContact?.id&&ne.linkContact.action.handleSelectContact(A.relatedContact),A.sharedWith){const q=A.sharedWith.map(oe=>oe.id);ne.shareWithUsers.action.setUserIds(q)}F(A.calendarId??D)},50)):(j(null),I("create"),setTimeout(()=>{le.titleField.actions.changeValue(A.title??""),le.descriptionField.actions.changeValue(A.description??""),le.date.action.setSelectedStartDate(K(A.startAt)),le.date.action.setSelectedEndDate(K(A.startAt)),le.date.action.setError(!1),A.relatedContact?.id&&le.linkContact.action.handleSelectContact(A.relatedContact),E(A.calendarId??z)},50))}function De(b){const{startAt:L,endAt:A}=Mt(b),q={...b,kind:"task",startAt:L,endAt:A,description:b?.description??""};v("task"),j(q),E(q.calendarId??""),F(q.calendarId??""),f(null),I("view"),ne.date.action.setError(!1),le.date.action.setError(!1),Ce.handleOpen()}function ge(b){return b?.kind==="task"?De(b):yt(b)}l.useEffect(()=>{try{Oe&&localStorage.setItem(He,JSON.stringify(Oe))}catch{}},[Oe]),l.useEffect(()=>{Ee?.length&&Ze(b=>{const L=new Set(Ee.map(q=>q.id)),A=(b??[]).filter(q=>L.has(q));return A.length?A:Ee.map(q=>q.id)})},[Ee]),l.useEffect(()=>{try{localStorage.setItem(ve,Q)}catch{}},[Q]);const be={eventDialog:{...Ce,handleClose:je},dialogMode:w,createCalendarDialog:G,event:ne,calendar:ae,events:it,handleCreateEvent:ft,handleSelectEvent:ge,handleOpenEventCreate:Rt,handleStartEditingEvent:Ke,handleSaveUpdatedEvent:Nt,handleEndEvent:ca,handleDeleteEvent:la,handleResizeEvent:da,selectedEvent:C,savingSnackbar:ee,handleCloseSnackbar:oa,dialogType:y,setDialogType:v,handleOpenTaskCreate:Z,handleOpenCreateFromSlot:_t,handleCloseCreateCalendarDialog:Yt,calendarDialogMode:Y,editingCalendar:H,handleOpenCreateCalendarDialog:pa,handleOpenEditCalendarDialog:h,handleSubmitCalendar:k,tasks:lt,activeCalendarIds:Oe,setActiveCalendarIds:Ze,handleCreateTask:O,task:le,selectedTask:S,taskCalendarId:z,setTaskCalendarId:E,eventCalendarId:D,setEventCalendarId:F,userManuallyChangedColor:U,setUserManuallyChangedColor:V,myCalendars:mt,otherCalendars:ia,handleSaveUpdatedTask:ce,handleDeleteTask:pe,handleToggleTaskCompleted:ie,handleDuplicateItem:re,calendarView:Q,setCalendarView:Ne,calendarDate:ue,setCalendarDate:xe,navigateToDate:me,confirmDeleteDialog:{open:N,handleClose:()=>B(!1),itemType:T},handleConfirmDelete:zt,deleteRecurringDialog:{open:M,handleClose:()=>_(!1)},handleConfirmDeleteRecurring:Wt,editRecurringDialog:{open:J,handleClose:()=>{te(!1),he(null)}},handleConfirmEditRecurring:Ot,hiddenTabs:m};return t.jsx(fl,{t:p,children:t.jsx(Ta.Provider,{value:be,children:e})})},ta=r.styled(r.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),ka=r.styled(r.Box)(()=>({display:"flex",alignItems:"center",gap:1})),Aa=r.styled(r.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),pt="DD/MM/YYYY",aa="HH:mm",Bl=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:s,isError:i,disabled:o,hideLabel:c=!1,allDay:d=!1})=>{const u=$e(),m=l.useMemo(()=>a.diff(e,"minute"),[e,a]),x=l.useMemo(()=>{if(m===0)return"0 min";const f=Math.floor(m/60),S=m%60;return f===0?`${S} min`:S===0?`${f} h`:`${f}.${Math.round(S/60*10)} h`},[m]),g=f=>{if(!f)return;const S=f.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),j=f.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(S),s(j)},p=f=>{if(!f)return;const S=f.hour(0).minute(0).second(0).millisecond(0);n(S)},y=f=>{if(!f)return;const S=f.hour(23).minute(59).second(59).millisecond(999);s(S)},v=f=>{if(!f)return;const S=e.hour(f.hour()).minute(f.minute()).second(0).millisecond(0),j=S.add(m,"minute");n(S),s(j)},C=f=>{if(!f)return;let S=e.hour(f.hour()).minute(f.minute()).second(0).millisecond(0);(S.isBefore(e)||S.isSame(e))&&(S=S.add(1,"day")),s(S)};return o?t.jsxs(ta,{children:[!c&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),d?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,marginTop:"10px"},children:[t.jsx(r.Typography,{variant:"body1",children:e.format(pt)}),t.jsx(r.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(r.Typography,{variant:"body1",children:a.format(pt)})]}):t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"body1",sx:{mb:1},children:e.format(pt)}),t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(r.Typography,{variant:"body1",children:e.format(aa)}),t.jsx(r.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(r.Typography,{variant:"body1",children:a.format(aa)}),m>0&&t.jsxs(r.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",x,")"]})]})]})]}):t.jsxs(ta,{children:[!c&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(_e.LocalizationProvider,{dateAdapter:Oa.AdapterDayjs,children:d?t.jsxs(ka,{children:[t.jsx(_e.DatePicker,{disabled:o,format:pt,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:p,minDate:K(),sx:{flex:1}}),t.jsx(Aa,{variant:"body1",children:"\u2013"}),t.jsx(_e.DatePicker,{disabled:o,format:pt,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:a,onChange:y,minDate:e,sx:{flex:1}})]}):t.jsxs(t.Fragment,{children:[t.jsx(r.Box,{sx:{mb:1},children:t.jsx(_e.DatePicker,{disabled:o,format:pt,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:g,minDate:K()})}),t.jsxs(ka,{children:[t.jsx(_e.TimePicker,{disabled:o,format:aa,ampm:!1,minutesStep:15,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:v,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Aa,{variant:"body1",children:"\u2013"}),t.jsxs(r.Box,{sx:{flex:1,display:"flex",flexDirection:"column",gap:.5},children:[t.jsx(_e.TimePicker,{disabled:o,format:aa,ampm:!1,minutesStep:15,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:a,onChange:C,sx:{alignSelf:"baseline",width:"100%"}}),m>0&&t.jsxs(r.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1.5},children:["(",x,")"]})]})]})]})}),i&&t.jsx(r.Fade,{in:i,children:t.jsx(r.Typography,{color:"red",variant:"caption",sx:{mt:.5},children:u("calendarView.reminders.errorDate")})})]})},Ul=r.styled(r.Box)(()=>({display:"flex",gap:2,alignItems:"center"})),Pl=r.styled(r.Box)(()=>({width:"15%",userSelect:"none"})),Mn=({name:e,children:a})=>t.jsxs(Ul,{children:[t.jsx(Pl,{children:e}),a]}),ze=({children:e,title:a})=>t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{mb:1,userSelect:"none"},children:a}),e]}),Fa=({titleField:e,disabled:a,variantMode:n="default"})=>{const s=$e(),{value:i,type:o,...c}=e.attributes,d=i||"";return n==="inline"?t.jsx(r.TextField,{...c,value:d,disabled:a,autoFocus:!0,fullWidth:!0,placeholder:s("global.addTitle"),variant:"standard",InputProps:{disableUnderline:!1,sx:{fontSize:22,fontWeight:500}},sx:{"& .MuiInput-underline:before":{borderBottomColor:"divider"},"& .MuiInput-underline:hover:before":{borderBottomColor:"text.secondary"},"& .MuiInput-underline:after":{borderBottomWidth:2}}}):a?t.jsx(Mn,{name:s("global.title"),children:t.jsx(r.Typography,{variant:"body1",sx:{py:.5},children:d||"-"})}):t.jsx(Mn,{name:s("global.title"),children:t.jsx(r.TextField,{...c,value:d,disabled:a,autoFocus:!0,fullWidth:!0,variant:"outlined",size:"small",type:o})})},Ml=r.styled(r.Box)(()=>({marginBottom:"6px",padding:"8px 6px",border:"1px solid lightgray",borderRadius:"3px"})),Rl=r.styled(r.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),Nl=r.styled(r.TextField)(()=>({width:"13%"})),Ll=r.styled(r.Select)(()=>({width:"23%"})),Ol=r.styled(r.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),zl=r.styled(r.IconButton)(()=>({ml:"auto"})),Wl=[{title:"minute",value:Gt.EventNotificationPeriod.MINUTE},{title:"hour",value:Gt.EventNotificationPeriod.HOUR},{title:"day",value:Gt.EventNotificationPeriod.DAY}],_l=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:s,deleteHandler:i})=>{const o=$e(),c=e.timeValue??0;return t.jsxs(Ml,{children:[t.jsxs(Rl,{children:[t.jsx(r.Typography,{variant:"body2",sx:{userSelect:"none"},children:o("calendarView.reminders.sendReminder.pt1")}),t.jsx(Nl,{onChange:d=>a(d,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(Ll,{onChange:d=>n(d,e.id),value:e.timePeriod,variant:"outlined",size:"small",MenuProps:{PaperProps:{sx:{backgroundColor:d=>d.palette.background.panel}}},children:Wl.map(d=>t.jsx(r.MenuItem,{value:d.value,children:o(`calendarView.reminders.timePeriod.${d.title}`)},d.value))}),t.jsx(r.Typography,{variant:"body2",sx:{userSelect:"none"},children:o("calendarView.reminders.sendReminder.pt2")})]}),t.jsxs(Ol,{children:[t.jsx(r.FormControlLabel,{sx:{display:"flex",alignItems:"center"},label:o("calendarView.reminders.sendReminderToContact"),control:t.jsx(r.Checkbox,{checked:e.sendToContact,onChange:d=>s(d,e.id),color:"secondary"})}),t.jsx(zl,{onClick:()=>i(e.id),sx:{ml:"auto",color:"text.disabled"},children:t.jsx(qt,{})})]})]})},Vl=r.styled(r.Box)`
16
+ <%s key={someKey} {...props} />`,A,b,Q,b),Vt[b+A]=!0}}return m===s?ma(xe):ha(xe),xe}}function Yt(m,D,O){return qt(m,D,O,!0)}function ga(m,D,O){return qt(m,D,O,!1)}var Ht=ga,Gt=Yt;wt.Fragment=s,wt.jsx=Ht,wt.jsxs=Gt})()),wt}process.env.NODE_ENV==="production"?ba.exports=ys():ba.exports=fs();var t=ba.exports;gs(t);const xs=r.styled(r.Box)(({theme:e})=>({position:"absolute",top:8,right:8,display:"flex",flexDirection:"column",gap:4,zIndex:1,backgroundColor:e.palette.background.panel})),Ga=r.styled(r.IconButton)({padding:4}),bs=r.styled(r.Box)({display:"flex",flexDirection:"column",alignItems:"center",marginBottom:"16px",position:"relative"}),vs=r.styled(r.Avatar)({width:60,height:60,marginBottom:8}),Cs=r.styled(r.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:200,textAlign:"center"}),js=r.styled(r.Box)({display:"flex",justifyContent:"center",alignItems:"center",width:60,height:60,marginBottom:8}),Ss=({imgUrl:e,name:a,contactId:n,navigate:s,isLoading:i=!1,onError:o,onClose:c,isBusiness:d=!1})=>{const u=l.useCallback(h=>v=>{try{if(v.preventDefault(),v.stopPropagation(),!h)throw new Error("Navigation URL is required");v.ctrlKey||v.metaKey||v.button===1?window.open(h,"_blank","noopener,noreferrer"):s(h)}catch(j){o?.(j instanceof Error?j:new Error("Navigation failed"))}},[s,o]),g=u(d?`/a/contacts/business/${n}`:`/a/contacts/contacts/${n}`),x=u(`/a/conversations/conversations?contactId=${n}`),y=a||"Unknown Contact",p=`Avatar for ${y}`;return t.jsxs(bs,{children:[t.jsxs(xs,{children:[t.jsx(Ga,{color:"info",size:"small",onClick:h=>{g(h),c()},onMouseDown:h=>{h.button===1&&(g(h),c())},disabled:!n,"aria-label":"View contact details",children:t.jsx(Yn,{fontSize:"small"})}),t.jsx(Ga,{color:"info",size:"small",onClick:h=>{x(h),c()},onMouseDown:h=>{h.button===1&&(x(h),c())},"aria-label":"Go to conversations",children:t.jsx(Hn,{fontSize:"small"})})]}),i?t.jsx(js,{children:t.jsx(r.CircularProgress,{size:24})}):t.jsx(vs,{src:e,alt:p,onError:()=>o?.(new Error("Failed to load avatar"))}),t.jsx(Cs,{variant:"h6",title:y,children:y})]})},ws=r.styled(r.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),Is=r.styled(r.Box)({width:"100%",borderBottom:"1px solid lightgray"}),Ts=r.styled(r.Box)({display:"flex",alignItems:"center",justifyContent:"space-between",width:"100%",padding:1,minHeight:"50px",position:"relative",maxWidth:"inherit"}),Es=r.styled(r.Box)(({theme:e})=>({marginTop:"-20px",padding:0,color:e.palette.primary.main})),ks=r.styled(r.Box)({display:"flex",maxWidth:"90%",gap:"10px",width:"100%",overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis",alignItems:"center"}),Ds=r.styled(r.Box)({display:"flex",flexDirection:"column",height:"50px",maxWidth:"90%"}),As=r.styled(r.Typography)({whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",maxWidth:"90%",position:"absolute",bottom:16,left:40}),Fs=({icon:e,contactList:a,title:n,showTitle:s=!0})=>{const i=o=>t.jsx(Ts,{children:t.jsxs(ks,{children:[t.jsx(Es,{children:e}),t.jsxs(Ds,{children:[t.jsx(r.Tooltip,{title:o.address,arrow:!0,placement:"top",children:t.jsx(r.Typography,{variant:"subtitle1",fontWeight:"semi-bold",fontSize:14,color:"text.primary",sx:{whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",cursor:"default"},children:o.address})}),o.profileName&&t.jsx(r.Typography,{variant:"body2",fontSize:10,color:"text.disabled",sx:{marginLeft:"5px",marginTop:"10px"},children:o.profileName})]}),o.note&&t.jsx(As,{variant:"body2",fontSize:12,color:"text.secondary",children:o.note})]})},o.id);return t.jsxs(ws,{children:[s&&t.jsx(Is,{children:t.jsx(r.Typography,{variant:"subtitle1",fontWeight:"bold",gutterBottom:!0,mt:2,children:n})}),a?.map(i)]})},$s=r.styled(r.Box)({display:"flex",flexDirection:"column",width:"100%",height:"max-content",alignItems:"center",gap:8}),Bs=r.styled(r.Typography)({borderBottom:"1px solid lightgray",width:"100%"}),Us=r.styled(r.Box)({display:"flex",alignItems:"center",gap:8,width:"100%"}),Ps=r.styled(r.Typography)({fontSize:14}),Ms=r.styled($e.Handyman)(({theme:e})=>({color:e.palette.primary.main,fontSize:16})),Rs=({properties:e,title:a})=>{const n=i=>i.replace(/-/g," "),s=(i,o)=>{if(!i||Array.isArray(i)&&i.length===0)return"";if(Array.isArray(i))return i.map(c=>s(c,o)).join(", ");if(typeof i=="string"){const c=lt(i,lt.ISO_8601).isValid(),d=u=>lt(i).format(u);switch(o){case ne.ContactField_type.TIME:return c?d("HH:mm"):i;case ne.ContactField_type.DATE:return c?d("DD/MM/YYYY"):i;case ne.ContactField_type.TIMERANGE:case ne.ContactField_type.DATERANGE:if(c)return o===ne.ContactField_type.TIMERANGE?d("HH:mm"):d("DD/MM/YYYY");const u=i.split(" ");if(u.length===2){const[g,x]=u,y=o===ne.ContactField_type.TIMERANGE?lt(g).format("HH:mm"):lt(g).format("DD/MM/YYYY"),p=o===ne.ContactField_type.TIMERANGE?lt(x).format("HH:mm"):lt(x).format("DD/MM/YYYY");return`${y} - ${p}`}return i;default:return i}}return i};return t.jsxs($s,{children:[t.jsx(Bs,{fontWeight:"bold",gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.map((i,o)=>i.value.length>0&&t.jsxs(Us,{children:[t.jsx(Ms,{}),t.jsxs(Ps,{children:[n(i.nameKey),":"," ",s(i.value,i.type)]})]},o))]})},Ns=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ls=r.styled(r.Box)({marginBottom:16}),zs=r.styled(r.Chip)(({theme:e})=>({marginRight:8,marginBottom:8,backgroundColor:`${e.palette.primary.main}b3`})),Os=({contactData:e,title:a})=>!e||!e.tags?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(Ns,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(Ls,{children:e?.tags?.filter(n=>n.name?.trim()).map(n=>t.jsx(zs,{label:n.name,color:"primary",size:"small"},n.id))})]});function Ka(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}const Ws=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),_s=({contactData:e,title:a})=>!e||!Ka(e)?null:t.jsxs(t.Fragment,{children:[t.jsx(Ws,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),t.jsx(r.Typography,{variant:"body2",color:"text.secondary",children:e?.businessName})]});function Ja(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}const Vs=({name:e,memberId:a,navigate:n})=>{const s=`/a/conversations/conversations?contactId=${a}`,i=o=>{o.preventDefault(),o.stopPropagation(),o.ctrlKey||o.metaKey||o.button===1?window.open(s,"_blank","noopener,noreferrer"):n(s)};return t.jsx(r.Typography,{variant:"body2",color:"text.secondary",role:"link",tabIndex:0,sx:{cursor:"pointer","&:hover":{textDecoration:"underline"}},onClick:i,onMouseDown:o=>{o.button===1&&i(o)},onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&i(o)},children:e})},qs=r.styled(r.Typography)({fontWeight:"bold",marginBottom:"8px",marginTop:"16px",borderBottom:"1px solid lightgray"}),Ys=({contactData:e,title:a,navigate:n})=>!e||!Ja(e)||!e.members?.length?null:t.jsxs(t.Fragment,{children:[t.jsx(qs,{gutterBottom:!0,mt:2,variant:"subtitle1",children:a}),e?.members.map(s=>t.jsx(Vs,{memberId:String(s.id),name:s.name,navigate:n},s.id))]});var Hs="Labels",Gs="Phone",Ks="Business",Js="Business Members",Qs="Properties",Xs="View",Zs="Tags",er={add:"Add",note:"Note",number:"Number",email:"Email",phones:"Phones",close:"Close",back:"Back",createNew:"Create new",delete:"Delete",cancel:"Cancel",save:"Save",noOptions:"No options",noValue:"No value",birthdate:"Birthdate",country:"Country",searchLocation:"Search location",date:"Date",from:"From",to:"To",time:"Time",title:"Title",addTitle:"Add title",description:"Description",location:"Location",addLocation:"Add location",selectLocation:"Select location",color:"Color",allDay:"All day",calendar:"Calendar",selectCalendar:"Select calendar",recurrence:"Recurrence",noRepeat:"Does not repeat",edit:"Edit",duplicate:"Duplicate",event:"Event",task:"Task",editEvent:"Edit event",editTask:"Edit task",saveEvent:"Save event",saveTask:"Save task",createEvent:"Create event",createTask:"Create task",finalizeEvent:"Finalize event",markAsCompleted:"Mark as completed",markAsIncomplete:"Mark as incomplete",linkContacts:"Linked contacts",searchContacts:"Search contacts",errorSavingChanges:"Error saving changes",savingChanges:"Saving changes...",changesSaved:"Changes saved",nameRequired:"Name is required",calendarCreatedSuccess:"Calendar created successfully",calendarUpdatedSuccess:"Calendar updated successfully",eventAlreadyDeleted:"Event has already been deleted",taskAlreadyDeleted:"Task has already been deleted",deleting:"Deleting...",confirm:"Confirm",name:"Name",create:"Create",showEvent:"Show Event",finalizeTask:"Finalize Task",showTask:"Show Task",createCalendar:"Create Calendar",editCalendar:"Edit Calendar",calendarInfo:"Calendar Information",deleteCalendar:"Delete Calendar",deleteConfirm:'Are you sure you want to delete the calendar "{{title}}"?',day:"Day",week:"Week",month:"Month",today:"Today",next:"Next",reminders:"Reminders",addReminder:"Add Reminder",shareWithUsers:"Share with Users",noSharedUsers:"No shared users",loading:"Loading...",moreActions:"More Actions",createdBy:"Created by",private:"Private",everyDay:"Every day",everyWeek:"Every week",everyMonth:"Every month",everyYear:"Every year",everyTwoDays:"Every 2 days",everyTwoWeeks:"Every 2 weeks",everyWeekday:"Weekdays (M-F)",seeMore:"See more"},tr={searchAddress:"Search address",enterLocation:"Enter a location",city:"City",state:"State",postalCode:"Postal code",country:"Country",saveMainAddress:"Save main address",saveSecondaryAddress:"Save secondary address",loadingGoogleMaps:"Loading Google Maps...",googleMapsUnavailable:"Google Maps unavailable",googleMapsNotLoaded:"Google Maps not loaded",selectedPlaceNoLocation:"Selected place has no location data"},ar={upload:"Upload photo",delete:"Delete photo"},nr={from:"From",to:"To"},sr={contactDetails:{contactOwner:"Contact Owner",business:"Business",createdBy:"Created By",modifiedBy:"Modified By",street:"Street",city:"City",state:"State",postcode:"Postcode",country:"Country",addressInformation:"Address Information",primaryAddress:"Primary Address",secondaryAddress:"Secondary Address",contactInformation:"Contact Information",phones:"Phones",contactInfo:{emptySelection:"No selection"}},businessDetails:{businessOwner:"Business Owner"},sidebar:{events:{errorDate:"End date must be after start date"}}},rr={reminders:{title:"Reminders",addReminder:"Add Reminder",errorDate:"The 'To' date must be greater than the 'From' date",searchContact:"Search Contact",sendReminder:{pt1:"Send reminder",pt2:"before."},timePeriod:{minute:"minute/s",hour:"hour/s",day:"day/s"},sendReminderToContact:"Send reminder to external contact"},shortcuts:{title:"Keyboard Shortcuts",advice:"Tip: You can use these shortcuts to speed up event creation and editing"},myCalendars:"My calendars",noCalendar:"No calendar",othersCalendars:"Other calendars"},or={labels:Hs,phone:Gs,business:Ks,businessMembers:Js,properties:Qs,view:Xs,tags:Zs,global:er,searchLocationModal:tr,avatar:ar,contactEdit:nr,conversations:sr,calendarView:rr},ir="Etiquetas",lr="Tel\xE9fono",cr="Empresa",dr="Miembros de la empresa",ur="Propiedades",pr="Ver",hr="Etiquetas",mr={add:"Agregar",note:"Nota",number:"N\xFAmero",email:"Correo electr\xF3nico",phones:"Tel\xE9fonos",close:"Cerrar",back:"Volver",createNew:"Crear nuevo",delete:"Eliminar",cancel:"Cancelar",save:"Guardar",noOptions:"Sin opciones",noValue:"Sin valor",birthdate:"Fecha de nacimiento",country:"Pa\xEDs",searchLocation:"Buscar ubicaci\xF3n",date:"Fecha",from:"Desde",to:"Hasta",time:"Hora",title:"T\xEDtulo",addTitle:"Agregar t\xEDtulo",description:"Descripci\xF3n",location:"Ubicaci\xF3n",addLocation:"Agregar ubicaci\xF3n",selectLocation:"Seleccionar ubicaci\xF3n",color:"Color",allDay:"Todo el d\xEDa",calendar:"Calendario",selectCalendar:"Seleccionar calendario",recurrence:"Recurrencia",noRepeat:"No se repite",edit:"Editar",duplicate:"Duplicar",event:"Evento",task:"Tarea",editEvent:"Editar evento",editTask:"Editar tarea",saveEvent:"Guardar evento",saveTask:"Guardar tarea",createEvent:"Crear evento",createTask:"Crear tarea",finalizeEvent:"Finalizar evento",markAsCompleted:"Marcar como completado",markAsIncomplete:"Marcar como incompleto",linkContacts:"Contactos vinculados",searchContacts:"Buscar contactos",errorSavingChanges:"Error al guardar los cambios",savingChanges:"Guardando cambios...",changesSaved:"Cambios guardados",nameRequired:"El nombre es obligatorio",calendarCreatedSuccess:"Calendario creado con \xE9xito",calendarUpdatedSuccess:"Calendario actualizado con \xE9xito",eventAlreadyDeleted:"l evento ya ha sido eliminado",taskAlreadyDeleted:"La tarea ya ha sido eliminada",deleting:"Eliminando...",confirm:"Confirmar",name:"Nombre",create:"Crear",showEvent:"Mostrar evento",finalizeTask:"Finalizar tarea",showTask:"Mostrar tarea",createCalendar:"Crear calendario",editCalendar:"Editar calendario",calendarInfo:"Informaci\xF3n del calendario",deleteCalendar:"Eliminar calendario",deleteConfirm:'\xBFEst\xE1 seguro de que desea eliminar el calendario "{{title}}"?',day:"\xEDa",week:"Semana",month:"Mes",today:"Hoy",next:"Siguiente",reminders:"Recordatorios",addReminder:"Agregar recordatorio",shareWithUsers:"Compartir con usuarios",noSharedUsers:"Sin usuarios compartidos",loading:"Cargando...",moreActions:"M\xE1s acciones",createdBy:"Creado por",private:"Privado",everyDay:"Cada d\xEDa",everyWeek:"Cada semana",everyMonth:"Cada mes",everyYear:"Cada a\xF1o",everyTwoDays:"Cada 2 d\xEDas",everyTwoWeeks:"Cada 2 semanas",everyWeekday:"D\xEDas laborables (L-V)",seeMore:"Ver m\xE1s"},gr={searchAddress:"Buscar direcci\xF3n",enterLocation:"Ingres\xE1 una ubicaci\xF3n",city:"Ciudad",state:"Estado",postalCode:"C\xF3digo postal",country:"Pa\xEDs",saveMainAddress:"Guardar como direcci\xF3n principal",saveSecondaryAddress:"Guardar como direcci\xF3n secundaria",loadingGoogleMaps:"Cargando Google Maps...",googleMapsUnavailable:"Google Maps no disponible",googleMapsNotLoaded:"Google Maps no est\xE1 cargado",selectedPlaceNoLocation:"La ubicaci\xF3n seleccionada no tiene coordenadas"},yr={upload:"Subir foto",delete:"Eliminar foto"},fr={from:"Desde",to:"Hasta"},xr={contactDetails:{contactOwner:"Propietario del contacto",business:"Empresa",createdBy:"Creado por",modifiedBy:"Modificado por",street:"Calle",city:"Ciudad",state:"Estado",postcode:"C\xF3digo postal",country:"Pa\xEDs",addressInformation:"Informaci\xF3n de direcci\xF3n",primaryAddress:"Direcci\xF3n principal",secondaryAddress:"Direcci\xF3n secundaria",contactInformation:"Informaci\xF3n de contacto",phones:"Tel\xE9fonos",contactInfo:{emptySelection:"Sin selecci\xF3n"}},businessDetails:{businessOwner:"Propietario de la empresa"},sidebar:{events:{errorDate:"La fecha de finalizaci\xF3n debe ser posterior a la fecha de inicio"}}},br={reminders:{title:"Recordatorios",addReminder:"Agregar recordatorio",errorDate:"La fecha 'Hasta' debe ser mayor que la fecha 'Desde'",searchContact:"Buscar contacto",sendReminder:{pt1:"Enviar recordatorio",pt2:"antes."},timePeriod:{minute:"minuto/s",hour:"hora/s",day:"d\xEDa/s"},sendReminderToContact:"Enviar recordatorio al contacto externo"},shortcuts:{title:"Atajos de teclado",advice:"Consejo: Puedes usar estos atajos para acelerar la creaci\xF3n y edici\xF3n de eventos"},myCalendars:"Mis calendarios",noCalendar:"Sin calendario",othersCalendars:"Otros calendarios"},vr={labels:ir,phone:lr,business:cr,businessMembers:dr,properties:ur,view:pr,tags:hr,global:mr,searchLocationModal:gr,avatar:yr,contactEdit:fr,conversations:xr,calendarView:br};const Cr={en:{translation:or},es:{translation:vr}},It=Gn.createInstance();It.use(_e.initReactI18next).init({resources:Cr,lng:"en",fallbackLng:"en",interpolation:{escapeValue:!1},react:{useSuspense:!1}});const jr=r.styled(r.Box)(({theme:e})=>({backgroundColor:e.palette.background.panel,boxShadow:"0px 4px 10px rgba(0, 0, 0, 0.1)",borderRadius:"8px",width:300,maxHeight:"calc(100vh - 500px)",overflowY:"auto",transition:"opacity 0.3s ease, transform 0.3s ease",padding:"8px",zIndex:1300,"&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-track":{background:"#E0E0E0",borderRadius:10},"&::-webkit-scrollbar-thumb":{background:"#9E9E9E",borderRadius:10,transition:"background 0.3s"},"&::-webkit-scrollbar-thumb:hover":{background:"#616161"}})),Sr=({open:e,anchorEl:a,onClose:n,contactData:s,avatarImgUrl:i,navigate:o,language:c="en"})=>{const{t:d,i18n:u}=_e.useTranslation();l.useEffect(()=>{c&&u.changeLanguage(c)},[c,u]);const g=d,x=Ja(s),y=Ka(s),p=[{icon:t.jsx($e.PhoneEnabled,{fontSize:"small"}),title:g("phone"),contactList:s?.phones||[],showTitle:!0},{icon:t.jsx($e.Email,{fontSize:"small"}),title:g("email"),contactList:s?.emails||[],showTitle:!0},{icon:t.jsx($e.WhatsApp,{fontSize:"small"}),title:"IM",contactList:s?.ims_whatsapp||[],showTitle:!0},{icon:t.jsx($e.Facebook,{fontSize:"small"}),contactList:s?.ims_facebook||[],showTitle:!1},{icon:t.jsx($e.Instagram,{fontSize:"small"}),contactList:s?.ims_instagram||[],showTitle:!1},{icon:t.jsx($e.ThreeP,{fontSize:"small"}),contactList:s?.ims_webchat||[],showTitle:!1}];return l.useEffect(()=>{const h=v=>{v.key==="Escape"&&n()};return e&&window.addEventListener("keydown",h),()=>{window.removeEventListener("keydown",h)}},[e,n]),t.jsx(r.Popper,{sx:{zIndex:1300},open:e,anchorEl:a,placement:"bottom-start","data-popper-child":"true",children:t.jsx(r.ClickAwayListener,{onClickAway:n,children:t.jsx(jr,{children:t.jsxs(r.CardContent,{children:[t.jsx(Ss,{navigate:o,contactId:s?.id,imgUrl:i,name:s?.name,onClose:n,isBusiness:x}),t.jsx(Os,{contactData:s,title:g("labels")}),y&&t.jsx(_s,{contactData:s,title:g("business")}),x&&t.jsx(Ys,{contactData:s,title:g("businessMembers"),navigate:o}),p.map((h,v)=>t.jsx(Fs,{icon:h.icon,title:h.title,contactList:h.contactList,showTitle:h.showTitle},v)),t.jsx(Rs,{properties:s?.properties,title:g("properties")})]})})})})},Qa=e=>t.jsx(_e.I18nextProvider,{i18n:It,children:t.jsx(Sr,{...e})}),Xa=e=>e,Za=l.createContext(Xa),wr=({t:e,children:a})=>t.jsx(Za.Provider,{value:e,children:a}),ge=()=>{const e=l.useContext(Za);return e?(...a)=>{const[n,...s]=a;return e(n,...s)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),Xa)},Ir=({tags:e,onEditTags:a})=>{const n=ge(),[s,i]=l.useState(null),o=l.useMemo(()=>e??[],[e]),c=o.slice(0,4),d=Math.max(o.length-c.length,0),u=y=>{i(y.currentTarget)},g=()=>{i(null)},x=!!s;return t.jsxs(r.Box,{sx:{mt:1,display:"flex",justifyContent:"center"},children:[t.jsxs(r.Box,{sx:{maxWidth:320,position:"relative","&:hover .tags-action, &:focus-within .tags-action":{opacity:1}},children:[t.jsxs(r.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",justifyContent:"center",children:[c.map(y=>t.jsx(r.Chip,{label:y.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:140,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},y.id)),d>0?t.jsx(r.Chip,{label:`+${d}`,size:"small",variant:"outlined",onClick:u,sx:{borderRadius:999}}):null]}),t.jsx(r.IconButton,{className:"tags-action",size:"small","aria-label":o.length?n("tags.edit"):n("tags.add"),onClick:a,sx:{position:"absolute",left:"100%",ml:1,top:"50%",transform:"translateY(-50%)",color:"text.secondary",bgcolor:y=>y.palette.background.panel,opacity:0,transition:"opacity 0.2s ease-in-out","&:hover":{bgcolor:"action.hover",color:"text.primary"}},children:o.length?t.jsx(bt,{fontSize:"small"}):t.jsx(Kn,{fontSize:"small"})})]}),t.jsx(r.Popover,{open:x,anchorEl:s,onClose:g,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:t.jsxs(r.Box,{sx:{p:1.5,maxWidth:320,maxHeight:240,overflowY:"auto"},children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{mb:1},children:n("tags")}),t.jsx(r.Stack,{direction:"row",spacing:1,useFlexGap:!0,flexWrap:"wrap",children:o.map(y=>t.jsx(r.Chip,{label:y.name,size:"small",variant:"outlined",sx:{borderRadius:999,maxWidth:160,"& .MuiChip-label":{overflow:"hidden",textOverflow:"ellipsis"}}},y.id))})]})})]})},en=l.createContext(null),Tr=en.Provider,at=()=>l.useContext(en),Er=r.styled(r.Typography)({whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",maxWidth:360,textAlign:"center"}),kr=r.styled(r.Box)({display:"flex",alignItems:"center",justifyContent:"center",width:"100%"}),Dr=r.styled(r.Box)({position:"relative",display:"flex",justifyContent:"center",maxWidth:"100%","&:hover .edit-icon":{opacity:1,visibility:"visible"}}),Ar=r.styled(r.IconButton)({opacity:0,visibility:"hidden",transition:"all 0.2s",position:"absolute",left:"100%",top:"50%",transform:"translateY(-50%)"}),Fr=({displayName:e,contactType:a,firstName:n,lastName:s,name:i,entityId:o,onEntityUpdated:c})=>{const d=at(),[u,g]=l.useState(!1),[x,y]=l.useState(!1),[p,h]=l.useState({firstName:n||"",lastName:s||"",name:i||""});l.useEffect(()=>{h({firstName:n||"",lastName:s||"",name:i||""})},[n,s,i]);const v=async()=>{if(!(!d||!o||!a||a==="unknown")){y(!0);try{let f={};a==="contact"?f={firstName:p.firstName,lastName:p.lastName}:a==="business"&&(f={name:p.name});const I=await d.updateEntity({entityType:a,entityId:o,body:f});I&&c&&c(I),g(!1)}catch(f){console.error("Failed to update name",f)}finally{y(!1)}}},j=a==="contact"||a==="business";return u?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,mt:1},children:[a==="contact"?t.jsxs(t.Fragment,{children:[t.jsx(r.TextField,{value:p.firstName,onChange:f=>h({...p,firstName:f.target.value}),size:"small",placeholder:"First Name",sx:{width:140}}),t.jsx(r.TextField,{value:p.lastName,onChange:f=>h({...p,lastName:f.target.value}),size:"small",placeholder:"Last Name",sx:{width:140}})]}):t.jsx(r.TextField,{value:p.name,onChange:f=>h({...p,name:f.target.value}),size:"small",placeholder:"Name",sx:{width:280}}),t.jsx(r.IconButton,{onClick:v,disabled:x,color:"primary",children:x?t.jsx(r.CircularProgress,{size:24}):t.jsx($e.Save,{})})]}):t.jsx(kr,{children:t.jsxs(Dr,{children:[t.jsx(Er,{variant:"h6",title:e,children:e}),j&&t.jsx(Ar,{size:"small",onClick:()=>g(!0),className:"edit-icon",sx:{ml:1},children:t.jsx($e.Edit,{fontSize:"small"})})]})})},$r=({src:e,alt:a,onError:n,onUpload:s,onDelete:i,isUploading:o,isDeleting:c})=>{const d=ge();return t.jsxs(r.Box,{sx:{width:60,height:60,mb:1,position:"relative","&:hover .avatar-actions, &:focus-within .avatar-actions":{opacity:1,pointerEvents:"auto"}},children:[t.jsx(r.Avatar,{src:e,alt:a,onError:n,sx:{width:60,height:60}}),t.jsxs(r.Box,{className:"avatar-actions",sx:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",gap:.5,bgcolor:"rgba(0, 0, 0, 0.35)",opacity:0,pointerEvents:"none",transition:"opacity 0.2s ease-in-out"},children:[t.jsx(r.IconButton,{size:"small","aria-label":d("avatar.upload"),onClick:s,disabled:!!o,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(Jn,{fontSize:"small"})}),t.jsx(r.IconButton,{size:"small","aria-label":d("avatar.delete"),onClick:i,disabled:!!c,sx:{color:"common.white",bgcolor:"rgba(0, 0, 0, 0.25)","&:hover":{bgcolor:"rgba(0, 0, 0, 0.35)"}},children:t.jsx(Kt,{fontSize:"small"})})]})]})},Br=r.styled(r.Box)({display:"flex",flexDirection:"column",alignItems:"center",gap:"4px",marginBottom:"20px",position:"relative"}),Ur=({imgUrl:e,displayName:a,onError:n,tags:s,onEditTags:i,onUploadPhoto:o,onPhotoFileChange:c,photoInputRef:d,isUploadingPhoto:u,onDeletePhoto:g,isDeletingPhoto:x,contactType:y,firstName:p,lastName:h,name:v,entityId:j,onEntityUpdated:f})=>{const I=`Avatar for ${a}`;return t.jsxs(Br,{children:[t.jsx("input",{ref:d,type:"file",accept:"image/*",onChange:c,style:{display:"none"}}),t.jsx($r,{src:e,alt:I,onError:()=>n?.(new Error("Failed to load avatar")),onUpload:o,isUploading:u,onDelete:g,isDeleting:x}),t.jsx(Fr,{displayName:a,contactType:y,firstName:p,lastName:h,name:v,entityId:j,onEntityUpdated:f}),t.jsx(Ir,{tags:s,onEditTags:i})]})},va=20,Pr=e=>{const{popperContainer:a,...n}=e;return t.jsx(Qn,{...n,container:a??n.container,style:{...n.style??{},zIndex:2e4}})},Mr=({value:e,options:a,onChange:n,onBack:s,onSave:i,isSaving:o,onCreateNew:c,isCreatingNew:d,popperContainer:u})=>{const g=ge(),[x,y]=l.useState(""),[p,h]=l.useState(va),v=l.useDeferredValue(x),j=l.useMemo(()=>a??[],[a]),f=l.useMemo(()=>{const k=String(v??"").trim().toLowerCase();return k?j.filter(F=>String(F?.name??"").toLowerCase().includes(k)):j},[j,v]),I=l.useMemo(()=>f.slice(0,p),[f,p]),C=l.useMemo(()=>{const k=new Map;for(const F of e??[])F?.id&&k.set(String(F.id),F);for(const F of I??[])F?.id&&(k.has(String(F.id))||k.set(String(F.id),F));return Array.from(k.values())},[e,I]),w=(k,F)=>{y(F??""),h(va)},S=k=>{const F=k;F.scrollTop+F.clientHeight>=F.scrollHeight-24&&h($=>$+va)},z=()=>{const k=String(x??"").trim(),F=!k||o||d;return t.jsxs(r.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[g("global.noOptions"),t.jsx(Qe.LoadingButton,{onClick:()=>c(k),loading:d,disabled:F,variant:"contained",size:"small",sx:{marginTop:1.3},children:g("global.createNew")})]})};return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(r.IconButton,{size:"small",onClick:s,"aria-label":g("global.back"),disabled:o,children:t.jsx(ya,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"subtitle1",children:g("tags")}),t.jsx(r.Box,{sx:{flex:1}}),t.jsx(Qe.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ct,{}),onClick:i,loading:o,disabled:o,children:g("global.save")})]}),t.jsx(r.Autocomplete,{multiple:!0,disablePortal:!1,value:e,onChange:(k,F)=>n(F),options:C,filterOptions:k=>k,inputValue:x,onInputChange:w,getOptionLabel:k=>k?.name??"",isOptionEqualToValue:(k,F)=>String(k?.id)===String(F?.id),PopperComponent:k=>t.jsx(Pr,{...k,popperContainer:u}),renderOption:(k,F)=>{const{key:$,...T}=k;return l.createElement("li",{...T,key:F?.id?String(F.id):String($??F?.name??"")},F.name??"")},renderTags:(k,F)=>k.map(($,T)=>{const V=F({index:T}),{key:W,..._}=V;return t.jsx(r.Chip,{label:$.name??"",..._},$?.id?String($.id):String(W??$?.name??T))}),size:"small",renderInput:k=>t.jsx(r.TextField,{...k,size:"small"}),ListboxProps:{onScroll:S,sx:{maxHeight:280,overflowY:"auto"}},noOptionsText:t.jsx(z,{}),sx:{width:"100%"}})]})};var Rr=Object.defineProperty,Nr=(e,a,n)=>a in e?Rr(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,tn=(e,a,n)=>Nr(e,typeof a!="symbol"?a+"":a,n);let an=class extends Error{constructor(a,n,s){super(a),tn(this,"status"),tn(this,"body"),this.name="ApiError",this.status=n,this.body=s}};async function Ne({url:e,method:a="GET",headers:n,body:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...s?{"Content-Type":"application/json"}:{},...n??{}},body:s?JSON.stringify(s):void 0,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new an(d,o.status,c)}return c}async function Lr({url:e,method:a="POST",headers:n,formData:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...n??{}},body:s,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new an(d,o.status,c)}return c}function we(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,s=a.startsWith("/")?a:`/${a}`;return`${n}${s}`}function Me(e,a){const n=encodeURIComponent(a);return{CONTACTS:we(e,`/contacts/${n}`),MEDIA:we(e,`/media/${n}`),SETTINGS:we(e,`/settings/${n}`)}}async function zr({baseUrl:e,spaceId:a,signal:n}){const s=Me(e,a),i=we(s.CONTACTS,"/labels");return Ne({url:i,signal:n})}async function nn({baseUrl:e,spaceId:a,name:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/labels");return Ne({url:o,method:"POST",body:{name:n},signal:s})}async function Or({baseUrl:e,spaceId:a,contactId:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,`/contacts/${encodeURIComponent(n)}`);return Ne({url:o,signal:s})}async function Wr({baseUrl:e,spaceId:a,businessId:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,`/business/${encodeURIComponent(n)}`);return Ne({url:o,signal:s})}async function _r({baseUrl:e,spaceId:a,forType:n,signal:s}){const i=Me(e,a),o=`${we(i.CONTACTS,"/ContactFields")}?filter=custom&for=${encodeURIComponent(n)}`;return Ne({url:o,signal:s})}async function He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:i,signal:o}){const c=n==="business"?`/business/${encodeURIComponent(s)}`:`/contacts/${encodeURIComponent(s)}`,d=Me(e,a),u=we(d.CONTACTS,c);return Ne({url:u,method:"PUT",body:i,signal:o})}async function Vr({baseUrl:e,spaceId:a,pagination:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/Search");return Ne({url:o,method:"POST",body:n,signal:s})}async function qr({baseUrl:e,spaceId:a,business:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/business");return Ne({url:o,method:"POST",body:n,signal:s})}async function Qt({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/contactAddresses");return Ne({url:o,method:"DELETE",body:n,signal:s})}async function Yr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/contactAddresses/check");return Ne({url:o,method:"POST",body:n,signal:s})}async function Hr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,"/contactAddresses/set");return Ne({url:o,method:"POST",body:n,signal:s})}async function Gr({baseUrl:e,spaceId:a,data:n,signal:s}){const i=Me(e,a),o=we(i.CONTACTS,`/contactAddresses/${encodeURIComponent(n.contactAddressId)}`);return Ne({url:o,method:"PUT",body:n,signal:s})}async function sn({baseUrl:e,spaceId:a,signal:n}){const s=Me(e,a),i=we(s.SETTINGS,"/user");return Ne({url:i,signal:n})}async function Kr({baseUrl:e,spaceId:a,signal:n}){const s=Me(e,a),i=we(s.SETTINGS,"/users");return Ne({url:i,signal:n})}async function Jr({baseUrl:e,spaceId:a,signal:n,userId:s}){const i=Me(e,a),o=we(i.SETTINGS,`/usersInfor/${s}`);return Ne({url:o,signal:n})}async function rn({baseUrl:e,spaceId:a,contactId:n,file:s,signal:i}){const o=Me(e,a),c=new FormData;c.append("file",s,s.name);const d=we(o.MEDIA,`/upload?module=contacts&folderType=avatars&contactId=${encodeURIComponent(n)}`);return Lr({url:d,formData:c,signal:i})}const on=(e,a)=>({fetchLabels:({signal:n}={})=>zr({baseUrl:e,spaceId:a,signal:n}),createLabel:({name:n,signal:s})=>nn({baseUrl:e,spaceId:a,name:n,signal:s}),fetchContact:({contactId:n,signal:s})=>Or({baseUrl:e,spaceId:a,contactId:n,signal:s}),fetchBusiness:({businessId:n,signal:s})=>Wr({baseUrl:e,spaceId:a,businessId:n,signal:s}),fetchBusinessTableData:({pagination:n,signal:s})=>Vr({baseUrl:e,spaceId:a,pagination:n,signal:s}),createBusiness:({business:n,signal:s})=>qr({baseUrl:e,spaceId:a,business:n,signal:s}),fetchContactFields:({forType:n,signal:s})=>_r({baseUrl:e,spaceId:a,forType:n,signal:s}),updateEntity:({entityType:n,entityId:s,body:i,signal:o})=>He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:i,signal:o}),deleteAddress:({data:n,signal:s})=>Qt({baseUrl:e,spaceId:a,data:n,signal:s}),deleteAddres:({data:n,signal:s})=>Qt({baseUrl:e,spaceId:a,data:n,signal:s}),checkContactAddress:({data:n,signal:s})=>Yr({baseUrl:e,spaceId:a,data:n,signal:s}),setContactAddress:({data:n,signal:s})=>Hr({baseUrl:e,spaceId:a,data:n,signal:s}),updateContactAddress:({data:n,signal:s})=>Gr({baseUrl:e,spaceId:a,data:n,signal:s}),fetchUserTrii:({signal:n}={})=>sn({baseUrl:e,spaceId:a,signal:n}),fetchUsers:({signal:n}={})=>Kr({baseUrl:e,spaceId:a,signal:n}),fetchUserTriiById:({userId:n,signal:s})=>Jr({baseUrl:e,spaceId:a,userId:n,signal:s}),uploadAvatar:({contactId:n,file:s,signal:i})=>rn({baseUrl:e,spaceId:a,contactId:n,file:s,signal:i})}),ln=()=>!!window?.google?.maps?.places?.Autocomplete,Qr=(e=1e4)=>new Promise(a=>{if(ln()){a(!0);return}const n=Date.now(),s=window.setInterval(()=>{if(ln()){window.clearInterval(s),a(!0);return}Date.now()-n>e&&(window.clearInterval(s),a(!1))},100)}),Xr=()=>{const[e,a]=l.useState(!1),[n,s]=l.useState(!0),[i,o]=l.useState(null);return l.useEffect(()=>{(async()=>{try{const c=await Qr(1e4);a(c),c||o("Google Maps API failed to load")}catch{o("Error loading Google Maps API"),a(!1)}finally{s(!1)}})()},[]),{isLoaded:e,isLoading:n,error:i}},Zr=({onPlaceSelected:e,onError:a,placeholder:n})=>{const s=ge(),i=l.useRef(null),o=l.useRef(null),c=l.useRef(e),d=l.useRef(a),{isLoaded:u,isLoading:g,error:x}=Xr(),y=l.useMemo(()=>g?s("searchLocationModal.loadingGoogleMaps"):x?s("searchLocationModal.googleMapsUnavailable"):u?n??s("searchLocationModal.enterLocation"):s("searchLocationModal.googleMapsNotLoaded"),[u,g,x,n,s]);return l.useEffect(()=>{c.current=e},[e]),l.useEffect(()=>{d.current=a},[a]),l.useEffect(()=>{if(!u||!i.current||o.current)return;const p=window?.google;if(!p?.maps?.places?.Autocomplete){d.current?.(s("searchLocationModal.googleMapsUnavailable"));return}i.current.focus();let h=null;const v=()=>{document.querySelectorAll(".pac-container").forEach(f=>{const I=f;I.style.zIndex="20000",I.style.position="fixed"})};h=new MutationObserver(f=>{for(const I of f)for(const C of Array.from(I.addedNodes)){if(C.nodeType!==Node.ELEMENT_NODE)continue;const w=C;w.classList?.contains("pac-container")&&(w.style.zIndex="20000",w.style.position="fixed")}}),h.observe(document.body,{childList:!0,subtree:!0}),v(),window.setTimeout(v,100),o.current=new p.maps.places.Autocomplete(i.current,{types:["geocode"],componentRestrictions:{country:"ar"}});const j=o.current.addListener?.("place_changed",()=>{const f=o.current?.getPlace?.();if(!f?.geometry?.location){d.current?.(s("searchLocationModal.selectedPlaceNoLocation"));return}let I="",C="",w="",S="",z="",k="";const F=f.address_components??[];for(const W of F){const _=W?.types??[];if(_.includes("locality")||_.includes("administrative_area_level_2")){I=W.long_name;continue}if(_.includes("administrative_area_level_1")){C=W.long_name;continue}if(_.includes("country")){w=W.long_name;continue}if(_.includes("postal_code")){S=W.long_name;continue}if(_.includes("route")){z=W.long_name;continue}_.includes("street_number")&&(k=W.long_name)}const $=typeof f.geometry.location.lat=="function"?f.geometry.location.lat():0,T=typeof f.geometry.location.lng=="function"?f.geometry.location.lng():0,V={location:{lat:$,lng:T},address:f.formatted_address??"",city:I,state:C,country:w,postalCode:S,streetName:z,streetNumber:k,shortAddress:[z,k].filter(Boolean).join(" ")};c.current(V)});return()=>{h&&h.disconnect(),j?.remove&&j.remove(),o.current=null}},[u,s]),t.jsx(r.TextField,{fullWidth:!0,size:"small",inputRef:i,placeholder:y,disabled:g||!u||!!x,error:!!x})},eo={street:"",city:"",state:"",zipcode:"",country:""},to=({baseUrl:e,spaceId:a,entityType:n,entityId:s,onBack:i,onEntityUpdated:o})=>{const c=ge(),[d,u]=l.useState(eo),[g,x]=l.useState(""),[y,p]=l.useState(""),[h,v]=l.useState(!1),[j,f]=l.useState(!1),I=l.useMemo(()=>!!(String(d.street??"").trim()||String(d.city??"").trim()||String(d.state??"").trim()||String(d.zipcode??"").trim()||String(d.country??"").trim()),[d]),C=$=>{x($.address??"");const T=String($.shortAddress??"").trim()||[$.streetName,$.streetNumber].filter(Boolean).join(" ").trim();u({street:T,city:$.city??"",state:$.state??"",zipcode:$.postalCode??"",country:$.country??""}),p("")},w=$=>{p(String($??""))},S=$=>T=>{const V=T.target.value;u(W=>({...W,[$]:V}))},z=async()=>{if(!h&&!(!e||!a)&&s){v(!0);try{const $=await He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{address1:{street:String(d.street??""),city:String(d.city??""),state:String(d.state??""),zipcode:String(d.zipcode??""),country:String(d.country??"")}}});o?.($),i()}finally{v(!1)}}},k=async()=>{if(!j&&!(!e||!a)&&s){f(!0);try{const $=await He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{address2:{street:String(d.street??""),city:String(d.city??""),state:String(d.state??""),zipcode:String(d.zipcode??""),country:String(d.country??"")}}});o?.($),i()}finally{f(!1)}}},F=!I||h||j;return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:3},children:[t.jsx(r.IconButton,{size:"small",onClick:i,"aria-label":c("global.back"),children:t.jsx(ya,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"h6",children:c("searchLocationModal.searchAddress")})]}),t.jsxs(r.Stack,{spacing:3,children:[t.jsxs(r.Box,{sx:{position:"relative",zIndex:1400},children:[t.jsx(Zr,{onPlaceSelected:C,onError:w,placeholder:c("searchLocationModal.enterLocation")}),y?t.jsx(r.Typography,{variant:"caption",color:"error",sx:{mt:.5,display:"block"},children:y}):null]}),t.jsx(r.TextField,{label:c("conversations.contactDetails.street"),value:d.street,onChange:S("street"),fullWidth:!0,size:"medium"}),t.jsxs(r.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(r.TextField,{label:c("searchLocationModal.city"),value:d.city,onChange:S("city"),fullWidth:!0,size:"medium"}),t.jsx(r.TextField,{label:c("searchLocationModal.state"),value:d.state,onChange:S("state"),fullWidth:!0,size:"medium"})]}),t.jsxs(r.Stack,{direction:{xs:"column",sm:"row"},spacing:2,children:[t.jsx(r.TextField,{label:c("searchLocationModal.postalCode"),value:d.zipcode,onChange:S("zipcode"),fullWidth:!0,size:"medium"}),t.jsx(r.TextField,{label:c("searchLocationModal.country"),value:d.country,onChange:S("country"),fullWidth:!0,size:"medium"})]}),g?t.jsx(r.Typography,{variant:"caption",sx:{opacity:.7},children:g}):null,t.jsxs(r.Stack,{direction:"row",spacing:2,justifyContent:"flex-end",sx:{pt:2},children:[t.jsx(Qe.LoadingButton,{variant:"contained",size:"large",startIcon:t.jsx(ct,{}),onClick:z,loading:h,disabled:F,children:c("searchLocationModal.saveMainAddress")}),t.jsx(Qe.LoadingButton,{variant:"outlined",size:"large",startIcon:t.jsx(ct,{}),onClick:k,loading:j,disabled:F,children:c("searchLocationModal.saveSecondaryAddress")})]})]})]})};function Ca(e){return e?.isBusiness===!0?!0:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&Array.isArray(e.membersId)&&Array.isArray(e.members)&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&typeof e.imageUrl=="string"&&!("firstName"in e)&&!("lastName"in e)}function cn(e){return e?.isBusiness===!0?!1:e!==null&&typeof e=="object"&&typeof e.id=="string"&&typeof e.spaceId=="string"&&typeof e.name=="string"&&typeof e.firstName=="string"&&typeof e.lastName=="string"&&Array.isArray(e.phones)&&Array.isArray(e.emails)&&"origin"in e&&typeof e.isSpam=="boolean"&&(!e.businessId||typeof e.businessId=="string")}function ao({open:e,baseUrl:a,spaceId:n,contactId:s}){const i=l.useRef(null),o=l.useMemo(()=>!a||!n?null:on(a,n),[a,n]),[c,d]=l.useState({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}),u=l.useMemo(()=>!!(e&&o&&s),[e,o,s]);l.useEffect(()=>{e||(i.current?.abort(),d({isLoading:!1,error:null,contactData:null,labels:[],labelsLoading:!1,labelsError:null,contactFields:[],contactFieldsLoading:!1,contactFieldsError:null,userTrii:null,userLoading:!1,userError:null}))},[e]);const g=l.useMemo(()=>!!(e&&o),[e,o]);l.useEffect(()=>{if(!g||!o)return;const p=new AbortController;return d(h=>({...h,labelsLoading:!0,labelsError:null})),o.fetchLabels({signal:p.signal}).then(h=>{d(v=>({...v,labels:h,labelsLoading:!1,labelsError:null}))}).catch(h=>{p.signal.aborted||d(v=>({...v,labelsLoading:!1,labelsError:h}))}),()=>{p.abort()}},[o,g]),l.useEffect(()=>{if(!u||!o)return;i.current?.abort();const p=new AbortController;return i.current=p,d(h=>({...h,isLoading:!0,error:null,contactData:null})),o.fetchContact({contactId:s,signal:p.signal}).then(h=>{d(v=>({...v,isLoading:!1,error:null,contactData:h}))}).catch(h=>{p.signal.aborted||d(v=>({...v,isLoading:!1,error:h}))}),()=>{p.abort()}},[o,u,s]);const x=l.useMemo(()=>!!(e&&o),[e,o]);l.useEffect(()=>{if(!x||!o)return;const p=new AbortController;return d(h=>({...h,userLoading:!0,userError:null})),o.fetchUserTrii({signal:p.signal}).then(h=>{d(v=>({...v,userLoading:!1,userError:null,userTrii:h}))}).catch(h=>{p.signal.aborted||d(v=>({...v,userLoading:!1,userError:h}))}),()=>{p.abort()}},[o,x]);const y=l.useMemo(()=>{const p=c.contactData,h=Ca(p),v=cn(p);let j="unknown";h&&(j="business"),v&&(j="contact");let f="Unknown Contact";h?f=p.name:v&&(f=`${p.firstName} ${p.lastName}`.trim());const I=p?.tags??[];return{isBusiness:h,isContact:v,contactType:j,displayName:f,tags:I,labels:c.labels,contactFields:c.contactFields,userTrii:c.userTrii,userLoading:c.userLoading,userError:c.userError}},[c.contactData,c.labels,c.contactFields,c.userTrii,c.userLoading,c.userError]);return l.useEffect(()=>{if(!e||!o)return;const p=c.contactData,h=Ca(p),v=cn(p),j=h?"business":v?"contact":null;if(!j)return;const f=new AbortController;return d(I=>({...I,contactFieldsLoading:!0,contactFieldsError:null})),o.fetchContactFields({forType:j,signal:f.signal}).then(I=>{d(C=>({...C,contactFields:I,contactFieldsLoading:!1,contactFieldsError:null}))}).catch(I=>{f.signal.aborted||d(C=>({...C,contactFieldsLoading:!1,contactFieldsError:I}))}),()=>{f.abort()}},[o,e,c.contactData]),{state:c,selectors:y,actions:{setContactData:p=>d(h=>({...h,contactData:p??null})),clearError:()=>d(p=>({...p,error:null}))}}}const Tt=({baseUrl:e,spaceId:a,entityType:n,entityId:s,initialImageUrl:i,onEntityUpdated:o})=>{const[c,d]=l.useState(i??""),[u,g]=l.useState(null),[x,y]=l.useState(!1),[p,h]=l.useState(!1),v=l.useRef(null),j=l.useMemo(()=>!!(e&&a&&n&&s),[e,a,n,s]);function f(T){return T.split("?sv=")[0]}function I(T){return T.split("&cacheId=")[0]}function C(T){let V=f(T);return!V||(V=I(V),!V)?"":V}const w=async()=>{if(!e||!a)return null;const T=await sn({baseUrl:e,spaceId:a});return g(T),T},S=async T=>{const V=(u??await w())?.storageAzureSAS,W=V?.expireAt,_=W?new Date(W):null;let Y=V?.sas??"";if((!Y||_&&_<new Date)&&(Y=(await w())?.storageAzureSAS?.sas??""),!Y)return T;const P=`${Date.now()}`;return`${T}${Y}&cacheId=${P}`},z=async T=>{if(!T){d("");return}const V=f(T);if(!V)return;const W=await S(V);d(W)},k=async T=>{const V=T.target.files?.[0];if(V&&j){v.current&&(v.current.value=""),y(!0);try{const W=await rn({baseUrl:e,spaceId:a,contactId:s,file:V}),_=await He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{imageUrl:W}});o?.(_),await z(W)}finally{y(!1)}}},F=()=>{v.current?.click()},$=async()=>{if(j&&!p){h(!0);try{await He({baseUrl:e,spaceId:a,entityType:n,entityId:s,body:{imageUrl:""}}),o?.({imageUrl:""}),d("")}finally{h(!1)}}};return l.useEffect(()=>{if(!i){d("");return}z(i)},[i]),{inputAtributes:{onChange:k,ref:v,type:"file",accept:"image/*"},action:{uploadImage:F,deleteImage:$},imageUrl:c,removeParams:C,isUploading:x,isDeleting:p}},ye=(e,a)=>{const[n,s]=l.useState(a||""),[i,o]=l.useState(!1),[c,d]=l.useState("");return l.useEffect(()=>{s(a||"")},[a]),{actions:{onError:u=>{o(!0),d(u)},onSuccess:()=>{o(!1),d("")},resetValue:()=>{s(a||"")},changeValue:u=>{s(u)}},attributes:{error:i,helperText:c,type:e,value:n,onChange:u=>{s(u.target.value)}}}},dn=(e="")=>{const[a,n]=l.useState(e),s=c=>{n(c.target.value)},i=c=>{n(c)},o=()=>{n(e??"")};return l.useEffect(()=>{n(e)},[e]),{actions:{resetValue:o,changeValue:i},attributes:{value:a,onChange:s}}};let Xt;const no=new Uint8Array(16);function so(){if(!Xt&&(Xt=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!Xt))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return Xt(no)}const Be=[];for(let e=0;e<256;++e)Be.push((e+256).toString(16).slice(1));function ro(e,a=0){return Be[e[a+0]]+Be[e[a+1]]+Be[e[a+2]]+Be[e[a+3]]+"-"+Be[e[a+4]]+Be[e[a+5]]+"-"+Be[e[a+6]]+Be[e[a+7]]+"-"+Be[e[a+8]]+Be[e[a+9]]+"-"+Be[e[a+10]]+Be[e[a+11]]+Be[e[a+12]]+Be[e[a+13]]+Be[e[a+14]]+Be[e[a+15]]}const oo=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto);var un={randomUUID:oo};function Zt(e,a,n){if(un.randomUUID&&!a&&!e)return un.randomUUID();e=e||{};const s=e.random||(e.rng||so)();if(s[6]=s[6]&15|64,s[8]=s[8]&63|128,a){n=n||0;for(let i=0;i<16;++i)a[n+i]=s[i];return a}return ro(s)}function io(e){return{id:Zt(),address:"",note:"",channelType:e,isSaved:!1}}var ea={createNewAddress:io};const lo=(e,a,n)=>{if(a!==n&&!(a===null&&n==="")){const s={};return s[e]=n,s}return null},co=(e,a,n)=>n.map(s=>s.id===a?{...s,address:e}:s);var mt={getEditedField:lo,getAddressesWithUpdatedValues:co};const pn=({entityId:e,initial:a,dispatch:n,deleteAddress:s})=>{const[i,o]=l.useState(!1),[c,d]=l.useState(()=>a),[u,g]=l.useState(a?.ims_facebook||[]),[x,y]=l.useState(a?.ims_mercadolibre||[]),[p,h]=l.useState(a?.ims_webchat||[]),[v,j]=l.useState(a?.ims_instagram||[]),[f,I]=l.useState(a?.ims_whatsapp||[]),[C,w]=l.useState(a?.emails||[]),[S,z]=l.useState(a?.phones||[]),[k,F]=l.useState(a?.ims_rcs||[]),$=()=>{const M=ea.createNewAddress(ht.ChannelType.PHONE),B=[...S,M];z(B)},T=()=>{const M=ea.createNewAddress(ht.ChannelType.EMAIL),B=[...C,M];w(B)},V=()=>{const M=ea.createNewAddress(ht.ChannelType.WHATSAPP),B=[...f,M];I(B)},W=()=>{const M=ea.createNewAddress(ht.ChannelType.RCS),B=[...k,M];F(B)},_=M=>{const B=[...f,M];I(B),d(R=>({...R??{},ims_whatsapp:B}))},Y=(M,B)=>{if(B){if(B.channelType===3){const R=C.map(N=>N.id===M?B:N);w(R),d(N=>({...N??{},emails:R}))}if(B.channelType===5){const R=S.map(N=>N.id===M?B:N);z(R),d(N=>({...N??{},phones:R}))}if(B.channelType===13){const R=f.map(N=>N.id===M?B:N);I(R),d(N=>({...N??{},ims_whatsapp:R}))}if(B.channelType===21){const R=k.map(N=>N.id===M?B:N);F(R),d(N=>({...N??{},ims_rcs:R}))}if(B.channelType===41){const R=x.map(N=>N.id===M?B:N);y(R),d(N=>({...N??{},ims_mercadolibre:R}))}}},P=async(M,B,R)=>{const N=M.target.value;if(R===3){const H=mt.getAddressesWithUpdatedValues(N,B,C);w(H)}else if(R===5){const H=mt.getAddressesWithUpdatedValues(N,B,S);z(H)}else if(R===13){const H=mt.getAddressesWithUpdatedValues(N,B,f);I(H)}else if(R===21){const H=mt.getAddressesWithUpdatedValues(N,B,k);F(H)}else if(R===41){const H=mt.getAddressesWithUpdatedValues(N,B,x);y(H)}},X=(M,B,R)=>{if(R===14){const N=u.map(H=>H.id===B?{...H,note:M.target.value}:H);g(N)}if(R===20){const N=p.map(H=>H.id===B?{...H,note:M.target.value}:H);h(N)}if(R===16){const N=v.map(H=>H.id===B?{...H,note:M.target.value}:H);j(N)}if(R===3){const N=C.map(H=>H.id===B?{...H,note:M.target.value}:H);w(N)}if(R===5){const N=S.map(H=>H.id===B?{...H,note:M.target.value}:H);z(N)}if(R===13){const N=f.map(H=>H.id===B?{...H,note:M.target.value}:H);I(N)}if(R===21){const N=k.map(H=>H.id===B?{...H,note:M.target.value}:H);F(N)}if(R===41){const N=x.map(H=>H.id===B?{...H,note:M.target.value}:H);y(N)}},K=async(M,B)=>{if(e&&(B===3||B===5||B===13||B===14||B===20||B===16||B===21||B===41)){o(M);const R={contactId:e,contactAddressId:M,type:B};switch(n?await n(s(R)):await s(R),o(!1),B){case 3:const N=C.filter(L=>L.id!==M);w(N),d(L=>({...L??{},emails:N}));break;case 5:const H=S.filter(L=>L.id!==M);z(H),d(L=>({...L??{},phones:H}));break;case 13:const q=f.filter(L=>L.id!==M);I(q),d(L=>({...L??{},ims_whatsapp:q}));break;case 21:const te=k.filter(L=>L.id!==M);F(te),d(L=>({...L??{},ims_rcs:te}));break;case 41:const le=x.filter(L=>L.id!==M);y(le),d(L=>({...L??{},ims_mercadolibre:le}));break;case 14:const he=u.filter(L=>L.id!==M);g(he),d(L=>({...L??{},ims_facebook:he}));break;case 20:const fe=p.filter(L=>L.id!==M);h(fe),d(L=>({...L??{},ims_webchat:fe}));break;case 16:const Ce=v.filter(L=>L.id!==M);j(Ce),d(L=>({...L??{},ims_instagram:Ce}));break}}};function E(){g(c?.ims_facebook||[]),y(c?.ims_mercadolibre||[]),h(c?.ims_webchat||[]),j(c?.ims_instagram||[]),I(c?.ims_whatsapp||[]),F(c?.ims_rcs||[]),w(c?.emails||[]),z(c?.phones||[])}return l.useEffect(()=>{d(a),a?.emails&&a?.phones&&(w(a.emails),z(a.phones)),I(a?.ims_whatsapp||[]),F(a?.ims_rcs||[]),g(a?.ims_facebook||[]),h(a?.ims_webchat||[]),j(a?.ims_instagram||[]),y(a?.ims_mercadolibre||[])},[a]),{field:{imsWhatsapp:f,imsRCS:k,imsMercadolibre:x,imsFacebooks:u,imsWebchats:p,imsInstagrams:v,emails:C,phoneNumbers:S},action:{handleAddressFieldChange:P,handleNoteFieldChange:X,handleDeleteAddress:K,addPhone:$,addEmail:T,addWhatsapp:V,addRCS:W,replaceAddress:Y,addWhatsappVerified:_,resetToInitialContactInformation:E},state:{isDeletingAddress:i}}},hn=({initialState:e=[]}={})=>{const[a,n]=l.useState(e);return{attributes:{value:a,onChange:(s,i)=>{const o=i.some(c=>!a.some(d=>c.id===d.id));(a.filter(c=>!i.some(d=>d.id===c.id)).length>0||o)&&n(i)}},actions:{addValue:s=>{n(i=>i.concat(s))},setValue:s=>{n(s)}}}},uo=({business:e,customContactFields:a,baseUrl:n,spaceId:s})=>{const i=l.useMemo(()=>async de=>{!n||!s||await Qt({baseUrl:n,spaceId:s,data:de})},[n,s]),o=async de=>de,[c,d]=l.useState([]),u=ye("text",e?.name||""),g=Tt({baseUrl:n,spaceId:s,entityType:"business",entityId:e?.id,initialImageUrl:e?.imageUrl||""}),x=dn(e?.owner),y=hn({initialState:e?.tags??[]}),[p,h]=l.useState([]),{field:{imsFacebooks:v,imsMercadolibre:j,imsWebchats:f,imsInstagrams:I,imsWhatsapp:C,emails:w,phoneNumbers:S,imsRCS:z},action:{addPhone:k,addEmail:F,addWhatsapp:$,addRCS:T,addWhatsappVerified:V,replaceAddress:W,handleAddressFieldChange:_,handleNoteFieldChange:Y,handleDeleteAddress:P,resetToInitialContactInformation:X},state:{isDeletingAddress:K}}=pn({entityId:e?.id,initial:e,dispatch:o,deleteAddress:i}),E=ye("text",e?.address1?.street||""),M=ye("text",e?.address2?.street||""),B=ye("text",e?.address1?.city||""),R=ye("text",e?.address2?.city||""),N=ye("text",e?.address1?.state||""),H=ye("text",e?.address2?.state||""),q=ye("text",e?.address1?.zipcode||""),te=ye("text",e?.address2?.zipcode||""),le=ye("text",e?.address1?.country||""),he=ye("text",e?.address2?.country||""),fe=(de,ve,pe)=>ve!==pe&&!(ve===null&&pe==="")?{[de]:pe}:{},Ce=()=>{if(!e)return null;const de={street:E.attributes.value,city:B.attributes.value,state:N.attributes.value,zipcode:q.attributes.value,country:le.attributes.value},ve={street:M.attributes.value,city:R.attributes.value,state:H.attributes.value,zipcode:te.attributes.value,country:he.attributes.value};return{id:e.id,...fe("owner",e.owner,x.attributes.value),...fe("name",e.name,u.attributes.value),imageUrl:g.imageUrl?g.removeParams(g.imageUrl):null,tags:y.attributes.value,properties:c,members:p,phoneNumbers:S,emails:w,address1:de,address2:ve}};function L(de){if(!e)return;const ve=G=>G.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),pe=e.properties.find(G=>G.nameKey===de)??e.properties.find(G=>ve(G.nameKey)===ve(de));if(!pe){console.error(`No se encontr\xF3 una propiedad con nameKey: ${de}`);return}const qe=c.map(G=>G.nameKey===de?{...G,value:pe.value}:G);d(qe)}const be=()=>e?a.map(de=>{const ve=G=>G.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),pe=e.properties.find(G=>G.nameKey===de.nameKey)??e.properties.find(G=>ve(G.nameKey)===ve(de.nameKey));if(pe)return{...pe,nameKey:de.nameKey,type:pe.type??de.type,value:pe.value};const qe=c.find(G=>G.nameKey===de.nameKey);return{nameKey:de.nameKey,type:de.type,value:qe?qe.value:""}}):[];return l.useEffect(()=>{e&&a&&d(be())},[e,a]),l.useEffect(()=>{e&&y.actions.setValue(e.tags??[])},[e]),{field:{name:u,imsWhatsapp:C,imsRCS:z,contactImage:g,contactPropietary:x,imsMercadolibre:j,imsFacebooks:v,imsWebchats:f,imsInstagrams:I,emails:w,phoneNumbers:S,homeAddress:E,secondaryHomeAddress:M,city:B,secondaryCity:R,state:N,secondaryState:H,postalCode:q,secondaryPostalCode:te,country:le,secondaryCountry:he,customProperties:c,labelMultipleSelect:y},action:{setCustomProperties:d,addWhatsapp:$,addRCS:T,getEditedBusiness:Ce,handleAddressFieldChange:_,handleNoteFieldChange:Y,handleDeleteAddress:P,addPhone:k,addEmail:F,replaceAddress:W,addWhatsappVerified:V,resetToInitialContactInformation:X,resetCustomProperty:L},state:{isDeletingAddress:K},selectedContacts:p,setSelectedContacts:h}},po=({contact:e,customContactFields:a,baseUrl:n,spaceId:s})=>{const i=l.useMemo(()=>async G=>{!n||!s||await Qt({baseUrl:n,spaceId:s,data:G})},[n,s]),o=async G=>G,{getEditedField:c}=mt,[d,u]=l.useState([]),g=ye("text",e?.firstName||""),x=ye("text",e?.lastName||""),y=Tt({baseUrl:n,spaceId:s,entityType:"contact",entityId:e?.id?String(e.id):void 0,initialImageUrl:e?.imageUrl}),[p,h]=l.useState(e?.birthDate?J(e.birthDate):null),v=pn({entityId:e?.id,initial:e,dispatch:o,deleteAddress:i}),{field:{imsFacebooks:j,imsMercadolibre:f,imsWebchats:I,imsInstagrams:C,imsWhatsapp:w,emails:S,phoneNumbers:z,imsRCS:k},action:{addPhone:F,addEmail:$,addWhatsapp:T,addRCS:V,addWhatsappVerified:W,replaceAddress:_,handleAddressFieldChange:Y,handleNoteFieldChange:P,handleDeleteAddress:X,resetToInitialContactInformation:K},state:{isDeletingAddress:E}}=v,M=hn({initialState:e?.tags}),B=dn(e?.owner),R=ye("text",e?.address1?.street),N=ye("text",e?.address2?.street),H=ye("text",e?.address1?.city),q=ye("text",e?.address2?.city),te=ye("text",e?.address1?.state),le=ye("text",e?.address2?.state),he=ye("text",e?.address1?.zipcode),fe=ye("text",e?.address2?.zipcode),Ce=ye("text",e?.address1?.country),L=ye("text",e?.address2?.country),be=()=>{if(!e)return null;const G=e,Ie=M.attributes.value.map(ae=>({id:ae.id,name:ae.name})),ee=z.map(ae=>{const{id:Te,...Ze}=ae;return Ze}),ie=S.map(ae=>{const{id:Te,...Ze}=ae;return Ze});return{id:G.id,owner:B.attributes.value,firstName:g.attributes.value,lastName:x.attributes.value,address1:{...c("street",G.address1?.street,R.attributes.value),...c("city",G.address1?.street,H.attributes.value),...c("state",G.address1?.street,te.attributes.value),...c("zipcode",G.address1?.street,he.attributes.value),...c("country",G.address1?.street,Ce.attributes.value)},address2:{...c("street",G.address2?.street,N.attributes.value),...c("city",G.address2?.street,q.attributes.value),...c("state",G.address2?.street,le.attributes.value),...c("zipcode",G.address2?.street,fe.attributes.value),...c("country",G.address2?.street,L.attributes.value)},emails:ie,phones:ee,tags:Ie,imageUrl:y.imageUrl?y.removeParams(y.imageUrl):null,properties:d,birthDate:p?.toDate()}};function de(){e&&(!e.businessId||e.businessName)}function ve(){h(e?.birthDate?J(e.birthDate):null)}function pe(G){if(!e)return;const Ie=ae=>ae.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),ee=e.properties.find(ae=>ae.nameKey===G)??e.properties.find(ae=>Ie(ae.nameKey)===Ie(G));if(!ee){console.error(`No se encontr\xF3 una propiedad con nameKey: ${G}`);return}const ie=d.map(ae=>ae.nameKey===G?{...ae,value:ee.value}:ae);u(ie)}const qe=()=>e?a.map(G=>{const Ie=ae=>ae.trim().toLowerCase().replace(/\s+/g,"-").replace(/-+/g,"-"),ee=e.properties.find(ae=>ae.nameKey===G.nameKey)??e.properties.find(ae=>Ie(ae.nameKey)===Ie(G.nameKey));if(ee)return{...ee,nameKey:G.nameKey,type:ee.type??G.type,value:ee.value};const ie=d.find(ae=>ae.nameKey===G.nameKey);return{nameKey:G.nameKey,type:G.type,value:ie?ie.value:""}}):[];return l.useEffect(()=>{e&&a&&u(qe())},[e,a]),l.useEffect(()=>{e?.tags&&M.actions.setValue(e.tags),e?.businessId&&e.businessName},[e]),{field:{birthDate:p,imsWhatsapp:w,imsRCS:k,contactFirstname:g,contactLastname:x,contactImage:y,contactPropietary:B,imsMercadolibre:f,imsFacebooks:j,imsWebchats:I,imsInstagrams:C,emails:S,phoneNumbers:z,homeAddress:R,secondaryHomeAddress:N,city:H,secondaryCity:q,state:te,secondaryState:le,postalCode:he,secondaryPostalCode:fe,country:Ce,secondaryCountry:L,customProperties:d,labelMultipleSelect:M},action:{setBirthDate:h,setCustomProperties:u,getEditedContact:be,handleAddressFieldChange:Y,handleNoteFieldChange:P,handleDeleteAddress:X,addPhone:F,addEmail:$,addWhatsapp:T,addRCS:V,replaceAddress:_,addWhatsappVerified:W,resetToInitialContactInformation:K,resetSelectedBusiness:de,resetBirthDate:ve,resetCustomProperty:pe},state:{isDeletingAddress:E}}},ja=l.createContext(null),ho=({children:e,contact:a,customContactFields:n,baseUrl:s,spaceId:i})=>{const o=po({contact:a,customContactFields:n,baseUrl:s,spaceId:i});return t.jsx(ja.Provider,{value:{entityType:"contact",editEntity:o,entityId:String(a.id)},children:e})},mo=({children:e,business:a,customContactFields:n,baseUrl:s,spaceId:i})=>{const o=uo({business:a,customContactFields:n,baseUrl:s,spaceId:i});return t.jsx(ja.Provider,{value:{entityType:"business",editEntity:o,entityId:String(a.id)},children:e})},go=({children:e,entityType:a,entityData:n,customContactFields:s,baseUrl:i,spaceId:o})=>a==="contact"?t.jsx(ho,{contact:n,customContactFields:s,baseUrl:i,spaceId:o,children:e}):t.jsx(mo,{business:n,customContactFields:s,baseUrl:i,spaceId:o,children:e}),Xe=()=>{const e=l.useContext(ja);if(!e)throw new Error("useEditEntity must be used within EditEntityProvider");return e},gt=({userId:e,users:a,currentUser:n})=>{if(!e)return null;if(n?.uid&&n.uid===e)return n.display_name||n.email||null;const s=a.find(i=>i?.id===e);return s?.name?.trim()||s?.email||null},ta=({title:e,children:a,enableDirectionSearch:n=!1,onDirectionSearchClick:s})=>{const i=ge();return t.jsxs(r.Box,{sx:{border:"1px solid",borderColor:"divider",borderRadius:2,p:2,mb:2},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",children:[t.jsx(r.Typography,{variant:"subtitle1",children:e}),n&&t.jsx(r.Button,{startIcon:t.jsx(Xn,{sx:{color:"primary.main",height:18,width:18}}),size:"small",variant:"outlined",color:"primary",onClick:()=>s&&s(),children:i("global.searchLocation")})]}),t.jsx(r.Divider,{sx:{my:1.5}}),a]})},mn=({children:e,...a})=>t.jsx(r.Box,{display:"grid",gridTemplateColumns:{xs:"1fr",md:"repeat(2, minmax(0, 1fr))"},gap:2,...a,children:e}),yo=({birthDate:e,setBirthDate:a,dateFormat:n})=>{const s=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(za.DatePicker,{value:e,onChange:i=>a(i),slotProps:{textField:{size:"small"}},format:s})})})},fo={view:"main",setView:()=>{}},gn=l.createContext(null),xo=gn.Provider,bo=()=>l.useContext(gn)||(console.warn("[useEditContactView] using noop, context value is missing"),fo),yn=()=>{},fn=l.createContext(yn),vo=({navigate:e,children:a})=>t.jsx(fn.Provider,{value:e,children:a}),Co=()=>l.useContext(fn)||(console.warn("[useNavigateContext] using noop, context value is falsy"),yn);function jo({value:e,displayValue:a,businessId:n}){const s=at(),i=Co(),[o,c]=l.useState(null),d=Tt({initialImageUrl:o?.imageUrl,entityType:"business",entityId:n}),[u,g]=l.useState(null),[x,y]=l.useState(!1);return t.jsxs(r.Box,{display:"flex",alignItems:"center",children:[t.jsx(r.Typography,{onClick:async p=>{const h=p.currentTarget;if(y(!0),!s){console.error("API is null");return}const v=await s.fetchBusiness({businessId:n});if(v&&Ca(v)&&c(v),y(!1),!h){console.error("Target element is null");return}g(h)},variant:"body2",fontWeight:"600",sx:{padding:1,cursor:"pointer"},color:p=>p.palette.text.primary,children:a||typeof e=="string"&&e||"-"}),o&&t.jsx(Qa,{contactData:o,open:!!u,anchorEl:u,onClose:()=>g(null),navigate:i,avatarImgUrl:d.imageUrl}),x&&t.jsx(r.Box,{display:"flex",alignItems:"center",justifyContent:"center",p:1,children:t.jsx(r.CircularProgress,{size:20})})]})}const So=e=>"email"in e,Sa=e=>e.entityType==="contact"&&e.inputType==="birthday",wo=r.styled(r.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),xn=r.styled(r.IconButton)({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}}),nt=e=>{const{title:a,value:n,isNotEditable:s,displayValue:i,baseUrl:o,spaceId:c,minWidth:d,onEntityUpdated:u}=e,g=ge(),{setView:x}=bo(),y=e.inputType??"text",[p,h]=l.useState(!1),[v,j]=l.useState(!1),f=l.useRef(null),[I,C]=l.useState(!1),[w,S]=l.useState(()=>e.entityType==="business"||typeof n=="string"?n:void 0);l.useEffect(()=>{const P=f.current;if(!P)return;const X=()=>{const K=P.scrollWidth>P.clientWidth;C(E=>E===K?E:K)};if(X(),typeof ResizeObserver<"u"){let K=0;const E=new ResizeObserver(()=>{if(typeof window>"u"){X();return}K&&window.cancelAnimationFrame(K),K=window.requestAnimationFrame(()=>{X()})});return E.observe(P),()=>{typeof window<"u"&&K&&window.cancelAnimationFrame(K),E.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",X),()=>{window.removeEventListener("resize",X)}},[a]),l.useEffect(()=>{e.entityType==="business"?S(n):S(typeof n=="string"?n:void 0)},[n,e.entityType]);const z=()=>{if(e.entityType==="contact"&&y==="selectBusiness"){x("businessSelect");return}h(P=>!P)},k=P=>{S(P.target.value)},F=P=>{const X=P.target.value;S(X)},$=()=>{Sa(e)&&e.contact.action.resetBirthDate(),h(!1)},T=async()=>{if(!e.constructUpdateObject){h(!1);return}if(e.entityType==="business"&&w===void 0){h(!1);return}j(!0);try{if(!o||!c)throw new Error("Missing baseUrl or spaceId for updateEntity");if(e.entityType==="contact"){let P=w===void 0?null:w;if(Sa(e)){const M=J(e.contact.field.birthDate);M.isValid()&&(P=M.toISOString())}const X=e.constructUpdateObject(P),K=e.entityId??X?.id;if(!K)throw new Error("Missing contactId for updateEntity");const E=await He({baseUrl:o,spaceId:c,entityType:"contact",entityId:K,body:X});u?.(E)}else{const P=e.constructUpdateObject(w),X=e.entityId??P?.id;if(!X)throw new Error("Missing businessId for updateEntity");const K=await He({baseUrl:o,spaceId:c,entityType:"business",entityId:X,body:P});u?.(K)}}finally{j(!1),h(!1)}},V=typeof w=="string"?w:"",W=w instanceof Date?w.toISOString():typeof w=="string"?w:"",_=d??(e.entityType==="contact"?"45%":"200px"),Y=e.options??[];return t.jsxs(r.Box,{className:"fadein contacts-col-5",sx:{display:"flex",backgroundColor:P=>P.palette.mode==="dark"?"1e1e1e":P.palette.background.default,flexDirection:"column",borderRadius:1,minWidth:_,"&:hover .edit-icon":{opacity:1}},children:[t.jsxs(r.Box,{display:"flex",position:"relative",minHeight:"25px",children:[I?t.jsx(r.Tooltip,{title:a,arrow:!0,children:t.jsx(r.Typography,{ref:f,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:p?1:0,color:P=>P.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a})}):t.jsx(r.Typography,{ref:f,component:"span",variant:"body2",letterSpacing:-.5,fontWeight:"600",alignSelf:"center",flexGrow:p?1:0,color:P=>P.palette.text.primary,noWrap:!0,sx:{minWidth:0,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a}),s?null:p?t.jsxs(t.Fragment,{children:[t.jsx(xn,{size:"small",onClick:T,children:v?t.jsx(r.CircularProgress,{size:24}):t.jsx(ct,{})}),t.jsx(xn,{size:"small",onClick:$,children:t.jsx(Oa,{})})]}):t.jsx(wo,{className:"edit-icon",size:"small",onClick:z,children:t.jsx(bt,{})})]}),t.jsx(r.Box,{width:p?"100%":"50%",position:"relative",children:p&&y==="text"?t.jsx(r.TextField,{value:W,onChange:k,variant:"standard",size:"small",sx:{width:"100%"}}):p&&(y==="select"||y==="selectMembers")?t.jsxs(r.Select,{value:V,onChange:F,variant:"standard",size:"small",sx:{width:"100%"},children:[e.entityType==="contact"?t.jsx(r.MenuItem,{value:"",children:g("conversations.contactDetails.contactInfo.emptySelection")}):null,Y.map((P,X)=>t.jsx(r.MenuItem,{value:P.id,children:e.entityType==="contact"?P.name?.trim()||(So(P)?P.email:"")||"Sin nombre":P.name?.trim()||P.email||"Sin nombre"},X))]}):p&&Sa(e)?t.jsx(yo,{birthDate:e.contact.field.birthDate,setBirthDate:e.contact.action.setBirthDate,dateFormat:e.dateFormat}):!p&&e.entityType==="contact"&&y==="selectBusiness"&&e.businessId?t.jsx(jo,{value:String(n??""),displayValue:String(i??""),businessId:e.businessId}):t.jsx(r.Typography,{variant:"body2",fontWeight:"400",sx:{padding:"2.5px 14px 8.5px 0px"},color:P=>P.palette.text.primary,children:i||typeof n=="string"&&n||"-"})})]})},Et=e=>{const{title:a,value:n,isNotEditable:s,options:i=[],displayValue:o,constructUpdateObject:c,businessId:d,baseUrl:u,spaceId:g,contactId:x,onEntityUpdated:y}=e;if(e.inputType==="birthday")return t.jsx(nt,{entityType:"contact",entityId:x,title:a,value:n,isNotEditable:s,inputType:"birthday",options:i,displayValue:o,constructUpdateObject:c,contact:e.contact,businessId:d,baseUrl:u,spaceId:g,dateFormat:e.dateFormat,onEntityUpdated:y});const p=e.inputType??"text";return t.jsx(nt,{entityType:"contact",entityId:x,title:a,value:n,isNotEditable:s,inputType:p,options:i,displayValue:o,constructUpdateObject:c,businessId:d,baseUrl:u,spaceId:g,onEntityUpdated:y})},Io=({nameKey:e,value:a,onChange:n,type:s})=>{const i=u=>{s===ne.ContactField_type.NUMBER_ACCOUNTING||s===ne.ContactField_type.NUMBER_DECIMAL||s===ne.ContactField_type.NUMBER_CURRENCY||s===ne.ContactField_type.CURRENCY?c(u):s===ne.ContactField_type.NUMBER_INTEGER?d(u):(s===ne.ContactField_type.LONGTEXT||s===ne.ContactField_type.TEXT||s===ne.ContactField_type.ADDRESS)&&o(u)},o=u=>{n(e,u.target.value)},c=u=>{const g=u.target.value.replace(/[^0-9.]/g,"");n(e,g)},d=u=>{const g=u.target.value;/^\d*$/.test(g)&&n(e,g)};return t.jsx(r.TextField,{size:"small",variant:"standard",value:a,onChange:i,inputProps:{pattern:"[0-9]*"},multiline:s===ne.ContactField_type.LONGTEXT,rows:s===ne.ContactField_type.LONGTEXT?4:1,sx:{width:"100%"}})},To=({value:e,handleChange:a,dateFormat:n})=>{const s=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(za.DatePicker,{value:e?J(e):null,onChange:i=>a(i),format:s,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Eo=({handleChange:e,value:a,options:n})=>{const s=ge();return t.jsx(r.FormControl,{className:"fadein",sx:{width:"100%"},children:t.jsxs(r.Select,{value:a,onChange:i=>e(i.target.value),size:"small",variant:"standard",children:[t.jsx(r.MenuItem,{value:"",children:s("global.noValue")}),n.map((i,o)=>t.jsx(r.MenuItem,{value:i,children:i},o))]})})},ko=({value:e,handleChange:a,userTimeFormat:n})=>{const s=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Zn.TimePicker,{value:e?J(e):null,onChange:i=>a(i),format:s,slotProps:{textField:{size:"small",sx:{width:"100%"},variant:"standard"},openPickerButton:{disableRipple:!0}}})})})},Do=({value:e,handleChange:a,userTimeFormat:n})=>{const s=ge(),i=[J().set("hour",0).set("minute",0),J().set("hour",0).set("minute",0)],o=n==="24"?"HH:mm":"hh:mm";return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ve.MultiInputTimeRangeField,{slotProps:{textField:({position:c})=>({label:s(c==="start"?"contactEdit.from":"contactEdit.to"),size:"small",variant:"standard",inputProps:{placeholder:o}})},value:e||i,onChange:c=>a(c),format:o})})})},Ao=({value:e,handleChange:a,userDateFormat:n})=>{const s=ge(),i=[J(),J()],o=(n||"YYYY/MM/DD").toUpperCase();return t.jsx(Ct.LocalizationProvider,{dateAdapter:vt.AdapterDayjs,children:t.jsx(jt,{sx:{overflow:"visible",paddingTop:"0px"},children:t.jsx(Ve.MultiInputDateRangeField,{slotProps:{textField:({position:c})=>({label:s(c==="start"?"contactEdit.from":"contactEdit.to"),size:"small",sx:{width:"100%"},variant:"standard",inputProps:{placeholder:o}})},value:e||i,onChange:c=>a(c),format:o})})})},Fo=r.styled(r.IconButton)(()=>({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"})),bn=r.styled(r.IconButton)(()=>({"& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"}})),$o=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",borderRadius:e.shape.borderRadius,minWidth:"45%","&:hover .edit-icon":{opacity:1}})),vn=r.styled(r.Typography)(({theme:e})=>({fontWeight:600,fontSize:"0.875rem",alignSelf:"center",color:e.palette.text.primary,letterSpacing:-.5,padding:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0})),Bo=r.styled(r.Typography)(({theme:e})=>({fontWeight:400,fontSize:"0.875rem",padding:"2.5px 14px 8.5px 0px",color:e.palette.text.primary,wordWrap:"break-word",maxHeight:"80px",overflow:"auto",whiteSpace:"break-spaces"})),Cn=({property:e,entity:a,entityType:n,entityId:s,customContactFields:i,userTrii:o,baseUrl:c,spaceId:d,onEntityUpdated:u})=>{const{customProperties:g}=a.field,{setCustomProperties:x}=a.action,[y,p]=l.useState(!1),[h,v]=l.useState(!1),j=l.useRef(null),[f,I]=l.useState(!1),C=(o?.regCon_dateFormat||"YYYY/MM/DD").toUpperCase(),w=o?.regCon_timeFormat||"24",S=E=>E===ne.ContactField_type.NUMBER_INTEGER||E===ne.ContactField_type.NUMBER_DECIMAL||E===ne.ContactField_type.NUMBER_CURRENCY||E===ne.ContactField_type.NUMBER_ACCOUNTING||E===ne.ContactField_type.CURRENCY,z=(E,M)=>E.toLowerCase()==="dni"?!0:S(M),k=(E,M,B)=>{if(B===""||B===null||B===void 0)return null;if(z(E,M)){const R=Number(B);return Number.isNaN(R)?B:R}return B},F=()=>p(E=>!E),$=()=>{p(!1),a.action.resetCustomProperty(e.nameKey)},T=async()=>{if(!c||!d||!s)return;v(!0);const E=g.find(q=>q.nameKey===e.nameKey)||e,{nameKey:M,value:B}=E,R=i.find(q=>q.nameKey===M)?.type??E.type;let N;if(R===ne.ContactField_type.TIME){const q=J(B);q.isValid()?N=q.format(w==="24"?"HH:mm":"hh:mm"):N=B}else if(R===ne.ContactField_type.DATE){const q=J(B);q.isValid()?N=q.toISOString():N=B}else N=k(M,R,B);const H={properties:[{nameKey:M,type:R,value:N}]};try{const q=await He({baseUrl:c,spaceId:d,entityType:n,entityId:s,body:H}),te=g.map(le=>le.nameKey===M?{...le,type:R,value:N}:le);x(te),u?.(q)}finally{v(!1),p(!1)}},V=E=>i.find(M=>M.nameKey===E)?.name||E;l.useEffect(()=>{const E=j.current;if(!E)return;const M=()=>{const B=E.scrollWidth>E.clientWidth;I(R=>R===B?R:B)};if(M(),typeof ResizeObserver<"u"){let B=0;const R=new ResizeObserver(()=>{if(typeof window>"u"){M();return}B&&window.cancelAnimationFrame(B),B=window.requestAnimationFrame(()=>{M()})});return R.observe(E),()=>{typeof window<"u"&&B&&window.cancelAnimationFrame(B),R.disconnect()}}if(!(typeof window>"u"))return window.addEventListener("resize",M),()=>{window.removeEventListener("resize",M)}},[i,e.nameKey]);const W=(E,M)=>{const B=e.type===ne.ContactField_type.DATERANGE?Array.isArray(M)&&M[0]&&M[1]?`${J(M[0]).toISOString()} - ${J(M[1]).toISOString()}`:"":e.type===ne.ContactField_type.DATE?J(M).isValid()?J(M).toISOString():"Invalid Date":e.type===ne.ContactField_type.TIME?J(M).isValid()?J(M).toISOString():"Invalid Time":M,R=g.map(N=>N.nameKey===E?{...N,value:B}:N);x(R)},{type:_,nameKey:Y,value:P}=e,X=E=>E==null?!1:typeof E=="string"?E.trim().length>0:!0,K=()=>_===ne.ContactField_type.DATE?t.jsx(To,{value:P?J(P):null,handleChange:E=>W(Y,E?.toDate()),dateFormat:C}):_===ne.ContactField_type.TIME?t.jsx(ko,{value:e?.valueDate?J(e.valueDate):P?J(P):null,handleChange:E=>W(Y,E),userTimeFormat:w}):_===ne.ContactField_type.DATERANGE?t.jsx(Ao,{value:P&&typeof P=="string"&&P.includes(" - ")?[J(P.split(" - ")[0]),J(P.split(" - ")[1])]:null,handleChange:E=>W(Y,[E[0]?.toDate?.(),E[1]?.toDate?.()]),userDateFormat:C}):_===ne.ContactField_type.TIMERANGE?t.jsx(Do,{value:Array.isArray(P)&&P.length===2?[J(P[0]),J(P[1])]:null,handleChange:E=>W(Y,[E[0]?.toDate?.(),E[1]?.toDate?.()]),userTimeFormat:w}):_===ne.ContactField_type.OPTIONS?t.jsx(Eo,{value:typeof P=="string"?P:"",handleChange:E=>W(Y,E),options:i.find(E=>E.nameKey===Y)?.typeOptions??[]}):t.jsx(Io,{type:_,nameKey:Y,value:P,onChange:W});return t.jsxs($o,{className:`fadein ${e.type===ne.ContactField_type.LONGTEXT?"contacts-col-12":"contacts-col-5"}`,children:[t.jsxs(r.Box,{display:"flex",position:"relative",minHeight:"25px",alignItems:"center",children:[f?t.jsx(r.Tooltip,{title:V(e.nameKey),arrow:!0,children:t.jsx(vn,{ref:j,flexGrow:1,noWrap:!0,children:V(e.nameKey)})}):t.jsx(vn,{ref:j,flexGrow:1,noWrap:!0,children:V(e.nameKey)}),y?t.jsxs(t.Fragment,{children:[t.jsx(bn,{size:"small",onClick:T,children:h?t.jsx(r.CircularProgress,{size:24}):t.jsx(ct,{})}),t.jsx(bn,{size:"small",onClick:$,children:t.jsx(Oa,{})})]}):t.jsx(Fo,{className:"edit-icon",size:"small",onClick:F,children:t.jsx(bt,{})})]}),t.jsx(r.Box,{width:y||e.type===ne.ContactField_type.LONGTEXT?"100%":"50%",position:"relative",children:y?K():t.jsx(Bo,{children:X(e?.value)?e.type===ne.ContactField_type.DATERANGE?(()=>{if(typeof e.value=="string"){const E=e.value.split(" - ");if(E.length===2){const[M,B]=E,R=J(M),N=J(B);return`${R.isValid()?R.format(C):"-"} - ${N.isValid()?N.format(C):"-"}`}}else if(Array.isArray(e.value)&&e.value.length===2)return`${J(e.value[0]).format(C)} - ${J(e.value[1]).format(C)}`;return`${e.value}`})():e.type===ne.ContactField_type.TIMERANGE?Array.isArray(e.value)&&e.value.length===2?`${J(e.value[0]).format(w==="24"?"HH:mm":"hh:mm")} - ${J(e.value[1]).format(w==="24"?"HH:mm":"hh:mm")}`:`${e.value}`:e.type===ne.ContactField_type.TIME?(()=>{try{const E=e.valueDate||e.value;return`${J(E).format(w==="24"?"HH:mm":"hh:mm A")}`}catch{return`${e.value}`}})():e.type===ne.ContactField_type.DATE?(()=>{try{return`${J(e.value).format(C)}`}catch{return`${e.value}`}})():`${e?.value}`:null})})]})},Uo=e=>{const{dateFormat:a,entityData:n,customContactFields:s,baseUrl:i,spaceId:o,currentUser:c,onEntityUpdated:d}=e,u=ge(),{entityType:g,editEntity:x}=Xe(),y=at();if(g!=="contact")return null;const[p,h]=l.useState([]),[v,j]=l.useState(null),[f,I]=l.useState(null),[C,w]=l.useState(null),S=x;l.useEffect(()=>{if(!y)return;const T=new AbortController;return y.fetchUsers({signal:T.signal}).then(V=>{T.signal.aborted||h(V??[])}).catch(()=>{T.signal.aborted||h([])}),()=>{T.abort()}},[y]),l.useEffect(()=>{const T=new AbortController,V=async W=>{if(!W||!y)return null;try{const _=await y.fetchUserTriiById({userId:W,signal:T.signal});return _?.display_name||_?.email||null}catch{return null}};return(async()=>{const W=gt({userId:n.owner,users:p,currentUser:c})??(n.owner?await V(n.owner):null),_=gt({userId:n.createdBy??void 0,users:p,currentUser:c})??(n.createdBy?await V(n.createdBy):null),Y=gt({userId:n.updatedBy??void 0,users:p,currentUser:c})??(n.updatedBy?await V(n.updatedBy):null);T.signal.aborted||(j(W),w(_),I(Y))})(),()=>{T.abort()}},[y,n,p,c]);const z=(a||"YYYY/MM/DD").toUpperCase(),k=S.field.birthDate,F=k?.isValid()?k.format(z):null,$=T=>{const V=new Date;let W=V.getFullYear()-T.getFullYear();const _=V.getMonth()-T.getMonth();return(_<0||_===0&&V.getDate()<T.getDate())&&W--,W};return t.jsx(ta,{title:"General",children:t.jsxs(mn,{children:[t.jsx(Et,{title:u("conversations.contactDetails.contactOwner"),displayValue:v||"-",value:n.owner,inputType:"select",options:p,constructUpdateObject:T=>({owner:typeof T=="string"?T:""}),contact:S,baseUrl:i,spaceId:o,contactId:n.id,onEntityUpdated:d}),t.jsx(Et,{title:u("conversations.contactDetails.business"),displayValue:n.businessName||"-",value:n.businessId,inputType:"selectBusiness",businessId:n.businessId,contact:S,baseUrl:i,spaceId:o,contactId:n.id,onEntityUpdated:d}),t.jsx(Et,{title:u("conversations.contactDetails.createdBy"),value:C||"-",isNotEditable:!0,contact:S,baseUrl:i,spaceId:o,contactId:n.id}),t.jsx(Et,{title:u("conversations.contactDetails.modifiedBy"),value:f||"-",isNotEditable:!0,contact:S,baseUrl:i,spaceId:o,contactId:n.id}),t.jsx(Et,{title:u("global.birthdate"),inputType:"birthday",displayValue:k?`${F} (${$(k.toDate())})`:"-",value:k?k.toISOString():"",constructUpdateObject:T=>({birthDate:T}),contact:S,baseUrl:i,spaceId:o,contactId:n.id,dateFormat:a,onEntityUpdated:d}),S.field.customProperties.map(T=>t.jsx(Cn,{property:T,entity:S,entityType:"contact",entityId:String(n.id),customContactFields:s,userTrii:c,baseUrl:i,spaceId:o,onEntityUpdated:d},T.nameKey))]})})},wa=({title:e,value:a,isNotEditable:n,inputType:s="text",options:i=[],displayValue:o,constructUpdateObject:c,baseUrl:d,spaceId:u,businessId:g,onEntityUpdated:x})=>t.jsx(nt,{entityType:"business",entityId:g,title:e,value:a,isNotEditable:n,inputType:s,options:i,displayValue:o,constructUpdateObject:c,baseUrl:d,spaceId:u,onEntityUpdated:x}),Po=e=>{const a=ge(),{entityData:n,customContactFields:s,baseUrl:i,spaceId:o,currentUser:c,onEntityUpdated:d}=e,{entityType:u,editEntity:g}=Xe(),x=at();if(u!=="business")return null;const[y,p]=l.useState([]),[h,v]=l.useState(null),[j,f]=l.useState(null),[I,C]=l.useState(null),w=g;return l.useEffect(()=>{if(!x)return;const S=new AbortController;return x.fetchUsers({signal:S.signal}).then(z=>{S.signal.aborted||p(z??[])}).catch(()=>{S.signal.aborted||p([])}),()=>{S.abort()}},[x]),l.useEffect(()=>{const S=new AbortController,z=async k=>{if(!k||!x)return null;try{const F=await x.fetchUserTriiById({userId:k,signal:S.signal});return F?.display_name||F?.email||null}catch{return null}};return(async()=>{const k=gt({userId:n.owner,users:y,currentUser:c})??(n.owner?await z(n.owner):null),F=gt({userId:n.createdBy??void 0,users:y,currentUser:c})??(n.createdBy?await z(n.createdBy):null),$=gt({userId:n.updatedBy??void 0,users:y,currentUser:c})??(n.updatedBy?await z(n.updatedBy):null);S.signal.aborted||(v(k),C(F),f($))})(),()=>{S.abort()}},[x,n,y,c]),t.jsx(ta,{title:"General",children:t.jsxs(mn,{children:[t.jsx(wa,{title:a("conversations.businessDetails.businessOwner"),value:n.owner,displayValue:h||"-",inputType:"select",options:y,constructUpdateObject:S=>({owner:typeof S=="string"?S:""}),baseUrl:i,spaceId:o,businessId:n.id,onEntityUpdated:d}),t.jsx(wa,{title:a("conversations.contactDetails.createdBy"),value:I||"-",isNotEditable:!0}),t.jsx(wa,{title:a("conversations.contactDetails.modifiedBy"),value:j||"-",isNotEditable:!0}),w.field.customProperties.map(S=>t.jsx(Cn,{property:S,entity:w,entityType:"business",entityId:String(n.id),customContactFields:s,userTrii:c,baseUrl:i,spaceId:o,onEntityUpdated:d},S.nameKey))]})})},Mo=e=>{const{entityType:a,entityData:n}=e;return l.useMemo(()=>a==="contact"||a==="business"?a:"contact",[a])==="contact"?t.jsx(Uo,{...e,entityData:n,entityType:"contact"}):t.jsx(Po,{...e,entityData:n,entityType:"business"})},Ro=()=>{const[e,a]=l.useState(!1),[n,s]=l.useState("");return{isOpen:e,title:n,openModal:i=>{s(i),a(!0)},closeModal:()=>{a(!1),s("")}}},No=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),Lo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),overflow:"hidden",maxWidth:"80%"})),zo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Oo=Se.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),Wo=Se.styled(r.Avatar)(({})=>({width:32,height:32,cursor:"pointer"})),Ia=Se.styled(r.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),_o=Se.styled(Ia)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),Vo=Se.styled(Ia)(({})=>({fontSize:14,fontWeight:500})),qo=Se.styled(Ia)(({})=>({fontSize:14,fontWeight:500})),Yo=({item:e})=>{const a=e.profileUrl,{imageUrl:n}=Tt({initialImageUrl:a});return t.jsx(t.Fragment,{children:t.jsxs(No,{children:[t.jsx(Lo,{children:t.jsxs(Oo,{children:[t.jsx(r.Tooltip,{title:e.address||"",arrow:!0,children:t.jsx(Vo,{children:e.address})}),t.jsx(r.Tooltip,{title:e.profileName||"",arrow:!0,children:t.jsx(qo,{sx:{marginTop:"-10px",marginLeft:"5px",fontSize:"10px"},children:e.profileName})}),t.jsx(r.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(_o,{children:e.note})})]})}),t.jsxs(zo,{children:[a!==""&&t.jsx(Wo,{src:n,alt:e.profileName,style:{cursor:"pointer"},children:e?.profileName?.charAt(0).toUpperCase()}),t.jsx(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(r.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx($e.Star,{sx:{color:"#fcac34"}}):t.jsx($e.StarBorder,{sx:{color:"#fcac34"}})})})]})]})})},Ta=Wa.PhoneNumberUtil.getInstance(),Ho=e=>{if(!e||!e.trim())return e;try{const a=Ta.parse(e,void 0);return Ta.isValidNumber(a)?Ta.format(a,Wa.PhoneNumberFormat.INTERNATIONAL):e}catch{return e}},Go=Se.styled(r.IconButton)(({theme:e})=>({padding:e.spacing(.5),marginTop:"-5px"})),Ko=Se.styled(es)(({theme:e})=>({height:16,width:16,color:e.palette.secondary.main})),Jo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(1),backgroundColor:e.palette.background.dropdownMenu,borderRadius:e.shape.borderRadius,color:e.palette.text.primary,width:"50%",paddingBottom:"3px",minHeight:"50px",position:"relative"})),Qo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"flex-start",gap:e.spacing(1),maxWidth:"80%"})),Xo=Se.styled(r.Box)(({theme:e})=>({display:"flex",alignItems:"center",gap:e.spacing(1)})),Zo=Se.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",gap:e.spacing(.5),overflow:"hidden",flexFlow:"nowrap",flexWrap:"wrap",marginTop:"-5px"})),jn=Se.styled(r.Box)(({})=>({fontSize:14,fontWeight:500,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"})),ei=Se.styled(jn)(({theme:e})=>({fontSize:12,color:e.palette.text.secondary,position:"absolute",bottom:0,maxWidth:"70%"})),ti=Se.styled(jn)(({})=>({fontSize:14,fontWeight:500})),ai=({item:e})=>{const a=()=>{const s=e.address;if(!s)return;const i=new CustomEvent("call-contact-header",{detail:{phoneAddress:s}});window.dispatchEvent(i)},n=l.useMemo(()=>Ho(e.address||""),[e.address]);return t.jsx(t.Fragment,{children:t.jsxs(Jo,{children:[t.jsxs(Qo,{children:[t.jsx(Go,{onClick:a,color:"primary",size:"small",children:t.jsx(Ko,{})}),t.jsxs(Zo,{children:[t.jsx(r.Tooltip,{title:n||"",arrow:!0,children:t.jsx(ti,{children:n})}),t.jsx(r.Tooltip,{title:e.note||"",arrow:!0,children:t.jsx(ei,{children:e.note})})]})]}),t.jsx(Xo,{children:t.jsx(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end"},children:t.jsx(r.IconButton,{size:"small",sx:{marginTop:"-5px",padding:0},children:e.isFavorite?t.jsx($e.Star,{sx:{color:"#fcac34"}}):t.jsx($e.StarBorder,{sx:{color:"#fcac34"}})})})})]})})},ni=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",padding:e.spacing(1,0,2,0),width:"100%",gap:e.spacing(1),"&:hover .edit-icon":{opacity:1}})),si=r.styled(r.Typography)(({})=>({letterSpacing:-.5,fontSize:14})),ri=r.styled(r.Box)(({})=>({display:"flex",alignItems:"center"})),oi=r.styled(r.Box)(({theme:e})=>({display:"flex",flexDirection:"column",gap:e.spacing(1),width:"100%"})),ii=r.styled(r.IconButton)({opacity:0,transition:"opacity 0.3s ease-in-out","& .MuiSvgIcon-root":{width:"0.8em",height:"0.8em"},marginLeft:"15px"}),li=({title:e,methodItems:a,isPhone:n,handleEdit:s,owner:i})=>t.jsxs(ni,{children:[t.jsxs(ri,{children:[t.jsx(si,{children:e}),t.jsx(ii,{className:"edit-icon",size:"small",onClick:s,children:t.jsx(bt,{fontSize:"small",sx:{color:o=>o.palette.secondary.main}})})]}),t.jsx(oi,{children:a.map((o,c)=>n?t.jsx(ai,{item:o},c):t.jsx(Yo,{item:o,owner:i},c))})]}),ci=({title:e})=>t.jsx(r.Box,{children:t.jsx(r.Typography,{variant:"subtitle2",children:e})}),di={container:{display:"flex",justifyContent:"space-between",alignItems:"center"}},aa=({title:e,handleAdd:a})=>{const n=ge();return console.log("[SubsectionHeaderWithButton] title:",e,"t fn:",n?.name||"anonymous"),t.jsxs(r.Box,{sx:di.container,children:[t.jsx(r.Typography,{variant:"subtitle2",children:e}),t.jsx(r.Button,{onClick:a,size:"small",startIcon:t.jsx(_a,{}),variant:"text",color:"primary",children:n("global.add")})]})},ui={container:{border:"1px solid lightgray",borderRadius:1,p:2,width:"100%",display:"flex",flexDirection:"column",gap:1}},kt=({children:e})=>t.jsx(r.Box,{sx:ui.container,children:e}),Sn={container:{display:"flex",width:"50%",alignItems:"center",justifyContent:"end"},noteTextField:{width:"100%",marginRight:"15px"}},pi=({onDelete:e,addressData:a,handleLinkAccountSave:n,checked:s,onCheckContactAddress:i})=>{const o=ge(),[c,d]=l.useState(null),u=!!c,{channelType:g,address:x}=a,[y,p]=l.useState(!1),[h,v]=l.useState(null),[j,f]=l.useState(!1),I=$=>{d($.currentTarget)},C=()=>{d(null)},w=()=>{f(!1)},S=()=>{e(),C()},z=async()=>{p(!0);try{if(!i)return;const $=await i(13);if(!$)return;v($),f(!0)}catch($){console.error("Error verifying WhatsApp account:",$)}finally{p(!1)}C()},k=async()=>{p(!0);try{if(!i)return;const $=await i(21);if(!$)return;v($),f(!0)}catch($){console.error("Error verifying RCS account:",$)}finally{p(!1)}C()},F=async()=>{await n(),f(!1)};return t.jsxs(r.Box,{children:[t.jsx(r.IconButton,{"aria-controls":u?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":u?"true":void 0,onClick:I,children:t.jsx(ts,{})}),t.jsxs(r.Menu,{id:"basic-menu",anchorEl:c,open:u,onClose:C,MenuListProps:{"aria-labelledby":"basic-button"},children:[t.jsxs(r.MenuItem,{onClick:S,children:[t.jsx(r.ListItemIcon,{children:t.jsx(Kt,{color:"error"})}),t.jsx(r.ListItemText,{children:o("global.delete")})]}),g===5&&t.jsxs(r.MenuItem,{onClick:z,disabled:!s,children:[t.jsx(r.ListItemIcon,{children:y?t.jsx(r.CircularProgress,{size:24}):t.jsx(as,{sx:{color:"green"}})}),t.jsx(r.ListItemText,{children:o("optionsMenu.verifyWspAccount")})]}),g===21&&t.jsxs(r.MenuItem,{onClick:k,disabled:!s,children:[t.jsx(r.ListItemIcon,{children:y?t.jsx(r.CircularProgress,{size:24}):t.jsx(ns,{})}),t.jsx(r.ListItemText,{children:o("optionsMenu.verifyRCSAccount")})]})]}),t.jsx(r.Modal,{open:j,onClose:w,"aria-labelledby":"modal-modal-title","aria-describedby":"modal-modal-description",children:t.jsx(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:400,boxShadow:24,p:4,backgroundColor:$=>$.palette.background.default},children:h?.success?t.jsxs(t.Fragment,{children:[t.jsxs(r.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[o("optionsMenu.wspAccountFound")," ",x]}),t.jsx(r.Typography,{id:"modal-modal-description",sx:{mt:2},children:o("optionsMenu.wantToLinkContact")}),t.jsxs(r.Box,{sx:{marginTop:"10px"},children:[t.jsx(r.Button,{onClick:F,color:"primary",children:o("optionsMenu.yesLink")}),t.jsx(r.Button,{onClick:w,color:"secondary",children:"No"})]})]}):t.jsxs(r.Box,{sx:{position:"relative"},children:[t.jsxs(r.Typography,{id:"modal-modal-title",variant:"h6",component:"h2",children:[o("optionsMenu.noWspAccountFound")," ",x]}),t.jsx(r.Button,{onClick:w,color:"secondary",sx:{position:"absolute",bottom:-25,right:0},children:o("global.cancel")})]})})})]})},Dt=e=>{const a=ge(),n=at(),{editEntity:s,entityId:i}=Xe(),[o,c]=l.useState(!1),d=e.checked??!0,u=e.entityId??i,{note:g,channelType:x,id:y,address:p}=e.addressData,h=!e.addressData.hasOwnProperty("isSaved"),v=e.replaceAddress??s.action.replaceAddress,j=e.addWhatsappVerified||(typeof s.action?.addWhatsappVerified=="function"?s.action.addWhatsappVerified:void 0),f=async S=>{if(!n||!u)return null;const z=await n.setContactAddress({data:{address:p,contactId:u,type:S}});return v(y,z),z},I=async()=>{if(!n||!u)return;const S=await n.updateContactAddress({data:{contactAddressId:y,contactId:u,note:g??""}});v(y,S)},C=async()=>{c(!0),h?(await I(),c(!1)):await f(x)&&c(!1)},w=async()=>{c(!0);const S=await f(13);S&&j&&j(S),S&&c(!1)};return t.jsxs(r.Box,{sx:{...Sn.container},children:[h&&t.jsx(r.TextField,{size:"small",label:a("global.note"),variant:"outlined",onChange:S=>e.handleNoteFieldChange(S,y,x),value:g,fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",sx:Sn.noteTextField}),t.jsx(r.IconButton,{onClick:C,children:o?t.jsx(r.CircularProgress,{size:24}):t.jsx(ct,{color:"primary"})}),t.jsx(pi,{onDelete:()=>e.handleDeleteAddress(y,x),addressData:e.addressData,handleLinkAccountSave:w,checked:d&&!o,onCheckContactAddress:async S=>{if(!n)return null;try{return await n.checkContactAddress({data:{address:p,type:S}})}catch{return null}}})]})},hi={container:{display:"flex",gap:"100px",alignItems:"center"}},At=({children:e})=>t.jsx(r.Box,{sx:hi.container,children:e}),mi={container:{width:"100%",borderRadius:1,px:1.5,py:2,display:"flex",flexDirection:"column",gap:2,overflow:"auto",maxHeight:"calc(100vh - 250px)"}},Ft=({children:e})=>t.jsx(r.Box,{sx:{...mi.container},children:e}),gi=({status:e})=>{switch(e){case"idle":return null;case"loading":return t.jsx(os,{size:20});case"available":return t.jsx(ss,{style:{height:27,width:27},color:"success"});case"unavailable":return t.jsx(rs,{style:{height:27,width:27},color:"error"});default:return null}},wn=({status:e,text:a})=>t.jsxs(is,{position:"end",children:[a?t.jsx(ls,{marginRight:.5,children:a}):null,t.jsx("div",{style:{width:30,display:"flex",justifyContent:"center"},children:t.jsx(gi,{status:e})})]}),yi={code:{width:"60%",color:"gray"}},fi=({data:e,editEntity:a})=>{const n=a.action;return t.jsx(kt,{children:t.jsxs(At,{children:[t.jsx(r.Typography,{sx:yi.code,variant:"body2",children:e.address}),t.jsx(Dt,{addressData:e,handleNoteFieldChange:n.handleNoteFieldChange,handleDeleteAddress:n.handleDeleteAddress})]})})},xi=({IMSs:e,editEntity:a})=>t.jsx(Ft,{children:e?.map(n=>t.jsx(fi,{data:n,editEntity:a},n.id))}),na=({editEntity:e,title:a,IMSs:n})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(ci,{title:a}),t.jsx(xi,{IMSs:n,editEntity:e})]}),bi={addressField:{}},Ea=({data:e,onChange:a,setWarnings:n})=>{const{id:s,channelType:i,address:o}=e,c=ge(),d=at(),[u,g]=l.useState("idle"),[x,y]=l.useState(o),p=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(o!==""&&o!==x){if(!d)return;g("loading"),y(o);const v={address:o,type:i};try{const j=await d.checkContactAddress({data:v}),{success:f,warnings:I}=j;n(I),g(f?"available":"unavailable")}catch{n([]),g("unavailable")}}},1700);return()=>clearTimeout(h)},[d,e,o,i,x,n]),t.jsx(t.Fragment,{children:t.jsx(r.TextField,{disabled:p,sx:bi.addressField,size:"small",label:i===ht.ChannelType.WHATSAPP||i===ht.ChannelType.RCS?c?c("global.number"):"Number":c?c("global.email"):"Email",value:o,onChange:h=>{a(h,s,i)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(wn,{status:u})})}})})},vi={addressField:{}},Ci=({data:e,onChange:a,setWarnings:n})=>{const s=at(),i=ge(),{id:o,channelType:c,address:d}=e,[u,g]=l.useState("idle"),[x,y]=l.useState(d),p=!e.hasOwnProperty("isSaved");return l.useEffect(()=>{let h=setTimeout(async()=>{if(d!==""&&d!==x){if(!s)return;g("loading"),y(d);const v={address:d,type:c};try{const{success:j,warnings:f}=await s.checkContactAddress({data:v});n(f),g(j?"available":"unavailable")}catch{n([]),g("unavailable")}}},1700);return()=>clearTimeout(h)},[e]),t.jsx(t.Fragment,{children:t.jsx(r.TextField,{disabled:p,sx:vi.addressField,size:"small",label:i("global.number"),value:d,onChange:h=>{a(h,o,c)},variant:"outlined",fullWidth:!0,InputLabelProps:{shrink:!0},className:"contacts-smallInput",InputProps:{endAdornment:t.jsx(t.Fragment,{children:t.jsx(wn,{status:u})})}})})},ka={secondaryContainer:{display:"flex",alignItems:"baseline",height:"100%",gap:.5},icon:{height:15},chip:{borderRadius:"6px",height:"22px"}},ji=({text:e})=>t.jsx(r.Grid,{item:!0,children:t.jsx(r.Box,{sx:ka.secondaryContainer,children:t.jsx(ds,{icon:t.jsx(cs,{sx:ka.icon}),sx:ka.chip,label:e,color:"error",variant:"outlined"})})}),sa=({warnings:e})=>{const a=ge();return t.jsx(r.Box,{children:t.jsx(r.Grid,{container:!0,children:e?.map((n,s)=>t.jsx(ji,{text:a(`contactAddressError.${n}`)},s))})})},Si={numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{marginTop:"10px"},adressInputBox:{position:"relative",width:"45%"}},wi=({data:e})=>{const a="edit",{editEntity:n}=Xe(),s=n.action,i=n.state,[o,c]=l.useState([]),[d,u]=l.useState(!0);return l.useEffect(()=>{u(o.length===0&&(e.address??"")!=="")},[o,e.address]),t.jsx(kt,{children:t.jsxs(At,{children:[t.jsxs(r.Box,{sx:{...Si.numberCountryContainer,flexDirection:"column"},children:[t.jsx(Ci,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange}),o.length>0&&t.jsx(sa,{warnings:o})]}),t.jsx(Dt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress,addWhatsappVerified:s.addWhatsappVerified,checked:d})]})})},Ii=({phoneNumbers:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(wi,{data:a},a.id))}),Ti=({phoneNumbers:e,handleAdd:a})=>{const n=ge();return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(aa,{handleAdd:a,title:n("global.phones")}),t.jsx(Ii,{phoneNumbers:e})]})},In={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Ei=({data:e})=>{const a="edit",{editEntity:n}=Xe(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(kt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:In.numberCountryContainer,children:t.jsx(r.Box,{sx:In.adressInputBox,children:t.jsx(Ea,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(Dt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(sa,{warnings:o})]})},ki=({emails:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(Ei,{data:a},a.id))}),Di=({emails:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(aa,{handleAdd:a,title:"Emails"}),t.jsx(ki,{emails:e})]}),Tn={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Ai=({data:e})=>{const a="edit",{editEntity:n}=Xe(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(kt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:Tn.numberCountryContainer,children:t.jsx(r.Box,{sx:Tn.adressInputBox,children:t.jsx(Ea,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(Dt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(sa,{warnings:o})]})},Fi=({whatsapps:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(Ai,{data:a},a.id))}),$i=({whatsapps:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(aa,{handleAdd:a,title:"WhatsApp"}),t.jsx(Fi,{whatsapps:e})]}),En={emailField:{width:"60%"},numberCountryContainer:{display:"flex",justifyContent:"flex-start",width:"50%"},warningMessage:{position:"absolute",bottom:"-30px"},adressInputBox:{position:"relative",width:"60%"}},Bi=({data:e})=>{const a="edit",{editEntity:n}=Xe(),s=n.action,i=n.state,[o,c]=l.useState([]);return t.jsxs(kt,{children:[t.jsxs(At,{children:[t.jsx(r.Box,{sx:En.numberCountryContainer,children:t.jsx(r.Box,{sx:En.adressInputBox,children:t.jsx(Ea,{data:e,setWarnings:c,onChange:s.handleAddressFieldChange})})}),t.jsx(Dt,{mode:a,addressData:e,handleNoteFieldChange:s.handleNoteFieldChange,handleDeleteAddress:s.handleDeleteAddress,isDeletingAddress:i.isDeletingAddress,replaceAddress:s.replaceAddress})]}),o.length>0&&t.jsx(sa,{warnings:o})]})},Ui=({RCSs:e})=>t.jsx(Ft,{variant:"large",children:e?.map(a=>t.jsx(Bi,{data:a},a.id))}),Pi=({RCSs:e,handleAdd:a})=>t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsx(aa,{handleAdd:a,title:"RCS"}),t.jsx(Ui,{RCSs:e})]}),Mi=Se.styled(r.Box)(({theme:e})=>({position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:1e3,backgroundColor:e.palette.background.panel,padding:e.spacing(4),borderRadius:e.shape.borderRadius})),Ri=({open:e,onClose:a,title:n})=>{const s=ge(),{editEntity:i}=Xe(),{emails:o,phoneNumbers:c,imsWhatsapp:d,imsRCS:u}=i.field,{addEmail:g,addPhone:x,addWhatsapp:y,resetToInitialContactInformation:p,addRCS:h}=i.action;function v(){a(),p()}return t.jsx(r.Modal,{open:e,onClose:a,children:t.jsxs(Mi,{children:[(()=>{switch(n){case"Phones":return t.jsx(Ti,{handleAdd:x,phoneNumbers:c});case"Emails":return t.jsx(Di,{handleAdd:g,emails:o});case"Whatsapp":return t.jsx($i,{handleAdd:y,whatsapps:d});case"RCS":return t.jsx(Pi,{handleAdd:h,RCSs:u});case"Facebook":return t.jsx(na,{title:"Facebook",IMSs:i.field.imsFacebooks,editEntity:i});case"Webchat":return t.jsx(na,{title:"Webchat",IMSs:i.field.imsWebchats,editEntity:i});case"Instagram":return t.jsx(na,{title:"Instagram",IMSs:i.field.imsInstagrams,editEntity:i});case"Mercado libre":return t.jsx(na,{title:"Mercado Libre",IMSs:i.field.imsMercadolibre,editEntity:i});default:return t.jsx(r.Typography,{children:"No information available for this section."})}})(),t.jsx(r.Box,{mt:2,display:"flex",justifyContent:"flex-end",children:t.jsx(r.Button,{variant:"contained",color:"primary",onClick:v,children:s("global.close")})})]})})},Ni=({ownerData:e})=>{const{isOpen:a,title:n,openModal:s,closeModal:i}=Ro(),{editEntity:o}=Xe(),c=ge(),d=o.field.phoneNumbers,u=o.field.emails,g=o.field.imsFacebooks,x=o.field.imsWhatsapp,y=o.field.imsMercadolibre,p=o.field.imsWebchats,h=o.field.imsInstagrams,v=o.field.imsRCS,j=[{key:"phones",title:c("conversations.contactDetails.phones"),items:d,isPhone:!0,modalTitle:"Phones",visible:!0},{key:"emails",title:"Emails",items:u,modalTitle:"Emails",visible:!0},{key:"facebook",title:"Facebook",items:g,modalTitle:"Facebook",visible:!0},{key:"whatsapp",title:"Whatsapp",items:x,modalTitle:"Whatsapp",visible:!0},{key:"rcs",title:"RCS",items:v,modalTitle:"RCS",visible:v.length>0},{key:"mercado-libre",title:"Mercado libre",items:y,modalTitle:"Mercado libre",visible:!0},{key:"webchat",title:"Webchat",items:p,modalTitle:"Webchat",visible:!0},{key:"instagram",title:"Instagram",items:h,modalTitle:"Instagram",visible:!0}];return t.jsxs(t.Fragment,{children:[t.jsx(ta,{title:c("conversations.contactDetails.contactInformation"),children:t.jsx("div",{className:"grid grid-cols-1 gap-3",children:j.filter(f=>f.visible).map(f=>t.jsx(li,{handleEdit:()=>s(f.modalTitle),title:f.title,methodItems:f.items,isPhone:f.isPhone,owner:e},f.key))})}),t.jsx(Ri,{open:a,onClose:i,title:n})]})},Li=({entityType:e,entityData:a,baseUrl:n,spaceId:s,onEntityUpdated:i,onDirectionSearchClick:o})=>{const c={baseUrl:n,spaceId:s,entityId:String(a.id),onEntityUpdated:i},d=ge(),u=({addressNumber:g,title:x})=>t.jsxs("div",{className:"flex flex-col gap-4 rounded-xl p-4",children:[t.jsx(r.Typography,{variant:"body2",children:x}),t.jsxs("div",{className:"grid grid-cols-2 gap-x-4 gap-y-3",children:[t.jsx("div",{className:"col-span-2",children:t.jsx(nt,{entityType:e,title:d("conversations.contactDetails.street"),value:a[g]?.street??"",...c,constructUpdateObject:y=>({[g]:{street:y}}),minWidth:"100%"})}),t.jsx(nt,{entityType:e,title:d("conversations.contactDetails.city"),value:a[g]?.city??"",...c,constructUpdateObject:y=>({[g]:{city:y}}),minWidth:"100%"}),t.jsx(nt,{entityType:e,title:d("conversations.contactDetails.state"),value:a[g]?.state??"",...c,constructUpdateObject:y=>({[g]:{state:y}}),minWidth:"100%"}),t.jsx(nt,{entityType:e,title:d("conversations.contactDetails.postcode"),value:a[g]?.zipcode??"",...c,constructUpdateObject:y=>({[g]:{zipcode:y}}),minWidth:"100%"}),t.jsx(nt,{entityType:e,title:d("conversations.contactDetails.country"),value:a[g]?.country??"",...c,constructUpdateObject:y=>({[g]:{country:y}}),minWidth:"100%"})]})]});return t.jsx(ta,{title:d("conversations.contactDetails.addressInformation"),enableDirectionSearch:!0,onDirectionSearchClick:o,children:t.jsxs("div",{className:"flex flex-col gap-4",children:[t.jsx(u,{addressNumber:"address1",title:d("conversations.contactDetails.primaryAddress")}),t.jsx(u,{addressNumber:"address2",title:d("conversations.contactDetails.secondaryAddress")})]})})},zi=({entity:e,setEntity:a})=>l.useCallback(n=>{if(!n||typeof n!="object")return;const s=n;if("id"in s){a(n);return}if(!e)return;const i={...e,...s};a(i)},[e,a]),Oi=({open:e,baseUrl:a,spaceId:n,contactData:s,contactType:i,labels:o,selectedTags:c,onTagsUpdated:d})=>{const[u,g]=l.useState("main"),[x,y]=l.useState([]),[p,h]=l.useState(!1),[v,j]=l.useState(!1),[f,I]=l.useState([]),[C,w]=l.useState(!1),S=l.useMemo(()=>{const $=o??[],T=f??[],V=new Map;for(const W of $)W?.id&&V.set(String(W.id),W);for(const W of T)W?.id&&V.set(String(W.id),W);return Array.from(V.values())},[o,f]),z=l.useCallback(()=>{g("main"),y([]),h(!1),j(!1),I([]),w(!1)},[]);l.useEffect(()=>{e||z()},[e,z]),l.useEffect(()=>{if(u!=="tags"){h(!1);return}if(p||!S.length)return;const $=new Set(c.map(V=>String(V.id))),T=S.filter(V=>$.has(String(V?.id)));y(T),h(!0)},[u,p,S,c]);const k=l.useCallback(async $=>{if(C||!a||!n)return;const T=String($??"").trim();if(!T)return;const V=T.toLowerCase(),W=S.find(_=>String(_?.name??"").trim().toLowerCase()===V);if(W?.id){y(_=>{const Y=_??[];return Y.some(P=>String(P?.id)===String(W.id))?Y:[...Y,W]});return}w(!0);try{const _=await nn({baseUrl:a,spaceId:n,name:T});I(Y=>{const P=Y??[];return!_?.id||P.some(X=>String(X?.id)===String(_.id))?P:[...P,_]}),y(Y=>{const P=Y??[];return!_?.id||P.some(X=>String(X?.id)===String(_.id))?P:[...P,_]})}finally{w(!1)}},[C,a,n,S]),F=l.useCallback(async()=>{if(v||!a||!n||!s||i!=="contact"&&i!=="business")return;const $=x.filter(T=>T?.id&&T?.name).map(T=>({id:String(T.id),name:String(T.name)}));j(!0);try{await He({baseUrl:a,spaceId:n,entityType:i,entityId:String(s.id),body:{tags:$}}),d($),g("main")}finally{j(!1)}},[v,a,n,s,i,x,d]);return{view:u,setView:g,draftLabels:x,setDraftLabels:y,labelsOptions:S,isSaving:v,isCreatingLabel:C,handleCreateLabel:k,handleSaveTags:F}},Wi=({onClose:e})=>l.useCallback((a,n)=>{n!=="escapeKeyDown"&&e()},[e]),_i={format:"IBusiness",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"},Vi=({baseUrl:e,spaceId:a,contactId:n,initialBusiness:s,onBack:i,onEntityUpdated:o,currentUser:c})=>{const d=ge(),u=at(),g=l.useRef(null),x=l.useRef(null),[y,p]=l.useState(()=>s?.businessName??""),[h,v]=l.useState(!1),[j,f]=l.useState(!1),[I,C]=l.useState(!1),[w,S]=l.useState([]),[z,k]=l.useState(s??null),[F,$]=l.useState(1),[T,V]=l.useState(!1),[W,_]=l.useState(!1),Y=l.useMemo(()=>{const q=c?.display_name,te=c?.email;return String(q||te||"").trim()},[c]);l.useEffect(()=>()=>{g.current&&(clearTimeout(g.current),g.current=null),x.current?.abort()},[]),l.useEffect(()=>{k(s??null),p(s?.businessName??"")},[s]);const P=()=>{x.current?.abort(),x.current=null,g.current&&(clearTimeout(g.current),g.current=null),v(!1),_(!1),$(1),V(!1),S([])},X=q=>q.filter(te=>!!te?.id).map(te=>({businessId:String(te.id),businessName:String(te.name??"")})),K=async({query:q,page:te})=>{if(!u)return;x.current?.abort();const le=new AbortController;x.current=le,f(!0);try{const he={..._i,currentPage:te,filter:[{value:q,column:"name",condition:""}]},fe=await u.fetchBusinessTableData({pagination:he,signal:le.signal});if(le.signal.aborted)return;const Ce=X(fe?.contactos??[]);v(!0);const L=fe?.paginacion?.total??0;S(be=>{const de=te===1?Ce:(()=>{const ve=new Map;for(const pe of be)ve.set(pe.businessId,pe);for(const pe of Ce)ve.set(pe.businessId,pe);return Array.from(ve.values())})();return L&&de.length>=L&&_(!0),de})}finally{f(!1),C(!1),V(!1)}},E=q=>{P(),q&&(g.current&&(clearTimeout(g.current),g.current=null),C(!0),g.current=setTimeout(()=>{K({query:q,page:1})},800))},M=q=>{const te=q.target;if(!(te.scrollHeight-te.scrollTop-te.clientHeight<1)||W||j||!y)return;const le=F+1;V(!0),$(le),K({query:y,page:le})},B=async()=>{if(!u||!Y)return;const q=String(y??"").trim();if(q){f(!0);try{const te={name:q,owner:Y,imageUrl:"",members:[],tags:[],properties:[],address1:{street:"",city:"",state:"",zipcode:"",country:""},address2:{street:"",city:"",state:"",zipcode:"",country:""}},le=await u.createBusiness({business:te}),he={businessId:String(le.id??""),businessName:String(le.name??q)};S([he]),k(he),v(!0)}finally{f(!1)}}},R=async()=>{if(!e||!a||!n)return;const q=z?.businessId??"",te=await He({baseUrl:e,spaceId:a,entityType:"contact",entityId:n,body:{businessId:q}});o?.(te),i()},N=h&&w.length===0&&y?t.jsxs(r.Stack,{direction:"row",alignItems:"center",justifyContent:"space-between",sx:{px:1,py:.5},children:[t.jsx(r.Typography,{variant:"body2",children:d("global.noOptions")}),t.jsx(Qe.LoadingButton,{size:"small",variant:"contained",onClick:B,loading:j,disabled:j||!Y,children:d("global.createNew")})]}):t.jsx(r.Typography,{variant:"body2",children:d("global.noOptions")}),H=!n||!e||!a;return t.jsxs(r.Box,{sx:{width:"100%"},children:[t.jsxs(r.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[t.jsx(r.IconButton,{size:"small",onClick:i,"aria-label":d("global.back"),children:t.jsx(ya,{fontSize:"small"})}),t.jsx(r.Typography,{variant:"subtitle1",children:d("conversations.contactDetails.business")}),t.jsx(r.Box,{sx:{flex:1}}),t.jsx(Qe.LoadingButton,{variant:"contained",size:"small",startIcon:t.jsx(ct,{}),onClick:R,loading:!1,disabled:H,children:d("global.save")})]}),t.jsxs(r.Box,{sx:{position:"relative"},children:[j||I||T?t.jsx(r.Box,{sx:{position:"absolute",left:0,right:0,top:0},children:t.jsx(r.LinearProgress,{sx:{borderRadius:1}})}):null,t.jsx(r.Autocomplete,{fullWidth:!0,disablePortal:!0,value:z,onChange:(q,te)=>{k(te)},inputValue:y,onInputChange:(q,te,le)=>{p(te),le==="input"&&E(te)},options:w,getOptionLabel:q=>q?.businessName??"",isOptionEqualToValue:(q,te)=>q.businessId===te.businessId,noOptionsText:N,renderInput:q=>t.jsx(r.TextField,{...q,size:"small",label:d("conversations.contactDetails.business"),placeholder:d("global.noValue"),InputProps:{...q.InputProps,endAdornment:t.jsxs(t.Fragment,{children:[j||I?t.jsx(r.CircularProgress,{size:18,sx:{mr:1}}):null,q.InputProps.endAdornment]})}}),ListboxProps:{sx:{maxHeight:240,overflowY:"auto"},onScroll:M}})]})]})},qi=({open:e,onClose:a,baseUrl:n,spaceId:s,contactId:i,sx:o,language:c="en",navigate:d,googleMapsApiKey:u,onEntityUpdated:g})=>{const{t:x,i18n:y}=_e.useTranslation(),p=l.useRef(null);l.useEffect(()=>{if(window.google?.maps||document.querySelector('script[src^="https://maps.googleapis.com/maps/api/js"]'))return;if(!u){console.warn("Google Maps API key is missing. The location search feature will not work.");return}const K=document.createElement("script");return K.src=`https://maps.googleapis.com/maps/api/js?key=${u}&libraries=places`,K.async=!0,K.defer=!0,document.body.appendChild(K),()=>{}},[u]),l.useEffect(()=>{c&&y.changeLanguage(c)},[c,y]);const h=K=>x(K),v=l.useMemo(()=>!n||!s?null:on(n,s),[n,s]),{state:j,selectors:f,actions:I}=ao({open:e,baseUrl:n,spaceId:s,contactId:i}),C=zi({entity:j.contactData,setEntity:K=>{I.setContactData(K??void 0),K&&g&&g(K)}}),{view:w,setView:S,draftLabels:z,setDraftLabels:k,labelsOptions:F,isSaving:$,isCreatingLabel:T,handleCreateLabel:V,handleSaveTags:W}=Oi({open:e,baseUrl:n,spaceId:s,contactData:j.contactData,contactType:f.contactType,labels:f.labels,selectedTags:f.tags,onTagsUpdated:K=>{if(!j.contactData)return;const E={...j.contactData,tags:K};I.setContactData(E),g&&g(E)}}),_=Tt({baseUrl:n,spaceId:s,entityType:f.contactType==="business"||f.contactType==="contact"?f.contactType:void 0,entityId:j.contactData?String(j.contactData.id):void 0,initialImageUrl:j.contactData?.imageUrl,onEntityUpdated:C}),Y=Wi({onClose:a}),P={position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:K=>K.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"},X=Array.isArray(o)?[P,...o]:o?[P,o]:P;return t.jsx(Tr,{value:v,children:t.jsx(wr,{t:h,children:t.jsx(vo,{navigate:d,children:t.jsx(r.Modal,{open:e,onClose:Y,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:e,timeout:200,children:t.jsxs(r.Box,{sx:X,ref:p,children:[t.jsx(r.IconButton,{"aria-label":"close",onClick:Y,sx:{position:"absolute",right:5,top:5,color:K=>K.palette.grey[500],zIndex:1},size:"small",children:t.jsx(La,{sx:{fontSize:20}})}),j.isLoading&&!j.contactData?t.jsx(r.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:220},children:t.jsx(r.CircularProgress,{})}):j.error?t.jsx(r.Box,{sx:{mb:2},children:"Failed to load contact"}):j.contactData?t.jsx(xo,{value:{view:w,setView:S},children:t.jsx(go,{entityType:f.contactType==="business"?"business":"contact",entityData:j.contactData,customContactFields:f.contactFields,baseUrl:n,spaceId:s,children:t.jsxs(r.Box,{sx:{position:"relative",height:"100%"},children:[t.jsx(r.Fade,{in:w==="main",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsxs(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:[t.jsx(Ur,{imgUrl:_.imageUrl,displayName:f.displayName,tags:f.tags,onEditTags:()=>{S("tags")},onUploadPhoto:_.action.uploadImage,onPhotoFileChange:_.inputAtributes.onChange,photoInputRef:_.inputAtributes.ref,isUploadingPhoto:_.isUploading,onDeletePhoto:_.action.deleteImage,isDeletingPhoto:_.isDeleting,contactType:f.contactType,entityId:j.contactData?.id,firstName:f.isContact?j.contactData.firstName:void 0,lastName:f.isContact?j.contactData.lastName:void 0,name:f.isBusiness?j.contactData.name:void 0,onEntityUpdated:C}),t.jsxs(r.Box,{sx:{px:1,pb:2},children:[t.jsx(Mo,{dateFormat:f.userTrii?.regCon_dateFormat||"MM/dd/yyyy",entityType:f.contactType==="contact"||f.contactType==="business"?f.contactType:"contact",entityData:j.contactData,customContactFields:f.contactFields,baseUrl:n,spaceId:s,onEntityUpdated:C,currentUser:f.userTrii}),t.jsx(Li,{entityType:f.contactType==="contact"||f.contactType==="business"?f.contactType:"contact",entityData:j.contactData,baseUrl:n,spaceId:s,onEntityUpdated:C,onDirectionSearchClick:()=>S("searchLocation")}),t.jsx(Ni,{ownerData:j.contactData})]})]})}),t.jsx(r.Fade,{in:w==="searchLocation",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(to,{baseUrl:n,spaceId:s,entityType:f.contactType==="business"?"business":"contact",entityId:String(j.contactData.id),onBack:()=>S("main"),onEntityUpdated:C})})}),t.jsx(r.Fade,{in:w==="tags",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Mr,{value:z,options:F,onChange:k,onBack:()=>S("main"),onSave:W,isSaving:$,onCreateNew:V,isCreatingNew:T,popperContainer:p.current})})}),t.jsx(r.Fade,{in:w==="businessSelect",timeout:200,mountOnEnter:!0,unmountOnExit:!0,children:t.jsx(r.Box,{sx:{pt:.5,position:"absolute",inset:0,overflowY:"auto"},children:t.jsx(Vi,{baseUrl:n,spaceId:s,contactId:String(j.contactData.id),initialBusiness:f.isContact&&j.contactData?.businessId?{businessId:String(j.contactData.businessId),businessName:String(j.contactData.businessName??"")}:null,onBack:()=>S("main"),onEntityUpdated:C,currentUser:f.userTrii})})})]})})}):null]})})})})})})},Yi=e=>t.jsx(_e.I18nextProvider,{i18n:It,children:t.jsx(qi,{...e})}),kn=l.createContext(null),Hi=kn.Provider,Dn=()=>l.useContext(kn),Gi={events:[],setEvents:()=>{},filteredEvents:[]},Ki=(e,a)=>{const[n,s]=l.useState([]);l.useEffect(()=>{if(!a?.length){s([]);return}const o=a.map(c=>({id:c.id,title:c.title||"",start:new Date(c.startAt),end:new Date(c.endAt||c.startAt),startAt:c.startAt,endAt:c.endAt,allDay:c.allDay||!1,color:c.color,calendarId:c.calendarId,details:c.details,location:c.location,isPrivate:c.isPrivate,rule:c.rule,relatedContact:c.relatedContact,sharedWith:c.sharedWith,finalized:c.finalized,kind:"event",originalOccurrenceDate:c.originalOccurrenceDate,parentId:c.parentId}));s(o)},[a]);const i=l.useMemo(()=>e?.length?n.filter(o=>o.calendarId&&e.includes(o.calendarId)):n,[n,e]);return l.useMemo(()=>({events:n,setEvents:s,filteredEvents:i}),[n,i])},An={open:!1,handleOpen:()=>{},handleClose:()=>{}},Fn=()=>{const[e,a]=l.useState(!1),n=l.useCallback(()=>{a(!0)},[]),s=l.useCallback(()=>{a(!1)},[]);return l.useMemo(()=>({open:e,handleOpen:n,handleClose:s}),[e,n,s])},dt={actions:{onError:()=>{},onSuccess:()=>{},resetValue:()=>{},changeValue:()=>{}},attributes:{error:!1,helperText:"",type:"",value:"",onChange:()=>{}}},ut=(e,a)=>{const[n,s]=l.useState(a||""),[i,o]=l.useState(!1),[c,d]=l.useState("");l.useEffect(()=>{s(a||"")},[a]);const u=l.useCallback(j=>{o(!0),d(j)},[]),g=l.useCallback(()=>{o(!1),d("")},[]),x=l.useCallback(j=>{s(j.target.value)},[]),y=l.useCallback(j=>{s(j)},[]),p=l.useCallback(()=>{s(a||"")},[a]),h=l.useMemo(()=>({onError:u,onSuccess:g,resetValue:p,changeValue:y}),[u,g,p,y]),v=l.useMemo(()=>({error:i,helperText:c,type:e,value:n,onChange:x}),[i,c,e,n,x]);return{actions:h,attributes:v}};function $n(e){return typeof e=="number"}const Ji={notifications:[],action:{addNotification:()=>{},deleteNotification:e=>{},handleTimeFieldChange:(e,a)=>{},handleTimePeriodChange:(e,a)=>{},handleReminderChange:(e,a)=>{},resetNotifications:()=>{}}};function Qi(e){const[a,n]=l.useState(e||[]),s=l.useCallback(()=>{const x={id:Zt(),timeValue:0,timePeriod:Jt.EventNotificationPeriod.MINUTE,sendToContact:!1};n(y=>y.concat(x))},[]),i=l.useCallback(x=>{n(y=>y.filter(p=>p.id!==x))},[]),o=l.useCallback((x,y)=>{const p=Number(x.target.value);$n(p)&&n(h=>h.map(v=>v.id===y?{...v,timeValue:p}:v))},[]),c=l.useCallback((x,y)=>{if(!$n(x.target.value))return;const p=x.target.value;n(h=>h.map(v=>v.id===y?{...v,timePeriod:p}:v))},[]),d=l.useCallback((x,y)=>{const p=x.target.checked;n(h=>h.map(v=>v.id===y?{...v,sendToContact:p}:v))},[]),u=l.useCallback(()=>{n([])},[]);l.useEffect(()=>{e&&n(e)},[e]);const g=l.useMemo(()=>({addNotification:s,deleteNotification:i,handleTimeFieldChange:o,handleTimePeriodChange:c,handleReminderChange:d,resetNotifications:u}),[s,i,o,c,d,u]);return{notifications:a,action:g}}const Xi={state:{selectedStartDate:J(),selectedEndDate:J().add(30,"minute"),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},Zi={state:{search:"",selectedContacts:[]},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},el={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},tl={titleField:dt,descriptionField:dt,locationField:dt,colorField:dt,date:Xi,allDay:!1,setAllDay:()=>{},isPrivate:!1,setIsPrivate:()=>{},recurrenceRule:"",setRecurrenceRule:()=>{},notifications:Ji,shareWithUsers:el,linkContact:Zi,create:()=>({title:"",details:"",location:"",allDay:!1,isPrivate:!1,color:"",startAt:"",endAt:"",notifications:[],sharedWith:[],rule:""}),resetFields:()=>{}},al=(e,a)=>{const[n,s]=l.useState(e??J()),[i,o]=l.useState(a??J().add(30,"minute")),[c,d]=l.useState(!1),u=l.useCallback(y=>p=>{y(p)},[]),g=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:i,error:c}),[n,i,c]),x=l.useMemo(()=>({setSelectedStartDate:s,setSelectedEndDate:o,setError:d,handleSelect:u}),[u]);return{state:g,action:x}},nl=()=>{const[e,a]=l.useState(""),[n,s]=l.useState([]),i=l.useCallback(x=>{s(y=>y.some(p=>p.id===x.id)?y:[...y,{id:x.id,name:x.name??""}]),a("")},[]),o=l.useCallback(x=>{s(y=>y.filter(p=>p.id!==x))},[]),c=l.useCallback(x=>{a(x)},[]),d=l.useCallback(()=>{a(""),s([])},[]),u=l.useMemo(()=>({search:e,selectedContacts:n}),[e,n]),g=l.useMemo(()=>({handleSelectContact:i,handleRemoveContact:o,handleSearchChange:c,resetField:d}),[i,o,c,d]);return{state:u,action:g}},sl=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),s=l.useMemo(()=>({userIds:e}),[e]),i=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:s,action:i}},rl=e=>{const a=l.useRef(null),n=ut("text",e?.title??""),s=ut("text",e?.details??e?.description??""),i=ut("text",e?.location??""),o=ut("text",e?.color??"#1976d2"),c=al(e?.startAt?J(e.startAt):void 0,e?.endAt?J(e.endAt):void 0),[d,u]=l.useState(e?.allDay??!1),[g,x]=l.useState(e?.isPrivate??!1),[y,p]=l.useState(e?.rule??""),h=Qi(e?.notifications),v=sl(),j=nl(),f=l.useCallback(()=>({title:n.attributes.value,details:s.attributes.value,location:i.attributes.value,allDay:d,isPrivate:g,color:o.attributes.value,startAt:c.state.selectedStartDate.toISOString(),endAt:c.state.selectedEndDate.toISOString(),notifications:h.notifications.map(C=>({timePeriod:C.timePeriod,timeValue:C.timeValue,sendToContact:C.sendToContact})),sharedWith:v.field.userIds,rule:y,relatedContactId:j.state.selectedContacts[0]?.id??null}),[n.attributes.value,s.attributes.value,i.attributes.value,d,g,o.attributes.value,c.state.selectedStartDate,c.state.selectedEndDate,h.notifications,v.field.userIds,y,j.state.selectedContacts]),I=l.useCallback(()=>{n.actions.resetValue(),s.actions.resetValue(),i.actions.resetValue(),o.actions.changeValue("#1976d2"),u(!1),x(!1),p(""),h.action.resetNotifications(),v.action.resetField(),j.action.resetField(),c.action.setError(!1)},[n.actions,s.actions,i.actions,o.actions,h.action,v.action,j.action,c.action]);return l.useEffect(()=>{const C=e?.id;!e||a.current===C||(a.current=C,u(e.allDay??!1),x(e.isPrivate??!1),p(e.rule??""),n.actions.changeValue(e.title??""),s.actions.changeValue(e.details??e.description??""),i.actions.changeValue(e.location??""),o.actions.changeValue(e.color??"#1976d2"),e.startAt&&c.action.setSelectedStartDate(J(e.startAt)),e.endAt&&c.action.setSelectedEndDate(J(e.endAt)))},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:s,locationField:i,colorField:o,date:c,allDay:d,setAllDay:u,isPrivate:g,setIsPrivate:x,recurrenceRule:y,setRecurrenceRule:p,notifications:h,shareWithUsers:v,linkContact:j,create:f,resetFields:I}),[n,s,i,o,c,d,g,y,h,v,j,f,I])},ol={field:{userIds:[]},action:{setUserIds:()=>{},resetField:()=>{}}},il={nameField:dt,color:"#ffffff",handleColorChange:()=>{},shareWithUsers:ol,googleCalendar:null,handleGoogleCalendarChange:()=>{}},ll=()=>{const[e,a]=l.useState([]),n=l.useCallback(()=>{a([])},[]),s=l.useMemo(()=>({userIds:e}),[e]),i=l.useMemo(()=>({setUserIds:a,resetField:n}),[n]);return{field:s,action:i}},cl=()=>{const e=ut("text",""),[a,n]=l.useState("#ffffff"),[s,i]=l.useState(null),o=ll(),c=l.useCallback(u=>{n(u)},[]),d=l.useCallback(u=>{i(u)},[]);return l.useMemo(()=>({nameField:e,color:a,handleColorChange:c,shareWithUsers:o,googleCalendar:s,handleGoogleCalendarChange:d}),[e,a,c,o,s,d])},dl={tasks:[],setTasks:()=>{},filteredTasks:[]},ul=e=>{const[a,n]=l.useState([]),s=l.useMemo(()=>e?.length?a.filter(i=>i.calendarId&&e.includes(i.calendarId)):a,[a,e]);return l.useMemo(()=>({tasks:a,setTasks:n,filteredTasks:s}),[a,s])},pl={state:{selectedStartDate:J(),selectedEndDate:J(),error:!1},action:{setSelectedStartDate:()=>{},setSelectedEndDate:()=>{},setError:()=>{},handleSelect:()=>()=>{}}},hl={state:{search:"",selectedContacts:[]},action:{handleSelectContact:()=>{},handleRemoveContact:()=>{},handleSearchChange:()=>{},resetField:()=>{}}},ml={titleField:dt,descriptionField:dt,date:pl,linkContact:hl,create:()=>({title:"",description:"",startAt:"",endAt:""}),resetFields:()=>{}},gl=(e,a)=>{const[n,s]=l.useState(e??J()),[i,o]=l.useState(a??J()),[c,d]=l.useState(!1),u=l.useCallback(y=>p=>{y(p)},[]),g=l.useMemo(()=>({selectedStartDate:n,selectedEndDate:i,error:c}),[n,i,c]),x=l.useMemo(()=>({setSelectedStartDate:s,setSelectedEndDate:o,setError:d,handleSelect:u}),[u]);return{state:g,action:x}},yl=()=>{const[e,a]=l.useState(""),[n,s]=l.useState([]),i=l.useCallback(x=>{s(y=>y.some(p=>p.id===x.id)?y:[...y,{id:x.id,name:x.name??""}]),a("")},[]),o=l.useCallback(x=>{s(y=>y.filter(p=>p.id!==x))},[]),c=l.useCallback(x=>{a(x)},[]),d=l.useCallback(()=>{a(""),s([])},[]),u=l.useMemo(()=>({search:e,selectedContacts:n}),[e,n]),g=l.useMemo(()=>({handleSelectContact:i,handleRemoveContact:o,handleSearchChange:c,resetField:d}),[i,o,c,d]);return{state:u,action:g}},fl=e=>{const a=l.useRef(null),n=ut("text",e?.title??""),s=ut("text",e?.description??""),i=gl(e?.startAt?J(e.startAt):void 0,e?.startAt?J(e.startAt):void 0),o=yl(),c=l.useCallback(()=>({title:n.attributes.value,description:s.attributes.value,startAt:i.state.selectedStartDate.toISOString(),endAt:i.state.selectedStartDate.toISOString(),relatedContactId:o.state.selectedContacts[0]?.id??null}),[n.attributes.value,s.attributes.value,i.state.selectedStartDate,o.state.selectedContacts]),d=l.useCallback(()=>{n.actions.resetValue(),s.actions.resetValue(),o.action.resetField(),i.action.setError(!1)},[n.actions,s.actions,o.action,i.action]);return l.useEffect(()=>{const u=e?.id;if(!(!e||a.current===u)&&(a.current=u,n.actions.changeValue(e.title??""),s.actions.changeValue(e.description??""),e.startAt)){const g=J(e.startAt);i.action.setSelectedStartDate(g),i.action.setSelectedEndDate(g)}},[e?.id]),l.useMemo(()=>({titleField:n,descriptionField:s,date:i,linkContact:o,create:c,resetFields:d}),[n,s,i,o,c,d])},Da=l.createContext({eventDialog:An,createCalendarDialog:An,event:tl,events:Gi,calendar:il,dialogMode:"view",handleCreateEvent:()=>{},handleSelectEvent:()=>{},handleOpenEventCreate:()=>{},handleStartEditingEvent:()=>{},handleSaveUpdatedEvent:()=>{},handleEndEvent:()=>{},handleDeleteEvent:()=>{},handleResizeEvent:()=>{},selectedEvent:{},savingSnackbar:{open:!1,message:"",severity:"info"},handleCloseSnackbar:()=>{},dialogType:"event",setDialogType:()=>{},handleOpenTaskCreate:()=>{},handleOpenCreateFromSlot:()=>{},handleCloseCreateCalendarDialog:()=>{},calendarDialogMode:"create",editingCalendar:null,handleOpenCreateCalendarDialog:()=>{},handleOpenEditCalendarDialog:()=>{},handleSubmitCalendar:async()=>{},tasks:dl,activeCalendarIds:[],setActiveCalendarIds:()=>{},handleCreateTask:()=>{},task:ml,selectedTask:null,taskCalendarId:"",setTaskCalendarId:()=>{},eventCalendarId:"",setEventCalendarId:()=>{},userManuallyChangedColor:!1,setUserManuallyChangedColor:()=>{},myCalendars:[],otherCalendars:[],handleSaveUpdatedTask:()=>{},handleDeleteTask:()=>{},handleToggleTaskCompleted:()=>{},handleDuplicateItem:()=>{},calendarView:"month",setCalendarView:()=>{},calendarDate:new Date,setCalendarDate:()=>{},navigateToDate:()=>{},confirmDeleteDialog:{open:!1,handleClose:()=>{},itemType:"event"},handleConfirmDelete:()=>{},deleteRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmDeleteRecurring:()=>{},editRecurringDialog:{open:!1,handleClose:()=>{}},handleConfirmEditRecurring:()=>{},hiddenTabs:!1}),Bn=e=>e,Un=l.createContext(Bn),xl=({t:e,children:a})=>t.jsx(Un.Provider,{value:e,children:a}),Ue=()=>{const e=l.useContext(Un);return e?(...a)=>{const[n,...s]=a;return e(n,...s)}:(console.warn("[useTranslationContext] using noop, context value is falsy"),Bn)};var bl=Object.defineProperty,vl=(e,a,n)=>a in e?bl(e,a,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[a]=n,Pn=(e,a,n)=>vl(e,typeof a!="symbol"?a+"":a,n);class Cl extends Error{constructor(a,n,s){super(a),Pn(this,"status"),Pn(this,"body"),this.name="ApiError",this.status=n,this.body=s}}async function Pe({url:e,method:a="GET",headers:n,body:s,signal:i}){const o=await globalThis.fetch(e,{method:a,headers:{...s?{"Content-Type":"application/json"}:{},...n??{}},body:s?JSON.stringify(s):void 0,signal:i}),c=(o.headers.get("content-type")||"").includes("application/json")?await o.json().catch(()=>null):await o.text().catch(()=>null);if(!o.ok){const d=typeof c=="object"&&c&&"message"in c?String(c.message):`Request failed with status ${o.status}`;throw new Cl(d,o.status,c)}return c}function De(e,a){const n=e.endsWith("/")?e.slice(0,-1):e,s=a.startsWith("/")?a:`/${a}`;return`${n}${s}`}function Aa(e,a){const n=encodeURIComponent(a);return{CONTACTS:De(e,`/contacts/${n}`),MEDIA:De(e,`/media/${n}`),SETTINGS:De(e,`/settings/${n}`),CALENDAR:De(e,`/calendar/${n}`)}}function We(e){return Aa(e.baseUrl,e.spaceId).CALENDAR}async function jl(e){const a=Aa(e.baseUrl,e.spaceId);return Pe({url:De(a.SETTINGS,"/user")})}async function Sl(e,a,n){const s=`${We(e)}/Events?start=${encodeURIComponent(a)}&end=${encodeURIComponent(n)}`;return Pe({url:s})}async function wl(e,a){const n=We(e);return Pe({url:De(n,"/events"),method:"POST",body:a})}async function Mn(e,a){const n=We(e),{activityId:s,updatedActivity:i,originalOccurrenceDate:o}=a;if(o){const c=o instanceof Date?o.toISOString():o,d=`${n}/events/occurrence/${s}?occurrence=${c}`;return Pe({url:d,method:"PUT",body:i})}return Pe({url:De(n,`/events/${s}`),method:"PUT",body:i})}async function Fa(e,a,n){const s=We(e);if(n){const i=n instanceof Date?n.toISOString():n,o=`${s}/events/${a}?occurrence=${i}`;await Pe({url:o,method:"DELETE"})}else await Pe({url:De(s,`/events/${a}`),method:"DELETE"})}async function Il(e,a){const n=We(e);return Pe({url:De(n,`/events/${a}`),method:"PUT",body:{finalized:!0}})}async function Tl(e,a){const n=We(e);return Pe({url:De(n,`/Task/${a}`)})}async function El(e,a){const n=We(e);return Pe({url:De(n,"/Task"),method:"POST",body:a})}async function Rn(e,a,n){const s=We(e);return Pe({url:De(s,`/Task/${a}`),method:"PUT",body:n})}async function kl(e,a){const n=We(e);await Pe({url:De(n,`/Task/${a}`),method:"DELETE"})}async function Dl(e,a,n){const s=We(e);return Pe({url:De(s,`/Task/${a}`),method:"PUT",body:{isCompleted:n}})}async function Al(e){const a=We(e);return Pe({url:De(a,"/Calendar")})}async function Fl(e,a){const n=We(e);return Pe({url:De(n,"/Calendar"),method:"POST",body:a})}async function $l(e,a,n){const s=We(e);return Pe({url:De(s,`/Calendar/${a}`),method:"PUT",body:n})}function $a(e){const a=J(e),n=a.minute();return n===0||n===30?a.second(0).millisecond(0):n>0&&n<30?a.minute(30).second(0).millisecond(0):a.add(1,"hour").minute(0).second(0).millisecond(0)}const $t=e=>{if(!e)return e;const a=e.indexOf("_");if(a===-1)return e;const n=e.substring(0,a),s=e.substring(a+1);return/^\d{14}$/.test(s)?n:e},Bt=e=>e?e.parentId?e.parentId:$t(e.id):"",Bl=({children:e,externalOpen:a,externalOnClose:n,externalMode:s="create",externalType:i="event",externalEventCalendarId:o,externalTaskCalendarId:c,externalSelectedEvent:d,externalSelectedTask:u,hiddenTabs:g=!1,externalOnActionComplete:x})=>{const{t:y}=_e.useTranslation(),p=Dn(),h=(b,...U)=>y(b,...U),[v,j]=l.useState(i),[f,I]=l.useState(null),[C,w]=l.useState(null),[S,z]=l.useState(s),[k,F]=l.useState(c||""),[$,T]=l.useState(o||""),[V,W]=l.useState(!1),[_,Y]=l.useState("create"),[P,X]=l.useState(null),[K,E]=l.useState({open:!1,message:"",severity:"info"}),[M,B]=l.useState(!1),[R,N]=l.useState("event"),[H,q]=l.useState(!1),[te,le]=l.useState(!1),[he,fe]=l.useState(null),Ce="trii_calendar_last_view",L=b=>b==="month"||b==="week"||b==="day",[be,de]=l.useState(()=>{try{const b=localStorage.getItem(Ce);return L(b)?b:"month"}catch{return"month"}}),[ve,pe]=l.useState(new Date),qe=b=>{pe(b),de("day")},G=Fn(),Ie=Fn(),ee=rl(f??void 0),ie=fl(C??void 0);l.useEffect(()=>{s!==void 0&&z(s)},[s]),l.useEffect(()=>{i!==void 0&&j(i)},[i]),l.useEffect(()=>{o!==void 0&&T(o)},[o]),l.useEffect(()=>{c!==void 0&&F(c)},[c]),l.useEffect(()=>{d!==void 0&&I(d)},[d]),l.useEffect(()=>{u!==void 0&&w(u)},[u]),l.useEffect(()=>{if(a!==void 0)if(a&&!G.open){if(s==="create"){ee.resetFields(),ie.resetFields(),W(!1),I(null),w(null),ee.date.action.setError(!1),ie.date.action.setError(!1);const b=$a(new Date),U=b.add(30,"minute");if(i==="task"?(ie.date.action.setSelectedStartDate(b),ie.date.action.setSelectedEndDate(b)):(ee.date.action.setSelectedStartDate(b),ee.date.action.setSelectedEndDate(U)),!o){const A=Re?.[0]??et?.[0]?.id??Ae?.[0]?.id??"";A&&T(A)}if(!c){const A=Re?.[0]??Ae?.[0]?.id??"";A&&F(A)}}G.handleOpen()}else!a&&G.open&&G.handleClose()},[a]);const ae=()=>{(S==="edit"||S==="create")&&(ee.resetFields(),ie.resetFields()),ee.date.action.setError(!1),ie.date.action.setError(!1),n?n():G.handleClose()},Te=cl(),Ze=_==="create",[Ae,la]=l.useState([]),[ca,Pt]=l.useState([]),[st,rt]=l.useState(""),Mt="calendar_selected_ids",[Re,ot]=l.useState(()=>{try{const b=localStorage.getItem(Mt);return b?JSON.parse(b):[]}catch{return[]}}),it=Ki(Re,ca),Rt=ul(Re),da=()=>{E(b=>({...b,open:!1}))},Ge=l.useCallback((b,U,A)=>{x?.(b,U,A)},[x]);function Nt(b){const U=b?.startAt??b?.start,A=b?.endAt??b?.end??U;return{startAt:U,endAt:A}}const{myCalendars:et,otherCalendars:ua}=l.useMemo(()=>{const b=Ae??[];if(!st)return{myCalendars:b,otherCalendars:[]};const U=b.filter(Q=>Q.userId===st),A=b.filter(Q=>Q.userId!==st);return U.length===0&&b.length>0?{myCalendars:b,otherCalendars:[]}:{myCalendars:U,otherCalendars:A}},[Ae,st]),Ke=l.useCallback(async()=>{if(p)try{const b=new Date,U=b.getUTCFullYear(),A=b.getUTCMonth(),Q=new Date(Date.UTC(U,A-1,1,0,0,0)).toISOString(),re=new Date(Date.UTC(U,A+2,1,0,0,0)).toISOString(),je=await Sl(p,Q,re);Pt(je)}catch(b){console.error("Error fetching activities:",b)}},[p]),Je=l.useCallback(async b=>{if(p)try{const U=await Tl(p,b);Rt.setTasks(U.map(A=>({id:A.id,title:A.title||"",start:new Date(A.startAt),end:new Date(A.endAt||A.startAt),startAt:A.startAt,endAt:A.endAt,description:A.description,calendarId:A.calendarId,isCompleted:A.isCompleted||!1,relatedContact:A.relatedContact,kind:"task"})))}catch(U){console.error("Error fetching tasks:",U)}},[p]),pt=l.useCallback(async()=>{if(p)try{const b=await Al(p);la(b)}catch(b){console.error("Error fetching calendars:",b)}},[p]);l.useEffect(()=>{if(!G.open||S!=="create")return;const b=et?.[0]?.id??Ae?.[0]?.id??"";b&&($||T(b),k||F(b))},[Ae,et]),l.useEffect(()=>{if(!p)return;pt(),Ke();let b=!1;return jl(p).then(U=>{b||rt(U.uid)}).catch(()=>{}),()=>{b=!0}},[p,pt,Ke]);function Ye(b,U,A){j(b),z("create"),I(null),w(null),ee.resetFields(),ie.resetFields(),W(!1);const Q=$a(U??new Date),re=A?$a(A):Q.add(30,"minute"),je=re.isAfter(Q)?re:Q.add(30,"minute");if(b==="task"){ie.date.action.setSelectedStartDate(Q),ie.date.action.setSelectedEndDate(Q),ie.date.action.setError(!1);const ze=Re?.[0]??Ae?.[0]?.id??"";F(ze)}else{ee.date.action.setSelectedStartDate(Q),ee.date.action.setSelectedEndDate(je),ee.date.action.setError(!1);const ze=Re?.[0]??et?.[0]?.id??Ae?.[0]?.id??"";T(ze);const Ee=et?.find(ke=>ke.id===ze)??Ae?.find(ke=>ke.id===ze);Ee?.color&&ee.colorField.actions.changeValue(Ee.color)}G.handleOpen()}function ft(){Ye("event")}function xt(){ee.date.action.setError(!1),ie.date.action.setError(!1),z("edit")}function Lt(b){const{startAt:U,endAt:A}=Nt(b),Q={...b,kind:"event",startAt:U,endAt:A,details:b?.details??""};j("event"),I(Q),w(null),T(Q.calendarId??""),z("view"),ee.date.action.setError(!1),ie.date.action.setError(!1),G.handleOpen()}async function pa(b){if(!p)return;let U;if(b)U={title:b.title,details:b.description||b.details||"",startAt:new Date(b.startAt),endAt:new Date(b.endAt),allDay:b.allDay,location:b.location||"",isPrivate:b.isPrivate||!1,color:b.color||"",rule:b.rule||"",contactId:b.relatedContactId||null,sharedWith:b.sharedWith||[],notifications:(b.notifications||[]).map(re=>({id:Zt(),timeValue:re.value,timePeriod:re.type,sendToContact:re.sendToContact||!1})),eventTypeId:"",repeatId:""};else{const re=ee.create();if(!re.title){E({open:!0,message:h("global.nameRequired"),severity:"error"});return}U={...re,startAt:new Date(re.startAt),endAt:new Date(re.endAt),contactId:re.relatedContactId||null,eventTypeId:"",repeatId:"",notifications:re.notifications.map(je=>({...je,id:je.id||Zt()}))}}const A=$;if(!A){E({open:!0,message:h("global.errorSavingChanges"),severity:"error"});return}const Q={...U,calendarId:A};try{E({open:!0,message:h("global.savingChanges"),severity:"info"}),ee.resetFields(),ae();const re=await wl(p,Q);Re.includes(A)||ot(je=>[...je,A]),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("created","event",re),Ke()}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}async function zt(){if(!f?.id)return;const b=ee.create(),U=$||f.calendarId||"";if(!U){E({open:!0,message:h("global.errorSavingChanges"),severity:"error"});return}f.originalOccurrenceDate!=null?(fe(()=>async A=>{await Ot(b,U,A)}),le(!0)):await Ot(b,U,!1)}async function Ot(b,U,A){const Q=f?.originalOccurrenceDate!=null,re={title:b.title,details:b.details,startAt:b.startAt,endAt:b.endAt,allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:U,notifications:b.notifications,sharedWith:b.sharedWith};(A||!Q)&&(re.rule=b.rule);const je=Bt(f),ze={updatedActivity:re,activityId:je};Q&&!A&&(ze.originalOccurrenceDate=f.originalOccurrenceDate);try{const Ee=await Mn(p,ze);Ee&&I(Ee),ae(),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("updated","event",Ee),Ke()}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}async function Wt(b){le(!1),he&&(await he(b),fe(null))}async function _t(){f?.originalOccurrenceDate!=null?q(!0):(N("event"),B(!0))}async function ha(){if(p)if(B(!1),R==="event")try{const b=Bt(f);ae(),await Fa(p,b),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("deleted","event",{id:b}),Ke()}catch(b){console.error("Error deleting event:",b);const U=b?.message?.includes("duplicate key")?h("global.eventAlreadyDeleted","El evento ya fue eliminado"):h("global.errorSavingChanges");E({open:!0,message:U,severity:"error"})}else{if(!C?.id)return;try{const b=$t(C.id),U=C.calendarId;ae(),await kl(p,b),w(null),ie.resetFields(),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("deleted","task",{id:b}),U&&Je(U)}catch(b){console.error("Error deleting task:",b);const U=b?.message?.includes("duplicate key")?h("global.taskAlreadyDeleted","La tarea ya fue eliminada"):h("global.errorSavingChanges");E({open:!0,message:U,severity:"error"})}}}async function ma(b){q(!1);const U=Bt(f);ae();try{b?await Fa(p,U):await Fa(p,U,f.originalOccurrenceDate),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("deleted","event",{id:U}),Ke()}catch(A){console.error("Error deleting recurring event:",A);const Q=A?.message?.includes("duplicate key")?h("global.eventAlreadyDeleted","El evento ya fue eliminado"):h("global.errorSavingChanges");E({open:!0,message:Q,severity:"error"})}}async function Vt(){if(!p)return;const b=Bt(f);await Il(p,b),ae()}async function qt(b,U,A){const Q=U instanceof Date?U:new Date(U),re=A instanceof Date?A:new Date(A),je=Q.toISOString(),ze=re.toISOString(),Ee=b.kind==="task";!Ee&&b.originalOccurrenceDate!=null?(I(b),fe(()=>async ke=>{await Yt(b,je,ze,Q,re,Ee,ke)}),le(!0)):await Yt(b,je,ze,Q,re,Ee,!1)}async function Yt(b,U,A,Q,re,je,ze){je||it.setEvents(Ee=>Ee.map(ke=>ke.id===b.id?{...ke,start:Q,end:re,startAt:Q,endAt:re}:ke)),E({open:!0,message:h("global.savingChanges"),severity:"info"});try{if(je){const Ee=$t(b.id),ke={title:b.title,description:b.description,startAt:U,endAt:A,calendarId:b.calendarId,allDay:b.allDay||!1,isCompleted:b.isCompleted||!1};await Rn(p,Ee,ke),await Je(b.calendarId)}else{const Ee=Bt(b),ke=b.originalOccurrenceDate!=null,Ra={title:b.title,details:b.details,startAt:new Date(U),endAt:new Date(A),allDay:b.allDay,isPrivate:b.isPrivate,location:b.location,color:b.color,calendarId:b.calendarId};(ze||!ke)&&(Ra.rule=b.rule);const Na={updatedActivity:Ra,activityId:Ee};ke&&!ze&&(Na.originalOccurrenceDate=b.originalOccurrenceDate),await Mn(p,Na)}E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ke()}catch{je||it.setEvents(Ee=>Ee.map(ke=>ke.id===b.id?{...ke,start:b.start,end:b.end}:ke)),E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}function ga(b,U){Ye("event",b,U)}function Ht(){Te.nameField.actions.resetValue(),Te.handleColorChange("#ffffff"),Te.shareWithUsers.action.resetField(),Te.handleGoogleCalendarChange(null)}function Gt(){Ht(),X(null),Y("create"),Ie.handleClose()}function m(b){Te.nameField.actions.changeValue(b.title??""),Te.nameField.actions.onSuccess(),Te.handleColorChange(b.color??"#ffffff"),Te.shareWithUsers.action.setUserIds(b.sharedWith??[]),Te.handleGoogleCalendarChange(b.googleCalendar??null)}function D(){Y("create"),X(null),Ht(),Ie.handleOpen()}function O(b){Y("edit"),X(b),m(b),Ie.handleOpen()}async function Z(){if(!p)return;const b=(Te.nameField.attributes.value??"").trim();if(!b){E({open:!0,message:h("global.nameRequired"),severity:"error"});return}const U=Te.shareWithUsers.field.userIds,A={title:b,color:Te.color,sharedWith:U.length?U:void 0,googleCalendar:Te.googleCalendar};try{if(Ze)await Fl(p,A);else{const Q=P?.id;if(!Q)return;await $l(p,Q,A)}Gt(),E({open:!0,message:h(Ze?"global.calendarCreatedSuccess":"global.calendarUpdatedSuccess"),severity:"success"}),pt()}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}async function ce(b){if(!p)return;let U;if(b?U={title:b.title,description:b.description||"",startAt:b.startAt,contactId:b.relatedContactId||null}:U=ie.create(),!U.title){E({open:!0,message:h("global.nameRequired"),severity:"error"});return}const A=k;if(!A){E({open:!0,message:h("global.errorSavingChanges"),severity:"error"});return}const Q={...U,calendarId:A};try{E({open:!0,message:h("global.savingChanges"),severity:"info"}),ie.resetFields(),ae();const re=await El(p,Q);Re.includes(A)||ot(je=>[...je,A]),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("created","task",re),Je(A)}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}function ue(){Ye("task")}async function oe(){if(!p||!C?.id)return;const b=ie.create();if(!b.title){E({open:!0,message:h("global.nameRequired"),severity:"error"});return}const U=k||C.calendarId;if(!U){E({open:!0,message:h("global.errorSavingChanges"),severity:"error"});return}const A={...b,calendarId:U};try{E({open:!0,message:h("global.savingChanges"),severity:"info"});const Q=$t(C.id),re=await Rn(p,Q,A);re&&w(re),ae(),E({open:!0,message:h("global.changesSaved"),severity:"success"}),Ge("updated","task",re),Je(U)}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}async function se(){C?.id&&(N("task"),B(!0))}async function Fe(){if(!p||!C?.id)return;const b=!C.isCompleted;try{const U=$t(C.id),A=C.calendarId,Q=await Dl(p,U,b);Q&&w(Q),E({open:!0,message:h("global.changesSaved"),severity:"success"}),A&&Je(A)}catch{E({open:!0,message:h("global.errorSavingChanges"),severity:"error"})}}function me(){const b=v==="event",U=b?f:C;if(!U)return;const A={...U};b?(I(null),z("create"),W(!0),setTimeout(()=>{if(ee.titleField.actions.changeValue(A.title??""),ee.descriptionField.actions.changeValue(A.details??A.description??""),ee.locationField.actions.changeValue(A.location??""),ee.colorField.actions.changeValue(A.color??""),ee.setAllDay(A.allDay??!1),ee.setIsPrivate(A.isPrivate??!1),ee.setRecurrenceRule(A.rule??""),ee.date.action.setSelectedStartDate(J(A.startAt)),ee.date.action.setSelectedEndDate(J(A.endAt)),ee.date.action.setError(!1),ee.notifications.action.resetNotifications(),A.relatedContact?.id&&ee.linkContact.action.handleSelectContact(A.relatedContact),A.sharedWith){const Q=A.sharedWith.map(re=>re.id);ee.shareWithUsers.action.setUserIds(Q)}T(A.calendarId??$)},50)):(w(null),z("create"),setTimeout(()=>{ie.titleField.actions.changeValue(A.title??""),ie.descriptionField.actions.changeValue(A.description??""),ie.date.action.setSelectedStartDate(J(A.startAt)),ie.date.action.setSelectedEndDate(J(A.startAt)),ie.date.action.setError(!1),A.relatedContact?.id&&ie.linkContact.action.handleSelectContact(A.relatedContact),F(A.calendarId??k)},50))}function xe(b){const{startAt:U,endAt:A}=Nt(b),Q={...b,kind:"task",startAt:U,endAt:A,description:b?.description??""};j("task"),w(Q),F(Q.calendarId??""),T(Q.calendarId??""),I(null),z("view"),ee.date.action.setError(!1),ie.date.action.setError(!1),G.handleOpen()}function Le(b){return b?.kind==="task"?xe(b):Lt(b)}l.useEffect(()=>{try{Re&&localStorage.setItem(Mt,JSON.stringify(Re))}catch{}},[Re]),l.useEffect(()=>{Ae?.length&&ot(b=>{const U=new Set(Ae.map(Q=>Q.id)),A=(b??[]).filter(Q=>U.has(Q));return A.length?A:Ae.map(Q=>Q.id)})},[Ae]),l.useEffect(()=>{try{localStorage.setItem(Ce,be)}catch{}},[be]);const tt={eventDialog:{...G,handleClose:ae},dialogMode:S,createCalendarDialog:Ie,event:ee,calendar:Te,events:it,handleCreateEvent:pa,handleSelectEvent:Le,handleOpenEventCreate:ft,handleStartEditingEvent:xt,handleSaveUpdatedEvent:zt,handleEndEvent:Vt,handleDeleteEvent:_t,handleResizeEvent:qt,selectedEvent:f,savingSnackbar:K,handleCloseSnackbar:da,dialogType:v,setDialogType:j,handleOpenTaskCreate:ue,handleOpenCreateFromSlot:ga,handleCloseCreateCalendarDialog:Gt,calendarDialogMode:_,editingCalendar:P,handleOpenCreateCalendarDialog:D,handleOpenEditCalendarDialog:O,handleSubmitCalendar:Z,tasks:Rt,activeCalendarIds:Re,setActiveCalendarIds:ot,handleCreateTask:ce,task:ie,selectedTask:C,taskCalendarId:k,setTaskCalendarId:F,eventCalendarId:$,setEventCalendarId:T,userManuallyChangedColor:V,setUserManuallyChangedColor:W,myCalendars:et,otherCalendars:ua,handleSaveUpdatedTask:oe,handleDeleteTask:se,handleToggleTaskCompleted:Fe,handleDuplicateItem:me,calendarView:be,setCalendarView:de,calendarDate:ve,setCalendarDate:pe,navigateToDate:qe,confirmDeleteDialog:{open:M,handleClose:()=>B(!1),itemType:R},handleConfirmDelete:ha,deleteRecurringDialog:{open:H,handleClose:()=>q(!1)},handleConfirmDeleteRecurring:ma,editRecurringDialog:{open:te,handleClose:()=>{le(!1),fe(null)}},handleConfirmEditRecurring:Wt,hiddenTabs:g};return t.jsx(xl,{t:h,children:t.jsx(Da.Provider,{value:tt,children:e})})},ra=r.styled(r.Box)(()=>({display:"flex",flexDirection:"column",gap:.5})),Ba=r.styled(r.Box)(()=>({display:"flex",alignItems:"baseline",gap:1})),Ua=r.styled(r.Typography)(()=>({marginX:"8px",marginTop:"-15px",color:"text.primary"})),yt="DD/MM/YYYY",oa="HH:mm",Ul=({selectedStartDate:e,selectedEndDate:a,handleSelectStart:n,handleSelectEnd:s,isError:i,disabled:o,hideLabel:c=!1,allDay:d=!1})=>{const u=Ue(),g=l.useMemo(()=>a.diff(e,"minute"),[e,a]),x=l.useMemo(()=>{if(g===0)return"0 min";const f=Math.floor(g/60),I=g%60;return f===0?`${I} min`:I===0?`${f} h`:`${f}.${Math.round(I/60*10)} h`},[g]),y=f=>{if(!f)return;const I=f.hour(e.hour()).minute(e.minute()).second(0).millisecond(0),C=f.hour(a.hour()).minute(a.minute()).second(0).millisecond(0);n(I),s(C)},p=f=>{if(!f)return;const I=f.hour(0).minute(0).second(0).millisecond(0);n(I)},h=f=>{if(!f)return;const I=f.hour(23).minute(59).second(59).millisecond(999);s(I)},v=f=>{if(!f)return;const I=e.hour(f.hour()).minute(f.minute()).second(0).millisecond(0),C=I.add(g,"minute");n(I),s(C)},j=f=>{if(!f)return;let I=e.hour(f.hour()).minute(f.minute()).second(0).millisecond(0);(I.isBefore(e)||I.isSame(e))&&(I=I.add(1,"day")),s(I)};return o?t.jsxs(ra,{children:[!c&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),d?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,marginTop:"10px"},children:[t.jsx(r.Typography,{variant:"body1",children:e.format(yt)}),t.jsx(r.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(r.Typography,{variant:"body1",children:a.format(yt)})]}):t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"body1",sx:{mb:1},children:e.format(yt)}),t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(r.Typography,{variant:"body1",children:e.format(oa)}),t.jsx(r.Typography,{variant:"body1",color:"text.secondary",children:"\u2013"}),t.jsx(r.Typography,{variant:"body1",children:a.format(oa)}),g>0&&t.jsxs(r.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1},children:["(",x,")"]})]})]})]}):t.jsxs(ra,{children:[!c&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:u("global.date")}),t.jsx(Ve.LocalizationProvider,{dateAdapter:Va.AdapterDayjs,children:d?t.jsxs(Ba,{children:[t.jsx(Ve.DatePicker,{disabled:o,format:yt,label:u("global.from"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:p,minDate:J(),sx:{flex:1}}),t.jsx(Ua,{variant:"body1",children:"\u2013"}),t.jsx(Ve.DatePicker,{disabled:o,format:yt,label:u("global.to"),slotProps:{textField:()=>({size:"small"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:a,onChange:h,minDate:e,sx:{flex:1}})]}):t.jsxs(t.Fragment,{children:[t.jsx(r.Box,{sx:{mb:1},children:t.jsx(Ve.DatePicker,{disabled:o,format:yt,slotProps:{textField:()=>({size:"small",fullWidth:!0}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:y,minDate:J()})}),t.jsxs(Ba,{children:[t.jsx(Ve.TimePicker,{disabled:o,format:oa,ampm:!1,minutesStep:15,slotProps:{textField:()=>({label:u("global.from"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:e,onChange:v,sx:{alignSelf:"baseline",flex:1}}),t.jsx(Ua,{variant:"body1",children:"\u2013"}),t.jsxs(r.Box,{sx:{flex:1,display:"flex",flexDirection:"column",gap:.5},children:[t.jsx(Ve.TimePicker,{disabled:o,format:oa,ampm:!1,minutesStep:15,slotProps:{textField:()=>({label:u("global.to"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:f=>f.palette.background.panel}}}},value:a,onChange:j,sx:{alignSelf:"baseline",width:"100%"}}),g>0&&t.jsxs(r.Typography,{variant:"caption",sx:{color:"text.secondary",fontSize:"0.7rem",ml:1.5},children:["(",x,")"]})]})]})]})}),i&&t.jsx(r.Fade,{in:i,children:t.jsx(r.Typography,{color:"red",variant:"caption",sx:{mt:1,ml:"10px"},children:u("calendarView.reminders.errorDate")})})]})};r.styled(r.Box)(()=>({display:"flex",gap:2,alignItems:"center"})),r.styled(r.Box)(({theme:e})=>({width:"15%",userSelect:"none",color:e.palette.text.secondary}));const Oe=({children:e,title:a})=>t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{mb:1,userSelect:"none"},children:a}),e]}),Pa=({titleField:e,disabled:a,variantMode:n="default"})=>{const s=Ue(),{value:i,type:o,...c}=e.attributes,d=i||"";return n==="inline"?t.jsx(r.TextField,{...c,value:d,disabled:a,autoFocus:!0,fullWidth:!0,placeholder:s("global.addTitle"),variant:"standard",InputProps:{disableUnderline:!1,sx:{fontSize:22,fontWeight:500}},sx:{"& .MuiInput-underline:before":{borderBottomColor:"divider"},"& .MuiInput-underline:hover:before":{borderBottomColor:"text.secondary"},"& .MuiInput-underline:after":{borderBottomWidth:2}}}):a?t.jsx(Oe,{title:s("global.title"),children:t.jsx(r.Typography,{variant:"body1",sx:{py:.5,color:u=>u.palette.text.secondary,fontSize:"0.9rem"},children:d||"-"})}):t.jsx(Oe,{title:s("global.title"),children:t.jsx(r.TextField,{...c,value:d,disabled:a,autoFocus:!0,fullWidth:!0,variant:"outlined",size:"small",type:o})})},Pl=r.styled(r.Box)(()=>({marginBottom:"6px",padding:"8px 16px",border:"1px solid lightgray",borderRadius:"3px"})),Ml=r.styled(r.Box)(()=>({display:"flex",gap:"8px",alignItems:"center",userSelect:"none"})),Rl=r.styled(r.TextField)(()=>({width:"13%"})),Nl=r.styled(r.Select)(()=>({width:"23%"})),Ll=r.styled(r.Box)(()=>({display:"flex",gap:1,width:"100%",alignItems:"center"})),zl=r.styled(r.IconButton)(()=>({ml:"auto"})),Ol=[{title:"minute",value:Jt.EventNotificationPeriod.MINUTE},{title:"hour",value:Jt.EventNotificationPeriod.HOUR},{title:"day",value:Jt.EventNotificationPeriod.DAY}],Wl=({data:e,timeValueHandler:a,timePeriodHandler:n,sendToContactHandler:s,deleteHandler:i})=>{const o=Ue(),c=e.timeValue??0;return t.jsxs(Pl,{children:[t.jsxs(Ml,{children:[t.jsx(r.Typography,{variant:"body2",sx:{userSelect:"none"},children:o("calendarView.reminders.sendReminder.pt1")}),t.jsx(Rl,{onChange:d=>a(d,e.id),value:c,type:"text",variant:"outlined",size:"small"}),t.jsx(Nl,{onChange:d=>n(d,e.id),value:e.timePeriod,variant:"outlined",size:"small",MenuProps:{PaperProps:{sx:{backgroundColor:d=>d.palette.background.panel}}},children:Ol.map(d=>t.jsx(r.MenuItem,{value:d.value,children:o(`calendarView.reminders.timePeriod.${d.title}`)},d.value))}),t.jsx(r.Typography,{variant:"body2",sx:{userSelect:"none"},children:o("calendarView.reminders.sendReminder.pt2")})]}),t.jsxs(Ll,{children:[t.jsx(r.FormControlLabel,{sx:{display:"flex",alignItems:"center"},label:o("calendarView.reminders.sendReminderToContact"),control:t.jsx(r.Checkbox,{checked:e.sendToContact,onChange:d=>s(d,e.id),color:"secondary"})}),t.jsx(zl,{onClick:()=>i(e.id),sx:{ml:"auto",color:"text.disabled"},children:t.jsx(Kt,{})})]})]})},_l=r.styled(r.Box)`
17
17
  display: 'flex',
18
18
  flexDirection: 'column',
19
19
  gap: 1,
20
- `,Yl=r.styled(r.Box)(()=>({display:"flex",justifyContent:"space-between",alignItems:"baseline",userSelect:"none"})),ql=({notificationsField:e,disabled:a})=>{const n=$e(),{addNotification:s,deleteNotification:i,handleReminderChange:o,handleTimeFieldChange:c,handleTimePeriodChange:d}=e.action,u=e.notifications.length>0;return t.jsxs(Vl,{children:[t.jsxs(Yl,{children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{userSelect:"none"},children:n("calendarView.reminders.title")}),!a&&t.jsx(r.Button,{disabled:a,startIcon:t.jsx(La,{}),size:"small",variant:"outlined",onClick:s,color:"secondary",children:n("calendarView.reminders.addReminder")})]}),t.jsx(r.Box,{sx:{pt:1,px:.5},children:u?e.notifications.map(m=>t.jsx(_l,{data:m,deleteHandler:i,sendToContactHandler:o,timePeriodHandler:d,timeValueHandler:c},m.id)):a?t.jsx(r.Typography,{variant:"body1",sx:{py:.5},children:"-"}):null})]})},Rn=({descriptionField:e,disabled:a})=>{const n=$e(),{value:s,type:i,...o}=e.attributes,c=s||"";return a?t.jsx(ze,{title:n("global.description"),children:t.jsx(r.Typography,{variant:"body1",sx:{py:.5,whiteSpace:"pre-wrap"},children:c||"-"})}):t.jsx(ze,{title:n("global.description"),children:t.jsx(r.TextField,{...o,value:c,disabled:a,size:"small",multiline:!0,maxRows:5,fullWidth:!0,variant:"outlined"})})},Gl=({onPlaceSelected:e})=>{const a=l.useRef(null),n=l.useRef(null),s=l.useRef(null),i=l.useRef(null),[o,c]=l.useState([]),[d,u]=l.useState(!1),m=$e();l.useEffect(()=>{if(!a.current)return;const p=()=>{if(!window.google?.maps?.places)return console.warn("Google Places API no est\xE1 disponible a\xFAn"),!1;n.current=new window.google.maps.places.AutocompleteService;const y=document.createElement("div");return s.current=new window.google.maps.places.PlacesService(y),i.current=new window.google.maps.places.AutocompleteSessionToken,!0};if(!p()){const y=setTimeout(()=>{p()},500);return()=>clearTimeout(y)}},[]);const x=p=>{const y=p.target.value;if(!y||y.length<3||!n.current){c([]),u(!1);return}n.current.getPlacePredictions({input:y,componentRestrictions:{country:"ar"},types:["geocode"],sessionToken:i.current||void 0},(v,C)=>{C===window.google.maps.places.PlacesServiceStatus.OK&&v?(c(v),u(!0)):(c([]),u(!1))})},g=(p,y)=>{s.current&&s.current.getDetails({placeId:p,fields:["geometry","formatted_address"],sessionToken:i.current||void 0},(v,C)=>{if(C===window.google.maps.places.PlacesServiceStatus.OK&&v?.geometry?.location){const f=v.geometry.location.lat(),S=v.geometry.location.lng(),j=v.formatted_address??y;e({lat:f,lng:S},j),a.current&&(a.current.value=j),u(!1),c([]),i.current=new window.google.maps.places.AutocompleteSessionToken}})};return l.useEffect(()=>{const p=y=>{a.current&&!a.current.contains(y.target)&&u(!1)};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[]),t.jsxs("div",{style:{position:"absolute",width:"100%",maxWidth:300,margin:"0 auto",zIndex:13e3,top:"10px",left:"10px"},children:[t.jsx("input",{ref:a,placeholder:m("global.searchLocation","Buscar en Google Maps"),onChange:x,onFocus:()=>o.length>0&&u(!0),style:{width:"100%",padding:"12px 16px 5px",borderRadius:"24px",border:"1px solid #ccc",backgroundColor:"white",fontSize:"15px",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",outline:"none",position:"relative",zIndex:13e3}}),d&&o.length>0&&t.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,backgroundColor:"white",borderRadius:"8px",boxShadow:"0 2px 8px rgba(0,0,0,0.15)",marginTop:"4px",maxHeight:"300px",overflowY:"auto",zIndex:13001},children:o.map(p=>t.jsxs("div",{onClick:()=>g(p.place_id,p.description),style:{padding:"12px 16px",cursor:"pointer",borderBottom:"1px solid #f0f0f0",fontSize:"14px",transition:"background-color 0.2s"},onMouseEnter:y=>{y.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:y=>{y.currentTarget.style.backgroundColor="white"},children:[t.jsx("div",{style:{fontWeight:500},children:p.structured_formatting.main_text}),t.jsx("div",{style:{fontSize:"12px",color:"#666",marginTop:"2px"},children:p.structured_formatting.secondary_text})]},p.place_id))})]})},Nn="AIzaSyAQ1bUt3y6UoAhbi5-HAwYwaFx71pAiaKU",Ln=["places"],$a={apiKey:Nn,libraries:Ln,loading:"async"},na=()=>!!(window.google?.maps?.Map&&window.google?.maps?.Marker&&window.google?.maps?.Geocoder&&window.google?.maps?.places),On=(e=Nn,a=Ln)=>{if(na())return Promise.resolve();const n=()=>{document.querySelectorAll('script[src*="maps.googleapis.com"]').forEach(s=>{s.parentNode?.removeChild(s)})};return document.getElementById("google-maps-script")?new Promise((s,i)=>{let o=0;const c=100,d=setInterval(()=>{o++,na()?(clearInterval(d),s()):o>=c&&(clearInterval(d),n(),On(e,a).then(s).catch(i))},100)}):new Promise((s,i)=>{try{n();const o="initGoogleMaps";window[o]=()=>{na()?s():setTimeout(()=>{na()||console.warn("Google Maps API se carg\xF3 pero algunos componentes no est\xE1n disponibles"),s()},500)};const c=document.createElement("script");c.id="google-maps-script",c.type="text/javascript";const d=Array.isArray(a)?a.join(","):a;c.src=`https://maps.googleapis.com/maps/api/js?key=${e}&libraries=${d}&callback=${o}&loading=async`,c.async=!0,c.defer=!0,c.onerror=()=>{delete window[o],i(new Error("Error al cargar Google Maps API"))},document.head.appendChild(c)}catch(o){i(o)}})},Ut=(e,a,n=18,s=400,i=400,o="red",c=$a.apiKey)=>`https://maps.googleapis.com/maps/api/staticmap?center=${e},${a}&zoom=${n}&size=${s}x${i}&markers=color:${o}%7Clabel:A%7C${e},${a}&key=${c}`,Hl=({onLocationChange:e,initialLocation:a})=>{const n=l.useRef(null),s=l.useRef(null),i=l.useRef(null),o=l.useRef(null),[c,d]=l.useState(!0),[u,m]=l.useState(!1),[x,g]=l.useState(a||null),p=18,y=l.useCallback(j=>{g(j),e(j)},[e]);l.useEffect(()=>{let j=!0;(async()=>{try{if(await On($a.apiKey,$a.libraries),!window.google?.maps?.Map||!window.google?.maps?.Geocoder){console.error("Google Maps APIs no est\xE1n completamente disponibles"),d(!1);return}window.google?.maps?.Geocoder&&(o.current=new window.google.maps.Geocoder),d(!1),setTimeout(()=>{j&&v()},100)}catch(w){console.error("Error al cargar Google Maps:",w),d(!1)}})(),a||navigator.geolocation.getCurrentPosition(w=>{const I=w.coords.latitude,z=w.coords.longitude,E=I.toString(),D=z.toString(),F=Ut(I,z,p);y({lat:E,lng:D,title:"",description:"",url:F})},w=>{console.error("Error getting location:",w);const I=-34.6037,z=-58.3816;y({lat:I.toString(),lng:z.toString(),title:"",description:"",url:Ut(I,z,p)})})},[a,y,p]),l.useEffect(()=>{u&&x&&f()},[u,x]),l.useEffect(()=>()=>{i.current&&(i.current.setMap(null),i.current=null)},[]);const v=()=>{if(!n.current){console.warn("Contenedor del mapa no disponible");return}if(!window.google?.maps){console.warn("Google Maps API no disponible a\xFAn");return}try{const j={zoom:p,disableDefaultUI:!1,zoomControl:!0,mapTypeControl:!1,streetViewControl:!1,fullscreenControl:!1};s.current=new window.google.maps.Map(n.current,j),s.current.addListener("click",w=>{C(w)}),m(!0)}catch(j){console.error("Error inicializando mapa:",j)}},C=j=>{if(!j.latLng||!o.current)return;const w={lat:j.latLng.lat(),lng:j.latLng.lng()};i.current?i.current.setPosition(w):s.current&&(i.current=new window.google.maps.Marker({position:w,map:s.current})),o.current.geocode({location:w},(I,z)=>{if(z==="OK"&&I&&I[0]){const E=I[0].formatted_address,D=Ut(w.lat,w.lng,p);y({lat:w.lat.toString(),lng:w.lng.toString(),title:E||"",description:"",url:D})}else{const E=Ut(w.lat,w.lng,p);y({lat:w.lat.toString(),lng:w.lng.toString(),title:`${w.lat.toFixed(6)}, ${w.lng.toFixed(6)}`,description:"",url:E})}})},f=()=>{if(!(!s.current||!x))try{const j={lat:parseFloat(x.lat),lng:parseFloat(x.lng)};s.current.setCenter(j),i.current?i.current.setPosition(j):i.current=new window.google.maps.Marker({position:j,map:s.current})}catch(j){console.error("Error actualizando mapa:",j)}},S=(j,w)=>{const I=Ut(j.lat,j.lng,p);y({lat:j.lat.toString(),lng:j.lng.toString(),title:w||"",description:"",url:I})};return!x||c?t.jsx(r.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:t.jsx(r.CircularProgress,{})}):t.jsxs(r.Box,{sx:{position:"relative",height:"calc(100vh - 305px)"},children:[t.jsx(Gl,{onPlaceSelected:S}),t.jsx("div",{style:{height:"100%"},ref:n})]})},Kl=({open:e,onClose:a,onSelectLocation:n,initialAddress:s})=>{const i=$e(),[o,c]=l.useState(null),d=l.useRef(null);l.useEffect(()=>{e||c(null)},[e]),l.useEffect(()=>{d.current&&o&&(d.current.scrollTop=d.current.scrollHeight/4)},[o]);const u=l.useCallback(x=>{c(x)},[]),m=l.useCallback(()=>{o&&(n(o.title||`${o.lat}, ${o.lng}`,o.lat,o.lng),a())},[o,n,a]);return t.jsxs(r.Dialog,{open:e,onClose:a,maxWidth:"md",fullWidth:!0,disableEnforceFocus:!0,disableAutoFocus:!0,PaperProps:{sx:{maxHeight:"80vh",height:"80vh"}},sx:{"& .MuiDialog-paper":{backgroundColor:x=>x.palette.background.panel}},children:[t.jsxs(r.Box,{sx:{position:"relative",display:"flex",alignItems:"center",p:2},children:[t.jsx(r.Typography,{variant:"body1",sx:{flex:1},children:i("global.selectLocation","Seleccionar ubicaci\xF3n")}),t.jsx(r.IconButton,{"aria-label":"close",onClick:a,size:"small",children:t.jsx(Pa,{fontSize:"small"})})]}),t.jsx(r.DialogContent,{sx:{p:0,display:"flex",flexDirection:"column",height:"100%"},children:t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",overflow:"hidden",width:"100%",height:"100%",position:"relative"},children:[t.jsx(r.Box,{ref:d,sx:{width:"100%",flex:1,overflow:"auto",zIndex:1},children:t.jsx(Hl,{onLocationChange:u,initialLocation:void 0})}),t.jsx(r.Divider,{sx:{width:"100%",padding:0}}),t.jsxs(r.Box,{sx:{width:"100%",display:"flex",justifyContent:"flex-end",gap:".5rem",p:2},children:[t.jsx(r.Button,{variant:"outlined",color:"error",size:"small",sx:{borderRadius:"0.5rem"},onClick:a,children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{variant:"outlined",color:"secondary",size:"small",sx:{borderRadius:"0.5rem"},onClick:m,disabled:!o,children:i("global.selectLocation","Seleccionar ubicaci\xF3n")})]})]})})]})},Jl=({locationField:e,disabled:a})=>{const n=$e(),[s,i]=l.useState(!1),{value:o,type:c,...d}=e.attributes,u=o||"",m=()=>{a||i(!0)},x=()=>{i(!1)},g=p=>{e.actions.changeValue(p)};return a?t.jsx(r.Box,{children:t.jsx(ze,{title:n("global.location","Ubicaci\xF3n"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(za,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",children:u||"-"})]})})}):t.jsxs(r.Box,{children:[t.jsx(ze,{title:n("global.location","Ubicaci\xF3n"),children:t.jsx(r.TextField,{...d,value:u,disabled:a,size:"small",fullWidth:!0,variant:"outlined",placeholder:n("global.addLocation","Agregar ubicaci\xF3n"),onClick:m,InputProps:{startAdornment:t.jsx(za,{sx:{mr:1,opacity:.5},fontSize:"small"}),readOnly:!0},sx:{cursor:a?"default":"pointer","& .MuiInputBase-input":{cursor:a?"default":"pointer"}}})}),t.jsx(Kl,{open:s,onClose:x,onSelectLocation:g,initialAddress:u})]})},Ql=({handleScroll:e,contactList:a,handleSelectContact:n,contactSelectedId:s,search:i})=>{const o=$e(),c=r.useTheme();return t.jsx(r.List,{sx:{width:"100%",height:"100%",overflow:"auto",border:`1px solid ${c.palette.divider}`,borderTop:"none",backgroundColor:c.palette.background.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12))"},onScroll:e,children:i&&a?.map(d=>t.jsxs(r.ListItemButton,{sx:{width:"100%"},onClick:()=>n(d),selected:s===d.id,children:[t.jsx(r.ListItemIcon,{children:t.jsx(Ae.Person,{sx:{color:u=>u.palette.text.disabled}})}),t.jsx(r.ListItemText,{primary:o(d.name),secondary:d?.phone})]},d.id))})};async function Xl({baseUrl:e,spaceId:a,pagination:n,signal:s}){const i=Ea(e,a),o=Te(i.CONTACTS,"/Search");return Be({url:o,method:"POST",body:n,signal:s})}const Zl={format:"IContact",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"};function ec(e){const a=l.useRef(null),n=l.useRef(null),[s,i]=l.useState([]),[o,c]=l.useState(!1),[d,u]=l.useState(!1),[m,x]=l.useState(!1),[g,p]=l.useState(!1),[y,v]=l.useState(1),[C,f]=l.useState(!1),S=l.useCallback(()=>{n.current?.abort(),n.current=null,a.current&&(clearTimeout(a.current),a.current=null),c(!1),f(!1),v(1),p(!1),i([])},[]),j=E=>E.filter(D=>!!D?.id),w=l.useCallback(async({query:E,page:D})=>{if(!e)return;n.current?.abort();const F=new AbortController;n.current=F,u(!0);try{const U={...Zl,currentPage:D,filter:[{value:E,column:"name",condition:""}]},V=await Xl({baseUrl:e.baseUrl,spaceId:e.spaceId,pagination:U,signal:F.signal});if(F.signal.aborted)return;const Y=j(V?.contactos??[]);c(!0);const R=V?.paginacion?.total??0;i(H=>{const $=D===1?Y:(()=>{const ee=new Map;for(const P of H)ee.set(P.id,P);for(const P of Y)ee.set(P.id,P);return Array.from(ee.values())})();return R&&$.length>=R&&f(!0),$})}finally{u(!1),x(!1),p(!1)}},[e]),I=l.useCallback(E=>{S(),E&&(a.current&&(clearTimeout(a.current),a.current=null),x(!0),a.current=setTimeout(()=>{w({query:E,page:1})},800))},[w,S]),z=l.useCallback((E,D)=>{const F=E.target;if(!(F.scrollHeight-F.scrollTop-F.clientHeight<1)||C||d||!D)return;const U=y+1;p(!0),v(U),w({query:D,page:U})},[C,d,y,w]);return{contactList:s,hasSearched:o,isLoading:d,isLoadingTimer:m,isNextPage:g,handleQueryChanged:I,handleScroll:z,resetSearchState:S}}const zn=({linkContactsHandler:e,disabled:a=!1})=>{const n=$e(),s=Tn(),i=l.useRef(null),[o,c]=l.useState(null),{action:{handleSearchChange:d,handleSelectContact:u},state:{search:m,contactSelectedId:x}}=e,{contactList:g,hasSearched:p,isLoading:y,isLoadingTimer:v,handleQueryChanged:C,handleScroll:f,resetSearchState:S}=ec(s),j=m||"",w=!!o&&j.length>0&&!a;l.useEffect(()=>{j&&!x?C(j):j||S()},[j,x,C,S]);const I=D=>{d(D),D&&!o?c(i.current):D||c(null)},z=D=>{u(D),c(null),S()},E=()=>{c(null)};return a?t.jsx(ze,{title:n("global.linkContacts"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[j&&t.jsx(Wa,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",children:j||"-"})]})}):t.jsx(r.ClickAwayListener,{onClickAway:E,children:t.jsxs(r.Box,{children:[t.jsx(ze,{title:n("global.linkContacts"),children:t.jsx(r.TextField,{ref:i,fullWidth:!0,size:"small",placeholder:n("global.searchContacts"),value:j,onChange:D=>I(D.target.value),onFocus:()=>{j&&c(i.current)},InputProps:{startAdornment:t.jsx(Wa,{sx:{mr:1,opacity:.5},fontSize:"small"}),endAdornment:y||v?t.jsx(r.CircularProgress,{size:18,sx:{mr:1}}):null}})}),t.jsx(r.Popper,{open:w,anchorEl:o,placement:"bottom-start",style:{width:o?.offsetWidth||"auto",zIndex:1300},children:t.jsxs(r.Paper,{elevation:8,sx:{mt:.5,maxHeight:300,overflow:"hidden"},children:[p&&g.length>0&&t.jsx(Ql,{handleScroll:D=>f(D,j),contactList:g,handleSelectContact:z,contactSelectedId:x,search:j}),p&&g.length===0&&t.jsx(r.Box,{sx:{p:2,textAlign:"center",color:"text.secondary"},children:t.jsx(r.Typography,{variant:"body2",children:n("global.noResults","No se encontraron resultados")})})]})})]})})},tc=({isFinalized:e})=>{const{eventDialog:{handleClose:a},handleCreateEvent:n,dialogMode:s,handleStartEditingEvent:i,handleSaveUpdatedEvent:o,handleEndEvent:c,dialogType:d,handleCreateTask:u,handleSaveUpdatedTask:m,selectedTask:x,handleToggleTaskCompleted:g}=l.useContext(Ta),p=$e(),y=d==="event",v=!1,C=!1,f=!1,S=()=>{y?n():u()},j=(()=>{if(s==="view")return i;if(s==="edit")return y?()=>o?.():()=>m?.();if(s==="create")return S})(),w=p(s==="view"?y?"global.editEvent":"global.editTask":s==="edit"?y?"global.saveEvent":"global.saveTask":y?"global.createEvent":"global.createTask"),I=y?v:f,z=e,E=!y&&s==="view",D=x?.isCompleted||!1;return E?t.jsx(r.DialogActions,{children:t.jsx(qe.LoadingButton,{startIcon:t.jsx(Ae.CheckCircleOutline,{}),size:"small",loading:f,disabled:f,onClick:g,variant:"contained",color:D?"inherit":"primary",children:D?p("global.markAsIncomplete","Marcar como incompleta"):p("global.markAsCompleted","Marcar como completada")})}):t.jsxs(r.DialogActions,{children:[t.jsx(r.Button,{variant:"outlined",size:"small",onClick:a,color:"secondary",children:p("global.cancel")}),y&&(s==="edit"||s==="view")&&t.jsx(qe.LoadingButton,{startIcon:t.jsx(Ae.EventAvailable,{}),size:"small",disabled:e,loading:C,onClick:c,variant:"contained",children:p("global.finalizeEvent")}),t.jsx(qe.LoadingButton,{startIcon:t.jsx(Ae.EditCalendar,{}),size:"small",loading:I,disabled:z,onClick:j,variant:"contained",children:w})]})},Wn={textTransform:"none",borderRadius:2,minHeight:34,px:1.5,fontSize:13,fontWeight:500,lineHeight:1.1},ac=({value:e,onChange:a,labels:n})=>t.jsxs(r.Box,{sx:{display:"flex",gap:1},children:[t.jsx(r.Button,{size:"small",onClick:()=>a("event"),variant:e==="event"?"contained":"text",disableElevation:!0,color:"secondary",sx:{...Wn},children:n.event}),t.jsx(r.Button,{size:"small",onClick:()=>a("task"),variant:e==="task"?"contained":"text",disableElevation:!0,sx:{...Wn},color:"secondary",children:n.task})]}),nc="DD/MM/YYYY",sc="HH:mm",rc=({selectedDateTime:e,handleSelect:a,disabled:n,isError:s=!1,hideLabel:i=!1})=>{const o=$e(),c=u=>{if(!u)return;const m=u.hour(e.hour()).minute(e.minute());a(m)},d=u=>{if(!u)return;const m=e.hour(u.hour()).minute(u.minute());a(m)};return n?t.jsxs(ta,{children:[!i&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:o("global.date")}),t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"body1",sx:{mb:1},children:e.format(nc)}),t.jsx(r.Typography,{variant:"body1",children:e.format(sc)})]})]}):t.jsxs(ta,{children:[!i&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:o("global.date")}),t.jsx(ka,{children:t.jsxs(_e.LocalizationProvider,{dateAdapter:Oa.AdapterDayjs,children:[t.jsx(_e.DatePicker,{disabled:n,value:e,onChange:c,slotProps:{textField:()=>({label:o("global.date"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1},minDate:K()}),t.jsx(Aa,{variant:"body1",children:"_"}),t.jsx(_e.TimePicker,{disabled:n,value:e,onChange:d,ampm:!1,slotProps:{textField:()=>({label:o("global.time"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1}})]})}),t.jsx(r.Fade,{in:s,children:t.jsx(r.Typography,{color:"red",variant:"caption",children:o("conversations.sidebar.events.errorDate")})})]})},_n=({disabled:e,calendars:a,value:n,onChange:s})=>{const i=$e(),o=l.useMemo(()=>a??[],[a]),c=l.useMemo(()=>o.find(d=>d.id===n)??null,[o,n]);return e?t.jsx(ze,{title:i("global.calendar"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[c&&t.jsx(ds,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",children:c?.title||"-"})]})}):t.jsx(ze,{title:i("global.calendar"),children:t.jsx(r.Autocomplete,{disabled:e,size:"small",fullWidth:!0,options:o,value:c,onChange:(d,u)=>s(u?.id??""),getOptionLabel:d=>d?.title??"",isOptionEqualToValue:(d,u)=>d.id===u.id,slotProps:{paper:{sx:{backgroundColor:d=>d.palette.background.panel}}},renderInput:d=>t.jsx(r.TextField,{...d,placeholder:i("global.selectCalendar")})})})},oc=({checked:e,onChange:a,disabled:n})=>{const s=$e();return t.jsx(r.Box,{sx:{display:"flex",alignItems:"center"},children:t.jsx(r.FormControlLabel,{control:t.jsx(r.Checkbox,{checked:e,onChange:i=>a(i.target.checked),disabled:n,color:"secondary"}),label:s("global.allDay","Todo el d\xEDa")})})},ic=({colorField:e,disabled:a,onColorChange:n})=>{const s=$e(),i=e.attributes.value||"#1976d2",o=(d=>{if(d.startsWith("#"))return d;const u=d.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(u&&u[1]&&u[2]&&u[3]){const m=parseInt(u[1]),x=parseInt(u[2]),g=parseInt(u[3]),p=y=>{const v=y.toString(16);return v.length===1?"0"+v:v};return`#${p(m)}${p(x)}${p(g)}`}return"#1976d2"})(i),c=d=>{const u=d.target.value;n?n(u):e.actions.changeValue(u)};return a?t.jsx(ze,{title:s("global.color","Color"),children:t.jsxs(r.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[t.jsx(r.Box,{sx:{width:40,height:40,backgroundColor:o,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:1}}),t.jsx(r.Typography,{variant:"body2",sx:{color:"text.secondary"},children:o})]})}):t.jsx(ze,{title:s("global.color","Color"),children:t.jsx(r.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:t.jsx("input",{type:"color",value:o,onChange:c,disabled:a,style:{width:60,height:40,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:4,cursor:a?"not-allowed":"pointer"}})})})},Vn=[{value:"",label:"global.noRepeat"},{value:"FREQ=DAILY",label:"global.everyDay"},{value:"FREQ=WEEKLY",label:"global.everyWeek"},{value:"FREQ=MONTHLY",label:"global.everyMonth"},{value:"FREQ=YEARLY",label:"global.everyYear"},{value:"FREQ=DAILY;INTERVAL=2",label:"global.everyTwoDays"},{value:"FREQ=WEEKLY;INTERVAL=2",label:"global.everyTwoWeeks"},{value:"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR",label:"global.everyWeekday"}],lc=({value:e,onChange:a,disabled:n,hideLabel:s=!1})=>{const i=$e(),o=m=>{a(m.target.value)},c=l.useMemo(()=>Vn.map(m=>t.jsx(r.MenuItem,{value:m.value,children:i(m.label,m.label)},m.value)),[i]),d=l.useMemo(()=>{const m=Vn.find(x=>x.value===e);return m?i(m.label,m.label):i("global.noRepeat")},[e,i]);if(n)return s?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(ma,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body2",children:d})]}):t.jsx(ze,{title:i("global.recurrence","Recurrencia"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(ma,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",children:d})]})});const u=t.jsx(r.Select,{disabled:n,size:"small",variant:"outlined",fullWidth:!0,value:e||"",onChange:o,startAdornment:t.jsx(ma,{sx:{mr:1,ml:1,opacity:.5},fontSize:"small"}),MenuProps:{PaperProps:{sx:{backgroundColor:m=>m.palette.background.panel}}},children:c});return s?u:t.jsx(ze,{title:i("global.recurrence","Recurrencia"),children:u})},cc=({open:e,onClose:a,onConfirm:n,itemTitle:s,itemType:i})=>{const{t:o}=We.useTranslation(),c=()=>{n(),a()},d=i==="event"?o("calendar.deleteEvent","Eliminar evento"):o("calendar.deleteTask","Eliminar tarea"),u=i==="event"?o("calendar.confirmDeleteEvent","\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?"):o("calendar.confirmDeleteTask","\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?");return t.jsxs(r.Dialog,{open:e,onClose:a,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:m=>m.palette.background.panel}},children:[t.jsxs(r.DialogTitle,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(us,{color:"warning"}),d]}),t.jsxs(r.DialogContent,{children:[t.jsx(r.Typography,{variant:"body2",sx:{mb:2},children:u}),s&&t.jsx(r.Box,{sx:{p:1.5,bgcolor:"action.hover",borderRadius:1,borderLeft:3,borderColor:"warning.main"},children:t.jsxs(r.Typography,{variant:"body2",sx:{fontWeight:500},children:['"',s,'"']})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:a,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:c,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:o("global.delete","Eliminar")})]})]})},dc=({open:e,onClose:a,onConfirm:n,eventTitle:s})=>{const{t:i}=We.useTranslation(),[o,c]=l.useState("single"),d=()=>{n(o==="all"),a()},u=()=>{c("single"),a()};return t.jsxs(r.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:m=>m.palette.background.panel}},children:[t.jsx(r.DialogTitle,{children:i("calendar.deleteRecurringEvent","Borrar evento recurrente")}),t.jsxs(r.DialogContent,{children:[s&&t.jsxs(r.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',s,'"']}),t.jsx(r.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(r.RadioGroup,{value:o,onChange:m=>c(m.target.value),children:[t.jsx(r.FormControlLabel,{value:"single",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.deleteThisEvent","Este evento"),sx:{mb:1}}),t.jsx(r.FormControlLabel,{value:"all",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.deleteAllEvents","Todos los eventos")})]})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:d,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:i("global.delete","Eliminar")})]})]})},uc=({open:e,onClose:a,onConfirm:n,eventTitle:s})=>{const{t:i}=We.useTranslation(),[o,c]=l.useState("single"),d=()=>{n(o==="all"),a()},u=()=>{c("single"),a()};return t.jsxs(r.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:m=>m.palette.background.panel}},children:[t.jsx(r.DialogTitle,{children:i("calendar.editRecurringEvent","Editar evento recurrente")}),t.jsxs(r.DialogContent,{children:[s&&t.jsxs(r.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',s,'"']}),t.jsx(r.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(r.RadioGroup,{value:o,onChange:m=>c(m.target.value),children:[t.jsx(r.FormControlLabel,{value:"single",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.editThisEvent","Este evento"),sx:{mb:1}}),t.jsx(r.FormControlLabel,{value:"all",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.editAllEvents","Todos los eventos")})]})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:d,variant:"contained",color:"secondary",sx:{borderRadius:"8px"},children:i("global.save","Guardar")})]})]})},pc=()=>{const e=$e(),{event:a,task:n,dialogMode:s,selectedEvent:i,handleDeleteEvent:o,handleStartEditingEvent:c,handleDuplicateItem:d,dialogType:u,setDialogType:m,selectedTask:x,taskCalendarId:g,setTaskCalendarId:p,eventCalendarId:y,setEventCalendarId:v,myCalendars:C,handleDeleteTask:f,userManuallyChangedColor:S,setUserManuallyChangedColor:j,eventDialog:{open:w,handleClose:I},confirmDeleteDialog:z,handleConfirmDelete:E,deleteRecurringDialog:D,handleConfirmDeleteRecurring:F,editRecurringDialog:U,handleConfirmEditRecurring:V,hiddenTabs:Y}=l.useContext(Ta);if(!a||!n)return t.jsx(r.Modal,{open:w,onClose:I,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:w,timeout:200,children:t.jsx(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:X=>X.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"}})})});const R=u==="event",H=R?a:n,$=R?i:x,ee=l.useRef(null),P=l.useRef(null);l.useEffect(()=>{w||(ee.current=null,P.current=null)},[w]);const{titleField:N,descriptionField:B,date:T,linkContact:W}=H,M=R?a.notifications:null,_=R?{locationField:a.locationField,colorField:a.colorField,allDay:a.allDay,setAllDay:a.setAllDay,isPrivate:a.isPrivate,setIsPrivate:a.setIsPrivate,recurrenceRule:a.recurrenceRule,setRecurrenceRule:a.setRecurrenceRule}:null,J=e(s==="edit"?R?"global.editEvent":"global.editTask":s==="create"?R?"global.createEvent":"global.createTask":R?"global.showEvent":"global.showTask"),te=(s==="edit"||s==="view")&&!!$?.id,de=s==="view";l.useEffect(()=>{if(s!=="create"||u!=="event"||!w||S||!y)return;const X=C.find(Q=>Q.id===y);X?.color&&a.colorField.actions.changeValue(X.color)},[s,u,w,y,S,C]),l.useEffect(()=>{console.log("[DEBUG] myCalendars:",C),console.log("[DEBUG] eventCalendarId:",y)},[C,y]),l.useEffect(()=>{if(!w||u!=="event"||s!=="edit")return;const X=T.state.selectedStartDate.isAfter(T.state.selectedEndDate)&&!T.state.selectedStartDate.isSame(T.state.selectedEndDate,"minute");P.current!==X&&(P.current=X,T.action.setError(X))},[w,u,s,T.state.selectedStartDate.valueOf(),T.state.selectedEndDate.valueOf()]),l.useEffect(()=>{if(!w||s==="create")return;const X=$?.relatedContact;X?.id&&ee.current!==X.id&&(ee.current=X.id,W.action.handleSelectContact({id:X.id,name:X.name}))},[w,s,$?.id]);const he=X=>{if(X==="task"){const Q=a.date.state.selectedStartDate;n.date.action.setSelectedStartDate(Q),n.date.action.setSelectedEndDate(Q),n.date.action.setError(!1),a.date.action.setError(!1)}else{const Q=n.date.state.selectedStartDate;a.date.action.setSelectedStartDate(Q),a.date.action.setError(!1),n.date.action.setError(!1)}m(X)},ve=X=>{a.colorField.actions.changeValue(X),j(!0)};return t.jsxs(t.Fragment,{children:[t.jsx(r.Modal,{open:w,onClose:I,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:w,timeout:200,children:t.jsxs(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",maxHeight:"calc(100vh - 64px)",bgcolor:X=>X.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:[t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",gap:2,p:3,pt:4,overflowY:"auto",flex:1},children:[t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:s==="create"?"flex-end":"space-between",gap:1,mb:.5},children:[s!=="create"&&t.jsx(r.Typography,{sx:{fontWeight:600},children:J}),t.jsxs(r.Box,{sx:{display:"flex",gap:1},children:[de&&t.jsx(r.IconButton,{size:"small",onClick:c,"aria-label":e("global.edit","Editar"),children:t.jsx(bt,{fontSize:"small"})}),te&&t.jsx(r.IconButton,{size:"small",onClick:R?o:f,color:"error","aria-label":e("global.delete","Eliminar"),children:t.jsx(qt,{fontSize:"small"})}),de&&t.jsx(r.IconButton,{size:"small",onClick:d,"aria-label":e("global.duplicate","Duplicar"),children:t.jsx(ps,{fontSize:"small"})})]})]}),s==="create"&&t.jsxs(t.Fragment,{children:[t.jsx(Fa,{disabled:!1,titleField:N,variantMode:"inline"}),!Y&&t.jsx(ac,{value:u,onChange:he,labels:{event:e("global.event","Evento"),task:e("global.task","Tarea")}})]}),u==="event"?t.jsxs(t.Fragment,{children:[s!=="create"&&t.jsx(Fa,{disabled:s==="view",titleField:N}),t.jsx(Rn,{disabled:s==="view",descriptionField:B}),t.jsx(_n,{disabled:s==="view",calendars:C,value:y,onChange:X=>v(X)}),t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,borderRadius:1,bgcolor:X=>X.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:[t.jsx(r.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:t.jsx(r.Box,{sx:{flex:1},children:t.jsx(Bl,{disabled:s==="view",selectedStartDate:T.state.selectedStartDate,selectedEndDate:T.state.selectedEndDate,handleSelectStart:T.action.handleSelect(T.action.setSelectedStartDate),handleSelectEnd:T.action.handleSelect(T.action.setSelectedEndDate),isError:T.state.error,hideLabel:!0,allDay:_?.allDay??!1})})}),_&&t.jsxs(r.Box,{sx:{display:"flex",gap:2,alignItems:"center",pl:5},children:[t.jsx(oc,{checked:_.allDay,onChange:_.setAllDay,disabled:s==="view"}),t.jsx(r.Box,{sx:{flex:1},children:t.jsx(lc,{disabled:s==="view",value:_.recurrenceRule,onChange:_.setRecurrenceRule,hideLabel:!0})})]})]}),_&&t.jsx(t.Fragment,{children:t.jsx(ic,{disabled:s==="view",colorField:_.colorField,onColorChange:s==="create"?ve:void 0})}),M&&t.jsx(ql,{disabled:s==="view",notificationsField:M}),t.jsx(zn,{linkContactsHandler:W,disabled:s==="view"}),_&&t.jsx(Jl,{disabled:s==="view",locationField:_.locationField})]}):t.jsxs(t.Fragment,{children:[s!=="create"&&t.jsx(Fa,{disabled:s==="view",titleField:N}),t.jsx(Rn,{disabled:s==="view",descriptionField:B}),t.jsx(_n,{disabled:s==="view",calendars:C,value:g,onChange:X=>p(X)}),t.jsx(r.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,p:2,borderRadius:1,bgcolor:X=>X.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:t.jsxs(r.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:[t.jsx(hs,{sx:{mt:.5,color:"text.secondary",fontSize:"1.25rem"}}),t.jsx(r.Box,{sx:{flex:1},children:t.jsx(rc,{disabled:s==="view",selectedDateTime:T.state.selectedStartDate,handleSelect:X=>{T.action.setSelectedStartDate(X),T.action.setSelectedEndDate(X),T.action.setError(!1)},isError:T.state.error,hideLabel:!0})})]})}),t.jsx(zn,{linkContactsHandler:W,disabled:s==="view"})]})]}),t.jsx(r.Box,{sx:{borderTop:1,borderColor:"divider",p:2},children:t.jsx(tc,{isFinalized:i?.finalized})})]})})}),t.jsx(cc,{open:z.open,onClose:z.handleClose,onConfirm:E,itemTitle:z.itemType==="event"?i?.title:x?.title,itemType:z.itemType}),t.jsx(dc,{open:D.open,onClose:D.handleClose,onConfirm:F,eventTitle:i?.title}),t.jsx(uc,{open:U.open,onClose:U.handleClose,onConfirm:V,eventTitle:i?.title})]})},hc=e=>{const a=e.palette.background;return r.createTheme({...e,components:{MuiSelect:{defaultProps:{MenuProps:{PaperProps:{sx:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}}}},MuiAutocomplete:{styleOverrides:{popper:{zIndex:11,"& div":{backgroundColor:a.panel}}}},MuiPaper:{styleOverrides:{root:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiMenu:{styleOverrides:{paper:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiList:{styleOverrides:{root:{padding:0}}},MuiModal:{styleOverrides:{root:{}}},MuiTypography:{styleOverrides:{root:{color:e.palette.text.primary}}},MuiChip:{styleOverrides:{root:{color:e.palette.text.primary,border:"1px solid rgba(0, 0, 0, 0.1)",borderRadius:"4px",height:"20px",fontSize:"0.7125rem"}}},MuiListSubheader:{styleOverrides:{root:{backgroundColor:a.accordionHeader}}},MuiButton:{styleOverrides:{outlined:{color:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,borderColor:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,"&:hover":{borderColor:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main,color:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main}}}}}})},mc=e=>{const{open:a,onClose:n,baseUrl:s,spaceId:i,language:o="en",mode:c="create",type:d="event",eventCalendarId:u,taskCalendarId:m,selectedEvent:x,selectedTask:g,hiddenTabs:p=!1}=e,{i18n:y}=We.useTranslation();return l.useEffect(()=>{o&&y.changeLanguage(o)},[o,y]),t.jsx(qi,{value:{baseUrl:s,spaceId:i},children:t.jsx($l,{externalOpen:a,externalOnClose:n,externalMode:c,externalType:d,externalEventCalendarId:u,externalTaskCalendarId:m,externalSelectedEvent:x,externalSelectedTask:g,hiddenTabs:p,children:t.jsx(pc,{})})})},gc=e=>{const a=r.useTheme(),n=a?.palette?a:r.createTheme(),s=hc(n);return t.jsx(r.ThemeProvider,{theme:s,children:t.jsx(We.I18nextProvider,{i18n:It,children:t.jsx(mc,{...e})})})};exports.ContactInfoPopup=Ha,exports.EditContactModal=Yi,exports.EventsDialog=gc,exports.i18n=It;
20
+ `,Vl=r.styled(r.Box)(()=>({display:"flex",justifyContent:"space-between",alignItems:"baseline",userSelect:"none"})),ql=({notificationsField:e,disabled:a})=>{const n=Ue(),{addNotification:s,deleteNotification:i,handleReminderChange:o,handleTimeFieldChange:c,handleTimePeriodChange:d}=e.action,u=e.notifications.length>0;return t.jsxs(_l,{children:[t.jsxs(Vl,{children:[t.jsx(r.Typography,{variant:"subtitle2",sx:{userSelect:"none"},children:n("calendarView.reminders.title")}),!a&&t.jsx(r.Button,{disabled:a,startIcon:t.jsx(_a,{}),size:"small",variant:"outlined",onClick:s,color:"secondary",children:n("calendarView.reminders.addReminder")})]}),t.jsx(r.Box,{sx:{pt:1,px:.5},children:u?e.notifications.map(g=>t.jsx(Wl,{data:g,deleteHandler:i,sendToContactHandler:o,timePeriodHandler:d,timeValueHandler:c},g.id)):a?t.jsx(r.Typography,{variant:"body1",sx:{py:.5},children:"-"}):null})]})},Nn=({descriptionField:e,disabled:a})=>{const n=Ue(),{value:s,type:i,...o}=e.attributes,c=s||"";return a?t.jsx(Oe,{title:n("global.description"),children:t.jsx(r.Typography,{variant:"body2",sx:{py:.5,whiteSpace:"pre-wrap",color:d=>d.palette.text.secondary,fontSize:"0.9rem"},children:c||"-"})}):t.jsx(Oe,{title:n("global.description"),children:t.jsx(r.TextField,{...o,value:c,disabled:a,size:"small",multiline:!0,maxRows:5,fullWidth:!0,variant:"outlined"})})},Yl=({onPlaceSelected:e})=>{const a=l.useRef(null),n=l.useRef(null),s=l.useRef(null),i=l.useRef(null),[o,c]=l.useState([]),[d,u]=l.useState(!1),g=Ue();l.useEffect(()=>{if(!a.current)return;const p=()=>{if(!window.google?.maps?.places)return console.warn("Google Places API no est\xE1 disponible a\xFAn"),!1;n.current=new window.google.maps.places.AutocompleteService;const h=document.createElement("div");return s.current=new window.google.maps.places.PlacesService(h),i.current=new window.google.maps.places.AutocompleteSessionToken,!0};if(!p()){const h=setTimeout(()=>{p()},500);return()=>clearTimeout(h)}},[]);const x=p=>{const h=p.target.value;if(!h||h.length<3||!n.current){c([]),u(!1);return}n.current.getPlacePredictions({input:h,types:["geocode"],sessionToken:i.current||void 0},(v,j)=>{j===window.google.maps.places.PlacesServiceStatus.OK&&v?(c(v),u(!0)):(c([]),u(!1))})},y=(p,h)=>{s.current&&s.current.getDetails({placeId:p,fields:["geometry","formatted_address"],sessionToken:i.current||void 0},(v,j)=>{if(j===window.google.maps.places.PlacesServiceStatus.OK&&v?.geometry?.location){const f=v.geometry.location.lat(),I=v.geometry.location.lng(),C=v.formatted_address??h;e({lat:f,lng:I},C),a.current&&(a.current.value=C),u(!1),c([]),i.current=new window.google.maps.places.AutocompleteSessionToken}})};return l.useEffect(()=>{const p=h=>{a.current&&!a.current.contains(h.target)&&u(!1)};return document.addEventListener("mousedown",p),()=>document.removeEventListener("mousedown",p)},[]),t.jsxs("div",{style:{position:"absolute",width:"100%",maxWidth:300,margin:"0 auto",zIndex:13e3,top:"10px",left:"10px"},children:[t.jsx("input",{ref:a,placeholder:g("global.searchLocation","Buscar en Google Maps"),onChange:x,onFocus:()=>o.length>0&&u(!0),style:{width:"100%",padding:"12px 16px 5px",borderRadius:"24px",border:"1px solid #ccc",backgroundColor:"white",fontSize:"15px",boxShadow:"0 1px 4px rgba(0,0,0,0.3)",outline:"none",position:"relative",zIndex:13e3}}),d&&o.length>0&&t.jsx("div",{style:{position:"absolute",top:"100%",left:0,right:0,backgroundColor:"white",borderRadius:"8px",boxShadow:"0 2px 8px rgba(0,0,0,0.15)",marginTop:"4px",maxHeight:"300px",overflowY:"auto",zIndex:13001},children:o.map(p=>t.jsxs("div",{onClick:()=>y(p.place_id,p.description),style:{padding:"12px 16px",cursor:"pointer",borderBottom:"1px solid #f0f0f0",fontSize:"14px",transition:"background-color 0.2s"},onMouseEnter:h=>{h.currentTarget.style.backgroundColor="#f5f5f5"},onMouseLeave:h=>{h.currentTarget.style.backgroundColor="white"},children:[t.jsx("div",{style:{fontWeight:500},children:p.structured_formatting.main_text}),t.jsx("div",{style:{fontSize:"12px",color:"#666",marginTop:"2px"},children:p.structured_formatting.secondary_text})]},p.place_id))})]})},Ln="AIzaSyAQ1bUt3y6UoAhbi5-HAwYwaFx71pAiaKU",zn=["places"],Ma={apiKey:Ln,libraries:zn,loading:"async"},ia=()=>!!(window.google?.maps?.Map&&window.google?.maps?.Marker&&window.google?.maps?.Geocoder&&window.google?.maps?.places),On=(e=Ln,a=zn)=>{if(ia())return Promise.resolve();const n=()=>{document.querySelectorAll('script[src*="maps.googleapis.com"]').forEach(s=>{s.parentNode?.removeChild(s)})};return document.getElementById("google-maps-script")?new Promise((s,i)=>{let o=0;const c=100,d=setInterval(()=>{o++,ia()?(clearInterval(d),s()):o>=c&&(clearInterval(d),n(),On(e,a).then(s).catch(i))},100)}):new Promise((s,i)=>{try{n();const o="initGoogleMaps";window[o]=()=>{ia()?s():setTimeout(()=>{ia()||console.warn("Google Maps API se carg\xF3 pero algunos componentes no est\xE1n disponibles"),s()},500)};const c=document.createElement("script");c.id="google-maps-script",c.type="text/javascript";const d=Array.isArray(a)?a.join(","):a;c.src=`https://maps.googleapis.com/maps/api/js?key=${e}&libraries=${d}&callback=${o}&loading=async`,c.async=!0,c.defer=!0,c.onerror=()=>{delete window[o],i(new Error("Error al cargar Google Maps API"))},document.head.appendChild(c)}catch(o){i(o)}})},Ut=(e,a,n=18,s=400,i=400,o="red",c=Ma.apiKey)=>`https://maps.googleapis.com/maps/api/staticmap?center=${e},${a}&zoom=${n}&size=${s}x${i}&markers=color:${o}%7Clabel:A%7C${e},${a}&key=${c}`,Hl=({onLocationChange:e,initialLocation:a})=>{const n=l.useRef(null),s=l.useRef(null),i=l.useRef(null),o=l.useRef(null),[c,d]=l.useState(!0),[u,g]=l.useState(!1),[x,y]=l.useState(a||null),p=18,h=l.useCallback(C=>{y(C),e(C)},[e]);l.useEffect(()=>{let C=!0;(async()=>{try{if(await On(Ma.apiKey,Ma.libraries),!window.google?.maps?.Map||!window.google?.maps?.Geocoder){console.error("Google Maps APIs no est\xE1n completamente disponibles"),d(!1);return}window.google?.maps?.Geocoder&&(o.current=new window.google.maps.Geocoder),d(!1)}catch(w){console.error("Error al cargar Google Maps:",w),d(!1)}})(),a||navigator.geolocation.getCurrentPosition(w=>{const S=w.coords.latitude,z=w.coords.longitude,k=S.toString(),F=z.toString(),$=Ut(S,z,p);h({lat:k,lng:F,title:"",description:"",url:$})},w=>{console.error("Error getting location:",w);const S=-34.6037,z=-58.3816;h({lat:S.toString(),lng:z.toString(),title:"",description:"",url:Ut(S,z,p)})})},[a,h,p]),l.useEffect(()=>{if(c||s.current)return;const C=setTimeout(()=>{s.current||v()},50);return()=>clearTimeout(C)},[c]),l.useEffect(()=>{u&&x&&f()},[u,x]),l.useEffect(()=>()=>{i.current&&(i.current.setMap(null),i.current=null)},[]);const v=()=>{if(!n.current){console.warn("Contenedor del mapa no disponible");return}if(!window.google?.maps){console.warn("Google Maps API no disponible a\xFAn");return}try{const C={zoom:p,disableDefaultUI:!1,zoomControl:!0,mapTypeControl:!1,streetViewControl:!1,fullscreenControl:!1};s.current=new window.google.maps.Map(n.current,C),s.current.addListener("click",w=>{j(w)}),g(!0)}catch(C){console.error("Error inicializando mapa:",C)}},j=C=>{if(!C.latLng||!o.current)return;const w={lat:C.latLng.lat(),lng:C.latLng.lng()};i.current?i.current.setPosition(w):s.current&&(i.current=new window.google.maps.Marker({position:w,map:s.current})),o.current.geocode({location:w},(S,z)=>{if(z==="OK"&&S&&S[0]){const k=S[0].formatted_address,F=Ut(w.lat,w.lng,p);h({lat:w.lat.toString(),lng:w.lng.toString(),title:k||"",description:"",url:F})}else{const k=Ut(w.lat,w.lng,p);h({lat:w.lat.toString(),lng:w.lng.toString(),title:`${w.lat.toFixed(6)}, ${w.lng.toFixed(6)}`,description:"",url:k})}})},f=()=>{if(!(!s.current||!x))try{const C={lat:parseFloat(x.lat),lng:parseFloat(x.lng)};s.current.setCenter(C),i.current?i.current.setPosition(C):i.current=new window.google.maps.Marker({position:C,map:s.current})}catch(C){console.error("Error actualizando mapa:",C)}},I=(C,w)=>{const S=Ut(C.lat,C.lng,p);h({lat:C.lat.toString(),lng:C.lng.toString(),title:w||"",description:"",url:S})};return c?t.jsx(r.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:t.jsx(r.CircularProgress,{})}):t.jsxs(r.Box,{sx:{position:"relative",height:"calc(100vh - 305px)"},children:[t.jsx(Yl,{onPlaceSelected:I}),t.jsx("div",{style:{height:"100%"},ref:n})]})},Gl=({open:e,onClose:a,onSelectLocation:n,initialAddress:s})=>{const i=Ue(),[o,c]=l.useState(null),d=l.useRef(null);l.useEffect(()=>{e||c(null)},[e]),l.useEffect(()=>{d.current&&o&&(d.current.scrollTop=d.current.scrollHeight/4)},[o]);const u=l.useCallback(x=>{c(x)},[]),g=l.useCallback(()=>{o&&(n(o.title||`${o.lat}, ${o.lng}`,o.lat,o.lng),a())},[o,n,a]);return t.jsxs(r.Dialog,{open:e,onClose:a,maxWidth:"md",fullWidth:!0,disableEnforceFocus:!0,disableAutoFocus:!0,PaperProps:{sx:{maxHeight:"80vh",height:"80vh"}},sx:{"& .MuiDialog-paper":{backgroundColor:x=>x.palette.background.panel}},children:[t.jsxs(r.Box,{sx:{position:"relative",display:"flex",alignItems:"center",p:2},children:[t.jsx(r.Typography,{variant:"body1",sx:{flex:1},children:i("global.selectLocation","Seleccionar ubicaci\xF3n")}),t.jsx(r.IconButton,{"aria-label":"close",onClick:a,size:"small",children:t.jsx(La,{fontSize:"small"})})]}),t.jsx(r.DialogContent,{sx:{p:0,display:"flex",flexDirection:"column",height:"100%"},children:t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",overflow:"hidden",width:"100%",height:"100%",position:"relative"},children:[t.jsx(r.Box,{ref:d,sx:{width:"100%",flex:1,overflow:"auto",zIndex:1},children:t.jsx(Hl,{onLocationChange:u,initialLocation:void 0})}),t.jsx(r.Divider,{sx:{width:"100%",padding:0}}),t.jsxs(r.Box,{sx:{width:"100%",display:"flex",justifyContent:"flex-end",gap:".5rem",p:2},children:[t.jsx(r.Button,{variant:"outlined",color:"error",size:"small",sx:{borderRadius:"0.5rem"},onClick:a,children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{variant:"outlined",color:"secondary",size:"small",sx:{borderRadius:"0.5rem"},onClick:g,disabled:!o,children:i("global.selectLocation","Seleccionar ubicaci\xF3n")})]})]})})]})},Kl=({locationField:e,disabled:a})=>{const n=Ue(),[s,i]=l.useState(!1),{value:o,type:c,...d}=e.attributes,u=o||"",g=()=>{a||i(!0)},x=()=>{i(!1)},y=p=>{e.actions.changeValue(p)};return a?t.jsx(r.Box,{children:t.jsx(Oe,{title:n("global.location","Ubicaci\xF3n"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[u&&t.jsx(qa,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",sx:{color:p=>p.palette.text.secondary,fontSize:"0.9rem"},children:u||"-"})]})})}):t.jsxs(r.Box,{children:[t.jsx(Oe,{title:n("global.location","Ubicaci\xF3n"),children:t.jsx(r.TextField,{...d,value:u,disabled:a,size:"small",fullWidth:!0,variant:"outlined",placeholder:n("global.addLocation","Agregar ubicaci\xF3n"),onClick:g,InputProps:{startAdornment:t.jsx(qa,{sx:{mr:1,opacity:.5},fontSize:"small"}),readOnly:!0},sx:{cursor:a?"default":"pointer","& .MuiInputBase-input":{cursor:a?"default":"pointer"}}})}),t.jsx(Gl,{open:s,onClose:x,onSelectLocation:y,initialAddress:u})]})},Jl=({handleScroll:e,contactList:a,handleSelectContact:n,selectedContactIds:s,search:i})=>{const o=Ue(),c=r.useTheme();return t.jsx(r.List,{sx:{width:"100%",height:"100%",overflow:"auto",border:`1px solid ${c.palette.divider}`,borderTop:"none",backgroundColor:c.palette.background.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.12))"},onScroll:e,children:i&&a?.map(d=>t.jsxs(r.ListItemButton,{sx:{width:"100%"},onClick:()=>n(d),selected:s.includes(d.id),children:[t.jsx(r.ListItemIcon,{children:t.jsx($e.Person,{sx:{color:u=>u.palette.text.disabled}})}),t.jsx(r.ListItemText,{primary:o(d.name),secondary:d?.phone})]},d.id))})};async function Ql({baseUrl:e,spaceId:a,pagination:n,signal:s}){const i=Aa(e,a),o=De(i.CONTACTS,"/Search");return Pe({url:o,method:"POST",body:n,signal:s})}const Xl={format:"IContact",total:0,lastPage:1,perPage:10,order:"ASC",orderColumn:"Id"};function Zl(e){const a=l.useRef(null),n=l.useRef(null),[s,i]=l.useState([]),[o,c]=l.useState(!1),[d,u]=l.useState(!1),[g,x]=l.useState(!1),[y,p]=l.useState(!1),[h,v]=l.useState(1),[j,f]=l.useState(!1),I=l.useCallback(()=>{n.current?.abort(),n.current=null,a.current&&(clearTimeout(a.current),a.current=null),c(!1),f(!1),v(1),p(!1),i([])},[]),C=k=>k.filter(F=>!!F?.id),w=l.useCallback(async({query:k,page:F})=>{if(!e)return;n.current?.abort();const $=new AbortController;n.current=$,u(!0);try{const T={...Xl,currentPage:F,filter:[{value:k,column:"name",condition:""}]},V=await Ql({baseUrl:e.baseUrl,spaceId:e.spaceId,pagination:T,signal:$.signal});if($.signal.aborted)return;const W=C(V?.contactos??[]);c(!0);const _=V?.paginacion?.total??0;i(Y=>{const P=F===1?W:(()=>{const X=new Map;for(const K of Y)X.set(K.id,K);for(const K of W)X.set(K.id,K);return Array.from(X.values())})();return _&&P.length>=_&&f(!0),P})}finally{u(!1),x(!1),p(!1)}},[e]),S=l.useCallback(k=>{I(),k&&(a.current&&(clearTimeout(a.current),a.current=null),x(!0),a.current=setTimeout(()=>{w({query:k,page:1})},800))},[w,I]),z=l.useCallback((k,F)=>{const $=k.target;if(!($.scrollHeight-$.scrollTop-$.clientHeight<1)||j||d||!F)return;const T=h+1;p(!0),v(T),w({query:F,page:T})},[j,d,h,w]);return{contactList:s,hasSearched:o,isLoading:d,isLoadingTimer:g,isNextPage:y,handleQueryChanged:S,handleScroll:z,resetSearchState:I}}const Wn=({linkContactsHandler:e,disabled:a=!1})=>{const n=Ue(),s=Dn(),i=l.useRef(null),[o,c]=l.useState(null),{action:{handleSearchChange:d,handleSelectContact:u,handleRemoveContact:g},state:{search:x,selectedContacts:y}}=e,{contactList:p,hasSearched:h,isLoading:v,isLoadingTimer:j,handleQueryChanged:f,handleScroll:I,resetSearchState:C}=Zl(s),w=x||"",S=!!o&&w.length>0&&!a,z=y.map(T=>T.id);l.useEffect(()=>{w?f(w):C()},[w,f,C]);const k=T=>{d(T),T&&!o?c(i.current):T||c(null)},F=T=>{u(T),c(null),C()},$=()=>{c(null)};return a?t.jsx(Oe,{title:n("global.linkContacts"),children:y.length>0?t.jsx(r.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,pt:.5},children:y.map(T=>t.jsx(r.Chip,{icon:t.jsx(fa,{fontSize:"small"}),label:T.name,size:"small",variant:"outlined"},T.id))}):t.jsx(r.Typography,{variant:"body1",sx:{py:.5},children:"-"})}):t.jsx(r.ClickAwayListener,{onClickAway:$,children:t.jsxs(r.Box,{children:[t.jsxs(Oe,{title:n("global.linkContacts"),children:[t.jsx(r.TextField,{ref:i,fullWidth:!0,size:"small",placeholder:n("global.searchContacts"),value:w,onChange:T=>k(T.target.value),onFocus:()=>{w&&c(i.current)},InputProps:{startAdornment:t.jsx(fa,{sx:{mr:1,opacity:.5},fontSize:"small"}),endAdornment:v||j?t.jsx(r.CircularProgress,{size:18,sx:{mr:1}}):null}}),y.length>0&&t.jsx(r.Box,{sx:{display:"flex",flexWrap:"wrap",gap:.5,mt:1},children:y.map(T=>t.jsx(r.Chip,{icon:t.jsx(fa,{fontSize:"small"}),label:T.name,size:"small",onDelete:()=>g(T.id)},T.id))})]}),t.jsx(r.Popper,{open:S,anchorEl:o,placement:"bottom-start",style:{width:o?.offsetWidth||"auto",zIndex:1300},children:t.jsxs(r.Paper,{elevation:8,sx:{mt:.5,maxHeight:300,overflow:"hidden"},children:[h&&p.length>0&&t.jsx(Jl,{handleScroll:T=>I(T,w),contactList:p,handleSelectContact:F,selectedContactIds:z,search:w}),h&&p.length===0&&t.jsx(r.Box,{sx:{p:2,textAlign:"center",color:"text.secondary"},children:t.jsx(r.Typography,{variant:"body2",children:n("global.noResults","No se encontraron resultados")})})]})})]})})},ec=({isFinalized:e})=>{const{eventDialog:{handleClose:a},handleCreateEvent:n,dialogMode:s,handleStartEditingEvent:i,handleSaveUpdatedEvent:o,handleEndEvent:c,dialogType:d,handleCreateTask:u,handleSaveUpdatedTask:g,selectedTask:x,handleToggleTaskCompleted:y}=l.useContext(Da),p=Ue(),h=d==="event",v=!1,j=!1,f=!1,I=()=>{h?n():u()},C=(()=>{if(s==="view")return i;if(s==="edit")return h?()=>o?.():()=>g?.();if(s==="create")return I})(),w=p(s==="view"?h?"global.editEvent":"global.editTask":s==="edit"?h?"global.saveEvent":"global.saveTask":h?"global.createEvent":"global.createTask"),S=h?v:f,z=e,k=!h&&s==="view",F=x?.isCompleted||!1;return k?t.jsx(r.DialogActions,{children:t.jsx(Qe.LoadingButton,{startIcon:t.jsx($e.CheckCircleOutline,{}),size:"small",loading:f,disabled:f,onClick:y,variant:"contained",color:F?"inherit":"primary",children:F?p("global.markAsIncomplete","Marcar como incompleta"):p("global.markAsCompleted","Marcar como completada")})}):t.jsxs(r.DialogActions,{children:[t.jsx(r.Button,{variant:"outlined",size:"small",onClick:a,color:"secondary",children:p("global.cancel")}),h&&(s==="edit"||s==="view")&&t.jsx(Qe.LoadingButton,{startIcon:t.jsx($e.EventAvailable,{}),size:"small",disabled:e,loading:j,onClick:c,variant:"contained",children:p("global.finalizeEvent")}),t.jsx(Qe.LoadingButton,{startIcon:t.jsx($e.EditCalendar,{}),size:"small",loading:S,disabled:z,onClick:C,variant:"contained",children:w})]})},_n={textTransform:"none",borderRadius:2,minHeight:34,px:1.5,fontSize:13,fontWeight:500,lineHeight:1.1},tc=({value:e,onChange:a,labels:n})=>t.jsxs(r.Box,{sx:{display:"flex",gap:1},children:[t.jsx(r.Button,{size:"small",onClick:()=>a("event"),variant:e==="event"?"contained":"text",disableElevation:!0,color:"secondary",sx:{..._n},children:n.event}),t.jsx(r.Button,{size:"small",onClick:()=>a("task"),variant:e==="task"?"contained":"text",disableElevation:!0,sx:{..._n},color:"secondary",children:n.task})]}),ac="DD/MM/YYYY",nc="HH:mm",sc=({selectedDateTime:e,handleSelect:a,disabled:n,isError:s=!1,hideLabel:i=!1})=>{const o=Ue(),c=u=>{if(!u)return;const g=u.hour(e.hour()).minute(e.minute());a(g)},d=u=>{if(!u)return;const g=e.hour(u.hour()).minute(u.minute());a(g)};return n?t.jsxs(ra,{children:[!i&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:o("global.date")}),t.jsxs(r.Box,{children:[t.jsx(r.Typography,{variant:"body1",sx:{mb:1},children:e.format(ac)}),t.jsx(r.Typography,{variant:"body1",children:e.format(nc)})]})]}):t.jsxs(ra,{children:[!i&&t.jsx("span",{style:{userSelect:"none",marginBottom:10},children:o("global.date")}),t.jsx(Ba,{children:t.jsxs(Ve.LocalizationProvider,{dateAdapter:Va.AdapterDayjs,children:[t.jsx(Ve.DatePicker,{disabled:n,value:e,onChange:c,slotProps:{textField:()=>({label:o("global.date"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1},minDate:J()}),t.jsx(Ua,{variant:"body1",children:"_"}),t.jsx(Ve.TimePicker,{disabled:n,value:e,onChange:d,ampm:!1,slotProps:{textField:()=>({label:o("global.time"),size:"small",className:"smallInput"}),popper:{sx:{"& .MuiPaper-root":{backgroundColor:u=>u.palette.background.panel}}}},sx:{alignSelf:"baseline",flex:1}})]})}),t.jsx(r.Fade,{in:s,children:t.jsx(r.Typography,{color:"red",variant:"caption",children:o("conversations.sidebar.events.errorDate")})})]})},Vn=({disabled:e,calendars:a,userId:n,value:s,onChange:i})=>{const o=Ue(),c=l.useMemo(()=>a??[],[a]),d=l.useMemo(()=>c.find(u=>u.id===s)??null,[c,s]);return e?t.jsx(Oe,{title:o("global.calendar"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[d&&t.jsx(us,{sx:{opacity:.5,color:u=>u.palette.text.secondary},fontSize:"small"}),t.jsx(r.Typography,{variant:"subtitle2",sx:{color:u=>u.palette.text.secondary,fontSize:"0.9rem"},children:d?.title||"-"})]})}):t.jsx(Oe,{title:o("global.calendar"),children:t.jsx(r.Autocomplete,{disabled:e,size:"small",fullWidth:!0,options:c,value:d,onChange:(u,g)=>i(g?.id??""),getOptionLabel:u=>u?.title??"",isOptionEqualToValue:(u,g)=>u.id===g.id,groupBy:n?u=>u.userId===n?o("calendarView.myCalendars"):o("calendarView.othersCalendars"):void 0,renderGroup:u=>t.jsxs("li",{children:[t.jsx(r.ListSubheader,{component:"div",sx:{lineHeight:"32px",fontSize:"0.75rem",fontWeight:600,color:"text.secondary",backgroundColor:g=>g.palette.background.panel},children:u.group}),t.jsx("ul",{style:{padding:0},children:u.children})]},u.key),slotProps:{popper:{sx:{zIndex:1400}},paper:{sx:{backgroundColor:u=>u.palette.background.panel}}},renderInput:u=>t.jsx(r.TextField,{...u,placeholder:o("global.selectCalendar")})})})},rc=({checked:e,onChange:a,disabled:n})=>{const s=Ue();return t.jsx(r.Box,{sx:{display:"flex",alignItems:"center"},children:t.jsx(r.FormControlLabel,{control:t.jsx(r.Checkbox,{checked:e,onChange:i=>a(i.target.checked),disabled:n,color:"secondary"}),label:s("global.allDay","Todo el d\xEDa")})})},oc=({colorField:e,disabled:a,onColorChange:n})=>{const s=Ue(),i=e.attributes.value||"#1976d2",o=(d=>{if(d.startsWith("#"))return d;const u=d.match(/rgba?\((\d+),\s*(\d+),\s*(\d+)/);if(u&&u[1]&&u[2]&&u[3]){const g=parseInt(u[1]),x=parseInt(u[2]),y=parseInt(u[3]),p=h=>{const v=h.toString(16);return v.length===1?"0"+v:v};return`#${p(g)}${p(x)}${p(y)}`}return"#1976d2"})(i),c=d=>{const u=d.target.value;n?n(u):e.actions.changeValue(u)};return a?t.jsx(Oe,{title:s("global.color","Color"),children:t.jsxs(r.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:[t.jsx(r.Box,{sx:{width:40,height:40,backgroundColor:o,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:1}}),t.jsx(r.Typography,{variant:"body2",sx:{color:"text.secondary"},children:o})]})}):t.jsx(Oe,{title:s("global.color","Color"),children:t.jsx(r.Box,{sx:{display:"flex",gap:1,alignItems:"center"},children:t.jsx("input",{type:"color",value:o,onChange:c,disabled:a,style:{width:60,height:40,border:"1px solid rgba(0, 0, 0, 0.23)",borderRadius:4,cursor:a?"not-allowed":"pointer"}})})})},qn=[{value:"",label:"global.noRepeat"},{value:"FREQ=DAILY",label:"global.everyDay"},{value:"FREQ=WEEKLY",label:"global.everyWeek"},{value:"FREQ=MONTHLY",label:"global.everyMonth"},{value:"FREQ=YEARLY",label:"global.everyYear"},{value:"FREQ=DAILY;INTERVAL=2",label:"global.everyTwoDays"},{value:"FREQ=WEEKLY;INTERVAL=2",label:"global.everyTwoWeeks"},{value:"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR",label:"global.everyWeekday"}],ic=({value:e,onChange:a,disabled:n,hideLabel:s=!1})=>{const i=Ue(),o=g=>{a(g.target.value)},c=l.useMemo(()=>qn.map(g=>t.jsx(r.MenuItem,{value:g.value,children:i(g.label,g.label)},g.value)),[i]),d=l.useMemo(()=>{const g=qn.find(x=>x.value===e);return g?i(g.label,g.label):i("global.noRepeat")},[e,i]);if(n)return s?t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(xa,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body2",children:d})]}):t.jsx(Oe,{title:i("global.recurrence","Recurrencia"),children:t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",gap:1,py:.5},children:[t.jsx(xa,{sx:{opacity:.5},fontSize:"small"}),t.jsx(r.Typography,{variant:"body1",children:d})]})});const u=t.jsx(r.Select,{disabled:n,size:"small",variant:"outlined",fullWidth:!0,value:e||"",onChange:o,startAdornment:t.jsx(xa,{sx:{mr:1,ml:1,opacity:.5},fontSize:"small"}),MenuProps:{PaperProps:{sx:{backgroundColor:g=>g.palette.background.panel}}},children:c});return s?u:t.jsx(Oe,{title:i("global.recurrence","Recurrencia"),children:u})},lc=({open:e,onClose:a,onConfirm:n,itemTitle:s,itemType:i})=>{const{t:o}=_e.useTranslation(),c=()=>{n(),a()},d=i==="event"?o("calendar.deleteEvent","Eliminar evento"):o("calendar.deleteTask","Eliminar tarea"),u=i==="event"?o("calendar.confirmDeleteEvent","\xBFEst\xE1s seguro de que quer\xE9s eliminar este evento?"):o("calendar.confirmDeleteTask","\xBFEst\xE1s seguro de que quer\xE9s eliminar esta tarea?");return t.jsxs(r.Dialog,{open:e,onClose:a,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:g=>g.palette.background.panel}},children:[t.jsxs(r.DialogTitle,{sx:{display:"flex",alignItems:"center",gap:1},children:[t.jsx(ps,{color:"warning"}),d]}),t.jsxs(r.DialogContent,{children:[t.jsx(r.Typography,{variant:"body2",sx:{mb:2},children:u}),s&&t.jsx(r.Box,{sx:{p:1.5,bgcolor:"action.hover",borderRadius:1,borderLeft:3,borderColor:"warning.main"},children:t.jsxs(r.Typography,{variant:"body2",sx:{fontWeight:500},children:['"',s,'"']})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:a,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:o("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:c,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:o("global.delete","Eliminar")})]})]})},cc=({open:e,onClose:a,onConfirm:n,eventTitle:s})=>{const{t:i}=_e.useTranslation(),[o,c]=l.useState("single"),d=()=>{n(o==="all"),a()},u=()=>{c("single"),a()};return t.jsxs(r.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:g=>g.palette.background.panel}},children:[t.jsx(r.DialogTitle,{children:i("calendar.deleteRecurringEvent","Borrar evento recurrente")}),t.jsxs(r.DialogContent,{children:[s&&t.jsxs(r.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',s,'"']}),t.jsx(r.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(r.RadioGroup,{value:o,onChange:g=>c(g.target.value),children:[t.jsx(r.FormControlLabel,{value:"single",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.deleteThisEvent","Este evento"),sx:{mb:1}}),t.jsx(r.FormControlLabel,{value:"all",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.deleteAllEvents","Todos los eventos")})]})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:d,variant:"contained",color:"error",sx:{borderRadius:"8px"},children:i("global.delete","Eliminar")})]})]})},dc=({open:e,onClose:a,onConfirm:n,eventTitle:s})=>{const{t:i}=_e.useTranslation(),[o,c]=l.useState("single"),d=()=>{n(o==="all"),a()},u=()=>{c("single"),a()};return t.jsxs(r.Dialog,{open:e,onClose:u,maxWidth:"xs",fullWidth:!0,PaperProps:{sx:{backgroundColor:g=>g.palette.background.panel}},children:[t.jsx(r.DialogTitle,{children:i("calendar.editRecurringEvent","Editar evento recurrente")}),t.jsxs(r.DialogContent,{children:[s&&t.jsxs(r.Box,{sx:{mb:2,color:"text.secondary",fontSize:"0.875rem"},children:['"',s,'"']}),t.jsx(r.FormControl,{component:"fieldset",fullWidth:!0,children:t.jsxs(r.RadioGroup,{value:o,onChange:g=>c(g.target.value),children:[t.jsx(r.FormControlLabel,{value:"single",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.editThisEvent","Este evento"),sx:{mb:1}}),t.jsx(r.FormControlLabel,{value:"all",control:t.jsx(r.Radio,{color:"secondary"}),label:i("calendar.editAllEvents","Todos los eventos")})]})})]}),t.jsxs(r.DialogActions,{sx:{px:3,pb:2},children:[t.jsx(r.Button,{onClick:u,variant:"outlined",color:"inherit",sx:{borderRadius:"8px"},children:i("global.cancel","Cancelar")}),t.jsx(r.Button,{onClick:d,variant:"contained",color:"secondary",sx:{borderRadius:"8px"},children:i("global.save","Guardar")})]})]})},uc=()=>{const e=Ue(),{event:a,task:n,dialogMode:s,selectedEvent:i,handleDeleteEvent:o,handleStartEditingEvent:c,handleDuplicateItem:d,dialogType:u,setDialogType:g,selectedTask:x,taskCalendarId:y,setTaskCalendarId:p,eventCalendarId:h,setEventCalendarId:v,myCalendars:j,otherCalendars:f,handleDeleteTask:I,userManuallyChangedColor:C,setUserManuallyChangedColor:w,eventDialog:{open:S,handleClose:z},confirmDeleteDialog:k,handleConfirmDelete:F,deleteRecurringDialog:$,handleConfirmDeleteRecurring:T,editRecurringDialog:V,handleConfirmEditRecurring:W,hiddenTabs:_}=l.useContext(Da);if(!a||!n)return t.jsx(r.Modal,{open:S,onClose:z,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:S,timeout:200,children:t.jsx(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",height:"min(560px, calc(100vh - 64px))",bgcolor:L=>L.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,p:3,overflow:"visible"}})})});const Y=u==="event",P=Y?a:n,X=Y?i:x,K=l.useRef(null),E=l.useRef(null);l.useEffect(()=>{S||(K.current=null,E.current=null)},[S]);const{titleField:M,descriptionField:B,date:R,linkContact:N}=P,H=Y?a.notifications:null,q=Y?{locationField:a.locationField,colorField:a.colorField,allDay:a.allDay,setAllDay:a.setAllDay,isPrivate:a.isPrivate,setIsPrivate:a.setIsPrivate,recurrenceRule:a.recurrenceRule,setRecurrenceRule:a.setRecurrenceRule}:null,te=e(s==="edit"?Y?"global.editEvent":"global.editTask":s==="create"?Y?"global.createEvent":"global.createTask":Y?"global.showEvent":"global.showTask"),le=(s==="edit"||s==="view")&&!!X?.id,he=s==="view";l.useEffect(()=>{if(s!=="create"||u!=="event"||!S||C||!h)return;const L=j.find(be=>be.id===h);L?.color&&a.colorField.actions.changeValue(L.color)},[s,u,S,h,C,j]),l.useEffect(()=>{if(!S||u!=="event"||s!=="edit")return;const L=R.state.selectedStartDate.isAfter(R.state.selectedEndDate)&&!R.state.selectedStartDate.isSame(R.state.selectedEndDate,"minute");E.current!==L&&(E.current=L,R.action.setError(L))},[S,u,s,R.state.selectedStartDate.valueOf(),R.state.selectedEndDate.valueOf()]),l.useEffect(()=>{if(!S||s==="create")return;const L=X?.relatedContact;L?.id&&K.current!==L.id&&(K.current=L.id,N.action.resetField(),N.action.handleSelectContact({id:L.id,name:L.name}))},[S,s,X?.id]);const fe=L=>{if(L==="task"){const be=a.date.state.selectedStartDate;n.date.action.setSelectedStartDate(be),n.date.action.setSelectedEndDate(be),n.date.action.setError(!1),a.date.action.setError(!1)}else{const be=n.date.state.selectedStartDate;a.date.action.setSelectedStartDate(be),a.date.action.setError(!1),n.date.action.setError(!1)}g(L)},Ce=L=>{a.colorField.actions.changeValue(L),w(!0)};return t.jsxs(t.Fragment,{children:[t.jsx(r.Modal,{open:S,onClose:z,closeAfterTransition:!0,slots:{backdrop:r.Backdrop},slotProps:{backdrop:{timeout:200}},children:t.jsx(r.Fade,{in:S,timeout:200,children:t.jsxs(r.Box,{sx:{position:"absolute",top:"50%",left:"50%",transform:"translate(-50%, -50%)",width:"min(640px, calc(100vw - 32px))",maxHeight:"calc(100vh - 64px)",bgcolor:L=>L.palette.background.panel,borderRadius:3,boxShadow:24,outline:0,overflow:"hidden",display:"flex",flexDirection:"column"},children:[t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",gap:2,p:3,pt:4,overflowY:"auto",flex:1},children:[t.jsxs(r.Box,{sx:{display:"flex",alignItems:"center",justifyContent:s==="create"?"flex-end":"space-between",gap:1,mb:.5},children:[s!=="create"&&t.jsx(r.Typography,{sx:{fontWeight:600},children:te}),t.jsxs(r.Box,{sx:{display:"flex",gap:1},children:[he&&t.jsx(r.IconButton,{size:"small",onClick:c,"aria-label":e("global.edit","Editar"),children:t.jsx(bt,{fontSize:"small"})}),le&&t.jsx(r.IconButton,{size:"small",onClick:Y?o:I,color:"error","aria-label":e("global.delete","Eliminar"),children:t.jsx(Kt,{fontSize:"small"})}),he&&t.jsx(r.IconButton,{size:"small",onClick:d,"aria-label":e("global.duplicate","Duplicar"),children:t.jsx(hs,{fontSize:"small"})})]})]}),s==="create"&&t.jsxs(t.Fragment,{children:[t.jsx(Pa,{disabled:!1,titleField:M,variantMode:"inline"}),!_&&t.jsx(tc,{value:u,onChange:fe,labels:{event:e("global.event","Evento"),task:e("global.task","Tarea")}})]}),u==="event"?t.jsxs(t.Fragment,{children:[s!=="create"&&t.jsx(Pa,{disabled:s==="view",titleField:M}),t.jsx(Nn,{disabled:s==="view",descriptionField:B}),t.jsx(Vn,{disabled:s==="view",calendars:[...j,...f],userId:j[0]?.userId,value:h,onChange:L=>v(L)}),t.jsxs(r.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,borderRadius:1,padding:"15px",bgcolor:L=>L.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:[t.jsx(r.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:t.jsx(r.Box,{sx:{flex:1},children:t.jsx(Ul,{disabled:s==="view",selectedStartDate:R.state.selectedStartDate,selectedEndDate:R.state.selectedEndDate,handleSelectStart:R.action.handleSelect(R.action.setSelectedStartDate),handleSelectEnd:R.action.handleSelect(R.action.setSelectedEndDate),isError:R.state.error,hideLabel:!0,allDay:q?.allDay??!1})})}),q&&t.jsxs(r.Box,{sx:{display:"flex",gap:2,alignItems:"center"},children:[t.jsx(rc,{checked:q.allDay,onChange:q.setAllDay,disabled:s==="view"}),t.jsx(r.Box,{sx:{flex:1},children:t.jsx(ic,{disabled:s==="view",value:q.recurrenceRule,onChange:q.setRecurrenceRule,hideLabel:!0})})]})]}),q&&t.jsx(t.Fragment,{children:t.jsx(oc,{disabled:s==="view",colorField:q.colorField,onColorChange:s==="create"?Ce:void 0})}),H&&t.jsx(ql,{disabled:s==="view",notificationsField:H}),t.jsx(Wn,{linkContactsHandler:N,disabled:s==="view"}),q&&t.jsx(Kl,{disabled:s==="view",locationField:q.locationField})]}):t.jsxs(t.Fragment,{children:[s!=="create"&&t.jsx(Pa,{disabled:s==="view",titleField:M}),t.jsx(Nn,{disabled:s==="view",descriptionField:B}),t.jsx(Vn,{disabled:s==="view",calendars:[...j,...f],userId:j[0]?.userId,value:y,onChange:L=>p(L)}),t.jsx(r.Box,{sx:{display:"flex",flexDirection:"column",gap:1.5,p:2,borderRadius:1,bgcolor:L=>L.palette.mode==="dark"?"rgba(255, 255, 255, 0.05)":"rgba(0, 0, 0, 0.02)"},children:t.jsxs(r.Box,{sx:{display:"flex",gap:1.5,alignItems:"flex-start"},children:[t.jsx(ms,{sx:{mt:.5,color:"text.secondary",fontSize:"1.25rem"}}),t.jsx(r.Box,{sx:{flex:1},children:t.jsx(sc,{disabled:s==="view",selectedDateTime:R.state.selectedStartDate,handleSelect:L=>{R.action.setSelectedStartDate(L),R.action.setSelectedEndDate(L),R.action.setError(!1)},isError:R.state.error,hideLabel:!0})})]})}),t.jsx(Wn,{linkContactsHandler:N,disabled:s==="view"})]})]}),t.jsx(r.Box,{sx:{borderTop:1,borderColor:"divider",p:2},children:t.jsx(ec,{isFinalized:i?.finalized})})]})})}),t.jsx(lc,{open:k.open,onClose:k.handleClose,onConfirm:F,itemTitle:k.itemType==="event"?i?.title:x?.title,itemType:k.itemType}),t.jsx(cc,{open:$.open,onClose:$.handleClose,onConfirm:T,eventTitle:i?.title}),t.jsx(dc,{open:V.open,onClose:V.handleClose,onConfirm:W,eventTitle:i?.title})]})},pc=e=>{const a=e.palette.background;return r.createTheme({...e,components:{MuiSelect:{defaultProps:{MenuProps:{PaperProps:{sx:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}}}},MuiAutocomplete:{styleOverrides:{popper:{zIndex:11,"& div":{backgroundColor:a.panel}}}},MuiPaper:{styleOverrides:{root:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiMenu:{styleOverrides:{paper:{backgroundColor:a.panel,backgroundImage:"linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05))"}}},MuiList:{styleOverrides:{root:{padding:0}}},MuiModal:{styleOverrides:{root:{}}},MuiTypography:{styleOverrides:{root:{color:e.palette.text.primary}}},MuiChip:{styleOverrides:{root:{color:e.palette.text.primary,border:"1px solid rgba(0, 0, 0, 0.1)",borderRadius:"4px",height:"20px",fontSize:"0.7125rem"}}},MuiListSubheader:{styleOverrides:{root:{backgroundColor:a.accordionHeader}}},MuiButton:{styleOverrides:{outlined:{color:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,borderColor:e.palette.mode==="light"?e.palette.primary.dark:e.palette.info.dark,"&:hover":{borderColor:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main,color:e.palette.mode==="light"?e.palette.primary.main:e.palette.info.main}}}}}})},hc=e=>{const{open:a,onClose:n,baseUrl:s,spaceId:i,language:o="en",mode:c="create",type:d="event",eventCalendarId:u,taskCalendarId:g,selectedEvent:x,selectedTask:y,hiddenTabs:p=!1,onActionComplete:h}=e,{i18n:v}=_e.useTranslation();return l.useEffect(()=>{o&&v.changeLanguage(o)},[o,v]),t.jsx(Hi,{value:{baseUrl:s,spaceId:i},children:t.jsx(Bl,{externalOpen:a,externalOnClose:n,externalMode:c,externalType:d,externalEventCalendarId:u,externalTaskCalendarId:g,externalSelectedEvent:x,externalSelectedTask:y,hiddenTabs:p,externalOnActionComplete:h,children:t.jsx(uc,{})})})},mc=e=>{const a=r.useTheme(),n=a?.palette?a:r.createTheme(),s=pc(n);return t.jsx(r.ThemeProvider,{theme:s,children:t.jsx(_e.I18nextProvider,{i18n:It,children:t.jsx(hc,{...e})})})};exports.ContactInfoPopup=Qa,exports.EditContactModal=Yi,exports.EventsDialog=mc,exports.i18n=It;
21
21
  //# sourceMappingURL=index.js.map