@attabot/complaint-app 1.0.41 → 1.0.43

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.
@@ -1,14 +1,13 @@
1
- (function(P,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("react-dom"),require("react-redux"),require("@reduxjs/toolkit")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom","react-redux","@reduxjs/toolkit"],s):(P=typeof globalThis<"u"?globalThis:P||self,s(P.ComplaintApp={},P["react/jsx-runtime"],P.React,P.ReactDOM,P.ReactRedux,P.RTK))})(this,(function(P,s,y,hc,Q,oe){"use strict";var Cr=typeof document<"u"?document.currentScript:null;function mc(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const B=mc(y);function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jt.apply(null,arguments)}var Je;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Je||(Je={}));const as="popstate";function gc(e){e===void 0&&(e={});function t(r,a){let{pathname:o,search:l,hash:i}=r.location;return Nr("",{pathname:o,search:l,hash:i},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:qt(a)}return bc(t,n,null,e)}function se(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Le(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function yc(){return Math.random().toString(36).substr(2,8)}function ss(e,t){return{usr:e.state,key:e.key,idx:t}}function Nr(e,t,n,r){return n===void 0&&(n=null),jt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pt(t):t,{state:n,key:t&&t.key||r||yc()})}function qt(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function pt(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function bc(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:o=!1}=r,l=a.history,i=Je.Pop,c=null,d=u();d==null&&(d=0,l.replaceState(jt({},l.state,{idx:d}),""));function u(){return(l.state||{idx:null}).idx}function f(){i=Je.Pop;let h=u(),g=h==null?null:h-d;d=h,c&&c({action:i,location:m.location,delta:g})}function p(h,g){i=Je.Push;let b=Nr(m.location,h,g);d=u()+1;let L=ss(b,d),N=m.createHref(b);try{l.pushState(L,"",N)}catch(x){if(x instanceof DOMException&&x.name==="DataCloneError")throw x;a.location.assign(N)}o&&c&&c({action:i,location:m.location,delta:1})}function w(h,g){i=Je.Replace;let b=Nr(m.location,h,g);d=u();let L=ss(b,d),N=m.createHref(b);l.replaceState(L,"",N),o&&c&&c({action:i,location:m.location,delta:0})}function S(h){let g=a.location.origin!=="null"?a.location.origin:a.location.href,b=typeof h=="string"?h:qt(h);return b=b.replace(/ $/,"%20"),se(g,"No window.location.(origin|href) available to create URL for href: "+b),new URL(b,g)}let m={get action(){return i},get location(){return e(a,l)},listen(h){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(as,f),c=h,()=>{a.removeEventListener(as,f),c=null}},createHref(h){return t(a,h)},createURL:S,encodeLocation(h){let g=S(h);return{pathname:g.pathname,search:g.search,hash:g.hash}},push:p,replace:w,go(h){return l.go(h)}};return m}var os;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(os||(os={}));function Sc(e,t,n){return n===void 0&&(n="/"),vc(e,t,n)}function vc(e,t,n,r){let a=typeof t=="string"?pt(t):t,o=Ze(a.pathname||"/",n);if(o==null)return null;let l=ls(e);wc(l);let i=null,c=Oc(o);for(let d=0;i==null&&d<l.length;++d)i=Fc(l[d],c);return i}function ls(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(o,l,i)=>{let c={relativePath:i===void 0?o.path||"":i,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};c.relativePath.startsWith("/")&&(se(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=qe([r,c.relativePath]),u=n.concat(c);o.children&&o.children.length>0&&(se(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),ls(o.children,t,u,d)),!(o.path==null&&!o.index)&&t.push({path:d,score:Tc(d,o.index),routesMeta:u})};return e.forEach((o,l)=>{var i;if(o.path===""||!((i=o.path)!=null&&i.includes("?")))a(o,l);else for(let c of is(o.path))a(o,l,c)}),t}function is(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return a?[o,""]:[o];let l=is(r.join("/")),i=[];return i.push(...l.map(c=>c===""?o:[o,c].join("/"))),a&&i.push(...l),i.map(c=>e.startsWith("/")&&c===""?"/":c)}function wc(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Ic(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Cc=/^:[\w-]+$/,Nc=3,_c=2,Ac=1,Ec=10,Lc=-2,cs=e=>e==="*";function Tc(e,t){let n=e.split("/"),r=n.length;return n.some(cs)&&(r+=Lc),t&&(r+=_c),n.filter(a=>!cs(a)).reduce((a,o)=>a+(Cc.test(o)?Nc:o===""?Ac:Ec),r)}function Ic(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function Fc(e,t,n){let{routesMeta:r}=e,a={},o="/",l=[];for(let i=0;i<r.length;++i){let c=r[i],d=i===r.length-1,u=o==="/"?t:t.slice(o.length)||"/",f=_r({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),p=c.route;if(!f)return null;Object.assign(a,f.params),l.push({params:a,pathname:qe([o,f.pathname]),pathnameBase:Uc(qe([o,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(o=qe([o,f.pathnameBase]))}return l}function _r(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=kc(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),i=a.slice(1);return{params:r.reduce((d,u,f)=>{let{paramName:p,isOptional:w}=u;if(p==="*"){let m=i[f]||"";l=o.slice(0,o.length-m.length).replace(/(.)\/+$/,"$1")}const S=i[f];return w&&!S?d[p]=void 0:d[p]=(S||"").replace(/%2F/g,"/"),d},{}),pathname:o,pathnameBase:l,pattern:e}}function kc(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Le(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,i,c)=>(r.push({paramName:i,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function Oc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Le(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Ze(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}const Dc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Mc=e=>Dc.test(e);function xc(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?pt(e):e,o;if(n)if(Mc(n))o=n;else{if(n.includes("//")){let l=n;n=ps(n),Le(!1,"Pathnames cannot have embedded double slashes - normalizing "+(l+" -> "+n))}n.startsWith("/")?o=ds(n.substring(1),"/"):o=ds(n,t)}else o=t;return{pathname:o,search:$c(r),hash:Bc(a)}}function ds(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function Ar(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Pc(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function us(e,t){let n=Pc(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function fs(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=pt(e):(a=jt({},e),se(!a.pathname||!a.pathname.includes("?"),Ar("?","pathname","search",a)),se(!a.pathname||!a.pathname.includes("#"),Ar("#","pathname","hash",a)),se(!a.search||!a.search.includes("#"),Ar("#","search","hash",a)));let o=e===""||a.pathname==="",l=o?"/":a.pathname,i;if(l==null)i=n;else{let f=t.length-1;if(!r&&l.startsWith("..")){let p=l.split("/");for(;p[0]==="..";)p.shift(),f-=1;a.pathname=p.join("/")}i=f>=0?t[f]:"/"}let c=xc(a,i),d=l&&l!=="/"&&l.endsWith("/"),u=(o||l===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const ps=e=>e.replace(/\/\/+/g,"/"),qe=e=>ps(e.join("/")),Uc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),$c=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Bc=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function jc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const hs=["post","put","patch","delete"];new Set(hs);const qc=["get",...hs];new Set(qc);function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(null,arguments)}const Wt=B.createContext(null);process.env.NODE_ENV!=="production"&&(Wt.displayName="DataRouter");const Er=B.createContext(null);process.env.NODE_ENV!=="production"&&(Er.displayName="DataRouterState");const Vc=B.createContext(null);process.env.NODE_ENV!=="production"&&(Vc.displayName="Await");const Oe=B.createContext(null);process.env.NODE_ENV!=="production"&&(Oe.displayName="Navigation");const zt=B.createContext(null);process.env.NODE_ENV!=="production"&&(zt.displayName="Location");const Me=B.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(Me.displayName="Route");const Lr=B.createContext(null);process.env.NODE_ENV!=="production"&&(Lr.displayName="RouteError");function Wc(e,t){let{relative:n}=t===void 0?{}:t;ht()||(process.env.NODE_ENV!=="production"?se(!1,"useHref() may be used only in the context of a <Router> component."):se(!1));let{basename:r,navigator:a}=B.useContext(Oe),{hash:o,pathname:l,search:i}=Ht(e,{relative:n}),c=l;return r!=="/"&&(c=l==="/"?r:qe([r,l])),a.createHref({pathname:c,search:i,hash:o})}function ht(){return B.useContext(zt)!=null}function xe(){return ht()||(process.env.NODE_ENV!=="production"?se(!1,"useLocation() may be used only in the context of a <Router> component."):se(!1)),B.useContext(zt).location}const ms="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function gs(e){B.useContext(Oe).static||B.useLayoutEffect(e)}function Pe(){let{isDataRoute:e}=B.useContext(Me);return e?rd():zc()}function zc(){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useNavigate() may be used only in the context of a <Router> component."):se(!1));let e=B.useContext(Wt),{basename:t,future:n,navigator:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=xe(),l=JSON.stringify(us(a,n.v7_relativeSplatPath)),i=B.useRef(!1);return gs(()=>{i.current=!0}),B.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&Le(i.current,ms),!i.current)return;if(typeof d=="number"){r.go(d);return}let f=fs(d,JSON.parse(l),o,u.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:qe([t,f.pathname])),(u.replace?r.replace:r.push)(f,u.state,u)},[t,r,l,o,e])}function mt(){let{matches:e}=B.useContext(Me),t=e[e.length-1];return t?t.params:{}}function Ht(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=xe(),l=JSON.stringify(us(a,r.v7_relativeSplatPath));return B.useMemo(()=>fs(e,JSON.parse(l),o,n==="path"),[e,l,o,n])}function Hc(e,t){return Kc(e,t)}function Kc(e,t,n,r){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useRoutes() may be used only in the context of a <Router> component."):se(!1));let{navigator:a}=B.useContext(Oe),{matches:o}=B.useContext(Me),l=o[o.length-1],i=l?l.params:{},c=l?l.pathname:"/",d=l?l.pathnameBase:"/",u=l&&l.route;if(process.env.NODE_ENV!=="production"){let b=u&&u.path||"";Ss(c,!u||b.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+b+'">) but the ')+`parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
1
+ (function(x,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("react-dom"),require("react-redux"),require("@reduxjs/toolkit")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom","react-redux","@reduxjs/toolkit"],s):(x=typeof globalThis<"u"?globalThis:x||self,s(x.ComplaintApp={},x["react/jsx-runtime"],x.React,x.ReactDOM,x.ReactRedux,x.RTK))})(this,(function(x,s,y,as,X,ce){"use strict";var Cr=typeof document<"u"?document.currentScript:null;function mc(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const B=mc(y);function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(null,arguments)}var Xe;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Xe||(Xe={}));const ss="popstate";function gc(e){e===void 0&&(e={});function t(r,a){let{pathname:o,search:l,hash:i}=r.location;return Ar("",{pathname:o,search:l,hash:i},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:qt(a)}return bc(t,n,null,e)}function le(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Le(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function yc(){return Math.random().toString(36).substr(2,8)}function os(e,t){return{usr:e.state,key:e.key,idx:t}}function Ar(e,t,n,r){return n===void 0&&(n=null),Vt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pt(t):t,{state:n,key:t&&t.key||r||yc()})}function qt(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function pt(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function bc(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:o=!1}=r,l=a.history,i=Xe.Pop,c=null,d=f();d==null&&(d=0,l.replaceState(Vt({},l.state,{idx:d}),""));function f(){return(l.state||{idx:null}).idx}function u(){i=Xe.Pop;let m=f(),h=m==null?null:m-d;d=m,c&&c({action:i,location:g.location,delta:h})}function p(m,h){i=Xe.Push;let v=Ar(g.location,m,h);d=f()+1;let _=os(v,d),A=g.createHref(v);try{l.pushState(_,"",A)}catch(M){if(M instanceof DOMException&&M.name==="DataCloneError")throw M;a.location.assign(A)}o&&c&&c({action:i,location:g.location,delta:1})}function w(m,h){i=Xe.Replace;let v=Ar(g.location,m,h);d=f();let _=os(v,d),A=g.createHref(v);l.replaceState(_,"",A),o&&c&&c({action:i,location:g.location,delta:0})}function b(m){let h=a.location.origin!=="null"?a.location.origin:a.location.href,v=typeof m=="string"?m:qt(m);return v=v.replace(/ $/,"%20"),le(h,"No window.location.(origin|href) available to create URL for href: "+v),new URL(v,h)}let g={get action(){return i},get location(){return e(a,l)},listen(m){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(ss,u),c=m,()=>{a.removeEventListener(ss,u),c=null}},createHref(m){return t(a,m)},createURL:b,encodeLocation(m){let h=b(m);return{pathname:h.pathname,search:h.search,hash:h.hash}},push:p,replace:w,go(m){return l.go(m)}};return g}var ls;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(ls||(ls={}));function Sc(e,t,n){return n===void 0&&(n="/"),vc(e,t,n)}function vc(e,t,n,r){let a=typeof t=="string"?pt(t):t,o=Ze(a.pathname||"/",n);if(o==null)return null;let l=is(e);wc(l);let i=null,c=Oc(o);for(let d=0;i==null&&d<l.length;++d)i=Fc(l[d],c);return i}function is(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(o,l,i)=>{let c={relativePath:i===void 0?o.path||"":i,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};c.relativePath.startsWith("/")&&(le(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=Ve([r,c.relativePath]),f=n.concat(c);o.children&&o.children.length>0&&(le(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),is(o.children,t,f,d)),!(o.path==null&&!o.index)&&t.push({path:d,score:Tc(d,o.index),routesMeta:f})};return e.forEach((o,l)=>{var i;if(o.path===""||!((i=o.path)!=null&&i.includes("?")))a(o,l);else for(let c of cs(o.path))a(o,l,c)}),t}function cs(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return a?[o,""]:[o];let l=cs(r.join("/")),i=[];return i.push(...l.map(c=>c===""?o:[o,c].join("/"))),a&&i.push(...l),i.map(c=>e.startsWith("/")&&c===""?"/":c)}function wc(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Ic(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Cc=/^:[\w-]+$/,Ac=3,Nc=2,_c=1,Ec=10,Lc=-2,ds=e=>e==="*";function Tc(e,t){let n=e.split("/"),r=n.length;return n.some(ds)&&(r+=Lc),t&&(r+=Nc),n.filter(a=>!ds(a)).reduce((a,o)=>a+(Cc.test(o)?Ac:o===""?_c:Ec),r)}function Ic(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function Fc(e,t,n){let{routesMeta:r}=e,a={},o="/",l=[];for(let i=0;i<r.length;++i){let c=r[i],d=i===r.length-1,f=o==="/"?t:t.slice(o.length)||"/",u=Nr({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},f),p=c.route;if(!u)return null;Object.assign(a,u.params),l.push({params:a,pathname:Ve([o,u.pathname]),pathnameBase:Uc(Ve([o,u.pathnameBase])),route:p}),u.pathnameBase!=="/"&&(o=Ve([o,u.pathnameBase]))}return l}function Nr(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=kc(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),i=a.slice(1);return{params:r.reduce((d,f,u)=>{let{paramName:p,isOptional:w}=f;if(p==="*"){let g=i[u]||"";l=o.slice(0,o.length-g.length).replace(/(.)\/+$/,"$1")}const b=i[u];return w&&!b?d[p]=void 0:d[p]=(b||"").replace(/%2F/g,"/"),d},{}),pathname:o,pathnameBase:l,pattern:e}}function kc(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Le(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,i,c)=>(r.push({paramName:i,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function Oc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Le(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Ze(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}const Dc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,xc=e=>Dc.test(e);function Mc(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?pt(e):e,o;if(n)if(xc(n))o=n;else{if(n.includes("//")){let l=n;n=hs(n),Le(!1,"Pathnames cannot have embedded double slashes - normalizing "+(l+" -> "+n))}n.startsWith("/")?o=us(n.substring(1),"/"):o=us(n,t)}else o=t;return{pathname:o,search:Bc(r),hash:$c(a)}}function us(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function _r(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Pc(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function fs(e,t){let n=Pc(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function ps(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=pt(e):(a=Vt({},e),le(!a.pathname||!a.pathname.includes("?"),_r("?","pathname","search",a)),le(!a.pathname||!a.pathname.includes("#"),_r("#","pathname","hash",a)),le(!a.search||!a.search.includes("#"),_r("#","search","hash",a)));let o=e===""||a.pathname==="",l=o?"/":a.pathname,i;if(l==null)i=n;else{let u=t.length-1;if(!r&&l.startsWith("..")){let p=l.split("/");for(;p[0]==="..";)p.shift(),u-=1;a.pathname=p.join("/")}i=u>=0?t[u]:"/"}let c=Mc(a,i),d=l&&l!=="/"&&l.endsWith("/"),f=(o||l===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||f)&&(c.pathname+="/"),c}const hs=e=>e.replace(/\/\/+/g,"/"),Ve=e=>hs(e.join("/")),Uc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Bc=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,$c=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function jc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ms=["post","put","patch","delete"];new Set(ms);const Vc=["get",...ms];new Set(Vc);function Wt(){return Wt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Wt.apply(null,arguments)}const zt=B.createContext(null);process.env.NODE_ENV!=="production"&&(zt.displayName="DataRouter");const Er=B.createContext(null);process.env.NODE_ENV!=="production"&&(Er.displayName="DataRouterState");const qc=B.createContext(null);process.env.NODE_ENV!=="production"&&(qc.displayName="Await");const Oe=B.createContext(null);process.env.NODE_ENV!=="production"&&(Oe.displayName="Navigation");const Ht=B.createContext(null);process.env.NODE_ENV!=="production"&&(Ht.displayName="Location");const Me=B.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(Me.displayName="Route");const Lr=B.createContext(null);process.env.NODE_ENV!=="production"&&(Lr.displayName="RouteError");function Wc(e,t){let{relative:n}=t===void 0?{}:t;ht()||(process.env.NODE_ENV!=="production"?le(!1,"useHref() may be used only in the context of a <Router> component."):le(!1));let{basename:r,navigator:a}=B.useContext(Oe),{hash:o,pathname:l,search:i}=Kt(e,{relative:n}),c=l;return r!=="/"&&(c=l==="/"?r:Ve([r,l])),a.createHref({pathname:c,search:i,hash:o})}function ht(){return B.useContext(Ht)!=null}function De(){return ht()||(process.env.NODE_ENV!=="production"?le(!1,"useLocation() may be used only in the context of a <Router> component."):le(!1)),B.useContext(Ht).location}const gs="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ys(e){B.useContext(Oe).static||B.useLayoutEffect(e)}function Pe(){let{isDataRoute:e}=B.useContext(Me);return e?rd():zc()}function zc(){ht()||(process.env.NODE_ENV!=="production"?le(!1,"useNavigate() may be used only in the context of a <Router> component."):le(!1));let e=B.useContext(zt),{basename:t,future:n,navigator:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=De(),l=JSON.stringify(fs(a,n.v7_relativeSplatPath)),i=B.useRef(!1);return ys(()=>{i.current=!0}),B.useCallback(function(d,f){if(f===void 0&&(f={}),process.env.NODE_ENV!=="production"&&Le(i.current,gs),!i.current)return;if(typeof d=="number"){r.go(d);return}let u=ps(d,JSON.parse(l),o,f.relative==="path");e==null&&t!=="/"&&(u.pathname=u.pathname==="/"?t:Ve([t,u.pathname])),(f.replace?r.replace:r.push)(u,f.state,f)},[t,r,l,o,e])}function mt(){let{matches:e}=B.useContext(Me),t=e[e.length-1];return t?t.params:{}}function Kt(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=De(),l=JSON.stringify(fs(a,r.v7_relativeSplatPath));return B.useMemo(()=>ps(e,JSON.parse(l),o,n==="path"),[e,l,o,n])}function Hc(e,t){return Kc(e,t)}function Kc(e,t,n,r){ht()||(process.env.NODE_ENV!=="production"?le(!1,"useRoutes() may be used only in the context of a <Router> component."):le(!1));let{navigator:a}=B.useContext(Oe),{matches:o}=B.useContext(Me),l=o[o.length-1],i=l?l.params:{},c=l?l.pathname:"/",d=l?l.pathnameBase:"/",f=l&&l.route;if(process.env.NODE_ENV!=="production"){let v=f&&f.path||"";vs(c,!f||v.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+v+'">) but the ')+`parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
2
2
 
3
- `+('Please change the parent <Route path="'+b+'"> to <Route ')+('path="'+(b==="/"?"*":b+"/*")+'">.'))}let f=xe(),p;if(t){var w;let b=typeof t=="string"?pt(t):t;d==="/"||(w=b.pathname)!=null&&w.startsWith(d)||(process.env.NODE_ENV!=="production"?se(!1,"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, the location pathname must begin with the portion of the URL pathname that was "+('matched by all parent routes. The current pathname base is "'+d+'" ')+('but pathname "'+b.pathname+'" was given in the `location` prop.')):se(!1)),p=b}else p=f;let S=p.pathname||"/",m=S;if(d!=="/"){let b=d.replace(/^\//,"").split("/");m="/"+S.replace(/^\//,"").split("/").slice(b.length).join("/")}let h=Sc(e,{pathname:m});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Le(u||h!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Le(h==null||h[h.length-1].route.element!==void 0||h[h.length-1].route.Component!==void 0||h[h.length-1].route.lazy!==void 0,'Matched leaf route at location "'+p.pathname+p.search+p.hash+'" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.'));let g=Xc(h&&h.map(b=>Object.assign({},b,{params:Object.assign({},i,b.params),pathname:qe([d,a.encodeLocation?a.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?d:qe([d,a.encodeLocation?a.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),o,n,r);return t&&g?B.createElement(zt.Provider,{value:{location:Vt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Je.Pop}},g):g}function Yc(){let e=nd(),t=jc(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},o={padding:"2px 4px",backgroundColor:r},l=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),l=B.createElement(B.Fragment,null,B.createElement("p",null,"💿 Hey developer 👋"),B.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",B.createElement("code",{style:o},"ErrorBoundary")," or"," ",B.createElement("code",{style:o},"errorElement")," prop on your route."))),B.createElement(B.Fragment,null,B.createElement("h2",null,"Unexpected Application Error!"),B.createElement("h3",{style:{fontStyle:"italic"}},t),n?B.createElement("pre",{style:a},n):null,l)}const Gc=B.createElement(Yc,null);class Jc extends B.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?B.createElement(Me.Provider,{value:this.props.routeContext},B.createElement(Lr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Zc(e){let{routeContext:t,match:n,children:r}=e,a=B.useContext(Wt);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),B.createElement(Me.Provider,{value:t},r)}function Xc(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var o;if(!n)return null;if(n.errors)e=n.matches;else if((o=r)!=null&&o.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let l=e,i=(a=n)==null?void 0:a.errors;if(i!=null){let u=l.findIndex(f=>f.route.id&&i?.[f.route.id]!==void 0);u>=0||(process.env.NODE_ENV!=="production"?se(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(i).join(",")):se(!1)),l=l.slice(0,Math.min(l.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<l.length;u++){let f=l[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:w}=n,S=f.route.loader&&p[f.route.id]===void 0&&(!w||w[f.route.id]===void 0);if(f.route.lazy||S){c=!0,d>=0?l=l.slice(0,d+1):l=[l[0]];break}}}return l.reduceRight((u,f,p)=>{let w,S=!1,m=null,h=null;n&&(w=i&&f.route.id?i[f.route.id]:void 0,m=f.route.errorElement||Gc,c&&(d<0&&p===0?(Ss("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),S=!0,h=null):d===p&&(S=!0,h=f.route.hydrateFallbackElement||null)));let g=t.concat(l.slice(0,p+1)),b=()=>{let L;return w?L=m:S?L=h:f.route.Component?L=B.createElement(f.route.Component,null):f.route.element?L=f.route.element:L=u,B.createElement(Zc,{match:f,routeContext:{outlet:u,matches:g,isDataRoute:n!=null},children:L})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?B.createElement(Jc,{location:n.location,revalidation:n.revalidation,component:m,error:w,children:b(),routeContext:{outlet:null,matches:g,isDataRoute:!0}}):b()},null)}var ys=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(ys||{}),Kt=(function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e})(Kt||{});function Tr(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Qc(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function Rc(e){let t=B.useContext(Er);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function ed(e){let t=B.useContext(Me);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function Ir(e){let t=ed(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?se(!1,e+' can only be used on routes that contain a unique "id"'):se(!1)),n.route.id}function td(){return Ir(Kt.UseRouteId)}function nd(){var e;let t=B.useContext(Lr),n=Rc(Kt.UseRouteError),r=Ir(Kt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function rd(){let{router:e}=Qc(ys.UseNavigateStable),t=Ir(Kt.UseNavigateStable),n=B.useRef(!1);return gs(()=>{n.current=!0}),B.useCallback(function(a,o){o===void 0&&(o={}),process.env.NODE_ENV!=="production"&&Le(n.current,ms),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Vt({fromRouteId:t},o)))},[e,t])}const bs={};function Ss(e,t,n){!t&&!bs[e]&&(bs[e]=!0,process.env.NODE_ENV!=="production"&&Le(!1,n))}const vs={};function ad(e,t){process.env.NODE_ENV!=="production"&&!vs[t]&&(vs[t]=!0,console.warn(t))}const ws=(e,t,n)=>ad(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function sd(e,t){e?.v7_startTransition===void 0&&ws("v7_startTransition","React Router will begin wrapping state updates in `React.startTransition` in v7","https://reactrouter.com/v6/upgrading/future#v7_starttransition"),e?.v7_relativeSplatPath===void 0&&ws("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function Ne(e){process.env.NODE_ENV!=="production"?se(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>."):se(!1)}function od(e){let{basename:t="/",children:n=null,location:r,navigationType:a=Je.Pop,navigator:o,static:l=!1,future:i}=e;ht()&&(process.env.NODE_ENV!=="production"?se(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):se(!1));let c=t.replace(/^\/*/,"/"),d=B.useMemo(()=>({basename:c,navigator:o,static:l,future:Vt({v7_relativeSplatPath:!1},i)}),[c,i,o,l]);typeof r=="string"&&(r=pt(r));let{pathname:u="/",search:f="",hash:p="",state:w=null,key:S="default"}=r,m=B.useMemo(()=>{let h=Ze(u,c);return h==null?null:{location:{pathname:h,search:f,hash:p,state:w,key:S},navigationType:a}},[c,u,f,p,w,S,a]);return process.env.NODE_ENV!=="production"&&Le(m!=null,'<Router basename="'+c+'"> is not able to match the URL '+('"'+u+f+p+'" because it does not start with the ')+"basename, so the <Router> won't render anything."),m==null?null:B.createElement(Oe.Provider,{value:d},B.createElement(zt.Provider,{children:n,value:m}))}function ld(e){let{children:t,location:n}=e;return Hc(Fr(t),n)}new Promise(()=>{});function Fr(e,t){t===void 0&&(t=[]);let n=[];return B.Children.forEach(e,(r,a)=>{if(!B.isValidElement(r))return;let o=[...t,a];if(r.type===B.Fragment){n.push.apply(n,Fr(r.props.children,o));return}r.type!==Ne&&(process.env.NODE_ENV!=="production"?se(!1,"["+(typeof r.type=="string"?r.type:r.type.name)+"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>"):se(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?se(!1,"An index route cannot have child routes."):se(!1));let l={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(l.children=Fr(r.props.children,o)),n.push(l)}),n}function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(null,arguments)}function kr(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}const Ln="get",Tn="application/x-www-form-urlencoded";function In(e){return e!=null&&typeof e.tagName=="string"}function id(e){return In(e)&&e.tagName.toLowerCase()==="button"}function cd(e){return In(e)&&e.tagName.toLowerCase()==="form"}function dd(e){return In(e)&&e.tagName.toLowerCase()==="input"}function ud(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function fd(e,t){return e.button===0&&(!t||t==="_self")&&!ud(e)}function Or(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(a=>[n,a]):[[n,r]])},[]))}function pd(e,t){let n=Or(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(o=>{n.append(a,o)})}),n}let Fn=null;function hd(){if(Fn===null)try{new FormData(document.createElement("form"),0),Fn=!1}catch{Fn=!0}return Fn}const md=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Dr(e){return e!=null&&!md.has(e)?(process.env.NODE_ENV!=="production"&&Le(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+Tn+'"')),null):e}function gd(e,t){let n,r,a,o,l;if(cd(e)){let i=e.getAttribute("action");r=i?Ze(i,t):null,n=e.getAttribute("method")||Ln,a=Dr(e.getAttribute("enctype"))||Tn,o=new FormData(e)}else if(id(e)||dd(e)&&(e.type==="submit"||e.type==="image")){let i=e.form;if(i==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||i.getAttribute("action");if(r=c?Ze(c,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Ln,a=Dr(e.getAttribute("formenctype"))||Dr(i.getAttribute("enctype"))||Tn,o=new FormData(i,e),!hd()){let{name:d,type:u,value:f}=e;if(u==="image"){let p=d?d+".":"";o.append(p+"x","0"),o.append(p+"y","0")}else d&&o.append(d,f)}}else{if(In(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Ln,r=null,a=Tn,l=e}return o&&a==="text/plain"&&(l=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:l}}const yd=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],bd=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],Sd=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],vd="6";try{window.__reactRouterVersion=vd}catch{}const Cs=B.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(Cs.displayName="ViewTransition");const wd=B.createContext(new Map);process.env.NODE_ENV!=="production"&&(wd.displayName="Fetchers");const Ns=B["startTransition"];function Cd(e){let{basename:t,children:n,future:r,window:a}=e,o=B.useRef();o.current==null&&(o.current=gc({window:a,v5Compat:!0}));let l=o.current,[i,c]=B.useState({action:l.action,location:l.location}),{v7_startTransition:d}=r||{},u=B.useCallback(f=>{d&&Ns?Ns(()=>c(f)):c(f)},[c,d]);return B.useLayoutEffect(()=>l.listen(u),[l,u]),B.useEffect(()=>sd(r),[r]),B.createElement(od,{basename:t,children:n,location:i.location,navigationType:i.action,navigator:l,future:r})}process.env.NODE_ENV;const Nd=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",_d=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,_s=B.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:o,replace:l,state:i,target:c,to:d,preventScrollReset:u,viewTransition:f}=t,p=kr(t,yd),{basename:w}=B.useContext(Oe),S,m=!1;if(typeof d=="string"&&_d.test(d)&&(S=d,Nd))try{let L=new URL(window.location.href),N=d.startsWith("//")?new URL(L.protocol+d):new URL(d),x=Ze(N.pathname,w);N.origin===L.origin&&x!=null?d=x+N.search+N.hash:m=!0}catch{process.env.NODE_ENV!=="production"&&Le(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let h=Wc(d,{relative:a}),g=Td(d,{replace:l,state:i,target:c,preventScrollReset:u,relative:a,viewTransition:f});function b(L){r&&r(L),L.defaultPrevented||g(L)}return B.createElement("a",gt({},p,{href:S||h,onClick:m||o?r:b,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(_s.displayName="Link");const Ad=B.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:o="",end:l=!1,style:i,to:c,viewTransition:d,children:u}=t,f=kr(t,bd),p=Ht(c,{relative:f.relative}),w=xe(),S=B.useContext(Er),{navigator:m,basename:h}=B.useContext(Oe),g=S!=null&&Md(p)&&d===!0,b=m.encodeLocation?m.encodeLocation(p).pathname:p.pathname,L=w.pathname,N=S&&S.navigation&&S.navigation.location?S.navigation.location.pathname:null;a||(L=L.toLowerCase(),N=N?N.toLowerCase():null,b=b.toLowerCase()),N&&h&&(N=Ze(N,h)||N);const x=b!=="/"&&b.endsWith("/")?b.length-1:b.length;let T=L===b||!l&&L.startsWith(b)&&L.charAt(x)==="/",V=N!=null&&(N===b||!l&&N.startsWith(b)&&N.charAt(b.length)==="/"),R={isActive:T,isPending:V,isTransitioning:g},Z=T?r:void 0,q;typeof o=="function"?q=o(R):q=[o,T?"active":null,V?"pending":null,g?"transitioning":null].filter(Boolean).join(" ");let K=typeof i=="function"?i(R):i;return B.createElement(_s,gt({},f,{"aria-current":Z,className:q,ref:n,style:K,to:c,viewTransition:d}),typeof u=="function"?u(R):u)});process.env.NODE_ENV!=="production"&&(Ad.displayName="NavLink");const Ed=B.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:o,state:l,method:i=Ln,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,w=kr(e,Sd),S=Od(),m=Dd(c,{relative:u}),h=i.toLowerCase()==="get"?"get":"post",g=b=>{if(d&&d(b),b.defaultPrevented)return;b.preventDefault();let L=b.nativeEvent.submitter,N=L?.getAttribute("formmethod")||i;S(L||b.currentTarget,{fetcherKey:n,method:N,navigate:r,replace:o,state:l,relative:u,preventScrollReset:f,viewTransition:p})};return B.createElement("form",gt({ref:t,method:h,action:m,onSubmit:a?d:g},w))});process.env.NODE_ENV!=="production"&&(Ed.displayName="Form"),process.env.NODE_ENV;var kn;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(kn||(kn={}));var As;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(As||(As={}));function Ld(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Es(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Ld(e)):se(!1)),t}function Td(e,t){let{target:n,replace:r,state:a,preventScrollReset:o,relative:l,viewTransition:i}=t===void 0?{}:t,c=Pe(),d=xe(),u=Ht(e,{relative:l});return B.useCallback(f=>{if(fd(f,n)){f.preventDefault();let p=r!==void 0?r:qt(d)===qt(u);c(e,{replace:p,state:a,preventScrollReset:o,relative:l,viewTransition:i})}},[d,c,u,r,a,n,e,o,l,i])}function Ls(e){process.env.NODE_ENV!=="production"&&Le(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=B.useRef(Or(e)),n=B.useRef(!1),r=xe(),a=B.useMemo(()=>pd(r.search,n.current?null:t.current),[r.search]),o=Pe(),l=B.useCallback((i,c)=>{const d=Or(typeof i=="function"?i(a):i);n.current=!0,o("?"+d,c)},[o,a]);return[a,l]}function Id(){if(typeof document>"u")throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}let Fd=0,kd=()=>"__"+String(++Fd)+"__";function Od(){let{router:e}=Es(kn.UseSubmit),{basename:t}=B.useContext(Oe),n=td();return B.useCallback(function(r,a){a===void 0&&(a={}),Id();let{action:o,method:l,encType:i,formData:c,body:d}=gd(r,t);if(a.navigate===!1){let u=a.fetcherKey||kd();e.fetch(u,n,a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,flushSync:a.flushSync})}else e.navigate(a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,n])}function Dd(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=B.useContext(Oe),a=B.useContext(Me);a||(process.env.NODE_ENV!=="production"?se(!1,"useFormAction must be used inside a RouteContext"):se(!1));let[o]=a.matches.slice(-1),l=gt({},Ht(e||".",{relative:n})),i=xe();if(e==null){l.search=i.search;let c=new URLSearchParams(l.search),d=c.getAll("index");if(d.some(f=>f==="")){c.delete("index"),d.filter(p=>p).forEach(p=>c.append("index",p));let f=c.toString();l.search=f?"?"+f:""}}return(!e||e===".")&&o.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(l.pathname=l.pathname==="/"?r:qe([r,l.pathname])),qt(l)}function Md(e,t){t===void 0&&(t={});let n=B.useContext(Cs);n==null&&(process.env.NODE_ENV!=="production"?se(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):se(!1));let{basename:r}=Es(kn.useViewTransitionState),a=Ht(e,{relative:t.relative});if(!n.isTransitioning)return!1;let o=Ze(n.currentLocation.pathname,r)||n.currentLocation.pathname,l=Ze(n.nextLocation.pathname,r)||n.nextLocation.pathname;return _r(a.pathname,l)!=null||_r(a.pathname,o)!=null}function Ts(e,t){return function(){return e.apply(t,arguments)}}const{toString:xd}=Object.prototype,{getPrototypeOf:yt}=Object,{iterator:Yt,toStringTag:Is}=Symbol,On=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Gt=(e,t)=>{let n=e;const r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),On(n,t))return!0;n=yt(n)}return!1},Pd=(e,t)=>e!=null&&Gt(e,t)?e[t]:void 0,Mr=(e=>t=>{const n=xd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Te=e=>(e=e.toLowerCase(),t=>Mr(t)===e),Dn=e=>t=>typeof t===e,{isArray:nt}=Array,rt=Dn("undefined");function bt(e){return e!==null&&!rt(e)&&e.constructor!==null&&!rt(e.constructor)&&we(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Fs=Te("ArrayBuffer");function Ud(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Fs(e.buffer),t}const $d=Dn("string"),we=Dn("function"),ks=Dn("number"),St=e=>e!==null&&typeof e=="object",Bd=e=>e===!0||e===!1,Mn=e=>{if(!St(e))return!1;const t=yt(e);return(t===null||t===Object.prototype||yt(t)===null)&&!Gt(e,Is)&&!Gt(e,Yt)},jd=e=>{if(!St(e)||bt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},qd=Te("Date"),Vd=Te("File"),Wd=e=>!!(e&&typeof e.uri<"u"),zd=e=>e&&typeof e.getParts<"u",Hd=Te("Blob"),Kd=Te("FileList"),Yd=Te("Set"),Gd=e=>St(e)&&we(e.pipe);function Jd(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Os=Jd(),Ds=typeof Os.FormData<"u"?Os.FormData:void 0,Zd=e=>{if(!e)return!1;if(Ds&&e instanceof Ds)return!0;const t=yt(e);if(!t||t===Object.prototype||!we(e.append))return!1;const n=Mr(e);return n==="formdata"||n==="object"&&we(e.toString)&&e.toString()==="[object FormData]"},Xd=Te("URLSearchParams"),[Qd,Rd,eu,tu]=["ReadableStream","Request","Response","Headers"].map(Te),nu=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Jt(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,a;if(typeof e!="object"&&(e=[e]),nt(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(bt(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),l=o.length;let i;for(r=0;r<l;r++)i=o[r],t.call(null,e[i],i,e)}}function Ms(e,t){if(bt(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,a;for(;r-- >0;)if(a=n[r],t===a.toLowerCase())return a;return null}const at=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,xs=e=>!rt(e)&&e!==at;function xr(...e){const{caseless:t,skipUndefined:n}=xs(this)&&this||{},r={},a=(o,l)=>{if(l==="__proto__"||l==="constructor"||l==="prototype")return;const i=t&&typeof l=="string"&&Ms(r,l)||l,c=On(r,i)?r[i]:void 0;Mn(c)&&Mn(o)?r[i]=xr(c,o):Mn(o)?r[i]=xr({},o):nt(o)?r[i]=o.slice():(!n||!rt(o))&&(r[i]=o)};for(let o=0,l=e.length;o<l;o++){const i=e[o];if(!i||bt(i)||(Jt(i,a),typeof i!="object"||nt(i)))continue;const c=Object.getOwnPropertySymbols(i);for(let d=0;d<c.length;d++){const u=c[d];hu.call(i,u)&&a(i[u],u)}}return r}const ru=(e,t,n,{allOwnKeys:r}={})=>(Jt(t,(a,o)=>{n&&we(a)?Object.defineProperty(e,o,{__proto__:null,value:Ts(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),au=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),su=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),n&&Object.assign(e.prototype,n)},ou=(e,t,n,r)=>{let a,o,l;const i={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),o=a.length;o-- >0;)l=a[o],(!r||r(l,e,t))&&!i[l]&&(t[l]=e[l],i[l]=!0);e=n!==!1&&yt(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},lu=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},iu=e=>{if(!e)return null;if(nt(e))return e;let t=e.length;if(!ks(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},cu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&yt(Uint8Array)),du=(e,t)=>{const r=(e&&e[Yt]).call(e);let a;for(;(a=r.next())&&!a.done;){const o=a.value;t.call(e,o[0],o[1])}},uu=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},fu=Te("HTMLFormElement"),pu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:hu}=Object.prototype,mu=Te("RegExp"),Ps=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Jt(n,(a,o)=>{let l;(l=t(a,o,e))!==!1&&(r[o]=l||a)}),Object.defineProperties(e,r)},gu=e=>{Ps(e,(t,n)=>{if(we(e)&&["arguments","caller","callee"].includes(n))return!1;const r=e[n];if(we(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},yu=(e,t)=>{const n={},r=a=>{a.forEach(o=>{n[o]=!0})};return nt(e)?r(e):r(String(e).split(t)),n},bu=()=>{},Su=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vu(e){return!!(e&&we(e.append)&&e[Is]==="FormData"&&e[Yt])}const wu=e=>{const t=new WeakSet,n=r=>{if(St(r)){if(t.has(r))return;if(bt(r))return r;if(!("toJSON"in r)){t.add(r);let a;if(Yd(r)){a=[];for(const o of r){const l=n(o);!rt(l)&&a.push(l)}}else a=nt(r)?[]:{},Jt(r,(o,l)=>{const i=n(o);!rt(i)&&(a[l]=i)});return t.delete(r),a}}return r};return n(e)},Cu=Te("AsyncFunction"),Nu=e=>e&&(St(e)||we(e))&&we(e.then)&&we(e.catch),Us=((e,t)=>e?setImmediate:t?((n,r)=>(at.addEventListener("message",({source:a,data:o})=>{a===at&&o===n&&r.length&&r.shift()()},!1),a=>{r.push(a),at.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",we(at.postMessage)),_u=typeof queueMicrotask<"u"?queueMicrotask.bind(at):typeof process<"u"&&process.nextTick||Us,$s=e=>e!=null&&we(e[Yt]),v={isArray:nt,isArrayBuffer:Fs,isBuffer:bt,isFormData:Zd,isArrayBufferView:Ud,isString:$d,isNumber:ks,isBoolean:Bd,isObject:St,isPlainObject:Mn,isEmptyObject:jd,isReadableStream:Qd,isRequest:Rd,isResponse:eu,isHeaders:tu,isUndefined:rt,isDate:qd,isFile:Vd,isReactNativeBlob:Wd,isReactNative:zd,isBlob:Hd,isRegExp:mu,isFunction:we,isStream:Gd,isURLSearchParams:Xd,isTypedArray:cu,isFileList:Kd,forEach:Jt,merge:xr,extend:ru,trim:nu,stripBOM:au,inherits:su,toFlatObject:ou,kindOf:Mr,kindOfTest:Te,endsWith:lu,toArray:iu,forEachEntry:du,matchAll:uu,isHTMLForm:fu,hasOwnProperty:On,hasOwnProp:On,hasOwnInPrototypeChain:Gt,getSafeProp:Pd,reduceDescriptors:Ps,freezeMethods:gu,toObjectSet:yu,toCamelCase:pu,noop:bu,toFiniteNumber:Su,findKey:Ms,global:at,isContextDefined:xs,isSpecCompliantForm:vu,toJSONObject:wu,isAsyncFn:Cu,isThenable:Nu,setImmediate:Us,asap:_u,isIterable:$s,isSafeIterable:e=>e!=null&&Gt(e,Yt)&&$s(e)},Au=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Eu=e=>{const t={};let n,r,a;return e&&e.split(`
4
- `).forEach(function(l){a=l.indexOf(":"),n=l.substring(0,a).trim().toLowerCase(),r=l.substring(a+1).trim();const i=v.hasOwnProp(t,n);!n||i&&v.hasOwnProp(Au,n)||(n==="set-cookie"?i?t[n].push(r):t[n]=[r]:t[n]=i?t[n]+", "+r:r)}),t};function Lu(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}const Tu=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),Iu=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function Pr(e,t){return v.isArray(e)?e.map(n=>Pr(n,t)):Lu(String(e).replace(t,""))}const Fu=e=>Pr(e,Tu),ku=e=>Pr(e,Iu);function Bs(e){const t=Object.create(null);return v.forEach(e.toJSON(),(n,r)=>{t[r]=ku(n)}),t}const js=Symbol("internals");function Zt(e){return e&&String(e).trim().toLowerCase()}function xn(e){return e===!1||e==null?e:v.isArray(e)?e.map(xn):Fu(String(e))}function Ou(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Du=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Ur(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}function Mu(e){const t=e.length-1;if(t<1||e.charCodeAt(0)!==34||e.charCodeAt(t)!==34)return e;let n="";for(let r=1;r<t;r++){const a=e.charCodeAt(r);if(a===34||a===92&&(r+=1,r>=t))return e;n+=e[r]}return n}function xu(e){const t=Object.create(null),n=String(e);let r=0,a=!1,o=!1;function l(i){const c=Ur(n.slice(r,i)),d=c.indexOf("=");if(d<1)return;const u=Ur(c.slice(0,d));if(!Du.test(u))return;const f=u.toLowerCase();if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=Ur(c.slice(d+1));t[f]=Mu(p)}for(let i=0;i<n.length;i++){const c=n.charCodeAt(i);a?o?o=!1:c===92?o=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(l(i),r=i+1)}return l(n.length),t}const Pu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function $r(e,t,n,r,a){if(v.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!v.isString(t)){if(v.isString(r))return t.indexOf(r)!==-1;if(v.isRegExp(r))return r.test(t)}}function Uu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function $u(e,t){const n=v.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(a,o,l){return this[r].call(this,t,a,o,l)},configurable:!0})})}let Se=class{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function o(i,c,d){const u=Zt(c);if(!u)return;const f=v.findKey(a,u);(!f||a[f]===void 0||d===!0||d===void 0&&a[f]!==!1)&&(a[f||c]=xn(i))}const l=(i,c)=>v.forEach(i,(d,u)=>o(d,u,c));if(v.isPlainObject(t)||t instanceof this.constructor)l(t,n);else if(v.isString(t)&&(t=t.trim())&&!Pu(t))l(Eu(t),n);else if(v.isObject(t)&&v.isSafeIterable(t)){let i=Object.create(null),c,d;for(const u of t){if(!v.isArray(u))throw new TypeError("Object iterator must return a key-value pair");d=u[0],v.hasOwnProp(i,d)?(c=i[d],i[d]=v.isArray(c)?[...c,u[1]]:[c,u[1]]):i[d]=u[1]}l(i,n)}else t!=null&&o(n,t,r);return this}get(t,n){if(t=Zt(t),t){const r=v.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return Ou(a);if(v.isFunction(n))return n.call(this,a,r);if(v.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Zt(t),t){const r=v.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||$r(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function o(l){if(l=Zt(l),l){const i=v.findKey(r,l);i&&(!n||$r(r,r[i],i,n))&&(delete r[i],a=!0)}}return v.isArray(t)?t.forEach(o):o(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const o=n[r];(!t||$r(this,this[o],o,t,!0))&&(delete this[o],a=!0)}return a}normalize(t){const n=this,r={};return v.forEach(this,(a,o)=>{const l=v.findKey(r,o);if(l){n[l]=xn(a),delete n[o];return}const i=t?Uu(o):String(o).trim();i!==o&&delete n[o],n[i]=xn(a),r[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return v.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&v.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
5
- `)}getSetCookie(){const t=this.get("set-cookie");return v.isArray(t)?t:t==null||t===!1?[]:[t]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static parseParameters(t){return xu(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[js]=this[js]={accessors:{}}).accessors,a=this.prototype;function o(l){const i=Zt(l);r[i]||($u(a,l),r[i]=!0)}return v.isArray(t)?t.forEach(o):o(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Se.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),v.freezeMethods(Se);const Pn="[REDACTED ****]";function Bu(e){if(v.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(v.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function ju(e,t){const n=new Set(t.map(o=>String(o).toLowerCase())),r=[],a=o=>{if(o===null||typeof o!="object"||v.isBuffer(o))return o;if(r.indexOf(o)!==-1)return;o instanceof Se&&(o=o.toJSON()),r.push(o);let l;if(v.isArray(o))l=[],o.forEach((i,c)=>{const d=a(i);v.isUndefined(d)||(l[c]=d)});else{if(!v.isPlainObject(o)&&Bu(o))return r.pop(),o;l=Object.create(null);for(const[i,c]of Object.entries(o)){const d=n.has(i.toLowerCase())?Pn:a(c);v.isUndefined(d)||(l[i]=d)}}return r.pop(),l};return a(e)}function qs(e){try{return String(e)}catch{return""}}function qu(e){return e.errors.map(n=>{try{return n&&n.message?qs(n.message):qs(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let Y=class fc extends Error{static from(t,n,r,a,o,l){let i=t.message;!i&&v.isArray(t.errors)&&t.errors.length&&(i=qu(t));const c=new fc(i,n||t.code,r,a,o);return Object.defineProperty(c,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),c.name=t.name,t.status!=null&&c.status==null&&(c.status=t.status),l&&Object.assign(c,l),c}constructor(t,n,r,a,o){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),a&&(this.request=a),o&&(this.response=o,this.status=o.status)}toJSON(){const t=this.config,n=t&&v.hasOwnProp(t,"redact")?t.redact:void 0,r=v.isArray(n)&&n.length>0?ju(t,n):v.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};Y.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Y.ERR_BAD_OPTION="ERR_BAD_OPTION",Y.ECONNABORTED="ECONNABORTED",Y.ETIMEDOUT="ETIMEDOUT",Y.ECONNREFUSED="ECONNREFUSED",Y.ERR_NETWORK="ERR_NETWORK",Y.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Y.ERR_DEPRECATED="ERR_DEPRECATED",Y.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Y.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Y.ERR_CANCELED="ERR_CANCELED",Y.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Y.ERR_INVALID_URL="ERR_INVALID_URL",Y.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Vu=null,Vs=100;function Br(e){return v.isPlainObject(e)||v.isArray(e)}function Ws(e){return v.endsWith(e,"[]")?e.slice(0,-2):e}function jr(e,t,n){return e?e.concat(t).map(function(a,o){return a=Ws(a),!n&&o?"["+a+"]":a}).join(n?".":""):t}function Wu(e){return v.isArray(e)&&!e.some(Br)}const zu=v.toFlatObject(v,{},null,function(t){return/^is[A-Z]/.test(t)});function Un(e,t,n){if(!v.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=v.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,L){return!v.isUndefined(L[b])});const r=n.metaTokens,a=n.visitor||S,o=n.dots,l=n.indexes,i=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?Vs:n.maxDepth,d=i&&v.isSpecCompliantForm(t),u=[];if(!v.isFunction(a))throw new TypeError("visitor must be a function");function f(g){if(g===null)return"";if(v.isDate(g))return g.toISOString();if(v.isBoolean(g))return g.toString();if(!d&&v.isBlob(g))throw new Y("Blob is not supported. Use a Buffer instead.");if(v.isArrayBuffer(g)||v.isTypedArray(g)){if(d&&typeof i=="function")return new i([g]);throw new Y("Blob is not supported. Use a Buffer instead.",Y.ERR_NOT_SUPPORT)}return g}function p(g){if(g>c)throw new Y("Object is too deeply nested ("+g+" levels). Max depth: "+c,Y.ERR_FORM_DATA_DEPTH_EXCEEDED)}function w(g,b){if(c===1/0)return JSON.stringify(g);const L=[];return JSON.stringify(g,function(x,T){if(!v.isObject(T))return T;for(;L.length&&L[L.length-1]!==this;)L.pop();return L.push(T),p(b+L.length-1),T})}function S(g,b,L){let N=g;if(v.isReactNative(t)&&v.isReactNativeBlob(g))return t.append(jr(L,b,o),f(g)),!1;if(g&&!L&&typeof g=="object"){if(v.endsWith(b,"{}"))b=r?b:b.slice(0,-2),g=w(g,1);else if(v.isArray(g)&&Wu(g)||(v.isFileList(g)||v.endsWith(b,"[]"))&&(N=v.toArray(g)))return b=Ws(b),N.forEach(function(T,V){!(v.isUndefined(T)||T===null)&&t.append(l===!0?jr([b],V,o):l===null?b:b+"[]",f(T))}),!1}return Br(g)?!0:(t.append(jr(L,b,o),f(g)),!1)}const m=Object.assign(zu,{defaultVisitor:S,convertValue:f,isVisitable:Br});function h(g,b,L=0){if(!v.isUndefined(g)){if(p(L),u.indexOf(g)!==-1)throw new Error("Circular reference detected in "+b.join("."));u.push(g),v.forEach(g,function(x,T){(!(v.isUndefined(x)||x===null)&&a.call(t,x,v.isString(T)?T.trim():T,b,m))===!0&&h(x,b?b.concat(T):[T],L+1)}),u.pop()}}if(!v.isObject(e))throw new TypeError("data must be an object");return h(e),t}function zs(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function qr(e,t){this._pairs=[],e&&Un(e,this,t)}const Hs=qr.prototype;Hs.append=function(t,n){this._pairs.push([t,n])},Hs.toString=function(t){const n=t?r=>t.call(this,r,zs):zs;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function Hu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ks(e,t,n){if(!t)return e;e=e||"";const r=v.isFunction(n)?{serialize:n}:n,a=v.getSafeProp(r,"encode")||Hu,o=v.getSafeProp(r,"serialize");let l;if(o?l=o(t,r):l=v.isURLSearchParams(t)?t.toString():new qr(t,r).toString(a),l){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+l}return e}class Ys{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){v.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Vr={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},Ku={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:qr,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Wr=typeof window<"u"&&typeof document<"u",zr=typeof navigator=="object"&&navigator||void 0,Yu=Wr&&(!zr||["ReactNative","NativeScript","NS"].indexOf(zr.product)<0),Gu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Ju=Wr&&window.location.href||"http://localhost",ge={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Wr,hasStandardBrowserEnv:Yu,hasStandardBrowserWebWorkerEnv:Gu,navigator:zr,origin:Ju},Symbol.toStringTag,{value:"Module"})),...Ku};function Zu(e,t){return Un(e,new ge.classes.URLSearchParams,{visitor:function(n,r,a,o){return ge.isNode&&v.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}const Gs=Vs;function Js(e){if(e>Gs)throw new Y("FormData field is too deeply nested ("+e+" levels). Max depth: "+Gs,Y.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Xu(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Js(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function Qu(e){const t={},n=Object.keys(e);let r;const a=n.length;let o;for(r=0;r<a;r++)o=n[r],t[o]=e[o];return t}function Zs(e){function t(n,r,a,o){Js(o);let l=n[o++];if(l==="__proto__")return!0;const i=Number.isFinite(+l),c=o>=n.length;return l=!l&&v.isArray(a)?a.length:l,c?(v.hasOwnProp(a,l)?a[l]=v.isArray(a[l])?a[l].concat(r):[a[l],r]:a[l]=r,!i):((!v.hasOwnProp(a,l)||!v.isObject(a[l]))&&(a[l]=[]),t(n,r,a[l],o)&&v.isArray(a[l])&&(a[l]=Qu(a[l])),!i)}if(v.isFormData(e)&&v.isFunction(e.entries)){const n={};return v.forEachEntry(e,(r,a)=>{t(Xu(r),a,n,0)}),n}return null}const vt=(e,t)=>e!=null&&v.hasOwnProp(e,t)?e[t]:void 0;function Ru(e,t,n){if(v.isString(e))try{return(t||JSON.parse)(e),v.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Xt={transitional:Vr,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,o=v.isObject(t);if(o&&v.isHTMLForm(t)&&(t=new FormData(t)),v.isFormData(t))return a?JSON.stringify(Zs(t)):t;if(v.isArrayBuffer(t)||v.isBuffer(t)||v.isStream(t)||v.isFile(t)||v.isBlob(t)||v.isReadableStream(t))return t;if(v.isArrayBufferView(t))return t.buffer;if(v.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){const c=vt(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return Zu(t,c).toString();if((i=v.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=vt(this,"env"),u=d&&d.FormData;return Un(i?{"files[]":t}:t,u&&new u,c)}}return o||a?(n.setContentType("application/json",!1),Ru(t)):t}],transformResponse:[function(t){const n=vt(this,"transitional")||Xt.transitional,r=n&&n.forcedJSONParsing,a=vt(this,"responseType"),o=a==="json";if(v.isResponse(t)||v.isReadableStream(t))return t;if(t&&v.isString(t)&&(r&&!a||o)){const i=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t,vt(this,"parseReviver"))}catch(c){if(i)throw c.name==="SyntaxError"?Y.from(c,Y.ERR_BAD_RESPONSE,this,null,vt(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch","query"],e=>{Xt.headers[e]={}});function Hr(e,t){const n=this||Xt,r=t||n,a=Se.from(r.headers);let o=r.data;return v.forEach(e,function(i){o=i.call(n,o,a.normalize(),t?t.status:void 0)}),a.normalize(),o}function Xs(e){return!!(e&&e.__CANCEL__)}let Qt=class extends Y{constructor(t,n,r){super(t??"canceled",Y.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Qs(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new Y("Request failed with status code "+n.status,n.status>=400&&n.status<500?Y.ERR_BAD_REQUEST:Y.ERR_BAD_RESPONSE,n.config,n.request,n))}function ef(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function tf(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,o=0,l;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),u=r[o];l||(l=d),n[a]=c,r[a]=d;let f=o,p=0;for(;f!==a;)p+=n[f++],f=f%e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),d-l<t)return;const w=u&&d-u;return w?Math.round(p*1e3/w):void 0}}function nf(e,t){let n=0,r=1e3/t,a,o;const l=(d,u=Date.now())=>{n=u,a=null,o&&(clearTimeout(o),o=null),e(...d)};return[(...d)=>{const u=Date.now(),f=u-n;f>=r?l(d,u):(a=d,o||(o=setTimeout(()=>{o=null,l(a)},r-f)))},()=>a&&l(a)]}const $n=(e,t,n=3)=>{let r=0;const a=tf(50,250);return nf(o=>{if(!o||typeof o.loaded!="number")return;const l=o.loaded,i=o.lengthComputable?o.total:void 0,c=Math.max(0,i!=null?Math.min(l,i):l),d=Math.max(0,c-r),u=a(d);r=Math.max(r,c);const f={loaded:c,total:i,progress:i?c/i:void 0,bytes:d,rate:u||void 0,estimated:u&&i?(i-c)/u:void 0,event:o,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(f)},n)},Rs=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},eo=(e,t=v.asap)=>(...n)=>t(()=>e(...n)),rf=ge.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ge.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ge.origin),ge.navigator&&/(msie|trident)/i.test(ge.navigator.userAgent)):()=>!0,af=ge.hasStandardBrowserEnv?{write(e,t,n,r,a,o,l){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];v.isNumber(n)&&i.push(`expires=${new Date(n).toUTCString()}`),v.isString(r)&&i.push(`path=${r}`),v.isString(a)&&i.push(`domain=${a}`),o===!0&&i.push("secure"),v.isString(l)&&i.push(`SameSite=${l}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.split(";");for(let n=0;n<t.length;n++){const r=t[n].replace(/^\s+/,""),a=r.indexOf("=");if(a!==-1&&r.slice(0,a)===e)try{return decodeURIComponent(r.slice(a+1))}catch{return r.slice(a+1)}}return null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function sf(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function of(e,t){if(!t)return e;let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n--;return e.slice(0,n)+"/"+t.replace(/^\/+/,"")}const lf=/^https?:(?!\/\/)/i,cf=/[\t\n\r]/g;function df(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function uf(e){return df(e).replace(cf,"")}function ff(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${Pn}`)}function pf(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Pn}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Pn}`);return n===-1?a:`${a}#${ff(t.slice(n+1))}`}function to(e,t){if(typeof e=="string"){const n=uf(e);if(lf.test(n))throw new Y(`Invalid URL ${JSON.stringify(pf(n))}: missing "//" after protocol`,Y.ERR_INVALID_URL,t)}}function no(e,t,n,r){to(t,r);let a=!sf(t);return e&&(a||n===!1)?(to(e,r),of(e,t)):t}const ro=e=>e instanceof Se?{...e}:e,hf=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function st(e,t){e=e||{},t=t||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(u,f,p,w){return v.isPlainObject(u)&&v.isPlainObject(f)?v.merge.call({caseless:w},u,f):v.isPlainObject(f)?v.merge({},f):v.isArray(f)?f.slice():f}function a(u,f,p,w){if(v.isUndefined(f)){if(!v.isUndefined(u))return r(void 0,u,p,w)}else return r(u,f,p,w)}function o(u,f){if(!v.isUndefined(f))return r(void 0,f)}function l(u,f){if(v.isUndefined(f)){if(!v.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function i(u){const f=v.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!v.isUndefined(f))if(v.isPlainObject(f)){if(v.hasOwnProp(f,u))return f[u]}else return;const p=v.hasOwnProp(e,"transitional")?e.transitional:void 0;if(v.isPlainObject(p)&&v.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(v.hasOwnProp(t,p))return r(u,f);if(v.hasOwnProp(e,p))return r(void 0,u)}const d={url:o,method:o,data:o,baseURL:l,transformRequest:l,transformResponse:l,paramsSerializer:l,timeout:l,timeoutMessage:l,withCredentials:l,withXSRFToken:l,adapter:l,responseType:l,xsrfCookieName:l,xsrfHeaderName:l,onUploadProgress:l,onDownloadProgress:l,decompress:l,maxContentLength:l,maxBodyLength:l,beforeRedirect:l,transport:l,httpAgent:l,httpsAgent:l,cancelToken:l,socketPath:l,allowedSocketPaths:l,responseEncoding:l,validateStatus:c,headers:(u,f,p)=>a(ro(u),ro(f),p,!0)};return v.forEach(hf({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=v.hasOwnProp(d,f)?d[f]:a,w=v.hasOwnProp(e,f)?e[f]:void 0,S=v.hasOwnProp(t,f)?t[f]:void 0,m=p(w,S,f);v.isUndefined(m)&&p!==c||(n[f]=m)}),v.hasOwnProp(t,"validateStatus")&&v.isUndefined(t.validateStatus)&&i("validateStatusUndefinedResolves")===!1&&(v.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const mf=["content-type","content-length"];function gf(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{mf.includes(r.toLowerCase())&&e.set(r,a)})}const yf=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function ao(e){const t=st({},e),n=p=>v.hasOwnProp(t,p)?t[p]:void 0,r=n("data");let a=n("withXSRFToken");const o=n("xsrfHeaderName"),l=n("xsrfCookieName");let i=n("headers");const c=n("auth"),d=n("baseURL"),u=n("allowAbsoluteUrls"),f=n("url");if(t.headers=i=Se.from(i),t.url=Ks(no(d,f,u,t),n("params"),n("paramsSerializer")),c){const p=v.getSafeProp(c,"username")||"",w=v.getSafeProp(c,"password")||"";try{i.set("Authorization","Basic "+btoa(p+":"+(w?yf(w):"")))}catch(S){throw Y.from(S,Y.ERR_BAD_OPTION_VALUE,e)}}if(v.isFormData(r)&&(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv||v.isReactNative(r)?i.setContentType(void 0):v.isFunction(r.getHeaders)&&gf(i,r.getHeaders(),n("formDataHeaderPolicy"))),ge.hasStandardBrowserEnv&&(v.isFunction(a)&&(a=a(t)),a===!0||a==null&&rf(t.url))){const w=o&&l&&af.read(l);w&&i.set(o,w)}return t}const bf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=ao(e);let o=a.data;const l=Se.from(a.headers).normalize();let{responseType:i,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,w,S;function m(){w&&w(),S&&S(),a.cancelToken&&a.cancelToken.unsubscribe(u),a.signal&&a.signal.removeEventListener("abort",u)}let h=new XMLHttpRequest;h.open(a.method.toUpperCase(),a.url,!0),h.timeout=a.timeout;function g(){if(!h)return;const L=Se.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),x={data:!i||i==="text"||i==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:L,config:e,request:h};Qs(function(V){n(V),m()},function(V){r(V),m()},x),h=null}"onloadend"in h?h.onloadend=g:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.startsWith("file:"))||setTimeout(g)},h.onabort=function(){h&&(r(new Y("Request aborted",Y.ECONNABORTED,e,h)),m(),h=null)},h.onerror=function(N){const x=N&&N.message?N.message:"Network Error",T=new Y(x,Y.ERR_NETWORK,e,h);T.event=N||null,r(T),m(),h=null},h.ontimeout=function(){let N=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const x=a.transitional||Vr;a.timeoutErrorMessage&&(N=a.timeoutErrorMessage),r(new Y(N,x.clarifyTimeoutError?Y.ETIMEDOUT:Y.ECONNABORTED,e,h)),m(),h=null},o===void 0&&l.setContentType(null),"setRequestHeader"in h&&v.forEach(Bs(l),function(N,x){h.setRequestHeader(x,N)}),v.isUndefined(a.withCredentials)||(h.withCredentials=!!a.withCredentials),i&&i!=="json"&&(h.responseType=a.responseType),d&&([p,S]=$n(d,!0),h.addEventListener("progress",p)),c&&h.upload&&([f,w]=$n(c),h.upload.addEventListener("progress",f),h.upload.addEventListener("loadend",w)),(a.cancelToken||a.signal)&&(u=L=>{h&&(r(!L||L.type?new Qt(null,e,h):L),h.abort(),m(),h=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const b=ef(a.url);if(b&&!ge.protocols.includes(b)){r(new Y("Unsupported protocol "+b+":",Y.ERR_BAD_REQUEST,e)),m();return}h.send(o||null)})},Sf=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;const n=new AbortController;let r=!1;const a=function(c){if(!r){r=!0,l();const d=c instanceof Error?c:this.reason;n.abort(d instanceof Y?d:new Qt(d instanceof Error?d.message:d))}};let o=t&&setTimeout(()=>{o=null,a(new Y(`timeout of ${t}ms exceeded`,Y.ETIMEDOUT))},t);const l=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(a):c.removeEventListener("abort",a)}),e=null)};e.forEach(c=>{if(!r){if(c.aborted){a.call(c);return}c.addEventListener("abort",a,{once:!0})}});const{signal:i}=n;return i.unsubscribe=()=>v.asap(l),i},vf=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,a;for(;r<n;)a=r+t,yield e.slice(r,a),r=a},wf=async function*(e,t){for await(const n of Cf(e))yield*vf(n,t)},Cf=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},so=(e,t,n,r)=>{const a=wf(e,t);let o=0,l,i=c=>{l||(l=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:u}=await a.next();if(d){i(),c.close();return}let f=u.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(u))}catch(d){throw i(d),d}},cancel(c){return i(c),a.return()}},{highWaterMark:2})},oo=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,lo=(e,t,n)=>t+2<n&&oo(e.charCodeAt(t+1))&&oo(e.charCodeAt(t+2)),io=e=>e<=57?e-48:(e&223)-55,Nf=e=>e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===45||e===95,_f=e=>e===9||e===10||e===12||e===13||e===32,Af=e=>{const t=Math.floor(e/4),n=e%4;return t*3+(n===2?1:n===3?2:0)},Ef=e=>{const t=e.length;let n=0;return t>0&&e.charCodeAt(t-1)===61&&(n++,t>1&&e.charCodeAt(t-2)===61&&n++),Math.floor((t-n)*3/4)},Lf=e=>{const t=e.length;let n=0,r=0,a=!1;for(let o=0;o<t;o++){let l=e.charCodeAt(o);if(l===37&&lo(e,o,t)&&(l=io(e.charCodeAt(o+1))*16+io(e.charCodeAt(o+2)),o+=2),!_f(l)){if(l===61){r++;continue}if(!Nf(l)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?Ef(e):Af(n)},Tf=(e,t)=>{if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;const n=e.indexOf(",");if(n<0)return 0;const r=e.slice(5,n),a=e.slice(n+1);if(/;base64/i.test(r))return t(a);let l=0;for(let i=0,c=a.length;i<c;i++){const d=a.charCodeAt(i);if(d===37&&lo(a,i,c))l+=1,i+=2;else if(d<128)l+=1;else if(d<2048)l+=2;else if(d>=55296&&d<=56319&&i+1<c){const u=a.charCodeAt(i+1);u>=56320&&u<=57343?(l+=4,i++):l+=3}else l+=3}return l};function If(e){const t=typeof e=="string"?e.indexOf("#"):-1;return Tf(t===-1?e:e.slice(0,t),Lf)}const Kr="1.19.0",co=64*1024,{isFunction:Bn}=v,Ff=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),uo=e=>{if(!v.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},fo=(e,...t)=>{try{return!!e(...t)}catch{return!1}},kf=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},Of=e=>{const t=v.global!==void 0&&v.global!==null?v.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=v.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:o,Response:l}=e,i=a?Bn(a):typeof fetch=="function",c=Bn(o),d=Bn(l);if(!i)return!1;const u=i&&Bn(n),f=i&&(typeof r=="function"?(g=>b=>g.encode(b))(new r):async g=>new Uint8Array(await new o(g).arrayBuffer())),p=c&&u&&fo(()=>{let g=!1;const b=new o(ge.origin,{body:new n,method:"POST",get duplex(){return g=!0,"half"}}),L=b.headers.has("Content-Type");return b.body!=null&&b.body.cancel(),g&&!L}),w=d&&u&&fo(()=>v.isReadableStream(new l("").body)),S={stream:w&&(g=>g.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(g=>{!S[g]&&(S[g]=(b,L)=>{let N=b&&b[g];if(N)return N.call(b);throw new Y(`Response type '${g}' is not supported`,Y.ERR_NOT_SUPPORT,L)})});const m=async g=>{if(g==null)return 0;if(v.isBlob(g))return g.size;if(v.isSpecCompliantForm(g))return(await new o(ge.origin,{method:"POST",body:g}).arrayBuffer()).byteLength;if(v.isArrayBufferView(g)||v.isArrayBuffer(g))return g.byteLength;if(v.isURLSearchParams(g)&&(g=g+""),v.isString(g))return(await f(g)).byteLength},h=async(g,b)=>{const L=v.toFiniteNumber(g.getContentLength());return L??m(b)};return async g=>{let{url:b,method:L,data:N,signal:x,cancelToken:T,timeout:V,onDownloadProgress:R,onUploadProgress:Z,responseType:q,headers:K,withCredentials:$="same-origin",fetchOptions:G,maxContentLength:I,maxBodyLength:D}=ao(g);const j=v.isNumber(I)&&I>-1,H=v.isNumber(D)&&D>-1,E=k=>v.hasOwnProp(g,k)?g[k]:void 0;let M=a||fetch;q=q?(q+"").toLowerCase():"text";let C=Sf([x,T&&T.toAbortSignal()],V),F=null;const O=C&&C.unsubscribe&&(()=>{C.unsubscribe()});let W,J=null;const te=()=>new Y("Request body larger than maxBodyLength limit",Y.ERR_BAD_REQUEST,g,F);try{let k;const A=E("auth");if(A){const ne=v.getSafeProp(A,"username")||"",me=v.getSafeProp(A,"password")||"";k={username:ne,password:me}}if(kf(b)){const ne=new URL(b,ge.origin);if(!k&&(ne.username||ne.password)){const me=uo(ne.username),ke=uo(ne.password);k={username:me,password:ke}}(ne.username||ne.password)&&(ne.username="",ne.password="",b=ne.href)}if(k&&(K.delete("authorization"),K.set("Authorization","Basic "+btoa(Ff((k.username||"")+":"+(k.password||""))))),j&&typeof b=="string"&&b.startsWith("data:")&&If(b)>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F);if(H&&L!=="get"&&L!=="head"){const ne=await m(N);if(typeof ne=="number"&&isFinite(ne)&&(W=ne,ne>D))throw te()}const _=H&&(v.isReadableStream(N)||v.isStream(N)),z=(ne,me,ke)=>so(ne,co,Ae=>{if(H&&Ae>D)throw J=te();me&&me(Ae)},ke);if(p&&L!=="get"&&L!=="head"&&(Z||_)){if(W=W??await h(K,N),W!==0||_){let ne=new o(b,{method:"POST",body:N,duplex:"half"}),me;if(v.isFormData(N)&&(me=ne.headers.get("content-type"))&&K.setContentType(me),ne.body){const[ke,Ae]=Z&&Rs(W,$n(eo(Z)))||[];N=z(ne.body,ke,Ae)}}}else if(_&&!c&&u&&L!=="get"&&L!=="head")N=z(N);else if(_&&c&&!p&&L!=="get"&&L!=="head")throw new Y("Stream request bodies are not supported by the current fetch implementation",Y.ERR_NOT_SUPPORT,g,F);v.isString($)||($=$?"include":"omit");const X=c&&"credentials"in o.prototype;if(v.isFormData(N)){const ne=K.getContentType();ne&&/^multipart\/form-data/i.test(ne)&&!/boundary=/i.test(ne)&&K.delete("content-type")}K.set("User-Agent","axios/"+Kr,!1);const ae={...G,signal:C,method:L.toUpperCase(),headers:Bs(K.normalize()),body:N,duplex:"half",credentials:X?$:void 0};F=c&&new o(b,ae);let ue=await(c?M(F,G):M(b,ae));const fe=Se.from(ue.headers);if(j){const ne=v.toFiniteNumber(fe.getContentLength());if(ne!=null&&ne>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F)}const pe=w&&(q==="stream"||q==="response");if(w&&ue.body&&(R||j||pe&&O)){const ne={};["status","statusText","headers"].forEach(je=>{ne[je]=ue[je]});const me=v.toFiniteNumber(fe.getContentLength()),[ke,Ae]=R&&Rs(me,$n(eo(R),!0))||[];let ut=0;const Ye=je=>{if(j&&(ut=je,ut>I))throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F);ke&&ke(je)};ue=new l(so(ue.body,co,Ye,()=>{Ae&&Ae(),O&&O()}),ne)}q=q||"text";let he=await S[v.findKey(S,q)||"text"](ue,g);if(j&&!w&&!pe){let ne;if(he!=null&&(typeof he.byteLength=="number"?ne=he.byteLength:typeof he.size=="number"?ne=he.size:typeof he=="string"&&(ne=typeof r=="function"?new r().encode(he).byteLength:he.length)),typeof ne=="number"&&ne>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F)}return!pe&&O&&O(),await new Promise((ne,me)=>{Qs(ne,me,{data:he,headers:Se.from(ue.headers),status:ue.status,statusText:ue.statusText,config:g,request:F})})}catch(k){if(O&&O(),C&&C.aborted&&C.reason instanceof Y){const A=C.reason;throw A.config=g,F&&(A.request=F),k!==A&&Object.defineProperty(A,"cause",{__proto__:null,value:k,writable:!0,enumerable:!1,configurable:!0}),A}if(J)throw F&&!J.request&&(J.request=F),J;if(k instanceof Y)throw F&&!k.request&&(k.request=F),k;if(k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)){const A=new Y("Network Error",Y.ERR_NETWORK,g,F,k&&k.response);throw Object.defineProperty(A,"cause",{__proto__:null,value:k.cause||k,writable:!0,enumerable:!1,configurable:!0}),A}throw Y.from(k,k&&k.code,g,F,k&&k.response)}}},Df=new Map,po=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:a}=t,o=[r,a,n];let l=o.length,i=l,c,d,u=Df;for(;i--;)c=o[i],d=u.get(c),d===void 0&&u.set(c,d=i?new Map:Of(t)),u=d;return d};po();const Yr={http:Vu,xhr:bf,fetch:{get:po}};v.forEach(Yr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const ho=e=>`- ${e}`,Mf=e=>v.isFunction(e)||e===null||e===!1;function xf(e,t){e=v.isArray(e)?e:[e];const{length:n}=e;let r,a;const o={};for(let l=0;l<n;l++){r=e[l];let i;if(a=r,!Mf(r)&&(a=Yr[(i=String(r)).toLowerCase()],a===void 0))throw new Y(`Unknown adapter '${i}'`);if(a&&(v.isFunction(a)||(a=a.get(t))))break;o[i||"#"+l]=a}if(!a){const l=Object.entries(o).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let i=n?l.length>1?`since :
6
- `+l.map(ho).join(`
7
- `):" "+ho(l[0]):"as no adapter specified";throw new Y("There is no suitable adapter to dispatch the request "+i,Y.ERR_NOT_SUPPORT)}return a}const mo={getAdapter:xf,adapters:Yr};function Gr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Qt(null,e)}function Jr(e){return Gr(e),e.headers=Se.from(e.headers),e.data=Hr.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),mo.getAdapter(e.adapter||Xt.adapter,e)(e).then(function(r){Gr(e),e.response=r;try{r.data=Hr.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=Se.from(r.headers),r},function(r){if(!Xs(r)&&(Gr(e),r&&r.response)){e.response=r.response;try{r.response.data=Hr.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=Se.from(r.response.headers)}return Promise.reject(r)})}const jn={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{jn[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const go={};jn.transitional=function(t,n,r){function a(o,l){return"[Axios v"+Kr+"] Transitional option '"+o+"'"+l+(r?". "+r:"")}return(o,l,i)=>{if(t===!1)throw new Y(a(l," has been removed"+(n?" in "+n:"")),Y.ERR_DEPRECATED);return n&&!go[l]&&(go[l]=!0,console.warn(a(l," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,l,i):!0}},jn.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Pf(e,t,n){if(typeof e!="object"||e===null)throw new Y("options must be an object",Y.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const o=r[a],l=Object.prototype.hasOwnProperty.call(t,o)?t[o]:void 0;if(l){const i=e[o],c=i===void 0||l(i,o,e);if(c!==!0)throw new Y("option "+o+" must be "+c,Y.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Y("Unknown option "+o,Y.ERR_BAD_OPTION)}}const qn={assertOptions:Pf,validators:jn},ve=qn.validators;let ot=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ys,response:new Ys}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const o=(()=>{if(!a.stack)return"";const l=a.stack.indexOf(`
3
+ `+('Please change the parent <Route path="'+v+'"> to <Route ')+('path="'+(v==="/"?"*":v+"/*")+'">.'))}let u=De(),p;if(t){var w;let v=typeof t=="string"?pt(t):t;d==="/"||(w=v.pathname)!=null&&w.startsWith(d)||(process.env.NODE_ENV!=="production"?le(!1,"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, the location pathname must begin with the portion of the URL pathname that was "+('matched by all parent routes. The current pathname base is "'+d+'" ')+('but pathname "'+v.pathname+'" was given in the `location` prop.')):le(!1)),p=v}else p=u;let b=p.pathname||"/",g=b;if(d!=="/"){let v=d.replace(/^\//,"").split("/");g="/"+b.replace(/^\//,"").split("/").slice(v.length).join("/")}let m=Sc(e,{pathname:g});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Le(f||m!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Le(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,'Matched leaf route at location "'+p.pathname+p.search+p.hash+'" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.'));let h=Zc(m&&m.map(v=>Object.assign({},v,{params:Object.assign({},i,v.params),pathname:Ve([d,a.encodeLocation?a.encodeLocation(v.pathname).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?d:Ve([d,a.encodeLocation?a.encodeLocation(v.pathnameBase).pathname:v.pathnameBase])})),o,n,r);return t&&h?B.createElement(Ht.Provider,{value:{location:Wt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Xe.Pop}},h):h}function Jc(){let e=nd(),t=jc(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},o={padding:"2px 4px",backgroundColor:r},l=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),l=B.createElement(B.Fragment,null,B.createElement("p",null,"💿 Hey developer 👋"),B.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",B.createElement("code",{style:o},"ErrorBoundary")," or"," ",B.createElement("code",{style:o},"errorElement")," prop on your route."))),B.createElement(B.Fragment,null,B.createElement("h2",null,"Unexpected Application Error!"),B.createElement("h3",{style:{fontStyle:"italic"}},t),n?B.createElement("pre",{style:a},n):null,l)}const Yc=B.createElement(Jc,null);class Gc extends B.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?B.createElement(Me.Provider,{value:this.props.routeContext},B.createElement(Lr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Xc(e){let{routeContext:t,match:n,children:r}=e,a=B.useContext(zt);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),B.createElement(Me.Provider,{value:t},r)}function Zc(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var o;if(!n)return null;if(n.errors)e=n.matches;else if((o=r)!=null&&o.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let l=e,i=(a=n)==null?void 0:a.errors;if(i!=null){let f=l.findIndex(u=>u.route.id&&i?.[u.route.id]!==void 0);f>=0||(process.env.NODE_ENV!=="production"?le(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(i).join(",")):le(!1)),l=l.slice(0,Math.min(l.length,f+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let f=0;f<l.length;f++){let u=l[f];if((u.route.HydrateFallback||u.route.hydrateFallbackElement)&&(d=f),u.route.id){let{loaderData:p,errors:w}=n,b=u.route.loader&&p[u.route.id]===void 0&&(!w||w[u.route.id]===void 0);if(u.route.lazy||b){c=!0,d>=0?l=l.slice(0,d+1):l=[l[0]];break}}}return l.reduceRight((f,u,p)=>{let w,b=!1,g=null,m=null;n&&(w=i&&u.route.id?i[u.route.id]:void 0,g=u.route.errorElement||Yc,c&&(d<0&&p===0?(vs("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),b=!0,m=null):d===p&&(b=!0,m=u.route.hydrateFallbackElement||null)));let h=t.concat(l.slice(0,p+1)),v=()=>{let _;return w?_=g:b?_=m:u.route.Component?_=B.createElement(u.route.Component,null):u.route.element?_=u.route.element:_=f,B.createElement(Xc,{match:u,routeContext:{outlet:f,matches:h,isDataRoute:n!=null},children:_})};return n&&(u.route.ErrorBoundary||u.route.errorElement||p===0)?B.createElement(Gc,{location:n.location,revalidation:n.revalidation,component:g,error:w,children:v(),routeContext:{outlet:null,matches:h,isDataRoute:!0}}):v()},null)}var bs=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(bs||{}),Jt=(function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e})(Jt||{});function Tr(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Qc(e){let t=B.useContext(zt);return t||(process.env.NODE_ENV!=="production"?le(!1,Tr(e)):le(!1)),t}function Rc(e){let t=B.useContext(Er);return t||(process.env.NODE_ENV!=="production"?le(!1,Tr(e)):le(!1)),t}function ed(e){let t=B.useContext(Me);return t||(process.env.NODE_ENV!=="production"?le(!1,Tr(e)):le(!1)),t}function Ir(e){let t=ed(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?le(!1,e+' can only be used on routes that contain a unique "id"'):le(!1)),n.route.id}function td(){return Ir(Jt.UseRouteId)}function nd(){var e;let t=B.useContext(Lr),n=Rc(Jt.UseRouteError),r=Ir(Jt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function rd(){let{router:e}=Qc(bs.UseNavigateStable),t=Ir(Jt.UseNavigateStable),n=B.useRef(!1);return ys(()=>{n.current=!0}),B.useCallback(function(a,o){o===void 0&&(o={}),process.env.NODE_ENV!=="production"&&Le(n.current,gs),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Wt({fromRouteId:t},o)))},[e,t])}const Ss={};function vs(e,t,n){!t&&!Ss[e]&&(Ss[e]=!0,process.env.NODE_ENV!=="production"&&Le(!1,n))}const ws={};function ad(e,t){process.env.NODE_ENV!=="production"&&!ws[t]&&(ws[t]=!0,console.warn(t))}const Cs=(e,t,n)=>ad(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function sd(e,t){e?.v7_startTransition===void 0&&Cs("v7_startTransition","React Router will begin wrapping state updates in `React.startTransition` in v7","https://reactrouter.com/v6/upgrading/future#v7_starttransition"),e?.v7_relativeSplatPath===void 0&&Cs("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function Ae(e){process.env.NODE_ENV!=="production"?le(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>."):le(!1)}function od(e){let{basename:t="/",children:n=null,location:r,navigationType:a=Xe.Pop,navigator:o,static:l=!1,future:i}=e;ht()&&(process.env.NODE_ENV!=="production"?le(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):le(!1));let c=t.replace(/^\/*/,"/"),d=B.useMemo(()=>({basename:c,navigator:o,static:l,future:Wt({v7_relativeSplatPath:!1},i)}),[c,i,o,l]);typeof r=="string"&&(r=pt(r));let{pathname:f="/",search:u="",hash:p="",state:w=null,key:b="default"}=r,g=B.useMemo(()=>{let m=Ze(f,c);return m==null?null:{location:{pathname:m,search:u,hash:p,state:w,key:b},navigationType:a}},[c,f,u,p,w,b,a]);return process.env.NODE_ENV!=="production"&&Le(g!=null,'<Router basename="'+c+'"> is not able to match the URL '+('"'+f+u+p+'" because it does not start with the ')+"basename, so the <Router> won't render anything."),g==null?null:B.createElement(Oe.Provider,{value:d},B.createElement(Ht.Provider,{children:n,value:g}))}function ld(e){let{children:t,location:n}=e;return Hc(Fr(t),n)}new Promise(()=>{});function Fr(e,t){t===void 0&&(t=[]);let n=[];return B.Children.forEach(e,(r,a)=>{if(!B.isValidElement(r))return;let o=[...t,a];if(r.type===B.Fragment){n.push.apply(n,Fr(r.props.children,o));return}r.type!==Ae&&(process.env.NODE_ENV!=="production"?le(!1,"["+(typeof r.type=="string"?r.type:r.type.name)+"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>"):le(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?le(!1,"An index route cannot have child routes."):le(!1));let l={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(l.children=Fr(r.props.children,o)),n.push(l)}),n}function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(null,arguments)}function kr(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}const Ln="get",Tn="application/x-www-form-urlencoded";function In(e){return e!=null&&typeof e.tagName=="string"}function id(e){return In(e)&&e.tagName.toLowerCase()==="button"}function cd(e){return In(e)&&e.tagName.toLowerCase()==="form"}function dd(e){return In(e)&&e.tagName.toLowerCase()==="input"}function ud(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function fd(e,t){return e.button===0&&(!t||t==="_self")&&!ud(e)}function Or(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(a=>[n,a]):[[n,r]])},[]))}function pd(e,t){let n=Or(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(o=>{n.append(a,o)})}),n}let Fn=null;function hd(){if(Fn===null)try{new FormData(document.createElement("form"),0),Fn=!1}catch{Fn=!0}return Fn}const md=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Dr(e){return e!=null&&!md.has(e)?(process.env.NODE_ENV!=="production"&&Le(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+Tn+'"')),null):e}function gd(e,t){let n,r,a,o,l;if(cd(e)){let i=e.getAttribute("action");r=i?Ze(i,t):null,n=e.getAttribute("method")||Ln,a=Dr(e.getAttribute("enctype"))||Tn,o=new FormData(e)}else if(id(e)||dd(e)&&(e.type==="submit"||e.type==="image")){let i=e.form;if(i==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||i.getAttribute("action");if(r=c?Ze(c,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Ln,a=Dr(e.getAttribute("formenctype"))||Dr(i.getAttribute("enctype"))||Tn,o=new FormData(i,e),!hd()){let{name:d,type:f,value:u}=e;if(f==="image"){let p=d?d+".":"";o.append(p+"x","0"),o.append(p+"y","0")}else d&&o.append(d,u)}}else{if(In(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Ln,r=null,a=Tn,l=e}return o&&a==="text/plain"&&(l=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:l}}const yd=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],bd=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],Sd=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],vd="6";try{window.__reactRouterVersion=vd}catch{}const As=B.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(As.displayName="ViewTransition");const wd=B.createContext(new Map);process.env.NODE_ENV!=="production"&&(wd.displayName="Fetchers");const Ns=B["startTransition"];function Cd(e){let{basename:t,children:n,future:r,window:a}=e,o=B.useRef();o.current==null&&(o.current=gc({window:a,v5Compat:!0}));let l=o.current,[i,c]=B.useState({action:l.action,location:l.location}),{v7_startTransition:d}=r||{},f=B.useCallback(u=>{d&&Ns?Ns(()=>c(u)):c(u)},[c,d]);return B.useLayoutEffect(()=>l.listen(f),[l,f]),B.useEffect(()=>sd(r),[r]),B.createElement(od,{basename:t,children:n,location:i.location,navigationType:i.action,navigator:l,future:r})}process.env.NODE_ENV;const Ad=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Nd=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,_s=B.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:o,replace:l,state:i,target:c,to:d,preventScrollReset:f,viewTransition:u}=t,p=kr(t,yd),{basename:w}=B.useContext(Oe),b,g=!1;if(typeof d=="string"&&Nd.test(d)&&(b=d,Ad))try{let _=new URL(window.location.href),A=d.startsWith("//")?new URL(_.protocol+d):new URL(d),M=Ze(A.pathname,w);A.origin===_.origin&&M!=null?d=M+A.search+A.hash:g=!0}catch{process.env.NODE_ENV!=="production"&&Le(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let m=Wc(d,{relative:a}),h=Td(d,{replace:l,state:i,target:c,preventScrollReset:f,relative:a,viewTransition:u});function v(_){r&&r(_),_.defaultPrevented||h(_)}return B.createElement("a",gt({},p,{href:b||m,onClick:g||o?r:v,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(_s.displayName="Link");const _d=B.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:o="",end:l=!1,style:i,to:c,viewTransition:d,children:f}=t,u=kr(t,bd),p=Kt(c,{relative:u.relative}),w=De(),b=B.useContext(Er),{navigator:g,basename:m}=B.useContext(Oe),h=b!=null&&xd(p)&&d===!0,v=g.encodeLocation?g.encodeLocation(p).pathname:p.pathname,_=w.pathname,A=b&&b.navigation&&b.navigation.location?b.navigation.location.pathname:null;a||(_=_.toLowerCase(),A=A?A.toLowerCase():null,v=v.toLowerCase()),A&&m&&(A=Ze(A,m)||A);const M=v!=="/"&&v.endsWith("/")?v.length-1:v.length;let L=_===v||!l&&_.startsWith(v)&&_.charAt(M)==="/",z=A!=null&&(A===v||!l&&A.startsWith(v)&&A.charAt(v.length)==="/"),Q={isActive:L,isPending:z,isTransitioning:h},G=L?r:void 0,q;typeof o=="function"?q=o(Q):q=[o,L?"active":null,z?"pending":null,h?"transitioning":null].filter(Boolean).join(" ");let K=typeof i=="function"?i(Q):i;return B.createElement(_s,gt({},u,{"aria-current":G,className:q,ref:n,style:K,to:c,viewTransition:d}),typeof f=="function"?f(Q):f)});process.env.NODE_ENV!=="production"&&(_d.displayName="NavLink");const Ed=B.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:o,state:l,method:i=Ln,action:c,onSubmit:d,relative:f,preventScrollReset:u,viewTransition:p}=e,w=kr(e,Sd),b=Od(),g=Dd(c,{relative:f}),m=i.toLowerCase()==="get"?"get":"post",h=v=>{if(d&&d(v),v.defaultPrevented)return;v.preventDefault();let _=v.nativeEvent.submitter,A=_?.getAttribute("formmethod")||i;b(_||v.currentTarget,{fetcherKey:n,method:A,navigate:r,replace:o,state:l,relative:f,preventScrollReset:u,viewTransition:p})};return B.createElement("form",gt({ref:t,method:m,action:g,onSubmit:a?d:h},w))});process.env.NODE_ENV!=="production"&&(Ed.displayName="Form"),process.env.NODE_ENV;var kn;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(kn||(kn={}));var Es;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Es||(Es={}));function Ld(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Ls(e){let t=B.useContext(zt);return t||(process.env.NODE_ENV!=="production"?le(!1,Ld(e)):le(!1)),t}function Td(e,t){let{target:n,replace:r,state:a,preventScrollReset:o,relative:l,viewTransition:i}=t===void 0?{}:t,c=Pe(),d=De(),f=Kt(e,{relative:l});return B.useCallback(u=>{if(fd(u,n)){u.preventDefault();let p=r!==void 0?r:qt(d)===qt(f);c(e,{replace:p,state:a,preventScrollReset:o,relative:l,viewTransition:i})}},[d,c,f,r,a,n,e,o,l,i])}function Ts(e){process.env.NODE_ENV!=="production"&&Le(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=B.useRef(Or(e)),n=B.useRef(!1),r=De(),a=B.useMemo(()=>pd(r.search,n.current?null:t.current),[r.search]),o=Pe(),l=B.useCallback((i,c)=>{const d=Or(typeof i=="function"?i(a):i);n.current=!0,o("?"+d,c)},[o,a]);return[a,l]}function Id(){if(typeof document>"u")throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}let Fd=0,kd=()=>"__"+String(++Fd)+"__";function Od(){let{router:e}=Ls(kn.UseSubmit),{basename:t}=B.useContext(Oe),n=td();return B.useCallback(function(r,a){a===void 0&&(a={}),Id();let{action:o,method:l,encType:i,formData:c,body:d}=gd(r,t);if(a.navigate===!1){let f=a.fetcherKey||kd();e.fetch(f,n,a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,flushSync:a.flushSync})}else e.navigate(a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,n])}function Dd(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=B.useContext(Oe),a=B.useContext(Me);a||(process.env.NODE_ENV!=="production"?le(!1,"useFormAction must be used inside a RouteContext"):le(!1));let[o]=a.matches.slice(-1),l=gt({},Kt(e||".",{relative:n})),i=De();if(e==null){l.search=i.search;let c=new URLSearchParams(l.search),d=c.getAll("index");if(d.some(u=>u==="")){c.delete("index"),d.filter(p=>p).forEach(p=>c.append("index",p));let u=c.toString();l.search=u?"?"+u:""}}return(!e||e===".")&&o.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(l.pathname=l.pathname==="/"?r:Ve([r,l.pathname])),qt(l)}function xd(e,t){t===void 0&&(t={});let n=B.useContext(As);n==null&&(process.env.NODE_ENV!=="production"?le(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):le(!1));let{basename:r}=Ls(kn.useViewTransitionState),a=Kt(e,{relative:t.relative});if(!n.isTransitioning)return!1;let o=Ze(n.currentLocation.pathname,r)||n.currentLocation.pathname,l=Ze(n.nextLocation.pathname,r)||n.nextLocation.pathname;return Nr(a.pathname,l)!=null||Nr(a.pathname,o)!=null}function Is(e,t){return function(){return e.apply(t,arguments)}}const{toString:Md}=Object.prototype,{getPrototypeOf:yt}=Object,{iterator:Yt,toStringTag:Fs}=Symbol,On=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Gt=(e,t)=>{let n=e;const r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),On(n,t))return!0;n=yt(n)}return!1},Pd=(e,t)=>e!=null&&Gt(e,t)?e[t]:void 0,xr=(e=>t=>{const n=Md.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Te=e=>(e=e.toLowerCase(),t=>xr(t)===e),Dn=e=>t=>typeof t===e,{isArray:nt}=Array,rt=Dn("undefined");function bt(e){return e!==null&&!rt(e)&&e.constructor!==null&&!rt(e.constructor)&&we(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const ks=Te("ArrayBuffer");function Ud(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ks(e.buffer),t}const Bd=Dn("string"),we=Dn("function"),Os=Dn("number"),St=e=>e!==null&&typeof e=="object",$d=e=>e===!0||e===!1,xn=e=>{if(!St(e))return!1;const t=yt(e);return(t===null||t===Object.prototype||yt(t)===null)&&!Gt(e,Fs)&&!Gt(e,Yt)},jd=e=>{if(!St(e)||bt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Vd=Te("Date"),qd=Te("File"),Wd=e=>!!(e&&typeof e.uri<"u"),zd=e=>e&&typeof e.getParts<"u",Hd=Te("Blob"),Kd=Te("FileList"),Jd=Te("Set"),Yd=e=>St(e)&&we(e.pipe);function Gd(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Ds=Gd(),xs=typeof Ds.FormData<"u"?Ds.FormData:void 0,Xd=e=>{if(!e)return!1;if(xs&&e instanceof xs)return!0;const t=yt(e);if(!t||t===Object.prototype||!we(e.append))return!1;const n=xr(e);return n==="formdata"||n==="object"&&we(e.toString)&&e.toString()==="[object FormData]"},Zd=Te("URLSearchParams"),[Qd,Rd,eu,tu]=["ReadableStream","Request","Response","Headers"].map(Te),nu=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Xt(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,a;if(typeof e!="object"&&(e=[e]),nt(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(bt(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),l=o.length;let i;for(r=0;r<l;r++)i=o[r],t.call(null,e[i],i,e)}}function Ms(e,t){if(bt(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,a;for(;r-- >0;)if(a=n[r],t===a.toLowerCase())return a;return null}const at=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ps=e=>!rt(e)&&e!==at;function Mr(...e){const{caseless:t,skipUndefined:n}=Ps(this)&&this||{},r={},a=(o,l)=>{if(l==="__proto__"||l==="constructor"||l==="prototype")return;const i=t&&typeof l=="string"&&Ms(r,l)||l,c=On(r,i)?r[i]:void 0;xn(c)&&xn(o)?r[i]=Mr(c,o):xn(o)?r[i]=Mr({},o):nt(o)?r[i]=o.slice():(!n||!rt(o))&&(r[i]=o)};for(let o=0,l=e.length;o<l;o++){const i=e[o];if(!i||bt(i)||(Xt(i,a),typeof i!="object"||nt(i)))continue;const c=Object.getOwnPropertySymbols(i);for(let d=0;d<c.length;d++){const f=c[d];hu.call(i,f)&&a(i[f],f)}}return r}const ru=(e,t,n,{allOwnKeys:r}={})=>(Xt(t,(a,o)=>{n&&we(a)?Object.defineProperty(e,o,{__proto__:null,value:Is(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),au=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),su=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),n&&Object.assign(e.prototype,n)},ou=(e,t,n,r)=>{let a,o,l;const i={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),o=a.length;o-- >0;)l=a[o],(!r||r(l,e,t))&&!i[l]&&(t[l]=e[l],i[l]=!0);e=n!==!1&&yt(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},lu=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},iu=e=>{if(!e)return null;if(nt(e))return e;let t=e.length;if(!Os(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},cu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&yt(Uint8Array)),du=(e,t)=>{const r=(e&&e[Yt]).call(e);let a;for(;(a=r.next())&&!a.done;){const o=a.value;t.call(e,o[0],o[1])}},uu=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},fu=Te("HTMLFormElement"),pu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:hu}=Object.prototype,mu=Te("RegExp"),Us=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Xt(n,(a,o)=>{let l;(l=t(a,o,e))!==!1&&(r[o]=l||a)}),Object.defineProperties(e,r)},gu=e=>{Us(e,(t,n)=>{if(we(e)&&["arguments","caller","callee"].includes(n))return!1;const r=e[n];if(we(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},yu=(e,t)=>{const n={},r=a=>{a.forEach(o=>{n[o]=!0})};return nt(e)?r(e):r(String(e).split(t)),n},bu=()=>{},Su=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vu(e){return!!(e&&we(e.append)&&e[Fs]==="FormData"&&e[Yt])}const wu=e=>{const t=new WeakSet,n=r=>{if(St(r)){if(t.has(r))return;if(bt(r))return r;if(!("toJSON"in r)){t.add(r);let a;if(Jd(r)){a=[];for(const o of r){const l=n(o);!rt(l)&&a.push(l)}}else a=nt(r)?[]:{},Xt(r,(o,l)=>{const i=n(o);!rt(i)&&(a[l]=i)});return t.delete(r),a}}return r};return n(e)},Cu=Te("AsyncFunction"),Au=e=>e&&(St(e)||we(e))&&we(e.then)&&we(e.catch),Bs=((e,t)=>e?setImmediate:t?((n,r)=>(at.addEventListener("message",({source:a,data:o})=>{a===at&&o===n&&r.length&&r.shift()()},!1),a=>{r.push(a),at.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",we(at.postMessage)),Nu=typeof queueMicrotask<"u"?queueMicrotask.bind(at):typeof process<"u"&&process.nextTick||Bs,$s=e=>e!=null&&we(e[Yt]),S={isArray:nt,isArrayBuffer:ks,isBuffer:bt,isFormData:Xd,isArrayBufferView:Ud,isString:Bd,isNumber:Os,isBoolean:$d,isObject:St,isPlainObject:xn,isEmptyObject:jd,isReadableStream:Qd,isRequest:Rd,isResponse:eu,isHeaders:tu,isUndefined:rt,isDate:Vd,isFile:qd,isReactNativeBlob:Wd,isReactNative:zd,isBlob:Hd,isRegExp:mu,isFunction:we,isStream:Yd,isURLSearchParams:Zd,isTypedArray:cu,isFileList:Kd,forEach:Xt,merge:Mr,extend:ru,trim:nu,stripBOM:au,inherits:su,toFlatObject:ou,kindOf:xr,kindOfTest:Te,endsWith:lu,toArray:iu,forEachEntry:du,matchAll:uu,isHTMLForm:fu,hasOwnProperty:On,hasOwnProp:On,hasOwnInPrototypeChain:Gt,getSafeProp:Pd,reduceDescriptors:Us,freezeMethods:gu,toObjectSet:yu,toCamelCase:pu,noop:bu,toFiniteNumber:Su,findKey:Ms,global:at,isContextDefined:Ps,isSpecCompliantForm:vu,toJSONObject:wu,isAsyncFn:Cu,isThenable:Au,setImmediate:Bs,asap:Nu,isIterable:$s,isSafeIterable:e=>e!=null&&Gt(e,Yt)&&$s(e)},_u=S.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Eu=e=>{const t={};let n,r,a;return e&&e.split(`
4
+ `).forEach(function(l){a=l.indexOf(":"),n=l.substring(0,a).trim().toLowerCase(),r=l.substring(a+1).trim();const i=S.hasOwnProp(t,n);!n||i&&S.hasOwnProp(_u,n)||(n==="set-cookie"?i?t[n].push(r):t[n]=[r]:t[n]=i?t[n]+", "+r:r)}),t};function Lu(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}const Tu=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),Iu=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function Pr(e,t){return S.isArray(e)?e.map(n=>Pr(n,t)):Lu(String(e).replace(t,""))}const Fu=e=>Pr(e,Tu),ku=e=>Pr(e,Iu);function js(e){const t=Object.create(null);return S.forEach(e.toJSON(),(n,r)=>{t[r]=ku(n)}),t}const Vs=Symbol("internals");function Zt(e){return e&&String(e).trim().toLowerCase()}function Mn(e){return e===!1||e==null?e:S.isArray(e)?e.map(Mn):Fu(String(e))}function Ou(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Du=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Ur(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}function xu(e){const t=e.length-1;if(t<1||e.charCodeAt(0)!==34||e.charCodeAt(t)!==34)return e;let n="";for(let r=1;r<t;r++){const a=e.charCodeAt(r);if(a===34||a===92&&(r+=1,r>=t))return e;n+=e[r]}return n}function Mu(e){const t=Object.create(null),n=String(e);let r=0,a=!1,o=!1;function l(i){const c=Ur(n.slice(r,i)),d=c.indexOf("=");if(d<1)return;const f=Ur(c.slice(0,d));if(!Du.test(f))return;const u=f.toLowerCase();if(u==="__proto__"||u==="constructor"||u==="prototype")return;const p=Ur(c.slice(d+1));t[u]=xu(p)}for(let i=0;i<n.length;i++){const c=n.charCodeAt(i);a?o?o=!1:c===92?o=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(l(i),r=i+1)}return l(n.length),t}const Pu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Br(e,t,n,r,a){if(S.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!S.isString(t)){if(S.isString(r))return t.indexOf(r)!==-1;if(S.isRegExp(r))return r.test(t)}}function Uu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Bu(e,t){const n=S.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(a,o,l){return this[r].call(this,t,a,o,l)},configurable:!0})})}let Se=class{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function o(i,c,d){const f=Zt(c);if(!f)return;const u=S.findKey(a,f);(!u||a[u]===void 0||d===!0||d===void 0&&a[u]!==!1)&&(a[u||c]=Mn(i))}const l=(i,c)=>S.forEach(i,(d,f)=>o(d,f,c));if(S.isPlainObject(t)||t instanceof this.constructor)l(t,n);else if(S.isString(t)&&(t=t.trim())&&!Pu(t))l(Eu(t),n);else if(S.isObject(t)&&S.isSafeIterable(t)){let i=Object.create(null),c,d;for(const f of t){if(!S.isArray(f))throw new TypeError("Object iterator must return a key-value pair");d=f[0],S.hasOwnProp(i,d)?(c=i[d],i[d]=S.isArray(c)?[...c,f[1]]:[c,f[1]]):i[d]=f[1]}l(i,n)}else t!=null&&o(n,t,r);return this}get(t,n){if(t=Zt(t),t){const r=S.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return Ou(a);if(S.isFunction(n))return n.call(this,a,r);if(S.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Zt(t),t){const r=S.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||Br(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function o(l){if(l=Zt(l),l){const i=S.findKey(r,l);i&&(!n||Br(r,r[i],i,n))&&(delete r[i],a=!0)}}return S.isArray(t)?t.forEach(o):o(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const o=n[r];(!t||Br(this,this[o],o,t,!0))&&(delete this[o],a=!0)}return a}normalize(t){const n=this,r={};return S.forEach(this,(a,o)=>{const l=S.findKey(r,o);if(l){n[l]=Mn(a),delete n[o];return}const i=t?Uu(o):String(o).trim();i!==o&&delete n[o],n[i]=Mn(a),r[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return S.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&S.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
5
+ `)}getSetCookie(){const t=this.get("set-cookie");return S.isArray(t)?t:t==null||t===!1?[]:[t]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static parseParameters(t){return Mu(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[Vs]=this[Vs]={accessors:{}}).accessors,a=this.prototype;function o(l){const i=Zt(l);r[i]||(Bu(a,l),r[i]=!0)}return S.isArray(t)?t.forEach(o):o(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),S.reduceDescriptors(Se.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),S.freezeMethods(Se);const Pn="[REDACTED ****]";function $u(e){if(S.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(S.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function ju(e,t){const n=new Set(t.map(o=>String(o).toLowerCase())),r=[],a=o=>{if(o===null||typeof o!="object"||S.isBuffer(o))return o;if(r.indexOf(o)!==-1)return;o instanceof Se&&(o=o.toJSON()),r.push(o);let l;if(S.isArray(o))l=[],o.forEach((i,c)=>{const d=a(i);S.isUndefined(d)||(l[c]=d)});else{if(!S.isPlainObject(o)&&$u(o))return r.pop(),o;l=Object.create(null);for(const[i,c]of Object.entries(o)){const d=n.has(i.toLowerCase())?Pn:a(c);S.isUndefined(d)||(l[i]=d)}}return r.pop(),l};return a(e)}function qs(e){try{return String(e)}catch{return""}}function Vu(e){return e.errors.map(n=>{try{return n&&n.message?qs(n.message):qs(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let H=class pc extends Error{static from(t,n,r,a,o,l){let i=t.message;!i&&S.isArray(t.errors)&&t.errors.length&&(i=Vu(t));const c=new pc(i,n||t.code,r,a,o);return Object.defineProperty(c,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),c.name=t.name,t.status!=null&&c.status==null&&(c.status=t.status),l&&Object.assign(c,l),c}constructor(t,n,r,a,o){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),a&&(this.request=a),o&&(this.response=o,this.status=o.status)}toJSON(){const t=this.config,n=t&&S.hasOwnProp(t,"redact")?t.redact:void 0,r=S.isArray(n)&&n.length>0?ju(t,n):S.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};H.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",H.ERR_BAD_OPTION="ERR_BAD_OPTION",H.ECONNABORTED="ECONNABORTED",H.ETIMEDOUT="ETIMEDOUT",H.ECONNREFUSED="ECONNREFUSED",H.ERR_NETWORK="ERR_NETWORK",H.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",H.ERR_DEPRECATED="ERR_DEPRECATED",H.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",H.ERR_BAD_REQUEST="ERR_BAD_REQUEST",H.ERR_CANCELED="ERR_CANCELED",H.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",H.ERR_INVALID_URL="ERR_INVALID_URL",H.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const qu=null,Ws=100;function $r(e){return S.isPlainObject(e)||S.isArray(e)}function zs(e){return S.endsWith(e,"[]")?e.slice(0,-2):e}function jr(e,t,n){return e?e.concat(t).map(function(a,o){return a=zs(a),!n&&o?"["+a+"]":a}).join(n?".":""):t}function Wu(e){return S.isArray(e)&&!e.some($r)}const zu=S.toFlatObject(S,{},null,function(t){return/^is[A-Z]/.test(t)});function Un(e,t,n){if(!S.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=S.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(v,_){return!S.isUndefined(_[v])});const r=n.metaTokens,a=n.visitor||b,o=n.dots,l=n.indexes,i=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?Ws:n.maxDepth,d=i&&S.isSpecCompliantForm(t),f=[];if(!S.isFunction(a))throw new TypeError("visitor must be a function");function u(h){if(h===null)return"";if(S.isDate(h))return h.toISOString();if(S.isBoolean(h))return h.toString();if(!d&&S.isBlob(h))throw new H("Blob is not supported. Use a Buffer instead.");if(S.isArrayBuffer(h)||S.isTypedArray(h)){if(d&&typeof i=="function")return new i([h]);throw new H("Blob is not supported. Use a Buffer instead.",H.ERR_NOT_SUPPORT)}return h}function p(h){if(h>c)throw new H("Object is too deeply nested ("+h+" levels). Max depth: "+c,H.ERR_FORM_DATA_DEPTH_EXCEEDED)}function w(h,v){if(c===1/0)return JSON.stringify(h);const _=[];return JSON.stringify(h,function(M,L){if(!S.isObject(L))return L;for(;_.length&&_[_.length-1]!==this;)_.pop();return _.push(L),p(v+_.length-1),L})}function b(h,v,_){let A=h;if(S.isReactNative(t)&&S.isReactNativeBlob(h))return t.append(jr(_,v,o),u(h)),!1;if(h&&!_&&typeof h=="object"){if(S.endsWith(v,"{}"))v=r?v:v.slice(0,-2),h=w(h,1);else if(S.isArray(h)&&Wu(h)||(S.isFileList(h)||S.endsWith(v,"[]"))&&(A=S.toArray(h)))return v=zs(v),A.forEach(function(L,z){!(S.isUndefined(L)||L===null)&&t.append(l===!0?jr([v],z,o):l===null?v:v+"[]",u(L))}),!1}return $r(h)?!0:(t.append(jr(_,v,o),u(h)),!1)}const g=Object.assign(zu,{defaultVisitor:b,convertValue:u,isVisitable:$r});function m(h,v,_=0){if(!S.isUndefined(h)){if(p(_),f.indexOf(h)!==-1)throw new Error("Circular reference detected in "+v.join("."));f.push(h),S.forEach(h,function(M,L){(!(S.isUndefined(M)||M===null)&&a.call(t,M,S.isString(L)?L.trim():L,v,g))===!0&&m(M,v?v.concat(L):[L],_+1)}),f.pop()}}if(!S.isObject(e))throw new TypeError("data must be an object");return m(e),t}function Hs(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Vr(e,t){this._pairs=[],e&&Un(e,this,t)}const Ks=Vr.prototype;Ks.append=function(t,n){this._pairs.push([t,n])},Ks.toString=function(t){const n=t?r=>t.call(this,r,Hs):Hs;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function Hu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Js(e,t,n){if(!t)return e;e=e||"";const r=S.isFunction(n)?{serialize:n}:n,a=S.getSafeProp(r,"encode")||Hu,o=S.getSafeProp(r,"serialize");let l;if(o?l=o(t,r):l=S.isURLSearchParams(t)?t.toString():new Vr(t,r).toString(a),l){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+l}return e}class Ys{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){S.forEach(this.handlers,function(r){r!==null&&t(r)})}}const qr={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},Ku={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Vr,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Wr=typeof window<"u"&&typeof document<"u",zr=typeof navigator=="object"&&navigator||void 0,Ju=Wr&&(!zr||["ReactNative","NativeScript","NS"].indexOf(zr.product)<0),Yu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Gu=Wr&&window.location.href||"http://localhost",ge={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Wr,hasStandardBrowserEnv:Ju,hasStandardBrowserWebWorkerEnv:Yu,navigator:zr,origin:Gu},Symbol.toStringTag,{value:"Module"})),...Ku};function Xu(e,t){return Un(e,new ge.classes.URLSearchParams,{visitor:function(n,r,a,o){return ge.isNode&&S.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}const Gs=Ws;function Xs(e){if(e>Gs)throw new H("FormData field is too deeply nested ("+e+" levels). Max depth: "+Gs,H.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Zu(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Xs(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function Qu(e){const t={},n=Object.keys(e);let r;const a=n.length;let o;for(r=0;r<a;r++)o=n[r],t[o]=e[o];return t}function Zs(e){function t(n,r,a,o){Xs(o);let l=n[o++];if(l==="__proto__")return!0;const i=Number.isFinite(+l),c=o>=n.length;return l=!l&&S.isArray(a)?a.length:l,c?(S.hasOwnProp(a,l)?a[l]=S.isArray(a[l])?a[l].concat(r):[a[l],r]:a[l]=r,!i):((!S.hasOwnProp(a,l)||!S.isObject(a[l]))&&(a[l]=[]),t(n,r,a[l],o)&&S.isArray(a[l])&&(a[l]=Qu(a[l])),!i)}if(S.isFormData(e)&&S.isFunction(e.entries)){const n={};return S.forEachEntry(e,(r,a)=>{t(Zu(r),a,n,0)}),n}return null}const vt=(e,t)=>e!=null&&S.hasOwnProp(e,t)?e[t]:void 0;function Ru(e,t,n){if(S.isString(e))try{return(t||JSON.parse)(e),S.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Qt={transitional:qr,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,o=S.isObject(t);if(o&&S.isHTMLForm(t)&&(t=new FormData(t)),S.isFormData(t))return a?JSON.stringify(Zs(t)):t;if(S.isArrayBuffer(t)||S.isBuffer(t)||S.isStream(t)||S.isFile(t)||S.isBlob(t)||S.isReadableStream(t))return t;if(S.isArrayBufferView(t))return t.buffer;if(S.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){const c=vt(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return Xu(t,c).toString();if((i=S.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=vt(this,"env"),f=d&&d.FormData;return Un(i?{"files[]":t}:t,f&&new f,c)}}return o||a?(n.setContentType("application/json",!1),Ru(t)):t}],transformResponse:[function(t){const n=vt(this,"transitional")||Qt.transitional,r=n&&n.forcedJSONParsing,a=vt(this,"responseType"),o=a==="json";if(S.isResponse(t)||S.isReadableStream(t))return t;if(t&&S.isString(t)&&(r&&!a||o)){const i=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t,vt(this,"parseReviver"))}catch(c){if(i)throw c.name==="SyntaxError"?H.from(c,H.ERR_BAD_RESPONSE,this,null,vt(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};S.forEach(["delete","get","head","post","put","patch","query"],e=>{Qt.headers[e]={}});function Hr(e,t){const n=this||Qt,r=t||n,a=Se.from(r.headers);let o=r.data;return S.forEach(e,function(i){o=i.call(n,o,a.normalize(),t?t.status:void 0)}),a.normalize(),o}function Qs(e){return!!(e&&e.__CANCEL__)}let Rt=class extends H{constructor(t,n,r){super(t??"canceled",H.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Rs(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new H("Request failed with status code "+n.status,n.status>=400&&n.status<500?H.ERR_BAD_REQUEST:H.ERR_BAD_RESPONSE,n.config,n.request,n))}function ef(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function tf(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,o=0,l;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),f=r[o];l||(l=d),n[a]=c,r[a]=d;let u=o,p=0;for(;u!==a;)p+=n[u++],u=u%e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),d-l<t)return;const w=f&&d-f;return w?Math.round(p*1e3/w):void 0}}function nf(e,t){let n=0,r=1e3/t,a,o;const l=(d,f=Date.now())=>{n=f,a=null,o&&(clearTimeout(o),o=null),e(...d)};return[(...d)=>{const f=Date.now(),u=f-n;u>=r?l(d,f):(a=d,o||(o=setTimeout(()=>{o=null,l(a)},r-u)))},()=>a&&l(a)]}const Bn=(e,t,n=3)=>{let r=0;const a=tf(50,250);return nf(o=>{if(!o||typeof o.loaded!="number")return;const l=o.loaded,i=o.lengthComputable?o.total:void 0,c=Math.max(0,i!=null?Math.min(l,i):l),d=Math.max(0,c-r),f=a(d);r=Math.max(r,c);const u={loaded:c,total:i,progress:i?c/i:void 0,bytes:d,rate:f||void 0,estimated:f&&i?(i-c)/f:void 0,event:o,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(u)},n)},eo=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},to=(e,t=S.asap)=>(...n)=>t(()=>e(...n)),rf=ge.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ge.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ge.origin),ge.navigator&&/(msie|trident)/i.test(ge.navigator.userAgent)):()=>!0,af=ge.hasStandardBrowserEnv?{write(e,t,n,r,a,o,l){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];S.isNumber(n)&&i.push(`expires=${new Date(n).toUTCString()}`),S.isString(r)&&i.push(`path=${r}`),S.isString(a)&&i.push(`domain=${a}`),o===!0&&i.push("secure"),S.isString(l)&&i.push(`SameSite=${l}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.split(";");for(let n=0;n<t.length;n++){const r=t[n].replace(/^\s+/,""),a=r.indexOf("=");if(a!==-1&&r.slice(0,a)===e)try{return decodeURIComponent(r.slice(a+1))}catch{return r.slice(a+1)}}return null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function sf(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function of(e,t){if(!t)return e;let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n--;return e.slice(0,n)+"/"+t.replace(/^\/+/,"")}const lf=/^https?:(?!\/\/)/i,cf=/[\t\n\r]/g;function df(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function uf(e){return df(e).replace(cf,"")}function ff(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${Pn}`)}function pf(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Pn}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Pn}`);return n===-1?a:`${a}#${ff(t.slice(n+1))}`}function no(e,t){if(typeof e=="string"){const n=uf(e);if(lf.test(n))throw new H(`Invalid URL ${JSON.stringify(pf(n))}: missing "//" after protocol`,H.ERR_INVALID_URL,t)}}function ro(e,t,n,r){no(t,r);let a=!sf(t);return e&&(a||n===!1)?(no(e,r),of(e,t)):t}const ao=e=>e instanceof Se?{...e}:e,hf=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function st(e,t){e=e||{},t=t||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(f,u,p,w){return S.isPlainObject(f)&&S.isPlainObject(u)?S.merge.call({caseless:w},f,u):S.isPlainObject(u)?S.merge({},u):S.isArray(u)?u.slice():u}function a(f,u,p,w){if(S.isUndefined(u)){if(!S.isUndefined(f))return r(void 0,f,p,w)}else return r(f,u,p,w)}function o(f,u){if(!S.isUndefined(u))return r(void 0,u)}function l(f,u){if(S.isUndefined(u)){if(!S.isUndefined(f))return r(void 0,f)}else return r(void 0,u)}function i(f){const u=S.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!S.isUndefined(u))if(S.isPlainObject(u)){if(S.hasOwnProp(u,f))return u[f]}else return;const p=S.hasOwnProp(e,"transitional")?e.transitional:void 0;if(S.isPlainObject(p)&&S.hasOwnProp(p,f))return p[f]}function c(f,u,p){if(S.hasOwnProp(t,p))return r(f,u);if(S.hasOwnProp(e,p))return r(void 0,f)}const d={url:o,method:o,data:o,baseURL:l,transformRequest:l,transformResponse:l,paramsSerializer:l,timeout:l,timeoutMessage:l,withCredentials:l,withXSRFToken:l,adapter:l,responseType:l,xsrfCookieName:l,xsrfHeaderName:l,onUploadProgress:l,onDownloadProgress:l,decompress:l,maxContentLength:l,maxBodyLength:l,beforeRedirect:l,transport:l,httpAgent:l,httpsAgent:l,cancelToken:l,socketPath:l,allowedSocketPaths:l,responseEncoding:l,validateStatus:c,headers:(f,u,p)=>a(ao(f),ao(u),p,!0)};return S.forEach(hf({...e,...t}),function(u){if(u==="__proto__"||u==="constructor"||u==="prototype")return;const p=S.hasOwnProp(d,u)?d[u]:a,w=S.hasOwnProp(e,u)?e[u]:void 0,b=S.hasOwnProp(t,u)?t[u]:void 0,g=p(w,b,u);S.isUndefined(g)&&p!==c||(n[u]=g)}),S.hasOwnProp(t,"validateStatus")&&S.isUndefined(t.validateStatus)&&i("validateStatusUndefinedResolves")===!1&&(S.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const mf=["content-type","content-length"];function gf(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{mf.includes(r.toLowerCase())&&e.set(r,a)})}const yf=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function so(e){const t=st({},e),n=p=>S.hasOwnProp(t,p)?t[p]:void 0,r=n("data");let a=n("withXSRFToken");const o=n("xsrfHeaderName"),l=n("xsrfCookieName");let i=n("headers");const c=n("auth"),d=n("baseURL"),f=n("allowAbsoluteUrls"),u=n("url");if(t.headers=i=Se.from(i),t.url=Js(ro(d,u,f,t),n("params"),n("paramsSerializer")),c){const p=S.getSafeProp(c,"username")||"",w=S.getSafeProp(c,"password")||"";try{i.set("Authorization","Basic "+btoa(p+":"+(w?yf(w):"")))}catch(b){throw H.from(b,H.ERR_BAD_OPTION_VALUE,e)}}if(S.isFormData(r)&&(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv||S.isReactNative(r)?i.setContentType(void 0):S.isFunction(r.getHeaders)&&gf(i,r.getHeaders(),n("formDataHeaderPolicy"))),ge.hasStandardBrowserEnv&&(S.isFunction(a)&&(a=a(t)),a===!0||a==null&&rf(t.url))){const w=o&&l&&af.read(l);w&&i.set(o,w)}return t}const bf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=so(e);let o=a.data;const l=Se.from(a.headers).normalize();let{responseType:i,onUploadProgress:c,onDownloadProgress:d}=a,f,u,p,w,b;function g(){w&&w(),b&&b(),a.cancelToken&&a.cancelToken.unsubscribe(f),a.signal&&a.signal.removeEventListener("abort",f)}let m=new XMLHttpRequest;m.open(a.method.toUpperCase(),a.url,!0),m.timeout=a.timeout;function h(){if(!m)return;const _=Se.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),M={data:!i||i==="text"||i==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:_,config:e,request:m};Rs(function(z){n(z),g()},function(z){r(z),g()},M),m=null}"onloadend"in m?m.onloadend=h:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.startsWith("file:"))||setTimeout(h)},m.onabort=function(){m&&(r(new H("Request aborted",H.ECONNABORTED,e,m)),g(),m=null)},m.onerror=function(A){const M=A&&A.message?A.message:"Network Error",L=new H(M,H.ERR_NETWORK,e,m);L.event=A||null,r(L),g(),m=null},m.ontimeout=function(){let A=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const M=a.transitional||qr;a.timeoutErrorMessage&&(A=a.timeoutErrorMessage),r(new H(A,M.clarifyTimeoutError?H.ETIMEDOUT:H.ECONNABORTED,e,m)),g(),m=null},o===void 0&&l.setContentType(null),"setRequestHeader"in m&&S.forEach(js(l),function(A,M){m.setRequestHeader(M,A)}),S.isUndefined(a.withCredentials)||(m.withCredentials=!!a.withCredentials),i&&i!=="json"&&(m.responseType=a.responseType),d&&([p,b]=Bn(d,!0),m.addEventListener("progress",p)),c&&m.upload&&([u,w]=Bn(c),m.upload.addEventListener("progress",u),m.upload.addEventListener("loadend",w)),(a.cancelToken||a.signal)&&(f=_=>{m&&(r(!_||_.type?new Rt(null,e,m):_),m.abort(),g(),m=null)},a.cancelToken&&a.cancelToken.subscribe(f),a.signal&&(a.signal.aborted?f():a.signal.addEventListener("abort",f)));const v=ef(a.url);if(v&&!ge.protocols.includes(v)){r(new H("Unsupported protocol "+v+":",H.ERR_BAD_REQUEST,e)),g();return}m.send(o||null)})},Sf=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;const n=new AbortController;let r=!1;const a=function(c){if(!r){r=!0,l();const d=c instanceof Error?c:this.reason;n.abort(d instanceof H?d:new Rt(d instanceof Error?d.message:d))}};let o=t&&setTimeout(()=>{o=null,a(new H(`timeout of ${t}ms exceeded`,H.ETIMEDOUT))},t);const l=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(a):c.removeEventListener("abort",a)}),e=null)};e.forEach(c=>{if(!r){if(c.aborted){a.call(c);return}c.addEventListener("abort",a,{once:!0})}});const{signal:i}=n;return i.unsubscribe=()=>S.asap(l),i},vf=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,a;for(;r<n;)a=r+t,yield e.slice(r,a),r=a},wf=async function*(e,t){for await(const n of Cf(e))yield*vf(n,t)},Cf=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},oo=(e,t,n,r)=>{const a=wf(e,t);let o=0,l,i=c=>{l||(l=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:f}=await a.next();if(d){i(),c.close();return}let u=f.byteLength;if(n){let p=o+=u;n(p)}c.enqueue(new Uint8Array(f))}catch(d){throw i(d),d}},cancel(c){return i(c),a.return()}},{highWaterMark:2})},lo=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,io=(e,t,n)=>t+2<n&&lo(e.charCodeAt(t+1))&&lo(e.charCodeAt(t+2)),co=e=>e<=57?e-48:(e&223)-55,Af=e=>e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===45||e===95,Nf=e=>e===9||e===10||e===12||e===13||e===32,_f=e=>{const t=Math.floor(e/4),n=e%4;return t*3+(n===2?1:n===3?2:0)},Ef=e=>{const t=e.length;let n=0;return t>0&&e.charCodeAt(t-1)===61&&(n++,t>1&&e.charCodeAt(t-2)===61&&n++),Math.floor((t-n)*3/4)},Lf=e=>{const t=e.length;let n=0,r=0,a=!1;for(let o=0;o<t;o++){let l=e.charCodeAt(o);if(l===37&&io(e,o,t)&&(l=co(e.charCodeAt(o+1))*16+co(e.charCodeAt(o+2)),o+=2),!Nf(l)){if(l===61){r++;continue}if(!Af(l)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?Ef(e):_f(n)},Tf=(e,t)=>{if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;const n=e.indexOf(",");if(n<0)return 0;const r=e.slice(5,n),a=e.slice(n+1);if(/;base64/i.test(r))return t(a);let l=0;for(let i=0,c=a.length;i<c;i++){const d=a.charCodeAt(i);if(d===37&&io(a,i,c))l+=1,i+=2;else if(d<128)l+=1;else if(d<2048)l+=2;else if(d>=55296&&d<=56319&&i+1<c){const f=a.charCodeAt(i+1);f>=56320&&f<=57343?(l+=4,i++):l+=3}else l+=3}return l};function If(e){const t=typeof e=="string"?e.indexOf("#"):-1;return Tf(t===-1?e:e.slice(0,t),Lf)}const Kr="1.19.0",uo=64*1024,{isFunction:$n}=S,Ff=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),fo=e=>{if(!S.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},po=(e,...t)=>{try{return!!e(...t)}catch{return!1}},kf=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},Of=e=>{const t=S.global!==void 0&&S.global!==null?S.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=S.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:o,Response:l}=e,i=a?$n(a):typeof fetch=="function",c=$n(o),d=$n(l);if(!i)return!1;const f=i&&$n(n),u=i&&(typeof r=="function"?(h=>v=>h.encode(v))(new r):async h=>new Uint8Array(await new o(h).arrayBuffer())),p=c&&f&&po(()=>{let h=!1;const v=new o(ge.origin,{body:new n,method:"POST",get duplex(){return h=!0,"half"}}),_=v.headers.has("Content-Type");return v.body!=null&&v.body.cancel(),h&&!_}),w=d&&f&&po(()=>S.isReadableStream(new l("").body)),b={stream:w&&(h=>h.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(h=>{!b[h]&&(b[h]=(v,_)=>{let A=v&&v[h];if(A)return A.call(v);throw new H(`Response type '${h}' is not supported`,H.ERR_NOT_SUPPORT,_)})});const g=async h=>{if(h==null)return 0;if(S.isBlob(h))return h.size;if(S.isSpecCompliantForm(h))return(await new o(ge.origin,{method:"POST",body:h}).arrayBuffer()).byteLength;if(S.isArrayBufferView(h)||S.isArrayBuffer(h))return h.byteLength;if(S.isURLSearchParams(h)&&(h=h+""),S.isString(h))return(await u(h)).byteLength},m=async(h,v)=>{const _=S.toFiniteNumber(h.getContentLength());return _??g(v)};return async h=>{let{url:v,method:_,data:A,signal:M,cancelToken:L,timeout:z,onDownloadProgress:Q,onUploadProgress:G,responseType:q,headers:K,withCredentials:ee="same-origin",fetchOptions:V,maxContentLength:I,maxBodyLength:O}=so(h);const j=S.isNumber(I)&&I>-1,W=S.isNumber(O)&&O>-1,N=F=>S.hasOwnProp(h,F)?h[F]:void 0;let k=a||fetch;q=q?(q+"").toLowerCase():"text";let C=Sf([M,L&&L.toAbortSignal()],z),P=null;const T=C&&C.unsubscribe&&(()=>{C.unsubscribe()});let $,J=null;const re=()=>new H("Request body larger than maxBodyLength limit",H.ERR_BAD_REQUEST,h,P);try{let F;const Y=N("auth");if(Y){const oe=S.getSafeProp(Y,"username")||"",me=S.getSafeProp(Y,"password")||"";F={username:oe,password:me}}if(kf(v)){const oe=new URL(v,ge.origin);if(!F&&(oe.username||oe.password)){const me=fo(oe.username),ke=fo(oe.password);F={username:me,password:ke}}(oe.username||oe.password)&&(oe.username="",oe.password="",v=oe.href)}if(F&&(K.delete("authorization"),K.set("Authorization","Basic "+btoa(Ff((F.username||"")+":"+(F.password||""))))),j&&typeof v=="string"&&v.startsWith("data:")&&If(v)>I)throw new H("maxContentLength size of "+I+" exceeded",H.ERR_BAD_RESPONSE,h,P);if(W&&_!=="get"&&_!=="head"){const oe=await g(A);if(typeof oe=="number"&&isFinite(oe)&&($=oe,oe>O))throw re()}const E=W&&(S.isReadableStream(A)||S.isStream(A)),Z=(oe,me,ke)=>oo(oe,uo,_e=>{if(W&&_e>O)throw J=re();me&&me(_e)},ke);if(p&&_!=="get"&&_!=="head"&&(G||E)){if($=$??await m(K,A),$!==0||E){let oe=new o(v,{method:"POST",body:A,duplex:"half"}),me;if(S.isFormData(A)&&(me=oe.headers.get("content-type"))&&K.setContentType(me),oe.body){const[ke,_e]=G&&eo($,Bn(to(G)))||[];A=Z(oe.body,ke,_e)}}}else if(E&&!c&&f&&_!=="get"&&_!=="head")A=Z(A);else if(E&&c&&!p&&_!=="get"&&_!=="head")throw new H("Stream request bodies are not supported by the current fetch implementation",H.ERR_NOT_SUPPORT,h,P);S.isString(ee)||(ee=ee?"include":"omit");const R=c&&"credentials"in o.prototype;if(S.isFormData(A)){const oe=K.getContentType();oe&&/^multipart\/form-data/i.test(oe)&&!/boundary=/i.test(oe)&&K.delete("content-type")}K.set("User-Agent","axios/"+Kr,!1);const se={...V,signal:C,method:_.toUpperCase(),headers:js(K.normalize()),body:A,duplex:"half",credentials:R?ee:void 0};P=c&&new o(v,se);let D=await(c?k(P,V):k(v,se));const ne=Se.from(D.headers);if(j){const oe=S.toFiniteNumber(ne.getContentLength());if(oe!=null&&oe>I)throw new H("maxContentLength size of "+I+" exceeded",H.ERR_BAD_RESPONSE,h,P)}const ie=w&&(q==="stream"||q==="response");if(w&&D.body&&(Q||j||ie&&T)){const oe={};["status","statusText","headers"].forEach(je=>{oe[je]=D[je]});const me=S.toFiniteNumber(ne.getContentLength()),[ke,_e]=Q&&eo(me,Bn(to(Q),!0))||[];let ut=0;const Ye=je=>{if(j&&(ut=je,ut>I))throw new H("maxContentLength size of "+I+" exceeded",H.ERR_BAD_RESPONSE,h,P);ke&&ke(je)};D=new l(oo(D.body,uo,Ye,()=>{_e&&_e(),T&&T()}),oe)}q=q||"text";let de=await b[S.findKey(b,q)||"text"](D,h);if(j&&!w&&!ie){let oe;if(de!=null&&(typeof de.byteLength=="number"?oe=de.byteLength:typeof de.size=="number"?oe=de.size:typeof de=="string"&&(oe=typeof r=="function"?new r().encode(de).byteLength:de.length)),typeof oe=="number"&&oe>I)throw new H("maxContentLength size of "+I+" exceeded",H.ERR_BAD_RESPONSE,h,P)}return!ie&&T&&T(),await new Promise((oe,me)=>{Rs(oe,me,{data:de,headers:Se.from(D.headers),status:D.status,statusText:D.statusText,config:h,request:P})})}catch(F){if(T&&T(),C&&C.aborted&&C.reason instanceof H){const Y=C.reason;throw Y.config=h,P&&(Y.request=P),F!==Y&&Object.defineProperty(Y,"cause",{__proto__:null,value:F,writable:!0,enumerable:!1,configurable:!0}),Y}if(J)throw P&&!J.request&&(J.request=P),J;if(F instanceof H)throw P&&!F.request&&(F.request=P),F;if(F&&F.name==="TypeError"&&/Load failed|fetch/i.test(F.message)){const Y=new H("Network Error",H.ERR_NETWORK,h,P,F&&F.response);throw Object.defineProperty(Y,"cause",{__proto__:null,value:F.cause||F,writable:!0,enumerable:!1,configurable:!0}),Y}throw H.from(F,F&&F.code,h,P,F&&F.response)}}},Df=new Map,ho=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:a}=t,o=[r,a,n];let l=o.length,i=l,c,d,f=Df;for(;i--;)c=o[i],d=f.get(c),d===void 0&&f.set(c,d=i?new Map:Of(t)),f=d;return d};ho();const Jr={http:qu,xhr:bf,fetch:{get:ho}};S.forEach(Jr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const mo=e=>`- ${e}`,xf=e=>S.isFunction(e)||e===null||e===!1;function Mf(e,t){e=S.isArray(e)?e:[e];const{length:n}=e;let r,a;const o={};for(let l=0;l<n;l++){r=e[l];let i;if(a=r,!xf(r)&&(a=Jr[(i=String(r)).toLowerCase()],a===void 0))throw new H(`Unknown adapter '${i}'`);if(a&&(S.isFunction(a)||(a=a.get(t))))break;o[i||"#"+l]=a}if(!a){const l=Object.entries(o).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let i=n?l.length>1?`since :
6
+ `+l.map(mo).join(`
7
+ `):" "+mo(l[0]):"as no adapter specified";throw new H("There is no suitable adapter to dispatch the request "+i,H.ERR_NOT_SUPPORT)}return a}const go={getAdapter:Mf,adapters:Jr};function Yr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Rt(null,e)}function Gr(e){return Yr(e),e.headers=Se.from(e.headers),e.data=Hr.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),go.getAdapter(e.adapter||Qt.adapter,e)(e).then(function(r){Yr(e),e.response=r;try{r.data=Hr.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=Se.from(r.headers),r},function(r){if(!Qs(r)&&(Yr(e),r&&r.response)){e.response=r.response;try{r.response.data=Hr.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=Se.from(r.response.headers)}return Promise.reject(r)})}const jn={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{jn[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const yo={};jn.transitional=function(t,n,r){function a(o,l){return"[Axios v"+Kr+"] Transitional option '"+o+"'"+l+(r?". "+r:"")}return(o,l,i)=>{if(t===!1)throw new H(a(l," has been removed"+(n?" in "+n:"")),H.ERR_DEPRECATED);return n&&!yo[l]&&(yo[l]=!0,console.warn(a(l," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,l,i):!0}},jn.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Pf(e,t,n){if(typeof e!="object"||e===null)throw new H("options must be an object",H.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const o=r[a],l=Object.prototype.hasOwnProperty.call(t,o)?t[o]:void 0;if(l){const i=e[o],c=i===void 0||l(i,o,e);if(c!==!0)throw new H("option "+o+" must be "+c,H.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new H("Unknown option "+o,H.ERR_BAD_OPTION)}}const Vn={assertOptions:Pf,validators:jn},ve=Vn.validators;let ot=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ys,response:new Ys}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const o=(()=>{if(!a.stack)return"";const l=a.stack.indexOf(`
8
8
  `);return l===-1?"":a.stack.slice(l+1)})();try{if(!r.stack)r.stack=o;else if(o){const l=o.indexOf(`
9
9
  `),i=l===-1?-1:o.indexOf(`
10
10
  `,l+1),c=i===-1?"":o.slice(i+1);String(r.stack).endsWith(c)||(r.stack+=`
11
- `+o)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=st(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:o}=n;r!==void 0&&qn.assertOptions(r,{silentJSONParsing:ve.transitional(ve.boolean),forcedJSONParsing:ve.transitional(ve.boolean),clarifyTimeoutError:ve.transitional(ve.boolean),legacyInterceptorReqResOrdering:ve.transitional(ve.boolean),advertiseZstdAcceptEncoding:ve.transitional(ve.boolean),validateStatusUndefinedResolves:ve.transitional(ve.boolean)},!1),a!=null&&(v.isFunction(a)?n.paramsSerializer={serialize:a}:qn.assertOptions(a,{encode:ve.function,serialize:ve.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),qn.assertOptions(n,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let l=o&&v.merge(o.common,o[n.method]);o&&v.forEach(["delete","get","head","post","put","patch","query","common"],S=>{delete o[S]}),n.headers=Se.concat(l,o);const i=[];let c=!0;this.interceptors.request.forEach(function(m){if(typeof m.runWhen=="function"&&m.runWhen(n)===!1)return;c=c&&m.synchronous;const h=n.transitional||Vr;h&&h.legacyInterceptorReqResOrdering?i.unshift(m.fulfilled,m.rejected):i.push(m.fulfilled,m.rejected)});const d=[];this.interceptors.response.forEach(function(m){d.push(m.fulfilled,m.rejected)});let u,f=0,p;if(!c){const S=[Jr.bind(this),void 0];for(S.unshift(...i),S.push(...d),p=S.length,u=Promise.resolve(n);f<p;)u=u.then(S[f++],S[f++]);return u}p=i.length;let w=n;for(;f<p;){const S=i[f++],m=i[f++];try{w=S?S(w):w}catch(h){if(!m){u=Promise.reject(h);break}try{const g=m.call(this,h);v.isThenable(g)&&(u=Promise.resolve(g).then(()=>Jr.call(this,w)))}catch(g){u=Promise.reject(g)}break}}if(!u)try{u=Jr.call(this,w)}catch(S){u=Promise.reject(S)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=st(this.defaults,t);const n=no(t.baseURL,t.url,t.allowAbsoluteUrls,t);return Ks(n,t.params,t.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(t){ot.prototype[t]=function(n,r){return this.request(st(r||{},{method:t,url:n,data:r&&v.hasOwnProp(r,"data")?r.data:void 0}))}}),v.forEach(["post","put","patch","query"],function(t){function n(r){return function(o,l,i){return this.request(st(i||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:l}))}}ot.prototype[t]=n(),t!=="query"&&(ot.prototype[t+"Form"]=n(!0))});let Uf=class pc{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(a=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](a);r._listeners=null}),this.promise.then=a=>{let o;const l=new Promise(i=>{r.subscribe(i),o=i}).then(a);return l.cancel=function(){r.unsubscribe(o)},l},t(function(o,l,i){r.reason||(r.reason=new Qt(o,l,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new pc(function(a){t=a}),cancel:t}}};function $f(e){return function(n){return e.apply(null,n)}}function Bf(e){return v.isObject(e)&&e.isAxiosError===!0}const Zr={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerReturnsAnUnknownError:520,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Zr).forEach(([e,t])=>{Zr[t]=e});function yo(e){const t=new ot(e),n=Ts(ot.prototype.request,t);return v.extend(n,ot.prototype,t,{allOwnKeys:!0}),v.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return yo(st(e,a))},n}const de=yo(Xt);de.Axios=ot,de.CanceledError=Qt,de.CancelToken=Uf,de.isCancel=Xs,de.VERSION=Kr,de.toFormData=Un,de.AxiosError=Y,de.Cancel=de.CanceledError,de.all=function(t){return Promise.all(t)},de.spread=$f,de.isAxiosError=Bf,de.mergeConfig=st,de.AxiosHeaders=Se,de.formToJSON=e=>Zs(v.isHTMLForm(e)?new FormData(e):e),de.getAdapter=mo.getAdapter,de.HttpStatusCode=Zr,de.default=de;const{Axios:Z0,AxiosError:X0,CanceledError:Q0,isCancel:R0,CancelToken:ey,VERSION:ty,all:ny,Cancel:ry,isAxiosError:ay,spread:sy,toFormData:oy,AxiosHeaders:ly,HttpStatusCode:iy,formToJSON:cy,getAdapter:dy,mergeConfig:uy,create:fy}=de;function Vn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)r!=="__proto__"&&(e[r]=n[r])}return e}var jf={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Xr(e,t){function n(a,o,l){if(!(typeof document>"u")){l=Vn({},t,l),typeof l.expires=="number"&&(l.expires=new Date(Date.now()+l.expires*864e5)),l.expires&&(l.expires=l.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var i="";for(var c in l)l[c]&&(i+="; "+c,l[c]!==!0&&(i+="="+l[c].split(";")[0]));return document.cookie=a+"="+e.write(o,a)+i}}function r(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var o=document.cookie?document.cookie.split("; "):[],l={},i=0;i<o.length;i++){var c=o[i].split("="),d=c.slice(1).join("=");try{var u=decodeURIComponent(c[0]);if(u in l||(l[u]=e.read(d,u)),a===u)break}catch{}}return a?l[a]:l}}return Object.create({set:n,get:r,remove:function(a,o){n(a,"",Vn({},o,{expires:-1}))},withAttributes:function(a){return Xr(this.converter,Vn({},this.attributes,a))},withConverter:function(a){return Xr(Vn({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Rt=Xr(jf,{path:"/"});const qf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let wt="https://api-grievance.airaops.com",bo=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Cr&&Cr.tagName.toUpperCase()==="SCRIPT"&&Cr.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&qf?.VITE_API_URL)wt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(wt=e.env.VITE_API_URL)}}catch{}const So=e=>{wt=e||"",le.defaults.baseURL=wt},Qr=e=>{bo=e||null},Vf=()=>bo||Rt.get("token")||null,le=de.create({baseURL:wt,headers:{Accept:"application/json","Content-Type":"application/json"}});le.interceptors.request.use(e=>{const t=Vf();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Rr=!1,ea=null;le.interceptors.response.use(e=>e,async e=>{const t=e.config,n=e.response;if(n&&(n.status===401||n.status===402)){const r=Rt.get("refreshToken");if(r)try{Rr||(Rr=!0,ea=de.post(`${wt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await ea,{token:o,refreshToken:l}=a.data;return Qr(o),l&&Rt.set("refreshToken",l),t.headers.Authorization=`Bearer ${o}`,le(t)}catch{Rt.remove("token"),Rt.remove("refreshToken")}finally{Rr=!1,ea=null}}return Promise.reject(e)});const Wf=y.createContext(null),vo=({children:e,apiUrl:t,authToken:n})=>(t&&So(t),Qr(n||null),s.jsx(Wf.Provider,{value:{apiUrl:t,authToken:n},children:e})),Ve={mode:"light",colors:{primary:"#2D64B8",primaryHover:"#2557A3",text:"#111827",textSecondary:"#6B7280",textMuted:"#9CA3AF",border:"#E5E7EB",borderLight:"#F3F4F6",background:"#FFFFFF",surface:"#FFFFFF",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#ECFDF5",activeBorder:"#A7F3D0",activeText:"#059669",inactiveBg:"#F3F4F6",inactiveBorder:"#D1D5DB",inactiveText:"#6B7280",link:"#2D64B8",divider:"#E5E7EB",accentBorder:"#C5D7F0",accentBg:"#EEF4FB",stepDone:"#D6E4F7",success:"#22C55E",danger:"#EF4444",secondaryBtn:"#D1D5DB",secondaryBtnHover:"#C4C9D1",inputBg:"#FFFFFF",tableHeadBg:"#EEF4FB",sidebarBg:"#FAFBFD",overlay:"rgba(16, 24, 40, 0.06)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(16, 24, 40, 0.04)",settings:"0 1px 3px rgba(16, 24, 40, 0.06)"}},en={mode:"dark",colors:{primary:"#5B8DEF",primaryHover:"#7BA3F3",text:"#F3F4F6",textSecondary:"#A1A1AA",textMuted:"#71717A",border:"#3F3F46",borderLight:"#27272A",background:"#0F1115",surface:"#18181B",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#052E1C",activeBorder:"#166534",activeText:"#4ADE80",inactiveBg:"#27272A",inactiveBorder:"#3F3F46",inactiveText:"#A1A1AA",link:"#7BA3F3",divider:"#3F3F46",accentBorder:"#2A3A55",accentBg:"#1A2333",stepDone:"#1E3A5F",success:"#22C55E",danger:"#F87171",secondaryBtn:"#3F3F46",secondaryBtnHover:"#52525B",inputBg:"#18181B",tableHeadBg:"#1A2333",sidebarBg:"#12141A",overlay:"rgba(0, 0, 0, 0.35)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(0, 0, 0, 0.35)",settings:"0 1px 3px rgba(0, 0, 0, 0.4)"}},wo={light:Ve,dark:en};function Ct(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function Nt(e,t){if(!Ct(t))return e;const n={...e};return Object.keys(t).forEach(r=>{const a=t[r];Ct(a)&&Ct(e[r])?n[r]=Nt(e[r],a):a!==void 0&&(n[r]=a)}),n}function Co(e){return!e||!Ct(e)?{light:Ve,dark:en}:Ct(e.light)||Ct(e.dark)?{light:Nt(Ve,e.light||{}),dark:Nt(en,e.dark||{})}:{light:Nt(Ve,e),dark:Nt(en,e)}}function No(e,t=!1){const n=Co(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const zf={primary:"--ca-primary",primaryHover:"--ca-primary-hover",text:"--ca-text",textSecondary:"--ca-text-secondary",textMuted:"--ca-text-muted",border:"--ca-border",borderLight:"--ca-border-light",background:"--ca-bg",surface:"--ca-surface",white:"--ca-white",onPrimary:"--ca-on-primary",activeBg:"--ca-active-bg",activeBorder:"--ca-active-border",activeText:"--ca-active-text",inactiveBg:"--ca-inactive-bg",inactiveBorder:"--ca-inactive-border",inactiveText:"--ca-inactive-text",link:"--ca-link",divider:"--ca-divider",accentBorder:"--ca-accent-border",accentBg:"--ca-accent-bg",stepDone:"--ca-step-done",success:"--ca-success",danger:"--ca-danger",secondaryBtn:"--ca-secondary-btn",secondaryBtnHover:"--ca-secondary-btn-hover",inputBg:"--ca-input-bg",tableHeadBg:"--ca-table-head-bg",sidebarBg:"--ca-sidebar-bg",overlay:"--ca-overlay"},Hf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},Kf={fontFamily:"--ca-font",h1Size:"--ca-h1-size",h2Size:"--ca-h2-size",bodySize:"--ca-body-size",labelSize:"--ca-label-size",valueSize:"--ca-value-size",smallSize:"--ca-small-size"},Yf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function _o(e){const t={};return e?.colors&&Object.entries(zf).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(Hf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(Kf).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(Yf).forEach(([n,r])=>{e.shadow[n]!=null&&(t[r]=e.shadow[n])}),t["--ca-on-primary"]&&!t["--ca-white"]&&(t["--ca-white"]=t["--ca-on-primary"]),t}const Ao=y.createContext({darkMode:!1,theme:null,themeFile:wo,cssVars:{}});function Eo({theme:e,darkMode:t=!1,children:n}){const r=y.useMemo(()=>{const a=No(e,!!t),o=_o(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:o,mode:a.mode}},[e,t]);return s.jsx(Ao.Provider,{value:r,children:n})}function Lo(){return y.useContext(Ao)}const Wn=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),Gf=e=>{const t=e?.response?.data,n=Array.isArray(t?.errors)?t.errors.map(a=>a?.message).filter(Boolean):[];if(n.length)return n.join(" ");const r=t?.message??t?.error??e?.message;return Array.isArray(r)?r.filter(Boolean).join(", "):r&&typeof r=="object"?r.message??JSON.stringify(r):r||"Something went wrong"},Jf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Gf(e)}),ta=(e,t)=>oe.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return Jf(a,r)}}),De=ta("complaint/types/getFormFields",(e,{signal:t})=>le.get(Wn.formFields(e),{signal:t})),tn=ta("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>le.put(Wn.formFields(e),t)),nn=ta("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>le.delete(`${Wn.formFields(e)}/${t}`)),To={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},Zf=e=>{if(Array.isArray(e))return{data:e,pagination:null};const t=e?.data??e;return Array.isArray(t)?{data:t,pagination:e?.pagination??null}:{data:t?.results??t?.items??[],pagination:t?.pagination??e?.pagination??null}},na=e=>e.payload?.message??e.error?.message??"Something went wrong",Io=oe.createSlice({name:"complaintAppComplaint",initialState:To,reducers:{clearComplaintError(e,t){const n=t.payload;n&&e[n]?.error!==void 0?e[n].error=null:e.error=null},clearSelectedComplaintResource(e,t){const n=t.payload;n&&e[n]?.selected!==void 0&&(e[n].selected=null)},resetComplaintState(){return To}},extraReducers:e=>{e.addCase(De.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(De.fulfilled,(t,n)=>{const r=Zf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(De.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=na(n)}).addCase(tn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(tn.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(tn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)}).addCase(nn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(nn.fulfilled,(t,n)=>{const r=n.meta.arg?.fieldId;t.formFields.isMutating=!1,t.formFields.data=t.formFields.data.filter(a=>a.id!==r)}).addCase(nn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)})}}),{clearComplaintError:Xf,clearSelectedComplaintResource:Qf,resetComplaintState:Rf}=Io.actions,Fo=Io.reducer,rn="/api/v1/complaint-types",an=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n?.message==="Complaint type code already exists"?"A category with this name already exists. Please use a different name.":null)??(r.includes("code must be shorter than or equal to 50 characters")?"Category name cannot exceed 50 characters. Please enter a shorter name.":null)??(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},sn=oe.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await le.get(rn,{params:e??{}})).data}catch(n){return an(n,t)}}),Xe=oe.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await le.get(`${rn}/${n}`)).data}catch(n){return an(n,t)}}),on=oe.createAsyncThunk("complaintType/create",async({payload:e,onSuccess:t,onFail:n},r)=>{try{const a={code:e.categoryName,name:e.categoryName,description:e.description,tatMinutes:e.tatMinutes,accessType:e.visibilityType,roleIds:e.roles.map(l=>parseInt(l,10)),userIds:(e.userIds??[]).map(l=>parseInt(l,10))},o=await le.post(rn,a);return t&&typeof t=="function"&&t(o.data),o.data}catch(a){return console.log("createComplaintType error:",a),n&&typeof n=="function"&&n(a),an(a,r)}}),ln=oe.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:n,onFail:r},a)=>{try{const o=await le.patch(`${rn}/${e}`,t);return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return console.log("updateComplaintType error:",o),r&&typeof r=="function"&&r(o),an(o,a)}}),zn=oe.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await le.delete(`${rn}/${e}`);return{id:e,data:n.data}}catch(n){return an(n,t)}}),ra=["userId","id","_id","userID","user_id","value"];function Hn(e,t=ra){if(typeof e=="string"||typeof e=="number")return String(e).trim()||null;if(!e||typeof e!="object")return null;for(const n of t){const r=e[n];if(r!=null&&r!==e){const a=Hn(r,ra);if(a!==null)return a}}return Hn(e.user,ra)}function aa(e){const t=Hn(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ep(e,t){const n=aa(e),r=Hn(t);return r!==null&&n?.includes(r)===!0}const tp={complaintList:[],selected:null,loading:!1,saving:!1,error:null},np=["data","items","results","content","records","list","payload","response","result"],ko=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of np)if(e[t]!==void 0){const n=ko(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},_e=e=>e?.id??e?._id,sa=(e,t)=>{if(!t)return e;const n=aa(e),r=aa(t);return n?.length||!r?.length?e:{...e,userIds:r}},Oo=oe.createSlice({name:"complaintType",initialState:tp,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(_e(a))===String(n)?{...a,isActive:r}:a),String(_e(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(sn.pending,t=>{t.loading=!0,t.error=null}).addCase(sn.fulfilled,(t,n)=>{t.loading=!1;const r=new Map(t.complaintList.map(a=>[String(_e(a)),a]));t.complaintList=ko(n.payload).map(a=>sa(a,r.get(String(_e(a)))))}).addCase(sn.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(Xe.pending,t=>{t.loading=!0,t.error=null}).addCase(Xe.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(o=>String(_e(o))===String(_e(r)));t.selected=sa(r,a)}).addCase(Xe.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint type"}).addCase(on.pending,t=>{t.saving=!0,t.error=null}).addCase(on.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=n.meta?.arg?.payload?.userIds,o=Array.isArray(a)?{...r,userIds:a}:r;t.complaintList=[o,...t.complaintList.filter(l=>String(_e(l))!==String(_e(o)))],t.selected=o}).addCase(on.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to create complaint type"}).addCase(ln.pending,t=>{t.saving=!0,t.error=null}).addCase(ln.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=_e(r)??n.meta?.arg?.id,o=t.complaintList.find(c=>String(_e(c))===String(a)),l=n.meta?.arg?.data?.userIds,i=Array.isArray(l)?{...r,userIds:l}:sa(r,o);t.complaintList=t.complaintList.map(c=>String(_e(c))===String(a)?i:c),t.selected=i}).addCase(ln.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update complaint type"}).addCase(zn.pending,t=>{t.saving=!0,t.error=null}).addCase(zn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(_e(a))!==String(r)),String(_e(t.selected))===String(r)&&(t.selected=null)}).addCase(zn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:rp}=Oo.actions,ap=Oo.reducer,sp={details:{},id:null,isEdit:!1},Do=oe.createSlice({name:"appDetails",initialState:sp,reducers:{setAppDetails(e,t){e.details=t.payload??{}},clearAppDetails(e){e.details={}},setId(e,t){e.id=t.payload},setIsEdit(e,t){e.isEdit=t.payload.data},clearId(e){e.id=null}}}),{setAppDetails:Mo,clearAppDetails:op,setId:lt,setIsEdit:_t,clearId:lp}=Do.actions,xo=Do.reducer,ip={list:[],pagination:null,isLoading:!1,error:null},Po=oe.createSlice({name:"roles",initialState:ip,reducers:{}});Po.reducer;const Kn=60,oa=24*Kn,cp={d:oa,h:Kn,m:1};function la(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Uo(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,o)=>a+Ie(o?.escalateAfterMinutes),0)}function Ie(e){if(e==null||e==="")return 0;if(typeof e=="number")return la(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return la(t);const n=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let r=0,a=!1,o;for(;(o=n.exec(t))!==null;)a=!0,r+=(cp[o[2]]||0)*Number(o[1]);return a?la(r):0}function At(e){const t=Math.round(typeof e=="number"?e:Ie(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/oa),r=Math.floor(t%oa/Kn),a=t%Kn,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&o.push(`${a}m`),o.join("")}function dp(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Ie(e)>0}function up(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>At(Number(n))||"0m")}function fp(e=[]){return Uo(e,!0)}function Et(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Ie(t)-Uo(e,!1)),r=At(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((o,l)=>l===a?{...o,escalateAfterMinutes:r}:o)}function pp(e=[]){if(!Array.isArray(e)||e.length===0)return e;const t=e.length-1;return e.map((n,r)=>r===t?{...n,escalateAfterMinutes:""}:n)}const $o=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function hp(e){const t=e?.response?.data??e?.payload??e,n=Array.isArray(t?.errors)?t.errors.map(r=>r?.message).filter(Boolean):[];return n.length?n.join(" "):t?.message??t?.error??e?.message??"Something went wrong"}function ia(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const Bo=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:hp(e)}),We=oe.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await le.get($o(e))).data}catch(n){return Bo(n,t)}}),Yn=oe.createAsyncThunk("workflow/updateSteps",async({id:e,tables:t,onSuccess:n,onFail:r},a)=>{try{if(!Array.isArray(t.tables))throw new Error("tables must be an array");const o=t.tables.map((i,c)=>{const d=Array.isArray(i.role)?i.role.map(S=>Number(S)):[],u=Array.isArray(i.users)?i.users.map(S=>Number(S)):[],f=d.length>0,p=u.length>0,w=!f&&(p||i.workflowType==="user");return{levelNo:c+1,workflowType:w?"Users Based":"Role Based",...f||!w?{roleIds:d}:{},...p||w?{userAssignments:u.map(S=>({userId:S}))}:{},escalateAfterMinutes:Ie(i.escalateAfterMinutes),canResolve:ia(i.canResolve),canReassign:ia(i.canReassign),isFinalLevel:ia(i.finalLevel),isActive:!0}}),l=await le.put($o(e),{steps:o});return typeof n=="function"&&n(l.data),l.data}catch(o){return typeof r=="function"&&r(o),Bo(o,a)}}),mp={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},gp=oe.createSlice({name:"workflow",initialState:mp,reducers:{},extraReducers:e=>{e.addCase(We.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(We.fulfilled,(t,n)=>{t.workflowStepsLoading=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(We.rejected,(t,n)=>{n.meta.aborted||(t.workflowStepsLoading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch workflow steps")}).addCase(Yn.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Yn.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Yn.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,ca="/api/v1/complaints",yp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Gn=oe.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:n,page:r=1,limit:a=10,status:o,sort:l="-createdAt",fromDate:i,toDate:c,assignedToUserId:d,unassigned:u,showAllComplaints:f,escalationTo:p}=e||{},w={page:r,limit:a,complaintTypeId:n,sort:l};return o!=null&&o!==""&&o!=="all"&&(w.status=o),i&&c&&(w.fromDate=i,w.toDate=c),d!=null&&d!==""&&(w.assignedToUserId=d),u!=null&&u!==""&&(w.unassigned=u),f!=null&&f!==""&&(w.showAllComplaints=f),p!=null&&p!==""&&p!=="all"&&(w.escalationTo=p),(await le.get(ca,{params:w,signal:t.signal})).data}catch(n){return yp(n,t)}}),bp=e=>`/api/v1/complaints/${e}`,Sp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})};function da(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const Lt=oe.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:n,assignedToUserId:r,remark:a,onSuccess:o,onFail:l},i)=>{try{const c={},d=da(t),u=da(n),f=da(r);d!=null&&(c.statusId=d),u!=null&&(c.currentStepId=u),f!=null&&(c.assignedToUserId=f),a!=null&&String(a).trim()!==""&&(c.remarks=String(a).trim());const p=await le.patch(bp(e),c,{signal:i.signal});return o&&typeof o=="function"&&o(p.data),p.data}catch(c){return l&&typeof l=="function"&&l(c),Sp(c,i)}}),jo={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},vp=e=>{const t=e?.data??e;if(Array.isArray(t))return{list:t,meta:e?.meta??e?.pagination??null};const n=t?.data??t?.results??t?.items??[];return{list:Array.isArray(n)?n:[],meta:t?.meta??t?.pagination??e?.meta??e?.pagination??null}},wp=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",qo=e=>e?.complaintId??e?.id,Cp=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??qo(r);return a==null?e:e.map(o=>{if(String(qo(o))!==String(a))return o;const l={...o};return r&&typeof r=="object"&&!Array.isArray(r)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(i=>{r[i]!==void 0&&(l[i]=r[i])}),n.statusId!=null&&(l.statusId=n.statusId),n.status&&(l.status=n.status),n.currentStepId!=null&&(l.currentStepId=n.currentStepId,l.currentWorkflowStepId=n.currentStepId,l.workflowStepId=n.currentStepId),n.level!=null&&(l.level=n.level,l.levelNo=n.level),n.assignedToUserId!=null&&(l.assignedToUserId=n.assignedToUserId),l})},Vo=oe.createSlice({name:"complaintManagement",initialState:jo,reducers:{resetComplaintManagementState:()=>jo},extraReducers:e=>{e.addCase(Gn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg?.complaintTypeId??null}).addCase(Gn.fulfilled,(t,n)=>{const r=n.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r))return;const a=vp(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(Gn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg?.complaintTypeId;t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=wp(n))}).addCase(Lt.fulfilled,(t,n)=>{t.list=Cp(t.list,n)})}}),{resetComplaintManagementState:Wo}=Vo.actions,Np=Vo.reducer,_p=e=>`/api/v1/complaint-types/${e}/statuses`,Ap="/api/v1/complaints/summary",zo=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Tt=oe.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await le.get(_p(e),{signal:t.signal})).data}catch(n){return zo(n,t)}}),Jn=oe.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await le.get(Ap,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return zo(n,t)}}),Ho={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},Ep=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},Lp=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Tp=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",Ip=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Zn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),Ko=oe.createSlice({name:"status",initialState:Ho,reducers:{resetStatusState:()=>Ho},extraReducers:e=>{e.addCase(Tt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(Tt.fulfilled,(t,n)=>{const r=n.meta.arg;if(Zn(t.requestedComplaintTypeId,r))return;const a=Ep(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((o,l)=>(o.displayOrder??0)-(l.displayOrder??0))}).addCase(Tt.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Zn(t.requestedComplaintTypeId,r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Tp(n))}).addCase(Jn.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(Jn.fulfilled,(t,n)=>{const r=n.meta.arg;Zn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=Lp(n.payload))}).addCase(Jn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Zn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=Ip(n))})}}),{resetStatusState:Yo}=Ko.actions,Fp=Ko.reducer,kp="/api/v1/complaints",Op="/api/v1/complaint-types",Go=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Xn=oe.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await le.post(kp,e,{signal:t.signal})).data}catch(n){return Go(n,t)}}),cn=oe.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const o=await le.patch(`${Op}/${e}`,{isActive:t},{signal:a.signal});return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return r&&typeof r=="function"&&r(o),Go(o,a)}}),Dp={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},Mp=e=>e.payload?.message??e.error?.message??"Failed to create complaint",xp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",Pp=oe.createSlice({name:"createComplaint",initialState:Dp,reducers:{},extraReducers:e=>{e.addCase(Xn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(Xn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(Xn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=Mp(n))}).addCase(cn.pending,t=>{t.isUpdatingActive=!0,t.activeError=null}).addCase(cn.fulfilled,(t,n)=>{t.isUpdatingActive=!1;const r=n.payload?.data??n.payload;t.activeComplaintTypeId=r?.id??n.meta?.arg?.id??null,t.isActive=!!(r?.isActive??r?.active??n.meta?.arg?.isActive)}).addCase(cn.rejected,(t,n)=>{n.meta.aborted||(t.isUpdatingActive=!1,t.activeError=xp(n))})}}).reducer,Jo={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},Up=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Zo=oe.createSlice({name:"changeStatus",initialState:Jo,reducers:{resetChangeStatusState:()=>Jo},extraReducers:e=>{e.addCase(Lt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=n.meta.arg?.id??null}).addCase(Lt.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=n.payload?.data??n.payload}).addCase(Lt.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=Up(n))})}}),{resetChangeStatusState:$p}=Zo.actions,Bp=Zo.reducer,jp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},ua=(e,t)=>{try{return jp?.[e]||t}catch{return t}},qp=ua("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Xo=ua("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),Vp=ua("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Qo=e=>/^https?:\/\//i.test(e)?e:`${qp}${e}`,Wp=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",Ro=(e,t)=>{const n=e?.response?.data,r=n?.error?.details?.errors?.file;if(r)return r;const a=n?.message;return a||(e?.response?.status===404?`S3 upload endpoint was not found: ${Xo}`:e?.response?.data?.error??e?.message??t)},It=oe.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:Wp(e)},a=await le.post(Qo(Xo),r),o=a.data.uploadSignedUrl;return(await fetch(o,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:n("Error uploading file")}catch(r){return n(Ro(r,"Error uploading file"))}}),dn=oe.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await le.get(Qo(Vp),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(Ro(n,"Error getting file signedUrl"))}}),zp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},Hp=oe.createSlice({name:"s3",initialState:zp,reducers:{},extraReducers:e=>{e.addCase(It.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(It.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(It.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(dn.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(dn.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(dn.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,Kp=e=>`/api/v1/complaints/${encodeURIComponent(e)}`,Yp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Failed to fetch complaint details"})},Ft=oe.createAsyncThunk("complaintsGetOne/fetchById",async(e,t)=>{try{return(await le.get(Kp(e),{signal:t.signal})).data}catch(n){return Yp(n,t)}}),el={data:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintId:null},Gp=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint details",tl=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),nl=oe.createSlice({name:"complaintsGetOne",initialState:el,reducers:{resetComplaintDetails:()=>el},extraReducers:e=>{e.addCase(Ft.pending,(t,n)=>{t.data=null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.requestedComplaintId=n.meta.arg??null}).addCase(Ft.fulfilled,(t,n)=>{tl(t.requestedComplaintId,n.meta.arg)||(t.data=n.payload?.data??n.payload,t.isLoading=!1,t.hasLoaded=!0)}).addCase(Ft.rejected,(t,n)=>{n.meta.aborted||tl(t.requestedComplaintId,n.meta.arg)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Gp(n))})}}),{resetComplaintDetails:Jp}=nl.actions,Zp=nl.reducer,Xp=e=>`/api/v1/users/role/${e}`,un=oe.createAsyncThunk("roleUsers/fetchByRole",async(e,t)=>{try{const n=await le.get(Xp(encodeURIComponent(e)),{signal:t.signal});return{roleId:e,response:n.data}}catch(n){return t.rejectWithValue({roleId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch users for role"})}}),Qp={usersByRoleId:{},loadingByRoleId:{},errorByRoleId:{}},Rp=oe.createSlice({name:"roleUsers",initialState:Qp,reducers:{},extraReducers:e=>{e.addCase(un.pending,(t,n)=>{const r=String(n.meta.arg);t.loadingByRoleId[r]=!0,delete t.errorByRoleId[r]}).addCase(un.fulfilled,(t,n)=>{const r=String(n.payload.roleId),a=n.payload.response?.data??n.payload.response;t.usersByRoleId[r]=Array.isArray(a)?a:[],t.loadingByRoleId[r]=!1}).addCase(un.rejected,(t,n)=>{if(n.meta.aborted)return;const r=String(n.payload?.roleId??n.meta.arg);t.loadingByRoleId[r]=!1,t.errorByRoleId[r]=n.payload?.message??n.error?.message??"Failed to fetch users for role"})}}).reducer,eh=e=>`/api/v1/complaints/${encodeURIComponent(e)}/activities`,kt=oe.createAsyncThunk("activityLog/fetchByComplaint",async(e,t)=>{try{const n=await le.get(eh(e),{signal:t.signal});return{complaintId:e,response:n.data}}catch(n){return t.rejectWithValue({complaintId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch complaint activity"})}}),rl={activities:[],complaintId:null,isLoading:!1,error:null,hasLoaded:!1,currentRequestId:null};function th(e){const t=e?.data??e;return Array.isArray(t)?t:Array.isArray(t?.activities)?t.activities:Array.isArray(t?.items)?t.items:Array.isArray(t?.results)?t.results:[]}const al=oe.createSlice({name:"activityLog",initialState:rl,reducers:{resetActivityLog:()=>rl},extraReducers:e=>{e.addCase(kt.pending,(t,n)=>{t.activities=[],t.complaintId=n.meta.arg??null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.currentRequestId=n.meta.requestId}).addCase(kt.fulfilled,(t,n)=>{t.currentRequestId===n.meta.requestId&&(t.activities=th(n.payload?.response),t.complaintId=n.payload?.complaintId??n.meta.arg,t.isLoading=!1,t.hasLoaded=!0,t.currentRequestId=null)}).addCase(kt.rejected,(t,n)=>{n.meta.aborted||t.currentRequestId!==n.meta.requestId||(t.isLoading=!1,t.hasLoaded=!0,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint activity",t.currentRequestId=null)})}}),{resetActivityLog:nh}=al.actions,rh=al.reducer,ah=oe.combineReducers({complaintAppComplaint:Fo,complaintType:ap,appDetails:xo,workflow:gp,roles:Po.reducer,complaintManagement:Np,status:Fp,createComplaint:Pp,changeStatus:Bp,s3:Hp,complaintsGetOne:Zp,roleUsers:Rp,activityLog:rh}),sl=e=>oe.configureStore({reducer:ah,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),ol=sl();function ye({children:e,variant:t="primary",size:n="md",startIcon:r,endIcon:a,className:o="",type:l="button",disabled:i=!1,onClick:c,...d}){const u=["ca-btn",`ca-btn--${t}`,n==="sm"?"ca-btn--sm":"",n==="lg"?"ca-btn--lg":"",o].filter(Boolean).join(" ");return s.jsxs("button",{type:l,className:u,disabled:i,onClick:c,...d,children:[r?s.jsx("span",{className:"ca-btn__icon",children:r}):null,e,a?s.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function ll({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const il={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},sh={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Qe({variant:e="body",as:t,className:n="",children:r,...a}){const o=t||sh[e]||"p",l=il[e]||il.body;return s.jsx(o,{className:`${l} ${n}`.trim(),...a,children:r})}function fa(e){return s.jsx(Qe,{variant:"h1",...e})}function pa(e){return s.jsx(Qe,{variant:"h2",...e})}function Qn(e){return s.jsx(Qe,{variant:"body",...e})}function cl(e){return s.jsx(Qe,{variant:"label",...e})}function dl(e){return s.jsx(Qe,{variant:"value",...e})}function oh(e){return s.jsx(Qe,{variant:"link",type:"button",...e})}function ha({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,showAction:a=!0,className:o=""}){return s.jsxs("header",{className:`ca-page-header ${o}`.trim(),children:[s.jsxs("div",{className:"ca-page-header__text",children:[s.jsx(fa,{children:e}),t?s.jsx(Qn,{children:t}):null]}),a?s.jsx("div",{className:"ca-page-header__actions",children:s.jsx(ye,{startIcon:s.jsx(ll,{}),onClick:r,children:n})}):null]})}function Rn({checked:e=!1,onChange:t,disabled:n=!1,"aria-label":r="Toggle",className:a=""}){return s.jsx("button",{type:"button",role:"switch","aria-checked":e,"aria-label":r,disabled:n,className:`ca-toggle ${e?"ca-toggle--on":""} ${a}`.trim(),onClick:()=>t?.(!e),children:s.jsx("span",{className:"ca-toggle__thumb"})})}function er({size:e=16,color:t="#9CA3AF",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M4 7h16M9 7V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2m2 0v12a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2V7h12Z",stroke:t,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})}function ul({title:e,titleAsLink:t=!1,onTitleClick:n,isActive:r=!1,canManage:a=!1,canDelete:o=!1,activeDisabled:l=!1,onActiveChange:i,onDelete:c,className:d=""}){return s.jsxs("div",{className:`ca-system-card__header ${d}`.trim(),children:[s.jsx("div",{className:"ca-system-card__title-wrap",children:t?s.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:n,children:e}):s.jsx(pa,{children:e})}),s.jsxs("div",{className:"ca-system-card__header-actions",children:[s.jsx("span",{className:"ca-system-card__active-label",children:r?"Active":"Inactive"}),a?s.jsx(Rn,{checked:r,disabled:l,"aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:i}):null,s.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:o?`Delete ${e}`:"You do not have permission to delete this form",disabled:!o,onClick:c,children:s.jsx(er,{size:40,color:"currentColor"})})]})]})}function fn({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const lh="aira-query-complaintTypeId";function fl({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:o,canConfigure:l=!1,canOpen:i=!1,canAddComplaint:c=!1}){const d=Pe(),u=Q.useDispatch(),f=o?.data??o?.id??o?._id??o,p=()=>{const w=o?.data??o?.id??o?._id??o;if(w!=null&&w!==""){const S=String(w);try{sessionStorage.setItem(lh,S)}catch{}u(lt(S)),u(Wo()),u(Yo()),d(`/complaintmanagement/${S}`);return}d("/complaintmanagement")};return s.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[s.jsx(Qe,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),s.jsxs("div",{className:"ca-system-card__footer-actions",children:[i?s.jsxs(ye,{size:"sm",onClick:p,children:[t,s.jsx(fn,{size:14,color:"currentColor",className:"svg"})]}):null,l?s.jsx(ye,{size:"sm",onClick:()=>{if(f==null||f==="")return;const w=String(f);u(_t({data:!0})),u(lt(w)),d(`/settings/${w}?step=1`)},endIcon:s.jsx(fn,{size:14,color:"currentColor",className:"svg"}),children:n}):null,c?s.jsx(ye,{size:"sm",onClick:()=>{f==null||f===""||d(`/complaintmanagement/new/${String(f)}`)},endIcon:s.jsx(fn,{size:14,color:"currentColor",className:"svg"}),children:"Add complaint"}):null]})]})}function pl({label:e,value:t,icon:n,className:r=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return s.jsxs("div",{className:`ca-data-point ${r}`.trim(),children:[n?s.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:n}):null,s.jsx(dl,{children:a}),s.jsx("span",{className:"ca-data-point__label",children:e})]})}function hl({className:e=""}){return s.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const ih="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_617_15259)'%3e%3cpath%20d='M9.99992%2011.9997H6.66658M11.9999%209.33301H6.66658M2.66659%2014.6663H13.3333C13.6869%2014.6663%2014.026%2014.5259%2014.2761%2014.2758C14.5261%2014.0258%2014.6666%2013.6866%2014.6666%2013.333V2.66634C14.6666%202.31272%2014.5261%201.97358%2014.2761%201.72353C14.026%201.47348%2013.6869%201.33301%2013.3333%201.33301H5.33325C4.97963%201.33301%204.64049%201.47348%204.39044%201.72353C4.14039%201.97358%203.99992%202.31272%203.99992%202.66634V5.99967M2.66659%2014.6663C3.02021%2014.6663%203.35935%2014.5259%203.60939%2014.2758C3.85944%2014.0258%203.99992%2013.6866%203.99992%2013.333V5.99967M2.66659%2014.6663C2.31296%2014.6663%201.97382%2014.5259%201.72378%2014.2758C1.47373%2014.0258%201.33325%2013.6866%201.33325%2013.333V7.33301C1.33325%206.97939%201.47373%206.64025%201.72378%206.3902C1.97382%206.14015%202.31296%205.99967%202.66659%205.99967H3.99992M7.33325%203.99967H11.3333C11.7014%203.99967%2011.9999%204.29815%2011.9999%204.66634V5.99967C11.9999%206.36786%2011.7014%206.66634%2011.3333%206.66634H7.33325C6.96506%206.66634%206.66658%206.36786%206.66658%205.99967V4.66634C6.66658%204.29815%206.96506%203.99967%207.33325%203.99967Z'%20stroke='%232D64B8'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_617_15259'%3e%3crect%20width='16'%20height='16'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",ch="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.44729%202.75711C6.48402%202.37067%206.66351%202.01181%206.95069%201.75063C7.23787%201.48945%207.61211%201.34473%208.00029%201.34473C8.38847%201.34473%208.76271%201.48945%209.04989%201.75063C9.33707%202.01181%209.51656%202.37067%209.55329%202.75711C9.57537%203.00675%209.65727%203.24739%209.79205%203.45867C9.92683%203.66995%2010.1105%203.84565%2010.3276%203.97089C10.5447%204.09614%2010.7887%204.16724%2011.0391%204.17819C11.2895%204.18913%2011.5388%204.1396%2011.766%204.03378C12.1187%203.87363%2012.5184%203.85045%2012.8873%203.96877C13.2562%204.08708%2013.5678%204.33841%2013.7616%204.67385C13.9554%205.00928%2014.0175%205.40482%2013.9357%205.78349C13.854%206.16215%2013.6342%206.49685%2013.3193%206.72244C13.1142%206.86634%2012.9468%207.05751%2012.8312%207.27979C12.7157%207.50207%2012.6553%207.74891%2012.6553%207.99944C12.6553%208.24997%2012.7157%208.49681%2012.8312%208.71909C12.9468%208.94137%2013.1142%209.13254%2013.3193%209.27644C13.6342%209.50203%2013.854%209.83673%2013.9357%2010.2154C14.0175%2010.5941%2013.9554%2010.9896%2013.7616%2011.325C13.5678%2011.6605%2013.2562%2011.9118%2012.8873%2012.0301C12.5184%2012.1484%2012.1187%2012.1253%2011.766%2011.9651C11.5388%2011.8593%2011.2895%2011.8097%2011.0391%2011.8207C10.7887%2011.8316%2010.5447%2011.9027%2010.3276%2012.028C10.1105%2012.1532%209.92683%2012.3289%209.79205%2012.5402C9.65727%2012.7515%209.57537%2012.9921%209.55329%2013.2418C9.51656%2013.6282%209.33707%2013.9871%209.04989%2014.2483C8.76271%2014.5094%208.38847%2014.6542%208.00029%2014.6542C7.61211%2014.6542%207.23787%2014.5094%206.95069%2014.2483C6.66351%2013.9871%206.48402%2013.6282%206.44729%2013.2418C6.42525%2012.992%206.34336%2012.7513%206.20854%2012.54C6.07371%2012.3286%205.88994%2012.1528%205.67278%2012.0276C5.45562%2011.9023%205.21147%2011.8313%204.96101%2011.8204C4.71055%2011.8095%204.46116%2011.8591%204.23396%2011.9651C3.88122%2012.1253%203.48151%2012.1484%203.11263%2012.0301C2.74374%2011.9118%202.43207%2011.6605%202.23828%2011.325C2.04449%2010.9896%201.98244%2010.5941%202.0642%2010.2154C2.14596%209.83673%202.36569%209.50203%202.68063%209.27644C2.88571%209.13254%203.05311%208.94137%203.16868%208.71909C3.28426%208.49681%203.34459%208.24997%203.34459%207.99944C3.34459%207.74891%203.28426%207.50207%203.16868%207.27979C3.05311%207.05751%202.88571%206.86634%202.68063%206.72244C2.36614%206.49674%202.14679%206.16217%202.06523%205.78376C1.98366%205.40535%202.0457%205.01014%202.23928%204.67492C2.43287%204.3397%202.74417%204.08843%203.11269%203.96994C3.4812%203.85144%203.88061%203.8742%204.23329%204.03378C4.46046%204.1396%204.70979%204.18913%204.96016%204.17819C5.21053%204.16724%205.45458%204.09614%205.67165%203.97089C5.88872%203.84565%206.07242%203.66995%206.2072%203.45867C6.34198%203.24739%206.42388%203.00675%206.44596%202.75711M9.99996%207.99978C9.99996%209.10434%209.10453%209.99978%207.99996%209.99978C6.89539%209.99978%205.99996%209.10434%205.99996%207.99978C5.99996%206.89521%206.89539%205.99978%207.99996%205.99978C9.10453%205.99978%209.99996%206.89521%209.99996%207.99978Z'%20stroke='%23745EBF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",dh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.99992%208H6.66659M9.99992%205.33333H6.66659M12.6666%2011.3333V3.33333C12.6666%202.97971%2012.5261%202.64057%2012.2761%202.39052C12.026%202.14048%2011.6869%202%2011.3333%202H2.66659M2.66659%202C3.02021%202%203.35935%202.14048%203.60939%202.39052C3.85944%202.64057%203.99992%202.97971%203.99992%203.33333V5.33333M2.66659%202C2.31296%202%201.97382%202.14048%201.72378%202.39052C1.47373%202.64057%201.33325%202.97971%201.33325%203.33333V4.66667C1.33325%204.84348%201.40349%205.01305%201.52851%205.13807C1.65354%205.2631%201.82311%205.33333%201.99992%205.33333H3.99992M5.33325%2014H13.3333C13.6869%2014%2014.026%2013.8595%2014.2761%2013.6095C14.5261%2013.3594%2014.6666%2013.0203%2014.6666%2012.6667V12C14.6666%2011.8232%2014.5963%2011.6536%2014.4713%2011.5286C14.3463%2011.4036%2014.1767%2011.3333%2013.9999%2011.3333H7.33325C7.15644%2011.3333%206.98687%2011.4036%206.86185%2011.5286C6.73682%2011.6536%206.66659%2011.8232%206.66659%2012V12.6667C6.66659%2013.0203%206.52611%2013.3594%206.27606%2013.6095C6.02601%2013.8595%205.68687%2014%205.33325%2014ZM5.33325%2014C4.97963%2014%204.64049%2013.8595%204.39044%2013.6095C4.14039%2013.3594%203.99992%2013.0203%203.99992%2012.6667V5.33333'%20stroke='%2300B692'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",uh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.66675%209.33301H6.66675M2.66675%201.33301H9.33341M3.33341%2011.9997H12.6667C13.0349%2011.9997%2013.3334%2012.2982%2013.3334%2012.6663V13.9997C13.3334%2014.3679%2013.0349%2014.6663%2012.6667%2014.6663H3.33341C2.96522%2014.6663%202.66675%2014.3679%202.66675%2013.9997V12.6663C2.66675%2012.2982%202.96522%2011.9997%203.33341%2011.9997ZM3.33341%203.99967H12.6667C13.0349%203.99967%2013.3334%204.29815%2013.3334%204.66634V5.99967C13.3334%206.36786%2013.0349%206.66634%2012.6667%206.66634H3.33341C2.96522%206.66634%202.66675%206.36786%202.66675%205.99967V4.66634C2.66675%204.29815%202.96522%203.99967%203.33341%203.99967Z'%20stroke='%23FF6F00'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",fh="Complaints",ph=[{actionName:"READ",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"DELETE",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"CREATE",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"FULL_ACCESS",featureModule:{name:"Complaints",isActive:!0},source:"role:STOREMANAGER"},{actionName:"FULL_DATA_ACCESS",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"}];function ml(e){const t=Array.isArray(e)?e:[],n=new Set(t.filter(c=>c?.featureModule?.name===fh&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),r=n.has("FULL_ACCESS"),a=n.has("READ")||r,o=n.has("CREATE")||r,l=n.has("DELETE")||r,i=n.has("FULL_DATA_ACCESS");return{canViewCards:a,canCreateForm:o,canDelete:l,canOpen:i,hasAnyAccess:a||o||l||i}}const gl="aira-query-complaintTypeId",hh={id:"status",label:"Status",key:"status"},mh={id:"escalationTo",label:"Escalation To",key:"escalationTo"},gh={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},yh={id:"assignedToUserName",label:"Assigned To",key:"assignedToUserName"},bh={id:"complaintId",label:"Complaint Id",key:"complaintId"},Sh={id:"createdAt",label:"Created At",key:"createdAt"},vh={id:"updatedAt",label:"Updated At",key:"updatedAt"},yl="desc",bl="asc",wh=10,Ch=["5","10","15","20","25"],Nh=999999,ma=new Set(["status","escalationTo","id","submittedByUserName","assignedToUserName","complaintId","createdAt","updatedAt"]),_h=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function Sl(e){if(!e)return"";const t=new Date(e);if(Number.isNaN(t.getTime()))return"";const n=String(t.getHours()).padStart(2,"0"),r=String(t.getMinutes()).padStart(2,"0");return`${t.getDate()} ${_h[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function vl(e){return[gh,yh,bh,Sh,vh,hh,mh,...e]}function Ah(e){const t=e?.data??e,n=Array.isArray(t)?t:t?.data??t?.results??t?.items??[];return[...Array.isArray(n)?n:[]].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0)).map(r=>{const a=r.fieldKey||r.fieldName||r.fieldLabel;return{id:a,label:r.fieldName||r.fieldLabel||r.label||a,key:a,fieldType:r.fieldType,hideForWorkflowStepId:r.hideForWorkflowStepId??null}}).filter(r=>r.key&&!ma.has(r.key))}function Eh(e,t,n,r){const a=e?.data??e??{},o=Number(a.total??a.totalItems??a.totalCount??a.count),l=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(l)&&l>0?{totalPages:l,totalItems:Number.isFinite(o)&&o>=0?o:Math.max(r,l*n),hasNext:t<l}:Number.isFinite(o)&&o>=0?{totalPages:Math.max(1,Math.ceil(o/n)),totalItems:o,hasNext:t*n<o}:{totalPages:t+(r>=n?1:0),totalItems:Math.max(r,t*n),hasNext:r>=n}}function wl(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function Lh(){try{return sessionStorage.getItem(gl)}catch{return null}}function Cl(e){const t=wl(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(gl,n)}catch{}return n}function Th(...e){for(const t of e){const n=wl(t);if(n!=null&&n!=="")return String(n)}return null}function ga(e,t=[]){const n=e?.status;if(typeof n=="string"&&n.trim())return n.trim();if(n&&typeof n=="object"){const a=n.name??n.label??n.status;if(a)return String(a).trim();const o=n.id??n.statusId;if(o!=null){const l=t.find(i=>String(i.id)===String(o));if(l?.name)return l.name}}const r=e?.statusId??e?.complaintStatusId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.name)return a.name}return""}function Ih(e,t=[]){const n=e?.statusId??e?.complaintStatusId;if(n!=null&&n!=="")return n;const r=e?.status;if(r&&typeof r=="object"){const a=r.id??r.statusId;if(a!=null&&a!=="")return a}if(typeof r=="string"&&r.trim()){const a=t.find(o=>String(o.name).trim()===r.trim());if(a?.id!=null)return a.id}return null}function tr(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}const Fh=new Set(["closed","cancelled","canceled"]);function ya(e){return Fh.has(String(e||"").trim().toLowerCase())}function kh(e){return ya(e)}function ba(e){return ya(e)}function Oh(e,t=[]){const n=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(n!=null&&n!==""){const a=t.find(o=>String(o.id)===String(n));if(a)return a}const r=e?.level??e?.levelNo;return r!=null&&r!==""?t.find(a=>String(a.levelNo)===String(r))??null:null}function Dh(e,t=[]){const n=e?.level??e?.levelNo;if(n!=null&&n!=="")return`Level ${n}`;const r=e?.workflowStepId??e?.currentWorkflowStepId??e?.currentStepId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function Nl(e,t=[],n=[]){const r=Oh(e,n),a=r?.levelNo??e?.level??e?.levelNo??e?.currentLevel,o=Array.isArray(e?.workflowLevels)?e.workflowLevels.find(f=>String(f?.levelNo)===String(a)):null,l=r?.roleIds?.[0]??r?.roles?.[0]?.id??r?.roleId??o?.roleIds?.[0]??e?.roleId??e?.assignedRoleId??null,i=e?.assignedTo??e?.assignedUser??e?.assignee,d=(i&&typeof i=="object"?i.userId??i.id:i!=null&&i!==""&&Number.isFinite(Number(i))?i:null)??e?.assignedToUser?.userId??e?.assignedToUser?.id??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId??null,u={id:e?.complaintId??e?.id,status:ga(e,t),isClosed:ba(ga(e,t)),statusId:Ih(e,t),escalationTo:Dh(e,n),level:a??null,currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:tr(e?.canResolve??r?.canResolve),isFinalLevel:tr(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),roleId:l,assignedToUserId:d,assignedToUserName:Fl(e),submittedByUserName:e?.submittedByUserName||"-",complaintId:e?.complaintId??e?.id??"-",createdAt:Sl(e?.createdAt)||"-",updatedAt:Sl(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(f=>{const p=f.fieldKey||f.fieldName;p&&!ma.has(p)&&(u[p]=f.value)}),u}function _l(e,t){const n=new Set,r=t.map(a=>{if(n.add(a.key),a.fieldType)return a;const o=e.flatMap(l=>l._fields||[]).find(l=>(l.fieldKey||l.fieldName)===a.key);return o?.fieldType?{...a,fieldType:o.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(o=>{const l=o.fieldKey||o.fieldName;!l||ma.has(l)||n.has(l)||(n.add(l),r.push({id:l,label:o.fieldName||l,key:l,fieldType:o.fieldType}))})}),r}function Mh(e,t,n){const r=String(e?.fieldType||"").toLowerCase();return r==="file"||r==="images"||r==="image"?!0:t.some(a=>n(e,a[e.key]??"-"))}function Al(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function El(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function xh(e,t){const n=e.map(a=>El(a.label)).join(","),r=t.map(a=>e.map(o=>El(a[o.key]??"-")).join(","));return[n,...r].join(`\r
12
- `)}const Ph=["January","February","March","April","May","June","July","August","September","October","November","December"];function Ll(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":`${t.getDate()} ${Ph[t.getMonth()]} ${t.getFullYear()}`}function Tl(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Uh(e){const t=Array.isArray(e?.accesses)?e.accesses.map(r=>r?.role?.id??r?.role?.roleId??r?.roleId).map(Number).filter(Number.isFinite):[];return t.length?t:(Array.isArray(e?.roleIds)?e.roleIds:Array.isArray(e?.roles)?e.roles:[]).map(r=>Number(r?.id??r?.roleId??r?.role_id??r)).filter(r=>Number.isFinite(r))}function Sa(e,t=[]){return Uh(e).some(n=>t.includes(n))}function Il(e){if(!e)return"";if(typeof e=="string")return e.trim();if(typeof e!="object")return"";const t=[e.firstName,e.lastName].filter(Boolean).join(" ");return String(e.name||e.userName||e.fullName||t||"").trim()}function Fl(e,t=[]){const n=e?.assignedToUserName??e?.assignedToName??e?.assignedUserName;if(n&&String(n).trim())return String(n).trim();const r=e?.assignedTo??e?.assignedUser??e?.assignee,a=Il(r);if(a)return a;const o=(r&&typeof r=="object"?r.id??r.userId:r)??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId;if(o!=null&&o!==""){const l=t.find(i=>String(i?.id??i?.userId)===String(o));return Il(l)}return""}function kl(e,t=[],n=[],r=null){const a=ga(e,t),o=e?.level??e?.levelNo??e?.currentLevel;return{id:e?.complaintId??e?.id,title:String(e?.complaintId??e?.id??"-"),status:a||"-",isClosed:ba(a),level:o!=null&&o!==""?o:"-",assignedTo:Fl(e,n)||"Unassigned",date:Ll(e?.createdAt??e?.date),tat:r?Vh(e,r.tatMinutes,a):null}}function $h(e,t=[]){const n=e?.userComplaintSummary??{},r=Number(n.totalComplaints)||0,a=Number(n.openComplaints)||0,o=Number(n.closedComplaints)||0,l=Number(n.cancelledComplaints)||0,i=(Array.isArray(e?.recentOpenComplaints)?e.recentOpenComplaints:[]).slice(0,2).map(c=>kl(c,[],t));return{total:r,open:a,closed:o,cancelled:l,previewRows:i}}function Bh(e=[]){const t={};return(Array.isArray(e)?e:[]).forEach(n=>{const r=n?.id??n?._id,a=n?.name??n?.storeName;r!=null&&a&&(t[String(r)]=String(a))}),t}function Ol(e,t={}){if(!Object.keys(t).length)return e;const n={...e};return Object.keys(n).forEach(r=>{const a=n[r];typeof a=="string"&&t[a.trim()]&&(n[r]=t[a.trim()])}),n}function jh(e,t=[],n=null){const r=e?.workflowComplaintSummary,a=[r?.levels,r?.steps,e?.workflowLevels,e?.workflowSteps].filter(Array.isArray).flat(),o=i=>Number(i&&typeof i=="object"?i.userId??i.id??i.roleId??i.role_id??i.user?.id??i.role?.id:i),l=(...i)=>i.filter(Array.isArray).flat().map(o).filter(Number.isFinite);return a.some(i=>{const c=l(i?.roleIds,i?.roles,i?.roleId!=null?[i.roleId]:null),d=l(i?.userIds,i?.users,i?.userAssignments,i?.assignedUsers);return c.some(u=>t.includes(u))||n!=null&&d.includes(Number(n))})}function va(e){const t=Math.max(Math.floor(Math.abs(e)/60),0),n=Math.floor(t/1440),r=Math.floor(t%1440/60),a=t%60,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&!n&&o.push(`${a}m`),o.join(" ")||"0m"}function qh(e){if(e%1440===0){const t=e/1440;return`${t} ${t===1?"day":"days"}`}return va(e*60)}function Vh(e,t,n=""){if(ya(n))return null;const r=Number(e?.escalationTimeRemainingSeconds);if(e?.escalationTimeRemainingSeconds==null||!Number.isFinite(r))return null;const a=Number(t)>0?Number(t)*60:0,o=r<0,l=a?Math.min(Math.max(Math.round((1-r/a)*100),0),100):0;return{percent:o?100:l,state:o?"overdue":l>=75?"warn":"ok",remainingLabel:o?`Overdue by ${va(r)}`:`${va(r)} remaining`,totalLabel:a?`of ${qh(Number(t))}`:""}}function Wh(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"})}function Dl({id:e,title:t,item:n,status:r="inactive",description:a,descriptionHref:o,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u,titleAsLink:f=!1,onTitleClick:p,onDescriptionClick:w,onConfigure:S,onOpen:m,onDelete:h,onToggleActive:g,isTogglingActive:b=!1,className:L=""}){const N=Q.useSelector(E=>E.appDetails?.details?.currentUser),x=Q.useSelector(E=>E.appDetails?.details?.featureActions),{canCreateForm:T,canDelete:V,canOpen:R}=ml(x),Z=T,q=Tl(N),K=N?.id??N?.userId??null,$=R||jh(n,q,K)||Sa(n,q),G=Sa(n,q)&&n?.isActive!==!1,I=()=>{S?.({id:e,title:t,status:r,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u})},D=()=>{if(w){w({id:e,title:t,descriptionHref:o});return}o&&typeof window<"u"&&window.open(o,"_blank","noopener,noreferrer")},j=[{label:"Total entries",value:n?.totalEntries??0,icon:s.jsx("img",{src:ih,alt:""})},{label:"Open entries",value:n?.openEntries??0,icon:s.jsx("img",{src:ch,alt:""})},{label:"Closed entries",value:n?.closedEntries??0,icon:s.jsx("img",{src:dh,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:s.jsx("img",{src:uh,alt:""})}],H=e??n?.id??n?._id;return s.jsxs("article",{className:`ca-system-card ${L}`.trim(),children:[s.jsx(ul,{title:n?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:Z,canDelete:V,activeDisabled:b,onActiveChange:E=>g?.({id:H,isActive:E,item:n}),onDelete:()=>h?.({id:H,title:t,item:n})}),a?s.jsx("p",{className:"ca-system-card__description",onClick:D,children:a}):null,s.jsx("div",{className:"ca-system-card__stats",children:j.map((E,M)=>s.jsxs(y.Fragment,{children:[M>0?s.jsx(hl,{}):s.jsx("div",{className:"ca-system-card__stats-spacer"}),s.jsx(pl,{label:E.label,value:E.value,icon:E.icon})]},E.label))}),s.jsx(fl,{updatedOn:u??Wh(n?.updatedAt??n?.createdAt),onOpen:()=>m?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canOpen:$,canConfigure:Z,canAddComplaint:G,onConfigure:I})]})}function Ml({systems:e=[],onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,togglingActiveId:o=null,onTitleClick:l,onDescriptionClick:i,emptyMessage:c="No systems found.",className:d=""}){return e.length?s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(u=>s.jsx(Dl,{item:u,...u,onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,isTogglingActive:String(o)===String(u.id??u._id),onTitleClick:l,onDescriptionClick:i},u.id??u.title))}):s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:s.jsx("div",{className:"ca-empty",children:s.jsx(Qn,{children:c})})})}function Ot({value:e,onChange:t,placeholder:n,type:r="text",icon:a,className:o="",inputClassName:l="",...i}){return s.jsxs("div",{className:`ca-input-wrap ${o}`.trim(),children:[a?s.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,s.jsx("input",{type:r,className:`ca-input ${a?"ca-input--with-icon":""} ${l}`.trim(),value:e,onChange:t,placeholder:n,...i})]})}function xl({size:e=18,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:[s.jsx("path",{d:"M10.5 18a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Z",stroke:t,strokeWidth:"1.75"}),s.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function Pl({value:e,onChange:t,onSearch:n,placeholder:r="Search",className:a=""}){const o=l=>{l.key==="Enter"&&n&&n(e)};return s.jsx("div",{className:`ca-search ${a}`.trim(),children:s.jsx(Ot,{value:e,onChange:t,onKeyDown:o,placeholder:r,icon:s.jsx(xl,{}),"aria-label":r})})}function ze({text:e="Loading",fullScreen:t=!1}){return s.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[s.jsx("span",{className:"ca-loading__spinner"}),s.jsxs("span",{children:[e,"…"]})]})}const zh=[{id:"qms",title:"QMS - Query Management System",status:"active",description:"Description of the template",departments:3,workflows:12,fields:55,formsFilled:234,updatedOn:"12 Mar 2024",titleAsLink:!1},{id:"cms",title:"CX- Pulse-360 ",status:"active",description:"Description of the template",departments:5,workflows:8,fields:42,formsFilled:189,updatedOn:"08 Mar 2024"},{id:"fms",title:"ENE - TRACKER",status:"inactive",description:"Description of the template",departments:2,workflows:4,fields:28,formsFilled:56,updatedOn:"01 Feb 2024"},{id:"rms",title:"RTV - Return to Vendor ",status:"active",description:"Description of the template",departments:4,workflows:10,fields:61,formsFilled:312,updatedOn:"20 Mar 2024"}],Ul="Create, manage and track complaint forms, workflows and responses across departments.";const $l=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const Hh=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const Kh=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Bl=e=>{const t=Kh(e);return t.charAt(0).toUpperCase()+t.slice(1)};var wa={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Yh=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Gh=y.createContext({}),Jh=()=>y.useContext(Gh),Zh=y.forwardRef(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:a="",children:o,iconNode:l,...i},c)=>{const{size:d=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p="currentColor",className:w=""}=Jh()??{},S=r??f?Number(n??u)*24/Number(t??d):n??u;return y.createElement("svg",{ref:c,...wa,width:t??d??wa.width,height:t??d??wa.height,stroke:e??p,strokeWidth:S,className:$l("lucide",w,a),...!o&&!Yh(i)&&{"aria-hidden":"true"},...i},[...l.map(([m,h])=>y.createElement(m,h)),...Array.isArray(o)?o:[o]])});const be=(e,t)=>{const n=y.forwardRef(({className:r,...a},o)=>y.createElement(Zh,{ref:o,iconNode:t,className:$l(`lucide-${Hh(Bl(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Bl(e),n};const Xh=be("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);const jl=be("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);const Qh=be("calendar-days",[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M8 13h.01",key:"1sbv64"}],["path",{d:"M12 13h.01",key:"y0uutt"}],["path",{d:"M16 13h.01",key:"wip0gl"}],["path",{d:"M8 17h.01",key:"p3bg7i"}],["path",{d:"M12 17h.01",key:"p32p05"}],["path",{d:"M16 17h.01",key:"ql8jdd"}]]);const pn=be("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Rh=be("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const nr=be("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const em=be("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const tm=be("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const rr=be("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const nm=be("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);const rm=be("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);const am=be("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);const sm=be("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const ql=be("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const Vl=be("store",[["path",{d:"M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5",key:"slp6dd"}],["path",{d:"M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244",key:"o0xfot"}],["path",{d:"M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05",key:"wn3emo"}]]);const om=be("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);const lm=be("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),im=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],Wl=new Set(["Select","Dropdown","Radio","Checkbox"]),cm=["Both","User","Admin"],dm={Open:"#FF0000",Cancelled:"#FF6F00",Closed:"#00D82F"},Ca=["Open","Cancelled","Closed"],He={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...Ca],optionColors:{...dm},parentMappings:{},lockMode:"options",isNew:!1},ar={id:"custom-priorities",fieldKey:"priorities",fieldLabel:"Priorities",originalFieldName:"Priorities",fieldType:"Dropdown",required:!1,fieldAccess:"",hideFor:[],dependsOn:"",options:["Urgent","High","Medium","Low"],parentMappings:{},lockMode:"options",isNew:!1},hn={id:"custom-store-id",fieldKey:"storeIdCustom",fieldLabel:"Store ID",originalFieldName:"Store ID",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[],optionColors:{},parentMappings:{},lockMode:"all",isNew:!1},um=[{...He,label:He.fieldLabel},{...hn,label:hn.fieldLabel}];function zl(e){return String(e||"").trim().toLowerCase()}function re(e){const t=zl(e?.fieldKey),n=zl(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function Ue(e){return re(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function fm(e,t=[]){if(!re(e))return!1;const n=t.length?t:[e],r=n.filter(l=>!l?.isNew&&re(l)),a=n.filter(Ue),o=r[0]||a[0]||n.find(l=>re(l)&&!l?.isNew);return o?String(o.id)===String(e.id):!e?.isNew}function sr(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function Re(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function et(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="cancelled"||t==="canceled"||t==="closed"}function pm(e){return String(e||"").trim().toLowerCase()==="open"}function or(e){return String(e||"").trim().toLowerCase()==="done"?"Closed":e}function mn(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),n=new Set,r=[];return Ca.forEach(a=>{const o=t.find(l=>String(l).trim().toLowerCase()===a.toLowerCase());o==null||n.has(o)||(r.push(o),n.add(o))}),t.forEach(a=>{n.has(a)||(r.push(a),n.add(a))}),r}function Hl(e){return Wl.has(e?.fieldType)||Ue(e)}function Na(e){return!e||re(e)||Re(e)||!Wl.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function Dt(e=[]){return e.some(Na)}function Kl(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!Na(r))return;const a=String(r.fieldType||"").trim();!a||n.has(a)||(n.add(a),t.push(a))}),t.length?t.length===1?`Add options for ${t[0]} field.`:t.length===2?`Add options for ${t[0]} and ${t[1]} fields.`:`Add options for ${t.slice(0,-1).join(", ")}, and ${t[t.length-1]} fields.`:""}function hm(e,t){const n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase(),r=String(t?.fieldLabel||t?.label||"").trim().toLowerCase(),a=String(e?.fieldType||"").trim().toLowerCase(),o=String(t?.fieldType||"").trim().toLowerCase();return!!(n&&r&&a&&o&&n===r&&a===o)}function lr(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:hm(e,n)):!1}function ir(e=[]){return e.some(t=>lr(t,e))}function _a(e,t={},n=""){const r=String(n||"");if(re({fieldKey:r})||Re({fieldKey:r}))return t.CUSTOM??"Custom";if(e==="MULTI_SELECT"||e==="MULTISELECT")return t.CHECKBOX??"Checkbox";if(e==="PHONE"||e==="MOBILE")return t.NUMBER??"Number";if(e==="FILE"&&r.endsWith("Images"))return t.IMAGES??"Images";if(e==="DATETIME"&&r.endsWith("Time")&&!r.endsWith("DateTime"))return t.TIME??"Time";if(e==="SELECT"||e==="DROPDOWN"){const a=r.toLowerCase();if(a.endsWith("dropdown"))return t.DROPDOWN??"Dropdown";if(a.endsWith("select"))return t.SELECT??"Select"}return t[e]??e??"Custom"}function mm(e){return sr(e)?"Priorities":"Option"}function gm(e,t=!1){return e?t?"Define options and set parent.":re(e)?"Manage the status":"Manage your fields.":""}function cr(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return cr({...e,fieldType:"Checkbox"},t);if(re(e)){if(e?.isNew||!fm(e,t))return{...e,lockMode:e?.lockMode==="all"?e.lockMode:void 0};const n=String(e.fieldLabel||e.label||"").trim(),r=!n||n.toLowerCase()==="statuses";return{...He,...e,fieldKey:He.fieldKey,fieldLabel:r?He.fieldLabel:n,originalFieldName:r?He.originalFieldName:e.originalFieldName??n,fieldType:He.fieldType,required:!0,options:[...Ca],optionColors:{...He.optionColors},lockMode:"options"}}return sr(e)?{...ar,...e,fieldKey:e.fieldKey||ar.fieldKey,fieldType:ar.fieldType,options:e.options?.length?e.options:ar.options,lockMode:"options"}:Re(e)?{...hn,...e,fieldKey:hn.fieldKey,fieldType:hn.fieldType,required:!0,lockMode:"all"}:e}function Mt(e=[]){const t=e.map(r=>cr(r,e));if(t.some(re))return t;const n={...He};return[cr(n,[n,...t]),...t]}function Yl({row:e,onClick:t}){return s.jsxs("div",{className:"ca-filler-row ca-filler-row--clickable",role:"button",tabIndex:0,onClick:()=>t?.(e),onKeyDown:n=>{n.key!=="Enter"&&n.key!==" "||(n.preventDefault(),t?.(e))},"aria-label":`Open complaint ${e.title||e.id}`,children:[s.jsxs("div",{className:"ca-filler-row__top",children:[s.jsxs("span",{className:"ca-filler-row__title",children:[s.jsx("span",{className:"ca-filler-row__prefix",children:"Complaint ID:"})," ",e.title]}),s.jsxs("span",{className:"ca-filler-row__right",children:[e.tat?s.jsxs("span",{className:"ca-filler-row__tat",children:[s.jsx("span",{className:"ca-filler-row__tat-label",children:"TAT"}),s.jsx("span",{className:"ca-filler-row__tat-track",children:s.jsx("span",{className:`ca-filler-row__tat-fill ca-filler-row__tat-fill--${e.tat.state}`,style:{width:`${e.tat.percent}%`}})}),s.jsxs("span",{className:"ca-filler-row__tat-text",children:[s.jsx("strong",{children:e.tat.remainingLabel})," ",e.tat.totalLabel]})]}):null,s.jsx(nr,{size:16,"aria-hidden":"true"})]})]}),s.jsxs("div",{className:"ca-filler-row__meta",children:[s.jsxs("span",{children:["Status: ",s.jsx("strong",{children:or(e.status)})]}),s.jsxs("span",{children:["Level: ",s.jsx("strong",{children:e.level})]}),s.jsx("span",{children:e.assignedTo==="Unassigned"?e.assignedTo:s.jsxs(s.Fragment,{children:["Assigned to: ",s.jsx("strong",{children:e.assignedTo})]})}),s.jsx("span",{children:e.date})]})]})}const ym=[];function bm({form:e,onAddComplaint:t,onViewAll:n}){const r=Q.useSelector(u=>u.appDetails?.details?.userList)??ym,{total:a,open:o,closed:l,cancelled:i,previewRows:c}=$h(e,r),d=e.isActive!==!1&&e.active!==!1;return s.jsxs("article",{className:"ca-filler-card",children:[s.jsxs("div",{className:"ca-filler-card__head",children:[s.jsxs("div",{className:"ca-filler-card__heading",children:[s.jsxs("h3",{className:"ca-filler-card__title",children:[e.name??e.title,a?` (${a})`:""]}),o?s.jsxs("span",{className:"ca-filler-card__count",children:[o," open"]}):null,l?s.jsxs("span",{className:"ca-filler-card__count",children:[l," closed"]}):null,i?s.jsxs("span",{className:"ca-filler-card__count",children:[i," cancelled"]}):null]}),s.jsxs("button",{type:"button",className:"ca-filler-card__add",onClick:()=>t?.(e),disabled:!d,children:["Add complaint ",s.jsx(nr,{size:14,"aria-hidden":"true"})]})]}),s.jsx("p",{className:"ca-filler-card__desc",children:e.description||" "}),c.map(u=>s.jsx(Yl,{row:u},u.id)),s.jsxs("div",{className:"ca-filler-card__foot",children:[a?s.jsx("button",{type:"button",className:"ca-filler-card__link",onClick:()=>n?.(e),children:"View all >"}):s.jsx("span",{}),s.jsx("span",{className:"ca-filler-card__date",children:Ll(e.createdAt)})]})]})}function Gl({title:e="Complaint Management",description:t=Ul,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:o,onTitleClick:l,onDescriptionClick:i,onSearch:c}){const d=Pe(),u=Q.useDispatch(),[f,p]=y.useState(""),[w,S]=y.useState(null),[m,h]=y.useState(""),{complaintList:g=[],loading:b=!1,error:L=null}=Q.useSelector(F=>F.complaintType??{}),N=Q.useSelector(F=>F.appDetails?.details?.currentUser),x=Q.useSelector(F=>F.appDetails?.details?.featureActions),{canViewCards:T,canCreateForm:V,canDelete:R,canOpen:Z,hasAnyAccess:q}=y.useMemo(()=>ml(x),[x]),K=y.useMemo(()=>Tl(N),[N]),$=y.useMemo(()=>g.filter(F=>Sa(F,K)),[g,K]),G=T||V||R||Z,I=!G&&$.length>0;y.useEffect(()=>{u(_t({data:!1}))},[u]),y.useEffect(()=>{const F=setTimeout(()=>h(f.trim()),400);return()=>clearTimeout(F)},[f]),y.useEffect(()=>{u(sn(m?{search:m}:void 0))},[u,m]);const D=g;y.useEffect(()=>{c&&c(f)},[f,c]);const j=F=>{p(F.target.value)},H=F=>{a?.(F),d(`/settings/${F.id??"new"}?step=1`)},E=()=>{u(_t({data:!1})),r?.(),d("/settings/new?step=1")},M=({id:F})=>{R&&F!=null&&u(zn(F))},C=({id:F,isActive:O})=>{V&&F!=null&&(S(F),u(cn({id:F,isActive:O})).unwrap().then(()=>u(rp({id:F,isActive:O}))).finally(()=>S(null)))};return!G&&(b||!g.length)&&!L?s.jsx(ze,{text:"Loading"}):I?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:"Complaints",description:"Create, manage and track complaint forms, workflows and responses across departments.",showAction:!1}),s.jsx("div",{className:"ca-filler-card-list",children:$.map(F=>s.jsx(bm,{form:F,onAddComplaint:O=>d(`/complaintmanagement/new/${O.id}`),onViewAll:O=>d(`/complaintmanagement/${O.id}/all`)},F.id))})]}):q?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:e,description:t,actionLabel:n,onAction:E,showAction:V}),G?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-search-container",children:s.jsx(Pl,{value:f,onChange:j,placeholder:"Search"})}),b?s.jsx(ze,{text:"Loading systems"}):L?s.jsx("div",{className:"ca-empty",children:s.jsx("p",{className:"ca-body",children:typeof L=="string"?L:"Failed to load complaint types."})}):s.jsx(Ml,{systems:D,onConfigure:H,onOpen:o,onDelete:M,onToggleActive:C,togglingActiveId:w,onTitleClick:l,onDescriptionClick:i,emptyMessage:f?"No systems match your search.":"No systems found."})]}):null]}):s.jsx("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",style:{minHeight:"80vh",display:"flex",alignItems:"center",justifyContent:"center"},children:s.jsx("h5",{className:"ca-body",style:{fontSize:24,color:"#808080",lineHeight:1.3,fontWeight:400,fontFamily:'Inter, "system-ui", arial, sans-serif'},children:"You do not have access rights for this page."})})}const Jl=y.createContext(null),Zl=()=>({categoryName:"",categoryType:"",tatMinutes:"",template:"",visibilityType:"",urlLink:"",active:!1,description:"",roles:[],categoryRoleIds:[],categoryFormData:null,departmentRows:[{id:"1",department:"",subDepartment:"",roles:""}],priorityDraft:"",priorities:[],defaultPriorityId:null,selectedDeptNode:null,workflow:{name:"",tatMinutes:"",description:"",status:[],steps:[],selectedTableCard:null},fieldDraft:{name:"",type:""},formFields:[],templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]});function Xl({children:e,initialValues:t}){const[n,r]=y.useState(()=>({...Zl(),...t,workflow:{...Zl().workflow,...t?.workflow}})),a=y.useCallback(i=>{r(c=>({...c,...i}))},[]),o=y.useCallback(i=>{r(c=>({...c,workflow:{...c.workflow,...i}}))},[]),l=y.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:o}),[n,a,o]);return s.jsx(Jl.Provider,{value:l,children:e})}function dr(){const e=y.useContext(Jl);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const $e=[{id:1,key:"category",label:"Category Type",title:"Category Type",description:"Define the type and basic details for this category type."},{id:2,key:"workflow",label:"Workflow",title:"Workflow",description:"L1 > L2 > L3"},{id:3,key:"formFields",label:"Form Fields"},{id:4,key:"review",label:"Review & Publish",title:"Review & Publish",description:"Review your configuration and publish."}],Sm=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function vm({size:e=28,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...n,children:[s.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),s.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),s.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Ql({title:e,description:t,nextLabel:n="Next",onNext:r,showNext:a=!0,nextDisabled:o=!1,nextVariant:l="primary",extra:i=null,className:c=""}){return s.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[s.jsx("div",{className:"ca-settings-card__heading",children:s.jsxs("div",{children:[s.jsx(pa,{children:e}),t?s.jsx(Qn,{className:"ca-settings-card__desc",children:t}):null]})}),i,a?s.jsx(ye,{variant:l,disabled:o,onClick:r,endIcon:s.jsx(fn,{size:14,color:"currentColor"}),children:n}):null]})}function gn({title:e,description:t,onNext:n,nextLabel:r,showNext:a=!0,nextDisabled:o,nextVariant:l,headerExtra:i,children:c,footer:d,className:u=""}){return s.jsxs("section",{className:`ca-settings-card ${u}`.trim(),children:[s.jsx(Ql,{title:e,description:t,onNext:n,nextLabel:r,showNext:a,nextDisabled:o,nextVariant:l,extra:i}),s.jsx("div",{className:"ca-settings-card__body",children:c}),d?s.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function Aa({children:e,hint:t,htmlFor:n,className:r=""}){return s.jsxs("div",{className:`ca-field-label ${r}`.trim(),children:[s.jsx("label",{className:"ca-label",htmlFor:n,children:e}),t!=null?s.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function Ea({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function La(e){return typeof e=="string"?e:e.value}function Ta(e){return typeof e=="string"?e:e.label}function Ke({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:o=!1,maxVisible:l,allowClear:i=!1,...c}){const[d,u]=y.useState(!1),f=y.useRef(null),p=e??"",w=n.find(h=>String(La(h))===String(p)),S=w?Ta(w):"";y.useEffect(()=>{if(!d)return;const h=g=>{f.current?.contains(g.target)||u(!1)};return document.addEventListener("mousedown",h),()=>document.removeEventListener("mousedown",h)},[d]);const m=h=>{t?.({target:{value:h}})};return l?s.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:f,children:[s.jsx("button",{type:"button",id:c.id,className:`ca-select__control${S?"":" ca-select__control--placeholder"}`,disabled:o,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(h=>!h),children:S||r}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})}),d?s.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":l},children:n.map(h=>{const g=La(h),b=String(g)===String(p);return s.jsx("li",{role:"none",children:s.jsx("button",{type:"button",role:"option","aria-selected":b,className:`ca-select__option${b?" is-selected":""}`,onClick:()=>{m(g),u(!1)},children:Ta(h)})},g)})}):null]}):s.jsxs("div",{className:`ca-select ${a}`.trim(),children:[s.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:o,...c,children:[s.jsx("option",{value:"",disabled:!i,children:r}),n.map(h=>{const g=La(h);return s.jsx("option",{value:g,disabled:!!(h&&typeof h=="object"&&h.disabled),children:Ta(h)},g)})]}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})})]})}function Rl({value:e,onChange:t,placeholder:n,maxLength:r,rows:a=4,className:o="",...l}){return s.jsx("textarea",{className:`ca-textarea ${o}`.trim(),value:e,onChange:t,placeholder:n,maxLength:r,rows:a,...l})}function Be({label:e,hint:t,children:n,className:r="",htmlFor:a}){return s.jsxs("div",{className:`ca-form-field ${r}`.trim(),children:[e!=null?s.jsx(Aa,{htmlFor:a,hint:t,children:e}):null,n]})}function yn({label:e,hint:t,helperText:n,...r}){return s.jsxs(Be,{label:e,hint:t,htmlFor:r.id,children:[s.jsx(Ot,{...r}),n?s.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function Ia({label:e,hint:t,...n}){return s.jsx(Be,{label:e,hint:t,htmlFor:n.id,children:s.jsx(Ke,{...n})})}function wm({label:e,hint:t,maxLength:n,value:r="",...a}){const o=t??(n!=null?`${String(r).length}/${n}`:void 0);return s.jsx(Be,{label:e,hint:o,htmlFor:a.id,children:s.jsx(Rl,{value:r,maxLength:n,...a})})}function ei({size:e=12,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function ti({label:e,onRemove:t,className:n="",title:r}){return s.jsxs("span",{className:`ca-tag ${n}`.trim(),title:r,children:[e,t?s.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:s.jsx(ei,{size:10})}):null]})}function ur({label:e="",options:t=[],value:n=[],onChange:r,placeholder:a="Select roles",className:o="",hasError:l=!1,required:i=!1,emptyText:c="No roles available",openDirection:d="up",showAll:u=!0,maxVisible:f=null,searchable:p=!1,searchPlaceholder:w="Search",lockedValues:S=[],rotateChevron:m=!1}){const[h,g]=y.useState(!1),[b,L]=y.useState(""),N=Array.isArray(n)?n.filter(E=>E!=null&&E!==""):[],x=new Set(S.map(E=>String(E))),T=y.useRef(null),V=y.useRef(null),R=t.map(E=>typeof E=="string"?{value:E,label:E,sublabel:"",searchText:E}:{value:E.value,label:E.label,sublabel:E.sublabel??"",title:E.title??"",searchText:E.searchText??`${E.label??""} ${E.sublabel??""}`}).filter(E=>E.value!==null&&E.value!==void 0&&E.value!==""),Z=new Map(R.map(E=>[String(E.value),E.label])),q=E=>N.some(M=>String(M)===String(E)),K=R.filter(E=>`${E.label} ${E.sublabel} ${E.searchText}`.toLowerCase().includes(b.trim().toLowerCase())),$=K.map(E=>E.value),G=$.length>0&&$.every(E=>q(E)),I=()=>{if(G)r?.(N.filter(E=>x.has(String(E))||!$.some(M=>String(M)===String(E))));else{const E=N.filter(M=>!$.some(C=>String(C)===String(M)));r?.([...E,...$])}};y.useEffect(()=>{h&&V.current&&(V.current.scrollTop=0)},[h]),y.useEffect(()=>{if(!h)return;const E=C=>{T.current&&!T.current.contains(C.target)&&(g(!1),L(""))},M=C=>{C.key==="Escape"&&(g(!1),L(""))};return document.addEventListener("mousedown",E),document.addEventListener("touchstart",E),document.addEventListener("keydown",M),()=>{document.removeEventListener("mousedown",E),document.removeEventListener("touchstart",E),document.removeEventListener("keydown",M)}},[h]);const D=E=>{x.has(String(E))||(q(E)?r?.(N.filter(M=>String(M)!==String(E))):r?.([...N,E]),L(""))},j=E=>{x.has(String(E))||r?.(N.filter(M=>String(M)!==String(E)))},H=N.length?`${N.length} selected`:a;return s.jsxs("div",{className:`ca-role-select ${o}`.trim(),style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,width:"100%"},children:[s.jsxs(Aa,{children:[e,i?s.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),s.jsxs("div",{className:"ca-multi-select",ref:T,style:{position:"relative",width:"100%"},children:[p?s.jsxs("div",{className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":h,onClick:()=>g(!0),children:[s.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:b,placeholder:w,"aria-label":w,onFocus:()=>g(!0),onChange:E=>{L(E.target.value),g(!0)},onKeyDown:E=>{E.key==="Escape"&&(E.stopPropagation(),g(!1),L(""))}}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m&&h?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):s.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>g(E=>!E),"aria-haspopup":"listbox","aria-expanded":h,children:[s.jsx("span",{className:N.length?"":"ca-multi-select__placeholder",children:H}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m&&h?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),h?s.jsxs("ul",{ref:V,className:"ca-multi-select__menu",role:"listbox","aria-multiselectable":"true",style:{position:"absolute",top:d==="down"?"calc(100% + 4px)":"auto",bottom:d==="down"?"auto":"calc(100% + 4px)",left:0,right:0,zIndex:20,maxHeight:f?f*38+8:d==="down"?220:260,overflowY:"auto"},children:[u&&K.length>1?s.jsx("li",{role:"option","aria-selected":G,style:{position:"sticky",top:0,zIndex:1,background:"var(--ca-surface, #fff)",borderBottom:"1px solid var(--ca-border, #e5e7eb)"},children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:G,onChange:I}),s.jsx("span",{children:"All"})]})}):null,K.length?K.map(E=>s.jsx("li",{role:"option","aria-selected":q(E.value),children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:q(E.value),disabled:x.has(String(E.value)),onChange:()=>D(E.value)}),s.jsxs("span",{className:"ca-multi-select__option-text",children:[s.jsx("span",{className:"ca-multi-select__option-label",children:E.label}),E.sublabel?s.jsx("span",{className:"ca-multi-select__option-sublabel",children:E.sublabel}):null]})]})},String(E.value))):s.jsx("li",{className:"ca-multi-select__empty",children:b?"No matching options":c})]}):null]}),N.length>0?s.jsx("div",{className:"ca-tag-list",children:[...new Set(N)].map(E=>s.jsx(ti,{label:Z.get(String(E))||String(E),title:R.find(M=>String(M.value)===String(E))?.title,onRemove:x.has(String(E))?void 0:()=>j(E)},String(E)))}):null]})}function bn({steps:e=[],currentStep:t=1,allStepsUnlocked:n=!1,onStepClick:r,className:a="",size:o="md",showSaveButton:l=!1,showNextButton:i=!1,onNext:c,nextLabel:d="Next >",extraActions:u=null}){const f=y.useRef({}),p=Q.useDispatch();return y.useEffect(()=>{const w=f.current[t];if(!w)return;const S=requestAnimationFrame(()=>{let m=w.parentElement;for(;m&&m!==document.body;){const{overflowX:x}=getComputedStyle(m);if(m.scrollWidth>m.clientWidth+1&&(x==="auto"||x==="scroll"))break;m=m.parentElement}if(!m||m===document.body)return;const h=m.getBoundingClientRect(),g=w.getBoundingClientRect(),b=12;if(g.left>=h.left+b&&g.right<=h.right-b)return;const N=g.left-h.left-(h.width-g.width)/2;m.scrollTo({left:m.scrollLeft+N,behavior:"smooth"})});return()=>cancelAnimationFrame(S)},[t]),s.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${o} ${a}`.trim(),children:[s.jsx("nav",{className:`ca-stepper ca-stepper--${o}`,"aria-label":"Progress",children:e.map((w,S)=>{const m=w.id??S+1,h=m===t,g=m<t,b=!!r&&(n||g||h);return s.jsxs("button",{type:"button",ref:L=>{f.current[m]=L},className:["ca-stepper__item",h?"ca-stepper__item--active":"",g?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-S},onClick:()=>{p(_t({data:!0})),b&&r?.(m)},disabled:!b,"aria-current":h?"step":void 0,children:[s.jsxs("span",{className:"ca-stepper__circle",children:[m,"."]}),s.jsx("span",{className:"ca-stepper__label",children:w.label})]},m)})}),l||i||u?s.jsxs("div",{className:"ca-stepper__actions",children:[u,i?s.jsx(ye,{onClick:c,children:d}):null]}):null]})}const Cm={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},Nm=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],_m={value:"",label:"Select Template"},Fa=e=>String(e?.id??e?.code??e?.name??"");function Am(e){return Array.isArray(e)?[...new Set(e.map(t=>!t||typeof t!="object"?t:t.userId??t.user_id??t.id??t.value??t.user?.userId??t.user?.id).filter(t=>t!=null&&t!==""))]:[]}function ka(e){const t=[e?.userIds,e?.users,Array.isArray(e?.accesses)?e.accesses.map(n=>n?.userId??n?.user?.id):null];for(const n of t){const r=Am(n);if(r.length)return r}return[]}function fr(e){return e==null||e===""?null:String(e).trim()||null}function ni(e){return fr(e?.userId??e?.user_id??e?.id??e?.value)}function Em(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=fr(e?.createdByUserId??e?.createdById??n?.userId??n?.id??n?.user?.id??(typeof n=="number"||/^\d+$/.test(String(n??"").trim())?n:null));if(r)return r;const a=typeof n=="string"?n.trim().toLowerCase():String(n?.name??n?.userName??"").trim().toLowerCase();if(!a)return null;const o=t.find(l=>{const i=String(l?.name??l?.userName??[l?.firstName,l?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(l?.email??l?.userEmail??"").trim().toLowerCase();return a===i||a===c});return ni(o)}function Oa(...e){const t=new Map;return e.flat().forEach(n=>{const r=fr(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const ri=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(l=>l?.role?.id??l?.roleId):[],n=Array.isArray(e?.roleIds)?e.roleIds:[],r=l=>l.map(i=>i&&typeof i=="object"?i.id??i.roleId??i.role_id??i.value:i).filter(i=>i!=null&&i!==""),a=r(t),o=r(n);return{categoryName:e?.name??e?.code??"",tatMinutes:At(e?.tatMinutes)||"",template:Fa(e),categoryType:e?.categoryType??Fa(e),description:e?.description??"",visibilityType:e?.visibilityType??e?.accessType??"INTERNAL_LOGIN",urlLink:e?.urlLink??"",active:e?.isActive??e?.active??!0,roles:[...new Set(a.length?a:o)],userIds:ka(e)}};function Lm(e){return[_m,...e]}function Tm(e,t){const n=[];if(e.categoryName&&n.push("Please enter a category name."),e.tatMinutes){const r=String(t.tatMinutes??"").trim();n.push(r?"TAT must include a unit (m, h, or d). Example: 30m, 2h, 1d.":"Please enter TAT . Use Minutes for m, Hours for h, or Days for d.")}return e.visibilityType&&n.push("Please select a visibility type."),e.urlLink&&n.push("Please enter a URL link."),e.roles&&n.push("Please select roles for complaint filling."),n.join(" ")}function Im({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:o}=dr(),[l,i]=y.useState(()=>a.categoryFormData??Cm),c=y.useRef(a.categoryFormData),[d,u]=y.useState({}),f=Q.useDispatch(),{id:p}=Q.useSelector(C=>C.appDetails||{}),{isEdit:w}=Q.useSelector(C=>C.appDetails||{}),S=Q.useSelector(C=>C.complaintType||{}),m=Q.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:h=[],saving:g,loading:b,error:L}=S,N=h.find(C=>String(C?.id??C?._id)===String(p))??(String(S.selected?.id??S.selected?._id)===String(p)?S.selected:null),x=y.useRef(N),T=y.useRef(!1);y.useEffect(()=>{x.current=N},[N]);const V=(C,F={})=>{i(C),c.current=C,o({categoryFormData:C,...F})};y.useEffect(()=>{a.categoryFormData||o({categoryFormData:l,categoryRoleIds:l.roles})},[l,o,a.categoryFormData]),y.useEffect(()=>{!h.length&&!b&&!T.current&&(T.current=!0,f(sn()))},[h.length,f,b]),y.useEffect(()=>{!w||p===null||p===void 0||c.current||f(Xe(p)).unwrap().then(C=>{const F=C?.data??C;if(!F||c.current)return;const O=x.current,W=ka(F),J=ka(O),te={...F,roleIds:F.roleIds??O?.roleIds,userIds:W.length?W:J},k=ri(te);i(k),c.current=k,o({categoryFormData:k,categoryRoleIds:k.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[f,p,w,o]);const R=n.map(C=>({value:C.id??C.roleId??C.value,label:C.name??C.roleName??C.label})).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),Z=r.map(C=>{const F=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),O=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:F,sublabel:O,title:O?`Email: ${O}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),q=w?Em(N,r):ni(m),K=[];Oa(l.userIds,K);const $=w?N?.createdByUser??N?.createdBy:m;if(q&&!Z.some(C=>fr(C.value)===q)){const C=typeof $=="object"?String($.name??$.userName??[$.firstName,$.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";Z.push({value:q,label:C||"Created by user",sublabel:typeof $=="object"?String($.email??"").trim():""})}const G=h.map(C=>({value:Fa(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),I=async C=>{const F=C?.id??C?._id??null,O={...l,...ri(C),categoryName:"",roles:[],userIds:K};if(V(O,{categoryRoleIds:[]}),o({templateId:F,tatMinutes:Ie(C?.tatMinutes)}),F==null||F===""){o({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[W,J]=await Promise.all([f(We(F)).unwrap(),f(De(F)).unwrap()]),te=(Array.isArray(W?.data)?W.data:Array.isArray(W)?W:[]).map(A=>({...A,roleIds:[],role:[],roleId:null})),k=Array.isArray(J?.data)?J.data:Array.isArray(J)?J:[];o({templateId:F,tatMinutes:Ie(C?.tatMinutes),prefillWorkflowSteps:te,prefillFormFields:k})}catch(W){console.log("Failed to load template details:",W),o({templateId:F,prefillWorkflowSteps:[],prefillFormFields:[]})}},D=()=>{const C={...l,template:"",categoryType:"",tatMinutes:"",description:""};V(C),o({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},j=C=>{const F=C.target.value;if(!F){D();return}const O=G.find(W=>W.value===F)?.complaintType;if(O){I(O);return}H("template",F),H("categoryType",F)},H=(C,F)=>{const O=Array.isArray(F)?C==="userIds"?Oa(F,K):[...new Set(F.filter(J=>J!=null&&J!==""))]:F,W={...l,[C]:O};V(W,C==="roles"?{categoryRoleIds:O}:{}),u(J=>{if(!J[C])return J;const te={...J};return delete te[C],te})},E=l.visibilityType==="PRIVATE_LINK"||l.visibilityType==="PUBLIC_LINK",M=async()=>{const C={};if(l.categoryName.trim()||(C.categoryName=!0),dp(l.tatMinutes)||(C.tatMinutes=!0),l.visibilityType||(C.visibilityType=!0),l.roles.length||(C.roles=!0),E&&!l.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){u(C);return}u({});const F=Ie(l.tatMinutes),O={...l,userIds:Oa(l.userIds,K)};V(O,{tatMinutes:F,categoryRoleIds:O.roles});const W={categoryName:l.categoryName,categoryType:l.categoryType||l.template,tatMinutes:F,description:l.description,visibilityType:l.visibilityType,urlLink:E?l.urlLink:"",active:l.active,roles:O.roles},J=w?ln({id:p,data:{code:W.categoryName,name:W.categoryName,description:W.description,tatMinutes:W.tatMinutes,accessType:W.visibilityType,roleIds:W.roles.map(k=>parseInt(k,10))},onFail:k=>{console.log("updateComplaintType onFail:",k)}}):on({payload:W,onSuccess:k=>{f(lt(k?.data?.id??k?.id??null))},onFail:k=>{console.log("createComplaintType onFail:",k)}}),te=await f(J);if(w&&ln.fulfilled.match(te)||!w&&on.fulfilled.match(te)){if(!w){const k=te.payload?.data?.id??te.payload?.id;k!=null&&f(lt(k))}t.onNext?.()}};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:$e,showNextButton:!!t.showNextButton,onNext:M}),L||Object.keys(d).length>0?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:L||Tm(d,l)}):null,s.jsxs(gn,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:s.jsx("div",{className:"ca-category-type__header-tools",children:s.jsx("div",{className:"ca-category-type__template",children:s.jsx(Ia,{label:"Select Template (Optional)",value:l.template||l.categoryType,onChange:j,options:Lm(G),placeholder:"Select Template",maxVisible:5,disabled:w,className:w?"ca-select--disabled":""})})}),children:[s.jsxs("div",{className:"ca-step-section",children:[s.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["Category Name ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:l.categoryName,onChange:C=>H("categoryName",C.target.value),placeholder:"Enter category name"}),s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["TAT ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:l.tatMinutes,onChange:C=>H("tatMinutes",C.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),s.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:s.jsx(yn,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:l.description,onChange:C=>H("description",C.target.value),placeholder:"Enter description"})}),s.jsxs("div",{className:"ca-step-row",children:[s.jsx(Ia,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:l.visibilityType,onChange:C=>H("visibilityType",C.target.value),options:Nm,placeholder:"Select visibility type"}),E?s.jsx(yn,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:l.urlLink,onChange:C=>H("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),s.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:s.jsx(ur,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:R,value:l.roles,maxVisible:4,onChange:C=>H("roles",C)})}),b?s.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,g?s.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function ai({level:e,onAdd:t,disabled:n=!1}){const r=`Level ${e}`,a=e===1?"Initial Handler":e===2?"Escalation if L1 TAT exceeded":"Escalation workflow";return s.jsxs("div",{className:"ca-add-table-card",children:[s.jsxs("header",{className:"ca-add-table-card__header",children:[s.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),s.jsxs("div",{className:"ca-add-table-card__header-text",children:[s.jsx("h3",{className:"ca-add-table-card__title",children:r}),s.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),s.jsx("div",{className:"ca-add-table-card__action",children:s.jsxs(ye,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const Da=["Yes","No"],xt=()=>s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function si({name:e,level:t,value:n,initialFormValues:r,setFormValues:a,onChange:o,selected:l=!1,onSelect:i,onDelete:c,subtitle:d,roleList:u=[],showRoleError:f=!1,showEscalationError:p=!1,userList:w=[],fieldErrors:S={}}){const m=n??r??{},h=Array.isArray(m.role)?m.role:[],g=Array.isArray(m.users)?m.users:[],b=m.workflowType==="user"?"user":"role",L=u.map(I=>({value:I.id??I.roleId??I.value,label:I.name??I.roleName??I.label})).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),N=I=>{const D=[I?.firstName,I?.lastName].map(E=>String(E??"").trim()).filter(Boolean).join(" "),j=String(I?.name??I?.userName??I?.label??"").trim()||D,H=[I?.roleName,I?.role?.name,typeof I?.role=="string"?I.role:"",...Array.isArray(I?.roles)?I.roles.map(E=>typeof E=="string"?E:E?.name):[]].map(E=>String(E??"").trim()).filter(Boolean).filter((E,M,C)=>C.indexOf(E)===M).join(", ");return{userName:j,roleName:H,email:String(I?.email??I?.userEmail??"").trim()}},x=w.map(I=>{const{userName:D,roleName:j,email:H}=N(I);return{value:I.id??I.userId??I.user_id??I.value,label:D,sublabel:H,title:H?`Email: ${H}`:"",searchText:j}}).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),T=(I,D)=>{const j={...m,[I]:D};a?a(j):o?.(j)},V=h.length===0&&g.length===0,R=(f||!!S.role)&&V,Z=I=>I?"ca-control--invalid":"",q=t===1?"green":t===2?"orange":"blue",K=I=>`workflow-level-${t}-${I}`,$=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),G=[{value:"role",label:"Role",count:h.length},{value:"user",label:"User",count:g.length}];return s.jsxs("article",{className:`ca-table-card ca-table-card--${q}${l?" ca-table-card--selected":""}`,onClick:i,children:[s.jsxs("header",{className:"ca-table-card__header",children:[s.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),s.jsxs("div",{className:"ca-table-card__header-text",children:[s.jsx("h3",{className:"ca-table-card__title",children:e}),s.jsx("p",{className:"ca-table-card__subtitle",children:$})]}),s.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:I=>{I.stopPropagation(),c?.()},children:s.jsx(er,{size:15,color:"currentColor"})})]}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsxs("div",{className:"ca-table-card__fields",children:[s.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:G.map(I=>s.jsxs("button",{type:"button",className:`ca-type-toggle__btn${b===I.value?" ca-type-toggle__btn--active":""}`,onClick:D=>{D.stopPropagation(),b!==I.value&&T("workflowType",I.value)},children:[I.label,I.count?` (${I.count})`:""]},I.value))}),b==="role"?s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Roles",s.jsx(xt,{})]}),htmlFor:K("roleIds"),children:s.jsx(ur,{id:K("role"),value:h,options:L,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:R,onChange:I=>T("role",I)},"role")}):s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Users",s.jsx(xt,{})]}),htmlFor:K("userIds"),children:s.jsx(ur,{id:K("user"),value:g,options:x,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:R,onChange:I=>T("users",I)},"user")}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Resolve ",s.jsx(s.Fragment,{children:"(Change the Status)"}),s.jsx(xt,{})]}),htmlFor:K("canResolve"),children:s.jsx(Ke,{id:K("canResolve"),className:Z(S.canResolve),value:m.canResolve,options:Da,onChange:I=>T("canResolve",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Reassign ",s.jsx(s.Fragment,{children:"(Change the Level)"}),s.jsx(xt,{})]}),htmlFor:K("canReassign"),children:s.jsx(Ke,{id:K("canReassign"),className:Z(S.canReassign),value:t===1?"No":m.canReassign,options:t===1?["No"]:Da,disabled:t===1,onChange:I=>T("canReassign",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Final Level",s.jsx(s.Fragment,{children:"(can be resolved or closed the complaint)"}),s.jsx(xt,{})]}),htmlFor:K("finalLevel"),children:s.jsx(Ke,{id:K("finalLevel"),className:Z(S.finalLevel),value:m.finalLevel,options:Da,onChange:I=>T("finalLevel",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Escalation time",s.jsx(xt,{})]}),htmlFor:K("escalationTime"),children:s.jsx("div",{className:"ca-table-card__time-input",children:s.jsx(Ot,{id:K("escalationTime"),type:"text",className:Z(p||S.escalation),value:m.escalateAfterMinutes??"",placeholder:"--",onChange:I=>T("escalateAfterMinutes",I.target.value)})})})]})]})}function oi({open:e,title:t,children:n,primaryLabel:r="Save",onPrimary:a,secondaryLabel:o="Cancel",onSecondary:l,primaryDisabled:i=!1}){return e?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?s.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,n,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[o?s.jsx(ye,{variant:"outline",onClick:l,children:o}):null,s.jsx(ye,{onClick:a,disabled:i,children:r})]})]})}):null}function li({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?s.jsx(oi,{open:!0,title:`Final Level is set to Yes at Level ${t}. You can't create a next level here, and every level after Level ${t} will be deleted. Do you want to continue?`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:"Cancel",onSecondary:a}):e==="finalLevelRequired"?s.jsx(oi,{open:!0,title:`Level ${t} is the last level. "Final Level" must be Yes. Click Ok to set it to Yes.`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:null}):null:null}function Ma(e,t=0){const n=o=>!String(o??"").trim(),r=!(Array.isArray(e?.role)&&e.role.length),a=!(Array.isArray(e?.users)&&e.users.length);return{role:r&&a,canResolve:n(e?.canResolve),canReassign:t>0&&n(e?.canReassign),finalLevel:n(e?.finalLevel),escalation:n(e?.escalateAfterMinutes)}}const Fm="data:image/svg+xml,%3csvg%20width='31'%20height='57'%20viewBox='0%200%2031%2057'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M0.50001%200.000227733C0.223869%200.000226605%209.85899e-06%200.224084%208.79418e-06%200.500226C7.72665e-06%200.776369%200.223865%201.00023%200.500009%201.00023L0.50001%200.500227L0.50001%200.000227733ZM15%200.500275L15%201.00028L15%200.500275ZM27%2012.5003L27.5%2012.5003L27%2012.5003ZM26.6464%2056.8527C26.8417%2057.048%2027.1582%2057.048%2027.3535%2056.8527L30.5355%2053.6707C30.7307%2053.4755%2030.7307%2053.1589%2030.5355%2052.9636C30.3402%2052.7683%2030.0236%2052.7683%2029.8284%2052.9636L26.9999%2055.792L24.1715%2052.9636C23.9763%2052.7683%2023.6597%2052.7683%2023.4644%2052.9636C23.2692%2053.1589%2023.2692%2053.4754%2023.4644%2053.6707L26.6464%2056.8527ZM0.50001%200.500227L0.500009%201.00023L15%201.00028L15%200.500275L15%200.000275583L0.50001%200.000227733L0.50001%200.500227ZM27%2012.5003L26.5%2012.5003L26.4999%2056.4991L26.9999%2056.4991L27.4999%2056.4991L27.5%2012.5003L27%2012.5003ZM15%200.500275L15%201.00028C21.3513%201.0003%2026.5%206.14903%2026.5%2012.5003L27%2012.5003L27.5%2012.5003C27.5%205.59674%2021.9036%200.000298399%2015%200.000275583L15%200.500275Z'%20fill='%2300BF87'/%3e%3c/svg%3e",km="data:image/svg+xml,%3csvg%20width='28'%20height='61'%20viewBox='0%200%2028%2061'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M27.0053%2057.2042C27.2006%2057.009%2027.2006%2056.6924%2027.0053%2056.4971L23.8233%2053.3152C23.6281%2053.1199%2023.3115%2053.1199%2023.1162%2053.3152C22.921%2053.5104%2022.921%2053.827%2023.1162%2054.0223L25.9447%2056.8507L23.1163%2059.6791C22.921%2059.8744%2022.921%2060.191%2023.1163%2060.3862C23.3115%2060.5815%2023.6281%2060.5815%2023.8234%2060.3862L27.0053%2057.2042ZM12.5001%2056.8508L12.5001%2057.3508V57.3508L12.5001%2056.8508ZM0.500014%2044.8508L1.33317e-05%2044.8508V44.8508L0.500014%2044.8508ZM26.6518%2056.8507L26.6518%2056.3507L12.5001%2056.3508L12.5001%2056.8508L12.5001%2057.3508L26.6518%2057.3507L26.6518%2056.8507ZM0.500014%2044.8508L1.00001%2044.8508L1.00001%20-0.000388027L0.50001%20-0.000388722L9.54624e-06%20-0.000389416L1.33317e-05%2044.8508L0.500014%2044.8508ZM12.5001%2056.8508L12.5001%2056.3508C6.14877%2056.3508%201.00001%2051.2021%201.00001%2044.8508L0.500014%2044.8508L1.33317e-05%2044.8508C1.43871e-05%2051.7544%205.59649%2057.3508%2012.5001%2057.3508L12.5001%2056.8508Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",Om="data:image/svg+xml,%3csvg%20width='57'%20height='31'%20viewBox='0%200%2057%2031'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M56.9989%200.500133C56.9989%200.223991%2056.7751%200.000131942%2056.4989%200.00013087C56.2228%200.000129795%2055.9989%200.223987%2055.9989%200.500131L56.4989%200.500132L56.9989%200.500133ZM56.4989%2015.0002L55.9989%2015.0002L56.4989%2015.0002ZM44.4989%2027.0001L44.4988%2027.5001L44.4989%2027.0001ZM0.146456%2026.6465C-0.0488074%2026.8418%20-0.0488086%2027.1584%200.146455%2027.3536L3.32843%2030.5356C3.52369%2030.7309%203.84027%2030.7309%204.03554%2030.5356C4.2308%2030.3403%204.2308%2030.0238%204.03554%2029.8285L1.20712%2027.0001L4.03555%2024.1716C4.23081%2023.9764%204.23081%2023.6598%204.03555%2023.4645C3.84029%2023.2693%203.5237%2023.2693%203.32844%2023.4645L0.146456%2026.6465ZM56.4989%200.500132L55.9989%200.500131L55.9989%2015.0002L56.4989%2015.0002L56.9989%2015.0002L56.9989%200.500133L56.4989%200.500132ZM44.4989%2027.0001L44.4989%2026.5001L0.500009%2026.5001L0.500008%2027.0001L0.500007%2027.5001L44.4988%2027.5001L44.4989%2027.0001ZM56.4989%2015.0002L55.9989%2015.0002C55.9988%2021.3514%2050.8501%2026.5001%2044.4989%2026.5001L44.4989%2027.0001L44.4988%2027.5001C51.4024%2027.5001%2056.9988%2021.9037%2056.9989%2015.0002L56.4989%2015.0002Z'%20fill='%2300BF87'/%3e%3c/svg%3e",Dm="data:image/svg+xml,%3csvg%20width='61'%20height='28'%20viewBox='0%200%2061%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.32848%2027.0049C3.52374%2027.2002%203.84032%2027.2002%204.03559%2027.0049L7.21755%2023.8229C7.41281%2023.6277%207.4128%2023.3111%207.21754%2023.1158C7.02228%2022.9206%206.70569%2022.9206%206.51043%2023.1158L3.68203%2025.9443L0.85358%2023.1159C0.658316%2022.9206%200.341733%2022.9206%200.146472%2023.1159C-0.0487878%2023.3111%20-0.0487864%2023.6277%200.146478%2023.823L3.32848%2027.0049ZM3.68194%2012.4997L3.18194%2012.4997V12.4997L3.68194%2012.4997ZM15.6819%200.499617L15.6819%20-0.000382774V-0.000382774L15.6819%200.499617ZM3.68203%2026.6514L4.18203%2026.6514L4.18194%2012.4997L3.68194%2012.4997L3.18194%2012.4997L3.18203%2026.6514L3.68203%2026.6514ZM15.6819%200.499617L15.6819%200.999618L60.5331%200.999616L60.5331%200.499615L60.5331%20-0.000385315L15.6819%20-0.000382774L15.6819%200.499617ZM3.68194%2012.4997L4.18194%2012.4997C4.1819%206.14838%209.33063%200.999618%2015.6819%200.999618L15.6819%200.499617L15.6819%20-0.000382774C8.77834%20-0.00038191%203.18189%205.5961%203.18194%2012.4997L3.68194%2012.4997Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",xa=(e,t,n={})=>({id:e,name:t,role:Array.isArray(n.role)?n.role:n.roleId!==void 0&&n.roleId!==null?[n.roleId]:[],users:Array.isArray(n.users)?n.users:[],workflowType:n.workflowType??"role",canResolve:n.canResolve??"",canReassign:n.canReassign??(Number(e)===1?"No":""),finalLevel:n.finalLevel??"",escalateAfterMinutes:At(n.escalateAfterMinutes)||""});function Pa(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"?"Yes":e===!1||e==="No"||e==="false"||e===0||e==="0"?"No":e??""}function Mm(e,t){const n=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(n.find(i=>i.length)??n[0]??[]).map(i=>i&&typeof i=="object"?i.id??i.roleId:i).filter(i=>i!=null),o=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(i=>i&&typeof i=="object"?i.userId??i.id:i).filter(i=>i!=null),l=a.length>0?"role":o.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return xa(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:o,workflowType:l,canResolve:Pa(e.canResolve),canReassign:t===0?"No":Pa(e.canReassign),finalLevel:Pa(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:At(e.escalateAfterMinutes)||""})}function ii(e=[]){return(Array.isArray(e)?e:[]).map(Mm)}function ci(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(n=>n&&typeof n=="object"):[])}const Ua=[xa(1,"Level 1")];function di({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Fm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:km,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function ui({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Om,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:Dm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function fi({id:e,selectedTableId:t,onSelect:n,setUpdatePayload:r,registerWorkflowActions:a,roleList:o=[],prefillSteps:l=[],tatTotalMinutes:i=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:u=!1,userList:f=[],onAddBlocked:p}){const w=e!=null,[,S]=y.useState(Ua),[m,h]=y.useState(Ua),[g,b]=y.useState([]),[L,N]=y.useState(w),[x,T]=y.useState(null),[V,R]=y.useState(i),Z=y.useRef(null),q=y.useRef(i),K=y.useRef(new Set),[$,G]=y.useState([]),[I,D]=y.useState(null),j=Q.useDispatch(),H=y.useMemo(()=>{const k=ii(l);return k.length?k:Ua},[l]),E=(()=>{const k=new Set;return[...o,...g,...ci(l)].filter(A=>{const _=String(A?.id??A?.roleId??A?.value);return k.has(_)?!1:(k.add(_),!0)})})();if(!w&&x!==H){const k=Et(H,i);T(H),h(k),S(k)}if(!L&&V!==i){R(i);const k=Et(m,i);k!==m&&h(k)}y.useEffect(()=>{q.current=i},[i]),y.useEffect(()=>{if(!w){const _=Et(H,q.current);r({id:e,tables:_});return}let k=!1;return(async()=>{N(!0);try{const _=await j(We(e)).unwrap(),z=Array.isArray(_?.data)?_.data:Array.isArray(_)?_:[];b(ci(z));const X=ii(z),ae=Et(X.length?X:H,q.current);k||(S(ae),h(ae),r({id:e,tables:ae}))}catch(_){if(!k){const z=Et(H,q.current);S(z),h(z),r({id:e,tables:z}),console.error("Failed to load workflow steps:",_)}}finally{k||N(!1)}})(),()=>{k=!0}},[j,H,w,e,r]),y.useEffect(()=>{L||r?.({id:e,tables:m})},[e,L,r,m]);const M=y.useCallback((k,{preserveLastLevel:A}={})=>{const _=k.map((ae,ue)=>ue===0?{...ae,canReassign:"No"}:ae),z=A?_:Et(_,i),X={id:e,tables:z};return h(z),console.log("[TableCardGrid] updated form values:",z),console.log("[TableCardGrid] PUT payload:",X),r?.(X),X},[e,r,i]);y.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!m.length)return null;const k=m.length-1,A=m.map((_,z)=>z===k?{..._,finalLevel:"Yes"}:_);return M(A,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,m,i,M]);const C=k=>{const A=m[m.length-1];return A!=null&&A.id===k},F=(k,A)=>{Object.prototype.hasOwnProperty.call(A,"escalateAfterMinutes")&&K.current.add(k),M(m.map(_=>_.id===k?{..._,...A}:_),{preserveLastLevel:C(k)})},O=(k,A)=>{const _=m.findIndex(ae=>ae.id===k);if(_<0)return;const z=m[_],X=typeof A=="function"?A(z):A;if(X.escalateAfterMinutes!==z.escalateAfterMinutes&&K.current.add(k),_<m.length-1&&z.finalLevel!=="Yes"&&X.finalLevel==="Yes"){D({tableId:k,value:X});return}M(m.map((ae,ue)=>ue===_?X:ae),{preserveLastLevel:C(k)})},W=()=>{if(!I)return;const k=m.findIndex(_=>_.id===I.tableId);if(k<0){D(null);return}const A=m.slice(0,k+1).map((_,z)=>z===k?I.value:_);G(_=>_.filter(z=>A.some(X=>X.id===z))),M(A),D(null)},J=k=>{if(m.some(fe=>fe.finalLevel==="Yes"))return;const A=m[m.length-1];if(A){const fe=Ma(A,m.length-1);if(Object.values(fe).some(Boolean)){G(pe=>pe.includes(A.id)?pe:[...pe,A.id]),p?.(`Please fill all required fields of Level ${m.length} before adding a new level.`);return}}p?.("");const _=m.reduce((fe,pe)=>Math.max(fe,Number(pe.id)||0),0)+1,z=m.length+1,X=m[m.length-1],ue=X!=null&&K.current.has(X.id)&&Ie(X.escalateAfterMinutes)>0?m:pp(m);K.current.delete(_),M([...ue,xa(_,k||`Level ${z}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const fe=Z.current;fe&&fe.scrollTo({left:fe.scrollWidth,behavior:"smooth"})})})},te=k=>{K.current.delete(k),M(m.filter(A=>A.id!==k))};return L&&!m.length?null:s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:Z,children:s.jsxs("div",{className:"ca-table-card-grid__track",children:[m.map((k,A)=>s.jsxs(y.Fragment,{children:[s.jsx(si,{name:k.name,roleList:E,showRoleError:c||u,showEscalationError:d,userList:f,level:A+1,value:k,initialFormValues:k,setFormValues:_=>O(k.id,_),selected:k.id===t,onSelect:()=>n?.(k),onDelete:()=>te(k.id),onChange:_=>F(k.id,_),fieldErrors:u||$.includes(k.id)?Ma(k,A):{}}),A<m.length-1?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:A===0?"green":A===1?"orange":"purple"}),s.jsx(ui,{accent:A===0?"green":A===1?"orange":"purple"})]}):null]},k.id)),m.length?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:m.length===1?"green":m.length===2?"orange":"purple"}),s.jsx(ui,{accent:m.length===1?"green":m.length===2?"orange":"purple"})]}):null,s.jsx(ai,{level:m.length+1,onAdd:J,disabled:m.some(k=>k.finalLevel==="Yes")})]})}),s.jsx(li,{variant:"finalLevelDelete",levelNo:I?m.findIndex(k=>k.id===I.tableId)+1:null,open:!!I,onConfirm:W,onClose:()=>D(null)})]})}function xm({totalMinutes:e=0,usedMinutes:t=0}){const n=Ie(e),r=Ie(t),a=Math.max(0,n-r),o=At(a)||"0m",l=n>0?Math.min(100,r/n*100):0;return s.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${o} left`,children:[s.jsxs("div",{className:"ca-tat-progress__row",children:[s.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),s.jsxs("span",{className:"ca-tat-progress__remaining",children:[o," left"]})]}),s.jsx("div",{className:"ca-tat-progress__track",children:s.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${l}%`}})})]})}function pi(e){return e?.data??e?.id??e}function hi(e){const t=e&&typeof e=="object"?e.id??e.roleId??e.role_id??e.value:e;return t==null||t===""?null:String(t)}function mi(e){return String(e??"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Pm(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles,e?.userRoles].flatMap(n=>Array.isArray(n)?n:[n]).flatMap(n=>[hi(n),hi(n?.role)]).filter(Boolean)}function Um(e){const t=[e?.role,e?.roles,e?.assignedRoles,e?.userRoles].flatMap(r=>Array.isArray(r)?r:[r]);return[e?.roleName,e?.role_name,...t.flatMap(r=>typeof r=="string"?[r]:[r?.name,r?.roleName,r?.label,r?.role?.name,r?.role?.roleName])].filter(Boolean).map(mi).filter(Boolean)}function $m({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:o=[]}){const{state:l,updateWorkflow:i}=dr(),{workflow:c}=l,d=l.categoryRoleIds,u=y.useMemo(()=>{const M=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));return M.size?a.filter(C=>!M.has(String(C.id??C.roleId??C.value))):a},[d,a]),f=y.useMemo(()=>{const M=new Set((Array.isArray(d)?d:[]).filter(F=>F!=null&&F!=="").map(String));if(!M.size)return o;const C=new Set(a.filter(F=>M.has(String(F.id??F.roleId??F.value))).map(F=>mi(F.name??F.roleName??F.label)).filter(Boolean));return o.filter(F=>!Pm(F).some(O=>M.has(O))&&!Um(F).some(O=>C.has(O)))},[d,a,o]),[p,w]=y.useState(null),[S,m]=y.useState(""),[h,g]=y.useState(!1),[b,L]=y.useState(null),N=y.useRef(null),x=y.useCallback(M=>{w(M),m("")},[]),T=y.useCallback(M=>{N.current=M},[]),V=Q.useDispatch();let{id:R}=Q.useSelector(M=>M.appDetails||{});const Z=Q.useSelector(M=>M.complaintType?.selected),q=pi(R),K=pi(Z?.id??Z?._id),$=Ie(Z?.tatMinutes??l.tatMinutes);y.useEffect(()=>{q==null||q===""||K!=null&&String(K)===String(q)&&Z?.tatMinutes!=null||V(Xe(q))},[V,Z?.tatMinutes,K,q]);const G=y.useMemo(()=>{const M=Array.isArray(p?.tables)?p.tables:[];return fp(M)},[p]),I=r??c.selectedTableCard??null,D=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((M,C)=>`L${C+1}`).join(" > "):"",j=M=>{V(Yn({id:M.id,tables:M,onSuccess:C=>{console.log("updateWorkflowSteps onSuccess:",C),m(""),n.onNext?.()},onFail:C=>{const F=C?.response?.data??C?.payload??C,O=[...new Set(Array.isArray(F?.errors)?F.errors.map(te=>te?.message).filter(Boolean):[])],W=(O.length?O.join(" "):null)??F?.message??F?.error??C?.message??"Failed to update workflow steps",J=String(W).replace(/roleIds must contain at least 1 elements?/gi,"Please select at least one role or user in every level.").replace(/userAssignments must contain at least 1 elements?/gi,"Please select at least one role or user in every level.");m(up(J))}}))},H=async()=>{if(m(""),!p){m("Workflow steps are not ready to save.");return}const M=Array.isArray(p.tables)?p.tables:[];if(!M.length){m("Add at least one workflow level before continuing.");return}g(!0);const C=M.map((W,J)=>Ma(W,J)),F=M.length-1;if(C.some((W,J)=>Object.entries(W).some(([te,k])=>k&&!(J===F&&te==="finalLevel")))){m("Please complete all required fields in every workflow level.");return}if(M[F].finalLevel!=="Yes"){L(F+1);return}j(p)},E=()=>{const M=N.current?.setLastLevelFinal?.();if(L(null),!M){m("Unable to update the final workflow level. Please try again.");return}g(!0),j(M)};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:$e,onNext:H,showNextButton:!0}),S?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:S}):null,s.jsx(li,{variant:"finalLevelRequired",levelNo:b,open:b!=null,onConfirm:E,onClose:()=>L(null)}),s.jsx(gn,{title:t.title,description:D,showNext:!1,headerExtra:s.jsx(xm,{totalMinutes:$,usedMinutes:G}),children:s.jsx("div",{className:"ca-workflow__main",children:s.jsx(fi,{id:R,selectedTableId:I?.id,onSelect:M=>i({selectedTableCard:M}),setUpdatePayload:x,registerWorkflowActions:T,roleList:u,userList:f,onAddBlocked:m,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(S),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(S),showRequiredErrors:h,prefillSteps:l.prefillWorkflowSteps,tatTotalMinutes:$})})})]})}function gi({onAdd:e,disabled:t=!1}){return s.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const yi=y.createContext(null);function $a(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function bi(e,t){const n=$a(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function tt(){const e=y.useContext(yi);return{storeName:$a(e),label:t=>bi(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?$a(e):bi(t.fieldLabel??t.label??t.fieldName??"",e)}}}function Si({size:e=16,color:t="#9CA3AF",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...n,children:[s.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}function Ba(e,t){return!t||e.includes(t)?e:[t,...e]}function vi(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}const Bm="#9CA3AF";function wi({field:e,fieldOptions:t=[],fieldTypeOptions:n=[],fieldAccessOptions:r=[],hideForOptions:a=[],isSaving:o=!1,selected:l=!1,isDragging:i=!1,onSelect:c,onDragStartField:d,onDragEndField:u,onReorder:f,onChange:p,onDelete:w,onSave:S,cardRef:m,onOptionNotice:h,hasDuplicateIdentity:g=!1,hasMissingOptions:b=!1}){const[L,N]=y.useState(""),[x,T]=y.useState(null),V=y.useRef(!1),{label:R,fieldLabel:Z}=tt(),q=vi(e),[K,$]=y.useState(()=>({id:e.id,signature:e.isNew?null:q}));K.id!==e.id&&$({id:e.id,signature:e.isNew?null:q});const G=e.lockMode==="all",I=Ue(e),D=G||e.lockMode==="options",j=Hl(e),H=G||!j||I,E=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),M=K.signature!==q,C=!!o||!E,F=g||b?"ca-control--invalid":"",O=_=>p?.({...e,..._}),W=()=>{if(H)return;const _=L.trim();if(!_)return;if(re(e)&&et(_)){const X=(e.options||[]).find(ae=>String(ae).trim().toLowerCase()===_.toLowerCase());if(X){h?.(`${X} already exists in options`),N("");return}}if(e.options?.includes(_))return;const z=re(e)?{...e.optionColors||{},[_]:e.optionColors?.[_]||Bm}:e.optionColors;O({options:re(e)?mn([...e.options||[],_]):[...e.options||[],_],...re(e)?{optionColors:z}:{}}),N("")},J=_=>{if(H||re(e)&&et(_))return;const z={...e.optionColors||{}};delete z[_];const X={...e.parentMappings||{}};delete X[_],O({options:e.options.filter(ae=>ae!==_),parentMappings:X,...re(e)?{optionColors:z}:{}})},te=_=>{H||re(e)&&et(_)||(V.current=!1,T({original:_,draft:_}))},k=()=>{V.current=!0,T(null)},A=()=>{if(V.current){V.current=!1;return}if(!x)return;const{original:_,draft:z}=x,X=z.trim();if(T(null),!X||X===_)return;if((e.options||[]).some(he=>he!==_&&(he===X||re(e)&&String(he).trim().toLowerCase()===X.toLowerCase()))){h?.(`${X} already exists in options`);return}const ue=(e.options||[]).map(he=>he===_?X:he),fe={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(fe,_)&&(fe[X]=fe[_],delete fe[_]);const pe={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(pe,_)&&(pe[X]=pe[_],delete pe[_]),O({options:re(e)?mn(ue):ue,parentMappings:fe,optionColors:pe})};return s.jsxs("article",{ref:m,className:`ca-form-card${l?" ca-form-card--selected":""}${i?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:_=>{I||(_.preventDefault(),_.dataTransfer.dropEffect="move")},onDrop:_=>{if(I){u?.();return}_.preventDefault();const z=_.dataTransfer.getData("text/plain");f?.(z,e.id),u?.()},children:[s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--order",children:[I?s.jsx("span",{"aria-hidden":"true",style:{display:"inline-block",width:15,height:15}}):s.jsx("span",{className:"ca-form-card__drag",draggable:!0,"aria-label":"Reorder field",onClick:_=>_.stopPropagation(),onDragStart:_=>{_.dataTransfer.setData("text/plain",String(e.id)),_.dataTransfer.effectAllowed="move",d?.()},onDragEnd:()=>u?.(),children:s.jsx(Si,{size:15,color:"currentColor"})}),s.jsxs("div",{className:"ca-form-card__actions",children:[s.jsx("button",{type:"button",className:"ca-form-card__save","aria-label":"Save form field",disabled:C||G||!M,onClick:async _=>{if(_.stopPropagation(),C||G||!M)return;const z=await S?.(e);z&&$({id:e.id,signature:vi(z)})},children:"Save"}),Ue(e)?null:s.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:_=>{_.stopPropagation(),w?.(e.id)},children:s.jsx(er,{size:15,color:"currentColor"})})]})]}),s.jsx("div",{className:"ca-form-card__row",children:D?s.jsx("span",{className:"ca-form-card__static",children:Z(e)||"—"}):s.jsx(Ot,{value:G?Z(e):e.fieldLabel,placeholder:"Enter field label",disabled:D,className:F,onChange:_=>O({fieldLabel:_.target.value})})}),s.jsx("div",{className:"ca-form-card__row",children:D?s.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):s.jsx(Ke,{value:e.fieldType,options:Ba(n,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:D,className:F,onChange:_=>{const z=_.target.value;if(Hl({...e,fieldType:z})){O({fieldType:z,dependsOn:"",parentMappings:{}});return}O({fieldType:z,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),s.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:s.jsx(Rn,{checked:!!e.required,disabled:D,onChange:_=>O({required:_}),"aria-label":"Required"})}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.fieldAccess,options:Ba(r,e.fieldAccess),placeholder:"Select access",disabled:D,allowClear:!0,onChange:_=>O({fieldAccess:_.target.value})})}),s.jsxs("div",{className:"ca-form-card__row",children:[s.jsx(Ke,{value:"",options:a.filter(_=>!e.hideFor?.includes(_)),placeholder:"Select level",disabled:D,onChange:_=>O({hideFor:[...e.hideFor||[],_.target.value]})}),e.hideFor?.length?s.jsx("div",{className:"ca-form-card__chips",children:e.hideFor.map(_=>s.jsxs("span",{className:"ca-form-card__chip",children:[_,s.jsx("button",{type:"button","aria-label":`Remove ${_}`,disabled:D,onClick:()=>O({hideFor:e.hideFor.filter(z=>z!==_)}),children:"×"})]},_))}):null]}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.dependsOn,options:Ba(t,e.dependsOn).map(_=>({value:_,label:R(_)})),placeholder:"Select field label",disabled:D||!j,allowClear:!0,onChange:_=>{const z=_.target.value;if(!z){O({dependsOn:"",parentMappings:{}});return}O({dependsOn:z})}})}),s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--options",children:[s.jsxs("div",{className:"ca-form-card__option-entry",children:[s.jsx(Ot,{value:L,placeholder:"Enter option",disabled:H,className:b?"ca-control--invalid":"",onChange:_=>N(_.target.value),onKeyDown:_=>{_.key==="Enter"&&(_.preventDefault(),W())}}),s.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:H,onClick:W,children:"+"})]}),s.jsx("div",{className:"ca-form-card__chips",children:(j?re(e)?mn(e.options||[]):e.options||[]:[]).map(_=>{const z=re(e)&&et(_),X=x?.original===_;return s.jsxs("span",{className:`ca-form-card__chip${z?" ca-form-card__chip--locked":""}`,children:[X?s.jsx("input",{autoFocus:!0,value:x.draft,onChange:ae=>T({original:_,draft:ae.target.value}),onBlur:A,onClick:ae=>ae.stopPropagation(),onKeyDown:ae=>{ae.key==="Enter"?(ae.preventDefault(),A()):ae.key==="Escape"&&(ae.preventDefault(),k())},"aria-label":`Edit ${_}`,style:{width:`${Math.max(x.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):s.jsx("span",{role:z||H?void 0:"button",tabIndex:z||H?void 0:0,title:z||H?void 0:"Click to edit",style:z||H?void 0:{cursor:"text"},onClick:()=>te(_),onKeyDown:ae=>{ae.key==="Enter"&&te(_)},children:re(e)?or(_):_}),z?null:s.jsx("button",{type:"button","aria-label":`Remove ${_}`,disabled:H,onClick:()=>J(_),children:"×"})]},_)})})]})]})}function ja({option:e,onDelete:t,locked:n=!1}){return s.jsx("td",{children:n?null:s.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:s.jsx(om,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function jm(e){const t=String(e||"").trim();return/^#[0-9A-Fa-f]{6}$/.test(t)?t.toUpperCase():/^#[0-9A-Fa-f]{3}$/.test(t)?`#${t[1]}${t[1]}${t[2]}${t[2]}${t[3]}${t[3]}`.toUpperCase():"#000000"}function qm({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,{fieldLabel:a}=tt(),o=N=>re(r)?or(N):N,l=re(r)?r:null,i=y.useMemo(()=>{const N=String(r?.dependsOn||"").trim();if(!N)return null;const x=e.filter(T=>String(T.fieldLabel||"").trim()===N);return x.find(T=>(T.options||[]).some(V=>String(V||"").trim()))||x[0]||null},[r?.dependsOn,e]),c=i?.options||[],d=!!r?.dependsOn,[u,f]=y.useState(!1),p=(N,x)=>{if(!l)return;const T=/^#[0-9A-Fa-f]{6}$/.test(x)?x.toUpperCase():x;n?.(e.map(V=>V.id===l.id?{...V,optionColors:{...V.optionColors,[N]:T}}:V))},w=(N,x)=>{r&&n?.(e.map(T=>T.id===r.id?{...T,parentMappings:{...T.parentMappings||{},[N]:x}}:T))},S=N=>{if(!r||re(r)&&et(N))return;const x={...r.optionColors||{}};delete x[N];const T={...r.parentMappings||{}};delete T[N],n?.(e.map(V=>V.id===r.id?{...V,options:(V.options||[]).filter(R=>R!==N),parentMappings:T,...re(V)?{optionColors:x}:{}}:V))},m=r&&a(r)||"Select field",h=gm(r,d),g=re(r)?mn(r?.options||[]):r?.options||[],b=(N,x)=>s.jsx("div",{className:"field-options-panel__table-wrap",children:s.jsxs("table",{className:"field-options-panel__table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[N.map(T=>s.jsx("th",{scope:"col",children:T},T)),s.jsx("th",{scope:"col","aria-label":"Delete"})]})}),s.jsx("tbody",{children:x})]})});let L=s.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return d?L=g.length?b(["Option label",i?a(i):"Parent"],g.map(N=>s.jsxs("tr",{children:[s.jsx("td",{children:o(N)}),s.jsx("td",{children:s.jsxs("select",{"aria-label":`Parent for ${N}`,value:r.parentMappings?.[N]||"",disabled:!c.length,onChange:x=>w(N,x.target.value),children:[s.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),c.map(x=>s.jsx("option",{value:x,children:x},x))]})}),s.jsx(ja,{option:N,onDelete:S,locked:re(r)&&et(N)})]},N))):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):l?L=g.length?b([re(l)?"Status":"Option","Colors"],g.map(N=>{const x=jm(l.optionColors?.[N]);return s.jsxs("tr",{children:[s.jsx("td",{children:o(N)}),s.jsx("td",{children:s.jsxs("div",{className:"field-options-panel__color",children:[s.jsx("input",{className:"field-options-panel__hex","aria-label":`Color for ${N}`,value:l.optionColors?.[N]||x,onChange:T=>p(N,T.target.value)}),s.jsx("label",{className:"field-options-panel__swatch",style:{background:x},title:x,children:s.jsx("input",{type:"color","aria-label":`Pick color for ${N}`,value:x,onChange:T=>p(N,T.target.value)})})]})}),s.jsx(ja,{option:N,onDelete:S,locked:re(l)&&et(N)})]},N)})):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):g.length&&(L=b([mm(r)],g.map(N=>s.jsxs("tr",{children:[s.jsx("td",{children:o(N)}),s.jsx(ja,{option:N,onDelete:S,locked:re(r)&&et(N)})]},N)))),s.jsxs("aside",{className:`field-options-panel${u?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${m}`,children:[s.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":u,"aria-controls":"field-options-panel-body",onClick:()=>f(N=>!N),children:[s.jsxs("span",{className:"field-options-panel__summary-text",children:[s.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",m]}),h?s.jsx("span",{className:"field-options-panel__description",children:h}):null]}),s.jsx(pn,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:L})]})}function Vm(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||re(a))return;const o=String(a.fieldLabel||a.label||"").trim();if(!o)return;const l=o.toLowerCase();n.has(l)||!(a?.options||[]).some(c=>String(c||"").trim())||(n.add(l),r.push(o))}),r}const Wm=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function zm(e,t){return{...e,id:e.id??`${Date.now()}-${t}`,order:t+1,fieldLabel:e.fieldLabel??e.name??"",fieldType:e.fieldType??e.typeLabel??"Custom",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:e.hideFor??[],dependsOn:e.dependsOn??"",options:e.options??[],parentMappings:e.parentMappings??{},optionColors:e.optionColors??{},lockMode:e.lockMode,isNew:!!e.isNew}}function Pt(e=[]){const t=e.map(zm);return t.map(n=>cr(n,t))}function Ci({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:o=[],onSave:l,onDelete:i}){const[c,d]=y.useState(()=>Pt(e??[])),[u,f]=y.useState(null),[p,w]=y.useState(null),[S,m]=y.useState(""),h=y.useRef(""),g=y.useRef(null),b=y.useRef({}),L=D=>{const j=Pt(D);d(j),t?.(j)},N=(e??[]).map(D=>D.id).join(",");y.useEffect(()=>{if(!S)return;const D=window.setTimeout(()=>m(""),3200);return()=>window.clearTimeout(D)},[S]),y.useEffect(()=>{!N||N===h.current||(h.current=N,d(Pt(e)))},[N,e]),y.useEffect(()=>{if(n)return n.current=D=>{D&&d(j=>{const H=j.find(C=>lr(D,[C]));if(ir(j)||H)return H&&f(H.id),j;if(Dt(j))return j;const E=Pt([...j,{...D,id:`${D.id}-${Date.now()}`,isNew:!0}]),M=E[E.length-1];return f(M.id),t?.(E),E})},()=>{n.current=null}},[n,t]),y.useEffect(()=>{if(u==null)return;const D=g.current,j=b.current[u];if(!D||!j)return;const H=requestAnimationFrame(()=>{const E=D.getBoundingClientRect(),M=j.getBoundingClientRect(),C=12;M.left>=E.left+C&&M.right<=E.right-C||D.scrollTo({left:D.scrollLeft+M.left-E.left-(E.width-M.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(H)},[u,c]);const x=(D,j)=>{if(D==null||j==null||String(D)===String(j))return;const H=c.findIndex(O=>String(O.id)===String(D)),E=c.findIndex(O=>String(O.id)===String(j));if(H<0||E<0||Ue(c[H])||Ue(c[E]))return;const M=c.findIndex(Ue),C=[...c],[F]=C.splice(H,1);if(C.splice(E,0,F),M>=0){const O=C.findIndex(Ue);if(O!==M){const[W]=C.splice(O,1);C.splice(M,0,W)}}L(C.map((O,W)=>({...O,order:W+1})))},T=D=>{const j=c.find(J=>J.id===D.id),H=j&&j.fieldType!==D.fieldType;D.dependsOn&&D.dependsOn!==j?.dependsOn&&f(D.id);const E=String(j?.fieldLabel||"").trim(),M=j?.options||[],C=D.options||[],F=M.filter(J=>!C.includes(J)),O=C.filter(J=>!M.includes(J)),W=M.length===C.length&&F.length===1&&O.length===1?{from:F[0],to:O[0]}:null;L(c.map(J=>{if(J.id===D.id)return D;if(H&&E&&String(J.dependsOn||"").trim()===E)return{...J,dependsOn:"",parentMappings:{}};if(W&&E&&String(J.dependsOn||"").trim()===E){const te=Object.fromEntries(Object.entries(J.parentMappings||{}).map(([k,A])=>[k,A===W.from?W.to:A]));return{...J,parentMappings:te}}return J}))},V=async D=>{const j=c.find(H=>H.id===D);if(!(!j||Ue(j)))try{if(await i?.(j)===!1)return;const E=String(j.fieldLabel||"").trim();L(c.filter(M=>M.id!==D).map((M,C)=>E&&String(M.dependsOn||"").trim()===E?{...M,dependsOn:"",parentMappings:{},order:C+1}:{...M,order:C+1}))}catch{}},R=()=>{ir(c)||Dt(c)||L(Pt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},Z=async D=>{if(lr(D,c))return null;try{const j=await l?.(D);return j?(d(H=>{const E=Pt(H.map(M=>M.id===D.id?{...j,isNew:!1,order:M.order||1}:M));return t?.(E),E}),j):null}catch{return null}},q=ir(c),K=Dt(c),$=q?"A field with this label and type already exists":"",G=Kl(c),I=c.find(D=>D.id===u)||null;return s.jsxs(s.Fragment,{children:[$||G||S?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:$||G||S}):null,s.jsxs("div",{className:"ca-form-card-grid__container ",children:[s.jsxs("div",{className:"ca-form-card-grid",children:[s.jsx("div",{className:"ca-form-card-grid__labels",children:Wm.map(D=>s.jsx("div",{className:"ca-form-card-grid__label",children:D},D))}),s.jsxs("div",{className:"ca-form-card-grid__cards",ref:g,children:[c.map(D=>s.jsx(wi,{field:D,fieldOptions:Vm(D,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:o,selected:I?.id===D.id,isDragging:String(p)===String(D.id),cardRef:j=>{j?b.current[D.id]=j:delete b.current[D.id]},onSelect:()=>f(D.id),onDragStartField:()=>w(D.id),onDragEndField:()=>w(null),onReorder:x,onChange:T,onDelete:V,onSave:Z,onOptionNotice:m,hasDuplicateIdentity:lr(D,c),hasMissingOptions:Na(D)},D.id)),s.jsx(gi,{onAdd:R,disabled:q||K})]})]}),s.jsx(qm,{formFields:c,selectedField:I,onChange:L})]})]})}const Ni={department:jl,priorities:rm,status:rr,statuses:rr,statusCustom:rr,Status:rr,storeId:Vl,storeIdCustom:Vl};function Hm({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,o]=y.useState(!1),{fieldLabel:l}=tt();return s.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[s.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>o(i=>!i),children:[s.jsxs("span",{className:"custom-field-table__summary-text",children:[s.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),s.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),s.jsx(pn,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(i=>{const c=l(i),d=Ni[i.fieldKey]||Ni[i.id]||jl;return s.jsxs("div",{className:"custom-field-table__row",children:[s.jsx(d,{className:"custom-field-table__field-icon",size:14,strokeWidth:1.5,"aria-hidden":"true"}),s.jsx("span",{className:"custom-field-table__label",children:c}),s.jsx("button",{className:"custom-field-table__add",type:"button","aria-label":`Add ${c}`,title:n?r:`Add ${c}`,disabled:n,onClick:()=>{n||t?.(i)},children:s.jsx(ql,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},i.fieldKey??i.id)})}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const _i={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},Ai={BOTH:"Both",USER:"User",ADMIN:"Admin"},Km={...Object.fromEntries(Object.entries(_i).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},Ym={...Object.fromEntries(Object.entries(Ai).map(([e,t])=>[t,e])),Both:"BOTH",User:"USER",Admin:"ADMIN"};function Ut(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Gm(e,t){const n=Ut(e),r=Ut(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function pr(e,t){return re({...e,fieldLabel:t})?Ut(t)||"status":Re({...e,fieldLabel:t})?"storeIdCustom":Gm(t,e.fieldType)}function Sn(e){const t=e?.data??e?.id??e;if(t==null||t==="")return null;const n=String(t).trim();return!n||n==="null"||n==="undefined"?null:n}function Jm(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function qa(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function Zm(e=[]){const t=re(e)?mn(e.options||[]):e.options||[];if(!t.length)return null;const n=e.parentMappings||{},r=e.optionColors||{},a=!!e.dependsOn||t.some(o=>n[o]);return re(e)?{values:t.map((o,l)=>{const i={name:o,displayOrder:l+1,isActive:!0,isDefault:pm(o)};return r[o]&&(i.color=r[o]),i})}:a?{values:t.map(o=>{const l={label:o};return n[o]&&(l.dependsOnValue=n[o]),l})}:{values:t}}function Xm(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),o=t.find(w=>String(w.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),l=pr(e,r)||(a?e.fieldKey:""),i=o?pr(o,o.fieldLabel)||o.fieldKey:"",c=eg(e,n),d=Zm(e),u=Km[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=Ym[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:r,fieldKey:l,fieldType:u,required:!!e.required,displayOrder:Number(e.order)||1,fieldAccess:f,isActive:e.isActive!==!1};return c!=null&&c!==""&&(p.hideForWorkflowStepId=c),d?.values?.length&&(p.options=d),i&&i!==l&&(p.dependsOnFieldKey=i),p}function Ei(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}function Li(e,t){return Ei(e)!==Ei(t)}function Qm(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,o)=>Xm({...a,order:a.order||o+1},t,n))}}function Rm(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function hr(e){return e==null?null:typeof e=="string"?e:e.levelNo!=null&&e.levelNo!==""?`Level ${e.levelNo}`:e.name??e.label??e.title??null}function Ti(e,t=[]){if(!e)return null;const n=hr(e);if(n)return n;const r=typeof e=="object"?e.id??e.workflowStepId:null;if(r==null)return null;const a=t.find(o=>String(o.id)===String(r));return hr(a)}function eg(e,t=[]){const n=Array.isArray(e.hideFor)?e.hideFor:[];if(!n.length)return null;for(const o of n){const l=t.find(i=>hr(i)===o||String(i.id)===String(o));if(l?.id!=null)return l.id}const r=e.hideForWorkflowStepId;return r==null||r===""?null:t.some(o=>String(o.id)===String(r))?r:null}function Ii(e){return[...new Set(e.filter(Boolean))]}function mr(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function tg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function ng(e,t=[]){if(!e)return"";const n=t.map(mr).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Ut(o)===e||Ut(o)===Ut(e))||e}function rg(e){return e&&typeof e=="object"&&e.color?e.color:""}function it(e=[],t=[]){const n=[...e].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0));return Mt(n.map(r=>{const a=r?.options?.values??[],o=n.find(i=>i.id===r.dependsOnFieldId||r.dependsOnFieldKey&&i.fieldKey===r.dependsOnFieldKey),l=t.find(i=>String(i.id)===String(r.hideForWorkflowStepId));return{id:r.id,order:r.displayOrder,fieldLabel:r.fieldName??r.fieldLabel??"",fieldType:_a(r.fieldType,_i,r.fieldKey),required:!!r.required,fieldAccess:Ai[r.fieldAccess]??r.fieldAccess??"",hideFor:Ii([...Array.isArray(r.hideFor)?r.hideFor:[],Ti(r.hideForWorkflowStep,t),Ti(l,t)]),dependsOn:r.dependsOnField?.fieldName??o?.fieldName??r.dependsOn??"",options:a.map(mr).filter(Boolean),parentMappings:Object.fromEntries(a.map(i=>{const c=mr(i),d=tg(i);return!c||!d?null:[c,ng(d,o?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(i=>[mr(i),rg(i)]).filter(([i,c])=>i&&c)),fieldKey:r.fieldKey,originalFieldName:r.fieldName??r.fieldLabel??"",dependsOnFieldId:r.dependsOnFieldId??null,hideForWorkflowStepId:r.hideForWorkflowStepId??null,isActive:r.isActive!==!1,label:r.fieldName??r.fieldLabel??""}}))}function ag({stepMeta:e,stepperProps:t}){const n=Q.useDispatch(),{systemId:r}=mt(),a=Q.useSelector(O=>O.appDetails?.id),o=Sn(a)??Sn(r),{state:l,update:i}=dr(),{formFields:c,prefillFormFields:d=[]}=l,u=y.useRef(null),f=y.useCallback(O=>i({formFields:O}),[i]),p=y.useCallback(async O=>{const W=String(O.fieldLabel||"").trim();return W?{...O,fieldLabel:W,fieldKey:pr(O,W),originalFieldName:W,isNew:!1}:null},[]),w=y.useCallback(async O=>Ue(O)?!1:(qa(O)&&await n(nn({complaintTypeId:o,fieldId:O.id})).unwrap(),!0),[o,n]),S=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.data),m=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.isLoading),h=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.error),g=Q.useSelector(O=>O.workflow?.workflowSteps),b=y.useMemo(()=>Rm(g),[g]),L=y.useRef(b),[N,x]=y.useState(!1);y.useEffect(()=>{L.current=b},[b]),y.useEffect(()=>{const O=Sn(o);O!=null&&n(We(O))},[o,n]),y.useEffect(()=>{const O=Sn(o);if(O==null)return;let W=!1;return n(De(O)).unwrap().then(J=>{if(W)return;const te=Array.isArray(J)?J:J?.data;if(!(Array.isArray(te)&&te.length>0)&&d.length){const A=it(d,L.current).map((_,z)=>({..._,id:`prefill-${z}`,isNew:!1}));i({formFields:Mt(A)})}else{const A=Mt(it(Array.isArray(te)?te:[],L.current));i({formFields:A})}x(!0)}).catch(()=>{if(!W){if(d.length){const J=it(d,L.current).map((te,k)=>({...te,id:`prefill-${k}`,isNew:!1}));i({formFields:Mt(J)})}x(!0)}}),()=>{W=!0}},[o,n,d,i]);const T=y.useMemo(()=>Mt(it(S,b)),[S,b]),R=Sn(o)==null||N,Z=R?c:T,q=y.useMemo(()=>um.filter(O=>!Z.some(W=>O.fieldKey&&W.fieldKey===O.fieldKey||re(O)&&re(W)||sr(O)&&sr(W)||Re(O)&&Re(W))),[Z]),K=y.useMemo(()=>ir(Z),[Z]),$=y.useMemo(()=>Dt(Z),[Z]),G=Jm(h),I=im,D=cm,j=y.useMemo(()=>{const O=[...b].sort((J,te)=>(J.levelNo??0)-(te.levelNo??0)).map(J=>hr(J)).filter(Boolean),W=T.flatMap(J=>J.hideFor);return Ii([...O,...W])},[T,b]),H=y.useMemo(()=>{const O=new Map(it(S,b).map(W=>[Number(W.id),W]));return Z.filter(W=>{if(W.isNew&&String(W.fieldLabel||"").trim())return!0;if(!qa(W))return!1;const J=O.get(Number(W.id));return!J||Li(W,J)})},[S,Z,b]),[E,M]=y.useState(!1),C=y.useCallback(async O=>{if(!Dt(Z)&&o)try{const J=Z.map(X=>{if(!O||!X.isNew)return X;const ae=String(X.fieldLabel||"").trim();return ae?{...X,fieldLabel:ae,fieldKey:pr(X,ae),originalFieldName:ae,isNew:!1}:X}).filter(X=>!X.isNew&&String(X.fieldLabel||"").trim()),te=new Map(it(S,b).map(X=>[Number(X.id),X]));if(!J.some(X=>{if(!qa(X))return!0;const ae=te.get(Number(X.id));return!ae||Li(X,ae)})){t.onNext?.();return}const A=[...J].sort((X,ae)=>+!!X.dependsOn-+!!ae.dependsOn);await n(tn({complaintTypeId:o,data:Qm(A,A,b)})).unwrap();const _=await n(De(o)).unwrap(),z=Array.isArray(_)?_:_?.data;i({formFields:Mt(it(Array.isArray(z)?z:[],b))}),t.onNext?.()}catch{}},[S,o,n,Z,t,i,b]),F=y.useCallback(()=>{if(!Dt(Z)){if(H.length){M(!0);return}C(!1)}},[Z,H.length,C]);return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:$e,onNext:F}),E?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[s.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:()=>{M(!1),C(!1)},children:"OK"}),s.jsx(ye,{onClick:()=>{M(!1),C(!0)},children:"Save"})]})]})}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!R||m?s.jsx(ze,{text:"Loading form fields"}):G&&!Z.length?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:G}):s.jsxs("div",{className:"ca-form-fields",children:[G?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:G}):null,s.jsx(Hm,{fields:q,disableAdd:K||$,disableAddHint:K?"Resolve duplicate field first":$?Kl(Z):void 0,onAddField:O=>u.current?.({...O})}),s.jsx("div",{className:"ca-settings-card__divider"}),s.jsx(Ci,{initialFields:Z,addExternalFieldRef:u,onChange:f,fieldTypeOptions:I,fieldAccessOptions:D,hideForOptions:j,onSave:p,onDelete:w})]})})]})}function Fi({label:e="Active",checked:t,onChange:n,disabled:r=!1,className:a=""}){return s.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[s.jsx(cl,{children:e}),s.jsx(Rn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function ki({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=tt();return s.jsxs("select",{...r,className:"review-control",value:t??"",onChange:o=>n(o.target.value),children:[s.jsx("option",{value:"",children:a("Select Store")}),e.map(o=>s.jsx("option",{value:o.id,children:o.name??o.label??String(o.id)},o.id))]})}const sg=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function Va(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function og(e){return e?e.type&&e.type.startsWith("image/")?!0:sg.test(e.name||""):!1}function lg(e){return`${e.name}-${e.size}-${e.lastModified}`}function gr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:o=!1,disabled:l=!1,accept:i}){const c=Va(n,a),d=y.useMemo(()=>Va(n,a).map((u,f)=>{const p=og(u);return{key:`${lg(u)}-${f}`,name:u.name,isImage:p,url:p?URL.createObjectURL(u):""}}),[n,a]);return y.useEffect(()=>()=>{d.forEach(u=>{u.url&&URL.revokeObjectURL(u.url)})},[d]),s.jsxs("div",{className:"review-file-field",children:[s.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:i,multiple:a,required:!!o&&c.length===0,disabled:l,onChange:u=>{const f=Array.from(u.target.files||[]);if(!a){r(f[0]||"");return}const p=Va(n,!0);r([...p,...f]),u.target.value=""}}),d.length?s.jsx("div",{className:"review-file-preview",children:s.jsx("div",{className:"review-file-preview__images",children:d.map((u,f)=>s.jsxs("div",{className:"review-file-preview__item",children:[u.isImage?s.jsx("img",{className:"review-file-preview__thumb",src:u.url,alt:u.name,title:u.name}):s.jsx("span",{className:"review-file-preview__name",children:u.name}),s.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${u.name}`,onClick:()=>{r(a?c.filter((p,w)=>w!==f):"")},children:"×"})]},u.key))})}):null]})}const ig=new Set(["select","radio","checkbox"]);function Oi(e){return String(e||"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"")}function ct(e){return String(e.label||e.fieldLabel||e.fieldName||e.name||"").trim()}function Wa(e){return`review-${e.id??e.fieldKey??(Oi(ct(e))||"field")}`}function Di(e,t,n){return n===0?e:`${e}-${Oi(t)||n}`}function za(e){const t=String(e.fieldType||"").toLowerCase(),n=String(e.fieldKey||ct(e)||"").toLowerCase();return t==="file"?"file":t==="images"?"images":t==="email"||n.includes("email")?"email":t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":(t==="dropdown"||t==="select"||t==="custom")&&e.options?.length?"select":"text"}function Mi(e){return ig.has(e)}function cg(e){return e==="textarea"||e==="radio"||e==="checkbox"}function dg(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function xi(e){return String(e||"").replace(/\d/g,"")}function Pi(e){return String(e||"").replace(/[^\d]/g,"")}function vn(e,t){const n=String(ct(e)||"value").toLowerCase();return t==="date"?"mm/dd/yyyy":t==="select"?`Select ${n}`:t==="email"?"Enter email":`Enter ${n}`}function wn(e){return String(e.fieldKey||e.id||ct(e)||Wa(e))}function Ui(e,t=[]){const n=String(e.dependsOn||"").trim();return n&&t.find(r=>{const a=ct(r),o=String(r.fieldKey||"");return a===n||o===n})||null}function $i(e,t=[],n={}){const r=e.options||[],a=Ui(e,t);if(!a)return r;const o=e.parentMappings||{};if(!r.some(c=>!!o[c]))return r;const i=String(n[wn(a)]||"").trim();return i?r.filter(c=>String(o[c]||"")===i):r}function Bi(e){return e==="checkbox"||e==="images"?[]:""}function ug({question:e,options:t,value:n,onChange:r,storeList:a}){const o=Wa(e),l=za(e),i=n??Bi(l),c={id:o,name:String(e.fieldKey||ct(e)||o),required:!!e.required};if(Re(e)&&Array.isArray(a))return s.jsx(ki,{...c,storeList:a,value:i,onChange:r});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:t.map((d,u)=>{const f=Di(o,d,u);return s.jsxs("label",{className:"review-option",htmlFor:f,children:[s.jsx("input",{...c,id:f,type:"radio",value:d,checked:i===d,onChange:p=>r(p.target.value)}),s.jsx("span",{children:d})]},d)})});if(l==="checkbox"){const d=Array.isArray(i)?i:[];return s.jsx("div",{className:"review-options review-options--inline",children:t.map((u,f)=>{const p=Di(o,u,f);return s.jsxs("label",{className:"review-option",htmlFor:p,children:[s.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:u,checked:d.includes(u),required:!1,onChange:w=>r(w.target.checked?[...d,u]:d.filter(S=>S!==u))}),s.jsx("span",{children:u})]},u)})})}return l==="textarea"?s.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)}):l==="select"?s.jsxs("select",{...c,className:"review-control",value:i,onChange:d=>r(d.target.value),children:[s.jsx("option",{value:"",children:vn(e,l)}),t.map(d=>s.jsx("option",{value:d,children:d},d))]}):l==="file"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="images"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="number"?s.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:vn(e,l),value:i,onChange:d=>r(Pi(d.target.value)),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault(),d.key.length===1&&!/\d/.test(d.key)&&!d.ctrlKey&&!d.metaKey&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/^\d*$/.test(u)||(d.preventDefault(),r(Pi(u)))}}):dg(e)?s.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:vn(e,l),value:i,onChange:d=>r(xi(d.target.value)),onKeyDown:d=>{/^\d$/.test(d.key)&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/\d/.test(u)&&(d.preventDefault(),r(xi(u)))}}):s.jsx("input",{...c,className:"review-control",type:l,placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)})}function fg({fields:e=[],storeList:t}){const{fieldLabel:n}=tt(),[r,a]=y.useState({}),o=(l,i)=>{const c=wn(l);a(d=>{const u={...d,[c]:i};return e.forEach(f=>{const p=Ui(f,e);if(!p||wn(p)!==c)return;const w=za(f);if(!Mi(w))return;const S=$i(f,e,u),m=wn(f),h=u[m];Array.isArray(h)?u[m]=h.filter(g=>S.includes(g)):h&&!S.includes(h)&&(u[m]="")}),u})};return e.length?s.jsx("div",{className:"review-form-card",children:s.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:l=>l.preventDefault(),children:s.jsx("div",{className:"review-form-grid",children:e.map(l=>{const i=za(l),c=Wa(l),d=Mi(i)?$i(l,e,r):[];return s.jsxs("div",{className:`review-question${cg(i)?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:c,children:[n(l)||"Untitled field",l.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(ug,{storeList:t,question:l,options:d,value:r[wn(l)]??Bi(i),onChange:u=>o(l,u)})]},l.id??l.fieldKey??ct(l))})})})}):s.jsx("p",{className:"review-empty",children:"No form fields added"})}const pg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},hg={BOTH:"Both",USER:"User",ADMIN:"Admin"};function mg(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function gg(e){return[...new Set(e.filter(Boolean))]}function Ha(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ka(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function yg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function bg(e,t=[]){if(!e)return"";const n=t.map(Ha).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Ka(o)===e||Ka(o)===Ka(e))||e}function Sg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n?.options?.values??[],a=t.find(o=>o.id===n.dependsOnFieldId||n.dependsOnFieldKey&&o.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:n.fieldName??n.fieldLabel??n.label??"",fieldLabel:n.fieldName??n.fieldLabel??n.label??"",fieldKey:n.fieldKey,fieldType:_a(n.fieldType,pg,n.fieldKey),required:!!n.required,fieldAccess:hg[n.fieldAccess]??n.fieldAccess??"",hideFor:gg([...Array.isArray(n.hideFor)?n.hideFor:[],mg(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(Ha).filter(Boolean),parentMappings:Object.fromEntries(r.map(o=>{const l=Ha(o),i=yg(o);return!l||!i?null:[l,bg(i,a?.options?.values??[])]}).filter(Boolean))}})}function vg({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=Q.useDispatch(),o=Q.useSelector(T=>T.appDetails?.id),l=Q.useSelector(T=>T.complaintAppComplaint.formFields.data),i=Q.useSelector(T=>T.complaintAppComplaint.formFields.isLoading),c=Q.useSelector(T=>T.complaintAppComplaint.formFields.error),d=Q.useSelector(T=>T.createComplaint?.isActive),u=Q.useSelector(T=>T.createComplaint?.activeComplaintTypeId),f=Q.useSelector(T=>T.createComplaint?.isUpdatingActive),p=Q.useSelector(T=>T.createComplaint?.activeError),w=Q.useSelector(T=>T.complaintType?.selected),S=Q.useSelector(T=>T.complaintType?.complaintList??[]),m=Q.useSelector(T=>T.appDetails?.details?.currentUser),h=y.useMemo(()=>Sg(l),[l]),g=y.useMemo(()=>o==null?null:w&&String(w.id??w._id)===String(o)?w:S.find(T=>String(T?.id??T?._id)===String(o))??null,[S,o,w]),b=g!=null&&(g.isActive!=null||g.active!=null)?!!(g.isActive??g.active):null,L=String(u)===String(o)?!!d:b??!0,N=ep(g,m);y.useEffect(()=>{o&&a(De(o))},[o,a]);const x=T=>{!o||f||!N||a(cn({id:o,isActive:T}))};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:$e,showSaveButton:!1,nextLabel:"Publish",extraActions:s.jsx(Fi,{label:"Active",checked:L,disabled:!o||f||!N,onChange:x}),onNext:()=>{e?.(),n.onNext?.()}}),p?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:s.jsx("div",{className:"ca-review",children:s.jsx("section",{className:"ca-review__block ca-review__block--last",children:i?s.jsx(ze,{text:"Loading form fields"}):c&&!h.length?s.jsx("p",{className:"ca-body",children:c}):s.jsx(fg,{fields:h,storeList:r})})})})]})}function wg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>$e.length?$e.length:Math.floor(t)}function Cg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function ji({title:e="Complaint Management Settings",onPublish:t,onStepChange:n,onSaveDraft:r,roleList:a=[],userList:o=[],storeList:l,showSaveButton:i=!0,showNextButton:c=!0}){const d=Pe(),u=Q.useDispatch(),{systemId:f}=mt(),[p,w]=Ls(),S=wg(p.get("step")||1),m=Cg(p.get("substep")||1),h=!!f&&f!=="new",[g,b]=y.useState(!1);y.useEffect(()=>{if(!h)return;let q=!1;const K=$=>{const G=$?.data??$;return Array.isArray(G)?G:Array.isArray(G?.data)?G.data:[]};return Promise.all([u(We(f)).unwrap(),u(De(f)).unwrap()]).then(([$,G])=>{q||b(K($).length>0&&K(G).length>0)}).catch(()=>{q||b(!1)}),()=>{q=!0}},[u,h,f]);const L=h&&g;y.useEffect(()=>{f&&u(lt(f)),u(_t({data:h}))},[u,h,f]),y.useEffect(()=>{if(!p.get("step")){const q=new URLSearchParams(p);q.set("step","1"),w(q,{replace:!0})}},[p,w]);const N=y.useMemo(()=>$e.find(q=>q.id===S)||$e[0],[S]),x=y.useCallback((q,K)=>{const $=new URLSearchParams(p);$.set("step",String(q)),q===4?$.set("substep",String(K??(q===S?m:1))):$.delete("substep"),w($,{replace:!1}),n?.({systemId:f,step:q,substep:K})},[p,w,n,f,S,m]),T=()=>{if(S<$e.length){x(S+1,1);return}d("/")},V=q=>{x(4,q)},R=()=>{t?.({systemId:f,step:S})},Z={currentStep:S,allStepsUnlocked:L,onStepClick:q=>x(q,q===4?1:void 0),showSaveButton:i,showNextButton:c,onSaveDraft:()=>r?.({systemId:f,step:S}),onNext:T,className:"ca-settings-page__stepper"};return s.jsx(Xl,{children:s.jsxs("div",{className:"ca-settings-page",children:[s.jsxs("div",{className:"ca-settings-page__header",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx(fa,{children:e})]}),S===1?s.jsx(Im,{stepMeta:N,stepperProps:Z,roleList:a,userList:o}):null,S===2?s.jsx($m,{onNext:T,stepMeta:N,roleList:a,userList:o,substep:m,onSubstepChange:V,stepperProps:Z}):null,S===3?s.jsx(ag,{stepMeta:N,stepperProps:Z}):null,S===4?s.jsx(vg,{storeList:l,onPublish:R,stepMeta:N,stepperProps:Z}):null]})},f||"new")}function Ng(){const e=Pe(),n=Q.useSelector(c=>c.status?.complaintSummary??null)?.totalComplaints??0,r=Q.useSelector(c=>c.appDetails?.id),a=Q.useSelector(c=>c.complaintType?.selected??null),o=a?.id??a?._id,i=o==null||r==null||String(o)===String(r)?a?.name??a?.complaintTypeName??a?.title??"":"";return s.jsx("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:i||"Complaint Management"})]}),s.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",n??0]})]})})}function qi({currentPage:e,totalItems:t,itemsPerPage:n,onPageChange:r,onItemsPerPageChange:a,selectOptions:o=["5","10","15","20","25"],totalPages:l,disabled:i=!1}){if(t<=0)return null;const c=(e-1)*n+1,d=Math.min(e*n,t),u=e<=1,f=e>=l;return s.jsxs("div",{className:`ca-custom-pagination${i?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[s.jsxs("label",{className:"ca-custom-pagination__page-size",children:[s.jsx("span",{children:"Results per page:"}),s.jsx("select",{className:"ca-custom-pagination__select",value:String(n),onChange:p=>a?.(Number(p.target.value)),disabled:i,"aria-label":"Results per page",children:o.map(p=>s.jsx("option",{value:p,children:p},p))})]}),s.jsxs("div",{className:"ca-custom-pagination__navigation",children:[s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(1),disabled:i||u,"aria-label":"First page",children:s.jsx(em,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e-1),disabled:i||u,"aria-label":"Previous page",children:s.jsx(Rh,{size:16,"aria-hidden":"true"})}),s.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e+1),disabled:i||f,"aria-label":"Next page",children:s.jsx(nr,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(l),disabled:i||f,"aria-label":"Last page",children:s.jsx(tm,{size:16,"aria-hidden":"true"})})]})]})}function _g({type:e}){return e==="error"?s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M12 7.5v5.5M12 16.2v.1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M8 12.5l2.8 2.8L16.2 9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Ag({id:e,message:t,type:n="success",onDismiss:r}){return y.useEffect(()=>{const a=setTimeout(()=>r(e),3500);return()=>clearTimeout(a)},[e,r]),s.jsxs("div",{className:`ca-toast ca-toast--${n}`,role:"status",children:[s.jsx("span",{className:"ca-toast__icon",children:s.jsx(_g,{type:n})}),s.jsxs("div",{className:"ca-toast__content",children:[s.jsx("div",{className:"ca-toast__title",children:n==="error"?"Error":"Success"}),s.jsx("div",{className:"ca-toast__message",children:t})]}),s.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>r(e),children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Eg({toasts:e=[],onDismiss:t}){return e.length?s.jsx("div",{className:"ca-toast-container",children:e.map(n=>s.jsx(Ag,{...n,onDismiss:t},n.id))}):null}const Lg=[{value:"today",label:"Today"},{value:"yesterday",label:"Yesterday"},{value:"lastWeek",label:"Last Week"},{value:"wtd",label:"WTD"},{value:"mtd",label:"MTD"},{value:"ytd",label:"YTD"},{value:"custom",label:"Custom"}],Vi=e=>String(e).padStart(2,"0"),Fe=e=>`${e.getFullYear()}-${Vi(e.getMonth()+1)}-${Vi(e.getDate())}`,Cn=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function Tg(e,t="",n="",r=new Date){const a=new Date(r.getFullYear(),r.getMonth(),r.getDate()),o=(a.getDay()+6)%7,l=Cn(a,-o);switch(e){case"today":return{fromDate:Fe(a),toDate:Fe(a)};case"yesterday":return{fromDate:Fe(Cn(a,-1)),toDate:Fe(Cn(a,-1))};case"lastWeek":return{fromDate:Fe(Cn(l,-7)),toDate:Fe(Cn(l,-1))};case"wtd":return{fromDate:Fe(l),toDate:Fe(a)};case"mtd":return{fromDate:Fe(new Date(a.getFullYear(),a.getMonth(),1)),toDate:Fe(a)};case"ytd":return{fromDate:Fe(new Date(a.getFullYear(),0,1)),toDate:Fe(a)};case"custom":return t&&n?{fromDate:t,toDate:n}:null;default:return null}}function Ig(e){if(!e?.preset)return{};const t=Tg(e.preset,e.from,e.to);return t?{...t}:{}}const Fg=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function kg({initial:e,onApply:t,onReset:n,onClose:r}){const[a,o]=y.useState(e?.field||"updated"),[l,i]=y.useState(e?.preset||""),[c,d]=y.useState(e?.from||""),[u,f]=y.useState(e?.to||""),p=l==="custom"&&(!c||!u||c>u),w=!!l&&!p;return s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:s.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[s.jsxs("div",{className:"ca-date-filter__header",children:[s.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),s.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:r,children:s.jsx(lm,{size:18})})]}),s.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:Fg.map(S=>s.jsx("button",{type:"button",className:`ca-date-filter__tab${a===S.value?" ca-date-filter__tab--active":""}`,onClick:()=>o(S.value),children:S.label},S.value))}),s.jsx("div",{className:"ca-date-filter__list",children:Lg.map(S=>s.jsxs("label",{className:`ca-date-filter__option${l===S.value?" ca-date-filter__option--active":""}`,children:[s.jsx("input",{type:"radio",name:"complaint-date-preset",checked:l===S.value,onChange:()=>i(S.value)}),s.jsx("span",{children:S.label})]},S.value))}),l==="custom"?s.jsxs("div",{className:"ca-date-filter__custom",children:[s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),s.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:u||void 0,onChange:S=>d(S.target.value)}),s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),s.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:u,min:c||void 0,onChange:S=>f(S.target.value)})]}):null,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:n,children:"Reset"}),s.jsx(ye,{onClick:()=>t({field:a,preset:l,from:c,to:u}),disabled:!w,children:"Apply"})]})]})})}function Og({open:e,initial:t,onApply:n,onReset:r,onClose:a}){return e?s.jsx(kg,{initial:t,onApply:n,onReset:r,onClose:a}):null}function Ya({text:e="No data"}){return s.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const Dg=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function dt(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(0,n):t}function Nn(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(n+2):t}const Mg=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function $t(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(Mg).map(r=>r.trim()).filter(Boolean):[n])}function xg(e){const t=$t(e);return t.length>0&&t.every(n=>typeof n=="string"&&Dg.test(n))}function _n(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||xg(t)}function Pg(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const o=r[a.key]??"-";_n(a,o)&&$t(o).forEach(l=>{typeof l=="string"&&n.add(dt(l))})})}),Array.from(n)}const Wi=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function Ga(e,t=7){const n=String(e||""),r=n.lastIndexOf("."),a=r>0?n.slice(0,r):n,o=r>0?n.slice(r):"";return a.length>t?`${a.slice(0,t)}...${o}`:n}function Ug({value:e,urlMap:t={}}){const n=y.useMemo(()=>$t(e),[e]),[r,a]=y.useState(null);if(!n.length)return"-";const o=n.filter(p=>typeof p=="string"&&Wi.test(dt(p))),l=n.filter(p=>typeof p=="string"&&!Wi.test(dt(p))).map(p=>({name:Nn(p),url:t[dt(p)]})),i=o.map(p=>({name:Nn(p),url:t[dt(p)]})).filter(p=>p.url),c=i[0],d=()=>a(null),u=()=>a(p=>p>0?p-1:i.length-1),f=()=>a(p=>p<i.length-1?p+1:0);return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?s.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:s.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,l.length?l.map(p=>{const w=String(p.name).split("/").pop();return p.url?s.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",title:w,children:Ga(w)},p.name):s.jsx("span",{className:"ca-complaint-table__attachment-name",title:w,children:Ga(w)},p.name)}):null,!c&&!l.length?n.map(p=>s.jsx("span",{className:"ca-complaint-table__attachment-name",title:Nn(p),children:Ga(Nn(p))},String(p))):null,i.length>1?s.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${i.length-1} more images`,children:["+",i.length-1]}):null]}),r!=null&&i.length?s.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[s.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:u,"aria-label":"Previous image",children:"‹"}),s.jsx("img",{className:"ca-complaint-table__preview-image",src:i[r].url,alt:i[r].name}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:f,"aria-label":"Next image",children:"›"}),s.jsxs("span",{className:"ca-complaint-table__preview-count",children:[r+1," / ",i.length]})]}):null]})}function yr(e,t=!1){const n=[];return!t&&e==="description"&&n.push("ca-complaint-table__desc"),e==="actions"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--actions"),n.length?n.join(" "):void 0}function zi(e,t=[]){const n=t.find(l=>String(l.id)===String(e.assignedToUserId)),a=(n?[n.firstName,n.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",o=n?.email||"";return{name:a,email:o,tooltip:[a,o].filter(Boolean).join(`
13
- `)}}function $g({row:e,ctx:t,isOpen:n,onToggle:r}){const a=t.roleUsers??[],o=y.useRef(null),l=y.useRef(null),[i,c]=y.useState(null),d=a.find(b=>String(b.id)===String(e.assignedToUserId)),f=(d?[d.firstName,d.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",p=e.assignedToUserId,w=p!=null&&p!==""&&String(p)===String(t.currentUserId),S=w?"Assign to Me":f||"Assign",m=a.filter(b=>String(b.id)!==String(t.currentUserId)),h=!!e.isClosed||t.canAssign===!1,g=zi(e,a);return y.useLayoutEffect(()=>{if(!n)return;const b=()=>{const L=o.current,N=l.current;if(!L||!N)return;const x=L.getBoundingClientRect(),T=N.getBoundingClientRect(),V=6,R=12,q=x.bottom+V+T.height>window.innerHeight-R&&x.top-V-T.height>=R?x.top-T.height-V:Math.min(x.bottom+V,window.innerHeight-T.height-R),K=Math.max(R,Math.min(x.right-T.width,window.innerWidth-T.width-R));c({top:q,left:K,visibility:"visible"})};return b(),window.addEventListener("resize",b),window.addEventListener("scroll",b,!0),()=>{window.removeEventListener("resize",b),window.removeEventListener("scroll",b,!0)}},[t.assignmentError,t.assignmentLoading,t.assignmentSaving,n,a.length]),s.jsxs("div",{className:"ca-complaint-table__assignment",title:g.tooltip||void 0,children:[s.jsxs("button",{ref:o,type:"button",className:"ca-complaint-table__assignment-trigger","data-assignment-trigger":"true",disabled:h,onClick:b=>{b.stopPropagation(),!h&&r(e.id)},"aria-expanded":n&&!h,"aria-label":`Assign complaint ${e.title||e.id}`,children:[s.jsx("span",{className:"ca-complaint-table__assignment-label",children:S}),s.jsx(pn,{size:14,"aria-hidden":"true"})]}),n&&!h&&typeof document<"u"?hc.createPortal(s.jsxs("div",{ref:l,className:"ca-complaint-table__assignment-menu","data-assignment-menu":"true",role:"menu",style:i||{visibility:"hidden"},onClick:b=>b.stopPropagation(),children:[s.jsx("button",{type:"button",className:"ca-complaint-table__assignment-self",role:"menuitem",disabled:w||t.assignmentLoading||t.assignmentSaving,onClick:b=>{b.stopPropagation(),r(null),t.onAssign?.(e,t.currentUserId)},children:s.jsx("strong",{children:"Assign to me"})}),t.assignmentLoading?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Loading users…"}):null,t.assignmentSaving?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Saving assignment…"}):null,t.assignmentError?s.jsxs("div",{className:"ca-complaint-table__assignment-error",children:[s.jsx("span",{children:t.assignmentError}),s.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),t.onRetryUsers?.(e.roleId)},children:"Retry"})]}):null,m.length>0?s.jsx("div",{className:"ca-complaint-table__assignment-others","aria-hidden":"true",children:"Others"}):null,m.map(b=>{const L=[b.firstName,b.lastName].filter(Boolean).join(" ").trim()||b.email;return s.jsxs("button",{type:"button",role:"menuitem",disabled:String(p)===String(b.id)||t.assignmentLoading||t.assignmentSaving,onClick:N=>{N.stopPropagation(),r(null),t.onAssign?.(e,b.id)},children:[s.jsx("strong",{children:L}),b.email?s.jsx("span",{children:b.email}):null]},b.id)})]}),document.body):null]})}function Hi(e,t,n={},r={}){const a=t[e.key]??"-";if(e.key==="status"||e.key==="escalationTo")return a;if(e.key==="assignedToUserName"){const o=zi(t,n.roleUsers??[]);return o.name?s.jsx("span",{className:"ca-complaint-table__ellipsis",title:o.tooltip,children:o.name}):"-"}return e.key==="actions"?s.jsxs("div",{className:"ca-complaint-table__action-cell",children:[s.jsx($g,{row:t,ctx:n,...r}),s.jsx("button",{type:"button",className:"ca-complaint-table__open-button","aria-label":`Open complaint ${t.title||t.id}`,onClick:o=>{o.stopPropagation(),n.onOpenComplaint?.(t)},children:s.jsx(nr,{size:16,"aria-hidden":"true"})})]}):_n(e,a)&&$t(a).some(o=>typeof o=="string")?s.jsx(Ug,{value:a,urlMap:n.attachmentUrlMap}):a}function Ki({scrollFields:e,stickyFields:t,tableRows:n,fieldLabel:r,getCellContext:a,onOpenComplaint:o,page:l,itemsPerPage:i}){const[c,d]=y.useState(null);y.useEffect(()=>{if(c==null)return;const f=p=>{p.target.closest?.("[data-assignment-trigger], [data-assignment-menu]")||d(null)};return document.addEventListener("pointerdown",f),()=>document.removeEventListener("pointerdown",f)},[c]);const u=f=>{d(p=>String(p)===String(f)?null:f)};return s.jsxs("div",{className:"ca-complaint-table__scroll",children:[s.jsxs("table",{children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:"#"}),e.map(f=>s.jsx("th",{scope:"col",className:yr(f.key,!0),children:r(f)},f.id)),s.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(f=>s.jsx("th",{scope:"col",className:yr(f.key,!0),children:r(f)},f.id))]})}),s.jsx("tbody",{children:n.map((f,p)=>{const w=a(f);w.onOpenComplaint=o;const S=f.assignedToUserId,m=S==null||S===""?"ca-complaint-table__row--unassigned":String(S)===String(w.currentUserId)?"ca-complaint-table__row--assigned-self":"ca-complaint-table__row--assigned-other";return s.jsxs("tr",{className:`${m}${o?" ca-complaint-table__clickable-row":""}`,role:o?"link":void 0,tabIndex:o?0:void 0,"aria-label":o?`Open complaint ${f.title||f.id}`:void 0,onClick:h=>{h.target.closest("button, a, select, input, textarea")||o?.(f)},onKeyDown:h=>{!o||h.key!=="Enter"&&h.key!==" "||h.target===h.currentTarget&&(h.preventDefault(),o(f))},children:[s.jsx("td",{children:(l-1)*i+p+1}),e.map(h=>s.jsx("td",{className:yr(h.key),children:Hi(h,f,w)},`${f.id??p}-${h.id}`)),s.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(h=>s.jsx("td",{className:yr(h.key),children:Hi(h,f,w,{isOpen:String(c)===String(f.id),onToggle:u})},`${f.id??p}-${h.id}`))]},f.id??p)})})]}),n.length?null:s.jsx("div",{className:"ca-complaint-table__empty-overlay",children:s.jsx(Ya,{text:"No Complaint"})})]})}const Bg={id:"actions",label:"Actions",key:"actions"};function Yi(e,t,n=!0){return e==="mine"?t==null?{}:{assignedToUserId:t}:e==="unassigned"?{unassigned:!0}:n?{showAllComplaints:!0}:{}}async function jg({complaintTypeId:e,status:t,dateParams:n={},sort:r,assignmentParams:a={},escalationTo:o}){const l=await le.get(ca,{params:{...n,complaintTypeId:e,page:1,limit:Nh,sort:r,...a,...o!=null&&o!==""&&o!=="all"?{escalationTo:o}:{},...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return Al(l.data)}function qg(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Gi(e,t=[],n=[],r=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const o=t.find(l=>String(l.id)===String(a));return!o||!Ji(o,n,r)}function Vg(e){return([e?.userAssignments,e?.users,e?.userIds,e?.assignedUsers].find(Array.isArray)??[]).map(n=>Number(n&&typeof n=="object"?n.userId??n.id??n.user?.id:n)).filter(Number.isFinite)}function Ji(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&Vg(e).includes(Number(n))}function Wg(){const{fieldLabel:e}=tt(),t=Q.useDispatch(),n=Pe(),r=xe(),{complaintTypeId:a}=mt(),[o]=Ls(),l=Q.useSelector(U=>U.appDetails?.id),i=Th(a,o.get("complaintTypeId"),l,Lh()),{list:c=[],isLoading:d=!1,error:u=null,hasLoaded:f=!1,requestedComplaintTypeId:p=null,meta:w=null}=Q.useSelector(U=>U.complaintManagement??{}),S=Q.useSelector(U=>U.status?.list??[]),m=Q.useSelector(U=>U.changeStatus?.updatingId??null),h=Q.useSelector(U=>U.roleUsers??{}),g=Q.useSelector(U=>U.workflow?.workflowSteps),b=Q.useSelector(U=>U.appDetails?.details?.currentUser),L=Q.useSelector(U=>U.appDetails?.details?.storeList),N=y.useMemo(()=>Bh(L),[L]),x=y.useMemo(()=>S.map(U=>U.name).filter(Boolean),[S]),T=y.useMemo(()=>Array.isArray(g)?g:Array.isArray(g?.steps)?g.steps:[],[g]),V=y.useMemo(()=>qg(b),[b]),R=b?.id??b?.userId??null,Z=Q.useSelector(U=>{const ee=U.complaintType?.selected,ce=Array.isArray(ee?.accesses)?ee.accesses.map(Ce=>Ce?.role?.id??Ce?.role?.roleId??Ce?.roleId).map(Number).filter(Number.isFinite):[];return ce.length?ce:(Array.isArray(ee?.roleIds)?ee.roleIds:Array.isArray(ee?.roles)?ee.roles:[]).map(Ce=>Number(Ce?.id??Ce?.roleId??Ce?.role_id??Ce)).filter(Ce=>Number.isFinite(Ce))}),q=Q.useSelector(U=>{const ee=U.complaintType?.selected;return ee?.isActive!=null?!!ee.isActive:ee?.active!=null?!!ee.active:!0}),[K,$]=y.useState({complaintTypeId:null,status:"all"}),[G,I]=y.useState({complaintTypeId:null,direction:yl}),[D,j]=y.useState({complaintTypeId:null,level:"all"}),[H,E]=y.useState({complaintTypeId:null,value:"all",explicitlySelected:!1}),[M,C]=y.useState(1),[F,O]=y.useState(wh),[W,J]=y.useState([]),[te,k]=y.useState({}),[A,_]=y.useState(!1),[z,X]=y.useState(null),[ae,ue]=y.useState([]),[fe,pe]=y.useState(!1),[he,ne]=y.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),me=String(he.complaintTypeId)===String(i)&&he.preset?he:null,ke=y.useMemo(()=>Ig(me),[me]),Ae=String(K.complaintTypeId)===String(i)?K.status:"all",ut=String(G.complaintTypeId)===String(i)?G.direction:yl,Ye=String(D.complaintTypeId)===String(i)?D.level:"all",je=String(H.complaintTypeId)===String(i)?H.value:"all",_0=String(H.complaintTypeId)===String(i)&&H.explicitlySelected,vr=(U,ee="success")=>{const ce=`${Date.now()}-${Math.random()}`;ue(Ee=>[...Ee,{id:ce,message:U,type:ee}])},A0=U=>ue(ee=>ee.filter(ce=>ce.id!==U));y.useEffect(()=>{!i||a||(Cl(i),n(`/complaintmanagement/${i}`,{replace:!0}))},[i,n,a]),y.useEffect(()=>{if(!i||!a)return;Cl(i),t(lt(i)),t(Wo()),t(Yo()),t($p());const U=t(Tt(i)),ee=t(Jn(i)),ce=t(We(i)),Ee=t(De(i)),Ce=t(Xe(i));return Ee.unwrap().then(rs=>J(Ah(rs))).catch(()=>J([])),()=>{U.abort?.(),ee.abort?.(),ce.abort?.(),Ee.abort?.(),Ce.abort?.()}},[i,t,a]),y.useEffect(()=>{if(!i||!a)return;const U=t(Gn({complaintTypeId:i,page:M,limit:F,status:Ae==="all"?void 0:Ae,sort:ut===bl?"createdAt":"-createdAt",...Yi(je,R),escalationTo:Ye==="all"?void 0:Ye,...ke}));return()=>U.abort?.()},[i,R,ke,t,F,M,a,je,ut,Ye,Ae]);const E0=Z.some(U=>V.includes(U)),ft=y.useMemo(()=>p!=null&&i!=null&&String(p)!==String(i)?[]:c.map(ee=>({...Ol(Nl(ee,S,T),N),_fields:ee?.formField||[]})),[i,c,p,S,T,N]),lc=y.useMemo(()=>[...new Set(ft.map(U=>U.roleId).filter(U=>U!=null).map(String))],[ft]);y.useEffect(()=>{lc.forEach(U=>{!h.usersByRoleId?.[U]&&!h.loadingByRoleId?.[U]&&!h.errorByRoleId?.[U]&&t(un(U))})},[t,lc,h.errorByRoleId,h.loadingByRoleId,h.usersByRoleId]);const L0=y.useMemo(()=>[...new Set(T.map((U,ee)=>Number(U.levelNo??ee+1)))].sort((U,ee)=>U-ee),[T]),ts=y.useMemo(()=>_l(ft,W).filter(U=>Gi(U,T,V,R)),[ft,W,T,V,R]),T0=vl(ts),ic=U=>{const ee=U.assignedToUserId;return ee==null||ee===""?0:String(ee)===String(R)?1:2},An=ft.map(({_fields:U,...ee})=>ee).sort((U,ee)=>ic(U)-ic(ee)),ns=y.useMemo(()=>Pg(ts,ft),[ts,ft]),I0=ns.every(U=>Object.prototype.hasOwnProperty.call(te,U));y.useEffect(()=>{const U=ns.filter(ce=>!Object.prototype.hasOwnProperty.call(te,ce));if(!U.length)return;let ee=!1;return Promise.all(U.map(async ce=>{try{const Ee=await t(dn({params:{path:ce}})).unwrap();return[ce,Ee]}catch{return[ce,""]}})).then(ce=>{ee||k(Ee=>({...Ee,...Object.fromEntries(ce)}))}),()=>{ee=!0}},[ns,te,t]);const wr=Eh(w,M,F,An.length),cc=!!(i&&!u&&(!An.length&&(d||!f)||An.length>0&&!I0)),F0=U=>{C(1),$({complaintTypeId:i,status:U})},k0=U=>{U>=1&&U<=wr.totalPages&&U!==M&&C(U)},O0=U=>{const ee=Number(U);!Number.isFinite(ee)||ee<=0||ee===F||(O(ee),C(1))},D0=U=>{C(1),I({complaintTypeId:i,direction:U})},M0=U=>{C(1),j({complaintTypeId:i,level:U})},x0=U=>{C(1),E({complaintTypeId:i,value:U,explicitlySelected:!0})},P0=U=>{C(1),ne({complaintTypeId:i,...U}),pe(!1)},U0=()=>{C(1),ne({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),pe(!1)},$0=()=>{i&&n(`/complaintmanagement/new/${i}`)},B0=U=>{if(U?.id==null||!i)return;const ee=r.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement";n(`/${ee}/${i}/details/${U.id}`)},dc=U=>{const ee=T.find(ce=>String(ce.id)===String(U?.currentStepId));return!ee||Ji(ee,V,R)},j0=async(U,ee)=>{if(U?.id==null||ee==null||m!=null||U.isClosed||String(U.assignedToUserId)===String(ee))return;if(!dc(U)){vr("Only users in the current level can assign this complaint.","error");return}if(!(U.assignedToUserId!=null&&U.assignedToUserId!==""&&String(U.assignedToUserId)===String(R))&&String(ee)!==String(R)){vr("Please assign this complaint to yourself first. Then you can assign it to others.","error");return}try{await t(Lt({id:U.id,assignedToUserId:ee})).unwrap(),vr("Complaint assigned successfully","success")}catch(Ee){vr(Ee?.message??"Failed to assign complaint","error")}},q0=U=>({roleUsers:h.usersByRoleId?.[String(U.roleId)]??[],assignmentLoading:!!h.loadingByRoleId?.[String(U.roleId)],assignmentError:h.errorByRoleId?.[String(U.roleId)]??null,assignmentSaving:m!=null,currentUserId:R,canAssign:dc(U),onAssign:j0,onRetryUsers:ee=>t(un(ee)),attachmentUrlMap:te});return{complaintTypeId:i,canCreateComplaint:E0,isComplaintTypeActive:q,statusNames:x,selectedStatus:Ae,selectedCreatedAtSort:ut,selectedLevel:Ye,selectedAssignment:je,workflowLevels:L0,isDownloadingReport:A,onStatusChange:F0,onCreatedAtSortChange:D0,onLevelChange:M0,onAssignmentChange:x0,dateFilter:me,hasDateFilter:!!me,isDateFilterOpen:fe,onOpenDateFilter:()=>pe(!0),onCloseDateFilter:()=>pe(!1),onApplyDateFilter:P0,onResetDateFilter:U0,onNewComplaint:$0,onDownloadReport:async()=>{if(!(!i||A)){_(!0),X(null);try{const U=Yi(je,R,_0),ce=(await jg({complaintTypeId:i,status:Ae,dateParams:ke,sort:ut===bl?"createdAt":"-createdAt",assignmentParams:U,escalationTo:Ye})).map(Ge=>({...Ol(Nl(Ge,S,T),N),_fields:Ge?.formField||[]})).filter(Ge=>Ye==="all"||String(T.find(V0=>String(V0.id)===String(Ge.currentStepId))?.levelNo??Ge.level)===String(Ye)),Ee=_l(ce,W).filter(Ge=>Gi(Ge,T,V,R)),Ce=vl(Ee).filter(Ge=>!Mh(Ge,ce,_n)),rs=new Blob([xh(Ce,ce)],{type:"text/csv;charset=utf-8;"}),uc=URL.createObjectURL(rs),En=document.createElement("a");En.href=uc,En.download=`complaints-report-${i}-${Date.now()}.csv`,document.body.appendChild(En),En.click(),document.body.removeChild(En),URL.revokeObjectURL(uc)}catch(U){X(U?.response?.data?.message??U?.message??"Failed to download report")}finally{_(!1)}}},error:u,downloadError:z,showLoading:cc,toasts:ae,onDismissToast:A0,tableProps:{scrollFields:T0.filter(U=>U.key!=="actions"),stickyFields:[Bg],tableRows:An,fieldLabel:e,getCellContext:q0,onOpenComplaint:B0,page:M,itemsPerPage:F},paginationProps:{currentPage:M,totalItems:wr.totalItems,itemsPerPage:F,onPageChange:k0,onItemsPerPageChange:O0,selectOptions:Ch,totalPages:wr.totalPages,disabled:cc,hasRows:!!(wr.totalItems>0||An.length||M>1)}}}function zg({onHeaderActionsChange:e}){const t=Wg(),[n,r]=y.useState(""),a=y.useMemo(()=>{const i=n.trim().toLowerCase();return i?t.tableProps.tableRows.filter(c=>Object.values(c).some(d=>String(d??"").toLowerCase().includes(i))):t.tableProps.tableRows},[t.tableProps.tableRows,n]),o=y.useRef({});y.useEffect(()=>{o.current={onStatusChange:t.onStatusChange,onCreatedAtSortChange:t.onCreatedAtSortChange,onLevelChange:t.onLevelChange,onAssignmentChange:t.onAssignmentChange,onNewComplaint:t.onNewComplaint,onOpenDateFilter:t.onOpenDateFilter,onDownloadReport:t.onDownloadReport}});const l=y.useMemo(()=>({onStatusChange:(...i)=>o.current.onStatusChange?.(...i),onCreatedAtSortChange:(...i)=>o.current.onCreatedAtSortChange?.(...i),onLevelChange:(...i)=>o.current.onLevelChange?.(...i),onAssignmentChange:(...i)=>o.current.onAssignmentChange?.(...i),onNewComplaint:(...i)=>o.current.onNewComplaint?.(...i),onOpenDateFilter:(...i)=>o.current.onOpenDateFilter?.(...i),onDownloadReport:(...i)=>o.current.onDownloadReport?.(...i)}),[]);return y.useEffect(()=>{e?.({search:n,onSearchChange:r,selectedStatus:t.selectedStatus,statusNames:t.statusNames,selectedCreatedAtSort:t.selectedCreatedAtSort,selectedLevel:t.selectedLevel,selectedAssignment:t.selectedAssignment,workflowLevels:t.workflowLevels,onStatusChange:l.onStatusChange,onCreatedAtSortChange:l.onCreatedAtSortChange,onLevelChange:l.onLevelChange,onAssignmentChange:l.onAssignmentChange,onNewComplaint:l.onNewComplaint,onOpenDateFilter:l.onOpenDateFilter,hasDateFilter:t.hasDateFilter,onDownloadReport:l.onDownloadReport,isDownloadingReport:t.isDownloadingReport,complaintTypeId:t.complaintTypeId,canCreateComplaint:t.canCreateComplaint,isComplaintTypeActive:t.isComplaintTypeActive})},[e,l,n,t.selectedStatus,t.statusNames,t.selectedCreatedAtSort,t.selectedLevel,t.selectedAssignment,t.workflowLevels,t.hasDateFilter,t.isDownloadingReport,t.complaintTypeId,t.canCreateComplaint,t.isComplaintTypeActive]),y.useEffect(()=>()=>e?.(null),[e]),s.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[t.error?s.jsx("p",{className:"ca-body",children:t.error}):null,t.downloadError?s.jsx("p",{className:"ca-body",children:t.downloadError}):null,t.showLoading?s.jsx(ze,{text:"Loading complaints"}):s.jsx(Ki,{...t.tableProps,tableRows:a}),t.paginationProps.hasRows?s.jsx(qi,{...t.paginationProps}):null,s.jsx(Og,{open:t.isDateFilterOpen,initial:t.dateFilter,onApply:t.onApplyDateFilter,onReset:t.onResetDateFilter,onClose:t.onCloseDateFilter}),s.jsx(Eg,{toasts:t.toasts,onDismiss:t.onDismissToast})]})}const br=({onHeaderActionsChange:e})=>s.jsxs("main",{className:"ca-query-management-page",children:[s.jsx(Ng,{}),s.jsx(zg,{onHeaderActionsChange:e})]}),Hg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"};function Ja(e){return typeof e=="string"?e:e?.label??""}function Kg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n.fieldName??n.fieldLabel??n.label??"",a=n.fieldKey??String(n.id),o=n?.options?.values??[],l=t.find(i=>i.id===n.dependsOnFieldId||n.dependsOnFieldKey&&i.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:r,fieldKey:re({fieldKey:a,label:r})?"status":a,fieldType:_a(n.fieldType,Hg,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??l?.fieldName??n.dependsOn??"",options:o.map(Ja).filter(Boolean),parentMappings:Object.fromEntries(o.map(i=>{const c=Ja(i),d=Gg(i);return!c||!d?null:[c,Jg(d,l?.options?.values??[])]}).filter(Boolean))}})}function Sr(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Yg(e){if(re(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:Sr(e.label||t)}function Gg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Jg(e,t=[]){if(!e)return"";const n=t.map(Ja).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Sr(o)===e||Sr(o)===Sr(e))||e}function Zg(e,t=[],n={}){const r=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return r;const o=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!o)return r;const l=e.parentMappings||{};if(!r.some(d=>!!l[d]))return r;const c=String(n[ie(o)]||"").trim();return c?r.filter(d=>String(l[d]||"")===c):r}function Za(e){return Bt(e)==="checkbox"}function Xg(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function Zi(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function Qg(e,t,n){const r={},a=Array.isArray(t)?t[0]:t;if(!a)return r;let o=e,l=a;for(;o?.dependsOn;){const i=Xg(n,o.dependsOn);if(!i)break;const c=(o.parentMappings||{})[l];if(!c)break;r[ie(i)]=Za(i)?[c]:c,o=i,l=c}for(o=e,l=a;o;){const i=Zi(n,o);if(!i)break;const c=i.parentMappings||{},d=Object.keys(c).find(u=>c[u]===l);if(!d)break;r[ie(i)]=Za(i)?[d]:d,o=i,l=d}return r}function Xa(e){return Array.isArray(e)?e.filter(t=>t!=null&&t!==""):e==null||e===""?[]:[e]}function Rg(e,t,n,r,a){const o={},l=Xa(n);let i=Xa(t).filter(d=>!l.includes(d)),c=e;for(;c&&i.length;){const d=Zi(r,c);if(!d)break;const u=d.parentMappings||{},f=ie(d),p=Xa(o[f]??a[f]),w=p.filter(m=>i.includes(u[m]));if(!w.length)break;const S=p.filter(m=>!w.includes(m));o[f]=Za(d)?S:S[0]??"",i=w,c=d}return o}function ie(e){return String(e.fieldKey||e.id||e.label)}function Bt(e){const t=String(e.fieldType||"").toLowerCase();return t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="email"?"email":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":t==="file"?"file":t==="images"?"images":(t==="dropdown"||t==="select"||t==="custom")&&e.options.length?"select":"text"}function Xi(e){return`new-query-${e.id??ie(e)}`}function Qi(e){if(re(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=Bt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function Ri(e){return Array.isArray(e)?e.map(t=>typeof File<"u"&&t instanceof File?t.name:t):typeof File<"u"&&e instanceof File?e.name:e??""}function Qa(e,t){if(e==null)return t?.name||"";if(typeof e=="string"||typeof e=="number")return String(e);const n=e.file&&typeof e.file=="object"?e.file:e,r=n.path||n.id||t?.name||"",a=n.originalName||t?.name||"";return a&&r&&String(r)!==a?`${r}::${a}`:r}async function e0(e,t,n){const r=Bt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(It({file:n,folder:"complaints"})).unwrap();return Qa(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const o=await e(It({file:a,folder:"complaints"})).unwrap();return Qa(o,a)}return a})):r==="images"&&Array.isArray(n)?await Promise.all(n.map(async o=>{if(typeof File<"u"&&o instanceof File){const l=await e(It({file:o,folder:"complaints"})).unwrap();return Qa(l,o)}return o})):Ri(n)}async function t0(e=[],t={},n){const r={};for(const a of e){const o=Yg(a);o&&(r[o]=await e0(n,a,t[ie(a)]))}return r}function ec(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function n0(e){return/^\d+$/.test(String(e).trim())}function r0(e=[],t={}){for(const n of e){const r=Bt(n),a=t[ie(n)],o=n.label||"This field";if(n.required&&ec(a))return`${o} is required.`;if(!ec(a)&&r==="number"&&!n0(a))return`${o} must be a valid number.`}return""}function a0({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:o}=tt(),l=Bt(e),i=Xi(e),c=re(e);if(Re(e)&&Array.isArray(r))return s.jsx(ki,{id:i,name:ie(e),required:e.required,storeList:r,value:t,onChange:n});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${d}`,children:[s.jsx("input",{id:`${i}-${d}`,name:ie(e),type:"radio",value:d,checked:t===d,onChange:u=>n(u.target.value),required:e.required,disabled:c}),s.jsx("span",{children:d})]},d))});if(l==="checkbox"){const d=Array.isArray(t)?t:[];return s.jsx("div",{className:"review-options review-options--inline",children:a.map(u=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${u}`,children:[s.jsx("input",{id:`${i}-${u}`,name:`${ie(e)}[]`,type:"checkbox",value:u,checked:d.includes(u),onChange:f=>n(f.target.checked?[...d,u]:d.filter(p=>p!==u))}),s.jsx("span",{children:u})]},u))})}if(l==="textarea")return s.jsx("textarea",{id:i,name:ie(e),className:"review-control review-control--textarea",value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c});if(l==="file")return s.jsx(gr,{id:i,name:ie(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="images")return s.jsx(gr,{id:i,name:ie(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="number")return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:"number",inputMode:"numeric",value:t,onChange:d=>n(String(d.target.value).replace(/[^\d]/g,"")),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault()},required:e.required,disabled:c});if(l==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return s.jsxs("select",{id:i,name:ie(e),className:"review-control",value:t,onChange:u=>n(u.target.value),required:e.required,disabled:c,children:[c?null:s.jsxs("option",{value:"",children:["Select ",o(e)]}),d.map(u=>s.jsx("option",{value:u,children:u},u))]})}return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:l,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function tc({storeList:e}={}){const{fieldLabel:t}=tt(),n=Q.useDispatch(),r=Pe(),{complaintTypeId:a}=mt(),o=Number(a),l=Number.isFinite(o)&&o>0,[i,c]=y.useState([]),[d,u]=y.useState({}),[f,p]=y.useState(!0),[w,S]=y.useState(!1),[m,h]=y.useState(""),[g,b]=y.useState(""),[L,N]=y.useState(""),[x,T]=y.useState(""),V=Q.useSelector($=>{const G=$.complaintType??{},D=(Array.isArray(G.complaintList)?G.complaintList:[]).find(j=>String(j?.id??j?._id)===String(a))??(String(G.selected?.id??G.selected?._id)===String(a)?G.selected:null);return String(D?.name??D?.code??"").trim()}),R=V||x;y.useEffect(()=>{if(!l||V)return;let $=!1;return n(Xe(o)).unwrap().then(G=>{if($)return;const I=G?.data??G;T(String(I?.name??I?.code??"").trim())}).catch(()=>{}),()=>{$=!0}},[o,V,n,l]),y.useEffect(()=>{if(!l)return;let $=!1;return n(De(o)).unwrap().then(G=>{if($)return;const I=Kg(Array.isArray(G?.data)?G.data:G);c(I),u(Object.fromEntries(I.map(D=>[ie(D),Qi(D)])))}).catch(G=>{$||h(typeof G=="string"?G:G?.message||"Failed to load form fields.")}).finally(()=>{$||p(!1)}),()=>{$=!0}},[o,n,l]);const Z=y.useMemo(()=>i.length>0,[i]),q=async $=>{if($.preventDefault(),!l){h("A valid complaint type is required.");return}h(""),b(""),S(!0);const G=r0(i,d);if(G){h(G),S(!1);return}try{const I=await t0(i,d,n),D=i.findIndex(re),j=i[D+1],E=(j?[].concat(Ri(d[ie(j)])).join(", ").trim():"")||R;if(!E){h("Title is required. Please fill the first field.");return}await n(Xn({complaintTypeId:o,title:E,fieldValues:I})).unwrap(),b("Query submitted successfully."),r(`/complaintmanagement/${o}/all`)}catch(I){h(typeof I=="string"?I:I?.message||"Failed to submit query.")}finally{S(!1)}},K=$=>{const G=Zg($,i,d);return s.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Bt($))?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:Xi($),children:[t($)||"Untitled field",$.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(a0,{storeList:e,field:$,options:G,value:d[ie($)]??Qi($),onChange:I=>{re($)||u(D=>{const j=Rg($,D[ie($)],I,i,D),H=Qg($,I,i);return{...D,[ie($)]:I,...j,...H}})}})]},$.id??ie($))};return s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[s.jsx("div",{className:"ca-query-details__heading",children:s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>r(-1),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),m||!l?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:m||"A valid complaint type is required."}):null,f&&l?s.jsx(ze,{text:"Loading form fields"}):null,l&&!f&&Z?s.jsxs("form",{className:"review-form-card",onSubmit:q,children:[s.jsx("div",{className:"review-form-grid",children:i.map($=>s.jsx(y.Fragment,{children:re($)?null:K($)},$.id??ie($)))}),s.jsx("div",{className:"ca-new-query__actions",children:s.jsx(ye,{type:"submit",disabled:w,children:w?"Submitting...":"Submit Complaint"})}),g?s.jsx("p",{className:"ca-body",children:g}):null]}):null]})})}const Ra=[];function s0(e,t=200,n=null){const r=Q.useDispatch(),a=Q.useSelector(S=>S.appDetails?.details?.userList)??Ra,o=Q.useSelector(S=>S.status?.list)??Ra,[l,i]=y.useState({key:null,complaints:[],error:null}),c=e==null||e===""?null:`${e}:${t}`;y.useEffect(()=>{if(e==null||e==="")return;const S=r(Tt(e));return()=>S.abort?.()},[e,r]),y.useEffect(()=>{if(e==null||e==="")return;let S=!1;const m=`${e}:${t}`;return le.get(ca,{params:{complaintTypeId:e,page:1,limit:t}}).then(h=>{S||i({key:m,complaints:Al(h.data),error:null})}).catch(h=>{S||i({key:m,complaints:[],error:h?.response?.data?.message??h?.message??"Failed to load complaints"})}),()=>{S=!0}},[e,t]);const d=l.key===c,u=d?l.complaints:Ra,f=d?l.error:null,p=c!==null&&!d;return{rows:y.useMemo(()=>{const S={tatMinutes:Number(n)||0},m=g=>{const b=new Date(g?.createdAt??g?.submittedAt??g?.date??0).getTime();return Number.isNaN(b)?0:b},h=g=>Number(g?.complaintId??g?.id)||0;return[...u].sort((g,b)=>m(b)-m(g)||h(b)-h(g)).map(g=>kl(g,o,a,S))},[u,o,a,n]),isLoading:p,error:f}}function o0(){const e=Q.useDispatch(),t=Pe(),n=xe(),{complaintTypeId:r}=mt(),a=Q.useSelector(d=>{const u=d.complaintType??{};return(Array.isArray(u.complaintList)?u.complaintList:[]).find(p=>String(p?.id??p?._id)===String(r))??(String(u.selected?.id??u.selected?._id)===String(r)?u.selected:null)}),{rows:o,isLoading:l,error:i}=s0(r,void 0,a?.tatMinutes),c=y.useCallback(d=>{t(`/complaintmanagement/${r}/details/${d.id}`,{state:{from:n.pathname}})},[r,n.pathname,t]);return y.useEffect(()=>{!a&&r&&e(Xe(r))},[r,e,a]),s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-filler-list",children:[s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>t("/"),"aria-label":"Back to Complaints",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsxs("div",{children:[s.jsxs("h1",{className:"ca-query-details__title",children:[a?.name??a?.title??"Complaints",o.length?` (${o.length})`:""]}),s.jsx("p",{className:"ca-filler-card__desc",children:a?.description||" "})]})]}),s.jsx(ye,{startIcon:s.jsx(ql,{size:14}),onClick:()=>t(`/complaintmanagement/new/${r}`),disabled:a?.isActive===!1||a?.active===!1,children:"Add Complaint"})]}),i?s.jsx("p",{className:"ca-body",children:i}):null,l?s.jsx(ze,{text:"Loading complaints"}):null,!l&&!i&&!o.length?s.jsx(Ya,{text:"No Complaint"}):null,l?null:o.map(d=>s.jsx(Yl,{row:d,onClick:c},d.id))]})})}function es(e,t={}){if(!e)return"—";const n=new Date(e);return Number.isNaN(n.getTime())?"—":new Intl.DateTimeFormat(void 0,{day:"numeric",month:"short",year:"numeric",...t}).format(n)}function nc(e){return e==null||e===""?"—":Array.isArray(e)?e.map(nc).join(", "):typeof e=="object"?e.name??e.label??JSON.stringify(e):String(e)}function rc({label:e,value:t,fieldType:n,attachmentUrls:r}){const o=_n({fieldType:n},t)?$t(t):[];return s.jsxs("div",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:e||"Field"}),o.length?s.jsx("div",{className:"ca-complaint-details__attachments",children:o.map((l,i)=>{const c=dt(l),d=r[c]||(typeof l=="string"&&/^https?:\/\//i.test(c)?c:""),u=Nn(l).split("/").pop();return d&&/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i.test(u)?s.jsx("a",{className:"ca-complaint-details__image-link",href:d,target:"_blank",rel:"noreferrer","aria-label":`View ${u}`,children:s.jsx("img",{src:d,alt:u})},`${c}-${i}`):d?s.jsx("a",{className:"ca-complaint-details__file",href:d,target:"_blank",rel:"noreferrer",children:u||"View attachment"},`${c}-${i}`):s.jsx("span",{className:"ca-complaint-details__file",children:u||"Attachment"},`${c}-${i}`)})}):s.jsx("span",{className:"ca-complaint-details__field-value",children:nc(t)})]})}function l0({activities:e=[],fallbackRemarks:t=[],localRemarks:n=[],createdAt:r,isLoading:a,error:o,onRetry:l}){const i=y.useMemo(()=>{const d=[...e.length?e.map((f,p)=>{const w=f.action??f.activityType??f.type??"",S=f.description??f.remarks??f.remark??f.message??f.title??(typeof w=="string"?w:"")??"Complaint updated",m=/submit|created/i.test(`${w} ${S}`)?"created":"remark",h=[f.createdByFirstName,f.createdByLastName].filter(g=>g!=null&&String(g).trim()!=="").join(" ").trim();return{id:f.id??`${f.createdAt??f.timestamp??"activity"}-${p}`,type:m,text:S||"Complaint updated",author:f.createdByUserName||h||f.userName||f.actorName||f.createdBy?.name||f.user?.name,createdAt:f.createdAt??f.timestamp??f.occurredAt,fromLevelNo:f.fromLevelNo??f.oldLevelNo??f.fromLevel?.levelNo,toLevelNo:f.toLevelNo??f.newLevelNo??f.toLevel?.levelNo}}):[...t.map((f,p)=>({id:`${f.createdAt||"remark"}-${p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],...n.map((f,p)=>({id:f.id??`local-${f.createdAt??p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],u=d.some(f=>f.type==="created"||/complaint submitted/i.test(f.text));return r&&!u&&d.push({id:`created-${r}`,type:"created",text:"Complaint submitted",createdAt:r}),d.sort((f,p)=>new Date(p.createdAt||0)-new Date(f.createdAt||0))},[e,r,t,n]);return s.jsxs("aside",{className:"ca-complaint-details__activity","aria-label":"Activity log",children:[s.jsxs("div",{className:"ca-complaint-details__activity-heading",children:[s.jsx("h2",{children:"Activity log"}),s.jsx("span",{children:i.length})]}),a?s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"Loading activity…"}):null,o?s.jsxs("div",{className:"ca-complaint-details__activity-empty",role:"alert",children:[s.jsx("p",{children:o}),s.jsx("button",{type:"button",onClick:l,children:"Retry"})]}):null,i.length?s.jsx("ol",{className:"ca-complaint-details__activity-list",children:i.map((c,d)=>s.jsxs("li",{className:"ca-complaint-details__activity-item",children:[s.jsx("span",{className:`ca-complaint-details__activity-icon ca-complaint-details__activity-icon--${c.type}`,"aria-hidden":"true",children:d===0?s.jsx(Qh,{size:14,strokeWidth:1.8}):s.jsx(Xh,{size:14,strokeWidth:1.8})}),s.jsxs("div",{className:"ca-complaint-details__activity-content",children:[s.jsx("p",{children:c.text}),c.type==="remark"||c.author?s.jsxs(s.Fragment,{children:[c.fromLevelNo!=null||c.toLevelNo!=null?s.jsxs("span",{className:"ca-complaint-details__activity-levels",children:[c.fromLevelNo!=null?`L${c.fromLevelNo}`:"—"," → ",c.toLevelNo!=null?`L${c.toLevelNo}`:"—"]}):null,c.author?s.jsx("span",{className:"ca-complaint-details__activity-author",children:c.author}):null]}):null,s.jsx("time",{dateTime:c.createdAt,children:es(c.createdAt,{hour:"numeric",minute:"2-digit"})})]})]},c.id))}):s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"No activity yet"})]})}function i0({complaintId:e,complaintTypeId:t}){const n=Q.useDispatch(),r=Pe(),a=xe(),o=a.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement",{data:l,isLoading:i,error:c}=Q.useSelector(A=>A.complaintsGetOne??{}),d=Q.useSelector(A=>A.activityLog??{}),u=Q.useSelector(A=>A.status?.list??[]),f=Q.useSelector(A=>A.workflow?.workflowSteps),p=Q.useSelector(A=>A.appDetails?.details?.currentUser),w=p?.id??p?.userId??null,{isLoading:S}=Q.useSelector(A=>A.changeStatus??{}),[m,h]=y.useState({}),[g,b]=y.useState(null),[L,N]=y.useState(null),[x,T]=y.useState(""),[V,R]=y.useState(""),Z=y.useMemo(()=>Array.isArray(f)?f:Array.isArray(f?.steps)?f.steps:[],[f]);y.useEffect(()=>{n(Jp()),n(nh());const A=n(Ft(e)),_=n(kt(e));return()=>{A.abort?.(),_.abort?.()}},[e,n]),y.useEffect(()=>{if(!t)return;const A=n(Tt(t)),_=n(We(t));return()=>{A.abort?.(),_.abort?.()}},[t,n]);const q=Array.isArray(l?.fieldValues)?l.fieldValues:[],K=y.useMemo(()=>{const A=new Set;return(Array.isArray(l?.fieldValues)?l.fieldValues:[]).forEach(_=>{_n(_?.formField,_?.value)&&$t(_.value).forEach(z=>{typeof z=="string"&&A.add(dt(z))})}),[...A]},[l]);y.useEffect(()=>{const A=K.filter(z=>!Object.prototype.hasOwnProperty.call(m,z));if(!A.length)return;let _=!1;return Promise.all(A.map(async z=>{try{const X=await n(dn({params:{path:z}})).unwrap();return[z,X]}catch{return[z,""]}})).then(z=>{_||h(X=>({...X,...Object.fromEntries(z)}))}),()=>{_=!0}},[K,m,n]);const $=()=>r(a.state?.from||`/${o}/${t}`),G=g??(l?.statusId==null?"":String(l.statusId)),I=L??(l?.currentStepId==null?"":String(l.currentStepId)),D=y.useMemo(()=>Z.find(A=>String(A.id)===String(l?.currentStepId)),[l?.currentStepId,Z]),j=D??l?.currentWorkflowStep,H=(Array.isArray(p?.roles)?p.roles:[]).map(A=>Number(A?.id??A?.roleId??A?.role_id??A)).filter(Number.isFinite),E=y.useMemo(()=>{if(!j)return!1;const A=Array.isArray(j.roleIds)&&j.roleIds.some(X=>H.includes(Number(X))),_=Number(p?.id??p?.userId),z=[j.userAssignments,j.users,j.userIds,j.assignedUsers].filter(Array.isArray).flat().some(X=>Number(X?.userId??X?.id??X?.user?.id??X)===_);return A||z},[j,p?.id,p?.userId,H]),M=!ba(l?.status?.name)&&w!=null&&String(l?.assignedToUserId)===String(w)&&(!D||E),C=y.useMemo(()=>[...Z].sort((A,_)=>Number(A.levelNo??0)-Number(_.levelNo??0)),[Z]),F=y.useMemo(()=>C.find(A=>String(A.id)===String(I))??(String(l?.currentStepId)===String(I)?l?.currentWorkflowStep:null),[l?.currentStepId,l?.currentWorkflowStep,I,C]),O=Number(F?.levelNo??0),W=y.useMemo(()=>new Set(C.filter((A,_)=>{const z=Number(A.levelNo??_+1);return z===O||z===O+1||z===O-1&&O>1&&tr(F?.canReassign)}).map(A=>String(A.id))),[O,F?.canReassign,C]),J=l?.remarks,te=y.useMemo(()=>[...Array.isArray(J)?J:[]],[J]),k=async()=>{if(!l?.id||S)return;R("");const A=x.trim();try{await n(Lt({id:l.id,statusId:G,currentStepId:I,assignedToUserId:w,remark:A})).unwrap(),b(null),N(null),T(""),await n(Ft(e)).unwrap(),await n(kt(e))}catch(_){R(_?.message??"Failed to update complaint")}};return s.jsxs("main",{className:"ca-complaint-details-page",children:[s.jsxs("header",{className:"ca-complaint-details__header",children:[s.jsx("button",{className:"ca-complaint-details__back",type:"button",onClick:$,"aria-label":"Back to complaints",children:s.jsx("span",{"aria-hidden":"true",children:"‹"})}),s.jsxs("div",{className:"ca-complaint-details__heading",children:[s.jsx("h1",{children:l?.complaintType?.name||"Complaint Details"}),l?.complaintType?.description?s.jsx("span",{children:l.complaintType.description}):null]}),l?s.jsx("button",{className:"ca-complaint-details__update",type:"button",onClick:k,disabled:S||!M,children:S?"Updating…":"Update"}):null]}),i?s.jsx(ze,{text:"Loading complaint details"}):null,!i&&c?s.jsxs("div",{className:"ca-complaint-details__error",role:"alert",children:[s.jsx("p",{children:c}),s.jsx("button",{type:"button",onClick:()=>n(Ft(e)),children:"Try again"})]}):null,!i&&!c&&l?s.jsxs("div",{className:"ca-complaint-details__layout",children:[s.jsxs("section",{className:"ca-complaint-details__main","aria-label":"Complaint information",children:[s.jsxs("div",{className:"ca-complaint-details__summary",children:[s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Status"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:G,disabled:!M,onChange:A=>b(A.target.value),children:[u.map(A=>{const z=!(String(A.id)===String(l.statusId))&&kh(A.name)&&!tr(j?.canResolve??l.currentWorkflowStep?.canResolve);return s.jsx("option",{value:A.id,disabled:z,children:A.name},A.id)}),u.some(A=>String(A.id)===String(G))?null:s.jsx("option",{value:G,children:l.status?.name||"—"})]}),M?s.jsx(pn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Escalation to"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:I,disabled:!M,onChange:A=>N(A.target.value),children:[C.filter(A=>W.has(String(A.id))).map(A=>s.jsxs("option",{value:A.id,children:["Level ",A.levelNo]},A.id)),C.some(A=>String(A.id)===String(I))?null:s.jsx("option",{value:I,children:l.currentWorkflowStep?.levelNo!=null?`Level ${l.currentWorkflowStep.levelNo}`:"—"})]}),M?s.jsx(pn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),q.map((A,_)=>s.jsx(rc,{label:A.formField?.fieldName??A.formField?.fieldKey??"Field",value:A.value,fieldType:A.formField?.fieldType,attachmentUrls:m},A.id??`${A.formField?.id??"field"}-${_}`)),s.jsx(rc,{label:"Created at",value:es(l.createdAt)})]}),s.jsxs("section",{className:"ca-complaint-details__remarks","aria-label":"Remarks",children:[s.jsx("h2",{children:"Remark"}),s.jsx("form",{className:"ca-complaint-details__remark-form",onSubmit:A=>{A.preventDefault()},children:s.jsx("input",{"aria-label":"Enter remark",value:x,onChange:A=>T(A.target.value),placeholder:"Enter remark"})}),V?s.jsx("p",{className:"ca-complaint-details__update-error",role:"alert",children:V}):null,te.length?s.jsx("ol",{className:"ca-complaint-details__remark-list",children:te.map((A,_)=>s.jsxs("li",{children:[s.jsxs("div",{className:"ca-complaint-details__remark-meta",children:[s.jsxs("span",{children:[A.fromLevelNo!=null||A.toLevelNo!=null?`L${A.fromLevelNo??"—"} - L${A.toLevelNo??"—"}`:"",A.createdByUserName?` | ${A.createdByUserName}`:""]}),s.jsx("time",{dateTime:A.createdAt,children:es(A.createdAt,{hour:"numeric",minute:"2-digit"})})]}),s.jsx("p",{children:A.remark})]},A.id??`${A.createdAt??"remark"}-${_}`))}):null]})]}),s.jsx(l0,{activities:d.activities,fallbackRemarks:te,createdAt:l.createdAt,isLoading:d.isLoading,error:d.error,onRetry:()=>n(kt(e))})]}):null]})}function ac(){const{complaintId:e,complaintTypeId:t}=mt();return s.jsx(i0,{complaintId:e,complaintTypeId:t},e)}function c0({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??s.jsx(Gl,{...e});return s.jsxs(ld,{children:[s.jsx(Ne,{path:"/",element:a}),s.jsx(Ne,{path:"/settings/:systemId",element:s.jsx(ji,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),s.jsx(Ne,{path:"complaintmanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ne,{path:"complaintmanagement/new/:complaintTypeId",element:s.jsx(tc,{company:e.company,storeList:e.storeList})}),s.jsx(Ne,{path:"complaintmanagement/:complaintTypeId/details/:complaintId",element:s.jsx(ac,{})}),s.jsx(Ne,{path:"complaintmanagement/:complaintTypeId",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ne,{path:"complaintmanagement/:complaintTypeId/all",element:s.jsx(o0,{})}),s.jsx(Ne,{path:"querymanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ne,{path:"querymanagement/new/:complaintTypeId",element:s.jsx(tc,{company:e.company,storeList:e.storeList})}),s.jsx(Ne,{path:"querymanagement/:complaintTypeId/details/:complaintId",element:s.jsx(ac,{})}),s.jsx(Ne,{path:"querymanagement/:complaintTypeId",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ne,{path:"*",element:a})]})}function d0({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return s.jsx(c0,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function u0({children:e}){const{cssVars:t,darkMode:n,mode:r}=Lo();return s.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function f0({basePath:e,children:t}){return ht()?t:s.jsx(Cd,{basename:e,children:t})}function p0({store:e,children:t}){return s.jsx(Q.Provider,{store:e||ol,children:t})}function h0({details:e,children:t}){const n=Q.useDispatch();return y.useEffect(()=>{n(Mo(e))},[n,e]),t}const sc=[],oc=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:o=!1,title:l,description:i,rolelist:c,roleList:d=c??sc,userList:u=sc,storeList:f,currentUser:p,company:w=p?.company,featureActions:S=ph,useDemoData:m=!0,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,onTitleClick:N,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onPublish:R,onSaveDraft:Z,showSaveButton:q,showNextButton:K,onStepChange:$,children:G})=>{const I={title:l,description:i,useDemoData:m,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,roleList:d,userList:u,storeList:f,company:w,onTitleClick:N,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onSaveDraft:Z,showSaveButton:q,showNextButton:K},D=y.useMemo(()=>({featureActions:S,apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:o,title:l,description:i,roleList:d,userList:u,storeList:f,currentUser:p,company:w,useDemoData:m,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,onTitleClick:N,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onPublish:R,onSaveDraft:Z,showSaveButton:q,showNextButton:K,onStepChange:$}),[S,e,t,r,a,o,l,i,d,u,f,p,w,m,h,g,b,L,N,x,T,V,R,Z,q,K,$]);return s.jsx(yi.Provider,{value:w,children:s.jsx(Eo,{theme:a,darkMode:o,children:s.jsx(p0,{store:n,children:s.jsx(h0,{details:D,children:s.jsx(u0,{children:s.jsx(vo,{apiUrl:e,authToken:t,children:s.jsx(f0,{basePath:r,children:s.jsx(d0,{pageProps:I,onPublish:R,onStepChange:$,children:G})})})})})})})})};function m0({children:e,onClick:t,className:n="",active:r=!1}){return s.jsx("button",{type:"button",className:`ca-chip ${r?"ca-chip--active":""} ${n}`.trim(),onClick:t,children:e})}function g0({checked:e=!1,onChange:t,name:n,value:r,"aria-label":a,className:o=""}){return s.jsxs("label",{className:`ca-radio ${o}`.trim(),children:[s.jsx("input",{type:"radio",className:"ca-radio__input",name:n,value:r,checked:e,onChange:t,"aria-label":a}),s.jsx("span",{className:"ca-radio__mark"})]})}function y0({status:e="inactive",label:t,className:n=""}){const a=String(e).toLowerCase()==="active",o=t??(a?"Active":"Inactive");return s.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${n}`.trim(),children:o})}const b0=["Open","Cancelled","Closed"];function S0({selectedStatus:e,statusNames:t=[],selectedCreatedAtSort:n,selectedLevel:r,selectedAssignment:a,workflowLevels:o=[],onStatusChange:l,onCreatedAtSortChange:i,onLevelChange:c,onAssignmentChange:d,onOpenDateFilter:u,hasDateFilter:f=!1,onDownloadReport:p,isDownloadingReport:w=!1,complaintTypeId:S}){return s.jsxs("div",{className:"ca-complaint-table__toolbar",children:[s.jsxs("div",{className:"ca-complaint-table__filters",children:[s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx(am,{size:14,"aria-hidden":"true"}),s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),s.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:m=>l?.(m.target.value),children:[s.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:b0).map(m=>s.jsx("option",{value:m,children:or(m)},m))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Sort by created date"}),s.jsxs("select",{value:n,"aria-label":"Sort by created date",onChange:m=>i?.(m.target.value),children:[s.jsx("option",{value:"desc",children:"Created: Newest first"}),s.jsx("option",{value:"asc",children:"Created: Oldest first"})]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by workflow level"}),s.jsxs("select",{value:r,"aria-label":"Filter by workflow level",onChange:m=>c?.(m.target.value),children:[s.jsx("option",{value:"all",children:"All Levels"}),o.map(m=>s.jsxs("option",{value:m,children:["Level ",m]},m))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by assignment"}),s.jsxs("select",{value:a,"aria-label":"Filter by assignment",onChange:m=>d?.(m.target.value),children:[s.jsx("option",{value:"all",children:"All"}),s.jsx("option",{value:"mine",children:"Assign to Me"}),s.jsx("option",{value:"unassigned",children:"Unassigned"})]})]}),s.jsx("button",{type:"button",className:`ca-complaint-table__sort${f?" ca-complaint-table__sort--active":""}`,"aria-label":"Filter by date",title:"Filter by date",onClick:u,children:s.jsx(sm,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),s.jsx("div",{className:"ca-complaint-table__actions",children:s.jsx(ye,{variant:"outline",size:"sm",startIcon:s.jsx(nm,{size:14}),onClick:p,disabled:w||!S,children:"Download Report"})})]})}const v0=Ve.colors,w0=Ve.radii,C0=Ve.spacing,N0=Ve.typography;P.AddFormButton=gi,P.AddTableCard=ai,P.ApiProvider=vo,P.BodyText=Qn,P.Button=ye,P.COMPLAINT_ENDPOINTS=Wn,P.CardFooter=fl,P.CardHeader=ul,P.ChevronDownIcon=Ea,P.ChevronRightIcon=fn,P.Chip=m0,P.CloseIcon=ei,P.ComplaintApp=oc,P.ComplaintManagementPage=Gl,P.ComplaintSettingsPage=ji,P.ComplaintTableGrid=Ki,P.ComplaintTableToolbar=S0,P.CustomPagination=qi,P.DEFAULT_PAGE_DESCRIPTION=Ul,P.DEMO_SYSTEMS=zh,P.DataPoint=pl,P.Divider=hl,P.DragHandleIcon=Si,P.EmptyState=Ya,P.FieldLabel=Aa,P.FormCard=wi,P.FormCardGrid=Ci,P.FormField=Be,P.FormInput=yn,P.FormSelect=Ia,P.FormTextarea=wm,P.Heading1=fa,P.Heading2=pa,P.Input=Ot,P.LabelText=cl,P.LayersIcon=vm,P.LinkText=oh,P.Loading=ze,P.PageHeader=ha,P.PlusIcon=ll,P.Radio=g0,P.RoleMultiSelect=ur,P.SETTINGS_STEPS=$e,P.SearchBar=Pl,P.SearchIcon=xl,P.Select=Ke,P.SettingsCard=gn,P.SettingsCardHeader=Ql,P.SettingsWizardProvider=Xl,P.StatusBadge=y0,P.Stepper=bn,P.SystemCard=Dl,P.SystemCardGrid=Ml,P.TableCard=si,P.TableCardGrid=fi,P.Tag=ti,P.Textarea=Rl,P.ThemeProvider=Eo,P.Toggle=Rn,P.ToggleField=Fi,P.TrashIcon=er,P.Typography=Qe,P.ValueText=dl,P.WORKFLOW_SUBSTEPS=Sm,P.api=le,P.appDetailsReducer=xo,P.clearAppDetails=op,P.clearComplaintError=Xf,P.clearId=lp,P.clearSelectedComplaintResource=Qf,P.colors=v0,P.complaintReducer=Fo,P.createComplaintStore=sl,P.darkTheme=en,P.deepMerge=Nt,P.default=oc,P.defaultThemeFile=wo,P.deleteFormField=nn,P.getFormFields=De,P.lightTheme=Ve,P.normalizeThemeFile=Co,P.radii=w0,P.resetComplaintState=Rf,P.resolveActiveTheme=No,P.saveFormFields=tn,P.setAppDetails=Mo,P.setAuthToken=Qr,P.setBaseUrl=So,P.setId=lt,P.setIsEdit=_t,P.spacing=C0,P.store=ol,P.themeToCssVars=_o,P.typography=N0,P.useSettingsWizard=dr,P.useTheme=Lo,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
11
+ `+o)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=st(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:o}=n;r!==void 0&&Vn.assertOptions(r,{silentJSONParsing:ve.transitional(ve.boolean),forcedJSONParsing:ve.transitional(ve.boolean),clarifyTimeoutError:ve.transitional(ve.boolean),legacyInterceptorReqResOrdering:ve.transitional(ve.boolean),advertiseZstdAcceptEncoding:ve.transitional(ve.boolean),validateStatusUndefinedResolves:ve.transitional(ve.boolean)},!1),a!=null&&(S.isFunction(a)?n.paramsSerializer={serialize:a}:Vn.assertOptions(a,{encode:ve.function,serialize:ve.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),Vn.assertOptions(n,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let l=o&&S.merge(o.common,o[n.method]);o&&S.forEach(["delete","get","head","post","put","patch","query","common"],b=>{delete o[b]}),n.headers=Se.concat(l,o);const i=[];let c=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(n)===!1)return;c=c&&g.synchronous;const m=n.transitional||qr;m&&m.legacyInterceptorReqResOrdering?i.unshift(g.fulfilled,g.rejected):i.push(g.fulfilled,g.rejected)});const d=[];this.interceptors.response.forEach(function(g){d.push(g.fulfilled,g.rejected)});let f,u=0,p;if(!c){const b=[Gr.bind(this),void 0];for(b.unshift(...i),b.push(...d),p=b.length,f=Promise.resolve(n);u<p;)f=f.then(b[u++],b[u++]);return f}p=i.length;let w=n;for(;u<p;){const b=i[u++],g=i[u++];try{w=b?b(w):w}catch(m){if(!g){f=Promise.reject(m);break}try{const h=g.call(this,m);S.isThenable(h)&&(f=Promise.resolve(h).then(()=>Gr.call(this,w)))}catch(h){f=Promise.reject(h)}break}}if(!f)try{f=Gr.call(this,w)}catch(b){f=Promise.reject(b)}for(u=0,p=d.length;u<p;)f=f.then(d[u++],d[u++]);return f}getUri(t){t=st(this.defaults,t);const n=ro(t.baseURL,t.url,t.allowAbsoluteUrls,t);return Js(n,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){ot.prototype[t]=function(n,r){return this.request(st(r||{},{method:t,url:n,data:r&&S.hasOwnProp(r,"data")?r.data:void 0}))}}),S.forEach(["post","put","patch","query"],function(t){function n(r){return function(o,l,i){return this.request(st(i||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:l}))}}ot.prototype[t]=n(),t!=="query"&&(ot.prototype[t+"Form"]=n(!0))});let Uf=class hc{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(a=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](a);r._listeners=null}),this.promise.then=a=>{let o;const l=new Promise(i=>{r.subscribe(i),o=i}).then(a);return l.cancel=function(){r.unsubscribe(o)},l},t(function(o,l,i){r.reason||(r.reason=new Rt(o,l,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new hc(function(a){t=a}),cancel:t}}};function Bf(e){return function(n){return e.apply(null,n)}}function $f(e){return S.isObject(e)&&e.isAxiosError===!0}const Xr={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerReturnsAnUnknownError:520,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Xr).forEach(([e,t])=>{Xr[t]=e});function bo(e){const t=new ot(e),n=Is(ot.prototype.request,t);return S.extend(n,ot.prototype,t,{allOwnKeys:!0}),S.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return bo(st(e,a))},n}const he=bo(Qt);he.Axios=ot,he.CanceledError=Rt,he.CancelToken=Uf,he.isCancel=Qs,he.VERSION=Kr,he.toFormData=Un,he.AxiosError=H,he.Cancel=he.CanceledError,he.all=function(t){return Promise.all(t)},he.spread=Bf,he.isAxiosError=$f,he.mergeConfig=st,he.AxiosHeaders=Se,he.formToJSON=e=>Zs(S.isHTMLForm(e)?new FormData(e):e),he.getAdapter=go.getAdapter,he.HttpStatusCode=Xr,he.default=he;const{Axios:Q0,AxiosError:R0,CanceledError:ey,isCancel:ty,CancelToken:ny,VERSION:ry,all:ay,Cancel:sy,isAxiosError:oy,spread:ly,toFormData:iy,AxiosHeaders:cy,HttpStatusCode:dy,formToJSON:uy,getAdapter:fy,mergeConfig:py,create:hy}=he;function qn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)r!=="__proto__"&&(e[r]=n[r])}return e}var jf={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Zr(e,t){function n(a,o,l){if(!(typeof document>"u")){l=qn({},t,l),typeof l.expires=="number"&&(l.expires=new Date(Date.now()+l.expires*864e5)),l.expires&&(l.expires=l.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var i="";for(var c in l)l[c]&&(i+="; "+c,l[c]!==!0&&(i+="="+l[c].split(";")[0]));return document.cookie=a+"="+e.write(o,a)+i}}function r(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var o=document.cookie?document.cookie.split("; "):[],l={},i=0;i<o.length;i++){var c=o[i].split("="),d=c.slice(1).join("=");try{var f=decodeURIComponent(c[0]);if(f in l||(l[f]=e.read(d,f)),a===f)break}catch{}}return a?l[a]:l}}return Object.create({set:n,get:r,remove:function(a,o){n(a,"",qn({},o,{expires:-1}))},withAttributes:function(a){return Zr(this.converter,qn({},this.attributes,a))},withConverter:function(a){return Zr(qn({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var en=Zr(jf,{path:"/"});const Vf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let wt="https://api-grievance.airaops.com",So=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Cr&&Cr.tagName.toUpperCase()==="SCRIPT"&&Cr.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&Vf?.VITE_API_URL)wt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(wt=e.env.VITE_API_URL)}}catch{}const vo=e=>{wt=e||"",ue.defaults.baseURL=wt},Qr=e=>{So=e||null},qf=()=>So||en.get("token")||null,ue=he.create({baseURL:wt,headers:{Accept:"application/json","Content-Type":"application/json"}});ue.interceptors.request.use(e=>{const t=qf();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Rr=!1,ea=null;ue.interceptors.response.use(e=>e,async e=>{const t=e.config,n=e.response;if(n&&(n.status===401||n.status===402)){const r=en.get("refreshToken");if(r)try{Rr||(Rr=!0,ea=he.post(`${wt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await ea,{token:o,refreshToken:l}=a.data;return Qr(o),l&&en.set("refreshToken",l),t.headers.Authorization=`Bearer ${o}`,ue(t)}catch{en.remove("token"),en.remove("refreshToken")}finally{Rr=!1,ea=null}}return Promise.reject(e)});const Wf=y.createContext(null),wo=({children:e,apiUrl:t,authToken:n})=>(t&&vo(t),Qr(n||null),s.jsx(Wf.Provider,{value:{apiUrl:t,authToken:n},children:e})),qe={mode:"light",colors:{primary:"#2D64B8",primaryHover:"#2557A3",text:"#111827",textSecondary:"#6B7280",textMuted:"#9CA3AF",border:"#E5E7EB",borderLight:"#F3F4F6",background:"#FFFFFF",surface:"#FFFFFF",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#ECFDF5",activeBorder:"#A7F3D0",activeText:"#059669",inactiveBg:"#F3F4F6",inactiveBorder:"#D1D5DB",inactiveText:"#6B7280",link:"#2D64B8",divider:"#E5E7EB",accentBorder:"#C5D7F0",accentBg:"#EEF4FB",stepDone:"#D6E4F7",success:"#22C55E",danger:"#EF4444",secondaryBtn:"#D1D5DB",secondaryBtnHover:"#C4C9D1",inputBg:"#FFFFFF",tableHeadBg:"#EEF4FB",sidebarBg:"#FAFBFD",overlay:"rgba(16, 24, 40, 0.06)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(16, 24, 40, 0.04)",settings:"0 1px 3px rgba(16, 24, 40, 0.06)"}},tn={mode:"dark",colors:{primary:"#5B8DEF",primaryHover:"#7BA3F3",text:"#F3F4F6",textSecondary:"#A1A1AA",textMuted:"#71717A",border:"#3F3F46",borderLight:"#27272A",background:"#0F1115",surface:"#18181B",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#052E1C",activeBorder:"#166534",activeText:"#4ADE80",inactiveBg:"#27272A",inactiveBorder:"#3F3F46",inactiveText:"#A1A1AA",link:"#7BA3F3",divider:"#3F3F46",accentBorder:"#2A3A55",accentBg:"#1A2333",stepDone:"#1E3A5F",success:"#22C55E",danger:"#F87171",secondaryBtn:"#3F3F46",secondaryBtnHover:"#52525B",inputBg:"#18181B",tableHeadBg:"#1A2333",sidebarBg:"#12141A",overlay:"rgba(0, 0, 0, 0.35)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(0, 0, 0, 0.35)",settings:"0 1px 3px rgba(0, 0, 0, 0.4)"}},Co={light:qe,dark:tn};function Ct(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function At(e,t){if(!Ct(t))return e;const n={...e};return Object.keys(t).forEach(r=>{const a=t[r];Ct(a)&&Ct(e[r])?n[r]=At(e[r],a):a!==void 0&&(n[r]=a)}),n}function Ao(e){return!e||!Ct(e)?{light:qe,dark:tn}:Ct(e.light)||Ct(e.dark)?{light:At(qe,e.light||{}),dark:At(tn,e.dark||{})}:{light:At(qe,e),dark:At(tn,e)}}function No(e,t=!1){const n=Ao(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const zf={primary:"--ca-primary",primaryHover:"--ca-primary-hover",text:"--ca-text",textSecondary:"--ca-text-secondary",textMuted:"--ca-text-muted",border:"--ca-border",borderLight:"--ca-border-light",background:"--ca-bg",surface:"--ca-surface",white:"--ca-white",onPrimary:"--ca-on-primary",activeBg:"--ca-active-bg",activeBorder:"--ca-active-border",activeText:"--ca-active-text",inactiveBg:"--ca-inactive-bg",inactiveBorder:"--ca-inactive-border",inactiveText:"--ca-inactive-text",link:"--ca-link",divider:"--ca-divider",accentBorder:"--ca-accent-border",accentBg:"--ca-accent-bg",stepDone:"--ca-step-done",success:"--ca-success",danger:"--ca-danger",secondaryBtn:"--ca-secondary-btn",secondaryBtnHover:"--ca-secondary-btn-hover",inputBg:"--ca-input-bg",tableHeadBg:"--ca-table-head-bg",sidebarBg:"--ca-sidebar-bg",overlay:"--ca-overlay"},Hf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},Kf={fontFamily:"--ca-font",h1Size:"--ca-h1-size",h2Size:"--ca-h2-size",bodySize:"--ca-body-size",labelSize:"--ca-label-size",valueSize:"--ca-value-size",smallSize:"--ca-small-size"},Jf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function _o(e){const t={};return e?.colors&&Object.entries(zf).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(Hf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(Kf).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(Jf).forEach(([n,r])=>{e.shadow[n]!=null&&(t[r]=e.shadow[n])}),t["--ca-on-primary"]&&!t["--ca-white"]&&(t["--ca-white"]=t["--ca-on-primary"]),t}const Eo=y.createContext({darkMode:!1,theme:null,themeFile:Co,cssVars:{}});function Lo({theme:e,darkMode:t=!1,children:n}){const r=y.useMemo(()=>{const a=No(e,!!t),o=_o(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:o,mode:a.mode}},[e,t]);return s.jsx(Eo.Provider,{value:r,children:n})}function To(){return y.useContext(Eo)}const Wn=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),Yf=e=>{const t=e?.response?.data,n=Array.isArray(t?.errors)?t.errors.map(a=>a?.message).filter(Boolean):[];if(n.length)return n.join(" ");const r=t?.message??t?.error??e?.message;return Array.isArray(r)?r.filter(Boolean).join(", "):r&&typeof r=="object"?r.message??JSON.stringify(r):r||"Something went wrong"},Gf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Yf(e)}),ta=(e,t)=>ce.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return Gf(a,r)}}),xe=ta("complaint/types/getFormFields",(e,{signal:t})=>ue.get(Wn.formFields(e),{signal:t})),nn=ta("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>ue.put(Wn.formFields(e),t)),rn=ta("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>ue.delete(`${Wn.formFields(e)}/${t}`)),Io={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},Xf=e=>{if(Array.isArray(e))return{data:e,pagination:null};const t=e?.data??e;return Array.isArray(t)?{data:t,pagination:e?.pagination??null}:{data:t?.results??t?.items??[],pagination:t?.pagination??e?.pagination??null}},na=e=>e.payload?.message??e.error?.message??"Something went wrong",Fo=ce.createSlice({name:"complaintAppComplaint",initialState:Io,reducers:{clearComplaintError(e,t){const n=t.payload;n&&e[n]?.error!==void 0?e[n].error=null:e.error=null},clearSelectedComplaintResource(e,t){const n=t.payload;n&&e[n]?.selected!==void 0&&(e[n].selected=null)},resetComplaintState(){return Io}},extraReducers:e=>{e.addCase(xe.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(xe.fulfilled,(t,n)=>{const r=Xf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(xe.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=na(n)}).addCase(nn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(nn.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(nn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)}).addCase(rn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(rn.fulfilled,(t,n)=>{const r=n.meta.arg?.fieldId;t.formFields.isMutating=!1,t.formFields.data=t.formFields.data.filter(a=>a.id!==r)}).addCase(rn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)})}}),{clearComplaintError:Zf,clearSelectedComplaintResource:Qf,resetComplaintState:Rf}=Fo.actions,ko=Fo.reducer,an="/api/v1/complaint-types",sn=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n?.message==="Complaint type code already exists"?"A category with this name already exists. Please use a different name.":null)??(r.includes("code must be shorter than or equal to 50 characters")?"Category name cannot exceed 50 characters. Please enter a shorter name.":null)??(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},on=ce.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await ue.get(an,{params:e??{}})).data}catch(n){return sn(n,t)}}),Qe=ce.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await ue.get(`${an}/${n}`)).data}catch(n){return sn(n,t)}}),ln=ce.createAsyncThunk("complaintType/create",async({payload:e,onSuccess:t,onFail:n},r)=>{try{const a={code:e.categoryName,name:e.categoryName,description:e.description,tatMinutes:e.tatMinutes,accessType:e.visibilityType,roleIds:e.roles.map(l=>parseInt(l,10)),userIds:(e.userIds??[]).map(l=>parseInt(l,10))},o=await ue.post(an,a);return t&&typeof t=="function"&&t(o.data),o.data}catch(a){return console.log("createComplaintType error:",a),n&&typeof n=="function"&&n(a),sn(a,r)}}),cn=ce.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:n,onFail:r},a)=>{try{const o=await ue.patch(`${an}/${e}`,t);return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return console.log("updateComplaintType error:",o),r&&typeof r=="function"&&r(o),sn(o,a)}}),zn=ce.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await ue.delete(`${an}/${e}`);return{id:e,data:n.data}}catch(n){return sn(n,t)}}),ra=["userId","id","_id","userID","user_id","value"];function Hn(e,t=ra){if(typeof e=="string"||typeof e=="number")return String(e).trim()||null;if(!e||typeof e!="object")return null;for(const n of t){const r=e[n];if(r!=null&&r!==e){const a=Hn(r,ra);if(a!==null)return a}}return Hn(e.user,ra)}function aa(e){const t=Hn(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ep(e,t){const n=aa(e),r=Hn(t);return r!==null&&n?.includes(r)===!0}const tp={complaintList:[],selected:null,loading:!1,saving:!1,error:null},np=["data","items","results","content","records","list","payload","response","result"],Oo=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of np)if(e[t]!==void 0){const n=Oo(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},Ne=e=>e?.id??e?._id,sa=(e,t)=>{if(!t)return e;const n=aa(e),r=aa(t);return n?.length||!r?.length?e:{...e,userIds:r}},Do=ce.createSlice({name:"complaintType",initialState:tp,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(Ne(a))===String(n)?{...a,isActive:r}:a),String(Ne(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(on.pending,t=>{t.loading=!0,t.error=null}).addCase(on.fulfilled,(t,n)=>{t.loading=!1;const r=new Map(t.complaintList.map(a=>[String(Ne(a)),a]));t.complaintList=Oo(n.payload).map(a=>sa(a,r.get(String(Ne(a)))))}).addCase(on.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(Qe.pending,t=>{t.loading=!0,t.error=null}).addCase(Qe.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(o=>String(Ne(o))===String(Ne(r)));t.selected=sa(r,a)}).addCase(Qe.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint type"}).addCase(ln.pending,t=>{t.saving=!0,t.error=null}).addCase(ln.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=n.meta?.arg?.payload?.userIds,o=Array.isArray(a)?{...r,userIds:a}:r;t.complaintList=[o,...t.complaintList.filter(l=>String(Ne(l))!==String(Ne(o)))],t.selected=o}).addCase(ln.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to create complaint type"}).addCase(cn.pending,t=>{t.saving=!0,t.error=null}).addCase(cn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=Ne(r)??n.meta?.arg?.id,o=t.complaintList.find(c=>String(Ne(c))===String(a)),l=n.meta?.arg?.data?.userIds,i=Array.isArray(l)?{...r,userIds:l}:sa(r,o);t.complaintList=t.complaintList.map(c=>String(Ne(c))===String(a)?i:c),t.selected=i}).addCase(cn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update complaint type"}).addCase(zn.pending,t=>{t.saving=!0,t.error=null}).addCase(zn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ne(a))!==String(r)),String(Ne(t.selected))===String(r)&&(t.selected=null)}).addCase(zn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:rp}=Do.actions,ap=Do.reducer,sp={details:{},id:null,isEdit:!1},xo=ce.createSlice({name:"appDetails",initialState:sp,reducers:{setAppDetails(e,t){e.details=t.payload??{}},clearAppDetails(e){e.details={}},setId(e,t){e.id=t.payload},setIsEdit(e,t){e.isEdit=t.payload.data},clearId(e){e.id=null}}}),{setAppDetails:Mo,clearAppDetails:op,setId:lt,setIsEdit:Nt,clearId:lp}=xo.actions,Po=xo.reducer,ip={list:[],pagination:null,isLoading:!1,error:null},Uo=ce.createSlice({name:"roles",initialState:ip,reducers:{}});Uo.reducer;const Kn=60,oa=24*Kn,cp={d:oa,h:Kn,m:1};function la(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Bo(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,o)=>a+Ie(o?.escalateAfterMinutes),0)}function Ie(e){if(e==null||e==="")return 0;if(typeof e=="number")return la(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return la(t);const n=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let r=0,a=!1,o;for(;(o=n.exec(t))!==null;)a=!0,r+=(cp[o[2]]||0)*Number(o[1]);return a?la(r):0}function _t(e){const t=Math.round(typeof e=="number"?e:Ie(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/oa),r=Math.floor(t%oa/Kn),a=t%Kn,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&o.push(`${a}m`),o.join("")}function dp(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Ie(e)>0}function up(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>_t(Number(n))||"0m")}function fp(e=[]){return Bo(e,!0)}function Et(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Ie(t)-Bo(e,!1)),r=_t(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((o,l)=>l===a?{...o,escalateAfterMinutes:r}:o)}function pp(e=[]){if(!Array.isArray(e)||e.length===0)return e;const t=e.length-1;return e.map((n,r)=>r===t?{...n,escalateAfterMinutes:""}:n)}const $o=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function hp(e){const t=e?.response?.data??e?.payload??e,n=Array.isArray(t?.errors)?t.errors.map(r=>r?.message).filter(Boolean):[];return n.length?n.join(" "):t?.message??t?.error??e?.message??"Something went wrong"}function ia(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const jo=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:hp(e)}),We=ce.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await ue.get($o(e))).data}catch(n){return jo(n,t)}}),Jn=ce.createAsyncThunk("workflow/updateSteps",async({id:e,tables:t,onSuccess:n,onFail:r},a)=>{try{if(!Array.isArray(t.tables))throw new Error("tables must be an array");const o=t.tables.map((i,c)=>{const d=Array.isArray(i.role)?i.role.map(b=>Number(b)):[],f=Array.isArray(i.users)?i.users.map(b=>Number(b)):[],u=d.length>0,p=f.length>0,w=!u&&(p||i.workflowType==="user");return{levelNo:c+1,workflowType:w?"Users Based":"Role Based",...u||!w?{roleIds:d}:{},...p||w?{userAssignments:f.map(b=>({userId:b}))}:{},escalateAfterMinutes:Ie(i.escalateAfterMinutes),canResolve:ia(i.canResolve),canReassign:ia(i.canReassign),isFinalLevel:ia(i.finalLevel),isActive:!0}}),l=await ue.put($o(e),{steps:o});return typeof n=="function"&&n(l.data),l.data}catch(o){return typeof r=="function"&&r(o),jo(o,a)}}),mp={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},gp=ce.createSlice({name:"workflow",initialState:mp,reducers:{},extraReducers:e=>{e.addCase(We.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(We.fulfilled,(t,n)=>{t.workflowStepsLoading=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(We.rejected,(t,n)=>{n.meta.aborted||(t.workflowStepsLoading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch workflow steps")}).addCase(Jn.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Jn.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Jn.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,ca="/api/v1/complaints",yp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Yn=ce.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:n,page:r=1,limit:a=10,status:o,sort:l="-createdAt",fromDate:i,toDate:c,assignedToUserId:d,unassigned:f,showAllComplaints:u,escalationTo:p}=e||{},w={page:r,limit:a,complaintTypeId:n,sort:l};return o!=null&&o!==""&&o!=="all"&&(w.status=o),i&&c&&(w.fromDate=i,w.toDate=c),d!=null&&d!==""&&(w.assignedToUserId=d),f!=null&&f!==""&&(w.unassigned=f),u!=null&&u!==""&&(w.showAllComplaints=u),p!=null&&p!==""&&p!=="all"&&(w.escalationTo=p),(await ue.get(ca,{params:w,signal:t.signal})).data}catch(n){return yp(n,t)}}),bp=e=>`/api/v1/complaints/${e}`,Sp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})};function da(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const Lt=ce.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:n,assignedToUserId:r,remark:a,onSuccess:o,onFail:l},i)=>{try{const c={},d=da(t),f=da(n),u=da(r);d!=null&&(c.statusId=d),f!=null&&(c.currentStepId=f),u!=null&&(c.assignedToUserId=u),a!=null&&String(a).trim()!==""&&(c.remarks=String(a).trim());const p=await ue.patch(bp(e),c,{signal:i.signal});return o&&typeof o=="function"&&o(p.data),p.data}catch(c){return l&&typeof l=="function"&&l(c),Sp(c,i)}}),Vo={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},vp=e=>{const t=e?.data??e;if(Array.isArray(t))return{list:t,meta:e?.meta??e?.pagination??null};const n=t?.data??t?.results??t?.items??[];return{list:Array.isArray(n)?n:[],meta:t?.meta??t?.pagination??e?.meta??e?.pagination??null}},wp=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",qo=e=>e?.complaintId??e?.id,Cp=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??qo(r);return a==null?e:e.map(o=>{if(String(qo(o))!==String(a))return o;const l={...o};return r&&typeof r=="object"&&!Array.isArray(r)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(i=>{r[i]!==void 0&&(l[i]=r[i])}),n.statusId!=null&&(l.statusId=n.statusId),n.status&&(l.status=n.status),n.currentStepId!=null&&(l.currentStepId=n.currentStepId,l.currentWorkflowStepId=n.currentStepId,l.workflowStepId=n.currentStepId),n.level!=null&&(l.level=n.level,l.levelNo=n.level),n.assignedToUserId!=null&&(l.assignedToUserId=n.assignedToUserId),l})},Wo=ce.createSlice({name:"complaintManagement",initialState:Vo,reducers:{resetComplaintManagementState:()=>Vo},extraReducers:e=>{e.addCase(Yn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg?.complaintTypeId??null}).addCase(Yn.fulfilled,(t,n)=>{const r=n.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r))return;const a=vp(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(Yn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg?.complaintTypeId;t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=wp(n))}).addCase(Lt.fulfilled,(t,n)=>{t.list=Cp(t.list,n)})}}),{resetComplaintManagementState:zo}=Wo.actions,Ap=Wo.reducer,Np=e=>`/api/v1/complaint-types/${e}/statuses`,_p="/api/v1/complaints/summary",Ho=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Tt=ce.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await ue.get(Np(e),{signal:t.signal})).data}catch(n){return Ho(n,t)}}),Gn=ce.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await ue.get(_p,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return Ho(n,t)}}),Ko={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},Ep=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},Lp=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Tp=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",Ip=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Xn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),Jo=ce.createSlice({name:"status",initialState:Ko,reducers:{resetStatusState:()=>Ko},extraReducers:e=>{e.addCase(Tt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(Tt.fulfilled,(t,n)=>{const r=n.meta.arg;if(Xn(t.requestedComplaintTypeId,r))return;const a=Ep(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((o,l)=>(o.displayOrder??0)-(l.displayOrder??0))}).addCase(Tt.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Xn(t.requestedComplaintTypeId,r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Tp(n))}).addCase(Gn.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(Gn.fulfilled,(t,n)=>{const r=n.meta.arg;Xn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=Lp(n.payload))}).addCase(Gn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Xn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=Ip(n))})}}),{resetStatusState:Yo}=Jo.actions,Fp=Jo.reducer,kp="/api/v1/complaints",Op="/api/v1/complaint-types",Go=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Zn=ce.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await ue.post(kp,e,{signal:t.signal})).data}catch(n){return Go(n,t)}}),dn=ce.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const o=await ue.patch(`${Op}/${e}`,{isActive:t},{signal:a.signal});return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return r&&typeof r=="function"&&r(o),Go(o,a)}}),Dp={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},xp=e=>e.payload?.message??e.error?.message??"Failed to create complaint",Mp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",Pp=ce.createSlice({name:"createComplaint",initialState:Dp,reducers:{},extraReducers:e=>{e.addCase(Zn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(Zn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(Zn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=xp(n))}).addCase(dn.pending,t=>{t.isUpdatingActive=!0,t.activeError=null}).addCase(dn.fulfilled,(t,n)=>{t.isUpdatingActive=!1;const r=n.payload?.data??n.payload;t.activeComplaintTypeId=r?.id??n.meta?.arg?.id??null,t.isActive=!!(r?.isActive??r?.active??n.meta?.arg?.isActive)}).addCase(dn.rejected,(t,n)=>{n.meta.aborted||(t.isUpdatingActive=!1,t.activeError=Mp(n))})}}).reducer,Xo={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},Up=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Zo=ce.createSlice({name:"changeStatus",initialState:Xo,reducers:{resetChangeStatusState:()=>Xo},extraReducers:e=>{e.addCase(Lt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=n.meta.arg?.id??null}).addCase(Lt.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=n.payload?.data??n.payload}).addCase(Lt.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=Up(n))})}}),{resetChangeStatusState:Bp}=Zo.actions,$p=Zo.reducer,jp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},ua=(e,t)=>{try{return jp?.[e]||t}catch{return t}},Vp=ua("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Qo=ua("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),qp=ua("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Ro=e=>/^https?:\/\//i.test(e)?e:`${Vp}${e}`,Wp=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",el=(e,t)=>{const n=e?.response?.data,r=n?.error?.details?.errors?.file;if(r)return r;const a=n?.message;return a||(e?.response?.status===404?`S3 upload endpoint was not found: ${Qo}`:e?.response?.data?.error??e?.message??t)},It=ce.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:Wp(e)},a=await ue.post(Ro(Qo),r),o=a.data.uploadSignedUrl;return(await fetch(o,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:n("Error uploading file")}catch(r){return n(el(r,"Error uploading file"))}}),un=ce.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await ue.get(Ro(qp),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(el(n,"Error getting file signedUrl"))}}),zp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},Hp=ce.createSlice({name:"s3",initialState:zp,reducers:{},extraReducers:e=>{e.addCase(It.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(It.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(It.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(un.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(un.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(un.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,Kp=e=>`/api/v1/complaints/${encodeURIComponent(e)}`,Jp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Failed to fetch complaint details"})},Ft=ce.createAsyncThunk("complaintsGetOne/fetchById",async(e,t)=>{try{return(await ue.get(Kp(e),{signal:t.signal})).data}catch(n){return Jp(n,t)}}),tl={data:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintId:null},Yp=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint details",nl=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),rl=ce.createSlice({name:"complaintsGetOne",initialState:tl,reducers:{resetComplaintDetails:()=>tl},extraReducers:e=>{e.addCase(Ft.pending,(t,n)=>{t.data=null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.requestedComplaintId=n.meta.arg??null}).addCase(Ft.fulfilled,(t,n)=>{nl(t.requestedComplaintId,n.meta.arg)||(t.data=n.payload?.data??n.payload,t.isLoading=!1,t.hasLoaded=!0)}).addCase(Ft.rejected,(t,n)=>{n.meta.aborted||nl(t.requestedComplaintId,n.meta.arg)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Yp(n))})}}),{resetComplaintDetails:Gp}=rl.actions,Xp=rl.reducer,Zp=e=>`/api/v1/users/role/${e}`,fn=ce.createAsyncThunk("roleUsers/fetchByRole",async(e,t)=>{try{const n=await ue.get(Zp(encodeURIComponent(e)),{signal:t.signal});return{roleId:e,response:n.data}}catch(n){return t.rejectWithValue({roleId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch users for role"})}}),Qp={usersByRoleId:{},loadingByRoleId:{},errorByRoleId:{}},Rp=ce.createSlice({name:"roleUsers",initialState:Qp,reducers:{},extraReducers:e=>{e.addCase(fn.pending,(t,n)=>{const r=String(n.meta.arg);t.loadingByRoleId[r]=!0,delete t.errorByRoleId[r]}).addCase(fn.fulfilled,(t,n)=>{const r=String(n.payload.roleId),a=n.payload.response?.data??n.payload.response;t.usersByRoleId[r]=Array.isArray(a)?a:[],t.loadingByRoleId[r]=!1}).addCase(fn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=String(n.payload?.roleId??n.meta.arg);t.loadingByRoleId[r]=!1,t.errorByRoleId[r]=n.payload?.message??n.error?.message??"Failed to fetch users for role"})}}).reducer,eh=e=>`/api/v1/complaints/${encodeURIComponent(e)}/activities`,kt=ce.createAsyncThunk("activityLog/fetchByComplaint",async(e,t)=>{try{const n=await ue.get(eh(e),{signal:t.signal});return{complaintId:e,response:n.data}}catch(n){return t.rejectWithValue({complaintId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch complaint activity"})}}),al={activities:[],complaintId:null,isLoading:!1,error:null,hasLoaded:!1,currentRequestId:null};function th(e){const t=e?.data??e;return Array.isArray(t)?t:Array.isArray(t?.activities)?t.activities:Array.isArray(t?.items)?t.items:Array.isArray(t?.results)?t.results:[]}const sl=ce.createSlice({name:"activityLog",initialState:al,reducers:{resetActivityLog:()=>al},extraReducers:e=>{e.addCase(kt.pending,(t,n)=>{t.activities=[],t.complaintId=n.meta.arg??null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.currentRequestId=n.meta.requestId}).addCase(kt.fulfilled,(t,n)=>{t.currentRequestId===n.meta.requestId&&(t.activities=th(n.payload?.response),t.complaintId=n.payload?.complaintId??n.meta.arg,t.isLoading=!1,t.hasLoaded=!0,t.currentRequestId=null)}).addCase(kt.rejected,(t,n)=>{n.meta.aborted||t.currentRequestId!==n.meta.requestId||(t.isLoading=!1,t.hasLoaded=!0,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint activity",t.currentRequestId=null)})}}),{resetActivityLog:nh}=sl.actions,rh=sl.reducer,ah=ce.combineReducers({complaintAppComplaint:ko,complaintType:ap,appDetails:Po,workflow:gp,roles:Uo.reducer,complaintManagement:Ap,status:Fp,createComplaint:Pp,changeStatus:$p,s3:Hp,complaintsGetOne:Xp,roleUsers:Rp,activityLog:rh}),ol=e=>ce.configureStore({reducer:ah,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),ll=ol(),sh="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMgAAACaCAYAAADsHgdiAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAtVSURBVHgB7d1bbBxXGQfwb3a96yupUzlO6S20UJHE5pamLUSpYhABpEhtnhJ44CKekCregFcKb0hIPCCkCiG1PKEUCTVBRRBXSojSoNAEcCGJA8JtmjRNEyu13MSx17s7nW9mTrzd7H47O7c9Z+b/kyxbSuLs2uc/5zuXOWPZDgKAlgoEAG0hIAACBARAgIAACBAQAAECAiBAQAAECAiAAAEBECAgAAIEBECAgAAIEBAAAQICIEBAAAQICIAAAQEQICAAAgQEQICAAAgQEAABAgIgQEAABAgIgAABARAgIAACBARAgIAACBAQAAECAiBAQAAECAiAAAEBECAgAAIEBECAgGji1JxNz71i060KgUYQEE2cmiOae5fonQUCjSAgAAIEJITlVaIzl0h7l99DjxQVAhLC4RmbfvtXmw6d1vcR8+/dJHpu2qZfvIxxTRQISAjbP27RQJno+CzR9L/1C4kKB/d0OzdbNFgmCAkBCeHe9UT7P2+5X0+/7gTlvD4hUeHgz/w6n3qUIAIEJKSJB7jxeSE5dMqbheo17jG49ONwrB8m+t5uiyAaBCSCnZuJdn/Ka4R/dMYjPCjupYOnvNegwjFQIoioj3LGdqqh1TpR3fmIozDauYVocZno5P+8q/d3piwaHaau1f0Xs1IlurXa+e8XnFyWi0SW30lMv27T6bm1cKwP8RrgTrkKyGqNqFLzQhKnr37GooWbNp2/TPT8EZu+xSEZ6upb3H5NHNxavfPfd96G+376nd/g0TO2M1lAbo/x7V0IR5xyU2JVa97V2U5oPP30YxZtHCVaWCJ68YQ3g5SGY+e8cLCntlvuwBzik5uAcM+RJL5679/h9RxXnMW5AyeSn9k6f9mmv8x4X+/+tEXbHyaIWS4CwiVLPYWZWA6HKq8uXHMGza8l959yT3XwNe/rXVst+tIkQQJyERA7xWUKDse+Hd4M0swFrzcJotsZJw4fl3FPPGI5AXHeY4BxC3TPsm1b3/0SMeHxx3KVUsXBmLlguwP4JP7+rDMh8O4CueFgHLA+TNrHLhcB4fJqKeP7kYbLa1O+EJ9cXHN4zaCY4XfKPQfCkYzcdMoDfV5QsobfU3/ulnvTk4sSS+F3ytO9qwlP+aalaHljD/QeyUk9IPy/1Wxv6rVXyeTXwOMSky8NxYyUVfwWipa+7yfVgHCj5KnJem76LAiKS8VS0fvQSWrVK8eQN+GZXtAtrdTprXkzp8TG1vXR2Ef0HLDwRXPFn4rXKSSp/bSyEI6DJxfopb+bfZP33sdH6eknRklXlapes3KpBKReN7+sml+s3g7HxAMDZKIzF5fd9/DJ+wdo8316vgduJtW6Pr1IOgHJwJjj8L8W3c9TkyP0zNfGyETPH7lOfzq9SLOXlrUNCNOpvWBzQkD/nFtyP09NjJCpHv+Ed5PKq7M3CIJJJSCmL9DxoHz+/SptcAa5ppZXjF/70EDBLRdn314mXRU1ai/pBKRg9laP42e9K+7Eg+aGQ1E9IJdZOtJtW1BqL4W3Q5i6sJWF8krRvcwqFfVqJ6lN8/KVYbBk3kJhkPIqqXvdw7L8Rbdyi5mg5jJLl8G65R9CodtCYaqdGYdkqOztH+IfBM93x/0Rd/c87c9etSuvbDvZe93DcPecVb0tPa3oVGZxMLgEVye08BRv2I8kfgc9WVZVjTkpcW5KVI2oXXlV0XjjI98oVmzxG+Yyi6d7p2cWaW+PFw1tf0/cSkx3RJac91uOcaExk9O8lr8FPGp3zSWIVF7xBasW0y82CdU2ZZ8qs3jbjM6zWWGsBjxXLKhMr4OUI94D8uo5efaqVtN7PKVWpVtRPeI//r9EWVO34+vZMx0QzkaUUs7k8kppF5CsLxquxnQGQeZX0gsh32Gn8iqto4Si4tdZy1mZxfgtxzFoz3xAwlZYqrxSV9pmVYOO2Wk3WbFn2zr3cxbLLBbHryjzAQl7EVHl1Rcn7yyv3AOwDbpttyYM1llWy6w4GnfmAxJmlqmxvNo0Xo7le/YSZ2O1xWvmgIw77zGLZVZc95RkOiDVkGshncorEwbnzdoNWndNZm82y4rxpJfMBoSv8ishG7JUXpkyOG/mrtnkoMyy/C1NcS0UxraS7p4UQr2nxgdhy6BO5ZXJRwbx9pPBpjOAVZl1tYd7s3itKmqDtmjt4Ic4NztGDoja0pGV07Wk8orfo0mzV81q/n6l5gbEZdbvTyy4ZVaaAVEbKnXe5R26xLL9824rmm3Ui0oqr0wcezRrN1hnaZZZvMvBhFsgQvcgFc23WYTRqrx682qFbjqzPMP9BRofXSu5eBv8UsAddg+OlWmoP97hHr9O3rLeLW6PrR614C4aLtdTKbP6Cq234usoVEBMWwcISpVXex71FtCO/ucG/erP87f//Pt7xmnbw0P00skFOtjl8T/fePJu+spn11EcfnfsOh2eWaQkpFFmmXSWcKiXWsvoyYjqivzRu8tu+bhxfZm23O81Fu4BNm0ouwPBrU5J8t/LwRvROadsO+QE6smtIzRYjtaTcM/F4VCvJy7ce1xwvnfSh+JZlv5lVaNwWc740aF8heMbu7bcV6affv2eO/5820MDzsc9gb/fM7++5M4ScakWNSCqrHvIKQGf3R/8NXTCZ2Y9e+AKJc20265D/bZwmng4cfzYVECG+81cwjLtUXGhfsqFAkLSjU0bvVIojltc1ffgiQQTtVuw1FW4HoS82xohmAl/HHP8XPRpVHXCymOPDJGpKik/LzKK0M3cvffXkKm6XuPjSnkaladQL0YYBHPAsnCAHS9YmrKmFKkf4MUefrRZVh7mkhQeL6h7L37zynzg9ZNGPMPGp8uzfTv0PZ09KO5FeKawqvkujMiFbF/R++gFvhK5+64MeFoUr63wuspb1yp04Ph1+u6XxwK/Zg7HL1++6vYeH3OmdqcmzT/AjrkPVOpQbqn9VdL2dXddru6Fre5vpXH/XSF62zR2JMHB4NMrkjoPKW7ci/zEmZblUuvY2Rv0gxcuuQ2+Ey7LfvaHK+76BJdWP9o7TnmiHqzT7vky6sFM3COpnR22/4g/Dl/UUs7IqRB3K7tBAz1lw1199PNv3ks/dtYbrjm9wg+dkOzcMkKfc1bn+elPvCWFcXB4topX9tWNTNxzcDj4e+RR3Q/CUNPa6K0OJ3VycLjjCXsElJE/7RWDt7lwA+ee5MW/LbglFw+8pdktXjHn8iwL446o6v4WJ9XYqwH3A0Z5apVxAeGfR93gLeeMQ8IP4dn3hVF3BfvomRv0xtW1zY/j/mZJnqniXcVDhi4KJqHW8PSpoLceuG3G+QjTiRgXENPD0YiDMnXXSGYG3Wmw23zd8d+FTIhxlyZMJ4PSVVMI2W6MC0jBMv+JVRBeqaHFdtMOinkJCCuhJM+l5qdPlQLekRjlPnUzA4JtLrnDDXyg6bQS/rLTCSYFK1pbMXZSXZ3cnsVbf+HDii3CobgPZSrd+TwYy19JL0ds4UavOqltLu6RQ3EcVIyxjdsYB0ukBffuQ+pcHqmD4rin4HYQxzFCSiaWZfmHEcejgzFD5v8sDR3jxdUOGmG4CyDI58aeDvion7zJ43sOAgFpwKeV8NaPF45cp7zaavCNWElAQBqoDYFnL2bviUtBcDiwKfLDLNvO0sGhAPHCIB1AgIAACBAQAAECAiBAQAAECAiAAAEBECAgAAIEBECAgAAIEBAAAQICIEBAAAQICIAAAQEQICAAAgQEQICAAAgQEAABAgIgQEAABAgIgAABARAgIAACBARAgIAACBAQAAECAiBAQAAECAiAAAEBECAgAAIEBECAgAAIEBAAAQICIEBAAAQICIAAAQEQICAAAgQEQICAAAgQEAABAgIgQEAABAgIgOADHs4W0HZKvEIAAAAASUVORK5CYII=";function ye({children:e,variant:t="primary",size:n="md",startIcon:r,endIcon:a,className:o="",type:l="button",disabled:i=!1,onClick:c,...d}){const f=["ca-btn",`ca-btn--${t}`,n==="sm"?"ca-btn--sm":"",n==="lg"?"ca-btn--lg":"",o].filter(Boolean).join(" ");return s.jsxs("button",{type:l,className:f,disabled:i,onClick:c,...d,children:[r?s.jsx("span",{className:"ca-btn__icon",children:r}):null,e,a?s.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function il({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const cl={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},oh={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Re({variant:e="body",as:t,className:n="",children:r,...a}){const o=t||oh[e]||"p",l=cl[e]||cl.body;return s.jsx(o,{className:`${l} ${n}`.trim(),...a,children:r})}function fa(e){return s.jsx(Re,{variant:"h1",...e})}function pa(e){return s.jsx(Re,{variant:"h2",...e})}function Qn(e){return s.jsx(Re,{variant:"body",...e})}function dl(e){return s.jsx(Re,{variant:"label",...e})}function ul(e){return s.jsx(Re,{variant:"value",...e})}function lh(e){return s.jsx(Re,{variant:"link",type:"button",...e})}function ha({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,showAction:a=!0,className:o=""}){return s.jsxs("header",{className:`ca-page-header ${o}`.trim(),children:[s.jsxs("div",{className:"ca-page-header__text",children:[s.jsx(fa,{children:e}),t?s.jsx(Qn,{children:t}):null]}),a?s.jsx("div",{className:"ca-page-header__actions",children:s.jsx(ye,{startIcon:s.jsx(il,{}),onClick:r,children:n})}):null]})}function Rn({checked:e=!1,onChange:t,disabled:n=!1,"aria-label":r="Toggle",className:a=""}){return s.jsx("button",{type:"button",role:"switch","aria-checked":e,"aria-label":r,disabled:n,className:`ca-toggle ${e?"ca-toggle--on":""} ${a}`.trim(),onClick:()=>t?.(!e),children:s.jsx("span",{className:"ca-toggle__thumb"})})}function er({size:e=16,color:t="#9CA3AF",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M4 7h16M9 7V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2m2 0v12a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2V7h12Z",stroke:t,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})}function fl({title:e,titleAsLink:t=!1,onTitleClick:n,isActive:r=!1,canManage:a=!1,canDelete:o=!1,activeDisabled:l=!1,onActiveChange:i,onDelete:c,className:d=""}){return s.jsxs("div",{className:`ca-system-card__header ${d}`.trim(),children:[s.jsx("div",{className:"ca-system-card__title-wrap",children:t?s.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:n,children:e}):s.jsx(pa,{children:e})}),s.jsxs("div",{className:"ca-system-card__header-actions",children:[s.jsx("span",{className:"ca-system-card__active-label",children:r?"Active":"Inactive"}),a?s.jsx(Rn,{checked:r,disabled:l,"aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:i}):null,s.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:o?`Delete ${e}`:"You do not have permission to delete this form",disabled:!o,onClick:c,children:s.jsx(er,{size:40,color:"currentColor"})})]})]})}function pn({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const ih="aira-query-complaintTypeId";function pl({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:o,canConfigure:l=!1,canOpen:i=!1,canAddComplaint:c=!1}){const d=Pe(),f=X.useDispatch(),u=o?.data??o?.id??o?._id??o,p=()=>{const w=o?.data??o?.id??o?._id??o;if(w!=null&&w!==""){const b=String(w);try{sessionStorage.setItem(ih,b)}catch{}f(lt(b)),f(zo()),f(Yo()),d(`/complaintmanagement/${b}`);return}d("/complaintmanagement")};return s.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[s.jsx(Re,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),s.jsxs("div",{className:"ca-system-card__footer-actions",children:[i?s.jsxs(ye,{size:"sm",onClick:p,children:[t,s.jsx(pn,{size:14,color:"currentColor",className:"svg"})]}):null,l?s.jsx(ye,{size:"sm",onClick:()=>{if(u==null||u==="")return;const w=String(u);f(Nt({data:!0})),f(lt(w)),d(`/settings/${w}?step=1`)},endIcon:s.jsx(pn,{size:14,color:"currentColor",className:"svg"}),children:n}):null,c?s.jsx(ye,{size:"sm",onClick:()=>{u==null||u===""||d(`/complaintmanagement/new/${String(u)}`)},endIcon:s.jsx(pn,{size:14,color:"currentColor",className:"svg"}),children:"Add complaint"}):null]})]})}function hl({label:e,value:t,icon:n,className:r=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return s.jsxs("div",{className:`ca-data-point ${r}`.trim(),children:[n?s.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:n}):null,s.jsx(ul,{children:a}),s.jsx("span",{className:"ca-data-point__label",children:e})]})}function ml({className:e=""}){return s.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const ch="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_617_15259)'%3e%3cpath%20d='M9.99992%2011.9997H6.66658M11.9999%209.33301H6.66658M2.66659%2014.6663H13.3333C13.6869%2014.6663%2014.026%2014.5259%2014.2761%2014.2758C14.5261%2014.0258%2014.6666%2013.6866%2014.6666%2013.333V2.66634C14.6666%202.31272%2014.5261%201.97358%2014.2761%201.72353C14.026%201.47348%2013.6869%201.33301%2013.3333%201.33301H5.33325C4.97963%201.33301%204.64049%201.47348%204.39044%201.72353C4.14039%201.97358%203.99992%202.31272%203.99992%202.66634V5.99967M2.66659%2014.6663C3.02021%2014.6663%203.35935%2014.5259%203.60939%2014.2758C3.85944%2014.0258%203.99992%2013.6866%203.99992%2013.333V5.99967M2.66659%2014.6663C2.31296%2014.6663%201.97382%2014.5259%201.72378%2014.2758C1.47373%2014.0258%201.33325%2013.6866%201.33325%2013.333V7.33301C1.33325%206.97939%201.47373%206.64025%201.72378%206.3902C1.97382%206.14015%202.31296%205.99967%202.66659%205.99967H3.99992M7.33325%203.99967H11.3333C11.7014%203.99967%2011.9999%204.29815%2011.9999%204.66634V5.99967C11.9999%206.36786%2011.7014%206.66634%2011.3333%206.66634H7.33325C6.96506%206.66634%206.66658%206.36786%206.66658%205.99967V4.66634C6.66658%204.29815%206.96506%203.99967%207.33325%203.99967Z'%20stroke='%232D64B8'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_617_15259'%3e%3crect%20width='16'%20height='16'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",dh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.44729%202.75711C6.48402%202.37067%206.66351%202.01181%206.95069%201.75063C7.23787%201.48945%207.61211%201.34473%208.00029%201.34473C8.38847%201.34473%208.76271%201.48945%209.04989%201.75063C9.33707%202.01181%209.51656%202.37067%209.55329%202.75711C9.57537%203.00675%209.65727%203.24739%209.79205%203.45867C9.92683%203.66995%2010.1105%203.84565%2010.3276%203.97089C10.5447%204.09614%2010.7887%204.16724%2011.0391%204.17819C11.2895%204.18913%2011.5388%204.1396%2011.766%204.03378C12.1187%203.87363%2012.5184%203.85045%2012.8873%203.96877C13.2562%204.08708%2013.5678%204.33841%2013.7616%204.67385C13.9554%205.00928%2014.0175%205.40482%2013.9357%205.78349C13.854%206.16215%2013.6342%206.49685%2013.3193%206.72244C13.1142%206.86634%2012.9468%207.05751%2012.8312%207.27979C12.7157%207.50207%2012.6553%207.74891%2012.6553%207.99944C12.6553%208.24997%2012.7157%208.49681%2012.8312%208.71909C12.9468%208.94137%2013.1142%209.13254%2013.3193%209.27644C13.6342%209.50203%2013.854%209.83673%2013.9357%2010.2154C14.0175%2010.5941%2013.9554%2010.9896%2013.7616%2011.325C13.5678%2011.6605%2013.2562%2011.9118%2012.8873%2012.0301C12.5184%2012.1484%2012.1187%2012.1253%2011.766%2011.9651C11.5388%2011.8593%2011.2895%2011.8097%2011.0391%2011.8207C10.7887%2011.8316%2010.5447%2011.9027%2010.3276%2012.028C10.1105%2012.1532%209.92683%2012.3289%209.79205%2012.5402C9.65727%2012.7515%209.57537%2012.9921%209.55329%2013.2418C9.51656%2013.6282%209.33707%2013.9871%209.04989%2014.2483C8.76271%2014.5094%208.38847%2014.6542%208.00029%2014.6542C7.61211%2014.6542%207.23787%2014.5094%206.95069%2014.2483C6.66351%2013.9871%206.48402%2013.6282%206.44729%2013.2418C6.42525%2012.992%206.34336%2012.7513%206.20854%2012.54C6.07371%2012.3286%205.88994%2012.1528%205.67278%2012.0276C5.45562%2011.9023%205.21147%2011.8313%204.96101%2011.8204C4.71055%2011.8095%204.46116%2011.8591%204.23396%2011.9651C3.88122%2012.1253%203.48151%2012.1484%203.11263%2012.0301C2.74374%2011.9118%202.43207%2011.6605%202.23828%2011.325C2.04449%2010.9896%201.98244%2010.5941%202.0642%2010.2154C2.14596%209.83673%202.36569%209.50203%202.68063%209.27644C2.88571%209.13254%203.05311%208.94137%203.16868%208.71909C3.28426%208.49681%203.34459%208.24997%203.34459%207.99944C3.34459%207.74891%203.28426%207.50207%203.16868%207.27979C3.05311%207.05751%202.88571%206.86634%202.68063%206.72244C2.36614%206.49674%202.14679%206.16217%202.06523%205.78376C1.98366%205.40535%202.0457%205.01014%202.23928%204.67492C2.43287%204.3397%202.74417%204.08843%203.11269%203.96994C3.4812%203.85144%203.88061%203.8742%204.23329%204.03378C4.46046%204.1396%204.70979%204.18913%204.96016%204.17819C5.21053%204.16724%205.45458%204.09614%205.67165%203.97089C5.88872%203.84565%206.07242%203.66995%206.2072%203.45867C6.34198%203.24739%206.42388%203.00675%206.44596%202.75711M9.99996%207.99978C9.99996%209.10434%209.10453%209.99978%207.99996%209.99978C6.89539%209.99978%205.99996%209.10434%205.99996%207.99978C5.99996%206.89521%206.89539%205.99978%207.99996%205.99978C9.10453%205.99978%209.99996%206.89521%209.99996%207.99978Z'%20stroke='%23745EBF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",uh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.99992%208H6.66659M9.99992%205.33333H6.66659M12.6666%2011.3333V3.33333C12.6666%202.97971%2012.5261%202.64057%2012.2761%202.39052C12.026%202.14048%2011.6869%202%2011.3333%202H2.66659M2.66659%202C3.02021%202%203.35935%202.14048%203.60939%202.39052C3.85944%202.64057%203.99992%202.97971%203.99992%203.33333V5.33333M2.66659%202C2.31296%202%201.97382%202.14048%201.72378%202.39052C1.47373%202.64057%201.33325%202.97971%201.33325%203.33333V4.66667C1.33325%204.84348%201.40349%205.01305%201.52851%205.13807C1.65354%205.2631%201.82311%205.33333%201.99992%205.33333H3.99992M5.33325%2014H13.3333C13.6869%2014%2014.026%2013.8595%2014.2761%2013.6095C14.5261%2013.3594%2014.6666%2013.0203%2014.6666%2012.6667V12C14.6666%2011.8232%2014.5963%2011.6536%2014.4713%2011.5286C14.3463%2011.4036%2014.1767%2011.3333%2013.9999%2011.3333H7.33325C7.15644%2011.3333%206.98687%2011.4036%206.86185%2011.5286C6.73682%2011.6536%206.66659%2011.8232%206.66659%2012V12.6667C6.66659%2013.0203%206.52611%2013.3594%206.27606%2013.6095C6.02601%2013.8595%205.68687%2014%205.33325%2014ZM5.33325%2014C4.97963%2014%204.64049%2013.8595%204.39044%2013.6095C4.14039%2013.3594%203.99992%2013.0203%203.99992%2012.6667V5.33333'%20stroke='%2300B692'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",fh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.66675%209.33301H6.66675M2.66675%201.33301H9.33341M3.33341%2011.9997H12.6667C13.0349%2011.9997%2013.3334%2012.2982%2013.3334%2012.6663V13.9997C13.3334%2014.3679%2013.0349%2014.6663%2012.6667%2014.6663H3.33341C2.96522%2014.6663%202.66675%2014.3679%202.66675%2013.9997V12.6663C2.66675%2012.2982%202.96522%2011.9997%203.33341%2011.9997ZM3.33341%203.99967H12.6667C13.0349%203.99967%2013.3334%204.29815%2013.3334%204.66634V5.99967C13.3334%206.36786%2013.0349%206.66634%2012.6667%206.66634H3.33341C2.96522%206.66634%202.66675%206.36786%202.66675%205.99967V4.66634C2.66675%204.29815%202.96522%203.99967%203.33341%203.99967Z'%20stroke='%23FF6F00'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",ph="Complaints",hh=[{actionName:"READ",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"DELETE",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"CREATE",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"},{actionName:"FULL_ACCESS",featureModule:{name:"Complaints",isActive:!0},source:"role:STOREMANAGER"},{actionName:"FULL_DATA_ACCESS",featureModule:{name:"Complaints",isActive:!1},source:"role:STOREMANAGER"}];function gl(e){const t=Array.isArray(e)?e:[],n=new Set(t.filter(c=>c?.featureModule?.name===ph&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),r=n.has("FULL_ACCESS"),a=n.has("READ")||r,o=n.has("CREATE")||r,l=n.has("DELETE")||r,i=n.has("FULL_DATA_ACCESS");return{canViewCards:a,canCreateForm:o,canDelete:l,canOpen:i,hasAnyAccess:a||o||l||i}}const yl="aira-query-complaintTypeId",mh={id:"status",label:"Status",key:"status"},gh={id:"escalationTo",label:"Escalation To",key:"escalationTo"},yh={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},bh={id:"assignedToUserName",label:"Assigned To",key:"assignedToUserName"},Sh={id:"complaintId",label:"Complaint Id",key:"complaintId"},vh={id:"createdAt",label:"Created At",key:"createdAt"},wh={id:"updatedAt",label:"Updated At",key:"updatedAt"},bl="desc",Sl="asc",Ch=10,Ah=["5","10","15","20","25"],Nh=999999,ma=new Set(["status","escalationTo","id","submittedByUserName","assignedToUserName","complaintId","createdAt","updatedAt"]),_h=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function vl(e){if(!e)return"";const t=new Date(e);if(Number.isNaN(t.getTime()))return"";const n=String(t.getHours()).padStart(2,"0"),r=String(t.getMinutes()).padStart(2,"0");return`${t.getDate()} ${_h[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function wl(e){return[yh,bh,Sh,vh,wh,mh,gh,...e]}function Eh(e){const t=e?.data??e,n=Array.isArray(t)?t:t?.data??t?.results??t?.items??[];return[...Array.isArray(n)?n:[]].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0)).map(r=>{const a=r.fieldKey||r.fieldName||r.fieldLabel;return{id:a,label:r.fieldName||r.fieldLabel||r.label||a,key:a,fieldType:r.fieldType,hideForWorkflowStepId:r.hideForWorkflowStepId??null}}).filter(r=>r.key&&!ma.has(r.key))}function Lh(e,t,n,r){const a=e?.data??e??{},o=Number(a.total??a.totalItems??a.totalCount??a.count),l=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(l)&&l>0?{totalPages:l,totalItems:Number.isFinite(o)&&o>=0?o:Math.max(r,l*n),hasNext:t<l}:Number.isFinite(o)&&o>=0?{totalPages:Math.max(1,Math.ceil(o/n)),totalItems:o,hasNext:t*n<o}:{totalPages:t+(r>=n?1:0),totalItems:Math.max(r,t*n),hasNext:r>=n}}function Cl(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function Th(){try{return sessionStorage.getItem(yl)}catch{return null}}function Al(e){const t=Cl(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(yl,n)}catch{}return n}function Ih(...e){for(const t of e){const n=Cl(t);if(n!=null&&n!=="")return String(n)}return null}function ga(e,t=[]){const n=e?.status;if(typeof n=="string"&&n.trim())return n.trim();if(n&&typeof n=="object"){const a=n.name??n.label??n.status;if(a)return String(a).trim();const o=n.id??n.statusId;if(o!=null){const l=t.find(i=>String(i.id)===String(o));if(l?.name)return l.name}}const r=e?.statusId??e?.complaintStatusId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.name)return a.name}return""}function Fh(e,t=[]){const n=e?.statusId??e?.complaintStatusId;if(n!=null&&n!=="")return n;const r=e?.status;if(r&&typeof r=="object"){const a=r.id??r.statusId;if(a!=null&&a!=="")return a}if(typeof r=="string"&&r.trim()){const a=t.find(o=>String(o.name).trim()===r.trim());if(a?.id!=null)return a.id}return null}function tr(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}const kh=new Set(["closed","cancelled","canceled"]);function ya(e){return kh.has(String(e||"").trim().toLowerCase())}function Oh(e){return ya(e)}function ba(e){return ya(e)}function Dh(e,t=[]){const n=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(n!=null&&n!==""){const a=t.find(o=>String(o.id)===String(n));if(a)return a}const r=e?.level??e?.levelNo;return r!=null&&r!==""?t.find(a=>String(a.levelNo)===String(r))??null:null}function xh(e,t=[]){const n=e?.level??e?.levelNo;if(n!=null&&n!=="")return`Level ${n}`;const r=e?.workflowStepId??e?.currentWorkflowStepId??e?.currentStepId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function Nl(e,t=[],n=[]){const r=Dh(e,n),a=r?.levelNo??e?.level??e?.levelNo??e?.currentLevel,o=Array.isArray(e?.workflowLevels)?e.workflowLevels.find(u=>String(u?.levelNo)===String(a)):null,l=r?.roleIds?.[0]??r?.roles?.[0]?.id??r?.roleId??o?.roleIds?.[0]??e?.roleId??e?.assignedRoleId??null,i=e?.assignedTo??e?.assignedUser??e?.assignee,d=(i&&typeof i=="object"?i.userId??i.id:i!=null&&i!==""&&Number.isFinite(Number(i))?i:null)??e?.assignedToUser?.userId??e?.assignedToUser?.id??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId??null,f={id:e?.complaintId??e?.id,status:ga(e,t),isClosed:ba(ga(e,t)),statusId:Fh(e,t),escalationTo:xh(e,n),level:a??null,currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:tr(e?.canResolve??r?.canResolve),isFinalLevel:tr(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),roleId:l,assignedToUserId:d,assignedToUserName:kl(e),submittedByUserName:e?.submittedByUserName||"-",complaintId:e?.complaintId??e?.id??"-",createdAt:vl(e?.createdAt)||"-",updatedAt:vl(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(u=>{const p=u.fieldKey||u.fieldName;p&&!ma.has(p)&&(f[p]=u.value)}),f}function _l(e,t){const n=new Set,r=t.map(a=>{if(n.add(a.key),a.fieldType)return a;const o=e.flatMap(l=>l._fields||[]).find(l=>(l.fieldKey||l.fieldName)===a.key);return o?.fieldType?{...a,fieldType:o.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(o=>{const l=o.fieldKey||o.fieldName;!l||ma.has(l)||n.has(l)||(n.add(l),r.push({id:l,label:o.fieldName||l,key:l,fieldType:o.fieldType}))})}),r}function Mh(e,t,n){const r=String(e?.fieldType||"").toLowerCase();return r==="file"||r==="images"||r==="image"?!0:t.some(a=>n(e,a[e.key]??"-"))}function El(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function Ll(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function Ph(e,t){const n=e.map(a=>Ll(a.label)).join(","),r=t.map(a=>e.map(o=>Ll(a[o.key]??"-")).join(","));return[n,...r].join(`\r
12
+ `)}const Uh=["January","February","March","April","May","June","July","August","September","October","November","December"];function Tl(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":`${t.getDate()} ${Uh[t.getMonth()]} ${t.getFullYear()}`}function Il(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Bh(e){const t=Array.isArray(e?.accesses)?e.accesses.map(r=>r?.role?.id??r?.role?.roleId??r?.roleId).map(Number).filter(Number.isFinite):[];return t.length?t:(Array.isArray(e?.roleIds)?e.roleIds:Array.isArray(e?.roles)?e.roles:[]).map(r=>Number(r?.id??r?.roleId??r?.role_id??r)).filter(r=>Number.isFinite(r))}function Sa(e,t=[]){return Bh(e).some(n=>t.includes(n))}function Fl(e){if(!e)return"";if(typeof e=="string")return e.trim();if(typeof e!="object")return"";const t=[e.firstName,e.lastName].filter(Boolean).join(" ");return String(e.name||e.userName||e.fullName||t||"").trim()}function kl(e,t=[]){const n=e?.assignedToUserName??e?.assignedToName??e?.assignedUserName;if(n&&String(n).trim())return String(n).trim();const r=e?.assignedTo??e?.assignedUser??e?.assignee,a=Fl(r);if(a)return a;const o=(r&&typeof r=="object"?r.id??r.userId:r)??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId;if(o!=null&&o!==""){const l=t.find(i=>String(i?.id??i?.userId)===String(o));return Fl(l)}return""}function Ol(e,t=[],n=[],r=null){const a=ga(e,t),o=e?.level??e?.levelNo??e?.currentLevel;return{id:e?.complaintId??e?.id,title:String(e?.complaintId??e?.id??"-"),status:a||"-",isClosed:ba(a),level:o!=null&&o!==""?o:"-",assignedTo:kl(e,n)||"Unassigned",date:Tl(e?.createdAt??e?.date),tat:r?qh(e,r.tatMinutes,a):null}}function $h(e,t=[]){const n=e?.userComplaintSummary??{},r=Number(n.totalComplaints)||0,a=Number(n.openComplaints)||0,o=Number(n.closedComplaints)||0,l=Number(n.cancelledComplaints)||0,i=(Array.isArray(e?.recentOpenComplaints)?e.recentOpenComplaints:[]).slice(0,2).map(c=>Ol(c,[],t));return{total:r,open:a,closed:o,cancelled:l,previewRows:i}}function Dl(e=[]){const t={};return(Array.isArray(e)?e:[]).forEach(n=>{const r=n?.id??n?._id,a=n?.name??n?.storeName;r!=null&&a&&(t[String(r)]=String(a))}),t}function xl(e,t={}){if(!Object.keys(t).length)return e;const n={...e};return Object.keys(n).forEach(r=>{const a=n[r];typeof a=="string"&&t[a.trim()]&&(n[r]=t[a.trim()])}),n}function jh(e,t=[],n=null){const r=e?.workflowComplaintSummary,a=[r?.levels,r?.steps,e?.workflowLevels,e?.workflowSteps].filter(Array.isArray).flat(),o=i=>Number(i&&typeof i=="object"?i.userId??i.id??i.roleId??i.role_id??i.user?.id??i.role?.id:i),l=(...i)=>i.filter(Array.isArray).flat().map(o).filter(Number.isFinite);return a.some(i=>{const c=l(i?.roleIds,i?.roles,i?.roleId!=null?[i.roleId]:null),d=l(i?.userIds,i?.users,i?.userAssignments,i?.assignedUsers);return c.some(f=>t.includes(f))||n!=null&&d.includes(Number(n))})}function va(e){const t=Math.max(Math.floor(Math.abs(e)/60),0),n=Math.floor(t/1440),r=Math.floor(t%1440/60),a=t%60,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&!n&&o.push(`${a}m`),o.join(" ")||"0m"}function Vh(e){if(e%1440===0){const t=e/1440;return`${t} ${t===1?"day":"days"}`}return va(e*60)}function qh(e,t,n=""){if(ya(n))return null;const r=Number(e?.escalationTimeRemainingSeconds);if(e?.escalationTimeRemainingSeconds==null||!Number.isFinite(r))return null;const a=Number(t)>0?Number(t)*60:0,o=r<0,l=a?Math.min(Math.max(Math.round((1-r/a)*100),0),100):0;return{percent:o?100:l,state:o?"overdue":l>=75?"warn":"ok",remainingLabel:o?`Overdue by ${va(r)}`:`${va(r)} remaining`,totalLabel:a?`of ${Vh(Number(t))}`:""}}function Wh(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"})}function Ml({id:e,title:t,item:n,status:r="inactive",description:a,descriptionHref:o,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:f,titleAsLink:u=!1,onTitleClick:p,onDescriptionClick:w,onConfigure:b,onOpen:g,onDelete:m,onToggleActive:h,isTogglingActive:v=!1,className:_=""}){const A=X.useSelector(N=>N.appDetails?.details?.currentUser),M=X.useSelector(N=>N.appDetails?.details?.featureActions),{canCreateForm:L,canDelete:z,canOpen:Q}=gl(M),G=L,q=Il(A),K=A?.id??A?.userId??null,ee=Q||jh(n,q,K)||Sa(n,q),V=Sa(n,q)&&n?.isActive!==!1,I=()=>{b?.({id:e,title:t,status:r,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:f})},O=()=>{if(w){w({id:e,title:t,descriptionHref:o});return}o&&typeof window<"u"&&window.open(o,"_blank","noopener,noreferrer")},j=[{label:"Total entries",value:n?.totalEntries??0,icon:s.jsx("img",{src:ch,alt:""})},{label:"Open entries",value:n?.openEntries??0,icon:s.jsx("img",{src:dh,alt:""})},{label:"Closed entries",value:n?.closedEntries??0,icon:s.jsx("img",{src:uh,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:s.jsx("img",{src:fh,alt:""})}],W=e??n?.id??n?._id;return s.jsxs("article",{className:`ca-system-card ${_}`.trim(),children:[s.jsx(fl,{title:n?.name,titleAsLink:u,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:G,canDelete:z,activeDisabled:v,onActiveChange:N=>h?.({id:W,isActive:N,item:n}),onDelete:()=>m?.({id:W,title:t,item:n})}),a?s.jsx("p",{className:"ca-system-card__description",onClick:O,children:a}):null,s.jsx("div",{className:"ca-system-card__stats",children:j.map((N,k)=>s.jsxs(y.Fragment,{children:[k>0?s.jsx(ml,{}):s.jsx("div",{className:"ca-system-card__stats-spacer"}),s.jsx(hl,{label:N.label,value:N.value,icon:N.icon})]},N.label))}),s.jsx(pl,{updatedOn:f??Wh(n?.updatedAt??n?.createdAt),onOpen:()=>g?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canOpen:ee,canConfigure:G,canAddComplaint:V,onConfigure:I})]})}function Pl({systems:e=[],onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,togglingActiveId:o=null,onTitleClick:l,onDescriptionClick:i,emptyMessage:c="No systems found.",className:d=""}){return e.length?s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(f=>s.jsx(Ml,{item:f,...f,onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,isTogglingActive:String(o)===String(f.id??f._id),onTitleClick:l,onDescriptionClick:i},f.id??f.title))}):s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:s.jsx("div",{className:"ca-empty",children:s.jsx(Qn,{children:c})})})}function Ot({value:e,onChange:t,placeholder:n,type:r="text",icon:a,className:o="",inputClassName:l="",...i}){return s.jsxs("div",{className:`ca-input-wrap ${o}`.trim(),children:[a?s.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,s.jsx("input",{type:r,className:`ca-input ${a?"ca-input--with-icon":""} ${l}`.trim(),value:e,onChange:t,placeholder:n,...i})]})}function Ul({size:e=18,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:[s.jsx("path",{d:"M10.5 18a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Z",stroke:t,strokeWidth:"1.75"}),s.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function Bl({value:e,onChange:t,onSearch:n,placeholder:r="Search",className:a=""}){const o=l=>{l.key==="Enter"&&n&&n(e)};return s.jsx("div",{className:`ca-search ${a}`.trim(),children:s.jsx(Ot,{value:e,onChange:t,onKeyDown:o,placeholder:r,icon:s.jsx(Ul,{}),"aria-label":r})})}function ze({text:e="Loading",fullScreen:t=!1}){return s.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[s.jsx("span",{className:"ca-loading__spinner"}),s.jsxs("span",{children:[e,"…"]})]})}const zh=[{id:"qms",title:"QMS - Query Management System",status:"active",description:"Description of the template",departments:3,workflows:12,fields:55,formsFilled:234,updatedOn:"12 Mar 2024",titleAsLink:!1},{id:"cms",title:"CX- Pulse-360 ",status:"active",description:"Description of the template",departments:5,workflows:8,fields:42,formsFilled:189,updatedOn:"08 Mar 2024"},{id:"fms",title:"ENE - TRACKER",status:"inactive",description:"Description of the template",departments:2,workflows:4,fields:28,formsFilled:56,updatedOn:"01 Feb 2024"},{id:"rms",title:"RTV - Return to Vendor ",status:"active",description:"Description of the template",departments:4,workflows:10,fields:61,formsFilled:312,updatedOn:"20 Mar 2024"}],$l="Create, manage and track complaint forms, workflows and responses across departments.";const jl=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const Hh=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const Kh=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Vl=e=>{const t=Kh(e);return t.charAt(0).toUpperCase()+t.slice(1)};var wa={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Jh=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Yh=y.createContext({}),Gh=()=>y.useContext(Yh),Xh=y.forwardRef(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:a="",children:o,iconNode:l,...i},c)=>{const{size:d=24,strokeWidth:f=2,absoluteStrokeWidth:u=!1,color:p="currentColor",className:w=""}=Gh()??{},b=r??u?Number(n??f)*24/Number(t??d):n??f;return y.createElement("svg",{ref:c,...wa,width:t??d??wa.width,height:t??d??wa.height,stroke:e??p,strokeWidth:b,className:jl("lucide",w,a),...!o&&!Jh(i)&&{"aria-hidden":"true"},...i},[...l.map(([g,m])=>y.createElement(g,m)),...Array.isArray(o)?o:[o]])});const be=(e,t)=>{const n=y.forwardRef(({className:r,...a},o)=>y.createElement(Xh,{ref:o,iconNode:t,className:jl(`lucide-${Hh(Vl(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Vl(e),n};const Zh=be("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);const ql=be("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);const Qh=be("calendar-days",[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M8 13h.01",key:"1sbv64"}],["path",{d:"M12 13h.01",key:"y0uutt"}],["path",{d:"M16 13h.01",key:"wip0gl"}],["path",{d:"M8 17h.01",key:"p3bg7i"}],["path",{d:"M12 17h.01",key:"p32p05"}],["path",{d:"M16 17h.01",key:"ql8jdd"}]]);const hn=be("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Rh=be("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const nr=be("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const em=be("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const tm=be("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const rr=be("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const nm=be("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);const rm=be("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);const am=be("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);const sm=be("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const Wl=be("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const zl=be("store",[["path",{d:"M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5",key:"slp6dd"}],["path",{d:"M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244",key:"o0xfot"}],["path",{d:"M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05",key:"wn3emo"}]]);const om=be("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);const lm=be("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),im=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],Hl=new Set(["Select","Dropdown","Radio","Checkbox"]),cm=["Both","User","Admin"],dm={Open:"#FF0000",Cancelled:"#FF6F00",Closed:"#00D82F"},Ca=["Open","Cancelled","Closed"],He={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...Ca],optionColors:{...dm},parentMappings:{},lockMode:"options",isNew:!1},ar={id:"custom-priorities",fieldKey:"priorities",fieldLabel:"Priorities",originalFieldName:"Priorities",fieldType:"Dropdown",required:!1,fieldAccess:"",hideFor:[],dependsOn:"",options:["Urgent","High","Medium","Low"],parentMappings:{},lockMode:"options",isNew:!1},mn={id:"custom-store-id",fieldKey:"storeIdCustom",fieldLabel:"Store ID",originalFieldName:"Store ID",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[],optionColors:{},parentMappings:{},lockMode:"all",isNew:!1},um=[{...He,label:He.fieldLabel},{...mn,label:mn.fieldLabel}];function Kl(e){return String(e||"").trim().toLowerCase()}function ae(e){const t=Kl(e?.fieldKey),n=Kl(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function Ue(e){return ae(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function fm(e,t=[]){if(!ae(e))return!1;const n=t.length?t:[e],r=n.filter(l=>!l?.isNew&&ae(l)),a=n.filter(Ue),o=r[0]||a[0]||n.find(l=>ae(l)&&!l?.isNew);return o?String(o.id)===String(e.id):!e?.isNew}function sr(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function et(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function tt(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="cancelled"||t==="canceled"||t==="closed"}function pm(e){return String(e||"").trim().toLowerCase()==="open"}function or(e){return String(e||"").trim().toLowerCase()==="done"?"Closed":e}function Dt(e=[]){const t=(e||[]).filter(l=>l!=null&&String(l).trim()!==""),n=l=>t.find(i=>String(i).trim().toLowerCase()===l),r=n("open"),a=["cancelled","closed"].map(n).filter(l=>l!=null),o=t.filter(l=>l!==r&&!a.includes(l));return[r,...o,...a].filter(l=>l!=null)}function hm(e=[]){const t=new Set(Ca.map(r=>r.toLowerCase())),n=(e||[]).filter(r=>{const a=String(r||"").trim().toLowerCase();return!a||a==="done"||a==="canceled"||t.has(a)?!1:(t.add(a),!0)});return Dt([...Ca,...n])}function Jl(e){return Hl.has(e?.fieldType)||Ue(e)}function Aa(e){return!e||ae(e)||et(e)||!Hl.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function xt(e=[]){return e.some(Aa)}function Yl(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!Aa(r))return;const a=String(r.fieldType||"").trim();!a||n.has(a)||(n.add(a),t.push(a))}),t.length?t.length===1?`Add options for ${t[0]} field.`:t.length===2?`Add options for ${t[0]} and ${t[1]} fields.`:`Add options for ${t.slice(0,-1).join(", ")}, and ${t[t.length-1]} fields.`:""}function mm(e,t){const n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase(),r=String(t?.fieldLabel||t?.label||"").trim().toLowerCase(),a=String(e?.fieldType||"").trim().toLowerCase(),o=String(t?.fieldType||"").trim().toLowerCase();return!!(n&&r&&a&&o&&n===r&&a===o)}function lr(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:mm(e,n)):!1}function ir(e=[]){return e.some(t=>lr(t,e))}function Na(e,t={},n=""){const r=String(n||"");if(ae({fieldKey:r})||et({fieldKey:r}))return t.CUSTOM??"Custom";if(e==="MULTI_SELECT"||e==="MULTISELECT")return t.CHECKBOX??"Checkbox";if(e==="PHONE"||e==="MOBILE")return t.NUMBER??"Number";if(e==="FILE"&&r.endsWith("Images"))return t.IMAGES??"Images";if(e==="DATETIME"&&r.endsWith("Time")&&!r.endsWith("DateTime"))return t.TIME??"Time";if(e==="SELECT"||e==="DROPDOWN"){const a=r.toLowerCase();if(a.endsWith("dropdown"))return t.DROPDOWN??"Dropdown";if(a.endsWith("select"))return t.SELECT??"Select"}return t[e]??e??"Custom"}function gm(e){return sr(e)?"Priorities":"Option"}function ym(e,t=!1){return e?t?"Define options and set parent.":ae(e)?"Manage the status":"Manage your fields.":""}function cr(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return cr({...e,fieldType:"Checkbox"},t);if(ae(e)){if(e?.isNew||!fm(e,t))return{...e,lockMode:e?.lockMode==="all"?e.lockMode:void 0};const n=String(e.fieldLabel||e.label||"").trim(),r=!n||n.toLowerCase()==="statuses";return{...He,...e,fieldKey:He.fieldKey,fieldLabel:r?He.fieldLabel:n,originalFieldName:r?He.originalFieldName:e.originalFieldName??n,fieldType:He.fieldType,required:!0,options:hm(e.options),optionColors:{...e.optionColors||{},...He.optionColors},lockMode:"options"}}return sr(e)?{...ar,...e,fieldKey:e.fieldKey||ar.fieldKey,fieldType:ar.fieldType,options:e.options?.length?e.options:ar.options,lockMode:"options"}:et(e)?{...mn,...e,fieldKey:mn.fieldKey,fieldType:mn.fieldType,required:!0,lockMode:"all"}:e}function Mt(e=[]){const t=e.map(r=>cr(r,e));if(t.some(ae))return t;const n={...He};return[cr(n,[n,...t]),...t]}function Gl({row:e,onClick:t}){return s.jsxs("div",{className:"ca-filler-row ca-filler-row--clickable",role:"button",tabIndex:0,onClick:()=>t?.(e),onKeyDown:n=>{n.key!=="Enter"&&n.key!==" "||(n.preventDefault(),t?.(e))},"aria-label":`Open complaint ${e.title||e.id}`,children:[s.jsxs("div",{className:"ca-filler-row__top",children:[s.jsxs("span",{className:"ca-filler-row__title",children:[s.jsx("span",{className:"ca-filler-row__prefix",children:"Complaint ID:"})," ",e.title]}),s.jsxs("span",{className:"ca-filler-row__right",children:[e.tat?s.jsxs("span",{className:"ca-filler-row__tat",children:[s.jsx("span",{className:"ca-filler-row__tat-label",children:"TAT"}),s.jsx("span",{className:"ca-filler-row__tat-track",children:s.jsx("span",{className:`ca-filler-row__tat-fill ca-filler-row__tat-fill--${e.tat.state}`,style:{width:`${e.tat.percent}%`}})}),s.jsxs("span",{className:"ca-filler-row__tat-text",children:[s.jsx("strong",{children:e.tat.remainingLabel})," ",e.tat.totalLabel]})]}):null,s.jsx(nr,{size:16,"aria-hidden":"true"})]})]}),s.jsxs("div",{className:"ca-filler-row__meta",children:[s.jsxs("span",{children:["Status: ",s.jsx("strong",{children:or(e.status)})]}),s.jsxs("span",{children:["Level: ",s.jsx("strong",{children:e.level})]}),s.jsx("span",{children:e.assignedTo==="Unassigned"?e.assignedTo:s.jsxs(s.Fragment,{children:["Assigned to: ",s.jsx("strong",{children:e.assignedTo})]})}),s.jsx("span",{children:e.date})]})]})}const bm=[];function Sm({form:e,onAddComplaint:t,onViewAll:n}){const r=X.useSelector(f=>f.appDetails?.details?.userList)??bm,{total:a,open:o,closed:l,cancelled:i,previewRows:c}=$h(e,r),d=e.isActive!==!1&&e.active!==!1;return s.jsxs("article",{className:"ca-filler-card",children:[s.jsxs("div",{className:"ca-filler-card__head",children:[s.jsxs("div",{className:"ca-filler-card__heading",children:[s.jsxs("h3",{className:"ca-filler-card__title",children:[e.name??e.title,a?` (${a})`:""]}),o?s.jsxs("span",{className:"ca-filler-card__count",children:[o," open"]}):null,l?s.jsxs("span",{className:"ca-filler-card__count",children:[l," closed"]}):null,i?s.jsxs("span",{className:"ca-filler-card__count",children:[i," cancelled"]}):null]}),s.jsxs("button",{type:"button",className:"ca-filler-card__add",onClick:()=>t?.(e),disabled:!d,children:["Add complaint ",s.jsx(nr,{size:14,"aria-hidden":"true"})]})]}),s.jsx("p",{className:"ca-filler-card__desc",children:e.description||" "}),c.map(f=>s.jsx(Gl,{row:f},f.id)),s.jsxs("div",{className:"ca-filler-card__foot",children:[a?s.jsx("button",{type:"button",className:"ca-filler-card__link",onClick:()=>n?.(e),children:"View all >"}):s.jsx("span",{}),s.jsx("span",{className:"ca-filler-card__date",children:Tl(e.createdAt)})]})]})}function Xl({title:e="Complaint Management",description:t=$l,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:o,onTitleClick:l,onDescriptionClick:i,onSearch:c,onHeaderActionsChange:d}){const f=Pe(),u=X.useDispatch(),[p,w]=y.useState(""),[b,g]=y.useState(null),[m,h]=y.useState(""),{complaintList:v=[],loading:_=!1,error:A=null}=X.useSelector(T=>T.complaintType??{}),M=X.useSelector(T=>T.appDetails?.details?.currentUser),L=X.useSelector(T=>T.appDetails?.details?.featureActions),{canViewCards:z,canCreateForm:Q,canDelete:G,canOpen:q,hasAnyAccess:K}=y.useMemo(()=>gl(L),[L]),ee=y.useMemo(()=>Il(M),[M]),V=y.useMemo(()=>v.filter(T=>Sa(T,ee)),[v,ee]),I=z||Q||G||q,O=!I&&V.length>0;y.useEffect(()=>{u(Nt({data:!1}))},[u]),y.useEffect(()=>{const T=setTimeout(()=>h(p.trim()),400);return()=>clearTimeout(T)},[p]),y.useEffect(()=>{u(on(m?{search:m}:void 0))},[u,m]);const j=v;y.useEffect(()=>{c&&c(p)},[p,c]);const W=T=>{w(T.target.value)},N=T=>{a?.(T),f(`/settings/${T.id??"new"}?step=1`)},k=y.useCallback(()=>{u(Nt({data:!1})),r?.(),f("/settings/new?step=1")},[u,f,r]);y.useEffect(()=>{d&&d({view:"forms",search:p,searchPlaceholder:"Search forms",onSearchChange:w,canCreateComplaint:Q,onNewComplaint:k})},[d,p,Q,k]),y.useEffect(()=>()=>d?.(null),[d]);const C=({id:T})=>{G&&T!=null&&u(zn(T))},P=({id:T,isActive:$})=>{Q&&T!=null&&(g(T),u(dn({id:T,isActive:$})).unwrap().then(()=>u(rp({id:T,isActive:$}))).finally(()=>g(null)))};return!I&&(_||!v.length)&&!A?s.jsx(ze,{text:"Loading"}):O?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:"Complaints",description:"Create, manage and track complaint forms, workflows and responses across departments.",showAction:!1}),s.jsx("div",{className:"ca-filler-card-list",children:V.map(T=>s.jsx(Sm,{form:T,onAddComplaint:$=>f(`/complaintmanagement/new/${$.id}`),onViewAll:$=>f(`/complaintmanagement/${$.id}/all`)},T.id))})]}):K?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:e,description:t,actionLabel:n,onAction:k,showAction:Q&&!d}),I?s.jsxs(s.Fragment,{children:[d?null:s.jsx("div",{className:"ca-search-container",children:s.jsx(Bl,{value:p,onChange:W,placeholder:"Search"})}),_?s.jsx(ze,{text:"Loading systems"}):A?s.jsx("div",{className:"ca-empty",children:s.jsx("p",{className:"ca-body",children:typeof A=="string"?A:"Failed to load complaint types."})}):s.jsx(Pl,{systems:j,onConfigure:N,onOpen:o,onDelete:C,onToggleActive:P,togglingActiveId:b,onTitleClick:l,onDescriptionClick:i,emptyMessage:p?"No systems match your search.":"No systems found."})]}):null]}):s.jsxs("div",{className:"ca-complaint-management-page ca-no-access","data-testid":"complaint-management-page",children:[s.jsx("img",{className:"ca-no-access__image",src:sh,alt:"","aria-hidden":"true"}),s.jsx("p",{className:"ca-no-access__text",role:"status",children:"No Complaint Found"})]})}const Zl=y.createContext(null),Ql=()=>({categoryName:"",categoryType:"",tatMinutes:"",template:"",visibilityType:"",urlLink:"",active:!1,description:"",roles:[],categoryRoleIds:[],categoryFormData:null,departmentRows:[{id:"1",department:"",subDepartment:"",roles:""}],priorityDraft:"",priorities:[],defaultPriorityId:null,selectedDeptNode:null,workflow:{name:"",tatMinutes:"",description:"",status:[],steps:[],selectedTableCard:null},fieldDraft:{name:"",type:""},formFields:[],templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]});function Rl({children:e,initialValues:t}){const[n,r]=y.useState(()=>({...Ql(),...t,workflow:{...Ql().workflow,...t?.workflow}})),a=y.useCallback(i=>{r(c=>({...c,...i}))},[]),o=y.useCallback(i=>{r(c=>({...c,workflow:{...c.workflow,...i}}))},[]),l=y.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:o}),[n,a,o]);return s.jsx(Zl.Provider,{value:l,children:e})}function dr(){const e=y.useContext(Zl);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const Be=[{id:1,key:"category",label:"Category Type",title:"Category Type",description:"Define the type and basic details for this category type."},{id:2,key:"workflow",label:"Workflow",title:"Workflow",description:"L1 > L2 > L3"},{id:3,key:"formFields",label:"Form Fields"},{id:4,key:"review",label:"Review & Publish",title:"Review & Publish",description:"Review your configuration and publish."}],vm=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function wm({size:e=28,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...n,children:[s.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),s.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),s.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function ei({title:e,description:t,nextLabel:n="Next",onNext:r,showNext:a=!0,nextDisabled:o=!1,nextVariant:l="primary",extra:i=null,className:c=""}){return s.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[s.jsx("div",{className:"ca-settings-card__heading",children:s.jsxs("div",{children:[s.jsx(pa,{children:e}),t?s.jsx(Qn,{className:"ca-settings-card__desc",children:t}):null]})}),i,a?s.jsx(ye,{variant:l,disabled:o,onClick:r,endIcon:s.jsx(pn,{size:14,color:"currentColor"}),children:n}):null]})}function gn({title:e,description:t,onNext:n,nextLabel:r,showNext:a=!0,nextDisabled:o,nextVariant:l,headerExtra:i,children:c,footer:d,className:f=""}){return s.jsxs("section",{className:`ca-settings-card ${f}`.trim(),children:[s.jsx(ei,{title:e,description:t,onNext:n,nextLabel:r,showNext:a,nextDisabled:o,nextVariant:l,extra:i}),s.jsx("div",{className:"ca-settings-card__body",children:c}),d?s.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function _a({children:e,hint:t,htmlFor:n,className:r=""}){return s.jsxs("div",{className:`ca-field-label ${r}`.trim(),children:[s.jsx("label",{className:"ca-label",htmlFor:n,children:e}),t!=null?s.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function Ea({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function La(e){return typeof e=="string"?e:e.value}function Ta(e){return typeof e=="string"?e:e.label}function Ke({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:o=!1,maxVisible:l,allowClear:i=!1,...c}){const[d,f]=y.useState(!1),u=y.useRef(null),p=e??"",w=n.find(m=>String(La(m))===String(p)),b=w?Ta(w):"";y.useEffect(()=>{if(!d)return;const m=h=>{u.current?.contains(h.target)||f(!1)};return document.addEventListener("mousedown",m),()=>document.removeEventListener("mousedown",m)},[d]);const g=m=>{t?.({target:{value:m}})};return l?s.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:u,children:[s.jsx("button",{type:"button",id:c.id,className:`ca-select__control${b?"":" ca-select__control--placeholder"}`,disabled:o,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>f(m=>!m),children:b||r}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})}),d?s.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":l},children:n.map(m=>{const h=La(m),v=String(h)===String(p);return s.jsx("li",{role:"none",children:s.jsx("button",{type:"button",role:"option","aria-selected":v,className:`ca-select__option${v?" is-selected":""}`,onClick:()=>{g(h),f(!1)},children:Ta(m)})},h)})}):null]}):s.jsxs("div",{className:`ca-select ${a}`.trim(),children:[s.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:o,...c,children:[s.jsx("option",{value:"",disabled:!i,children:r}),n.map(m=>{const h=La(m);return s.jsx("option",{value:h,disabled:!!(m&&typeof m=="object"&&m.disabled),children:Ta(m)},h)})]}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})})]})}function ti({value:e,onChange:t,placeholder:n,maxLength:r,rows:a=4,className:o="",...l}){return s.jsx("textarea",{className:`ca-textarea ${o}`.trim(),value:e,onChange:t,placeholder:n,maxLength:r,rows:a,...l})}function $e({label:e,hint:t,children:n,className:r="",htmlFor:a}){return s.jsxs("div",{className:`ca-form-field ${r}`.trim(),children:[e!=null?s.jsx(_a,{htmlFor:a,hint:t,children:e}):null,n]})}function yn({label:e,hint:t,helperText:n,...r}){return s.jsxs($e,{label:e,hint:t,htmlFor:r.id,children:[s.jsx(Ot,{...r}),n?s.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function Ia({label:e,hint:t,...n}){return s.jsx($e,{label:e,hint:t,htmlFor:n.id,children:s.jsx(Ke,{...n})})}function Cm({label:e,hint:t,maxLength:n,value:r="",...a}){const o=t??(n!=null?`${String(r).length}/${n}`:void 0);return s.jsx($e,{label:e,hint:o,htmlFor:a.id,children:s.jsx(ti,{value:r,maxLength:n,...a})})}function ni({size:e=12,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function ri({label:e,onRemove:t,className:n="",title:r}){return s.jsxs("span",{className:`ca-tag ${n}`.trim(),title:r,children:[e,t?s.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:s.jsx(ni,{size:10})}):null]})}function ur({label:e="",options:t=[],value:n=[],onChange:r,placeholder:a="Select roles",className:o="",hasError:l=!1,required:i=!1,emptyText:c="No roles available",openDirection:d="up",showAll:f=!0,maxVisible:u=null,searchable:p=!1,searchPlaceholder:w="Search",lockedValues:b=[],rotateChevron:g=!1}){const[m,h]=y.useState(!1),[v,_]=y.useState(""),A=Array.isArray(n)?n.filter(N=>N!=null&&N!==""):[],M=new Set(b.map(N=>String(N))),L=y.useRef(null),z=y.useRef(null),Q=t.map(N=>typeof N=="string"?{value:N,label:N,sublabel:"",searchText:N}:{value:N.value,label:N.label,sublabel:N.sublabel??"",title:N.title??"",searchText:N.searchText??`${N.label??""} ${N.sublabel??""}`}).filter(N=>N.value!==null&&N.value!==void 0&&N.value!==""),G=new Map(Q.map(N=>[String(N.value),N.label])),q=N=>A.some(k=>String(k)===String(N)),K=Q.filter(N=>`${N.label} ${N.sublabel} ${N.searchText}`.toLowerCase().includes(v.trim().toLowerCase())),ee=K.map(N=>N.value),V=ee.length>0&&ee.every(N=>q(N)),I=()=>{if(V)r?.(A.filter(N=>M.has(String(N))||!ee.some(k=>String(k)===String(N))));else{const N=A.filter(k=>!ee.some(C=>String(C)===String(k)));r?.([...N,...ee])}};y.useEffect(()=>{m&&z.current&&(z.current.scrollTop=0)},[m]),y.useEffect(()=>{if(!m)return;const N=C=>{L.current&&!L.current.contains(C.target)&&(h(!1),_(""))},k=C=>{C.key==="Escape"&&(h(!1),_(""))};return document.addEventListener("mousedown",N),document.addEventListener("touchstart",N),document.addEventListener("keydown",k),()=>{document.removeEventListener("mousedown",N),document.removeEventListener("touchstart",N),document.removeEventListener("keydown",k)}},[m]);const O=N=>{M.has(String(N))||(q(N)?r?.(A.filter(k=>String(k)!==String(N))):r?.([...A,N]),_(""))},j=N=>{M.has(String(N))||r?.(A.filter(k=>String(k)!==String(N)))},W=A.length?`${A.length} selected`:a;return s.jsxs("div",{className:`ca-role-select ${o}`.trim(),style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,width:"100%"},children:[s.jsxs(_a,{children:[e,i?s.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),s.jsxs("div",{className:"ca-multi-select",ref:L,style:{position:"relative",width:"100%"},children:[p?s.jsxs("div",{className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":m,onClick:()=>h(!0),children:[s.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:v,placeholder:w,"aria-label":w,onFocus:()=>h(!0),onChange:N=>{_(N.target.value),h(!0)},onKeyDown:N=>{N.key==="Escape"&&(N.stopPropagation(),h(!1),_(""))}}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:g&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):s.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>h(N=>!N),"aria-haspopup":"listbox","aria-expanded":m,children:[s.jsx("span",{className:A.length?"":"ca-multi-select__placeholder",children:W}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:g&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),m?s.jsxs("ul",{ref:z,className:"ca-multi-select__menu",role:"listbox","aria-multiselectable":"true",style:{position:"absolute",top:d==="down"?"calc(100% + 4px)":"auto",bottom:d==="down"?"auto":"calc(100% + 4px)",left:0,right:0,zIndex:20,maxHeight:u?u*38+8:d==="down"?220:260,overflowY:"auto"},children:[f&&K.length>1?s.jsx("li",{role:"option","aria-selected":V,style:{position:"sticky",top:0,zIndex:1,background:"var(--ca-surface, #fff)",borderBottom:"1px solid var(--ca-border, #e5e7eb)"},children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:V,onChange:I}),s.jsx("span",{children:"All"})]})}):null,K.length?K.map(N=>s.jsx("li",{role:"option","aria-selected":q(N.value),children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:q(N.value),disabled:M.has(String(N.value)),onChange:()=>O(N.value)}),s.jsxs("span",{className:"ca-multi-select__option-text",children:[s.jsx("span",{className:"ca-multi-select__option-label",children:N.label}),N.sublabel?s.jsx("span",{className:"ca-multi-select__option-sublabel",children:N.sublabel}):null]})]})},String(N.value))):s.jsx("li",{className:"ca-multi-select__empty",children:v?"No matching options":c})]}):null]}),A.length>0?s.jsx("div",{className:"ca-tag-list",children:[...new Set(A)].map(N=>s.jsx(ri,{label:G.get(String(N))||String(N),title:Q.find(k=>String(k.value)===String(N))?.title,onRemove:M.has(String(N))?void 0:()=>j(N)},String(N)))}):null]})}function bn({steps:e=[],currentStep:t=1,allStepsUnlocked:n=!1,onStepClick:r,className:a="",size:o="md",showSaveButton:l=!1,showNextButton:i=!1,onNext:c,nextLabel:d="Next >",extraActions:f=null}){const u=y.useRef({}),p=X.useDispatch();return y.useEffect(()=>{const w=u.current[t];if(!w)return;const b=requestAnimationFrame(()=>{let g=w.parentElement;for(;g&&g!==document.body;){const{overflowX:M}=getComputedStyle(g);if(g.scrollWidth>g.clientWidth+1&&(M==="auto"||M==="scroll"))break;g=g.parentElement}if(!g||g===document.body)return;const m=g.getBoundingClientRect(),h=w.getBoundingClientRect(),v=12;if(h.left>=m.left+v&&h.right<=m.right-v)return;const A=h.left-m.left-(m.width-h.width)/2;g.scrollTo({left:g.scrollLeft+A,behavior:"smooth"})});return()=>cancelAnimationFrame(b)},[t]),s.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${o} ${a}`.trim(),children:[s.jsx("nav",{className:`ca-stepper ca-stepper--${o}`,"aria-label":"Progress",children:e.map((w,b)=>{const g=w.id??b+1,m=g===t,h=g<t,v=!!r&&(n||h||m);return s.jsxs("button",{type:"button",ref:_=>{u.current[g]=_},className:["ca-stepper__item",m?"ca-stepper__item--active":"",h?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-b},onClick:()=>{p(Nt({data:!0})),v&&r?.(g)},disabled:!v,"aria-current":m?"step":void 0,children:[s.jsxs("span",{className:"ca-stepper__circle",children:[g,"."]}),s.jsx("span",{className:"ca-stepper__label",children:w.label})]},g)})}),l||i||f?s.jsxs("div",{className:"ca-stepper__actions",children:[f,i?s.jsx(ye,{onClick:c,children:d}):null]}):null]})}const Am={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},Nm=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],_m={value:"",label:"Select Template"},Fa=e=>String(e?.id??e?.code??e?.name??"");function Em(e){return Array.isArray(e)?[...new Set(e.map(t=>!t||typeof t!="object"?t:t.userId??t.user_id??t.id??t.value??t.user?.userId??t.user?.id).filter(t=>t!=null&&t!==""))]:[]}function ka(e){const t=[e?.userIds,e?.users,Array.isArray(e?.accesses)?e.accesses.map(n=>n?.userId??n?.user?.id):null];for(const n of t){const r=Em(n);if(r.length)return r}return[]}function fr(e){return e==null||e===""?null:String(e).trim()||null}function ai(e){return fr(e?.userId??e?.user_id??e?.id??e?.value)}function Lm(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=fr(e?.createdByUserId??e?.createdById??n?.userId??n?.id??n?.user?.id??(typeof n=="number"||/^\d+$/.test(String(n??"").trim())?n:null));if(r)return r;const a=typeof n=="string"?n.trim().toLowerCase():String(n?.name??n?.userName??"").trim().toLowerCase();if(!a)return null;const o=t.find(l=>{const i=String(l?.name??l?.userName??[l?.firstName,l?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(l?.email??l?.userEmail??"").trim().toLowerCase();return a===i||a===c});return ai(o)}function Oa(...e){const t=new Map;return e.flat().forEach(n=>{const r=fr(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const si=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(l=>l?.role?.id??l?.roleId):[],n=Array.isArray(e?.roleIds)?e.roleIds:[],r=l=>l.map(i=>i&&typeof i=="object"?i.id??i.roleId??i.role_id??i.value:i).filter(i=>i!=null&&i!==""),a=r(t),o=r(n);return{categoryName:e?.name??e?.code??"",tatMinutes:_t(e?.tatMinutes)||"",template:Fa(e),categoryType:e?.categoryType??Fa(e),description:e?.description??"",visibilityType:e?.visibilityType??e?.accessType??"INTERNAL_LOGIN",urlLink:e?.urlLink??"",active:e?.isActive??e?.active??!0,roles:[...new Set(a.length?a:o)],userIds:ka(e)}};function Tm(e){return[_m,...e]}function Im(e,t){const n=[];if(e.categoryName&&n.push("Please enter a category name."),e.tatMinutes){const r=String(t.tatMinutes??"").trim();n.push(r?"TAT must include a unit (m, h, or d). Example: 30m, 2h, 1d.":"Please enter TAT . Use Minutes for m, Hours for h, or Days for d.")}return e.visibilityType&&n.push("Please select a visibility type."),e.urlLink&&n.push("Please enter a URL link."),e.roles&&n.push("Please select roles for complaint filling."),n.join(" ")}function Fm({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:o}=dr(),[l,i]=y.useState(()=>a.categoryFormData??Am),c=y.useRef(a.categoryFormData),[d,f]=y.useState({}),u=X.useDispatch(),{id:p}=X.useSelector(C=>C.appDetails||{}),{isEdit:w}=X.useSelector(C=>C.appDetails||{}),b=X.useSelector(C=>C.complaintType||{}),g=X.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:m=[],saving:h,loading:v,error:_}=b,A=m.find(C=>String(C?.id??C?._id)===String(p))??(String(b.selected?.id??b.selected?._id)===String(p)?b.selected:null),M=y.useRef(A),L=y.useRef(!1);y.useEffect(()=>{M.current=A},[A]);const z=(C,P={})=>{i(C),c.current=C,o({categoryFormData:C,...P})};y.useEffect(()=>{a.categoryFormData||o({categoryFormData:l,categoryRoleIds:l.roles})},[l,o,a.categoryFormData]),y.useEffect(()=>{!m.length&&!v&&!L.current&&(L.current=!0,u(on()))},[m.length,u,v]),y.useEffect(()=>{!w||p===null||p===void 0||c.current||u(Qe(p)).unwrap().then(C=>{const P=C?.data??C;if(!P||c.current)return;const T=M.current,$=ka(P),J=ka(T),re={...P,roleIds:P.roleIds??T?.roleIds,userIds:$.length?$:J},F=si(re);i(F),c.current=F,o({categoryFormData:F,categoryRoleIds:F.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[u,p,w,o]);const Q=n.map(C=>({value:C.id??C.roleId??C.value,label:C.name??C.roleName??C.label})).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),G=r.map(C=>{const P=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),T=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:P,sublabel:T,title:T?`Email: ${T}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),q=w?Lm(A,r):ai(g),K=[];Oa(l.userIds,K);const ee=w?A?.createdByUser??A?.createdBy:g;if(q&&!G.some(C=>fr(C.value)===q)){const C=typeof ee=="object"?String(ee.name??ee.userName??[ee.firstName,ee.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";G.push({value:q,label:C||"Created by user",sublabel:typeof ee=="object"?String(ee.email??"").trim():""})}const V=m.map(C=>({value:Fa(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),I=async C=>{const P=C?.id??C?._id??null,T={...l,...si(C),categoryName:"",roles:[],userIds:K};if(z(T,{categoryRoleIds:[]}),o({templateId:P,tatMinutes:Ie(C?.tatMinutes)}),P==null||P===""){o({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[$,J]=await Promise.all([u(We(P)).unwrap(),u(xe(P)).unwrap()]),re=(Array.isArray($?.data)?$.data:Array.isArray($)?$:[]).map(Y=>({...Y,roleIds:[],role:[],roleId:null})),F=Array.isArray(J?.data)?J.data:Array.isArray(J)?J:[];o({templateId:P,tatMinutes:Ie(C?.tatMinutes),prefillWorkflowSteps:re,prefillFormFields:F})}catch($){console.log("Failed to load template details:",$),o({templateId:P,prefillWorkflowSteps:[],prefillFormFields:[]})}},O=()=>{const C={...l,template:"",categoryType:"",tatMinutes:"",description:""};z(C),o({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},j=C=>{const P=C.target.value;if(!P){O();return}const T=V.find($=>$.value===P)?.complaintType;if(T){I(T);return}W("template",P),W("categoryType",P)},W=(C,P)=>{const T=Array.isArray(P)?C==="userIds"?Oa(P,K):[...new Set(P.filter(J=>J!=null&&J!==""))]:P,$={...l,[C]:T};z($,C==="roles"?{categoryRoleIds:T}:{}),f(J=>{if(!J[C])return J;const re={...J};return delete re[C],re})},N=l.visibilityType==="PRIVATE_LINK"||l.visibilityType==="PUBLIC_LINK",k=async()=>{const C={};if(l.categoryName.trim()||(C.categoryName=!0),dp(l.tatMinutes)||(C.tatMinutes=!0),l.visibilityType||(C.visibilityType=!0),l.roles.length||(C.roles=!0),N&&!l.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){f(C);return}f({});const P=Ie(l.tatMinutes),T={...l,userIds:Oa(l.userIds,K)};z(T,{tatMinutes:P,categoryRoleIds:T.roles});const $={categoryName:l.categoryName,categoryType:l.categoryType||l.template,tatMinutes:P,description:l.description,visibilityType:l.visibilityType,urlLink:N?l.urlLink:"",active:l.active,roles:T.roles},J=w?cn({id:p,data:{code:$.categoryName,name:$.categoryName,description:$.description,tatMinutes:$.tatMinutes,accessType:$.visibilityType,roleIds:$.roles.map(F=>parseInt(F,10))},onFail:F=>{console.log("updateComplaintType onFail:",F)}}):ln({payload:$,onSuccess:F=>{u(lt(F?.data?.id??F?.id??null))},onFail:F=>{console.log("createComplaintType onFail:",F)}}),re=await u(J);if(w&&cn.fulfilled.match(re)||!w&&ln.fulfilled.match(re)){if(!w){const F=re.payload?.data?.id??re.payload?.id;F!=null&&u(lt(F))}t.onNext?.()}};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:Be,showNextButton:!!t.showNextButton,onNext:k}),_||Object.keys(d).length>0?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:_||Im(d,l)}):null,s.jsxs(gn,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:s.jsx("div",{className:"ca-category-type__header-tools",children:s.jsx("div",{className:"ca-category-type__template",children:s.jsx(Ia,{label:"Select Template (Optional)",value:l.template||l.categoryType,onChange:j,options:Tm(V),placeholder:"Select Template",maxVisible:5,disabled:w,className:w?"ca-select--disabled":""})})}),children:[s.jsxs("div",{className:"ca-step-section",children:[s.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["Category Name ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:l.categoryName,onChange:C=>W("categoryName",C.target.value),placeholder:"Enter category name"}),s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["TAT ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:l.tatMinutes,onChange:C=>W("tatMinutes",C.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),s.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:s.jsx(yn,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:l.description,onChange:C=>W("description",C.target.value),placeholder:"Enter description"})}),s.jsxs("div",{className:"ca-step-row",children:[s.jsx(Ia,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:l.visibilityType,onChange:C=>W("visibilityType",C.target.value),options:Nm,placeholder:"Select visibility type"}),N?s.jsx(yn,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:l.urlLink,onChange:C=>W("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),s.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:s.jsx(ur,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:Q,value:l.roles,maxVisible:4,onChange:C=>W("roles",C)})}),v?s.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,h?s.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function oi({level:e,onAdd:t,disabled:n=!1}){const r=`Level ${e}`,a=e===1?"Initial Handler":e===2?"Escalation if L1 TAT exceeded":"Escalation workflow";return s.jsxs("div",{className:"ca-add-table-card",children:[s.jsxs("header",{className:"ca-add-table-card__header",children:[s.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),s.jsxs("div",{className:"ca-add-table-card__header-text",children:[s.jsx("h3",{className:"ca-add-table-card__title",children:r}),s.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),s.jsx("div",{className:"ca-add-table-card__action",children:s.jsxs(ye,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const Da=["Yes","No"],Pt=()=>s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function li({name:e,level:t,value:n,initialFormValues:r,setFormValues:a,onChange:o,selected:l=!1,onSelect:i,onDelete:c,subtitle:d,roleList:f=[],showRoleError:u=!1,showEscalationError:p=!1,userList:w=[],fieldErrors:b={}}){const g=n??r??{},m=Array.isArray(g.role)?g.role:[],h=Array.isArray(g.users)?g.users:[],v=g.workflowType==="user"?"user":"role",_=f.map(I=>({value:I.id??I.roleId??I.value,label:I.name??I.roleName??I.label})).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),A=I=>{const O=[I?.firstName,I?.lastName].map(N=>String(N??"").trim()).filter(Boolean).join(" "),j=String(I?.name??I?.userName??I?.label??"").trim()||O,W=[I?.roleName,I?.role?.name,typeof I?.role=="string"?I.role:"",...Array.isArray(I?.roles)?I.roles.map(N=>typeof N=="string"?N:N?.name):[]].map(N=>String(N??"").trim()).filter(Boolean).filter((N,k,C)=>C.indexOf(N)===k).join(", ");return{userName:j,roleName:W,email:String(I?.email??I?.userEmail??"").trim()}},M=w.map(I=>{const{userName:O,roleName:j,email:W}=A(I);return{value:I.id??I.userId??I.user_id??I.value,label:O,sublabel:W,title:W?`Email: ${W}`:"",searchText:j}}).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),L=(I,O)=>{const j={...g,[I]:O};a?a(j):o?.(j)},z=m.length===0&&h.length===0,Q=(u||!!b.role)&&z,G=I=>I?"ca-control--invalid":"",q=t===1?"green":t===2?"orange":"blue",K=I=>`workflow-level-${t}-${I}`,ee=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),V=[{value:"role",label:"Role",count:m.length},{value:"user",label:"User",count:h.length}];return s.jsxs("article",{className:`ca-table-card ca-table-card--${q}${l?" ca-table-card--selected":""}`,onClick:i,children:[s.jsxs("header",{className:"ca-table-card__header",children:[s.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),s.jsxs("div",{className:"ca-table-card__header-text",children:[s.jsx("h3",{className:"ca-table-card__title",children:e}),s.jsx("p",{className:"ca-table-card__subtitle",children:ee})]}),s.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:I=>{I.stopPropagation(),c?.()},children:s.jsx(er,{size:15,color:"currentColor"})})]}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsxs("div",{className:"ca-table-card__fields",children:[s.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:V.map(I=>s.jsxs("button",{type:"button",className:`ca-type-toggle__btn${v===I.value?" ca-type-toggle__btn--active":""}`,onClick:O=>{O.stopPropagation(),v!==I.value&&L("workflowType",I.value)},children:[I.label,I.count?` (${I.count})`:""]},I.value))}),v==="role"?s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Select Roles",s.jsx(Pt,{})]}),htmlFor:K("roleIds"),children:s.jsx(ur,{id:K("role"),value:m,options:_,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:Q,onChange:I=>L("role",I)},"role")}):s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Select Users",s.jsx(Pt,{})]}),htmlFor:K("userIds"),children:s.jsx(ur,{id:K("user"),value:h,options:M,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:Q,onChange:I=>L("users",I)},"user")}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Can Resolve ",s.jsx(s.Fragment,{children:"(Change the Status)"}),s.jsx(Pt,{})]}),htmlFor:K("canResolve"),children:s.jsx(Ke,{id:K("canResolve"),className:G(b.canResolve),value:g.canResolve,options:Da,onChange:I=>L("canResolve",I.target.value)})}),s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Can Reassign ",s.jsx(s.Fragment,{children:"(Change the Level)"}),s.jsx(Pt,{})]}),htmlFor:K("canReassign"),children:s.jsx(Ke,{id:K("canReassign"),className:G(b.canReassign),value:t===1?"No":g.canReassign,options:t===1?["No"]:Da,disabled:t===1,onChange:I=>L("canReassign",I.target.value)})}),s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Final Level",s.jsx(s.Fragment,{children:"(can be resolved or closed the complaint)"}),s.jsx(Pt,{})]}),htmlFor:K("finalLevel"),children:s.jsx(Ke,{id:K("finalLevel"),className:G(b.finalLevel),value:g.finalLevel,options:Da,onChange:I=>L("finalLevel",I.target.value)})}),s.jsx($e,{label:s.jsxs(s.Fragment,{children:["Escalation time",s.jsx(Pt,{})]}),htmlFor:K("escalationTime"),children:s.jsx("div",{className:"ca-table-card__time-input",children:s.jsx(Ot,{id:K("escalationTime"),type:"text",className:G(p||b.escalation),value:g.escalateAfterMinutes??"",placeholder:"--",onChange:I=>L("escalateAfterMinutes",I.target.value)})})})]})]})}function ii({open:e,title:t,children:n,primaryLabel:r="Save",onPrimary:a,secondaryLabel:o="Cancel",onSecondary:l,primaryDisabled:i=!1}){return e?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?s.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,n,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[o?s.jsx(ye,{variant:"outline",onClick:l,children:o}):null,s.jsx(ye,{onClick:a,disabled:i,children:r})]})]})}):null}function ci({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?s.jsx(ii,{open:!0,title:`Final Level is set to Yes at Level ${t}. You can't create a next level here, and every level after Level ${t} will be deleted. Do you want to continue?`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:"Cancel",onSecondary:a}):e==="finalLevelRequired"?s.jsx(ii,{open:!0,title:`Level ${t} is the last level. "Final Level" must be Yes. Click Ok to set it to Yes.`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:null}):null:null}function xa(e,t=0){const n=o=>!String(o??"").trim(),r=!(Array.isArray(e?.role)&&e.role.length),a=!(Array.isArray(e?.users)&&e.users.length);return{role:r&&a,canResolve:n(e?.canResolve),canReassign:t>0&&n(e?.canReassign),finalLevel:n(e?.finalLevel),escalation:n(e?.escalateAfterMinutes)}}const km="data:image/svg+xml,%3csvg%20width='31'%20height='57'%20viewBox='0%200%2031%2057'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M0.50001%200.000227733C0.223869%200.000226605%209.85899e-06%200.224084%208.79418e-06%200.500226C7.72665e-06%200.776369%200.223865%201.00023%200.500009%201.00023L0.50001%200.500227L0.50001%200.000227733ZM15%200.500275L15%201.00028L15%200.500275ZM27%2012.5003L27.5%2012.5003L27%2012.5003ZM26.6464%2056.8527C26.8417%2057.048%2027.1582%2057.048%2027.3535%2056.8527L30.5355%2053.6707C30.7307%2053.4755%2030.7307%2053.1589%2030.5355%2052.9636C30.3402%2052.7683%2030.0236%2052.7683%2029.8284%2052.9636L26.9999%2055.792L24.1715%2052.9636C23.9763%2052.7683%2023.6597%2052.7683%2023.4644%2052.9636C23.2692%2053.1589%2023.2692%2053.4754%2023.4644%2053.6707L26.6464%2056.8527ZM0.50001%200.500227L0.500009%201.00023L15%201.00028L15%200.500275L15%200.000275583L0.50001%200.000227733L0.50001%200.500227ZM27%2012.5003L26.5%2012.5003L26.4999%2056.4991L26.9999%2056.4991L27.4999%2056.4991L27.5%2012.5003L27%2012.5003ZM15%200.500275L15%201.00028C21.3513%201.0003%2026.5%206.14903%2026.5%2012.5003L27%2012.5003L27.5%2012.5003C27.5%205.59674%2021.9036%200.000298399%2015%200.000275583L15%200.500275Z'%20fill='%2300BF87'/%3e%3c/svg%3e",Om="data:image/svg+xml,%3csvg%20width='28'%20height='61'%20viewBox='0%200%2028%2061'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M27.0053%2057.2042C27.2006%2057.009%2027.2006%2056.6924%2027.0053%2056.4971L23.8233%2053.3152C23.6281%2053.1199%2023.3115%2053.1199%2023.1162%2053.3152C22.921%2053.5104%2022.921%2053.827%2023.1162%2054.0223L25.9447%2056.8507L23.1163%2059.6791C22.921%2059.8744%2022.921%2060.191%2023.1163%2060.3862C23.3115%2060.5815%2023.6281%2060.5815%2023.8234%2060.3862L27.0053%2057.2042ZM12.5001%2056.8508L12.5001%2057.3508V57.3508L12.5001%2056.8508ZM0.500014%2044.8508L1.33317e-05%2044.8508V44.8508L0.500014%2044.8508ZM26.6518%2056.8507L26.6518%2056.3507L12.5001%2056.3508L12.5001%2056.8508L12.5001%2057.3508L26.6518%2057.3507L26.6518%2056.8507ZM0.500014%2044.8508L1.00001%2044.8508L1.00001%20-0.000388027L0.50001%20-0.000388722L9.54624e-06%20-0.000389416L1.33317e-05%2044.8508L0.500014%2044.8508ZM12.5001%2056.8508L12.5001%2056.3508C6.14877%2056.3508%201.00001%2051.2021%201.00001%2044.8508L0.500014%2044.8508L1.33317e-05%2044.8508C1.43871e-05%2051.7544%205.59649%2057.3508%2012.5001%2057.3508L12.5001%2056.8508Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",Dm="data:image/svg+xml,%3csvg%20width='57'%20height='31'%20viewBox='0%200%2057%2031'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M56.9989%200.500133C56.9989%200.223991%2056.7751%200.000131942%2056.4989%200.00013087C56.2228%200.000129795%2055.9989%200.223987%2055.9989%200.500131L56.4989%200.500132L56.9989%200.500133ZM56.4989%2015.0002L55.9989%2015.0002L56.4989%2015.0002ZM44.4989%2027.0001L44.4988%2027.5001L44.4989%2027.0001ZM0.146456%2026.6465C-0.0488074%2026.8418%20-0.0488086%2027.1584%200.146455%2027.3536L3.32843%2030.5356C3.52369%2030.7309%203.84027%2030.7309%204.03554%2030.5356C4.2308%2030.3403%204.2308%2030.0238%204.03554%2029.8285L1.20712%2027.0001L4.03555%2024.1716C4.23081%2023.9764%204.23081%2023.6598%204.03555%2023.4645C3.84029%2023.2693%203.5237%2023.2693%203.32844%2023.4645L0.146456%2026.6465ZM56.4989%200.500132L55.9989%200.500131L55.9989%2015.0002L56.4989%2015.0002L56.9989%2015.0002L56.9989%200.500133L56.4989%200.500132ZM44.4989%2027.0001L44.4989%2026.5001L0.500009%2026.5001L0.500008%2027.0001L0.500007%2027.5001L44.4988%2027.5001L44.4989%2027.0001ZM56.4989%2015.0002L55.9989%2015.0002C55.9988%2021.3514%2050.8501%2026.5001%2044.4989%2026.5001L44.4989%2027.0001L44.4988%2027.5001C51.4024%2027.5001%2056.9988%2021.9037%2056.9989%2015.0002L56.4989%2015.0002Z'%20fill='%2300BF87'/%3e%3c/svg%3e",xm="data:image/svg+xml,%3csvg%20width='61'%20height='28'%20viewBox='0%200%2061%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.32848%2027.0049C3.52374%2027.2002%203.84032%2027.2002%204.03559%2027.0049L7.21755%2023.8229C7.41281%2023.6277%207.4128%2023.3111%207.21754%2023.1158C7.02228%2022.9206%206.70569%2022.9206%206.51043%2023.1158L3.68203%2025.9443L0.85358%2023.1159C0.658316%2022.9206%200.341733%2022.9206%200.146472%2023.1159C-0.0487878%2023.3111%20-0.0487864%2023.6277%200.146478%2023.823L3.32848%2027.0049ZM3.68194%2012.4997L3.18194%2012.4997V12.4997L3.68194%2012.4997ZM15.6819%200.499617L15.6819%20-0.000382774V-0.000382774L15.6819%200.499617ZM3.68203%2026.6514L4.18203%2026.6514L4.18194%2012.4997L3.68194%2012.4997L3.18194%2012.4997L3.18203%2026.6514L3.68203%2026.6514ZM15.6819%200.499617L15.6819%200.999618L60.5331%200.999616L60.5331%200.499615L60.5331%20-0.000385315L15.6819%20-0.000382774L15.6819%200.499617ZM3.68194%2012.4997L4.18194%2012.4997C4.1819%206.14838%209.33063%200.999618%2015.6819%200.999618L15.6819%200.499617L15.6819%20-0.000382774C8.77834%20-0.00038191%203.18189%205.5961%203.18194%2012.4997L3.68194%2012.4997Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",Ma=(e,t,n={})=>({id:e,name:t,role:Array.isArray(n.role)?n.role:n.roleId!==void 0&&n.roleId!==null?[n.roleId]:[],users:Array.isArray(n.users)?n.users:[],workflowType:n.workflowType??"role",canResolve:n.canResolve??"",canReassign:n.canReassign??(Number(e)===1?"No":""),finalLevel:n.finalLevel??"",escalateAfterMinutes:_t(n.escalateAfterMinutes)||""});function Pa(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"?"Yes":e===!1||e==="No"||e==="false"||e===0||e==="0"?"No":e??""}function Mm(e,t){const n=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(n.find(i=>i.length)??n[0]??[]).map(i=>i&&typeof i=="object"?i.id??i.roleId:i).filter(i=>i!=null),o=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(i=>i&&typeof i=="object"?i.userId??i.id:i).filter(i=>i!=null),l=a.length>0?"role":o.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return Ma(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:o,workflowType:l,canResolve:Pa(e.canResolve),canReassign:t===0?"No":Pa(e.canReassign),finalLevel:Pa(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:_t(e.escalateAfterMinutes)||""})}function di(e=[]){return(Array.isArray(e)?e:[]).map(Mm)}function ui(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(n=>n&&typeof n=="object"):[])}const Ua=[Ma(1,"Level 1")];function fi({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:km,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:Om,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function pi({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Dm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:xm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function hi({id:e,selectedTableId:t,onSelect:n,setUpdatePayload:r,registerWorkflowActions:a,roleList:o=[],prefillSteps:l=[],tatTotalMinutes:i=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:f=!1,userList:u=[],onAddBlocked:p}){const w=e!=null,[,b]=y.useState(Ua),[g,m]=y.useState(Ua),[h,v]=y.useState([]),[_,A]=y.useState(w),[M,L]=y.useState(null),[z,Q]=y.useState(i),G=y.useRef(null),q=y.useRef(i),K=y.useRef(new Set),[ee,V]=y.useState([]),[I,O]=y.useState(null),j=X.useDispatch(),W=y.useMemo(()=>{const F=di(l);return F.length?F:Ua},[l]),N=(()=>{const F=new Set;return[...o,...h,...ui(l)].filter(Y=>{const E=String(Y?.id??Y?.roleId??Y?.value);return F.has(E)?!1:(F.add(E),!0)})})();if(!w&&M!==W){const F=Et(W,i);L(W),m(F),b(F)}if(!_&&z!==i){Q(i);const F=Et(g,i);F!==g&&m(F)}y.useEffect(()=>{q.current=i},[i]),y.useEffect(()=>{if(!w){const E=Et(W,q.current);r({id:e,tables:E});return}let F=!1;return(async()=>{A(!0);try{const E=await j(We(e)).unwrap(),Z=Array.isArray(E?.data)?E.data:Array.isArray(E)?E:[];v(ui(Z));const R=di(Z),se=Et(R.length?R:W,q.current);F||(b(se),m(se),r({id:e,tables:se}))}catch(E){if(!F){const Z=Et(W,q.current);b(Z),m(Z),r({id:e,tables:Z}),console.error("Failed to load workflow steps:",E)}}finally{F||A(!1)}})(),()=>{F=!0}},[j,W,w,e,r]),y.useEffect(()=>{_||r?.({id:e,tables:g})},[e,_,r,g]);const k=y.useCallback((F,{preserveLastLevel:Y}={})=>{const E=F.map((se,D)=>D===0?{...se,canReassign:"No"}:se),Z=Y?E:Et(E,i),R={id:e,tables:Z};return m(Z),console.log("[TableCardGrid] updated form values:",Z),console.log("[TableCardGrid] PUT payload:",R),r?.(R),R},[e,r,i]);y.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!g.length)return null;const F=g.length-1,Y=g.map((E,Z)=>Z===F?{...E,finalLevel:"Yes"}:E);return k(Y,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,g,i,k]);const C=F=>{const Y=g[g.length-1];return Y!=null&&Y.id===F},P=(F,Y)=>{Object.prototype.hasOwnProperty.call(Y,"escalateAfterMinutes")&&K.current.add(F),k(g.map(E=>E.id===F?{...E,...Y}:E),{preserveLastLevel:C(F)})},T=(F,Y)=>{const E=g.findIndex(se=>se.id===F);if(E<0)return;const Z=g[E],R=typeof Y=="function"?Y(Z):Y;if(R.escalateAfterMinutes!==Z.escalateAfterMinutes&&K.current.add(F),E<g.length-1&&Z.finalLevel!=="Yes"&&R.finalLevel==="Yes"){O({tableId:F,value:R});return}k(g.map((se,D)=>D===E?R:se),{preserveLastLevel:C(F)})},$=()=>{if(!I)return;const F=g.findIndex(E=>E.id===I.tableId);if(F<0){O(null);return}const Y=g.slice(0,F+1).map((E,Z)=>Z===F?I.value:E);V(E=>E.filter(Z=>Y.some(R=>R.id===Z))),k(Y),O(null)},J=F=>{if(g.some(ne=>ne.finalLevel==="Yes"))return;const Y=g[g.length-1];if(Y){const ne=xa(Y,g.length-1);if(Object.values(ne).some(Boolean)){V(ie=>ie.includes(Y.id)?ie:[...ie,Y.id]),p?.(`Please fill all required fields of Level ${g.length} before adding a new level.`);return}}p?.("");const E=g.reduce((ne,ie)=>Math.max(ne,Number(ie.id)||0),0)+1,Z=g.length+1,R=g[g.length-1],D=R!=null&&K.current.has(R.id)&&Ie(R.escalateAfterMinutes)>0?g:pp(g);K.current.delete(E),k([...D,Ma(E,F||`Level ${Z}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const ne=G.current;ne&&ne.scrollTo({left:ne.scrollWidth,behavior:"smooth"})})})},re=F=>{K.current.delete(F),k(g.filter(Y=>Y.id!==F))};return _&&!g.length?null:s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:G,children:s.jsxs("div",{className:"ca-table-card-grid__track",children:[g.map((F,Y)=>s.jsxs(y.Fragment,{children:[s.jsx(li,{name:F.name,roleList:N,showRoleError:c||f,showEscalationError:d,userList:u,level:Y+1,value:F,initialFormValues:F,setFormValues:E=>T(F.id,E),selected:F.id===t,onSelect:()=>n?.(F),onDelete:()=>re(F.id),onChange:E=>P(F.id,E),fieldErrors:f||ee.includes(F.id)?xa(F,Y):{}}),Y<g.length-1?s.jsxs(s.Fragment,{children:[s.jsx(fi,{accent:Y===0?"green":Y===1?"orange":"purple"}),s.jsx(pi,{accent:Y===0?"green":Y===1?"orange":"purple"})]}):null]},F.id)),g.length?s.jsxs(s.Fragment,{children:[s.jsx(fi,{accent:g.length===1?"green":g.length===2?"orange":"purple"}),s.jsx(pi,{accent:g.length===1?"green":g.length===2?"orange":"purple"})]}):null,s.jsx(oi,{level:g.length+1,onAdd:J,disabled:g.some(F=>F.finalLevel==="Yes")})]})}),s.jsx(ci,{variant:"finalLevelDelete",levelNo:I?g.findIndex(F=>F.id===I.tableId)+1:null,open:!!I,onConfirm:$,onClose:()=>O(null)})]})}function Pm({totalMinutes:e=0,usedMinutes:t=0}){const n=Ie(e),r=Ie(t),a=Math.max(0,n-r),o=_t(a)||"0m",l=n>0?Math.min(100,r/n*100):0;return s.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${o} left`,children:[s.jsxs("div",{className:"ca-tat-progress__row",children:[s.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),s.jsxs("span",{className:"ca-tat-progress__remaining",children:[o," left"]})]}),s.jsx("div",{className:"ca-tat-progress__track",children:s.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${l}%`}})})]})}function mi(e){return e?.data??e?.id??e}function gi(e){const t=e&&typeof e=="object"?e.id??e.roleId??e.role_id??e.value:e;return t==null||t===""?null:String(t)}function yi(e){return String(e??"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Um(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles,e?.userRoles].flatMap(n=>Array.isArray(n)?n:[n]).flatMap(n=>[gi(n),gi(n?.role)]).filter(Boolean)}function Bm(e){const t=[e?.role,e?.roles,e?.assignedRoles,e?.userRoles].flatMap(r=>Array.isArray(r)?r:[r]);return[e?.roleName,e?.role_name,...t.flatMap(r=>typeof r=="string"?[r]:[r?.name,r?.roleName,r?.label,r?.role?.name,r?.role?.roleName])].filter(Boolean).map(yi).filter(Boolean)}function $m({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:o=[]}){const{state:l,updateWorkflow:i}=dr(),{workflow:c}=l,d=l.categoryRoleIds,f=y.useMemo(()=>{const k=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));return k.size?a.filter(C=>!k.has(String(C.id??C.roleId??C.value))):a},[d,a]),u=y.useMemo(()=>{const k=new Set((Array.isArray(d)?d:[]).filter(P=>P!=null&&P!=="").map(String));if(!k.size)return o;const C=new Set(a.filter(P=>k.has(String(P.id??P.roleId??P.value))).map(P=>yi(P.name??P.roleName??P.label)).filter(Boolean));return o.filter(P=>!Um(P).some(T=>k.has(T))&&!Bm(P).some(T=>C.has(T)))},[d,a,o]),[p,w]=y.useState(null),[b,g]=y.useState(""),[m,h]=y.useState(!1),[v,_]=y.useState(null),A=y.useRef(null),M=y.useCallback(k=>{w(k),g("")},[]),L=y.useCallback(k=>{A.current=k},[]),z=X.useDispatch();let{id:Q}=X.useSelector(k=>k.appDetails||{});const G=X.useSelector(k=>k.complaintType?.selected),q=mi(Q),K=mi(G?.id??G?._id),ee=Ie(G?.tatMinutes??l.tatMinutes);y.useEffect(()=>{q==null||q===""||K!=null&&String(K)===String(q)&&G?.tatMinutes!=null||z(Qe(q))},[z,G?.tatMinutes,K,q]);const V=y.useMemo(()=>{const k=Array.isArray(p?.tables)?p.tables:[];return fp(k)},[p]),I=r??c.selectedTableCard??null,O=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((k,C)=>`L${C+1}`).join(" > "):"",j=k=>{z(Jn({id:k.id,tables:k,onSuccess:C=>{console.log("updateWorkflowSteps onSuccess:",C),g(""),n.onNext?.()},onFail:C=>{const P=C?.response?.data??C?.payload??C,T=[...new Set(Array.isArray(P?.errors)?P.errors.map(re=>re?.message).filter(Boolean):[])],$=(T.length?T.join(" "):null)??P?.message??P?.error??C?.message??"Failed to update workflow steps",J=String($).replace(/roleIds must contain at least 1 elements?/gi,"Please select at least one role or user in every level.").replace(/userAssignments must contain at least 1 elements?/gi,"Please select at least one role or user in every level.");g(up(J))}}))},W=async()=>{if(g(""),!p){g("Workflow steps are not ready to save.");return}const k=Array.isArray(p.tables)?p.tables:[];if(!k.length){g("Add at least one workflow level before continuing.");return}h(!0);const C=k.map(($,J)=>xa($,J)),P=k.length-1;if(C.some(($,J)=>Object.entries($).some(([re,F])=>F&&!(J===P&&re==="finalLevel")))){g("Please complete all required fields in every workflow level.");return}if(k[P].finalLevel!=="Yes"){_(P+1);return}j(p)},N=()=>{const k=A.current?.setLastLevelFinal?.();if(_(null),!k){g("Unable to update the final workflow level. Please try again.");return}h(!0),j(k)};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:Be,onNext:W,showNextButton:!0}),b?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:b}):null,s.jsx(ci,{variant:"finalLevelRequired",levelNo:v,open:v!=null,onConfirm:N,onClose:()=>_(null)}),s.jsx(gn,{title:t.title,description:O,showNext:!1,headerExtra:s.jsx(Pm,{totalMinutes:ee,usedMinutes:V}),children:s.jsx("div",{className:"ca-workflow__main",children:s.jsx(hi,{id:Q,selectedTableId:I?.id,onSelect:k=>i({selectedTableCard:k}),setUpdatePayload:M,registerWorkflowActions:L,roleList:f,userList:u,onAddBlocked:g,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(b),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(b),showRequiredErrors:m,prefillSteps:l.prefillWorkflowSteps,tatTotalMinutes:ee})})})]})}function bi({onAdd:e,disabled:t=!1}){return s.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const Si=y.createContext(null);function Ba(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function vi(e,t){const n=Ba(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function Je(){const e=y.useContext(Si);return{storeName:Ba(e),label:t=>vi(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?Ba(e):vi(t.fieldLabel??t.label??t.fieldName??"",e)}}}function wi({size:e=16,color:t="#9CA3AF",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...n,children:[s.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}function $a(e,t){return!t||e.includes(t)?e:[t,...e]}function Ci(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}const jm="#9CA3AF";function Ai({field:e,fieldOptions:t=[],fieldTypeOptions:n=[],fieldAccessOptions:r=[],hideForOptions:a=[],isSaving:o=!1,selected:l=!1,isDragging:i=!1,onSelect:c,onDragStartField:d,onDragEndField:f,onReorder:u,onChange:p,onDelete:w,onSave:b,cardRef:g,onOptionNotice:m,hasDuplicateIdentity:h=!1,hasMissingOptions:v=!1}){const[_,A]=y.useState(""),[M,L]=y.useState(null),z=y.useRef(!1),{label:Q,fieldLabel:G}=Je(),q=Ci(e),[K,ee]=y.useState(()=>({id:e.id,signature:e.isNew?null:q}));K.id!==e.id&&ee({id:e.id,signature:e.isNew?null:q});const V=e.lockMode==="all",I=Ue(e),O=V||e.lockMode==="options",j=Jl(e),W=V||!j||I&&!ae(e),N=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),k=K.signature!==q,C=!!o||!N,P=h||v?"ca-control--invalid":"",T=E=>p?.({...e,...E}),$=()=>{if(W)return;const E=_.trim();if(!E)return;if(ae(e)&&tt(E)){const R=(e.options||[]).find(se=>String(se).trim().toLowerCase()===E.toLowerCase());if(R){m?.(`${R} already exists in options`),A("");return}}if(e.options?.includes(E))return;const Z=ae(e)?{...e.optionColors||{},[E]:e.optionColors?.[E]||jm}:e.optionColors;T({options:ae(e)?Dt([...e.options||[],E]):[...e.options||[],E],...ae(e)?{optionColors:Z}:{}}),A("")},J=E=>{if(W||ae(e)&&tt(E))return;const Z={...e.optionColors||{}};delete Z[E];const R={...e.parentMappings||{}};delete R[E],T({options:e.options.filter(se=>se!==E),parentMappings:R,...ae(e)?{optionColors:Z}:{}})},re=E=>{W||ae(e)&&tt(E)||(z.current=!1,L({original:E,draft:E}))},F=()=>{z.current=!0,L(null)},Y=()=>{if(z.current){z.current=!1;return}if(!M)return;const{original:E,draft:Z}=M,R=Z.trim();if(L(null),!R||R===E)return;if((e.options||[]).some(de=>de!==E&&(de===R||ae(e)&&String(de).trim().toLowerCase()===R.toLowerCase()))){m?.(`${R} already exists in options`);return}const D=(e.options||[]).map(de=>de===E?R:de),ne={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(ne,E)&&(ne[R]=ne[E],delete ne[E]);const ie={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(ie,E)&&(ie[R]=ie[E],delete ie[E]),T({options:ae(e)?Dt(D):D,parentMappings:ne,optionColors:ie})};return s.jsxs("article",{ref:g,className:`ca-form-card${l?" ca-form-card--selected":""}${i?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:E=>{I||(E.preventDefault(),E.dataTransfer.dropEffect="move")},onDrop:E=>{if(I){f?.();return}E.preventDefault();const Z=E.dataTransfer.getData("text/plain");u?.(Z,e.id),f?.()},children:[s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--order",children:[I?s.jsx("span",{"aria-hidden":"true",style:{display:"inline-block",width:15,height:15}}):s.jsx("span",{className:"ca-form-card__drag",draggable:!0,"aria-label":"Reorder field",onClick:E=>E.stopPropagation(),onDragStart:E=>{E.dataTransfer.setData("text/plain",String(e.id)),E.dataTransfer.effectAllowed="move",d?.()},onDragEnd:()=>f?.(),children:s.jsx(wi,{size:15,color:"currentColor"})}),s.jsxs("div",{className:"ca-form-card__actions",children:[s.jsx("button",{type:"button",className:"ca-form-card__save","aria-label":"Save form field",disabled:C||V||!k,onClick:async E=>{if(E.stopPropagation(),C||V||!k)return;const Z=await b?.(e);Z&&ee({id:e.id,signature:Ci(Z)})},children:"Save"}),Ue(e)?null:s.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:E=>{E.stopPropagation(),w?.(e.id)},children:s.jsx(er,{size:15,color:"currentColor"})})]})]}),s.jsx("div",{className:"ca-form-card__row",children:O?s.jsx("span",{className:"ca-form-card__static",children:G(e)||"—"}):s.jsx(Ot,{value:V?G(e):e.fieldLabel,placeholder:"Enter field label",disabled:O,className:P,onChange:E=>T({fieldLabel:E.target.value})})}),s.jsx("div",{className:"ca-form-card__row",children:O?s.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):s.jsx(Ke,{value:e.fieldType,options:$a(n,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:O,className:P,onChange:E=>{const Z=E.target.value;if(Jl({...e,fieldType:Z})){T({fieldType:Z,dependsOn:"",parentMappings:{}});return}T({fieldType:Z,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),s.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:s.jsx(Rn,{checked:!!e.required,disabled:O,onChange:E=>T({required:E}),"aria-label":"Required"})}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.fieldAccess,options:$a(r,e.fieldAccess),placeholder:"Select access",disabled:O,allowClear:!0,onChange:E=>T({fieldAccess:E.target.value})})}),s.jsxs("div",{className:"ca-form-card__row",children:[s.jsx(Ke,{value:"",options:a.filter(E=>!e.hideFor?.includes(E)),placeholder:"Select level",disabled:O,onChange:E=>T({hideFor:[...e.hideFor||[],E.target.value]})}),e.hideFor?.length?s.jsx("div",{className:"ca-form-card__chips",children:e.hideFor.map(E=>s.jsxs("span",{className:"ca-form-card__chip",children:[E,s.jsx("button",{type:"button","aria-label":`Remove ${E}`,disabled:O,onClick:()=>T({hideFor:e.hideFor.filter(Z=>Z!==E)}),children:"×"})]},E))}):null]}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.dependsOn,options:$a(t,e.dependsOn).map(E=>({value:E,label:Q(E)})),placeholder:"Select field label",disabled:O||!j,allowClear:!0,onChange:E=>{const Z=E.target.value;if(!Z){T({dependsOn:"",parentMappings:{}});return}T({dependsOn:Z})}})}),s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--options",children:[s.jsxs("div",{className:"ca-form-card__option-entry",children:[s.jsx(Ot,{value:_,placeholder:"Enter option",disabled:W,className:v?"ca-control--invalid":"",onChange:E=>A(E.target.value),onKeyDown:E=>{E.key==="Enter"&&(E.preventDefault(),$())}}),s.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:W,onClick:$,children:"+"})]}),s.jsx("div",{className:"ca-form-card__chips",children:(j?ae(e)?Dt(e.options||[]):e.options||[]:[]).map(E=>{const Z=ae(e)&&tt(E),R=M?.original===E;return s.jsxs("span",{className:`ca-form-card__chip${Z?" ca-form-card__chip--locked":""}`,children:[R?s.jsx("input",{autoFocus:!0,value:M.draft,onChange:se=>L({original:E,draft:se.target.value}),onBlur:Y,onClick:se=>se.stopPropagation(),onKeyDown:se=>{se.key==="Enter"?(se.preventDefault(),Y()):se.key==="Escape"&&(se.preventDefault(),F())},"aria-label":`Edit ${E}`,style:{width:`${Math.max(M.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):s.jsx("span",{role:Z||W?void 0:"button",tabIndex:Z||W?void 0:0,title:Z||W?void 0:"Click to edit",style:Z||W?void 0:{cursor:"text"},onClick:()=>re(E),onKeyDown:se=>{se.key==="Enter"&&re(E)},children:ae(e)?or(E):E}),Z?null:s.jsx("button",{type:"button","aria-label":`Remove ${E}`,disabled:W,onClick:()=>J(E),children:"×"})]},E)})})]})]})}function ja({option:e,onDelete:t,locked:n=!1}){return s.jsx("td",{children:n?null:s.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:s.jsx(om,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function Vm(e){const t=String(e||"").trim();return/^#[0-9A-Fa-f]{6}$/.test(t)?t.toUpperCase():/^#[0-9A-Fa-f]{3}$/.test(t)?`#${t[1]}${t[1]}${t[2]}${t[2]}${t[3]}${t[3]}`.toUpperCase():"#000000"}function qm({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,{fieldLabel:a}=Je(),o=A=>ae(r)?or(A):A,l=ae(r)?r:null,i=y.useMemo(()=>{const A=String(r?.dependsOn||"").trim();if(!A)return null;const M=e.filter(L=>String(L.fieldLabel||"").trim()===A);return M.find(L=>(L.options||[]).some(z=>String(z||"").trim()))||M[0]||null},[r?.dependsOn,e]),c=i?.options||[],d=!!r?.dependsOn,[f,u]=y.useState(!1),p=(A,M)=>{if(!l)return;const L=/^#[0-9A-Fa-f]{6}$/.test(M)?M.toUpperCase():M;n?.(e.map(z=>z.id===l.id?{...z,optionColors:{...z.optionColors,[A]:L}}:z))},w=(A,M)=>{r&&n?.(e.map(L=>L.id===r.id?{...L,parentMappings:{...L.parentMappings||{},[A]:M}}:L))},b=A=>{if(!r||ae(r)&&tt(A))return;const M={...r.optionColors||{}};delete M[A];const L={...r.parentMappings||{}};delete L[A],n?.(e.map(z=>z.id===r.id?{...z,options:(z.options||[]).filter(Q=>Q!==A),parentMappings:L,...ae(z)?{optionColors:M}:{}}:z))},g=r&&a(r)||"Select field",m=ym(r,d),h=ae(r)?Dt(r?.options||[]):r?.options||[],v=(A,M)=>s.jsx("div",{className:"field-options-panel__table-wrap",children:s.jsxs("table",{className:"field-options-panel__table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[A.map(L=>s.jsx("th",{scope:"col",children:L},L)),s.jsx("th",{scope:"col","aria-label":"Delete"})]})}),s.jsx("tbody",{children:M})]})});let _=s.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return d?_=h.length?v(["Option label",i?a(i):"Parent"],h.map(A=>s.jsxs("tr",{children:[s.jsx("td",{children:o(A)}),s.jsx("td",{children:s.jsxs("select",{"aria-label":`Parent for ${A}`,value:r.parentMappings?.[A]||"",disabled:!c.length,onChange:M=>w(A,M.target.value),children:[s.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),c.map(M=>s.jsx("option",{value:M,children:M},M))]})}),s.jsx(ja,{option:A,onDelete:b,locked:ae(r)&&tt(A)})]},A))):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):l?_=h.length?v([ae(l)?"Status":"Option","Colors"],h.map(A=>{const M=Vm(l.optionColors?.[A]);return s.jsxs("tr",{children:[s.jsx("td",{children:o(A)}),s.jsx("td",{children:s.jsxs("div",{className:"field-options-panel__color",children:[s.jsx("input",{className:"field-options-panel__hex","aria-label":`Color for ${A}`,value:l.optionColors?.[A]||M,onChange:L=>p(A,L.target.value)}),s.jsx("label",{className:"field-options-panel__swatch",style:{background:M},title:M,children:s.jsx("input",{type:"color","aria-label":`Pick color for ${A}`,value:M,onChange:L=>p(A,L.target.value)})})]})}),s.jsx(ja,{option:A,onDelete:b,locked:ae(l)&&tt(A)})]},A)})):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):h.length&&(_=v([gm(r)],h.map(A=>s.jsxs("tr",{children:[s.jsx("td",{children:o(A)}),s.jsx(ja,{option:A,onDelete:b,locked:ae(r)&&tt(A)})]},A)))),s.jsxs("aside",{className:`field-options-panel${f?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${g}`,children:[s.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":f,"aria-controls":"field-options-panel-body",onClick:()=>u(A=>!A),children:[s.jsxs("span",{className:"field-options-panel__summary-text",children:[s.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",g]}),m?s.jsx("span",{className:"field-options-panel__description",children:m}):null]}),s.jsx(hn,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:_})]})}function Wm(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||ae(a))return;const o=String(a.fieldLabel||a.label||"").trim();if(!o)return;const l=o.toLowerCase();n.has(l)||!(a?.options||[]).some(c=>String(c||"").trim())||(n.add(l),r.push(o))}),r}const zm=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function Hm(e,t){return{...e,id:e.id??`${Date.now()}-${t}`,order:t+1,fieldLabel:e.fieldLabel??e.name??"",fieldType:e.fieldType??e.typeLabel??"Custom",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:e.hideFor??[],dependsOn:e.dependsOn??"",options:e.options??[],parentMappings:e.parentMappings??{},optionColors:e.optionColors??{},lockMode:e.lockMode,isNew:!!e.isNew}}function Ut(e=[]){const t=e.map(Hm);return t.map(n=>cr(n,t))}function Ni({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:o=[],onSave:l,onDelete:i}){const[c,d]=y.useState(()=>Ut(e??[])),[f,u]=y.useState(null),[p,w]=y.useState(null),[b,g]=y.useState(""),m=y.useRef(""),h=y.useRef(null),v=y.useRef({}),_=O=>{const j=Ut(O);d(j),t?.(j)},A=(e??[]).map(O=>O.id).join(",");y.useEffect(()=>{if(!b)return;const O=window.setTimeout(()=>g(""),3200);return()=>window.clearTimeout(O)},[b]),y.useEffect(()=>{!A||A===m.current||(m.current=A,d(Ut(e)))},[A,e]),y.useEffect(()=>{if(n)return n.current=O=>{O&&d(j=>{const W=j.find(C=>lr(O,[C]));if(ir(j)||W)return W&&u(W.id),j;if(xt(j))return j;const N=Ut([...j,{...O,id:`${O.id}-${Date.now()}`,isNew:!0}]),k=N[N.length-1];return u(k.id),t?.(N),N})},()=>{n.current=null}},[n,t]),y.useEffect(()=>{if(f==null)return;const O=h.current,j=v.current[f];if(!O||!j)return;const W=requestAnimationFrame(()=>{const N=O.getBoundingClientRect(),k=j.getBoundingClientRect(),C=12;k.left>=N.left+C&&k.right<=N.right-C||O.scrollTo({left:O.scrollLeft+k.left-N.left-(N.width-k.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(W)},[f,c]);const M=(O,j)=>{if(O==null||j==null||String(O)===String(j))return;const W=c.findIndex(T=>String(T.id)===String(O)),N=c.findIndex(T=>String(T.id)===String(j));if(W<0||N<0||Ue(c[W])||Ue(c[N]))return;const k=c.findIndex(Ue),C=[...c],[P]=C.splice(W,1);if(C.splice(N,0,P),k>=0){const T=C.findIndex(Ue);if(T!==k){const[$]=C.splice(T,1);C.splice(k,0,$)}}_(C.map((T,$)=>({...T,order:$+1})))},L=O=>{const j=c.find(J=>J.id===O.id),W=j&&j.fieldType!==O.fieldType;O.dependsOn&&O.dependsOn!==j?.dependsOn&&u(O.id);const N=String(j?.fieldLabel||"").trim(),k=j?.options||[],C=O.options||[],P=k.filter(J=>!C.includes(J)),T=C.filter(J=>!k.includes(J)),$=k.length===C.length&&P.length===1&&T.length===1?{from:P[0],to:T[0]}:null;_(c.map(J=>{if(J.id===O.id)return O;if(W&&N&&String(J.dependsOn||"").trim()===N)return{...J,dependsOn:"",parentMappings:{}};if($&&N&&String(J.dependsOn||"").trim()===N){const re=Object.fromEntries(Object.entries(J.parentMappings||{}).map(([F,Y])=>[F,Y===$.from?$.to:Y]));return{...J,parentMappings:re}}return J}))},z=async O=>{const j=c.find(W=>W.id===O);if(!(!j||Ue(j)))try{if(await i?.(j)===!1)return;const N=String(j.fieldLabel||"").trim();_(c.filter(k=>k.id!==O).map((k,C)=>N&&String(k.dependsOn||"").trim()===N?{...k,dependsOn:"",parentMappings:{},order:C+1}:{...k,order:C+1}))}catch{}},Q=()=>{ir(c)||xt(c)||_(Ut([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},G=async O=>{if(lr(O,c))return null;try{const j=await l?.(O);return j?(d(W=>{const N=Ut(W.map(k=>k.id===O.id?{...j,isNew:!1,order:k.order||1}:k));return t?.(N),N}),j):null}catch{return null}},q=ir(c),K=xt(c),ee=q?"A field with this label and type already exists":"",V=Yl(c),I=c.find(O=>O.id===f)||null;return s.jsxs(s.Fragment,{children:[ee||V||b?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:ee||V||b}):null,s.jsxs("div",{className:"ca-form-card-grid__container ",children:[s.jsxs("div",{className:"ca-form-card-grid",children:[s.jsx("div",{className:"ca-form-card-grid__labels",children:zm.map(O=>s.jsx("div",{className:"ca-form-card-grid__label",children:O},O))}),s.jsxs("div",{className:"ca-form-card-grid__cards",ref:h,children:[c.map(O=>s.jsx(Ai,{field:O,fieldOptions:Wm(O,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:o,selected:I?.id===O.id,isDragging:String(p)===String(O.id),cardRef:j=>{j?v.current[O.id]=j:delete v.current[O.id]},onSelect:()=>u(O.id),onDragStartField:()=>w(O.id),onDragEndField:()=>w(null),onReorder:M,onChange:L,onDelete:z,onSave:G,onOptionNotice:g,hasDuplicateIdentity:lr(O,c),hasMissingOptions:Aa(O)},O.id)),s.jsx(bi,{onAdd:Q,disabled:q||K})]})]}),s.jsx(qm,{formFields:c,selectedField:I,onChange:_})]})]})}const _i={department:ql,priorities:rm,status:rr,statuses:rr,statusCustom:rr,Status:rr,storeId:zl,storeIdCustom:zl};function Km({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,o]=y.useState(!1),{fieldLabel:l}=Je();return s.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[s.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>o(i=>!i),children:[s.jsxs("span",{className:"custom-field-table__summary-text",children:[s.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),s.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),s.jsx(hn,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(i=>{const c=l(i),d=_i[i.fieldKey]||_i[i.id]||ql;return s.jsxs("div",{className:"custom-field-table__row",children:[s.jsx(d,{className:"custom-field-table__field-icon",size:14,strokeWidth:1.5,"aria-hidden":"true"}),s.jsx("span",{className:"custom-field-table__label",children:c}),s.jsx("button",{className:"custom-field-table__add",type:"button","aria-label":`Add ${c}`,title:n?r:`Add ${c}`,disabled:n,onClick:()=>{n||t?.(i)},children:s.jsx(Wl,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},i.fieldKey??i.id)})}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const Ei={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},Li={BOTH:"Both",USER:"User",ADMIN:"Admin"},Jm={...Object.fromEntries(Object.entries(Ei).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},Ym={...Object.fromEntries(Object.entries(Li).map(([e,t])=>[t,e])),Both:"BOTH",User:"USER",Admin:"ADMIN"};function Bt(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Gm(e,t){const n=Bt(e),r=Bt(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function pr(e,t){return ae({...e,fieldLabel:t})?Bt(t)||"status":et({...e,fieldLabel:t})?"storeIdCustom":Gm(t,e.fieldType)}function Sn(e){const t=e?.data??e?.id??e;if(t==null||t==="")return null;const n=String(t).trim();return!n||n==="null"||n==="undefined"?null:n}function Xm(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function Va(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function Zm(e=[]){const t=ae(e)?Dt(e.options||[]):e.options||[];if(!t.length)return null;const n=e.parentMappings||{},r=e.optionColors||{},a=!!e.dependsOn||t.some(o=>n[o]);return ae(e)?{values:t.map((o,l)=>{const i={name:o,displayOrder:l+1,isActive:!0,isDefault:pm(o)};return r[o]&&(i.color=r[o]),i})}:a?{values:t.map(o=>{const l={label:o};return n[o]&&(l.dependsOnValue=n[o]),l})}:{values:t}}function Qm(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),o=t.find(w=>String(w.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),l=pr(e,r)||(a?e.fieldKey:""),i=o?pr(o,o.fieldLabel)||o.fieldKey:"",c=tg(e,n),d=Zm(e),f=Jm[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),u=Ym[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:r,fieldKey:l,fieldType:f,required:!!e.required,displayOrder:Number(e.order)||1,fieldAccess:u,isActive:e.isActive!==!1};return c!=null&&c!==""&&(p.hideForWorkflowStepId=c),d?.values?.length&&(p.options=d),i&&i!==l&&(p.dependsOnFieldKey=i),p}function Ti(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}function Ii(e,t){return Ti(e)!==Ti(t)}function Rm(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,o)=>Qm({...a,order:a.order||o+1},t,n))}}function eg(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function hr(e){return e==null?null:typeof e=="string"?e:e.levelNo!=null&&e.levelNo!==""?`Level ${e.levelNo}`:e.name??e.label??e.title??null}function Fi(e,t=[]){if(!e)return null;const n=hr(e);if(n)return n;const r=typeof e=="object"?e.id??e.workflowStepId:null;if(r==null)return null;const a=t.find(o=>String(o.id)===String(r));return hr(a)}function tg(e,t=[]){const n=Array.isArray(e.hideFor)?e.hideFor:[];if(!n.length)return null;for(const o of n){const l=t.find(i=>hr(i)===o||String(i.id)===String(o));if(l?.id!=null)return l.id}const r=e.hideForWorkflowStepId;return r==null||r===""?null:t.some(o=>String(o.id)===String(r))?r:null}function ki(e){return[...new Set(e.filter(Boolean))]}function mr(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function ng(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function rg(e,t=[]){if(!e)return"";const n=t.map(mr).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Bt(o)===e||Bt(o)===Bt(e))||e}function ag(e){return e&&typeof e=="object"&&e.color?e.color:""}function it(e=[],t=[]){const n=[...e].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0));return Mt(n.map(r=>{const a=r?.options?.values??[],o=n.find(i=>i.id===r.dependsOnFieldId||r.dependsOnFieldKey&&i.fieldKey===r.dependsOnFieldKey),l=t.find(i=>String(i.id)===String(r.hideForWorkflowStepId));return{id:r.id,order:r.displayOrder,fieldLabel:r.fieldName??r.fieldLabel??"",fieldType:Na(r.fieldType,Ei,r.fieldKey),required:!!r.required,fieldAccess:Li[r.fieldAccess]??r.fieldAccess??"",hideFor:ki([...Array.isArray(r.hideFor)?r.hideFor:[],Fi(r.hideForWorkflowStep,t),Fi(l,t)]),dependsOn:r.dependsOnField?.fieldName??o?.fieldName??r.dependsOn??"",options:a.map(mr).filter(Boolean),parentMappings:Object.fromEntries(a.map(i=>{const c=mr(i),d=ng(i);return!c||!d?null:[c,rg(d,o?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(i=>[mr(i),ag(i)]).filter(([i,c])=>i&&c)),fieldKey:r.fieldKey,originalFieldName:r.fieldName??r.fieldLabel??"",dependsOnFieldId:r.dependsOnFieldId??null,hideForWorkflowStepId:r.hideForWorkflowStepId??null,isActive:r.isActive!==!1,label:r.fieldName??r.fieldLabel??""}}))}function sg({stepMeta:e,stepperProps:t}){const n=X.useDispatch(),{systemId:r}=mt(),a=X.useSelector(T=>T.appDetails?.id),o=Sn(a)??Sn(r),{state:l,update:i}=dr(),{formFields:c,prefillFormFields:d=[]}=l,f=y.useRef(null),u=y.useCallback(T=>i({formFields:T}),[i]),p=y.useCallback(async T=>{const $=String(T.fieldLabel||"").trim();return $?{...T,fieldLabel:$,fieldKey:pr(T,$),originalFieldName:$,isNew:!1}:null},[]),w=y.useCallback(async T=>Ue(T)?!1:(Va(T)&&await n(rn({complaintTypeId:o,fieldId:T.id})).unwrap(),!0),[o,n]),b=X.useSelector(T=>T.complaintAppComplaint?.formFields?.data),g=X.useSelector(T=>T.complaintAppComplaint?.formFields?.isLoading),m=X.useSelector(T=>T.complaintAppComplaint?.formFields?.error),h=X.useSelector(T=>T.workflow?.workflowSteps),v=y.useMemo(()=>eg(h),[h]),_=y.useRef(v),[A,M]=y.useState(!1);y.useEffect(()=>{_.current=v},[v]),y.useEffect(()=>{const T=Sn(o);T!=null&&n(We(T))},[o,n]),y.useEffect(()=>{const T=Sn(o);if(T==null)return;let $=!1;return n(xe(T)).unwrap().then(J=>{if($)return;const re=Array.isArray(J)?J:J?.data;if(!(Array.isArray(re)&&re.length>0)&&d.length){const Y=it(d,_.current).map((E,Z)=>({...E,id:`prefill-${Z}`,isNew:!1}));i({formFields:Mt(Y)})}else{const Y=Mt(it(Array.isArray(re)?re:[],_.current));i({formFields:Y})}M(!0)}).catch(()=>{if(!$){if(d.length){const J=it(d,_.current).map((re,F)=>({...re,id:`prefill-${F}`,isNew:!1}));i({formFields:Mt(J)})}M(!0)}}),()=>{$=!0}},[o,n,d,i]);const L=y.useMemo(()=>Mt(it(b,v)),[b,v]),Q=Sn(o)==null||A,G=Q?c:L,q=y.useMemo(()=>um.filter(T=>!G.some($=>T.fieldKey&&$.fieldKey===T.fieldKey||ae(T)&&ae($)||sr(T)&&sr($)||et(T)&&et($))),[G]),K=y.useMemo(()=>ir(G),[G]),ee=y.useMemo(()=>xt(G),[G]),V=Xm(m),I=im,O=cm,j=y.useMemo(()=>{const T=[...v].sort((J,re)=>(J.levelNo??0)-(re.levelNo??0)).map(J=>hr(J)).filter(Boolean),$=L.flatMap(J=>J.hideFor);return ki([...T,...$])},[L,v]),W=y.useMemo(()=>{const T=new Map(it(b,v).map($=>[Number($.id),$]));return G.filter($=>{if($.isNew&&String($.fieldLabel||"").trim())return!0;if(!Va($))return!1;const J=T.get(Number($.id));return!J||Ii($,J)})},[b,G,v]),[N,k]=y.useState(!1),C=y.useCallback(async T=>{if(!xt(G)&&o)try{const J=G.map(R=>{if(!T||!R.isNew)return R;const se=String(R.fieldLabel||"").trim();return se?{...R,fieldLabel:se,fieldKey:pr(R,se),originalFieldName:se,isNew:!1}:R}).filter(R=>!R.isNew&&String(R.fieldLabel||"").trim()),re=new Map(it(b,v).map(R=>[Number(R.id),R]));if(!J.some(R=>{if(!Va(R))return!0;const se=re.get(Number(R.id));return!se||Ii(R,se)})){t.onNext?.();return}const Y=[...J].sort((R,se)=>+!!R.dependsOn-+!!se.dependsOn);await n(nn({complaintTypeId:o,data:Rm(Y,Y,v)})).unwrap();const E=await n(xe(o)).unwrap(),Z=Array.isArray(E)?E:E?.data;i({formFields:Mt(it(Array.isArray(Z)?Z:[],v))}),t.onNext?.()}catch{}},[b,o,n,G,t,i,v]),P=y.useCallback(()=>{if(!xt(G)){if(W.length){k(!0);return}C(!1)}},[G,W.length,C]);return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:Be,onNext:P}),N?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[s.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:()=>{k(!1),C(!1)},children:"OK"}),s.jsx(ye,{onClick:()=>{k(!1),C(!0)},children:"Save"})]})]})}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!Q||g?s.jsx(ze,{text:"Loading form fields"}):V&&!G.length?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:V}):s.jsxs("div",{className:"ca-form-fields",children:[V?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:V}):null,s.jsx(Km,{fields:q,disableAdd:K||ee,disableAddHint:K?"Resolve duplicate field first":ee?Yl(G):void 0,onAddField:T=>f.current?.({...T})}),s.jsx("div",{className:"ca-settings-card__divider"}),s.jsx(Ni,{initialFields:G,addExternalFieldRef:f,onChange:u,fieldTypeOptions:I,fieldAccessOptions:O,hideForOptions:j,onSave:p,onDelete:w})]})})]})}function Oi({label:e="Active",checked:t,onChange:n,disabled:r=!1,className:a=""}){return s.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[s.jsx(dl,{children:e}),s.jsx(Rn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function Di({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=Je();return s.jsxs("select",{...r,className:"review-control",value:t??"",onChange:o=>n(o.target.value),children:[s.jsx("option",{value:"",children:a("Select Store")}),e.map(o=>s.jsx("option",{value:o.id,children:o.name??o.label??String(o.id)},o.id))]})}const og=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function qa(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function lg(e){return e?e.type&&e.type.startsWith("image/")?!0:og.test(e.name||""):!1}function ig(e){return`${e.name}-${e.size}-${e.lastModified}`}function gr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:o=!1,disabled:l=!1,accept:i}){const c=qa(n,a),d=y.useMemo(()=>qa(n,a).map((f,u)=>{const p=lg(f);return{key:`${ig(f)}-${u}`,name:f.name,isImage:p,url:p?URL.createObjectURL(f):""}}),[n,a]);return y.useEffect(()=>()=>{d.forEach(f=>{f.url&&URL.revokeObjectURL(f.url)})},[d]),s.jsxs("div",{className:"review-file-field",children:[s.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:i,multiple:a,required:!!o&&c.length===0,disabled:l,onChange:f=>{const u=Array.from(f.target.files||[]);if(!a){r(u[0]||"");return}const p=qa(n,!0);r([...p,...u]),f.target.value=""}}),d.length?s.jsx("div",{className:"review-file-preview",children:s.jsx("div",{className:"review-file-preview__images",children:d.map((f,u)=>s.jsxs("div",{className:"review-file-preview__item",children:[f.isImage?s.jsx("img",{className:"review-file-preview__thumb",src:f.url,alt:f.name,title:f.name}):s.jsx("span",{className:"review-file-preview__name",children:f.name}),s.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${f.name}`,onClick:()=>{r(a?c.filter((p,w)=>w!==u):"")},children:"×"})]},f.key))})}):null]})}const cg=new Set(["select","radio","checkbox"]);function xi(e){return String(e||"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"")}function ct(e){return String(e.label||e.fieldLabel||e.fieldName||e.name||"").trim()}function Wa(e){return`review-${e.id??e.fieldKey??(xi(ct(e))||"field")}`}function Mi(e,t,n){return n===0?e:`${e}-${xi(t)||n}`}function za(e){const t=String(e.fieldType||"").toLowerCase(),n=String(e.fieldKey||ct(e)||"").toLowerCase();return t==="file"?"file":t==="images"?"images":t==="email"||n.includes("email")?"email":t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":(t==="dropdown"||t==="select"||t==="custom")&&e.options?.length?"select":"text"}function Pi(e){return cg.has(e)}function dg(e){return e==="textarea"||e==="radio"||e==="checkbox"}function ug(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function Ui(e){return String(e||"").replace(/\d/g,"")}function Bi(e){return String(e||"").replace(/[^\d]/g,"")}function vn(e,t){const n=String(ct(e)||"value").toLowerCase();return t==="date"?"mm/dd/yyyy":t==="select"?`Select ${n}`:t==="email"?"Enter email":`Enter ${n}`}function wn(e){return String(e.fieldKey||e.id||ct(e)||Wa(e))}function $i(e,t=[]){const n=String(e.dependsOn||"").trim();return n&&t.find(r=>{const a=ct(r),o=String(r.fieldKey||"");return a===n||o===n})||null}function ji(e,t=[],n={}){const r=e.options||[],a=$i(e,t);if(!a)return r;const o=e.parentMappings||{};if(!r.some(c=>!!o[c]))return r;const i=String(n[wn(a)]||"").trim();return i?r.filter(c=>String(o[c]||"")===i):r}function Vi(e){return e==="checkbox"||e==="images"?[]:""}function fg({question:e,options:t,value:n,onChange:r,storeList:a}){const o=Wa(e),l=za(e),i=n??Vi(l),c={id:o,name:String(e.fieldKey||ct(e)||o),required:!!e.required};if(et(e)&&Array.isArray(a))return s.jsx(Di,{...c,storeList:a,value:i,onChange:r});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:t.map((d,f)=>{const u=Mi(o,d,f);return s.jsxs("label",{className:"review-option",htmlFor:u,children:[s.jsx("input",{...c,id:u,type:"radio",value:d,checked:i===d,onChange:p=>r(p.target.value)}),s.jsx("span",{children:d})]},d)})});if(l==="checkbox"){const d=Array.isArray(i)?i:[];return s.jsx("div",{className:"review-options review-options--inline",children:t.map((f,u)=>{const p=Mi(o,f,u);return s.jsxs("label",{className:"review-option",htmlFor:p,children:[s.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:f,checked:d.includes(f),required:!1,onChange:w=>r(w.target.checked?[...d,f]:d.filter(b=>b!==f))}),s.jsx("span",{children:f})]},f)})})}return l==="textarea"?s.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)}):l==="select"?s.jsxs("select",{...c,className:"review-control",value:i,onChange:d=>r(d.target.value),children:[s.jsx("option",{value:"",children:vn(e,l)}),t.map(d=>s.jsx("option",{value:d,children:d},d))]}):l==="file"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="images"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="number"?s.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:vn(e,l),value:i,onChange:d=>r(Bi(d.target.value)),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault(),d.key.length===1&&!/\d/.test(d.key)&&!d.ctrlKey&&!d.metaKey&&d.preventDefault()},onPaste:d=>{const f=d.clipboardData.getData("text");/^\d*$/.test(f)||(d.preventDefault(),r(Bi(f)))}}):ug(e)?s.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:vn(e,l),value:i,onChange:d=>r(Ui(d.target.value)),onKeyDown:d=>{/^\d$/.test(d.key)&&d.preventDefault()},onPaste:d=>{const f=d.clipboardData.getData("text");/\d/.test(f)&&(d.preventDefault(),r(Ui(f)))}}):s.jsx("input",{...c,className:"review-control",type:l,placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)})}function pg({fields:e=[],storeList:t}){const{fieldLabel:n}=Je(),[r,a]=y.useState({}),o=(l,i)=>{const c=wn(l);a(d=>{const f={...d,[c]:i};return e.forEach(u=>{const p=$i(u,e);if(!p||wn(p)!==c)return;const w=za(u);if(!Pi(w))return;const b=ji(u,e,f),g=wn(u),m=f[g];Array.isArray(m)?f[g]=m.filter(h=>b.includes(h)):m&&!b.includes(m)&&(f[g]="")}),f})};return e.length?s.jsx("div",{className:"review-form-card",children:s.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:l=>l.preventDefault(),children:s.jsx("div",{className:"review-form-grid",children:e.map(l=>{const i=za(l),c=Wa(l),d=Pi(i)?ji(l,e,r):[];return s.jsxs("div",{className:`review-question${dg(i)?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:c,children:[n(l)||"Untitled field",l.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(fg,{storeList:t,question:l,options:d,value:r[wn(l)]??Vi(i),onChange:f=>o(l,f)})]},l.id??l.fieldKey??ct(l))})})})}):s.jsx("p",{className:"review-empty",children:"No form fields added"})}const hg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},mg={BOTH:"Both",USER:"User",ADMIN:"Admin"};function gg(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function yg(e){return[...new Set(e.filter(Boolean))]}function Ha(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ka(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function bg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Sg(e,t=[]){if(!e)return"";const n=t.map(Ha).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Ka(o)===e||Ka(o)===Ka(e))||e}function vg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n?.options?.values??[],a=t.find(o=>o.id===n.dependsOnFieldId||n.dependsOnFieldKey&&o.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:n.fieldName??n.fieldLabel??n.label??"",fieldLabel:n.fieldName??n.fieldLabel??n.label??"",fieldKey:n.fieldKey,fieldType:Na(n.fieldType,hg,n.fieldKey),required:!!n.required,fieldAccess:mg[n.fieldAccess]??n.fieldAccess??"",hideFor:yg([...Array.isArray(n.hideFor)?n.hideFor:[],gg(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(Ha).filter(Boolean),parentMappings:Object.fromEntries(r.map(o=>{const l=Ha(o),i=bg(o);return!l||!i?null:[l,Sg(i,a?.options?.values??[])]}).filter(Boolean))}})}function wg({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=X.useDispatch(),o=X.useSelector(L=>L.appDetails?.id),l=X.useSelector(L=>L.complaintAppComplaint.formFields.data),i=X.useSelector(L=>L.complaintAppComplaint.formFields.isLoading),c=X.useSelector(L=>L.complaintAppComplaint.formFields.error),d=X.useSelector(L=>L.createComplaint?.isActive),f=X.useSelector(L=>L.createComplaint?.activeComplaintTypeId),u=X.useSelector(L=>L.createComplaint?.isUpdatingActive),p=X.useSelector(L=>L.createComplaint?.activeError),w=X.useSelector(L=>L.complaintType?.selected),b=X.useSelector(L=>L.complaintType?.complaintList??[]),g=X.useSelector(L=>L.appDetails?.details?.currentUser),m=y.useMemo(()=>vg(l),[l]),h=y.useMemo(()=>o==null?null:w&&String(w.id??w._id)===String(o)?w:b.find(L=>String(L?.id??L?._id)===String(o))??null,[b,o,w]),v=h!=null&&(h.isActive!=null||h.active!=null)?!!(h.isActive??h.active):null,_=String(f)===String(o)?!!d:v??!0,A=ep(h,g);y.useEffect(()=>{o&&a(xe(o))},[o,a]);const M=L=>{!o||u||!A||a(dn({id:o,isActive:L}))};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:Be,showSaveButton:!1,nextLabel:"Publish",extraActions:s.jsx(Oi,{label:"Active",checked:_,disabled:!o||u||!A,onChange:M}),onNext:()=>{e?.(),n.onNext?.()}}),p?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:s.jsx("div",{className:"ca-review",children:s.jsx("section",{className:"ca-review__block ca-review__block--last",children:i?s.jsx(ze,{text:"Loading form fields"}):c&&!m.length?s.jsx("p",{className:"ca-body",children:c}):s.jsx(pg,{fields:m,storeList:r})})})})]})}function Cg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>Be.length?Be.length:Math.floor(t)}function Ag(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function qi({title:e="Complaint Management Settings",onPublish:t,onStepChange:n,onSaveDraft:r,roleList:a=[],userList:o=[],storeList:l,showSaveButton:i=!0,showNextButton:c=!0}){const d=Pe(),f=X.useDispatch(),{systemId:u}=mt(),[p,w]=Ts(),b=Cg(p.get("step")||1),g=Ag(p.get("substep")||1),m=!!u&&u!=="new",[h,v]=y.useState(!1);y.useEffect(()=>{if(!m)return;let q=!1;const K=ee=>{const V=ee?.data??ee;return Array.isArray(V)?V:Array.isArray(V?.data)?V.data:[]};return Promise.all([f(We(u)).unwrap(),f(xe(u)).unwrap()]).then(([ee,V])=>{q||v(K(ee).length>0&&K(V).length>0)}).catch(()=>{q||v(!1)}),()=>{q=!0}},[f,m,u]);const _=m&&h;y.useEffect(()=>{u&&f(lt(u)),f(Nt({data:m}))},[f,m,u]),y.useEffect(()=>{if(!p.get("step")){const q=new URLSearchParams(p);q.set("step","1"),w(q,{replace:!0})}},[p,w]);const A=y.useMemo(()=>Be.find(q=>q.id===b)||Be[0],[b]),M=y.useCallback((q,K)=>{const ee=new URLSearchParams(p);ee.set("step",String(q)),q===4?ee.set("substep",String(K??(q===b?g:1))):ee.delete("substep"),w(ee,{replace:!1}),n?.({systemId:u,step:q,substep:K})},[p,w,n,u,b,g]),L=()=>{if(b<Be.length){M(b+1,1);return}d("/")},z=q=>{M(4,q)},Q=()=>{t?.({systemId:u,step:b})},G={currentStep:b,allStepsUnlocked:_,onStepClick:q=>M(q,q===4?1:void 0),showSaveButton:i,showNextButton:c,onSaveDraft:()=>r?.({systemId:u,step:b}),onNext:L,className:"ca-settings-page__stepper"};return s.jsx(Rl,{children:s.jsxs("div",{className:"ca-settings-page",children:[s.jsxs("div",{className:"ca-settings-page__header",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx(fa,{children:e})]}),b===1?s.jsx(Fm,{stepMeta:A,stepperProps:G,roleList:a,userList:o}):null,b===2?s.jsx($m,{onNext:L,stepMeta:A,roleList:a,userList:o,substep:g,onSubstepChange:z,stepperProps:G}):null,b===3?s.jsx(sg,{stepMeta:A,stepperProps:G}):null,b===4?s.jsx(wg,{storeList:l,onPublish:Q,stepMeta:A,stepperProps:G}):null]})},u||"new")}function Ng(){const e=Pe(),n=X.useSelector(c=>c.status?.complaintSummary??null)?.totalComplaints??0,r=X.useSelector(c=>c.appDetails?.id),a=X.useSelector(c=>c.complaintType?.selected??null),o=a?.id??a?._id,i=o==null||r==null||String(o)===String(r)?a?.name??a?.complaintTypeName??a?.title??"":"";return s.jsx("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:i||"Complaint Management"})]}),s.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",n??0]})]})})}function Wi({currentPage:e,totalItems:t,itemsPerPage:n,onPageChange:r,onItemsPerPageChange:a,selectOptions:o=["5","10","15","20","25"],totalPages:l,disabled:i=!1}){if(t<=0)return null;const c=(e-1)*n+1,d=Math.min(e*n,t),f=e<=1,u=e>=l;return s.jsxs("div",{className:`ca-custom-pagination${i?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[s.jsxs("label",{className:"ca-custom-pagination__page-size",children:[s.jsx("span",{children:"Results per page:"}),s.jsx("select",{className:"ca-custom-pagination__select",value:String(n),onChange:p=>a?.(Number(p.target.value)),disabled:i,"aria-label":"Results per page",children:o.map(p=>s.jsx("option",{value:p,children:p},p))})]}),s.jsxs("div",{className:"ca-custom-pagination__navigation",children:[s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(1),disabled:i||f,"aria-label":"First page",children:s.jsx(em,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e-1),disabled:i||f,"aria-label":"Previous page",children:s.jsx(Rh,{size:16,"aria-hidden":"true"})}),s.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e+1),disabled:i||u,"aria-label":"Next page",children:s.jsx(nr,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(l),disabled:i||u,"aria-label":"Last page",children:s.jsx(tm,{size:16,"aria-hidden":"true"})})]})]})}function _g({type:e}){return e==="error"?s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M12 7.5v5.5M12 16.2v.1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M8 12.5l2.8 2.8L16.2 9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Eg({id:e,message:t,type:n="success",onDismiss:r}){return y.useEffect(()=>{const a=setTimeout(()=>r(e),3500);return()=>clearTimeout(a)},[e,r]),s.jsxs("div",{className:`ca-toast ca-toast--${n}`,role:"status",children:[s.jsx("span",{className:"ca-toast__icon",children:s.jsx(_g,{type:n})}),s.jsxs("div",{className:"ca-toast__content",children:[s.jsx("div",{className:"ca-toast__title",children:n==="error"?"Error":"Success"}),s.jsx("div",{className:"ca-toast__message",children:t})]}),s.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>r(e),children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Lg({toasts:e=[],onDismiss:t}){if(!e.length)return null;const n=s.jsx("div",{className:"ca-toast-container",children:e.map(r=>s.jsx(Eg,{...r,onDismiss:t},r.id))});return typeof document<"u"?as.createPortal(n,document.body):n}const Tg=[{value:"today",label:"Today"},{value:"yesterday",label:"Yesterday"},{value:"lastWeek",label:"Last Week"},{value:"wtd",label:"WTD"},{value:"mtd",label:"MTD"},{value:"ytd",label:"YTD"},{value:"custom",label:"Custom"}],zi=e=>String(e).padStart(2,"0"),Fe=e=>`${e.getFullYear()}-${zi(e.getMonth()+1)}-${zi(e.getDate())}`,Cn=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function Ig(e,t="",n="",r=new Date){const a=new Date(r.getFullYear(),r.getMonth(),r.getDate()),o=(a.getDay()+6)%7,l=Cn(a,-o);switch(e){case"today":return{fromDate:Fe(a),toDate:Fe(a)};case"yesterday":return{fromDate:Fe(Cn(a,-1)),toDate:Fe(Cn(a,-1))};case"lastWeek":return{fromDate:Fe(Cn(l,-7)),toDate:Fe(Cn(l,-1))};case"wtd":return{fromDate:Fe(l),toDate:Fe(a)};case"mtd":return{fromDate:Fe(new Date(a.getFullYear(),a.getMonth(),1)),toDate:Fe(a)};case"ytd":return{fromDate:Fe(new Date(a.getFullYear(),0,1)),toDate:Fe(a)};case"custom":return t&&n?{fromDate:t,toDate:n}:null;default:return null}}function Fg(e){if(!e?.preset)return{};const t=Ig(e.preset,e.from,e.to);return t?{...t}:{}}const kg=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function Og({initial:e,onApply:t,onReset:n,onClose:r}){const[a,o]=y.useState(e?.field||"updated"),[l,i]=y.useState(e?.preset||""),[c,d]=y.useState(e?.from||""),[f,u]=y.useState(e?.to||""),p=l==="custom"&&(!c||!f||c>f),w=!!l&&!p;return s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:s.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[s.jsxs("div",{className:"ca-date-filter__header",children:[s.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),s.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:r,children:s.jsx(lm,{size:18})})]}),s.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:kg.map(b=>s.jsx("button",{type:"button",className:`ca-date-filter__tab${a===b.value?" ca-date-filter__tab--active":""}`,onClick:()=>o(b.value),children:b.label},b.value))}),s.jsx("div",{className:"ca-date-filter__list",children:Tg.map(b=>s.jsxs("label",{className:`ca-date-filter__option${l===b.value?" ca-date-filter__option--active":""}`,children:[s.jsx("input",{type:"radio",name:"complaint-date-preset",checked:l===b.value,onChange:()=>i(b.value)}),s.jsx("span",{children:b.label})]},b.value))}),l==="custom"?s.jsxs("div",{className:"ca-date-filter__custom",children:[s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),s.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:f||void 0,onChange:b=>d(b.target.value)}),s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),s.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:f,min:c||void 0,onChange:b=>u(b.target.value)})]}):null,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:n,children:"Reset"}),s.jsx(ye,{onClick:()=>t({field:a,preset:l,from:c,to:f}),disabled:!w,children:"Apply"})]})]})})}function Dg({open:e,initial:t,onApply:n,onReset:r,onClose:a}){return e?s.jsx(Og,{initial:t,onApply:n,onReset:r,onClose:a}):null}function Ja({text:e="No data"}){return s.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const xg=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function dt(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(0,n):t}function An(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(n+2):t}const Mg=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function $t(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(Mg).map(r=>r.trim()).filter(Boolean):[n])}function Pg(e){const t=$t(e);return t.length>0&&t.every(n=>typeof n=="string"&&xg.test(n))}function Nn(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||Pg(t)}function Ug(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const o=r[a.key]??"-";Nn(a,o)&&$t(o).forEach(l=>{typeof l=="string"&&n.add(dt(l))})})}),Array.from(n)}const Hi=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function Ya(e,t=7){const n=String(e||""),r=n.lastIndexOf("."),a=r>0?n.slice(0,r):n,o=r>0?n.slice(r):"";return a.length>t?`${a.slice(0,t)}...${o}`:n}function Bg({value:e,urlMap:t={}}){const n=y.useMemo(()=>$t(e),[e]),[r,a]=y.useState(null);if(!n.length)return"-";const o=n.filter(p=>typeof p=="string"&&Hi.test(dt(p))),l=n.filter(p=>typeof p=="string"&&!Hi.test(dt(p))).map(p=>({name:An(p),url:t[dt(p)]})),i=o.map(p=>({name:An(p),url:t[dt(p)]})).filter(p=>p.url),c=i[0],d=()=>a(null),f=()=>a(p=>p>0?p-1:i.length-1),u=()=>a(p=>p<i.length-1?p+1:0);return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?s.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:s.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,l.length?l.map(p=>{const w=String(p.name).split("/").pop();return p.url?s.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",title:w,children:Ya(w)},p.name):s.jsx("span",{className:"ca-complaint-table__attachment-name",title:w,children:Ya(w)},p.name)}):null,!c&&!l.length?n.map(p=>s.jsx("span",{className:"ca-complaint-table__attachment-name",title:An(p),children:Ya(An(p))},String(p))):null,i.length>1?s.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${i.length-1} more images`,children:["+",i.length-1]}):null]}),r!=null&&i.length?s.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[s.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:f,"aria-label":"Previous image",children:"‹"}),s.jsx("img",{className:"ca-complaint-table__preview-image",src:i[r].url,alt:i[r].name}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:u,"aria-label":"Next image",children:"›"}),s.jsxs("span",{className:"ca-complaint-table__preview-count",children:[r+1," / ",i.length]})]}):null]})}function yr(e,t=!1){const n=[];return!t&&e==="description"&&n.push("ca-complaint-table__desc"),e==="actions"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--actions"),n.length?n.join(" "):void 0}function $g(e,t=[]){const n=t.find(a=>String(a.id)===String(e.assignedToUserId));return(n?[n.firstName,n.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||""}function jg({row:e,ctx:t,isOpen:n,onToggle:r}){const a=t.roleUsers??[],o=y.useRef(null),l=y.useRef(null),[i,c]=y.useState(null),d=a.find(h=>String(h.id)===String(e.assignedToUserId)),u=(d?[d.firstName,d.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",p=e.assignedToUserId,w=p!=null&&p!==""&&String(p)===String(t.currentUserId),b=w?"Assign to Me":u||"Assign",g=a.filter(h=>String(h.id)!==String(t.currentUserId)),m=!!e.isClosed||t.canAssign===!1;return y.useLayoutEffect(()=>{if(!n)return;const h=()=>{const v=o.current,_=l.current;if(!v||!_)return;const A=v.getBoundingClientRect(),M=_.getBoundingClientRect(),L=6,z=12,G=A.bottom+L+M.height>window.innerHeight-z&&A.top-L-M.height>=z?A.top-M.height-L:Math.min(A.bottom+L,window.innerHeight-M.height-z),q=Math.max(z,Math.min(A.right-M.width,window.innerWidth-M.width-z));c({top:G,left:q,visibility:"visible"})};return h(),window.addEventListener("resize",h),window.addEventListener("scroll",h,!0),()=>{window.removeEventListener("resize",h),window.removeEventListener("scroll",h,!0)}},[t.assignmentError,t.assignmentLoading,t.assignmentSaving,n,a.length]),s.jsxs("div",{className:"ca-complaint-table__assignment",children:[s.jsxs("button",{ref:o,type:"button",className:"ca-complaint-table__assignment-trigger","data-assignment-trigger":"true",disabled:m,onClick:h=>{h.stopPropagation(),!m&&r(e.id)},"aria-expanded":n&&!m,"aria-label":`Assign complaint ${e.title||e.id}`,children:[s.jsx("span",{className:"ca-complaint-table__assignment-label",children:b}),s.jsx(hn,{size:14,"aria-hidden":"true"})]}),n&&!m&&typeof document<"u"?as.createPortal(s.jsxs("div",{ref:l,className:"ca-complaint-table__assignment-menu","data-assignment-menu":"true",role:"menu",style:i||{visibility:"hidden"},onClick:h=>h.stopPropagation(),children:[s.jsx("button",{type:"button",className:"ca-complaint-table__assignment-self",role:"menuitem",disabled:w||t.assignmentLoading||t.assignmentSaving,onClick:h=>{h.stopPropagation(),r(null),t.onAssign?.(e,t.currentUserId)},children:s.jsx("strong",{children:"Assign to me"})}),t.assignmentLoading?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Loading users…"}):null,t.assignmentSaving?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Saving assignment…"}):null,t.assignmentError?s.jsxs("div",{className:"ca-complaint-table__assignment-error",children:[s.jsx("span",{children:t.assignmentError}),s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),t.onRetryUsers?.(e.roleId)},children:"Retry"})]}):null,g.length>0?s.jsx("div",{className:"ca-complaint-table__assignment-others","aria-hidden":"true",children:"Others"}):null,g.map(h=>{const v=[h.firstName,h.lastName].filter(Boolean).join(" ").trim()||h.email;return s.jsxs("button",{type:"button",role:"menuitem",disabled:String(p)===String(h.id)||t.assignmentLoading||t.assignmentSaving,onClick:_=>{_.stopPropagation(),r(null),t.onAssign?.(e,h.id)},children:[s.jsx("strong",{children:v}),h.email?s.jsx("span",{children:h.email}):null]},h.id)})]}),document.body):null]})}function Ki(e,t,n={},r={}){const a=t[e.key]??"-";if(e.key==="status"||e.key==="escalationTo")return a;if(e.key==="assignedToUserName"){const o=$g(t,n.roleUsers??[]);return o?s.jsx("span",{className:"ca-complaint-table__ellipsis",children:o}):"-"}return e.key==="actions"?s.jsxs("div",{className:"ca-complaint-table__action-cell",children:[s.jsx(jg,{row:t,ctx:n,...r}),s.jsx("button",{type:"button",className:"ca-complaint-table__open-button","aria-label":`Open complaint ${t.title||t.id}`,onClick:o=>{o.stopPropagation(),n.onOpenComplaint?.(t)},children:s.jsx(nr,{size:16,"aria-hidden":"true"})})]}):Nn(e,a)&&$t(a).some(o=>typeof o=="string")?s.jsx(Bg,{value:a,urlMap:n.attachmentUrlMap}):a}function Ji({scrollFields:e,stickyFields:t,tableRows:n,fieldLabel:r,getCellContext:a,onOpenComplaint:o,page:l,itemsPerPage:i}){const[c,d]=y.useState(null);y.useEffect(()=>{if(c==null)return;const u=p=>{p.target.closest?.("[data-assignment-trigger], [data-assignment-menu]")||d(null)};return document.addEventListener("pointerdown",u),()=>document.removeEventListener("pointerdown",u)},[c]);const f=u=>{d(p=>String(p)===String(u)?null:u)};return s.jsxs("div",{className:"ca-complaint-table__scroll",children:[s.jsxs("table",{children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:"#"}),e.map(u=>s.jsx("th",{scope:"col",className:yr(u.key,!0),children:r(u)},u.id)),s.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(u=>s.jsx("th",{scope:"col",className:yr(u.key,!0),children:r(u)},u.id))]})}),s.jsx("tbody",{children:n.map((u,p)=>{const w=a(u);w.onOpenComplaint=o;const b=u.assignedToUserId,g=b==null||b===""?"ca-complaint-table__row--unassigned":String(b)===String(w.currentUserId)?"ca-complaint-table__row--assigned-self":"ca-complaint-table__row--assigned-other";return s.jsxs("tr",{className:`${g}${o?" ca-complaint-table__clickable-row":""}`,role:o?"link":void 0,tabIndex:o?0:void 0,"aria-label":o?`Open complaint ${u.title||u.id}`:void 0,onClick:m=>{m.target.closest("button, a, select, input, textarea")||o?.(u)},onKeyDown:m=>{!o||m.key!=="Enter"&&m.key!==" "||m.target===m.currentTarget&&(m.preventDefault(),o(u))},children:[s.jsx("td",{children:(l-1)*i+p+1}),e.map(m=>s.jsx("td",{className:yr(m.key),children:Ki(m,u,w)},`${u.id??p}-${m.id}`)),s.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(m=>s.jsx("td",{className:yr(m.key),children:Ki(m,u,w,{isOpen:String(c)===String(u.id),onToggle:f})},`${u.id??p}-${m.id}`))]},u.id??p)})})]}),n.length?null:s.jsx("div",{className:"ca-complaint-table__empty-overlay",children:s.jsx(Ja,{text:"No Complaint"})})]})}const Vg={id:"actions",label:"Actions",key:"actions"};function Yi(e,t,n=!0){return e==="mine"?t==null?{}:{assignedToUserId:t}:e==="unassigned"?{unassigned:!0}:n?{showAllComplaints:!0}:{}}async function qg({complaintTypeId:e,status:t,dateParams:n={},sort:r,assignmentParams:a={},escalationTo:o}){const l=await ue.get(ca,{params:{...n,complaintTypeId:e,page:1,limit:Nh,sort:r,...a,...o!=null&&o!==""&&o!=="all"?{escalationTo:o}:{},...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return El(l.data)}function Wg(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Gi(e,t=[],n=[],r=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const o=t.find(l=>String(l.id)===String(a));return!o||!Xi(o,n,r)}function zg(e){return([e?.userAssignments,e?.users,e?.userIds,e?.assignedUsers].find(Array.isArray)??[]).map(n=>Number(n&&typeof n=="object"?n.userId??n.id??n.user?.id:n)).filter(Number.isFinite)}function Xi(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&zg(e).includes(Number(n))}function Hg(){const{fieldLabel:e}=Je(),t=X.useDispatch(),n=Pe(),r=De(),{complaintTypeId:a}=mt(),[o]=Ts(),l=X.useSelector(U=>U.appDetails?.id),i=Ih(a,o.get("complaintTypeId"),l,Th()),{list:c=[],isLoading:d=!1,error:f=null,hasLoaded:u=!1,requestedComplaintTypeId:p=null,meta:w=null}=X.useSelector(U=>U.complaintManagement??{}),b=X.useSelector(U=>U.status?.list??[]),g=X.useSelector(U=>U.changeStatus?.updatingId??null),m=X.useSelector(U=>U.roleUsers??{}),h=X.useSelector(U=>U.workflow?.workflowSteps),v=X.useSelector(U=>U.appDetails?.details?.currentUser),_=X.useSelector(U=>U.appDetails?.details?.storeList),A=y.useMemo(()=>Dl(_),[_]),M=y.useMemo(()=>b.map(U=>U.name).filter(Boolean),[b]),L=y.useMemo(()=>Array.isArray(h)?h:Array.isArray(h?.steps)?h.steps:[],[h]),z=y.useMemo(()=>Wg(v),[v]),Q=v?.id??v?.userId??null,G=X.useSelector(U=>{const te=U.complaintType?.selected,pe=Array.isArray(te?.accesses)?te.accesses.map(Ce=>Ce?.role?.id??Ce?.role?.roleId??Ce?.roleId).map(Number).filter(Number.isFinite):[];return pe.length?pe:(Array.isArray(te?.roleIds)?te.roleIds:Array.isArray(te?.roles)?te.roles:[]).map(Ce=>Number(Ce?.id??Ce?.roleId??Ce?.role_id??Ce)).filter(Ce=>Number.isFinite(Ce))}),q=X.useSelector(U=>{const te=U.complaintType?.selected;return te?.isActive!=null?!!te.isActive:te?.active!=null?!!te.active:!0}),[K,ee]=y.useState({complaintTypeId:null,status:"all"}),[V,I]=y.useState({complaintTypeId:null,direction:bl}),[O,j]=y.useState({complaintTypeId:null,level:"all"}),[W,N]=y.useState({complaintTypeId:null,value:"all",explicitlySelected:!1}),[k,C]=y.useState(1),[P,T]=y.useState(Ch),[$,J]=y.useState([]),[re,F]=y.useState({}),[Y,E]=y.useState(!1),[Z,R]=y.useState(null),[se,D]=y.useState([]),[ne,ie]=y.useState(!1),[de,oe]=y.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),me=String(de.complaintTypeId)===String(i)&&de.preset?de:null,ke=y.useMemo(()=>Fg(me),[me]),_e=String(K.complaintTypeId)===String(i)?K.status:"all",ut=String(V.complaintTypeId)===String(i)?V.direction:bl,Ye=String(O.complaintTypeId)===String(i)?O.level:"all",je=String(W.complaintTypeId)===String(i)?W.value:"all",E0=String(W.complaintTypeId)===String(i)&&W.explicitlySelected,vr=(U,te="success")=>{const pe=`${Date.now()}-${Math.random()}`;D(Ee=>[...Ee,{id:pe,message:U,type:te}])},L0=U=>D(te=>te.filter(pe=>pe.id!==U));y.useEffect(()=>{!i||a||(Al(i),n(`/complaintmanagement/${i}`,{replace:!0}))},[i,n,a]),y.useEffect(()=>{if(!i||!a)return;Al(i),t(lt(i)),t(zo()),t(Yo()),t(Bp());const U=t(Tt(i)),te=t(Gn(i)),pe=t(We(i)),Ee=t(xe(i)),Ce=t(Qe(i));return Ee.unwrap().then(rs=>J(Eh(rs))).catch(()=>J([])),()=>{U.abort?.(),te.abort?.(),pe.abort?.(),Ee.abort?.(),Ce.abort?.()}},[i,t,a]),y.useEffect(()=>{if(!i||!a)return;const U=t(Yn({complaintTypeId:i,page:k,limit:P,status:_e==="all"?void 0:_e,sort:ut===Sl?"createdAt":"-createdAt",...Yi(je,Q),escalationTo:Ye==="all"?void 0:Ye,...ke}));return()=>U.abort?.()},[i,Q,ke,t,P,k,a,je,ut,Ye,_e]);const T0=G.some(U=>z.includes(U)),ft=y.useMemo(()=>p!=null&&i!=null&&String(p)!==String(i)?[]:c.map(te=>({...xl(Nl(te,b,L),A),_fields:te?.formField||[]})),[i,c,p,b,L,A]),ic=y.useMemo(()=>[...new Set(ft.map(U=>U.roleId).filter(U=>U!=null).map(String))],[ft]);y.useEffect(()=>{ic.forEach(U=>{!m.usersByRoleId?.[U]&&!m.loadingByRoleId?.[U]&&!m.errorByRoleId?.[U]&&t(fn(U))})},[t,ic,m.errorByRoleId,m.loadingByRoleId,m.usersByRoleId]);const I0=y.useMemo(()=>[...new Set(L.map((U,te)=>Number(U.levelNo??te+1)))].sort((U,te)=>U-te),[L]),ts=y.useMemo(()=>_l(ft,$).filter(U=>Gi(U,L,z,Q)),[ft,$,L,z,Q]),F0=wl(ts),cc=U=>{const te=U.assignedToUserId;return te==null||te===""?0:String(te)===String(Q)?1:2},_n=ft.map(({_fields:U,...te})=>te).sort((U,te)=>cc(U)-cc(te)),ns=y.useMemo(()=>Ug(ts,ft),[ts,ft]),k0=ns.every(U=>Object.prototype.hasOwnProperty.call(re,U));y.useEffect(()=>{const U=ns.filter(pe=>!Object.prototype.hasOwnProperty.call(re,pe));if(!U.length)return;let te=!1;return Promise.all(U.map(async pe=>{try{const Ee=await t(un({params:{path:pe}})).unwrap();return[pe,Ee]}catch{return[pe,""]}})).then(pe=>{te||F(Ee=>({...Ee,...Object.fromEntries(pe)}))}),()=>{te=!0}},[ns,re,t]);const wr=Lh(w,k,P,_n.length),dc=!!(i&&!f&&(!_n.length&&(d||!u)||_n.length>0&&!k0)),O0=U=>{C(1),ee({complaintTypeId:i,status:U})},D0=U=>{U>=1&&U<=wr.totalPages&&U!==k&&C(U)},x0=U=>{const te=Number(U);!Number.isFinite(te)||te<=0||te===P||(T(te),C(1))},M0=U=>{C(1),I({complaintTypeId:i,direction:U})},P0=U=>{C(1),j({complaintTypeId:i,level:U})},U0=U=>{C(1),N({complaintTypeId:i,value:U,explicitlySelected:!0})},B0=U=>{C(1),oe({complaintTypeId:i,...U}),ie(!1)},$0=()=>{C(1),oe({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),ie(!1)},j0=()=>{i&&n(`/complaintmanagement/new/${i}`)},V0=U=>{if(U?.id==null||!i)return;const te=r.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement";n(`/${te}/${i}/details/${U.id}`)},uc=U=>{const te=L.find(pe=>String(pe.id)===String(U?.currentStepId));return!te||Xi(te,z,Q)},q0=async(U,te)=>{if(U?.id==null||te==null||g!=null||U.isClosed||String(U.assignedToUserId)===String(te))return;if(!uc(U)){vr("Only users in the current level can assign this complaint.","error");return}if(!(U.assignedToUserId!=null&&U.assignedToUserId!==""&&String(U.assignedToUserId)===String(Q))&&String(te)!==String(Q)){vr("Please assign this complaint to yourself first. Then you can assign it to others.","error");return}try{await t(Lt({id:U.id,assignedToUserId:te})).unwrap(),vr("Complaint assigned successfully","success")}catch(Ee){vr(Ee?.message??"Failed to assign complaint","error")}},W0=U=>({roleUsers:m.usersByRoleId?.[String(U.roleId)]??[],assignmentLoading:!!m.loadingByRoleId?.[String(U.roleId)],assignmentError:m.errorByRoleId?.[String(U.roleId)]??null,assignmentSaving:g!=null,currentUserId:Q,canAssign:uc(U),onAssign:q0,onRetryUsers:te=>t(fn(te)),attachmentUrlMap:re});return{complaintTypeId:i,canCreateComplaint:T0,isComplaintTypeActive:q,statusNames:M,selectedStatus:_e,selectedCreatedAtSort:ut,selectedLevel:Ye,selectedAssignment:je,workflowLevels:I0,isDownloadingReport:Y,onStatusChange:O0,onCreatedAtSortChange:M0,onLevelChange:P0,onAssignmentChange:U0,dateFilter:me,hasDateFilter:!!me,isDateFilterOpen:ne,onOpenDateFilter:()=>ie(!0),onCloseDateFilter:()=>ie(!1),onApplyDateFilter:B0,onResetDateFilter:$0,onNewComplaint:j0,onDownloadReport:async()=>{if(!(!i||Y)){E(!0),R(null);try{const U=Yi(je,Q,E0),pe=(await qg({complaintTypeId:i,status:_e,dateParams:ke,sort:ut===Sl?"createdAt":"-createdAt",assignmentParams:U,escalationTo:Ye})).map(Ge=>({...xl(Nl(Ge,b,L),A),_fields:Ge?.formField||[]})).filter(Ge=>Ye==="all"||String(L.find(z0=>String(z0.id)===String(Ge.currentStepId))?.levelNo??Ge.level)===String(Ye)),Ee=_l(pe,$).filter(Ge=>Gi(Ge,L,z,Q)),Ce=wl(Ee).filter(Ge=>!Mh(Ge,pe,Nn)),rs=new Blob([Ph(Ce,pe)],{type:"text/csv;charset=utf-8;"}),fc=URL.createObjectURL(rs),En=document.createElement("a");En.href=fc,En.download=`complaints-report-${i}-${Date.now()}.csv`,document.body.appendChild(En),En.click(),document.body.removeChild(En),URL.revokeObjectURL(fc)}catch(U){R(U?.response?.data?.message??U?.message??"Failed to download report")}finally{E(!1)}}},error:f,downloadError:Z,showLoading:dc,toasts:se,onDismissToast:L0,tableProps:{scrollFields:F0.filter(U=>U.key!=="actions"),stickyFields:[Vg],tableRows:_n,fieldLabel:e,getCellContext:W0,onOpenComplaint:V0,page:k,itemsPerPage:P},paginationProps:{currentPage:k,totalItems:wr.totalItems,itemsPerPage:P,onPageChange:D0,onItemsPerPageChange:x0,selectOptions:Ah,totalPages:wr.totalPages,disabled:dc,hasRows:!!(wr.totalItems>0||_n.length||k>1)}}}function Kg({onHeaderActionsChange:e}){const t=Hg(),[n,r]=y.useState(""),a=y.useMemo(()=>{const i=n.trim().toLowerCase();return i?t.tableProps.tableRows.filter(c=>Object.values(c).some(d=>String(d??"").toLowerCase().includes(i))):t.tableProps.tableRows},[t.tableProps.tableRows,n]),o=y.useRef({});y.useEffect(()=>{o.current={onStatusChange:t.onStatusChange,onCreatedAtSortChange:t.onCreatedAtSortChange,onLevelChange:t.onLevelChange,onAssignmentChange:t.onAssignmentChange,onNewComplaint:t.onNewComplaint,onOpenDateFilter:t.onOpenDateFilter,onDownloadReport:t.onDownloadReport}});const l=y.useMemo(()=>({onStatusChange:(...i)=>o.current.onStatusChange?.(...i),onCreatedAtSortChange:(...i)=>o.current.onCreatedAtSortChange?.(...i),onLevelChange:(...i)=>o.current.onLevelChange?.(...i),onAssignmentChange:(...i)=>o.current.onAssignmentChange?.(...i),onNewComplaint:(...i)=>o.current.onNewComplaint?.(...i),onOpenDateFilter:(...i)=>o.current.onOpenDateFilter?.(...i),onDownloadReport:(...i)=>o.current.onDownloadReport?.(...i)}),[]);return y.useEffect(()=>{e?.({search:n,onSearchChange:r,selectedStatus:t.selectedStatus,statusNames:t.statusNames,selectedCreatedAtSort:t.selectedCreatedAtSort,selectedLevel:t.selectedLevel,selectedAssignment:t.selectedAssignment,workflowLevels:t.workflowLevels,onStatusChange:l.onStatusChange,onCreatedAtSortChange:l.onCreatedAtSortChange,onLevelChange:l.onLevelChange,onAssignmentChange:l.onAssignmentChange,onNewComplaint:l.onNewComplaint,onOpenDateFilter:l.onOpenDateFilter,hasDateFilter:t.hasDateFilter,onDownloadReport:l.onDownloadReport,isDownloadingReport:t.isDownloadingReport,complaintTypeId:t.complaintTypeId,canCreateComplaint:t.canCreateComplaint,isComplaintTypeActive:t.isComplaintTypeActive})},[e,l,n,t.selectedStatus,t.statusNames,t.selectedCreatedAtSort,t.selectedLevel,t.selectedAssignment,t.workflowLevels,t.hasDateFilter,t.isDownloadingReport,t.complaintTypeId,t.canCreateComplaint,t.isComplaintTypeActive]),y.useEffect(()=>()=>e?.(null),[e]),s.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[t.error?s.jsx("p",{className:"ca-body",children:t.error}):null,t.downloadError?s.jsx("p",{className:"ca-body",children:t.downloadError}):null,t.showLoading?s.jsx(ze,{text:"Loading complaints"}):s.jsx(Ji,{...t.tableProps,tableRows:a}),t.paginationProps.hasRows?s.jsx(Wi,{...t.paginationProps}):null,s.jsx(Dg,{open:t.isDateFilterOpen,initial:t.dateFilter,onApply:t.onApplyDateFilter,onReset:t.onResetDateFilter,onClose:t.onCloseDateFilter}),s.jsx(Lg,{toasts:t.toasts,onDismiss:t.onDismissToast})]})}const br=({onHeaderActionsChange:e})=>s.jsxs("main",{className:"ca-query-management-page",children:[s.jsx(Ng,{}),s.jsx(Kg,{onHeaderActionsChange:e})]}),Jg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"};function Ga(e){return typeof e=="string"?e:e?.label??""}function Yg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n.fieldName??n.fieldLabel??n.label??"",a=n.fieldKey??String(n.id),o=n?.options?.values??[],l=t.find(i=>i.id===n.dependsOnFieldId||n.dependsOnFieldKey&&i.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:r,fieldKey:ae({fieldKey:a,label:r})?"status":a,fieldType:Na(n.fieldType,Jg,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??l?.fieldName??n.dependsOn??"",options:o.map(Ga).filter(Boolean),parentMappings:Object.fromEntries(o.map(i=>{const c=Ga(i),d=Xg(i);return!c||!d?null:[c,Zg(d,l?.options?.values??[])]}).filter(Boolean))}})}function Sr(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Gg(e){if(ae(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:Sr(e.label||t)}function Xg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Zg(e,t=[]){if(!e)return"";const n=t.map(Ga).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Sr(o)===e||Sr(o)===Sr(e))||e}function Qg(e,t=[],n={}){const r=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return r;const o=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!o)return r;const l=e.parentMappings||{};if(!r.some(d=>!!l[d]))return r;const c=String(n[fe(o)]||"").trim();return c?r.filter(d=>String(l[d]||"")===c):r}function Xa(e){return jt(e)==="checkbox"}function Rg(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function Zi(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function e0(e,t,n){const r={},a=Array.isArray(t)?t[0]:t;if(!a)return r;let o=e,l=a;for(;o?.dependsOn;){const i=Rg(n,o.dependsOn);if(!i)break;const c=(o.parentMappings||{})[l];if(!c)break;r[fe(i)]=Xa(i)?[c]:c,o=i,l=c}for(o=e,l=a;o;){const i=Zi(n,o);if(!i)break;const c=i.parentMappings||{},d=Object.keys(c).find(f=>c[f]===l);if(!d)break;r[fe(i)]=Xa(i)?[d]:d,o=i,l=d}return r}function Za(e){return Array.isArray(e)?e.filter(t=>t!=null&&t!==""):e==null||e===""?[]:[e]}function t0(e,t,n,r,a){const o={},l=Za(n);let i=Za(t).filter(d=>!l.includes(d)),c=e;for(;c&&i.length;){const d=Zi(r,c);if(!d)break;const f=d.parentMappings||{},u=fe(d),p=Za(o[u]??a[u]),w=p.filter(g=>i.includes(f[g]));if(!w.length)break;const b=p.filter(g=>!w.includes(g));o[u]=Xa(d)?b:b[0]??"",i=w,c=d}return o}function fe(e){return String(e.fieldKey||e.id||e.label)}function jt(e){const t=String(e.fieldType||"").toLowerCase();return t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="email"?"email":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":t==="file"?"file":t==="images"?"images":(t==="dropdown"||t==="select"||t==="custom")&&e.options.length?"select":"text"}function Qi(e){return`new-query-${e.id??fe(e)}`}function Ri(e){if(ae(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=jt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function ec(e){return Array.isArray(e)?e.map(t=>typeof File<"u"&&t instanceof File?t.name:t):typeof File<"u"&&e instanceof File?e.name:e??""}function Qa(e,t){if(e==null)return t?.name||"";if(typeof e=="string"||typeof e=="number")return String(e);const n=e.file&&typeof e.file=="object"?e.file:e,r=n.path||n.id||t?.name||"",a=n.originalName||t?.name||"";return a&&r&&String(r)!==a?`${r}::${a}`:r}async function n0(e,t,n){const r=jt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(It({file:n,folder:"complaints"})).unwrap();return Qa(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const o=await e(It({file:a,folder:"complaints"})).unwrap();return Qa(o,a)}return a})):r==="images"&&Array.isArray(n)?await Promise.all(n.map(async o=>{if(typeof File<"u"&&o instanceof File){const l=await e(It({file:o,folder:"complaints"})).unwrap();return Qa(l,o)}return o})):ec(n)}async function r0(e=[],t={},n){const r={};for(const a of e){const o=Gg(a);o&&(r[o]=await n0(n,a,t[fe(a)]))}return r}function tc(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function a0(e){return/^\d+$/.test(String(e).trim())}function s0(e=[],t={}){for(const n of e){const r=jt(n),a=t[fe(n)],o=n.label||"This field";if(n.required&&tc(a))return`${o} is required.`;if(!tc(a)&&r==="number"&&!a0(a))return`${o} must be a valid number.`}return""}function o0({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:o}=Je(),l=jt(e),i=Qi(e),c=ae(e);if(et(e)&&Array.isArray(r))return s.jsx(Di,{id:i,name:fe(e),required:e.required,storeList:r,value:t,onChange:n});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${d}`,children:[s.jsx("input",{id:`${i}-${d}`,name:fe(e),type:"radio",value:d,checked:t===d,onChange:f=>n(f.target.value),required:e.required,disabled:c}),s.jsx("span",{children:d})]},d))});if(l==="checkbox"){const d=Array.isArray(t)?t:[];return s.jsx("div",{className:"review-options review-options--inline",children:a.map(f=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${f}`,children:[s.jsx("input",{id:`${i}-${f}`,name:`${fe(e)}[]`,type:"checkbox",value:f,checked:d.includes(f),onChange:u=>n(u.target.checked?[...d,f]:d.filter(p=>p!==f))}),s.jsx("span",{children:f})]},f))})}if(l==="textarea")return s.jsx("textarea",{id:i,name:fe(e),className:"review-control review-control--textarea",value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c});if(l==="file")return s.jsx(gr,{id:i,name:fe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="images")return s.jsx(gr,{id:i,name:fe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="number")return s.jsx("input",{id:i,name:fe(e),className:"review-control",type:"number",inputMode:"numeric",value:t,onChange:d=>n(String(d.target.value).replace(/[^\d]/g,"")),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault()},required:e.required,disabled:c});if(l==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return s.jsxs("select",{id:i,name:fe(e),className:"review-control",value:t,onChange:f=>n(f.target.value),required:e.required,disabled:c,children:[c?null:s.jsxs("option",{value:"",children:["Select ",o(e)]}),d.map(f=>s.jsx("option",{value:f,children:f},f))]})}return s.jsx("input",{id:i,name:fe(e),className:"review-control",type:l,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function nc({storeList:e}={}){const{fieldLabel:t}=Je(),n=X.useDispatch(),r=Pe(),a=De(),{complaintTypeId:o}=mt(),l=Number(o),i=Number.isFinite(l)&&l>0,[c,d]=y.useState([]),[f,u]=y.useState({}),[p,w]=y.useState(!0),[b,g]=y.useState(!1),[m,h]=y.useState(""),[v,_]=y.useState(""),[A,M]=y.useState(""),[L,z]=y.useState(""),Q=X.useSelector(V=>{const I=V.complaintType??{},j=(Array.isArray(I.complaintList)?I.complaintList:[]).find(W=>String(W?.id??W?._id)===String(o))??(String(I.selected?.id??I.selected?._id)===String(o)?I.selected:null);return String(j?.name??j?.code??"").trim()}),G=Q||L;y.useEffect(()=>{if(!i||Q)return;let V=!1;return n(Qe(l)).unwrap().then(I=>{if(V)return;const O=I?.data??I;z(String(O?.name??O?.code??"").trim())}).catch(()=>{}),()=>{V=!0}},[l,Q,n,i]),y.useEffect(()=>{if(!i)return;let V=!1;return n(xe(l)).unwrap().then(I=>{if(V)return;const O=Yg(Array.isArray(I?.data)?I.data:I);d(O),u(Object.fromEntries(O.map(j=>[fe(j),Ri(j)])))}).catch(I=>{V||h(typeof I=="string"?I:I?.message||"Failed to load form fields.")}).finally(()=>{V||w(!1)}),()=>{V=!0}},[l,n,i]);const q=y.useMemo(()=>c.length>0,[c]),K=async V=>{if(V.preventDefault(),!i){h("A valid complaint type is required.");return}h(""),_(""),g(!0);const I=s0(c,f);if(I){h(I),g(!1);return}try{const O=await r0(c,f,n),j=c.findIndex(ae),W=c[j+1],k=(W?[].concat(ec(f[fe(W)])).join(", ").trim():"")||G;if(!k){h("Title is required. Please fill the first field.");return}await n(Zn({complaintTypeId:l,title:k,fieldValues:O})).unwrap(),_("Query submitted successfully."),a.key!=="default"?r(-1):r(`/complaintmanagement/${l}/all`)}catch(O){h(typeof O=="string"?O:O?.message||"Failed to submit query.")}finally{g(!1)}},ee=V=>{const I=Qg(V,c,f);return s.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(jt(V))?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:Qi(V),children:[t(V)||"Untitled field",V.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(o0,{storeList:e,field:V,options:I,value:f[fe(V)]??Ri(V),onChange:O=>{ae(V)||u(j=>{const W=t0(V,j[fe(V)],O,c,j),N=e0(V,O,c);return{...j,[fe(V)]:O,...W,...N}})}})]},V.id??fe(V))};return s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[s.jsx("div",{className:"ca-query-details__heading",children:s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>r(-1),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),m||!i?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:m||"A valid complaint type is required."}):null,p&&i?s.jsx(ze,{text:"Loading form fields"}):null,i&&!p&&q?s.jsxs("form",{className:"review-form-card",onSubmit:K,children:[s.jsx("div",{className:"review-form-grid",children:c.map(V=>s.jsx(y.Fragment,{children:ae(V)?null:ee(V)},V.id??fe(V)))}),s.jsx("div",{className:"ca-new-query__actions",children:s.jsx(ye,{type:"submit",disabled:b,children:b?"Submitting...":"Submit Complaint"})}),v?s.jsx("p",{className:"ca-body",children:v}):null]}):null]})})}const Ra=[];function l0(e,t=200,n=null){const r=X.useDispatch(),a=X.useSelector(b=>b.appDetails?.details?.userList)??Ra,o=X.useSelector(b=>b.status?.list)??Ra,[l,i]=y.useState({key:null,complaints:[],error:null}),c=e==null||e===""?null:`${e}:${t}`;y.useEffect(()=>{if(e==null||e==="")return;const b=r(Tt(e));return()=>b.abort?.()},[e,r]),y.useEffect(()=>{if(e==null||e==="")return;let b=!1;const g=`${e}:${t}`;return ue.get(ca,{params:{complaintTypeId:e,page:1,limit:t}}).then(m=>{b||i({key:g,complaints:El(m.data),error:null})}).catch(m=>{b||i({key:g,complaints:[],error:m?.response?.data?.message??m?.message??"Failed to load complaints"})}),()=>{b=!0}},[e,t]);const d=l.key===c,f=d?l.complaints:Ra,u=d?l.error:null,p=c!==null&&!d;return{rows:y.useMemo(()=>{const b={tatMinutes:Number(n)||0},g=h=>{const v=new Date(h?.createdAt??h?.submittedAt??h?.date??0).getTime();return Number.isNaN(v)?0:v},m=h=>Number(h?.complaintId??h?.id)||0;return[...f].sort((h,v)=>g(v)-g(h)||m(v)-m(h)).map(h=>Ol(h,o,a,b))},[f,o,a,n]),isLoading:p,error:u}}function i0(){const e=X.useDispatch(),t=Pe(),n=De(),{complaintTypeId:r}=mt(),a=X.useSelector(d=>{const f=d.complaintType??{};return(Array.isArray(f.complaintList)?f.complaintList:[]).find(p=>String(p?.id??p?._id)===String(r))??(String(f.selected?.id??f.selected?._id)===String(r)?f.selected:null)}),{rows:o,isLoading:l,error:i}=l0(r,void 0,a?.tatMinutes),c=y.useCallback(d=>{t(`/complaintmanagement/${r}/details/${d.id}`,{state:{from:n.pathname}})},[r,n.pathname,t]);return y.useEffect(()=>{!a&&r&&e(Qe(r))},[r,e,a]),s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-filler-list",children:[s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>t("/"),"aria-label":"Back to Complaints",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsxs("div",{children:[s.jsxs("h1",{className:"ca-query-details__title",children:[a?.name??a?.title??"Complaints",o.length?` (${o.length})`:""]}),s.jsx("p",{className:"ca-filler-card__desc",children:a?.description||" "})]})]}),s.jsx(ye,{startIcon:s.jsx(Wl,{size:14}),onClick:()=>t(`/complaintmanagement/new/${r}`),disabled:a?.isActive===!1||a?.active===!1,children:"Add Complaint"})]}),i?s.jsx("p",{className:"ca-body",children:i}):null,l?s.jsx(ze,{text:"Loading complaints"}):null,!l&&!i&&!o.length?s.jsx(Ja,{text:"No Complaint"}):null,l?null:o.map(d=>s.jsx(Gl,{row:d,onClick:c},d.id))]})})}function es(e,t={}){if(!e)return"—";const n=new Date(e);return Number.isNaN(n.getTime())?"—":new Intl.DateTimeFormat(void 0,{day:"numeric",month:"short",year:"numeric",...t}).format(n)}function rc(e){return e==null||e===""?"—":Array.isArray(e)?e.map(rc).join(", "):typeof e=="object"?e.name??e.label??JSON.stringify(e):String(e)}function ac({label:e,value:t,fieldType:n,attachmentUrls:r}){const o=Nn({fieldType:n},t)?$t(t):[];return s.jsxs("div",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:e||"Field"}),o.length?s.jsx("div",{className:"ca-complaint-details__attachments",children:o.map((l,i)=>{const c=dt(l),d=r[c]||(typeof l=="string"&&/^https?:\/\//i.test(c)?c:""),f=An(l).split("/").pop();return d&&/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i.test(f)?s.jsx("a",{className:"ca-complaint-details__image-link",href:d,target:"_blank",rel:"noreferrer","aria-label":`View ${f}`,children:s.jsx("img",{src:d,alt:f})},`${c}-${i}`):d?s.jsx("a",{className:"ca-complaint-details__file",href:d,target:"_blank",rel:"noreferrer",children:f||"View attachment"},`${c}-${i}`):s.jsx("span",{className:"ca-complaint-details__file",children:f||"Attachment"},`${c}-${i}`)})}):s.jsx("span",{className:"ca-complaint-details__field-value",children:rc(t)})]})}function c0({activities:e=[],fallbackRemarks:t=[],localRemarks:n=[],createdAt:r,isLoading:a,error:o,onRetry:l}){const i=y.useMemo(()=>{const d=[...e.length?e.map((u,p)=>{const w=u.action??u.activityType??u.type??"",b=u.description??u.remarks??u.remark??u.message??u.title??(typeof w=="string"?w:"")??"Complaint updated",g=/submit|created/i.test(`${w} ${b}`)?"created":"remark",m=[u.createdByFirstName,u.createdByLastName].filter(h=>h!=null&&String(h).trim()!=="").join(" ").trim();return{id:u.id??`${u.createdAt??u.timestamp??"activity"}-${p}`,type:g,text:b||"Complaint updated",author:u.createdByUserName||m||u.userName||u.actorName||u.createdBy?.name||u.user?.name,createdAt:u.createdAt??u.timestamp??u.occurredAt,fromLevelNo:u.fromLevelNo??u.oldLevelNo??u.fromLevel?.levelNo,toLevelNo:u.toLevelNo??u.newLevelNo??u.toLevel?.levelNo}}):[...t.map((u,p)=>({id:`${u.createdAt||"remark"}-${p}`,type:"remark",text:u.remark||"Complaint updated",author:u.createdByUserName,createdAt:u.createdAt,fromLevelNo:u.fromLevelNo,toLevelNo:u.toLevelNo}))],...n.map((u,p)=>({id:u.id??`local-${u.createdAt??p}`,type:"remark",text:u.remark||"Complaint updated",author:u.createdByUserName,createdAt:u.createdAt,fromLevelNo:u.fromLevelNo,toLevelNo:u.toLevelNo}))],f=d.some(u=>u.type==="created"||/complaint submitted/i.test(u.text));return r&&!f&&d.push({id:`created-${r}`,type:"created",text:"Complaint submitted",createdAt:r}),d.sort((u,p)=>new Date(p.createdAt||0)-new Date(u.createdAt||0))},[e,r,t,n]);return s.jsxs("aside",{className:"ca-complaint-details__activity","aria-label":"Activity log",children:[s.jsxs("div",{className:"ca-complaint-details__activity-heading",children:[s.jsx("h2",{children:"Activity log"}),s.jsx("span",{children:i.length})]}),a?s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"Loading activity…"}):null,o?s.jsxs("div",{className:"ca-complaint-details__activity-empty",role:"alert",children:[s.jsx("p",{children:o}),s.jsx("button",{type:"button",onClick:l,children:"Retry"})]}):null,i.length?s.jsx("ol",{className:"ca-complaint-details__activity-list",children:i.map((c,d)=>s.jsxs("li",{className:"ca-complaint-details__activity-item",children:[s.jsx("span",{className:`ca-complaint-details__activity-icon ca-complaint-details__activity-icon--${c.type}`,"aria-hidden":"true",children:d===0?s.jsx(Qh,{size:14,strokeWidth:1.8}):s.jsx(Zh,{size:14,strokeWidth:1.8})}),s.jsxs("div",{className:"ca-complaint-details__activity-content",children:[s.jsx("p",{children:c.text}),c.type==="remark"||c.author?s.jsxs(s.Fragment,{children:[c.fromLevelNo!=null||c.toLevelNo!=null?s.jsxs("span",{className:"ca-complaint-details__activity-levels",children:[c.fromLevelNo!=null?`L${c.fromLevelNo}`:"—"," → ",c.toLevelNo!=null?`L${c.toLevelNo}`:"—"]}):null,c.author?s.jsx("span",{className:"ca-complaint-details__activity-author",children:c.author}):null]}):null,s.jsx("time",{dateTime:c.createdAt,children:es(c.createdAt,{hour:"numeric",minute:"2-digit"})})]})]},c.id))}):s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"No activity yet"})]})}function d0({complaintId:e,complaintTypeId:t}){const n=X.useDispatch(),r=Pe(),a=De(),o=a.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement",{data:l,isLoading:i,error:c}=X.useSelector(D=>D.complaintsGetOne??{}),d=X.useSelector(D=>D.activityLog??{}),f=X.useSelector(D=>D.status?.list??[]),u=X.useSelector(D=>D.workflow?.workflowSteps),p=X.useSelector(D=>D.appDetails?.details?.currentUser),w=p?.id??p?.userId??null,{fieldLabel:b}=Je(),g=X.useSelector(D=>D.appDetails?.details?.storeList),m=y.useMemo(()=>Dl(g),[g]),h=D=>{const ne=D?.fieldName??D?.fieldKey??"Field";return b({...D,label:ne,fieldLabel:ne,fieldName:ne,key:D?.fieldKey})||ne},v=D=>typeof D=="string"&&m[D.trim()]?m[D.trim()]:D,{isLoading:_}=X.useSelector(D=>D.changeStatus??{}),[A,M]=y.useState({}),[L,z]=y.useState(null),[Q,G]=y.useState(null),[q,K]=y.useState(""),[ee,V]=y.useState(""),I=y.useMemo(()=>Array.isArray(u)?u:Array.isArray(u?.steps)?u.steps:[],[u]);y.useEffect(()=>{n(Gp()),n(nh());const D=n(Ft(e)),ne=n(kt(e));return()=>{D.abort?.(),ne.abort?.()}},[e,n]),y.useEffect(()=>{if(!t)return;const D=n(Tt(t)),ne=n(We(t));return()=>{D.abort?.(),ne.abort?.()}},[t,n]);const O=Array.isArray(l?.fieldValues)?l.fieldValues:[],j=y.useMemo(()=>{const D=new Set;return(Array.isArray(l?.fieldValues)?l.fieldValues:[]).forEach(ne=>{Nn(ne?.formField,ne?.value)&&$t(ne.value).forEach(ie=>{typeof ie=="string"&&D.add(dt(ie))})}),[...D]},[l]);y.useEffect(()=>{const D=j.filter(ie=>!Object.prototype.hasOwnProperty.call(A,ie));if(!D.length)return;let ne=!1;return Promise.all(D.map(async ie=>{try{const de=await n(un({params:{path:ie}})).unwrap();return[ie,de]}catch{return[ie,""]}})).then(ie=>{ne||M(de=>({...de,...Object.fromEntries(ie)}))}),()=>{ne=!0}},[j,A,n]);const W=()=>r(a.state?.from||`/${o}/${t}`),N=L??(l?.statusId==null?"":String(l.statusId)),k=Q??(l?.currentStepId==null?"":String(l.currentStepId)),C=y.useMemo(()=>I.find(D=>String(D.id)===String(l?.currentStepId)),[l?.currentStepId,I]),P=C??l?.currentWorkflowStep,T=(Array.isArray(p?.roles)?p.roles:[]).map(D=>Number(D?.id??D?.roleId??D?.role_id??D)).filter(Number.isFinite),$=y.useMemo(()=>{if(!P)return!1;const D=Array.isArray(P.roleIds)&&P.roleIds.some(de=>T.includes(Number(de))),ne=Number(p?.id??p?.userId),ie=[P.userAssignments,P.users,P.userIds,P.assignedUsers].filter(Array.isArray).flat().some(de=>Number(de?.userId??de?.id??de?.user?.id??de)===ne);return D||ie},[P,p?.id,p?.userId,T]),J=!ba(l?.status?.name)&&w!=null&&String(l?.assignedToUserId)===String(w)&&(!C||$),re=y.useMemo(()=>[...I].sort((D,ne)=>Number(D.levelNo??0)-Number(ne.levelNo??0)),[I]),F=y.useMemo(()=>re.find(D=>String(D.id)===String(k))??(String(l?.currentStepId)===String(k)?l?.currentWorkflowStep:null),[l?.currentStepId,l?.currentWorkflowStep,k,re]),Y=Number(F?.levelNo??0),E=y.useMemo(()=>new Set(re.filter((D,ne)=>{const ie=Number(D.levelNo??ne+1);return ie===Y||ie===Y+1||ie===Y-1&&Y>1&&tr(F?.canReassign)}).map(D=>String(D.id))),[Y,F?.canReassign,re]),Z=l?.remarks,R=y.useMemo(()=>[...Array.isArray(Z)?Z:[]],[Z]),se=async()=>{if(!l?.id||_)return;V("");const D=q.trim();try{await n(Lt({id:l.id,statusId:N,currentStepId:k,assignedToUserId:w,remark:D})).unwrap(),z(null),G(null),K(""),await n(Ft(e)).unwrap(),await n(kt(e))}catch(ne){V(ne?.message??"Failed to update complaint")}};return s.jsxs("main",{className:"ca-complaint-details-page",children:[s.jsxs("header",{className:"ca-complaint-details__header",children:[s.jsx("button",{className:"ca-complaint-details__back",type:"button",onClick:W,"aria-label":"Back to complaints",children:s.jsx("span",{"aria-hidden":"true",children:"‹"})}),s.jsxs("div",{className:"ca-complaint-details__heading",children:[s.jsx("h1",{children:l?.complaintType?.name||"Complaint Details"}),l?.complaintType?.description?s.jsx("span",{children:l.complaintType.description}):null]}),l?s.jsx("button",{className:"ca-complaint-details__update",type:"button",onClick:se,disabled:_||!J,children:_?"Updating…":"Update"}):null]}),i?s.jsx(ze,{text:"Loading complaint details"}):null,!i&&c?s.jsxs("div",{className:"ca-complaint-details__error",role:"alert",children:[s.jsx("p",{children:c}),s.jsx("button",{type:"button",onClick:()=>n(Ft(e)),children:"Try again"})]}):null,!i&&!c&&l?s.jsxs("div",{className:"ca-complaint-details__layout",children:[s.jsxs("section",{className:"ca-complaint-details__main","aria-label":"Complaint information",children:[s.jsxs("div",{className:"ca-complaint-details__summary",children:[s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Status"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:N,disabled:!J,onChange:D=>z(D.target.value),children:[f.map(D=>{const ie=!(String(D.id)===String(l.statusId))&&Oh(D.name)&&!tr(P?.canResolve??l.currentWorkflowStep?.canResolve);return s.jsx("option",{value:D.id,disabled:ie,children:D.name},D.id)}),f.some(D=>String(D.id)===String(N))?null:s.jsx("option",{value:N,children:l.status?.name||"—"})]}),J?s.jsx(hn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Escalation to"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:k,disabled:!J,onChange:D=>G(D.target.value),children:[re.filter(D=>E.has(String(D.id))).map(D=>s.jsxs("option",{value:D.id,children:["Level ",D.levelNo]},D.id)),re.some(D=>String(D.id)===String(k))?null:s.jsx("option",{value:k,children:l.currentWorkflowStep?.levelNo!=null?`Level ${l.currentWorkflowStep.levelNo}`:"—"})]}),J?s.jsx(hn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),O.map((D,ne)=>s.jsx(ac,{label:h(D.formField),value:v(D.value),fieldType:D.formField?.fieldType,attachmentUrls:A},D.id??`${D.formField?.id??"field"}-${ne}`)),s.jsx(ac,{label:"Created at",value:es(l.createdAt)})]}),s.jsxs("section",{className:"ca-complaint-details__remarks","aria-label":"Remarks",children:[s.jsx("h2",{children:"Remark"}),s.jsx("form",{className:"ca-complaint-details__remark-form",onSubmit:D=>{D.preventDefault()},children:s.jsx("input",{"aria-label":"Enter remark",value:q,onChange:D=>K(D.target.value),placeholder:"Enter remark"})}),ee?s.jsx("p",{className:"ca-complaint-details__update-error",role:"alert",children:ee}):null,R.length?s.jsx("ol",{className:"ca-complaint-details__remark-list",children:R.map((D,ne)=>s.jsxs("li",{children:[s.jsxs("div",{className:"ca-complaint-details__remark-meta",children:[s.jsxs("span",{children:[D.fromLevelNo!=null||D.toLevelNo!=null?`L${D.fromLevelNo??"—"} - L${D.toLevelNo??"—"}`:"",D.createdByUserName?` | ${D.createdByUserName}`:""]}),s.jsx("time",{dateTime:D.createdAt,children:es(D.createdAt,{hour:"numeric",minute:"2-digit"})})]}),s.jsx("p",{children:D.remark})]},D.id??`${D.createdAt??"remark"}-${ne}`))}):null]})]}),s.jsx(c0,{activities:d.activities,fallbackRemarks:R,createdAt:l.createdAt,isLoading:d.isLoading,error:d.error,onRetry:()=>n(kt(e))})]}):null]})}function sc(){const{complaintId:e,complaintTypeId:t}=mt();return s.jsx(d0,{complaintId:e,complaintTypeId:t},e)}function u0({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??s.jsx(Xl,{...e});return s.jsxs(ld,{children:[s.jsx(Ae,{path:"/",element:a}),s.jsx(Ae,{path:"/settings/:systemId",element:s.jsx(qi,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),s.jsx(Ae,{path:"complaintmanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ae,{path:"complaintmanagement/new/:complaintTypeId",element:s.jsx(nc,{company:e.company,storeList:e.storeList})}),s.jsx(Ae,{path:"complaintmanagement/:complaintTypeId/details/:complaintId",element:s.jsx(sc,{})}),s.jsx(Ae,{path:"complaintmanagement/:complaintTypeId",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ae,{path:"complaintmanagement/:complaintTypeId/all",element:s.jsx(i0,{})}),s.jsx(Ae,{path:"querymanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ae,{path:"querymanagement/new/:complaintTypeId",element:s.jsx(nc,{company:e.company,storeList:e.storeList})}),s.jsx(Ae,{path:"querymanagement/:complaintTypeId/details/:complaintId",element:s.jsx(sc,{})}),s.jsx(Ae,{path:"querymanagement/:complaintTypeId",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(Ae,{path:"*",element:a})]})}function f0({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return s.jsx(u0,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function p0({children:e}){const{cssVars:t,darkMode:n,mode:r}=To();return s.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function h0({basePath:e,children:t}){return ht()?t:s.jsx(Cd,{basename:e,children:t})}function m0({store:e,children:t}){return s.jsx(X.Provider,{store:e||ll,children:t})}function g0({details:e,children:t}){const n=X.useDispatch();return y.useEffect(()=>{n(Mo(e))},[n,e]),t}const oc=[],lc=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:o=!1,title:l,description:i,rolelist:c,roleList:d=c??oc,userList:f=oc,storeList:u,currentUser:p,company:w=p?.company,featureActions:b=hh,useDemoData:g=!0,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:_,onTitleClick:A,onDescriptionClick:M,onSearch:L,onHeaderActionsChange:z,onPublish:Q,onSaveDraft:G,showSaveButton:q,showNextButton:K,onStepChange:ee,children:V})=>{const I={title:l,description:i,useDemoData:g,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:_,roleList:d,userList:f,storeList:u,company:w,onTitleClick:A,onDescriptionClick:M,onSearch:L,onHeaderActionsChange:z,onSaveDraft:G,showSaveButton:q,showNextButton:K},O=y.useMemo(()=>({featureActions:b,apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:o,title:l,description:i,roleList:d,userList:f,storeList:u,currentUser:p,company:w,useDemoData:g,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:_,onTitleClick:A,onDescriptionClick:M,onSearch:L,onHeaderActionsChange:z,onPublish:Q,onSaveDraft:G,showSaveButton:q,showNextButton:K,onStepChange:ee}),[b,e,t,r,a,o,l,i,d,f,u,p,w,g,m,h,v,_,A,M,L,z,Q,G,q,K,ee]);return s.jsx(Si.Provider,{value:w,children:s.jsx(Lo,{theme:a,darkMode:o,children:s.jsx(m0,{store:n,children:s.jsx(g0,{details:O,children:s.jsx(p0,{children:s.jsx(wo,{apiUrl:e,authToken:t,children:s.jsx(h0,{basePath:r,children:s.jsx(f0,{pageProps:I,onPublish:Q,onStepChange:ee,children:V})})})})})})})})};function y0({children:e,onClick:t,className:n="",active:r=!1}){return s.jsx("button",{type:"button",className:`ca-chip ${r?"ca-chip--active":""} ${n}`.trim(),onClick:t,children:e})}function b0({checked:e=!1,onChange:t,name:n,value:r,"aria-label":a,className:o=""}){return s.jsxs("label",{className:`ca-radio ${o}`.trim(),children:[s.jsx("input",{type:"radio",className:"ca-radio__input",name:n,value:r,checked:e,onChange:t,"aria-label":a}),s.jsx("span",{className:"ca-radio__mark"})]})}function S0({status:e="inactive",label:t,className:n=""}){const a=String(e).toLowerCase()==="active",o=t??(a?"Active":"Inactive");return s.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${n}`.trim(),children:o})}const v0=["Open","Cancelled","Closed"];function w0({selectedStatus:e,statusNames:t=[],selectedCreatedAtSort:n,selectedLevel:r,selectedAssignment:a,workflowLevels:o=[],onStatusChange:l,onCreatedAtSortChange:i,onLevelChange:c,onAssignmentChange:d,onOpenDateFilter:f,hasDateFilter:u=!1,onDownloadReport:p,isDownloadingReport:w=!1,complaintTypeId:b}){return s.jsxs("div",{className:"ca-complaint-table__toolbar",children:[s.jsxs("div",{className:"ca-complaint-table__filters",children:[s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx(am,{size:14,"aria-hidden":"true"}),s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),s.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:g=>l?.(g.target.value),children:[s.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:v0).map(g=>s.jsx("option",{value:g,children:or(g)},g))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Sort by created date"}),s.jsxs("select",{value:n,"aria-label":"Sort by created date",onChange:g=>i?.(g.target.value),children:[s.jsx("option",{value:"desc",children:"Created: Newest first"}),s.jsx("option",{value:"asc",children:"Created: Oldest first"})]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by workflow level"}),s.jsxs("select",{value:r,"aria-label":"Filter by workflow level",onChange:g=>c?.(g.target.value),children:[s.jsx("option",{value:"all",children:"All Levels"}),o.map(g=>s.jsxs("option",{value:g,children:["Level ",g]},g))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by assignment"}),s.jsxs("select",{value:a,"aria-label":"Filter by assignment",onChange:g=>d?.(g.target.value),children:[s.jsx("option",{value:"all",children:"All"}),s.jsx("option",{value:"mine",children:"Assign to Me"}),s.jsx("option",{value:"unassigned",children:"Unassigned"})]})]}),s.jsx("button",{type:"button",className:`ca-complaint-table__sort${u?" ca-complaint-table__sort--active":""}`,"aria-label":"Filter by date",title:"Filter by date",onClick:f,children:s.jsx(sm,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),s.jsx("div",{className:"ca-complaint-table__actions",children:s.jsx(ye,{variant:"outline",size:"sm",startIcon:s.jsx(nm,{size:14}),onClick:p,disabled:w||!b,children:"Download Report"})})]})}const C0=qe.colors,A0=qe.radii,N0=qe.spacing,_0=qe.typography;x.AddFormButton=bi,x.AddTableCard=oi,x.ApiProvider=wo,x.BodyText=Qn,x.Button=ye,x.COMPLAINT_ENDPOINTS=Wn,x.CardFooter=pl,x.CardHeader=fl,x.ChevronDownIcon=Ea,x.ChevronRightIcon=pn,x.Chip=y0,x.CloseIcon=ni,x.ComplaintApp=lc,x.ComplaintManagementPage=Xl,x.ComplaintSettingsPage=qi,x.ComplaintTableGrid=Ji,x.ComplaintTableToolbar=w0,x.CustomPagination=Wi,x.DEFAULT_PAGE_DESCRIPTION=$l,x.DEMO_SYSTEMS=zh,x.DataPoint=hl,x.Divider=ml,x.DragHandleIcon=wi,x.EmptyState=Ja,x.FieldLabel=_a,x.FormCard=Ai,x.FormCardGrid=Ni,x.FormField=$e,x.FormInput=yn,x.FormSelect=Ia,x.FormTextarea=Cm,x.Heading1=fa,x.Heading2=pa,x.Input=Ot,x.LabelText=dl,x.LayersIcon=wm,x.LinkText=lh,x.Loading=ze,x.PageHeader=ha,x.PlusIcon=il,x.Radio=b0,x.RoleMultiSelect=ur,x.SETTINGS_STEPS=Be,x.SearchBar=Bl,x.SearchIcon=Ul,x.Select=Ke,x.SettingsCard=gn,x.SettingsCardHeader=ei,x.SettingsWizardProvider=Rl,x.StatusBadge=S0,x.Stepper=bn,x.SystemCard=Ml,x.SystemCardGrid=Pl,x.TableCard=li,x.TableCardGrid=hi,x.Tag=ri,x.Textarea=ti,x.ThemeProvider=Lo,x.Toggle=Rn,x.ToggleField=Oi,x.TrashIcon=er,x.Typography=Re,x.ValueText=ul,x.WORKFLOW_SUBSTEPS=vm,x.api=ue,x.appDetailsReducer=Po,x.clearAppDetails=op,x.clearComplaintError=Zf,x.clearId=lp,x.clearSelectedComplaintResource=Qf,x.colors=C0,x.complaintReducer=ko,x.createComplaintStore=ol,x.darkTheme=tn,x.deepMerge=At,x.default=lc,x.defaultThemeFile=Co,x.deleteFormField=rn,x.getFormFields=xe,x.lightTheme=qe,x.normalizeThemeFile=Ao,x.radii=A0,x.resetComplaintState=Rf,x.resolveActiveTheme=No,x.saveFormFields=nn,x.setAppDetails=Mo,x.setAuthToken=Qr,x.setBaseUrl=vo,x.setId=lt,x.setIsEdit=Nt,x.spacing=N0,x.store=ll,x.themeToCssVars=_o,x.typography=_0,x.useSettingsWizard=dr,x.useTheme=To,Object.defineProperties(x,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
14
13
  //# sourceMappingURL=complaint-app.umd.js.map