@attabot/complaint-app 1.0.36 → 1.0.38

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,13 +1,13 @@
1
- (function(T,i){typeof exports=="object"&&typeof module<"u"?i(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"],i):(T=typeof globalThis<"u"?globalThis:T||self,i(T.ComplaintApp={},T["react/jsx-runtime"],T.React,T.ReactDOM,T.ReactRedux,T.RTK))})(this,(function(T,i,w,g0,X,ie){"use strict";var fr=typeof document<"u"?document.currentScript:null;function Tl(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 U=Tl(w);function Mt(){return Mt=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},Mt.apply(null,arguments)}var He;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(He||(He={}));const Ma="popstate";function Fl(e){e===void 0&&(e={});function t(r,a){let{pathname:s,search:o,hash:l}=r.location;return pr("",{pathname:s,search:o,hash:l},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:Ut(a)}return Ol(t,n,null,e)}function ae(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function _e(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Il(){return Math.random().toString(36).substr(2,8)}function Ua(e,t){return{usr:e.state,key:e.key,idx:t}}function pr(e,t,n,r){return n===void 0&&(n=null),Mt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?dt(t):t,{state:n,key:t&&t.key||r||Il()})}function Ut(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 dt(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 Ol(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:s=!1}=r,o=a.history,l=He.Pop,c=null,d=u();d==null&&(d=0,o.replaceState(Mt({},o.state,{idx:d}),""));function u(){return(o.state||{idx:null}).idx}function f(){l=He.Pop;let g=u(),b=g==null?null:g-d;d=g,c&&c({action:l,location:m.location,delta:b})}function p(g,b){l=He.Push;let h=pr(m.location,g,b);d=u()+1;let v=Ua(h,d),_=m.createHref(h);try{o.pushState(v,"",_)}catch(B){if(B instanceof DOMException&&B.name==="DataCloneError")throw B;a.location.assign(_)}s&&c&&c({action:l,location:m.location,delta:1})}function S(g,b){l=He.Replace;let h=pr(m.location,g,b);d=u();let v=Ua(h,d),_=m.createHref(h);o.replaceState(v,"",_),s&&c&&c({action:l,location:m.location,delta:0})}function N(g){let b=a.location.origin!=="null"?a.location.origin:a.location.href,h=typeof g=="string"?g:Ut(g);return h=h.replace(/ $/,"%20"),ae(b,"No window.location.(origin|href) available to create URL for href: "+h),new URL(h,b)}let m={get action(){return l},get location(){return e(a,o)},listen(g){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(Ma,f),c=g,()=>{a.removeEventListener(Ma,f),c=null}},createHref(g){return t(a,g)},createURL:N,encodeLocation(g){let b=N(g);return{pathname:b.pathname,search:b.search,hash:b.hash}},push:p,replace:S,go(g){return o.go(g)}};return m}var Ba;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Ba||(Ba={}));function kl(e,t,n){return n===void 0&&(n="/"),xl(e,t,n)}function xl(e,t,n,r){let a=typeof t=="string"?dt(t):t,s=Ke(a.pathname||"/",n);if(s==null)return null;let o=$a(e);Dl(o);let l=null,c=Hl(s);for(let d=0;l==null&&d<o.length;++d)l=Wl(o[d],c);return l}function $a(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(s,o,l)=>{let c={relativePath:l===void 0?s.path||"":l,caseSensitive:s.caseSensitive===!0,childrenIndex:o,route:s};c.relativePath.startsWith("/")&&(ae(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);s.children&&s.children.length>0&&(ae(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),$a(s.children,t,u,d)),!(s.path==null&&!s.index)&&t.push({path:d,score:Vl(d,s.index),routesMeta:u})};return e.forEach((s,o)=>{var l;if(s.path===""||!((l=s.path)!=null&&l.includes("?")))a(s,o);else for(let c of ja(s.path))a(s,o,c)}),t}function ja(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return a?[s,""]:[s];let o=ja(r.join("/")),l=[];return l.push(...o.map(c=>c===""?s:[s,c].join("/"))),a&&l.push(...o),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function Dl(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:ql(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Pl=/^:[\w-]+$/,Ml=3,Ul=2,Bl=1,$l=10,jl=-2,Va=e=>e==="*";function Vl(e,t){let n=e.split("/"),r=n.length;return n.some(Va)&&(r+=jl),t&&(r+=Ul),n.filter(a=>!Va(a)).reduce((a,s)=>a+(Pl.test(s)?Ml:s===""?Bl:$l),r)}function ql(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 Wl(e,t,n){let{routesMeta:r}=e,a={},s="/",o=[];for(let l=0;l<r.length;++l){let c=r[l],d=l===r.length-1,u=s==="/"?t:t.slice(s.length)||"/",f=hr({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),p=c.route;if(!f)return null;Object.assign(a,f.params),o.push({params:a,pathname:qe([s,f.pathname]),pathnameBase:Zl(qe([s,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(s=qe([s,f.pathnameBase]))}return o}function hr(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=zl(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let s=a[0],o=s.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((d,u,f)=>{let{paramName:p,isOptional:S}=u;if(p==="*"){let m=l[f]||"";o=s.slice(0,s.length-m.length).replace(/(.)\/+$/,"$1")}const N=l[f];return S&&!N?d[p]=void 0:d[p]=(N||"").replace(/%2F/g,"/"),d},{}),pathname:s,pathnameBase:o,pattern:e}}function zl(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),_e(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,(o,l,c)=>(r.push({paramName:l,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 Hl(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return _e(!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 Ke(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 Kl=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Yl=e=>Kl.test(e);function Gl(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?dt(e):e,s;if(n)if(Yl(n))s=n;else{if(n.includes("//")){let o=n;n=Ha(n),_e(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+n))}n.startsWith("/")?s=qa(n.substring(1),"/"):s=qa(n,t)}else s=t;return{pathname:s,search:Xl(r),hash:Ql(a)}}function qa(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 mr(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 Jl(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Wa(e,t){let n=Jl(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function za(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=dt(e):(a=Mt({},e),ae(!a.pathname||!a.pathname.includes("?"),mr("?","pathname","search",a)),ae(!a.pathname||!a.pathname.includes("#"),mr("#","pathname","hash",a)),ae(!a.search||!a.search.includes("#"),mr("#","search","hash",a)));let s=e===""||a.pathname==="",o=s?"/":a.pathname,l;if(o==null)l=n;else{let f=t.length-1;if(!r&&o.startsWith("..")){let p=o.split("/");for(;p[0]==="..";)p.shift(),f-=1;a.pathname=p.join("/")}l=f>=0?t[f]:"/"}let c=Gl(a,l),d=o&&o!=="/"&&o.endsWith("/"),u=(s||o===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const Ha=e=>e.replace(/\/\/+/g,"/"),qe=e=>Ha(e.join("/")),Zl=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),Xl=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Ql=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Rl(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const Ka=["post","put","patch","delete"];new Set(Ka);const ec=["get",...Ka];new Set(ec);function Bt(){return Bt=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},Bt.apply(null,arguments)}const $t=U.createContext(null);process.env.NODE_ENV!=="production"&&($t.displayName="DataRouter");const gr=U.createContext(null);process.env.NODE_ENV!=="production"&&(gr.displayName="DataRouterState");const tc=U.createContext(null);process.env.NODE_ENV!=="production"&&(tc.displayName="Await");const Te=U.createContext(null);process.env.NODE_ENV!=="production"&&(Te.displayName="Navigation");const jt=U.createContext(null);process.env.NODE_ENV!=="production"&&(jt.displayName="Location");const De=U.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(De.displayName="Route");const yr=U.createContext(null);process.env.NODE_ENV!=="production"&&(yr.displayName="RouteError");function nc(e,t){let{relative:n}=t===void 0?{}:t;ut()||(process.env.NODE_ENV!=="production"?ae(!1,"useHref() may be used only in the context of a <Router> component."):ae(!1));let{basename:r,navigator:a}=U.useContext(Te),{hash:s,pathname:o,search:l}=Vt(e,{relative:n}),c=o;return r!=="/"&&(c=o==="/"?r:qe([r,o])),a.createHref({pathname:c,search:l,hash:s})}function ut(){return U.useContext(jt)!=null}function Re(){return ut()||(process.env.NODE_ENV!=="production"?ae(!1,"useLocation() may be used only in the context of a <Router> component."):ae(!1)),U.useContext(jt).location}const Ya="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Ga(e){U.useContext(Te).static||U.useLayoutEffect(e)}function Ye(){let{isDataRoute:e}=U.useContext(De);return e?gc():rc()}function rc(){ut()||(process.env.NODE_ENV!=="production"?ae(!1,"useNavigate() may be used only in the context of a <Router> component."):ae(!1));let e=U.useContext($t),{basename:t,future:n,navigator:r}=U.useContext(Te),{matches:a}=U.useContext(De),{pathname:s}=Re(),o=JSON.stringify(Wa(a,n.v7_relativeSplatPath)),l=U.useRef(!1);return Ga(()=>{l.current=!0}),U.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&_e(l.current,Ya),!l.current)return;if(typeof d=="number"){r.go(d);return}let f=za(d,JSON.parse(o),s,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,o,s,e])}function bn(){let{matches:e}=U.useContext(De),t=e[e.length-1];return t?t.params:{}}function Vt(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=U.useContext(Te),{matches:a}=U.useContext(De),{pathname:s}=Re(),o=JSON.stringify(Wa(a,r.v7_relativeSplatPath));return U.useMemo(()=>za(e,JSON.parse(o),s,n==="path"),[e,o,s,n])}function ac(e,t){return sc(e,t)}function sc(e,t,n,r){ut()||(process.env.NODE_ENV!=="production"?ae(!1,"useRoutes() may be used only in the context of a <Router> component."):ae(!1));let{navigator:a}=U.useContext(Te),{matches:s}=U.useContext(De),o=s[s.length-1],l=o?o.params:{},c=o?o.pathname:"/",d=o?o.pathnameBase:"/",u=o&&o.route;if(process.env.NODE_ENV!=="production"){let h=u&&u.path||"";Xa(c,!u||h.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+h+'">) 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(k,o){typeof exports=="object"&&typeof module<"u"?o(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"],o):(k=typeof globalThis<"u"?globalThis:k||self,o(k.ComplaintApp={},k["react/jsx-runtime"],k.React,k.ReactDOM,k.ReactRedux,k.RTK))})(this,(function(k,o,S,i0,X,ie){"use strict";var br=typeof document<"u"?document.currentScript:null;function Xl(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 U=Xl(S);function Ut(){return Ut=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},Ut.apply(null,arguments)}var Ke;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Ke||(Ke={}));const es="popstate";function Ql(e){e===void 0&&(e={});function t(r,a){let{pathname:s,search:i,hash:l}=r.location;return Sr("",{pathname:s,search:i,hash:l},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:$t(a)}return ec(t,n,null,e)}function ae(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ae(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Rl(){return Math.random().toString(36).substr(2,8)}function ts(e,t){return{usr:e.state,key:e.key,idx:t}}function Sr(e,t,n,r){return n===void 0&&(n=null),Ut({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?ht(t):t,{state:n,key:t&&t.key||r||Rl()})}function $t(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 ht(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 ec(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:s=!1}=r,i=a.history,l=Ke.Pop,c=null,d=u();d==null&&(d=0,i.replaceState(Ut({},i.state,{idx:d}),""));function u(){return(i.state||{idx:null}).idx}function f(){l=Ke.Pop;let m=u(),y=m==null?null:m-d;d=m,c&&c({action:l,location:h.location,delta:y})}function p(m,y){l=Ke.Push;let C=Sr(h.location,m,y);d=u()+1;let E=ts(C,d),N=h.createHref(C);try{i.pushState(E,"",N)}catch(O){if(O instanceof DOMException&&O.name==="DataCloneError")throw O;a.location.assign(N)}s&&c&&c({action:l,location:h.location,delta:1})}function g(m,y){l=Ke.Replace;let C=Sr(h.location,m,y);d=u();let E=ts(C,d),N=h.createHref(C);i.replaceState(E,"",N),s&&c&&c({action:l,location:h.location,delta:0})}function v(m){let y=a.location.origin!=="null"?a.location.origin:a.location.href,C=typeof m=="string"?m:$t(m);return C=C.replace(/ $/,"%20"),ae(y,"No window.location.(origin|href) available to create URL for href: "+C),new URL(C,y)}let h={get action(){return l},get location(){return e(a,i)},listen(m){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(es,f),c=m,()=>{a.removeEventListener(es,f),c=null}},createHref(m){return t(a,m)},createURL:v,encodeLocation(m){let y=v(m);return{pathname:y.pathname,search:y.search,hash:y.hash}},push:p,replace:g,go(m){return i.go(m)}};return h}var ns;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(ns||(ns={}));function tc(e,t,n){return n===void 0&&(n="/"),nc(e,t,n)}function nc(e,t,n,r){let a=typeof t=="string"?ht(t):t,s=Ye(a.pathname||"/",n);if(s==null)return null;let i=rs(e);rc(i);let l=null,c=hc(s);for(let d=0;l==null&&d<i.length;++d)l=fc(i[d],c);return l}function rs(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(s,i,l)=>{let c={relativePath:l===void 0?s.path||"":l,caseSensitive:s.caseSensitive===!0,childrenIndex:i,route:s};c.relativePath.startsWith("/")&&(ae(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);s.children&&s.children.length>0&&(ae(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),rs(s.children,t,u,d)),!(s.path==null&&!s.index)&&t.push({path:d,score:dc(d,s.index),routesMeta:u})};return e.forEach((s,i)=>{var l;if(s.path===""||!((l=s.path)!=null&&l.includes("?")))a(s,i);else for(let c of as(s.path))a(s,i,c)}),t}function as(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return a?[s,""]:[s];let i=as(r.join("/")),l=[];return l.push(...i.map(c=>c===""?s:[s,c].join("/"))),a&&l.push(...i),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function rc(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:uc(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const ac=/^:[\w-]+$/,sc=3,oc=2,ic=1,lc=10,cc=-2,ss=e=>e==="*";function dc(e,t){let n=e.split("/"),r=n.length;return n.some(ss)&&(r+=cc),t&&(r+=oc),n.filter(a=>!ss(a)).reduce((a,s)=>a+(ac.test(s)?sc:s===""?ic:lc),r)}function uc(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={},s="/",i=[];for(let l=0;l<r.length;++l){let c=r[l],d=l===r.length-1,u=s==="/"?t:t.slice(s.length)||"/",f=vr({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),p=c.route;if(!f)return null;Object.assign(a,f.params),i.push({params:a,pathname:qe([s,f.pathname]),pathnameBase:Sc(qe([s,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(s=qe([s,f.pathnameBase]))}return i}function vr(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=pc(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let s=a[0],i=s.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((d,u,f)=>{let{paramName:p,isOptional:g}=u;if(p==="*"){let h=l[f]||"";i=s.slice(0,s.length-h.length).replace(/(.)\/+$/,"$1")}const v=l[f];return g&&!v?d[p]=void 0:d[p]=(v||"").replace(/%2F/g,"/"),d},{}),pathname:s,pathnameBase:i,pattern:e}}function pc(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Ae(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,(i,l,c)=>(r.push({paramName:l,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 hc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Ae(!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 Ye(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 mc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,gc=e=>mc.test(e);function yc(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?ht(e):e,s;if(n)if(gc(n))s=n;else{if(n.includes("//")){let i=n;n=cs(n),Ae(!1,"Pathnames cannot have embedded double slashes - normalizing "+(i+" -> "+n))}n.startsWith("/")?s=os(n.substring(1),"/"):s=os(n,t)}else s=t;return{pathname:s,search:vc(r),hash:wc(a)}}function os(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 wr(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 bc(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function is(e,t){let n=bc(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function ls(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=ht(e):(a=Ut({},e),ae(!a.pathname||!a.pathname.includes("?"),wr("?","pathname","search",a)),ae(!a.pathname||!a.pathname.includes("#"),wr("#","pathname","hash",a)),ae(!a.search||!a.search.includes("#"),wr("#","search","hash",a)));let s=e===""||a.pathname==="",i=s?"/":a.pathname,l;if(i==null)l=n;else{let f=t.length-1;if(!r&&i.startsWith("..")){let p=i.split("/");for(;p[0]==="..";)p.shift(),f-=1;a.pathname=p.join("/")}l=f>=0?t[f]:"/"}let c=yc(a,l),d=i&&i!=="/"&&i.endsWith("/"),u=(s||i===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const cs=e=>e.replace(/\/\/+/g,"/"),qe=e=>cs(e.join("/")),Sc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),vc=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,wc=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function Cc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ds=["post","put","patch","delete"];new Set(ds);const Nc=["get",...ds];new Set(Nc);function Bt(){return Bt=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},Bt.apply(null,arguments)}const jt=U.createContext(null);process.env.NODE_ENV!=="production"&&(jt.displayName="DataRouter");const Cr=U.createContext(null);process.env.NODE_ENV!=="production"&&(Cr.displayName="DataRouterState");const _c=U.createContext(null);process.env.NODE_ENV!=="production"&&(_c.displayName="Await");const ke=U.createContext(null);process.env.NODE_ENV!=="production"&&(ke.displayName="Navigation");const Vt=U.createContext(null);process.env.NODE_ENV!=="production"&&(Vt.displayName="Location");const Ue=U.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(Ue.displayName="Route");const Nr=U.createContext(null);process.env.NODE_ENV!=="production"&&(Nr.displayName="RouteError");function Ec(e,t){let{relative:n}=t===void 0?{}:t;mt()||(process.env.NODE_ENV!=="production"?ae(!1,"useHref() may be used only in the context of a <Router> component."):ae(!1));let{basename:r,navigator:a}=U.useContext(ke),{hash:s,pathname:i,search:l}=Wt(e,{relative:n}),c=i;return r!=="/"&&(c=i==="/"?r:qe([r,i])),a.createHref({pathname:c,search:l,hash:s})}function mt(){return U.useContext(Vt)!=null}function nt(){return mt()||(process.env.NODE_ENV!=="production"?ae(!1,"useLocation() may be used only in the context of a <Router> component."):ae(!1)),U.useContext(Vt).location}const us="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function fs(e){U.useContext(ke).static||U.useLayoutEffect(e)}function We(){let{isDataRoute:e}=U.useContext(Ue);return e?Bc():Ac()}function Ac(){mt()||(process.env.NODE_ENV!=="production"?ae(!1,"useNavigate() may be used only in the context of a <Router> component."):ae(!1));let e=U.useContext(jt),{basename:t,future:n,navigator:r}=U.useContext(ke),{matches:a}=U.useContext(Ue),{pathname:s}=nt(),i=JSON.stringify(is(a,n.v7_relativeSplatPath)),l=U.useRef(!1);return fs(()=>{l.current=!0}),U.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&Ae(l.current,us),!l.current)return;if(typeof d=="number"){r.go(d);return}let f=ls(d,JSON.parse(i),s,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,i,s,e])}function qt(){let{matches:e}=U.useContext(Ue),t=e[e.length-1];return t?t.params:{}}function Wt(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=U.useContext(ke),{matches:a}=U.useContext(Ue),{pathname:s}=nt(),i=JSON.stringify(is(a,r.v7_relativeSplatPath));return U.useMemo(()=>ls(e,JSON.parse(i),s,n==="path"),[e,i,s,n])}function Tc(e,t){return Lc(e,t)}function Lc(e,t,n,r){mt()||(process.env.NODE_ENV!=="production"?ae(!1,"useRoutes() may be used only in the context of a <Router> component."):ae(!1));let{navigator:a}=U.useContext(ke),{matches:s}=U.useContext(Ue),i=s[s.length-1],l=i?i.params:{},c=i?i.pathname:"/",d=i?i.pathnameBase:"/",u=i&&i.route;if(process.env.NODE_ENV!=="production"){let C=u&&u.path||"";ms(c,!u||C.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+C+'">) 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="'+h+'"> to <Route ')+('path="'+(h==="/"?"*":h+"/*")+'">.'))}let f=Re(),p;if(t){var S;let h=typeof t=="string"?dt(t):t;d==="/"||(S=h.pathname)!=null&&S.startsWith(d)||(process.env.NODE_ENV!=="production"?ae(!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 "'+h.pathname+'" was given in the `location` prop.')):ae(!1)),p=h}else p=f;let N=p.pathname||"/",m=N;if(d!=="/"){let h=d.replace(/^\//,"").split("/");m="/"+N.replace(/^\//,"").split("/").slice(h.length).join("/")}let g=kl(e,{pathname:m});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&_e(u||g!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&_e(g==null||g[g.length-1].route.element!==void 0||g[g.length-1].route.Component!==void 0||g[g.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 b=dc(g&&g.map(h=>Object.assign({},h,{params:Object.assign({},l,h.params),pathname:qe([d,a.encodeLocation?a.encodeLocation(h.pathname).pathname:h.pathname]),pathnameBase:h.pathnameBase==="/"?d:qe([d,a.encodeLocation?a.encodeLocation(h.pathnameBase).pathname:h.pathnameBase])})),s,n,r);return t&&b?U.createElement(jt.Provider,{value:{location:Bt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:He.Pop}},b):b}function oc(){let e=mc(),t=Rl(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},s={padding:"2px 4px",backgroundColor:r},o=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),o=U.createElement(U.Fragment,null,U.createElement("p",null,"💿 Hey developer 👋"),U.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",U.createElement("code",{style:s},"ErrorBoundary")," or"," ",U.createElement("code",{style:s},"errorElement")," prop on your route."))),U.createElement(U.Fragment,null,U.createElement("h2",null,"Unexpected Application Error!"),U.createElement("h3",{style:{fontStyle:"italic"}},t),n?U.createElement("pre",{style:a},n):null,o)}const ic=U.createElement(oc,null);class lc extends U.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?U.createElement(De.Provider,{value:this.props.routeContext},U.createElement(yr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function cc(e){let{routeContext:t,match:n,children:r}=e,a=U.useContext($t);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),U.createElement(De.Provider,{value:t},r)}function dc(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let o=e,l=(a=n)==null?void 0:a.errors;if(l!=null){let u=o.findIndex(f=>f.route.id&&l?.[f.route.id]!==void 0);u>=0||(process.env.NODE_ENV!=="production"?ae(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(l).join(",")):ae(!1)),o=o.slice(0,Math.min(o.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<o.length;u++){let f=o[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:S}=n,N=f.route.loader&&p[f.route.id]===void 0&&(!S||S[f.route.id]===void 0);if(f.route.lazy||N){c=!0,d>=0?o=o.slice(0,d+1):o=[o[0]];break}}}return o.reduceRight((u,f,p)=>{let S,N=!1,m=null,g=null;n&&(S=l&&f.route.id?l[f.route.id]:void 0,m=f.route.errorElement||ic,c&&(d<0&&p===0?(Xa("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),N=!0,g=null):d===p&&(N=!0,g=f.route.hydrateFallbackElement||null)));let b=t.concat(o.slice(0,p+1)),h=()=>{let v;return S?v=m:N?v=g:f.route.Component?v=U.createElement(f.route.Component,null):f.route.element?v=f.route.element:v=u,U.createElement(cc,{match:f,routeContext:{outlet:u,matches:b,isDataRoute:n!=null},children:v})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?U.createElement(lc,{location:n.location,revalidation:n.revalidation,component:m,error:S,children:h(),routeContext:{outlet:null,matches:b,isDataRoute:!0}}):h()},null)}var Ja=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(Ja||{}),qt=(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})(qt||{});function br(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function uc(e){let t=U.useContext($t);return t||(process.env.NODE_ENV!=="production"?ae(!1,br(e)):ae(!1)),t}function fc(e){let t=U.useContext(gr);return t||(process.env.NODE_ENV!=="production"?ae(!1,br(e)):ae(!1)),t}function pc(e){let t=U.useContext(De);return t||(process.env.NODE_ENV!=="production"?ae(!1,br(e)):ae(!1)),t}function Sr(e){let t=pc(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?ae(!1,e+' can only be used on routes that contain a unique "id"'):ae(!1)),n.route.id}function hc(){return Sr(qt.UseRouteId)}function mc(){var e;let t=U.useContext(yr),n=fc(qt.UseRouteError),r=Sr(qt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function gc(){let{router:e}=uc(Ja.UseNavigateStable),t=Sr(qt.UseNavigateStable),n=U.useRef(!1);return Ga(()=>{n.current=!0}),U.useCallback(function(a,s){s===void 0&&(s={}),process.env.NODE_ENV!=="production"&&_e(n.current,Ya),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Bt({fromRouteId:t},s)))},[e,t])}const Za={};function Xa(e,t,n){!t&&!Za[e]&&(Za[e]=!0,process.env.NODE_ENV!=="production"&&_e(!1,n))}const Qa={};function yc(e,t){process.env.NODE_ENV!=="production"&&!Qa[t]&&(Qa[t]=!0,console.warn(t))}const Ra=(e,t,n)=>yc(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function bc(e,t){e?.v7_startTransition===void 0&&Ra("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&&Ra("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function Pe(e){process.env.NODE_ENV!=="production"?ae(!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>."):ae(!1)}function Sc(e){let{basename:t="/",children:n=null,location:r,navigationType:a=He.Pop,navigator:s,static:o=!1,future:l}=e;ut()&&(process.env.NODE_ENV!=="production"?ae(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):ae(!1));let c=t.replace(/^\/*/,"/"),d=U.useMemo(()=>({basename:c,navigator:s,static:o,future:Bt({v7_relativeSplatPath:!1},l)}),[c,l,s,o]);typeof r=="string"&&(r=dt(r));let{pathname:u="/",search:f="",hash:p="",state:S=null,key:N="default"}=r,m=U.useMemo(()=>{let g=Ke(u,c);return g==null?null:{location:{pathname:g,search:f,hash:p,state:S,key:N},navigationType:a}},[c,u,f,p,S,N,a]);return process.env.NODE_ENV!=="production"&&_e(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:U.createElement(Te.Provider,{value:d},U.createElement(jt.Provider,{children:n,value:m}))}function vc(e){let{children:t,location:n}=e;return ac(vr(t),n)}new Promise(()=>{});function vr(e,t){t===void 0&&(t=[]);let n=[];return U.Children.forEach(e,(r,a)=>{if(!U.isValidElement(r))return;let s=[...t,a];if(r.type===U.Fragment){n.push.apply(n,vr(r.props.children,s));return}r.type!==Pe&&(process.env.NODE_ENV!=="production"?ae(!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>"):ae(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?ae(!1,"An index route cannot have child routes."):ae(!1));let o={id:r.props.id||s.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&&(o.children=vr(r.props.children,s)),n.push(o)}),n}function ft(){return ft=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},ft.apply(null,arguments)}function wr(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 Sn="get",vn="application/x-www-form-urlencoded";function wn(e){return e!=null&&typeof e.tagName=="string"}function wc(e){return wn(e)&&e.tagName.toLowerCase()==="button"}function Cc(e){return wn(e)&&e.tagName.toLowerCase()==="form"}function Nc(e){return wn(e)&&e.tagName.toLowerCase()==="input"}function _c(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Ec(e,t){return e.button===0&&(!t||t==="_self")&&!_c(e)}function Cr(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 Ac(e,t){let n=Cr(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(s=>{n.append(a,s)})}),n}let Cn=null;function Lc(){if(Cn===null)try{new FormData(document.createElement("form"),0),Cn=!1}catch{Cn=!0}return Cn}const Tc=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Nr(e){return e!=null&&!Tc.has(e)?(process.env.NODE_ENV!=="production"&&_e(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+vn+'"')),null):e}function Fc(e,t){let n,r,a,s,o;if(Cc(e)){let l=e.getAttribute("action");r=l?Ke(l,t):null,n=e.getAttribute("method")||Sn,a=Nr(e.getAttribute("enctype"))||vn,s=new FormData(e)}else if(wc(e)||Nc(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||l.getAttribute("action");if(r=c?Ke(c,t):null,n=e.getAttribute("formmethod")||l.getAttribute("method")||Sn,a=Nr(e.getAttribute("formenctype"))||Nr(l.getAttribute("enctype"))||vn,s=new FormData(l,e),!Lc()){let{name:d,type:u,value:f}=e;if(u==="image"){let p=d?d+".":"";s.append(p+"x","0"),s.append(p+"y","0")}else d&&s.append(d,f)}}else{if(wn(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Sn,r=null,a=vn,o=e}return s&&a==="text/plain"&&(o=s,s=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:s,body:o}}const Ic=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Oc=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],kc=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],xc="6";try{window.__reactRouterVersion=xc}catch{}const es=U.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(es.displayName="ViewTransition");const Dc=U.createContext(new Map);process.env.NODE_ENV!=="production"&&(Dc.displayName="Fetchers");const ts=U["startTransition"];function Pc(e){let{basename:t,children:n,future:r,window:a}=e,s=U.useRef();s.current==null&&(s.current=Fl({window:a,v5Compat:!0}));let o=s.current,[l,c]=U.useState({action:o.action,location:o.location}),{v7_startTransition:d}=r||{},u=U.useCallback(f=>{d&&ts?ts(()=>c(f)):c(f)},[c,d]);return U.useLayoutEffect(()=>o.listen(u),[o,u]),U.useEffect(()=>bc(r),[r]),U.createElement(Sc,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:o,future:r})}process.env.NODE_ENV;const Mc=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Uc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,ns=U.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:s,replace:o,state:l,target:c,to:d,preventScrollReset:u,viewTransition:f}=t,p=wr(t,Ic),{basename:S}=U.useContext(Te),N,m=!1;if(typeof d=="string"&&Uc.test(d)&&(N=d,Mc))try{let v=new URL(window.location.href),_=d.startsWith("//")?new URL(v.protocol+d):new URL(d),B=Ke(_.pathname,S);_.origin===v.origin&&B!=null?d=B+_.search+_.hash:m=!0}catch{process.env.NODE_ENV!=="production"&&_e(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let g=nc(d,{relative:a}),b=Vc(d,{replace:o,state:l,target:c,preventScrollReset:u,relative:a,viewTransition:f});function h(v){r&&r(v),v.defaultPrevented||b(v)}return U.createElement("a",ft({},p,{href:N||g,onClick:m||s?r:h,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(ns.displayName="Link");const Bc=U.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:s="",end:o=!1,style:l,to:c,viewTransition:d,children:u}=t,f=wr(t,Oc),p=Vt(c,{relative:f.relative}),S=Re(),N=U.useContext(gr),{navigator:m,basename:g}=U.useContext(Te),b=N!=null&&Yc(p)&&d===!0,h=m.encodeLocation?m.encodeLocation(p).pathname:p.pathname,v=S.pathname,_=N&&N.navigation&&N.navigation.location?N.navigation.location.pathname:null;a||(v=v.toLowerCase(),_=_?_.toLowerCase():null,h=h.toLowerCase()),_&&g&&(_=Ke(_,g)||_);const B=h!=="/"&&h.endsWith("/")?h.length-1:h.length;let O=v===h||!o&&v.startsWith(h)&&v.charAt(B)==="/",Q=_!=null&&(_===h||!o&&_.startsWith(h)&&_.charAt(h.length)==="/"),G={isActive:O,isPending:Q,isTransitioning:b},k=O?r:void 0,I;typeof s=="function"?I=s(G):I=[s,O?"active":null,Q?"pending":null,b?"transitioning":null].filter(Boolean).join(" ");let K=typeof l=="function"?l(G):l;return U.createElement(ns,ft({},f,{"aria-current":k,className:I,ref:n,style:K,to:c,viewTransition:d}),typeof u=="function"?u(G):u)});process.env.NODE_ENV!=="production"&&(Bc.displayName="NavLink");const $c=U.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:s,state:o,method:l=Sn,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,S=wr(e,kc),N=Hc(),m=Kc(c,{relative:u}),g=l.toLowerCase()==="get"?"get":"post",b=h=>{if(d&&d(h),h.defaultPrevented)return;h.preventDefault();let v=h.nativeEvent.submitter,_=v?.getAttribute("formmethod")||l;N(v||h.currentTarget,{fetcherKey:n,method:_,navigate:r,replace:s,state:o,relative:u,preventScrollReset:f,viewTransition:p})};return U.createElement("form",ft({ref:t,method:g,action:m,onSubmit:a?d:b},S))});process.env.NODE_ENV!=="production"&&($c.displayName="Form"),process.env.NODE_ENV;var Nn;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Nn||(Nn={}));var rs;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(rs||(rs={}));function jc(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function as(e){let t=U.useContext($t);return t||(process.env.NODE_ENV!=="production"?ae(!1,jc(e)):ae(!1)),t}function Vc(e,t){let{target:n,replace:r,state:a,preventScrollReset:s,relative:o,viewTransition:l}=t===void 0?{}:t,c=Ye(),d=Re(),u=Vt(e,{relative:o});return U.useCallback(f=>{if(Ec(f,n)){f.preventDefault();let p=r!==void 0?r:Ut(d)===Ut(u);c(e,{replace:p,state:a,preventScrollReset:s,relative:o,viewTransition:l})}},[d,c,u,r,a,n,e,s,o,l])}function ss(e){process.env.NODE_ENV!=="production"&&_e(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=U.useRef(Cr(e)),n=U.useRef(!1),r=Re(),a=U.useMemo(()=>Ac(r.search,n.current?null:t.current),[r.search]),s=Ye(),o=U.useCallback((l,c)=>{const d=Cr(typeof l=="function"?l(a):l);n.current=!0,s("?"+d,c)},[s,a]);return[a,o]}function qc(){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 Wc=0,zc=()=>"__"+String(++Wc)+"__";function Hc(){let{router:e}=as(Nn.UseSubmit),{basename:t}=U.useContext(Te),n=hc();return U.useCallback(function(r,a){a===void 0&&(a={}),qc();let{action:s,method:o,encType:l,formData:c,body:d}=Fc(r,t);if(a.navigate===!1){let u=a.fetcherKey||zc();e.fetch(u,n,a.action||s,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||o,formEncType:a.encType||l,flushSync:a.flushSync})}else e.navigate(a.action||s,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||o,formEncType:a.encType||l,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,n])}function Kc(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=U.useContext(Te),a=U.useContext(De);a||(process.env.NODE_ENV!=="production"?ae(!1,"useFormAction must be used inside a RouteContext"):ae(!1));let[s]=a.matches.slice(-1),o=ft({},Vt(e||".",{relative:n})),l=Re();if(e==null){o.search=l.search;let c=new URLSearchParams(o.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();o.search=f?"?"+f:""}}return(!e||e===".")&&s.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:qe([r,o.pathname])),Ut(o)}function Yc(e,t){t===void 0&&(t={});let n=U.useContext(es);n==null&&(process.env.NODE_ENV!=="production"?ae(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):ae(!1));let{basename:r}=as(Nn.useViewTransitionState),a=Vt(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=Ke(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=Ke(n.nextLocation.pathname,r)||n.nextLocation.pathname;return hr(a.pathname,o)!=null||hr(a.pathname,s)!=null}function os(e,t){return function(){return e.apply(t,arguments)}}const{toString:Gc}=Object.prototype,{getPrototypeOf:pt}=Object,{iterator:Wt,toStringTag:is}=Symbol,_n=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),zt=(e,t)=>{let n=e;const r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),_n(n,t))return!0;n=pt(n)}return!1},Jc=(e,t)=>e!=null&&zt(e,t)?e[t]:void 0,_r=(e=>t=>{const n=Gc.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ee=e=>(e=e.toLowerCase(),t=>_r(t)===e),En=e=>t=>typeof t===e,{isArray:et}=Array,tt=En("undefined");function ht(e){return e!==null&&!tt(e)&&e.constructor!==null&&!tt(e.constructor)&&Se(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const ls=Ee("ArrayBuffer");function Zc(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ls(e.buffer),t}const Xc=En("string"),Se=En("function"),cs=En("number"),mt=e=>e!==null&&typeof e=="object",Qc=e=>e===!0||e===!1,An=e=>{if(!mt(e))return!1;const t=pt(e);return(t===null||t===Object.prototype||pt(t)===null)&&!zt(e,is)&&!zt(e,Wt)},Rc=e=>{if(!mt(e)||ht(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},ed=Ee("Date"),td=Ee("File"),nd=e=>!!(e&&typeof e.uri<"u"),rd=e=>e&&typeof e.getParts<"u",ad=Ee("Blob"),sd=Ee("FileList"),od=Ee("Set"),id=e=>mt(e)&&Se(e.pipe);function ld(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const ds=ld(),us=typeof ds.FormData<"u"?ds.FormData:void 0,cd=e=>{if(!e)return!1;if(us&&e instanceof us)return!0;const t=pt(e);if(!t||t===Object.prototype||!Se(e.append))return!1;const n=_r(e);return n==="formdata"||n==="object"&&Se(e.toString)&&e.toString()==="[object FormData]"},dd=Ee("URLSearchParams"),[ud,fd,pd,hd]=["ReadableStream","Request","Response","Headers"].map(Ee),md=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ht(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,a;if(typeof e!="object"&&(e=[e]),et(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(ht(e))return;const s=n?Object.getOwnPropertyNames(e):Object.keys(e),o=s.length;let l;for(r=0;r<o;r++)l=s[r],t.call(null,e[l],l,e)}}function fs(e,t){if(ht(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 nt=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,ps=e=>!tt(e)&&e!==nt;function Er(...e){const{caseless:t,skipUndefined:n}=ps(this)&&this||{},r={},a=(s,o)=>{if(o==="__proto__"||o==="constructor"||o==="prototype")return;const l=t&&typeof o=="string"&&fs(r,o)||o,c=_n(r,l)?r[l]:void 0;An(c)&&An(s)?r[l]=Er(c,s):An(s)?r[l]=Er({},s):et(s)?r[l]=s.slice():(!n||!tt(s))&&(r[l]=s)};for(let s=0,o=e.length;s<o;s++){const l=e[s];if(!l||ht(l)||(Ht(l,a),typeof l!="object"||et(l)))continue;const c=Object.getOwnPropertySymbols(l);for(let d=0;d<c.length;d++){const u=c[d];Ld.call(l,u)&&a(l[u],u)}}return r}const gd=(e,t,n,{allOwnKeys:r}={})=>(Ht(t,(a,s)=>{n&&Se(a)?Object.defineProperty(e,s,{__proto__:null,value:os(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,s,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),yd=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),bd=(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)},Sd=(e,t,n,r)=>{let a,s,o;const l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)o=a[s],(!r||r(o,e,t))&&!l[o]&&(t[o]=e[o],l[o]=!0);e=n!==!1&&pt(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},vd=(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},wd=e=>{if(!e)return null;if(et(e))return e;let t=e.length;if(!cs(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Cd=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&pt(Uint8Array)),Nd=(e,t)=>{const r=(e&&e[Wt]).call(e);let a;for(;(a=r.next())&&!a.done;){const s=a.value;t.call(e,s[0],s[1])}},_d=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Ed=Ee("HTMLFormElement"),Ad=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:Ld}=Object.prototype,Td=Ee("RegExp"),hs=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Ht(n,(a,s)=>{let o;(o=t(a,s,e))!==!1&&(r[s]=o||a)}),Object.defineProperties(e,r)},Fd=e=>{hs(e,(t,n)=>{if(Se(e)&&["arguments","caller","callee"].includes(n))return!1;const r=e[n];if(Se(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+"'")})}})},Id=(e,t)=>{const n={},r=a=>{a.forEach(s=>{n[s]=!0})};return et(e)?r(e):r(String(e).split(t)),n},Od=()=>{},kd=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function xd(e){return!!(e&&Se(e.append)&&e[is]==="FormData"&&e[Wt])}const Dd=e=>{const t=new WeakSet,n=r=>{if(mt(r)){if(t.has(r))return;if(ht(r))return r;if(!("toJSON"in r)){t.add(r);let a;if(od(r)){a=[];for(const s of r){const o=n(s);!tt(o)&&a.push(o)}}else a=et(r)?[]:{},Ht(r,(s,o)=>{const l=n(s);!tt(l)&&(a[o]=l)});return t.delete(r),a}}return r};return n(e)},Pd=Ee("AsyncFunction"),Md=e=>e&&(mt(e)||Se(e))&&Se(e.then)&&Se(e.catch),ms=((e,t)=>e?setImmediate:t?((n,r)=>(nt.addEventListener("message",({source:a,data:s})=>{a===nt&&s===n&&r.length&&r.shift()()},!1),a=>{r.push(a),nt.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",Se(nt.postMessage)),Ud=typeof queueMicrotask<"u"?queueMicrotask.bind(nt):typeof process<"u"&&process.nextTick||ms,gs=e=>e!=null&&Se(e[Wt]),y={isArray:et,isArrayBuffer:ls,isBuffer:ht,isFormData:cd,isArrayBufferView:Zc,isString:Xc,isNumber:cs,isBoolean:Qc,isObject:mt,isPlainObject:An,isEmptyObject:Rc,isReadableStream:ud,isRequest:fd,isResponse:pd,isHeaders:hd,isUndefined:tt,isDate:ed,isFile:td,isReactNativeBlob:nd,isReactNative:rd,isBlob:ad,isRegExp:Td,isFunction:Se,isStream:id,isURLSearchParams:dd,isTypedArray:Cd,isFileList:sd,forEach:Ht,merge:Er,extend:gd,trim:md,stripBOM:yd,inherits:bd,toFlatObject:Sd,kindOf:_r,kindOfTest:Ee,endsWith:vd,toArray:wd,forEachEntry:Nd,matchAll:_d,isHTMLForm:Ed,hasOwnProperty:_n,hasOwnProp:_n,hasOwnInPrototypeChain:zt,getSafeProp:Jc,reduceDescriptors:hs,freezeMethods:Fd,toObjectSet:Id,toCamelCase:Ad,noop:Od,toFiniteNumber:kd,findKey:fs,global:nt,isContextDefined:ps,isSpecCompliantForm:xd,toJSONObject:Dd,isAsyncFn:Pd,isThenable:Md,setImmediate:ms,asap:Ud,isIterable:gs,isSafeIterable:e=>e!=null&&zt(e,Wt)&&gs(e)},Bd=y.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"]),$d=e=>{const t={};let n,r,a;return e&&e.split(`
4
- `).forEach(function(o){a=o.indexOf(":"),n=o.substring(0,a).trim().toLowerCase(),r=o.substring(a+1).trim();const l=y.hasOwnProp(t,n);!n||l&&y.hasOwnProp(Bd,n)||(n==="set-cookie"?l?t[n].push(r):t[n]=[r]:t[n]=l?t[n]+", "+r:r)}),t};function jd(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 Vd=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),qd=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function Ar(e,t){return y.isArray(e)?e.map(n=>Ar(n,t)):jd(String(e).replace(t,""))}const Wd=e=>Ar(e,Vd),zd=e=>Ar(e,qd);function ys(e){const t=Object.create(null);return y.forEach(e.toJSON(),(n,r)=>{t[r]=zd(n)}),t}const bs=Symbol("internals");function Kt(e){return e&&String(e).trim().toLowerCase()}function Ln(e){return e===!1||e==null?e:y.isArray(e)?e.map(Ln):Wd(String(e))}function Hd(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 Kd=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Lr(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 Yd(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 Gd(e){const t=Object.create(null),n=String(e);let r=0,a=!1,s=!1;function o(l){const c=Lr(n.slice(r,l)),d=c.indexOf("=");if(d<1)return;const u=Lr(c.slice(0,d));if(!Kd.test(u))return;const f=u.toLowerCase();if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=Lr(c.slice(d+1));t[f]=Yd(p)}for(let l=0;l<n.length;l++){const c=n.charCodeAt(l);a?s?s=!1:c===92?s=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(o(l),r=l+1)}return o(n.length),t}const Jd=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function Tr(e,t,n,r,a){if(y.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!y.isString(t)){if(y.isString(r))return t.indexOf(r)!==-1;if(y.isRegExp(r))return r.test(t)}}function Zd(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function Xd(e,t){const n=y.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(a,s,o){return this[r].call(this,t,a,s,o)},configurable:!0})})}let me=class{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function s(l,c,d){const u=Kt(c);if(!u)return;const f=y.findKey(a,u);(!f||a[f]===void 0||d===!0||d===void 0&&a[f]!==!1)&&(a[f||c]=Ln(l))}const o=(l,c)=>y.forEach(l,(d,u)=>s(d,u,c));if(y.isPlainObject(t)||t instanceof this.constructor)o(t,n);else if(y.isString(t)&&(t=t.trim())&&!Jd(t))o($d(t),n);else if(y.isObject(t)&&y.isSafeIterable(t)){let l=Object.create(null),c,d;for(const u of t){if(!y.isArray(u))throw new TypeError("Object iterator must return a key-value pair");d=u[0],y.hasOwnProp(l,d)?(c=l[d],l[d]=y.isArray(c)?[...c,u[1]]:[c,u[1]]):l[d]=u[1]}o(l,n)}else t!=null&&s(n,t,r);return this}get(t,n){if(t=Kt(t),t){const r=y.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return Hd(a);if(y.isFunction(n))return n.call(this,a,r);if(y.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Kt(t),t){const r=y.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||Tr(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function s(o){if(o=Kt(o),o){const l=y.findKey(r,o);l&&(!n||Tr(r,r[l],l,n))&&(delete r[l],a=!0)}}return y.isArray(t)?t.forEach(s):s(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const s=n[r];(!t||Tr(this,this[s],s,t,!0))&&(delete this[s],a=!0)}return a}normalize(t){const n=this,r={};return y.forEach(this,(a,s)=>{const o=y.findKey(r,s);if(o){n[o]=Ln(a),delete n[s];return}const l=t?Zd(s):String(s).trim();l!==s&&delete n[s],n[l]=Ln(a),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return y.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&y.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 y.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 Gd(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[bs]=this[bs]={accessors:{}}).accessors,a=this.prototype;function s(o){const l=Kt(o);r[l]||(Xd(a,o),r[l]=!0)}return y.isArray(t)?t.forEach(s):s(t),this}};me.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),y.reduceDescriptors(me.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),y.freezeMethods(me);const Tn="[REDACTED ****]";function Qd(e){if(y.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(y.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function Rd(e,t){const n=new Set(t.map(s=>String(s).toLowerCase())),r=[],a=s=>{if(s===null||typeof s!="object"||y.isBuffer(s))return s;if(r.indexOf(s)!==-1)return;s instanceof me&&(s=s.toJSON()),r.push(s);let o;if(y.isArray(s))o=[],s.forEach((l,c)=>{const d=a(l);y.isUndefined(d)||(o[c]=d)});else{if(!y.isPlainObject(s)&&Qd(s))return r.pop(),s;o=Object.create(null);for(const[l,c]of Object.entries(s)){const d=n.has(l.toLowerCase())?Tn:a(c);y.isUndefined(d)||(o[l]=d)}}return r.pop(),o};return a(e)}function Ss(e){try{return String(e)}catch{return""}}function eu(e){return e.errors.map(n=>{try{return n&&n.message?Ss(n.message):Ss(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let q=class Al extends Error{static from(t,n,r,a,s,o){let l=t.message;!l&&y.isArray(t.errors)&&t.errors.length&&(l=eu(t));const c=new Al(l,n||t.code,r,a,s);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),o&&Object.assign(c,o),c}constructor(t,n,r,a,s){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),s&&(this.response=s,this.status=s.status)}toJSON(){const t=this.config,n=t&&y.hasOwnProp(t,"redact")?t.redact:void 0,r=y.isArray(n)&&n.length>0?Rd(t,n):y.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}}};q.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",q.ERR_BAD_OPTION="ERR_BAD_OPTION",q.ECONNABORTED="ECONNABORTED",q.ETIMEDOUT="ETIMEDOUT",q.ECONNREFUSED="ECONNREFUSED",q.ERR_NETWORK="ERR_NETWORK",q.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",q.ERR_DEPRECATED="ERR_DEPRECATED",q.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",q.ERR_BAD_REQUEST="ERR_BAD_REQUEST",q.ERR_CANCELED="ERR_CANCELED",q.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",q.ERR_INVALID_URL="ERR_INVALID_URL",q.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const tu=null,vs=100;function Fr(e){return y.isPlainObject(e)||y.isArray(e)}function ws(e){return y.endsWith(e,"[]")?e.slice(0,-2):e}function Ir(e,t,n){return e?e.concat(t).map(function(a,s){return a=ws(a),!n&&s?"["+a+"]":a}).join(n?".":""):t}function nu(e){return y.isArray(e)&&!e.some(Fr)}const ru=y.toFlatObject(y,{},null,function(t){return/^is[A-Z]/.test(t)});function Fn(e,t,n){if(!y.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=y.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(h,v){return!y.isUndefined(v[h])});const r=n.metaTokens,a=n.visitor||N,s=n.dots,o=n.indexes,l=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?vs:n.maxDepth,d=l&&y.isSpecCompliantForm(t),u=[];if(!y.isFunction(a))throw new TypeError("visitor must be a function");function f(b){if(b===null)return"";if(y.isDate(b))return b.toISOString();if(y.isBoolean(b))return b.toString();if(!d&&y.isBlob(b))throw new q("Blob is not supported. Use a Buffer instead.");if(y.isArrayBuffer(b)||y.isTypedArray(b)){if(d&&typeof l=="function")return new l([b]);throw new q("Blob is not supported. Use a Buffer instead.",q.ERR_NOT_SUPPORT)}return b}function p(b){if(b>c)throw new q("Object is too deeply nested ("+b+" levels). Max depth: "+c,q.ERR_FORM_DATA_DEPTH_EXCEEDED)}function S(b,h){if(c===1/0)return JSON.stringify(b);const v=[];return JSON.stringify(b,function(B,O){if(!y.isObject(O))return O;for(;v.length&&v[v.length-1]!==this;)v.pop();return v.push(O),p(h+v.length-1),O})}function N(b,h,v){let _=b;if(y.isReactNative(t)&&y.isReactNativeBlob(b))return t.append(Ir(v,h,s),f(b)),!1;if(b&&!v&&typeof b=="object"){if(y.endsWith(h,"{}"))h=r?h:h.slice(0,-2),b=S(b,1);else if(y.isArray(b)&&nu(b)||(y.isFileList(b)||y.endsWith(h,"[]"))&&(_=y.toArray(b)))return h=ws(h),_.forEach(function(O,Q){!(y.isUndefined(O)||O===null)&&t.append(o===!0?Ir([h],Q,s):o===null?h:h+"[]",f(O))}),!1}return Fr(b)?!0:(t.append(Ir(v,h,s),f(b)),!1)}const m=Object.assign(ru,{defaultVisitor:N,convertValue:f,isVisitable:Fr});function g(b,h,v=0){if(!y.isUndefined(b)){if(p(v),u.indexOf(b)!==-1)throw new Error("Circular reference detected in "+h.join("."));u.push(b),y.forEach(b,function(B,O){(!(y.isUndefined(B)||B===null)&&a.call(t,B,y.isString(O)?O.trim():O,h,m))===!0&&g(B,h?h.concat(O):[O],v+1)}),u.pop()}}if(!y.isObject(e))throw new TypeError("data must be an object");return g(e),t}function Cs(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Or(e,t){this._pairs=[],e&&Fn(e,this,t)}const Ns=Or.prototype;Ns.append=function(t,n){this._pairs.push([t,n])},Ns.toString=function(t){const n=t?r=>t.call(this,r,Cs):Cs;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function au(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function _s(e,t,n){if(!t)return e;e=e||"";const r=y.isFunction(n)?{serialize:n}:n,a=y.getSafeProp(r,"encode")||au,s=y.getSafeProp(r,"serialize");let o;if(s?o=s(t,r):o=y.isURLSearchParams(t)?t.toString():new Or(t,r).toString(a),o){const l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class Es{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){y.forEach(this.handlers,function(r){r!==null&&t(r)})}}const kr={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},su={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Or,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},xr=typeof window<"u"&&typeof document<"u",Dr=typeof navigator=="object"&&navigator||void 0,ou=xr&&(!Dr||["ReactNative","NativeScript","NS"].indexOf(Dr.product)<0),iu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",lu=xr&&window.location.href||"http://localhost",he={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:xr,hasStandardBrowserEnv:ou,hasStandardBrowserWebWorkerEnv:iu,navigator:Dr,origin:lu},Symbol.toStringTag,{value:"Module"})),...su};function cu(e,t){return Fn(e,new he.classes.URLSearchParams,{visitor:function(n,r,a,s){return he.isNode&&y.isBuffer(n)?(this.append(r,n.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}const As=vs;function Ls(e){if(e>As)throw new q("FormData field is too deeply nested ("+e+" levels). Max depth: "+As,q.ERR_FORM_DATA_DEPTH_EXCEEDED)}function du(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Ls(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function uu(e){const t={},n=Object.keys(e);let r;const a=n.length;let s;for(r=0;r<a;r++)s=n[r],t[s]=e[s];return t}function Ts(e){function t(n,r,a,s){Ls(s);let o=n[s++];if(o==="__proto__")return!0;const l=Number.isFinite(+o),c=s>=n.length;return o=!o&&y.isArray(a)?a.length:o,c?(y.hasOwnProp(a,o)?a[o]=y.isArray(a[o])?a[o].concat(r):[a[o],r]:a[o]=r,!l):((!y.hasOwnProp(a,o)||!y.isObject(a[o]))&&(a[o]=[]),t(n,r,a[o],s)&&y.isArray(a[o])&&(a[o]=uu(a[o])),!l)}if(y.isFormData(e)&&y.isFunction(e.entries)){const n={};return y.forEachEntry(e,(r,a)=>{t(du(r),a,n,0)}),n}return null}const gt=(e,t)=>e!=null&&y.hasOwnProp(e,t)?e[t]:void 0;function fu(e,t,n){if(y.isString(e))try{return(t||JSON.parse)(e),y.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Yt={transitional:kr,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,s=y.isObject(t);if(s&&y.isHTMLForm(t)&&(t=new FormData(t)),y.isFormData(t))return a?JSON.stringify(Ts(t)):t;if(y.isArrayBuffer(t)||y.isBuffer(t)||y.isStream(t)||y.isFile(t)||y.isBlob(t)||y.isReadableStream(t))return t;if(y.isArrayBufferView(t))return t.buffer;if(y.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){const c=gt(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return cu(t,c).toString();if((l=y.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=gt(this,"env"),u=d&&d.FormData;return Fn(l?{"files[]":t}:t,u&&new u,c)}}return s||a?(n.setContentType("application/json",!1),fu(t)):t}],transformResponse:[function(t){const n=gt(this,"transitional")||Yt.transitional,r=n&&n.forcedJSONParsing,a=gt(this,"responseType"),s=a==="json";if(y.isResponse(t)||y.isReadableStream(t))return t;if(t&&y.isString(t)&&(r&&!a||s)){const l=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t,gt(this,"parseReviver"))}catch(c){if(l)throw c.name==="SyntaxError"?q.from(c,q.ERR_BAD_RESPONSE,this,null,gt(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:he.classes.FormData,Blob:he.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};y.forEach(["delete","get","head","post","put","patch","query"],e=>{Yt.headers[e]={}});function Pr(e,t){const n=this||Yt,r=t||n,a=me.from(r.headers);let s=r.data;return y.forEach(e,function(l){s=l.call(n,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function Fs(e){return!!(e&&e.__CANCEL__)}let Gt=class extends q{constructor(t,n,r){super(t??"canceled",q.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Is(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new q("Request failed with status code "+n.status,n.status>=400&&n.status<500?q.ERR_BAD_REQUEST:q.ERR_BAD_RESPONSE,n.config,n.request,n))}function pu(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function hu(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,s=0,o;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),u=r[s];o||(o=d),n[a]=c,r[a]=d;let f=s,p=0;for(;f!==a;)p+=n[f++],f=f%e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),d-o<t)return;const S=u&&d-u;return S?Math.round(p*1e3/S):void 0}}function mu(e,t){let n=0,r=1e3/t,a,s;const o=(d,u=Date.now())=>{n=u,a=null,s&&(clearTimeout(s),s=null),e(...d)};return[(...d)=>{const u=Date.now(),f=u-n;f>=r?o(d,u):(a=d,s||(s=setTimeout(()=>{s=null,o(a)},r-f)))},()=>a&&o(a)]}const In=(e,t,n=3)=>{let r=0;const a=hu(50,250);return mu(s=>{if(!s||typeof s.loaded!="number")return;const o=s.loaded,l=s.lengthComputable?s.total:void 0,c=Math.max(0,l!=null?Math.min(o,l):o),d=Math.max(0,c-r),u=a(d);r=Math.max(r,c);const f={loaded:c,total:l,progress:l?c/l:void 0,bytes:d,rate:u||void 0,estimated:u&&l?(l-c)/u:void 0,event:s,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},Os=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},ks=(e,t=y.asap)=>(...n)=>t(()=>e(...n)),gu=he.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,he.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(he.origin),he.navigator&&/(msie|trident)/i.test(he.navigator.userAgent)):()=>!0,yu=he.hasStandardBrowserEnv?{write(e,t,n,r,a,s,o){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];y.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),y.isString(r)&&l.push(`path=${r}`),y.isString(a)&&l.push(`domain=${a}`),s===!0&&l.push("secure"),y.isString(o)&&l.push(`SameSite=${o}`),document.cookie=l.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 bu(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Su(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 vu=/^https?:(?!\/\/)/i,wu=/[\t\n\r]/g;function Cu(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function Nu(e){return Cu(e).replace(wu,"")}function _u(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${Tn}`)}function Eu(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Tn}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Tn}`);return n===-1?a:`${a}#${_u(t.slice(n+1))}`}function xs(e,t){if(typeof e=="string"){const n=Nu(e);if(vu.test(n))throw new q(`Invalid URL ${JSON.stringify(Eu(n))}: missing "//" after protocol`,q.ERR_INVALID_URL,t)}}function Ds(e,t,n,r){xs(t,r);let a=!bu(t);return e&&(a||n===!1)?(xs(e,r),Su(e,t)):t}const Ps=e=>e instanceof me?{...e}:e,Au=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function rt(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,S){return y.isPlainObject(u)&&y.isPlainObject(f)?y.merge.call({caseless:S},u,f):y.isPlainObject(f)?y.merge({},f):y.isArray(f)?f.slice():f}function a(u,f,p,S){if(y.isUndefined(f)){if(!y.isUndefined(u))return r(void 0,u,p,S)}else return r(u,f,p,S)}function s(u,f){if(!y.isUndefined(f))return r(void 0,f)}function o(u,f){if(y.isUndefined(f)){if(!y.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function l(u){const f=y.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!y.isUndefined(f))if(y.isPlainObject(f)){if(y.hasOwnProp(f,u))return f[u]}else return;const p=y.hasOwnProp(e,"transitional")?e.transitional:void 0;if(y.isPlainObject(p)&&y.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(y.hasOwnProp(t,p))return r(u,f);if(y.hasOwnProp(e,p))return r(void 0,u)}const d={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,allowedSocketPaths:o,responseEncoding:o,validateStatus:c,headers:(u,f,p)=>a(Ps(u),Ps(f),p,!0)};return y.forEach(Au({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=y.hasOwnProp(d,f)?d[f]:a,S=y.hasOwnProp(e,f)?e[f]:void 0,N=y.hasOwnProp(t,f)?t[f]:void 0,m=p(S,N,f);y.isUndefined(m)&&p!==c||(n[f]=m)}),y.hasOwnProp(t,"validateStatus")&&y.isUndefined(t.validateStatus)&&l("validateStatusUndefinedResolves")===!1&&(y.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const Lu=["content-type","content-length"];function Tu(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{Lu.includes(r.toLowerCase())&&e.set(r,a)})}const Fu=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function Ms(e){const t=rt({},e),n=p=>y.hasOwnProp(t,p)?t[p]:void 0,r=n("data");let a=n("withXSRFToken");const s=n("xsrfHeaderName"),o=n("xsrfCookieName");let l=n("headers");const c=n("auth"),d=n("baseURL"),u=n("allowAbsoluteUrls"),f=n("url");if(t.headers=l=me.from(l),t.url=_s(Ds(d,f,u,t),n("params"),n("paramsSerializer")),c){const p=y.getSafeProp(c,"username")||"",S=y.getSafeProp(c,"password")||"";try{l.set("Authorization","Basic "+btoa(p+":"+(S?Fu(S):"")))}catch(N){throw q.from(N,q.ERR_BAD_OPTION_VALUE,e)}}if(y.isFormData(r)&&(he.hasStandardBrowserEnv||he.hasStandardBrowserWebWorkerEnv||y.isReactNative(r)?l.setContentType(void 0):y.isFunction(r.getHeaders)&&Tu(l,r.getHeaders(),n("formDataHeaderPolicy"))),he.hasStandardBrowserEnv&&(y.isFunction(a)&&(a=a(t)),a===!0||a==null&&gu(t.url))){const S=s&&o&&yu.read(o);S&&l.set(s,S)}return t}const Iu=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=Ms(e);let s=a.data;const o=me.from(a.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,S,N;function m(){S&&S(),N&&N(),a.cancelToken&&a.cancelToken.unsubscribe(u),a.signal&&a.signal.removeEventListener("abort",u)}let g=new XMLHttpRequest;g.open(a.method.toUpperCase(),a.url,!0),g.timeout=a.timeout;function b(){if(!g)return;const v=me.from("getAllResponseHeaders"in g&&g.getAllResponseHeaders()),B={data:!l||l==="text"||l==="json"?g.responseText:g.response,status:g.status,statusText:g.statusText,headers:v,config:e,request:g};Is(function(Q){n(Q),m()},function(Q){r(Q),m()},B),g=null}"onloadend"in g?g.onloadend=b:g.onreadystatechange=function(){!g||g.readyState!==4||g.status===0&&!(g.responseURL&&g.responseURL.startsWith("file:"))||setTimeout(b)},g.onabort=function(){g&&(r(new q("Request aborted",q.ECONNABORTED,e,g)),m(),g=null)},g.onerror=function(_){const B=_&&_.message?_.message:"Network Error",O=new q(B,q.ERR_NETWORK,e,g);O.event=_||null,r(O),m(),g=null},g.ontimeout=function(){let _=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const B=a.transitional||kr;a.timeoutErrorMessage&&(_=a.timeoutErrorMessage),r(new q(_,B.clarifyTimeoutError?q.ETIMEDOUT:q.ECONNABORTED,e,g)),m(),g=null},s===void 0&&o.setContentType(null),"setRequestHeader"in g&&y.forEach(ys(o),function(_,B){g.setRequestHeader(B,_)}),y.isUndefined(a.withCredentials)||(g.withCredentials=!!a.withCredentials),l&&l!=="json"&&(g.responseType=a.responseType),d&&([p,N]=In(d,!0),g.addEventListener("progress",p)),c&&g.upload&&([f,S]=In(c),g.upload.addEventListener("progress",f),g.upload.addEventListener("loadend",S)),(a.cancelToken||a.signal)&&(u=v=>{g&&(r(!v||v.type?new Gt(null,e,g):v),g.abort(),m(),g=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const h=pu(a.url);if(h&&!he.protocols.includes(h)){r(new q("Unsupported protocol "+h+":",q.ERR_BAD_REQUEST,e)),m();return}g.send(s||null)})},Ou=(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,o();const d=c instanceof Error?c:this.reason;n.abort(d instanceof q?d:new Gt(d instanceof Error?d.message:d))}};let s=t&&setTimeout(()=>{s=null,a(new q(`timeout of ${t}ms exceeded`,q.ETIMEDOUT))},t);const o=()=>{e&&(s&&clearTimeout(s),s=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:l}=n;return l.unsubscribe=()=>y.asap(o),l},ku=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},xu=async function*(e,t){for await(const n of Du(e))yield*ku(n,t)},Du=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()}},Us=(e,t,n,r)=>{const a=xu(e,t);let s=0,o,l=c=>{o||(o=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:u}=await a.next();if(d){l(),c.close();return}let f=u.byteLength;if(n){let p=s+=f;n(p)}c.enqueue(new Uint8Array(u))}catch(d){throw l(d),d}},cancel(c){return l(c),a.return()}},{highWaterMark:2})},Bs=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,$s=(e,t,n)=>t+2<n&&Bs(e.charCodeAt(t+1))&&Bs(e.charCodeAt(t+2)),js=e=>e<=57?e-48:(e&223)-55,Pu=e=>e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===45||e===95,Mu=e=>e===9||e===10||e===12||e===13||e===32,Uu=e=>{const t=Math.floor(e/4),n=e%4;return t*3+(n===2?1:n===3?2:0)},Bu=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)},$u=e=>{const t=e.length;let n=0,r=0,a=!1;for(let s=0;s<t;s++){let o=e.charCodeAt(s);if(o===37&&$s(e,s,t)&&(o=js(e.charCodeAt(s+1))*16+js(e.charCodeAt(s+2)),s+=2),!Mu(o)){if(o===61){r++;continue}if(!Pu(o)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?Bu(e):Uu(n)},ju=(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 o=0;for(let l=0,c=a.length;l<c;l++){const d=a.charCodeAt(l);if(d===37&&$s(a,l,c))o+=1,l+=2;else if(d<128)o+=1;else if(d<2048)o+=2;else if(d>=55296&&d<=56319&&l+1<c){const u=a.charCodeAt(l+1);u>=56320&&u<=57343?(o+=4,l++):o+=3}else o+=3}return o};function Vu(e){const t=typeof e=="string"?e.indexOf("#"):-1;return ju(t===-1?e:e.slice(0,t),$u)}const Mr="1.19.0",Vs=64*1024,{isFunction:On}=y,qu=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),qs=e=>{if(!y.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},Ws=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Wu=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},zu=e=>{const t=y.global!==void 0&&y.global!==null?y.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=y.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:s,Response:o}=e,l=a?On(a):typeof fetch=="function",c=On(s),d=On(o);if(!l)return!1;const u=l&&On(n),f=l&&(typeof r=="function"?(b=>h=>b.encode(h))(new r):async b=>new Uint8Array(await new s(b).arrayBuffer())),p=c&&u&&Ws(()=>{let b=!1;const h=new s(he.origin,{body:new n,method:"POST",get duplex(){return b=!0,"half"}}),v=h.headers.has("Content-Type");return h.body!=null&&h.body.cancel(),b&&!v}),S=d&&u&&Ws(()=>y.isReadableStream(new o("").body)),N={stream:S&&(b=>b.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(b=>{!N[b]&&(N[b]=(h,v)=>{let _=h&&h[b];if(_)return _.call(h);throw new q(`Response type '${b}' is not supported`,q.ERR_NOT_SUPPORT,v)})});const m=async b=>{if(b==null)return 0;if(y.isBlob(b))return b.size;if(y.isSpecCompliantForm(b))return(await new s(he.origin,{method:"POST",body:b}).arrayBuffer()).byteLength;if(y.isArrayBufferView(b)||y.isArrayBuffer(b))return b.byteLength;if(y.isURLSearchParams(b)&&(b=b+""),y.isString(b))return(await f(b)).byteLength},g=async(b,h)=>{const v=y.toFiniteNumber(b.getContentLength());return v??m(h)};return async b=>{let{url:h,method:v,data:_,signal:B,cancelToken:O,timeout:Q,onDownloadProgress:G,onUploadProgress:k,responseType:I,headers:K,withCredentials:R="same-origin",fetchOptions:ee,maxContentLength:F,maxBodyLength:M}=Ms(b);const H=y.isNumber(F)&&F>-1,E=y.isNumber(M)&&M>-1,V=P=>y.hasOwnProp(b,P)?b[P]:void 0;let j=a||fetch;I=I?(I+"").toLowerCase():"text";let J=Ou([B,O&&O.toAbortSignal()],Q),C=null;const L=J&&J.unsubscribe&&(()=>{J.unsubscribe()});let W,z=null;const x=()=>new q("Request body larger than maxBodyLength limit",q.ERR_BAD_REQUEST,b,C);try{let P;const D=V("auth");if(D){const ne=y.getSafeProp(D,"username")||"",be=y.getSafeProp(D,"password")||"";P={username:ne,password:be}}if(Wu(h)){const ne=new URL(h,he.origin);if(!P&&(ne.username||ne.password)){const be=qs(ne.username),Ae=qs(ne.password);P={username:be,password:Ae}}(ne.username||ne.password)&&(ne.username="",ne.password="",h=ne.href)}if(P&&(K.delete("authorization"),K.set("Authorization","Basic "+btoa(qu((P.username||"")+":"+(P.password||""))))),H&&typeof h=="string"&&h.startsWith("data:")&&Vu(h)>F)throw new q("maxContentLength size of "+F+" exceeded",q.ERR_BAD_RESPONSE,b,C);if(E&&v!=="get"&&v!=="head"){const ne=await m(_);if(typeof ne=="number"&&isFinite(ne)&&(W=ne,ne>M))throw x()}const A=E&&(y.isReadableStream(_)||y.isStream(_)),Z=(ne,be,Ae)=>Us(ne,Vs,Ne=>{if(E&&Ne>M)throw z=x();be&&be(Ne)},Ae);if(p&&v!=="get"&&v!=="head"&&(k||A)){if(W=W??await g(K,_),W!==0||A){let ne=new s(h,{method:"POST",body:_,duplex:"half"}),be;if(y.isFormData(_)&&(be=ne.headers.get("content-type"))&&K.setContentType(be),ne.body){const[Ae,Ne]=k&&Os(W,In(ks(k)))||[];_=Z(ne.body,Ae,Ne)}}}else if(A&&!c&&u&&v!=="get"&&v!=="head")_=Z(_);else if(A&&c&&!p&&v!=="get"&&v!=="head")throw new q("Stream request bodies are not supported by the current fetch implementation",q.ERR_NOT_SUPPORT,b,C);y.isString(R)||(R=R?"include":"omit");const Y=c&&"credentials"in s.prototype;if(y.isFormData(_)){const ne=K.getContentType();ne&&/^multipart\/form-data/i.test(ne)&&!/boundary=/i.test(ne)&&K.delete("content-type")}K.set("User-Agent","axios/"+Mr,!1);const re={...ee,signal:J,method:v.toUpperCase(),headers:ys(K.normalize()),body:_,duplex:"half",credentials:Y?R:void 0};C=c&&new s(h,re);let ye=await(c?j(C,ee):j(h,re));const je=me.from(ye.headers);if(H){const ne=y.toFiniteNumber(je.getContentLength());if(ne!=null&&ne>F)throw new q("maxContentLength size of "+F+" exceeded",q.ERR_BAD_RESPONSE,b,C)}const Oe=S&&(I==="stream"||I==="response");if(S&&ye.body&&(G||H||Oe&&L)){const ne={};["status","statusText","headers"].forEach(Ve=>{ne[Ve]=ye[Ve]});const be=y.toFiniteNumber(je.getContentLength()),[Ae,Ne]=G&&Os(be,In(ks(G),!0))||[];let Pt=0;const Pa=Ve=>{if(H&&(Pt=Ve,Pt>F))throw new q("maxContentLength size of "+F+" exceeded",q.ERR_BAD_RESPONSE,b,C);Ae&&Ae(Ve)};ye=new o(Us(ye.body,Vs,Pa,()=>{Ne&&Ne(),L&&L()}),ne)}I=I||"text";let fe=await N[y.findKey(N,I)||"text"](ye,b);if(H&&!S&&!Oe){let ne;if(fe!=null&&(typeof fe.byteLength=="number"?ne=fe.byteLength:typeof fe.size=="number"?ne=fe.size:typeof fe=="string"&&(ne=typeof r=="function"?new r().encode(fe).byteLength:fe.length)),typeof ne=="number"&&ne>F)throw new q("maxContentLength size of "+F+" exceeded",q.ERR_BAD_RESPONSE,b,C)}return!Oe&&L&&L(),await new Promise((ne,be)=>{Is(ne,be,{data:fe,headers:me.from(ye.headers),status:ye.status,statusText:ye.statusText,config:b,request:C})})}catch(P){if(L&&L(),J&&J.aborted&&J.reason instanceof q){const D=J.reason;throw D.config=b,C&&(D.request=C),P!==D&&Object.defineProperty(D,"cause",{__proto__:null,value:P,writable:!0,enumerable:!1,configurable:!0}),D}if(z)throw C&&!z.request&&(z.request=C),z;if(P instanceof q)throw C&&!P.request&&(P.request=C),P;if(P&&P.name==="TypeError"&&/Load failed|fetch/i.test(P.message)){const D=new q("Network Error",q.ERR_NETWORK,b,C,P&&P.response);throw Object.defineProperty(D,"cause",{__proto__:null,value:P.cause||P,writable:!0,enumerable:!1,configurable:!0}),D}throw q.from(P,P&&P.code,b,C,P&&P.response)}}},Hu=new Map,zs=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:a}=t,s=[r,a,n];let o=s.length,l=o,c,d,u=Hu;for(;l--;)c=s[l],d=u.get(c),d===void 0&&u.set(c,d=l?new Map:zu(t)),u=d;return d};zs();const Ur={http:tu,xhr:Iu,fetch:{get:zs}};y.forEach(Ur,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const Hs=e=>`- ${e}`,Ku=e=>y.isFunction(e)||e===null||e===!1;function Yu(e,t){e=y.isArray(e)?e:[e];const{length:n}=e;let r,a;const s={};for(let o=0;o<n;o++){r=e[o];let l;if(a=r,!Ku(r)&&(a=Ur[(l=String(r)).toLowerCase()],a===void 0))throw new q(`Unknown adapter '${l}'`);if(a&&(y.isFunction(a)||(a=a.get(t))))break;s[l||"#"+o]=a}if(!a){const o=Object.entries(s).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let l=n?o.length>1?`since :
6
- `+o.map(Hs).join(`
7
- `):" "+Hs(o[0]):"as no adapter specified";throw new q("There is no suitable adapter to dispatch the request "+l,q.ERR_NOT_SUPPORT)}return a}const Ks={getAdapter:Yu,adapters:Ur};function Br(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Gt(null,e)}function $r(e){return Br(e),e.headers=me.from(e.headers),e.data=Pr.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),Ks.getAdapter(e.adapter||Yt.adapter,e)(e).then(function(r){Br(e),e.response=r;try{r.data=Pr.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=me.from(r.headers),r},function(r){if(!Fs(r)&&(Br(e),r&&r.response)){e.response=r.response;try{r.response.data=Pr.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=me.from(r.response.headers)}return Promise.reject(r)})}const kn={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{kn[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const Ys={};kn.transitional=function(t,n,r){function a(s,o){return"[Axios v"+Mr+"] Transitional option '"+s+"'"+o+(r?". "+r:"")}return(s,o,l)=>{if(t===!1)throw new q(a(o," has been removed"+(n?" in "+n:"")),q.ERR_DEPRECATED);return n&&!Ys[o]&&(Ys[o]=!0,console.warn(a(o," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,o,l):!0}},kn.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Gu(e,t,n){if(typeof e!="object"||e===null)throw new q("options must be an object",q.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const s=r[a],o=Object.prototype.hasOwnProperty.call(t,s)?t[s]:void 0;if(o){const l=e[s],c=l===void 0||o(l,s,e);if(c!==!0)throw new q("option "+s+" must be "+c,q.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new q("Unknown option "+s,q.ERR_BAD_OPTION)}}const xn={assertOptions:Gu,validators:kn},ge=xn.validators;let at=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Es,response:new Es}}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 s=(()=>{if(!a.stack)return"";const o=a.stack.indexOf(`
8
- `);return o===-1?"":a.stack.slice(o+1)})();try{if(!r.stack)r.stack=s;else if(s){const o=s.indexOf(`
9
- `),l=o===-1?-1:s.indexOf(`
10
- `,o+1),c=l===-1?"":s.slice(l+1);String(r.stack).endsWith(c)||(r.stack+=`
11
- `+s)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=rt(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:s}=n;r!==void 0&&xn.assertOptions(r,{silentJSONParsing:ge.transitional(ge.boolean),forcedJSONParsing:ge.transitional(ge.boolean),clarifyTimeoutError:ge.transitional(ge.boolean),legacyInterceptorReqResOrdering:ge.transitional(ge.boolean),advertiseZstdAcceptEncoding:ge.transitional(ge.boolean),validateStatusUndefinedResolves:ge.transitional(ge.boolean)},!1),a!=null&&(y.isFunction(a)?n.paramsSerializer={serialize:a}:xn.assertOptions(a,{encode:ge.function,serialize:ge.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),xn.assertOptions(n,{baseUrl:ge.spelling("baseURL"),withXsrfToken:ge.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=s&&y.merge(s.common,s[n.method]);s&&y.forEach(["delete","get","head","post","put","patch","query","common"],N=>{delete s[N]}),n.headers=me.concat(o,s);const l=[];let c=!0;this.interceptors.request.forEach(function(m){if(typeof m.runWhen=="function"&&m.runWhen(n)===!1)return;c=c&&m.synchronous;const g=n.transitional||kr;g&&g.legacyInterceptorReqResOrdering?l.unshift(m.fulfilled,m.rejected):l.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 N=[$r.bind(this),void 0];for(N.unshift(...l),N.push(...d),p=N.length,u=Promise.resolve(n);f<p;)u=u.then(N[f++],N[f++]);return u}p=l.length;let S=n;for(;f<p;){const N=l[f++],m=l[f++];try{S=N?N(S):S}catch(g){if(!m){u=Promise.reject(g);break}try{const b=m.call(this,g);y.isThenable(b)&&(u=Promise.resolve(b).then(()=>$r.call(this,S)))}catch(b){u=Promise.reject(b)}break}}if(!u)try{u=$r.call(this,S)}catch(N){u=Promise.reject(N)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=rt(this.defaults,t);const n=Ds(t.baseURL,t.url,t.allowAbsoluteUrls,t);return _s(n,t.params,t.paramsSerializer)}};y.forEach(["delete","get","head","options"],function(t){at.prototype[t]=function(n,r){return this.request(rt(r||{},{method:t,url:n,data:r&&y.hasOwnProp(r,"data")?r.data:void 0}))}}),y.forEach(["post","put","patch","query"],function(t){function n(r){return function(s,o,l){return this.request(rt(l||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:s,data:o}))}}at.prototype[t]=n(),t!=="query"&&(at.prototype[t+"Form"]=n(!0))});let Ju=class Ll{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(s){n=s});const r=this;this.promise.then(a=>{if(!r._listeners)return;let s=r._listeners.length;for(;s-- >0;)r._listeners[s](a);r._listeners=null}),this.promise.then=a=>{let s;const o=new Promise(l=>{r.subscribe(l),s=l}).then(a);return o.cancel=function(){r.unsubscribe(s)},o},t(function(s,o,l){r.reason||(r.reason=new Gt(s,o,l),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 Ll(function(a){t=a}),cancel:t}}};function Zu(e){return function(n){return e.apply(null,n)}}function Xu(e){return y.isObject(e)&&e.isAxiosError===!0}const jr={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(jr).forEach(([e,t])=>{jr[t]=e});function Gs(e){const t=new at(e),n=os(at.prototype.request,t);return y.extend(n,at.prototype,t,{allOwnKeys:!0}),y.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return Gs(rt(e,a))},n}const de=Gs(Yt);de.Axios=at,de.CanceledError=Gt,de.CancelToken=Ju,de.isCancel=Fs,de.VERSION=Mr,de.toFormData=Fn,de.AxiosError=q,de.Cancel=de.CanceledError,de.all=function(t){return Promise.all(t)},de.spread=Zu,de.isAxiosError=Xu,de.mergeConfig=rt,de.AxiosHeaders=me,de.formToJSON=e=>Ts(y.isHTMLForm(e)?new FormData(e):e),de.getAdapter=Ks.getAdapter,de.HttpStatusCode=jr,de.default=de;const{Axios:_0,AxiosError:E0,CanceledError:A0,isCancel:L0,CancelToken:T0,VERSION:F0,all:I0,Cancel:O0,isAxiosError:k0,spread:x0,toFormData:D0,AxiosHeaders:P0,HttpStatusCode:M0,formToJSON:U0,getAdapter:B0,mergeConfig:$0,create:j0}=de;function Dn(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 Qu={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 Vr(e,t){function n(a,s,o){if(!(typeof document>"u")){o=Dn({},t,o),typeof o.expires=="number"&&(o.expires=new Date(Date.now()+o.expires*864e5)),o.expires&&(o.expires=o.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var c in o)o[c]&&(l+="; "+c,o[c]!==!0&&(l+="="+o[c].split(";")[0]));return document.cookie=a+"="+e.write(s,a)+l}}function r(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var s=document.cookie?document.cookie.split("; "):[],o={},l=0;l<s.length;l++){var c=s[l].split("="),d=c.slice(1).join("=");try{var u=decodeURIComponent(c[0]);if(u in o||(o[u]=e.read(d,u)),a===u)break}catch{}}return a?o[a]:o}}return Object.create({set:n,get:r,remove:function(a,s){n(a,"",Dn({},s,{expires:-1}))},withAttributes:function(a){return Vr(this.converter,Dn({},this.attributes,a))},withConverter:function(a){return Vr(Dn({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Jt=Vr(Qu,{path:"/"});const Ru={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let yt="https://api-grievance.airaops.com",Js=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:fr&&fr.tagName.toUpperCase()==="SCRIPT"&&fr.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&Ru?.VITE_API_URL)yt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(yt=e.env.VITE_API_URL)}}catch{}const Zs=e=>{yt=e||"",ce.defaults.baseURL=yt},qr=e=>{Js=e||null},ef=()=>Js||Jt.get("token")||null,ce=de.create({baseURL:yt,headers:{Accept:"application/json","Content-Type":"application/json"}});ce.interceptors.request.use(e=>{const t=ef();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Wr=!1,zr=null;ce.interceptors.response.use(e=>e,async e=>{const t=e.config,n=e.response;if(n&&(n.status===401||n.status===402)){const r=Jt.get("refreshToken");if(r)try{Wr||(Wr=!0,zr=de.post(`${yt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await zr,{token:s,refreshToken:o}=a.data;return qr(s),o&&Jt.set("refreshToken",o),t.headers.Authorization=`Bearer ${s}`,ce(t)}catch{Jt.remove("token"),Jt.remove("refreshToken")}finally{Wr=!1,zr=null}}return Promise.reject(e)});const tf=w.createContext(null),Xs=({children:e,apiUrl:t,authToken:n})=>(t&&Zs(t),qr(n||null),i.jsx(tf.Provider,{value:{apiUrl:t,authToken:n},children:e})),We={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)"}},Zt={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)"}},Qs={light:We,dark:Zt};function bt(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function St(e,t){if(!bt(t))return e;const n={...e};return Object.keys(t).forEach(r=>{const a=t[r];bt(a)&&bt(e[r])?n[r]=St(e[r],a):a!==void 0&&(n[r]=a)}),n}function Rs(e){return!e||!bt(e)?{light:We,dark:Zt}:bt(e.light)||bt(e.dark)?{light:St(We,e.light||{}),dark:St(Zt,e.dark||{})}:{light:St(We,e),dark:St(Zt,e)}}function eo(e,t=!1){const n=Rs(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const nf={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"},rf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},af={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"},sf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function to(e){const t={};return e?.colors&&Object.entries(nf).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(rf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(af).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(sf).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 no=w.createContext({darkMode:!1,theme:null,themeFile:Qs,cssVars:{}});function ro({theme:e,darkMode:t=!1,children:n}){const r=w.useMemo(()=>{const a=eo(e,!!t),s=to(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:s,mode:a.mode}},[e,t]);return i.jsx(no.Provider,{value:r,children:n})}function ao(){return w.useContext(no)}const Pn=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),of=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"},lf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:of(e)}),Hr=(e,t)=>ie.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return lf(a,r)}}),Fe=Hr("complaint/types/getFormFields",(e,{signal:t})=>ce.get(Pn.formFields(e),{signal:t})),Xt=Hr("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>ce.put(Pn.formFields(e),t)),Qt=Hr("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>ce.delete(`${Pn.formFields(e)}/${t}`)),so={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},cf=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}},Kr=e=>e.payload?.message??e.error?.message??"Something went wrong",oo=ie.createSlice({name:"complaintAppComplaint",initialState:so,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 so}},extraReducers:e=>{e.addCase(Fe.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(Fe.fulfilled,(t,n)=>{const r=cf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(Fe.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=Kr(n)}).addCase(Xt.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(Xt.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(Xt.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=Kr(n)}).addCase(Qt.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(Qt.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(Qt.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=Kr(n)})}}),{clearComplaintError:df,clearSelectedComplaintResource:uf,resetComplaintState:ff}=oo.actions,io=oo.reducer,Rt="/api/v1/complaint-types",en=(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"})},tn=ie.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await ce.get(Rt)).data}catch(n){return en(n,t)}}),vt=ie.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await ce.get(`${Rt}/${n}`)).data}catch(n){return en(n,t)}}),nn=ie.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(o=>parseInt(o,10)),userIds:(e.userIds??[]).map(o=>parseInt(o,10))},s=await ce.post(Rt,a);return t&&typeof t=="function"&&t(s.data),s.data}catch(a){return console.log("createComplaintType error:",a),n&&typeof n=="function"&&n(a),en(a,r)}}),rn=ie.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:n,onFail:r},a)=>{try{const s=await ce.patch(`${Rt}/${e}`,t);return n&&typeof n=="function"&&n(s.data),s.data}catch(s){return console.log("updateComplaintType error:",s),r&&typeof r=="function"&&r(s),en(s,a)}}),Mn=ie.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await ce.delete(`${Rt}/${e}`);return{id:e,data:n.data}}catch(n){return en(n,t)}}),Yr=["userId","id","_id","userID","user_id","value"],pf=["userIds","users"];function an(e,t=Yr){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=an(r,Yr);if(a!==null)return a}}return an(e.user,Yr)}function Gr(e){const t=pf.filter(n=>Array.isArray(e?.[n]));if(t.length===0){const n=an(e?.createdByUserId??e?.createdBy);return n===null?null:[n]}return[...new Set(t.flatMap(n=>e[n].map(r=>an(r)).filter(r=>r!==null)))]}function Un(e,t){const n=Gr(e),r=an(t);return r!==null&&n?.includes(r)===!0}const hf={complaintList:[],selected:null,loading:!1,saving:!1,error:null},mf=["data","items","results","content","records","list","payload","response","result"],lo=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of mf)if(e[t]!==void 0){const n=lo(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},Ce=e=>e?.id??e?._id,Jr=(e,t)=>{if(!t)return e;const n=Gr(e),r=Gr(t);return n?.length||!r?.length?e:{...e,userIds:r}},co=ie.createSlice({name:"complaintType",initialState:hf,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(Ce(a))===String(n)?{...a,isActive:r}:a),String(Ce(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(tn.pending,t=>{t.loading=!0,t.error=null}).addCase(tn.fulfilled,(t,n)=>{t.loading=!1;const r=new Map(t.complaintList.map(a=>[String(Ce(a)),a]));t.complaintList=lo(n.payload).map(a=>Jr(a,r.get(String(Ce(a)))))}).addCase(tn.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(vt.pending,t=>{t.loading=!0,t.error=null}).addCase(vt.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(s=>String(Ce(s))===String(Ce(r)));t.selected=Jr(r,a)}).addCase(vt.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint type"}).addCase(nn.pending,t=>{t.saving=!0,t.error=null}).addCase(nn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=n.meta?.arg?.payload?.userIds,s=Array.isArray(a)?{...r,userIds:a}:r;t.complaintList=[s,...t.complaintList.filter(o=>String(Ce(o))!==String(Ce(s)))],t.selected=s}).addCase(nn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to create complaint type"}).addCase(rn.pending,t=>{t.saving=!0,t.error=null}).addCase(rn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=Ce(r)??n.meta?.arg?.id,s=t.complaintList.find(c=>String(Ce(c))===String(a)),o=n.meta?.arg?.data?.userIds,l=Array.isArray(o)?{...r,userIds:o}:Jr(r,s);t.complaintList=t.complaintList.map(c=>String(Ce(c))===String(a)?l:c),t.selected=l}).addCase(rn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update complaint type"}).addCase(Mn.pending,t=>{t.saving=!0,t.error=null}).addCase(Mn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ce(a))!==String(r)),String(Ce(t.selected))===String(r)&&(t.selected=null)}).addCase(Mn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:gf}=co.actions,yf=co.reducer,bf={details:{},id:null,isEdit:!1},uo=ie.createSlice({name:"appDetails",initialState:bf,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:fo,clearAppDetails:Sf,setId:st,setIsEdit:wt,clearId:vf}=uo.actions,po=uo.reducer,wf={list:[],pagination:null,isLoading:!1,error:null},ho=ie.createSlice({name:"roles",initialState:wf,reducers:{}});ho.reducer;const Bn=60,Zr=24*Bn,Cf={d:Zr,h:Bn,m:1};function Xr(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function mo(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,s)=>a+Ie(s?.escalateAfterMinutes),0)}function Ie(e){if(e==null||e==="")return 0;if(typeof e=="number")return Xr(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return Xr(t);const n=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let r=0,a=!1,s;for(;(s=n.exec(t))!==null;)a=!0,r+=(Cf[s[2]]||0)*Number(s[1]);return a?Xr(r):0}function Ct(e){const t=Math.round(typeof e=="number"?e:Ie(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/Zr),r=Math.floor(t%Zr/Bn),a=t%Bn,s=[];return n&&s.push(`${n}d`),r&&s.push(`${r}h`),a&&s.push(`${a}m`),s.join("")}function Nf(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 _f(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>Ct(Number(n))||"0m")}function Ef(e=[]){return mo(e,!0)}function Nt(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Ie(t)-mo(e,!1)),r=Ct(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((s,o)=>o===a?{...s,escalateAfterMinutes:r}:s)}function Af(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 go=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function Lf(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 Qr(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const yo=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Lf(e)}),Ge=ie.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await ce.get(go(e))).data}catch(n){return yo(n,t)}}),$n=ie.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 s=t.tables.map((l,c)=>{const d=Array.isArray(l.role)?l.role.map(N=>Number(N)):[],u=Array.isArray(l.users)?l.users.map(N=>Number(N)):[],f=d.length>0,p=u.length>0,S=!f&&(p||l.workflowType==="user");return{levelNo:c+1,workflowType:S?"Users Based":"Role Based",...f||!S?{roleIds:d}:{},...p||S?{userAssignments:u.map(N=>({userId:N}))}:{},escalateAfterMinutes:Ie(l.escalateAfterMinutes),canResolve:Qr(l.canResolve),canReassign:Qr(l.canReassign),isFinalLevel:Qr(l.finalLevel),isActive:!0}}),o=await ce.put(go(e),{steps:s});return typeof n=="function"&&n(o.data),o.data}catch(s){return typeof r=="function"&&r(s),yo(s,a)}}),Tf={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},Ff=ie.createSlice({name:"workflow",initialState:Tf,reducers:{},extraReducers:e=>{e.addCase(Ge.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(Ge.fulfilled,(t,n)=>{t.workflowStepsLoading=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Ge.rejected,(t,n)=>{n.meta.aborted||(t.workflowStepsLoading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch workflow steps")}).addCase($n.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase($n.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase($n.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,bo="/api/v1/complaints",If=(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"})},_t=ie.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:n,page:r=1,limit:a=10,status:s,sort:o="-createdAt"}=e||{},l={page:r,limit:a,complaintTypeId:n,sort:o};return s!=null&&s!==""&&s!=="all"&&(l.status=s),(await ce.get(bo,{params:l,signal:t.signal})).data}catch(n){return If(n,t)}}),Of=e=>`/api/v1/complaints/${e}`,kf=(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 Rr(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const sn=ie.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:n,assignedToUserId:r,remark:a,onSuccess:s,onFail:o},l)=>{try{const c={},d=Rr(t),u=Rr(n),f=Rr(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 ce.patch(Of(e),c,{signal:l.signal});return s&&typeof s=="function"&&s(p.data),p.data}catch(c){return o&&typeof o=="function"&&o(c),kf(c,l)}}),So={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},xf=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}},Df=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",vo=e=>e?.complaintId??e?.id,Pf=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??vo(r);return a==null?e:e.map(s=>{if(String(vo(s))!==String(a))return s;const o={...s};return r&&typeof r=="object"&&!Array.isArray(r)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(l=>{r[l]!==void 0&&(o[l]=r[l])}),n.statusId!=null&&(o.statusId=n.statusId),n.status&&(o.status=n.status),n.currentStepId!=null&&(o.currentStepId=n.currentStepId,o.currentWorkflowStepId=n.currentStepId,o.workflowStepId=n.currentStepId),n.level!=null&&(o.level=n.level,o.levelNo=n.level),n.assignedToUserId!=null&&(o.assignedToUserId=n.assignedToUserId),o})},wo=ie.createSlice({name:"complaintManagement",initialState:So,reducers:{resetComplaintManagementState:()=>So},extraReducers:e=>{e.addCase(_t.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg?.complaintTypeId??null}).addCase(_t.fulfilled,(t,n)=>{const r=n.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r))return;const a=xf(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(_t.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=Df(n))}).addCase(sn.fulfilled,(t,n)=>{t.list=Pf(t.list,n)})}}),{resetComplaintManagementState:Co}=wo.actions,Mf=wo.reducer,Uf=e=>`/api/v1/complaint-types/${e}/statuses`,Bf="/api/v1/complaints/summary",No=(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"})},jn=ie.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await ce.get(Uf(e),{signal:t.signal})).data}catch(n){return No(n,t)}}),on=ie.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await ce.get(Bf,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return No(n,t)}}),_o={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},$f=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},jf=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Vf=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",qf=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Vn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),Eo=ie.createSlice({name:"status",initialState:_o,reducers:{resetStatusState:()=>_o},extraReducers:e=>{e.addCase(jn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(jn.fulfilled,(t,n)=>{const r=n.meta.arg;if(Vn(t.requestedComplaintTypeId,r))return;const a=$f(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((s,o)=>(s.displayOrder??0)-(o.displayOrder??0))}).addCase(jn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Vn(t.requestedComplaintTypeId,r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Vf(n))}).addCase(on.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(on.fulfilled,(t,n)=>{const r=n.meta.arg;Vn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=jf(n.payload))}).addCase(on.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Vn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=qf(n))})}}),{resetStatusState:Ao}=Eo.actions,Wf=Eo.reducer,zf="/api/v1/complaints",Hf="/api/v1/complaint-types",Lo=(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"})},qn=ie.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await ce.post(zf,e,{signal:t.signal})).data}catch(n){return Lo(n,t)}}),ln=ie.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const s=await ce.patch(`${Hf}/${e}`,{isActive:t},{signal:a.signal});return n&&typeof n=="function"&&n(s.data),s.data}catch(s){return r&&typeof r=="function"&&r(s),Lo(s,a)}}),Kf={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},Yf=e=>e.payload?.message??e.error?.message??"Failed to create complaint",Gf=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",Jf=ie.createSlice({name:"createComplaint",initialState:Kf,reducers:{},extraReducers:e=>{e.addCase(qn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(qn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(qn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=Yf(n))}).addCase(ln.pending,t=>{t.isUpdatingActive=!0,t.activeError=null}).addCase(ln.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(ln.rejected,(t,n)=>{n.meta.aborted||(t.isUpdatingActive=!1,t.activeError=Gf(n))})}}).reducer,To={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},Zf=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Fo=ie.createSlice({name:"changeStatus",initialState:To,reducers:{resetChangeStatusState:()=>To},extraReducers:e=>{e.addCase(sn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=n.meta.arg?.id??null}).addCase(sn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=n.payload?.data??n.payload}).addCase(sn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=Zf(n))})}}),{resetChangeStatusState:Xf}=Fo.actions,Qf=Fo.reducer,Rf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},ea=(e,t)=>{try{return Rf?.[e]||t}catch{return t}},ep=ea("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Io=ea("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),tp=ea("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Oo=e=>/^https?:\/\//i.test(e)?e:`${ep}${e}`,np=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",ko=(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: ${Io}`:e?.response?.data?.error??e?.message??t)},Et=ie.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:np(e)},a=await ce.post(Oo(Io),r),s=a.data.uploadSignedUrl;return(await fetch(s,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:n("Error uploading file")}catch(r){return n(ko(r,"Error uploading file"))}}),Wn=ie.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await ce.get(Oo(tp),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(ko(n,"Error getting file signedUrl"))}}),rp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},ap=ie.createSlice({name:"s3",initialState:rp,reducers:{},extraReducers:e=>{e.addCase(Et.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(Et.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(Et.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(Wn.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(Wn.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(Wn.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,sp=ie.combineReducers({complaintAppComplaint:io,complaintType:yf,appDetails:po,workflow:Ff,roles:ho.reducer,complaintManagement:Mf,status:Wf,createComplaint:Jf,changeStatus:Qf,s3:ap}),xo=e=>ie.configureStore({reducer:sp,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),Do=xo();function ve({children:e,variant:t="primary",size:n="md",startIcon:r,endIcon:a,className:s="",type:o="button",disabled:l=!1,onClick:c,...d}){const u=["ca-btn",`ca-btn--${t}`,n==="sm"?"ca-btn--sm":"",n==="lg"?"ca-btn--lg":"",s].filter(Boolean).join(" ");return i.jsxs("button",{type:o,className:u,disabled:l,onClick:c,...d,children:[r?i.jsx("span",{className:"ca-btn__icon",children:r}):null,e,a?i.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function Po({size:e=16,color:t="currentColor",...n}){return i.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:i.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const Mo={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},op={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Je({variant:e="body",as:t,className:n="",children:r,...a}){const s=t||op[e]||"p",o=Mo[e]||Mo.body;return i.jsx(s,{className:`${o} ${n}`.trim(),...a,children:r})}function ta(e){return i.jsx(Je,{variant:"h1",...e})}function na(e){return i.jsx(Je,{variant:"h2",...e})}function zn(e){return i.jsx(Je,{variant:"body",...e})}function Uo(e){return i.jsx(Je,{variant:"label",...e})}function Bo(e){return i.jsx(Je,{variant:"value",...e})}function ip(e){return i.jsx(Je,{variant:"link",type:"button",...e})}function $o({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,className:a=""}){return i.jsxs("header",{className:`ca-page-header ${a}`.trim(),children:[i.jsxs("div",{className:"ca-page-header__text",children:[i.jsx(ta,{children:e}),t?i.jsx(zn,{children:t}):null]}),i.jsx("div",{className:"ca-page-header__actions",children:i.jsx(ve,{startIcon:i.jsx(Po,{}),onClick:r,children:n})})]})}function Hn({checked:e=!1,onChange:t,disabled:n=!1,"aria-label":r="Toggle",className:a=""}){return i.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:i.jsx("span",{className:"ca-toggle__thumb"})})}function Kn({size:e=16,color:t="#9CA3AF",...n}){return i.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:i.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 jo({title:e,titleAsLink:t=!1,onTitleClick:n,isActive:r=!1,canManage:a=!1,activeDisabled:s=!1,onActiveChange:o,onDelete:l,className:c=""}){return i.jsxs("div",{className:`ca-system-card__header ${c}`.trim(),children:[i.jsx("div",{className:"ca-system-card__title-wrap",children:t?i.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:n,children:e}):i.jsx(na,{children:e})}),i.jsxs("div",{className:"ca-system-card__header-actions",children:[i.jsx("span",{className:"ca-system-card__active-label",children:r?"Active":"Inactive"}),i.jsx(Hn,{checked:r,disabled:!a||s,className:a?"":"ca-toggle--no-permission","aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:o}),i.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:a?`Delete ${e}`:"You do not have permission to delete this form",disabled:!a,onClick:l,children:i.jsx(Kn,{size:40,color:"currentColor"})})]})]})}function Yn({size:e=16,color:t="currentColor",...n}){return i.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:i.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const lp="aira-query-complaintTypeId";function Vo({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:s,canConfigure:o=!1}){const l=Ye(),c=X.useDispatch(),d=s?.data??s?.id??s?._id??s,u=()=>{const f=s?.data??s?.id??s?._id??s;if(f!=null&&f!==""){const p=String(f);try{sessionStorage.setItem(lp,p)}catch{}c(st(p)),c(Co()),c(Ao()),l(`/complaintmanagement/${p}`);return}l("/complaintmanagement")};return i.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[i.jsx(Je,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),i.jsxs("div",{className:"ca-system-card__footer-actions",children:[i.jsxs(ve,{size:"sm",onClick:u,children:[t,i.jsx(Yn,{size:14,color:"currentColor"})]}),o?i.jsx(ve,{size:"sm",onClick:()=>{if(d==null||d==="")return;const f=String(d);c(wt({data:!0})),c(st(f)),l(`/settings/${f}?step=1`)},endIcon:i.jsx(Yn,{size:14,color:"currentColor"}),children:n}):null]})]})}function qo({label:e,value:t,icon:n,className:r=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return i.jsxs("div",{className:`ca-data-point ${r}`.trim(),children:[n?i.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:n}):null,i.jsx(Bo,{children:a}),i.jsx("span",{className:"ca-data-point__label",children:e})]})}function Wo({className:e=""}){return i.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const cp="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",dp="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",up="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",fp="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";function pp(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 zo({id:e,title:t,item:n,status:r="inactive",description:a,descriptionHref:s,departments:o,workflows:l,fields:c,formsFilled:d,updatedOn:u,titleAsLink:f=!1,onTitleClick:p,onDescriptionClick:S,onConfigure:N,onOpen:m,onDelete:g,onToggleActive:b,isTogglingActive:h=!1,className:v=""}){const _=X.useSelector(I=>I.appDetails?.details?.currentUser),B=Un(n,_),O=()=>{N?.({id:e,title:t,status:r,departments:o,workflows:l,fields:c,formsFilled:d,updatedOn:u})},Q=()=>{if(S){S({id:e,title:t,descriptionHref:s});return}s&&typeof window<"u"&&window.open(s,"_blank","noopener,noreferrer")},G=[{label:"Total entries",value:n?.totalEntries??0,icon:i.jsx("img",{src:cp,alt:""})},{label:"Open entries",value:n?.openEntries??0,icon:i.jsx("img",{src:dp,alt:""})},{label:"Closed entries",value:n?.closedEntries??0,icon:i.jsx("img",{src:up,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:i.jsx("img",{src:fp,alt:""})}],k=e??n?.id??n?._id;return i.jsxs("article",{className:`ca-system-card ${v}`.trim(),children:[i.jsx(jo,{title:n?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:B,activeDisabled:h,onActiveChange:I=>b?.({id:k,isActive:I,item:n}),onDelete:()=>g?.({id:k,title:t,item:n})}),a?i.jsx("p",{className:"ca-system-card__description",onClick:Q,children:a}):null,i.jsx("div",{className:"ca-system-card__stats",children:G.map((I,K)=>i.jsxs(w.Fragment,{children:[K>0?i.jsx(Wo,{}):i.jsx("div",{className:"ca-system-card__stats-spacer"}),i.jsx(qo,{label:I.label,value:I.value,icon:I.icon})]},I.label))}),i.jsx(Vo,{updatedOn:u??pp(n?.updatedAt??n?.createdAt),onOpen:()=>m?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canConfigure:B,onConfigure:O})]})}function Ho({systems:e=[],onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,togglingActiveId:s=null,onTitleClick:o,onDescriptionClick:l,emptyMessage:c="No systems found.",className:d=""}){return e.length?i.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(u=>i.jsx(zo,{item:u,...u,onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,isTogglingActive:String(s)===String(u.id??u._id),onTitleClick:o,onDescriptionClick:l},u.id??u.title))}):i.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:i.jsx("div",{className:"ca-empty",children:i.jsx(zn,{children:c})})})}function At({value:e,onChange:t,placeholder:n,type:r="text",icon:a,className:s="",inputClassName:o="",...l}){return i.jsxs("div",{className:`ca-input-wrap ${s}`.trim(),children:[a?i.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,i.jsx("input",{type:r,className:`ca-input ${a?"ca-input--with-icon":""} ${o}`.trim(),value:e,onChange:t,placeholder:n,...l})]})}function Ko({size:e=18,color:t="currentColor",...n}){return i.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:[i.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"}),i.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function Yo({value:e,onChange:t,onSearch:n,placeholder:r="Search",className:a=""}){const s=o=>{o.key==="Enter"&&n&&n(e)};return i.jsx("div",{className:`ca-search ${a}`.trim(),children:i.jsx(At,{value:e,onChange:t,onKeyDown:s,placeholder:r,icon:i.jsx(Ko,{}),"aria-label":r})})}function Lt({text:e="Loading",fullScreen:t=!1}){return i.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[i.jsx("span",{className:"ca-loading__spinner"}),i.jsxs("span",{children:[e,"…"]})]})}const hp=[{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"}],Go="Create, manage and track complaint forms, workflows and responses across departments.";function Jo({title:e="Complaint Management",description:t=Go,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:s,onTitleClick:o,onDescriptionClick:l,onSearch:c}){const d=Ye(),u=X.useDispatch(),[f,p]=w.useState(""),[S,N]=w.useState(null),{complaintList:m=[],loading:g=!1,error:b=null}=X.useSelector(k=>k.complaintType??{}),h=X.useSelector(k=>k.appDetails?.details?.currentUser);w.useEffect(()=>{u(wt({data:!1})),u(tn())},[u]);const v=w.useMemo(()=>{const k=f.trim().toLowerCase();return k?m.filter(I=>[I.title,I.name,I.description,I.status].filter(Boolean).join(" ").toLowerCase().includes(k)):m},[m,f]);w.useEffect(()=>{c&&c(f)},[f,c]);const _=k=>{p(k.target.value)},B=k=>{a?.(k),d(`/settings/${k.id??"new"}?step=1`)},O=()=>{u(wt({data:!1})),r?.(),d("/settings/new?step=1")},Q=({id:k,item:I})=>{Un(I,h)&&k!=null&&u(Mn(k))},G=({id:k,isActive:I,item:K})=>{Un(K,h)&&k!=null&&(N(k),u(ln({id:k,isActive:I})).unwrap().then(()=>u(gf({id:k,isActive:I}))).finally(()=>N(null)))};return i.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[i.jsx($o,{title:e,description:t,actionLabel:n,onAction:O}),i.jsx("div",{className:"ca-search-container",children:i.jsx(Yo,{value:f,onChange:_,placeholder:"Search"})}),g?i.jsx(Lt,{text:"Loading systems"}):b?i.jsx("div",{className:"ca-empty",children:i.jsx("p",{className:"ca-body",children:typeof b=="string"?b:"Failed to load complaint types."})}):i.jsx(Ho,{systems:v,onConfigure:B,onOpen:s,onDelete:Q,onToggleActive:G,togglingActiveId:S,onTitleClick:o,onDescriptionClick:l,emptyMessage:f?"No systems match your search.":"No systems found."})]})}const Zo=w.createContext(null),Xo=()=>({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 Qo({children:e,initialValues:t}){const[n,r]=w.useState(()=>({...Xo(),...t,workflow:{...Xo().workflow,...t?.workflow}})),a=w.useCallback(l=>{r(c=>({...c,...l}))},[]),s=w.useCallback(l=>{r(c=>({...c,workflow:{...c.workflow,...l}}))},[]),o=w.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:s}),[n,a,s]);return i.jsx(Zo.Provider,{value:o,children:e})}function Gn(){const e=w.useContext(Zo);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const Me=[{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."}],mp=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function gp({size:e=28,color:t="currentColor",...n}){return i.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...n,children:[i.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),i.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),i.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Ro({title:e,description:t,nextLabel:n="Next",onNext:r,showNext:a=!0,nextDisabled:s=!1,nextVariant:o="primary",extra:l=null,className:c=""}){return i.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[i.jsx("div",{className:"ca-settings-card__heading",children:i.jsxs("div",{children:[i.jsx(na,{children:e}),t?i.jsx(zn,{className:"ca-settings-card__desc",children:t}):null]})}),l,a?i.jsx(ve,{variant:o,disabled:s,onClick:r,endIcon:i.jsx(Yn,{size:14,color:"currentColor"}),children:n}):null]})}function cn({title:e,description:t,onNext:n,nextLabel:r,showNext:a=!0,nextDisabled:s,nextVariant:o,headerExtra:l,children:c,footer:d,className:u=""}){return i.jsxs("section",{className:`ca-settings-card ${u}`.trim(),children:[i.jsx(Ro,{title:e,description:t,onNext:n,nextLabel:r,showNext:a,nextDisabled:s,nextVariant:o,extra:l}),i.jsx("div",{className:"ca-settings-card__body",children:c}),d?i.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function ra({children:e,hint:t,htmlFor:n,className:r=""}){return i.jsxs("div",{className:`ca-field-label ${r}`.trim(),children:[i.jsx("label",{className:"ca-label",htmlFor:n,children:e}),t!=null?i.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function aa({size:e=16,color:t="currentColor",...n}){return i.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:i.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function sa(e){return typeof e=="string"?e:e.value}function oa(e){return typeof e=="string"?e:e.label}function ze({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:s=!1,maxVisible:o,allowClear:l=!1,...c}){const[d,u]=w.useState(!1),f=w.useRef(null),p=e??"",S=n.find(g=>String(sa(g))===String(p)),N=S?oa(S):"";w.useEffect(()=>{if(!d)return;const g=b=>{f.current?.contains(b.target)||u(!1)};return document.addEventListener("mousedown",g),()=>document.removeEventListener("mousedown",g)},[d]);const m=g=>{t?.({target:{value:g}})};return o?i.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:f,children:[i.jsx("button",{type:"button",id:c.id,className:`ca-select__control${N?"":" ca-select__control--placeholder"}`,disabled:s,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(g=>!g),children:N||r}),i.jsx("span",{className:"ca-select__chevron",children:i.jsx(aa,{size:16})}),d?i.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":o},children:n.map(g=>{const b=sa(g),h=String(b)===String(p);return i.jsx("li",{role:"none",children:i.jsx("button",{type:"button",role:"option","aria-selected":h,className:`ca-select__option${h?" is-selected":""}`,onClick:()=>{m(b),u(!1)},children:oa(g)})},b)})}):null]}):i.jsxs("div",{className:`ca-select ${a}`.trim(),children:[i.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:s,...c,children:[i.jsx("option",{value:"",disabled:!l,children:r}),n.map(g=>{const b=sa(g);return i.jsx("option",{value:b,disabled:!!(g&&typeof g=="object"&&g.disabled),children:oa(g)},b)})]}),i.jsx("span",{className:"ca-select__chevron",children:i.jsx(aa,{size:16})})]})}function ei({value:e,onChange:t,placeholder:n,maxLength:r,rows:a=4,className:s="",...o}){return i.jsx("textarea",{className:`ca-textarea ${s}`.trim(),value:e,onChange:t,placeholder:n,maxLength:r,rows:a,...o})}function Ue({label:e,hint:t,children:n,className:r="",htmlFor:a}){return i.jsxs("div",{className:`ca-form-field ${r}`.trim(),children:[e!=null?i.jsx(ra,{htmlFor:a,hint:t,children:e}):null,n]})}function dn({label:e,hint:t,helperText:n,...r}){return i.jsxs(Ue,{label:e,hint:t,htmlFor:r.id,children:[i.jsx(At,{...r}),n?i.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function ia({label:e,hint:t,...n}){return i.jsx(Ue,{label:e,hint:t,htmlFor:n.id,children:i.jsx(ze,{...n})})}function yp({label:e,hint:t,maxLength:n,value:r="",...a}){const s=t??(n!=null?`${String(r).length}/${n}`:void 0);return i.jsx(Ue,{label:e,hint:s,htmlFor:a.id,children:i.jsx(ei,{value:r,maxLength:n,...a})})}function ti({size:e=12,color:t="currentColor",...n}){return i.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:i.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function ni({label:e,onRemove:t,className:n="",title:r}){return i.jsxs("span",{className:`ca-tag ${n}`.trim(),title:r,children:[e,t?i.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:i.jsx(ti,{size:10})}):null]})}function un({label:e="",options:t=[],value:n=[],onChange:r,placeholder:a="Select roles",className:s="",hasError:o=!1,required:l=!1,emptyText:c="No roles available",openDirection:d="up",showAll:u=!0,maxVisible:f=null,searchable:p=!1,searchPlaceholder:S="Search",lockedValues:N=[]}){const[m,g]=w.useState(!1),[b,h]=w.useState(""),v=Array.isArray(n)?n.filter(E=>E!=null&&E!==""):[],_=new Set(N.map(E=>String(E))),B=w.useRef(null),O=w.useRef(null),Q=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!==""),G=new Map(Q.map(E=>[String(E.value),E.label])),k=E=>v.some(V=>String(V)===String(E)),I=Q.filter(E=>`${E.label} ${E.sublabel} ${E.searchText}`.toLowerCase().includes(b.trim().toLowerCase())),K=I.map(E=>E.value),R=K.length>0&&K.every(E=>k(E)),ee=()=>{if(R)r?.(v.filter(E=>_.has(String(E))||!K.some(V=>String(V)===String(E))));else{const E=v.filter(V=>!K.some(j=>String(j)===String(V)));r?.([...E,...K])}};w.useEffect(()=>{m&&O.current&&(O.current.scrollTop=0)},[m]),w.useEffect(()=>{if(!m)return;const E=j=>{B.current&&!B.current.contains(j.target)&&(g(!1),h(""))},V=j=>{j.key==="Escape"&&(g(!1),h(""))};return document.addEventListener("mousedown",E),document.addEventListener("touchstart",E),document.addEventListener("keydown",V),()=>{document.removeEventListener("mousedown",E),document.removeEventListener("touchstart",E),document.removeEventListener("keydown",V)}},[m]);const F=E=>{_.has(String(E))||(k(E)?r?.(v.filter(V=>String(V)!==String(E))):r?.([...v,E]),h(""))},M=E=>{_.has(String(E))||r?.(v.filter(V=>String(V)!==String(E)))},H=v.length?`${v.length} selected`:a;return i.jsxs("div",{className:`ca-role-select ${s}`.trim(),style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,width:"100%"},children:[i.jsxs(ra,{children:[e,l?i.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),i.jsxs("div",{className:"ca-multi-select",ref:B,style:{position:"relative",width:"100%"},children:[p?i.jsxs("div",{className:`ca-multi-select__trigger ${o?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:o?"1px solid #dc2626":void 0,boxShadow:o?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":m,onClick:()=>g(!0),children:[i.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:b,placeholder:S,"aria-label":S,onFocus:()=>g(!0),onChange:E=>{h(E.target.value),g(!0)},onKeyDown:E=>{E.key==="Escape"&&(E.stopPropagation(),g(!1),h(""))}}),i.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:i.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):i.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${o?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:o?"1px solid #dc2626":void 0,boxShadow:o?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>g(E=>!E),"aria-haspopup":"listbox","aria-expanded":m,children:[i.jsx("span",{className:v.length?"":"ca-multi-select__placeholder",children:H}),i.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:i.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),m?i.jsxs("ul",{ref:O,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&&I.length>1?i.jsx("li",{role:"option","aria-selected":R,style:{position:"sticky",top:0,zIndex:1,background:"var(--ca-surface, #fff)",borderBottom:"1px solid var(--ca-border, #e5e7eb)"},children:i.jsxs("label",{className:"ca-multi-select__option",children:[i.jsx("input",{type:"checkbox",checked:R,onChange:ee}),i.jsx("span",{children:"All"})]})}):null,I.length?I.map(E=>i.jsx("li",{role:"option","aria-selected":k(E.value),children:i.jsxs("label",{className:"ca-multi-select__option",children:[i.jsx("input",{type:"checkbox",checked:k(E.value),disabled:_.has(String(E.value)),onChange:()=>F(E.value)}),i.jsxs("span",{className:"ca-multi-select__option-text",children:[i.jsx("span",{className:"ca-multi-select__option-label",children:E.label}),E.sublabel?i.jsx("span",{className:"ca-multi-select__option-sublabel",children:E.sublabel}):null]})]})},String(E.value))):i.jsx("li",{className:"ca-multi-select__empty",children:b?"No matching options":c})]}):null]}),v.length>0?i.jsx("div",{className:"ca-tag-list",children:[...new Set(v)].map(E=>i.jsx(ni,{label:G.get(String(E))||String(E),title:Q.find(V=>String(V.value)===String(E))?.title,onRemove:_.has(String(E))?void 0:()=>M(E)},String(E)))}):null]})}function fn({steps:e=[],currentStep:t=1,allStepsUnlocked:n=!1,onStepClick:r,className:a="",size:s="md",showSaveButton:o=!1,showNextButton:l=!1,onNext:c,nextLabel:d="Next >",extraActions:u=null}){const f=w.useRef({}),p=X.useDispatch();return w.useEffect(()=>{const S=f.current[t];if(!S)return;const N=requestAnimationFrame(()=>{let m=S.parentElement;for(;m&&m!==document.body;){const{overflowX:B}=getComputedStyle(m);if(m.scrollWidth>m.clientWidth+1&&(B==="auto"||B==="scroll"))break;m=m.parentElement}if(!m||m===document.body)return;const g=m.getBoundingClientRect(),b=S.getBoundingClientRect(),h=12;if(b.left>=g.left+h&&b.right<=g.right-h)return;const _=b.left-g.left-(g.width-b.width)/2;m.scrollTo({left:m.scrollLeft+_,behavior:"smooth"})});return()=>cancelAnimationFrame(N)},[t]),i.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${s} ${a}`.trim(),children:[i.jsx("nav",{className:`ca-stepper ca-stepper--${s}`,"aria-label":"Progress",children:e.map((S,N)=>{const m=S.id??N+1,g=m===t,b=m<t,h=!!r&&(n||b||g);return i.jsxs("button",{type:"button",ref:v=>{f.current[m]=v},className:["ca-stepper__item",g?"ca-stepper__item--active":"",b?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-N},onClick:()=>{p(wt({data:!0})),h&&r?.(m)},disabled:!h,"aria-current":g?"step":void 0,children:[i.jsxs("span",{className:"ca-stepper__circle",children:[m,"."]}),i.jsx("span",{className:"ca-stepper__label",children:S.label})]},m)})}),o||l||u?i.jsxs("div",{className:"ca-stepper__actions",children:[u,l?i.jsx(ve,{onClick:c,children:d}):null]}):null]})}const bp={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},Sp=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],vp={value:"",label:"Select Template"},la=e=>String(e?.id??e?.code??e?.name??"");function wp(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 ca(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=wp(n);if(r.length)return r}return[]}function ot(e){return e==null||e===""?null:String(e).trim()||null}function da(e){return ot(e?.userId??e?.user_id??e?.id??e?.value)}function Cp(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=ot(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 s=t.find(o=>{const l=String(o?.name??o?.userName??[o?.firstName,o?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(o?.email??o?.userEmail??"").trim().toLowerCase();return a===l||a===c});return da(s)}function ri(e){const t=String(e||"").trim().toLowerCase().replace(/[^a-z]/g,"");return["admin","root","rootuser","rootadmin","superadmin","superuser"].includes(t)}function Np(e,t){const n=new Set(t.filter(r=>ri(r?.name??r?.roleName??r?.label)).map(r=>ot(r?.id??r?.roleId??r?.value)).filter(Boolean));return e.filter(r=>{if(r?.isAdmin||r?.isRoot||r?.isRootUser||r?.isSuperAdmin)return!0;const a=[...Array.isArray(r?.roles)?r.roles:[],...Array.isArray(r?.userRoles)?r.userRoles:[],r?.role].filter(Boolean),s=[...Array.isArray(r?.roleIds)?r.roleIds:[],r?.roleId,r?.role_id,...a.filter(o=>typeof o=="number"||/^\d+$/.test(String(o))).map(String)].map(o=>ot(typeof o=="object"?o.id??o.roleId??o.role_id??o.value:o));return a.some(o=>ri(typeof o=="string"?o:o?.name??o?.roleName??o?.label)||n.has(ot(typeof o=="object"?o.id??o.roleId??o.role_id??o.value:null)))||s.some(o=>n.has(o))}).map(da).filter(Boolean)}function Jn(...e){const t=new Map;return e.flat().forEach(n=>{const r=ot(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const ai=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(o=>o?.role?.id??o?.roleId):[],n=Array.isArray(e?.roleIds)?e.roleIds:[],r=o=>o.map(l=>l&&typeof l=="object"?l.id??l.roleId??l.role_id??l.value:l).filter(l=>l!=null&&l!==""),a=r(t),s=r(n);return{categoryName:e?.name??e?.code??"",tatMinutes:Ct(e?.tatMinutes)||"",template:la(e),categoryType:e?.categoryType??la(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:s)],userIds:ca(e)}};function _p(e){return[vp,...e]}function Ep(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 Ap({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:s}=Gn(),[o,l]=w.useState(()=>a.categoryFormData??bp),c=w.useRef(a.categoryFormData),[d,u]=w.useState({}),f=X.useDispatch(),{id:p}=X.useSelector(C=>C.appDetails||{}),{isEdit:S}=X.useSelector(C=>C.appDetails||{}),N=X.useSelector(C=>C.complaintType||{}),m=X.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:g=[],saving:b,loading:h,error:v}=N,_=g.find(C=>String(C?.id??C?._id)===String(p))??(String(N.selected?.id??N.selected?._id)===String(p)?N.selected:null),B=w.useRef(_),O=w.useRef(!1);w.useEffect(()=>{B.current=_},[_]);const Q=(C,L={})=>{l(C),c.current=C,s({categoryFormData:C,...L})};w.useEffect(()=>{a.categoryFormData||s({categoryFormData:o,categoryRoleIds:o.roles})},[o,s,a.categoryFormData]),w.useEffect(()=>{!g.length&&!h&&!O.current&&(O.current=!0,f(tn()))},[g.length,f,h]),w.useEffect(()=>{!S||p===null||p===void 0||c.current||f(vt(p)).unwrap().then(C=>{const L=C?.data??C;if(!L||c.current)return;const W=B.current,z=ca(L),x=ca(W),P={...L,roleIds:L.roleIds??W?.roleIds,userIds:z.length?z:x},D=ai(P);l(D),c.current=D,s({categoryFormData:D,categoryRoleIds:D.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[f,p,S,s]);const G=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!==""),k=r.map(C=>{const L=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),W=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:L,sublabel:W,title:W?`Email: ${W}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),I=S?Cp(_,r):da(m),K=Jn(I?[I]:[],Np(r,n)),R=Jn(o.userIds,K),ee=S?_?.createdByUser??_?.createdBy:m;if(I&&!k.some(C=>ot(C.value)===I)){const C=typeof ee=="object"?String(ee.name??ee.userName??[ee.firstName,ee.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";k.push({value:I,label:C||"Created by user",sublabel:typeof ee=="object"?String(ee.email??"").trim():""})}const F=g.map(C=>({value:la(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),M=async C=>{const L=C?.id??C?._id??null,W={...o,...ai(C),categoryName:"",roles:[],userIds:K};if(Q(W,{categoryRoleIds:[]}),s({templateId:L,tatMinutes:Ie(C?.tatMinutes)}),L==null||L===""){s({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[z,x]=await Promise.all([f(Ge(L)).unwrap(),f(Fe(L)).unwrap()]),P=(Array.isArray(z?.data)?z.data:Array.isArray(z)?z:[]).map(A=>({...A,roleIds:[],role:[],roleId:null})),D=Array.isArray(x?.data)?x.data:Array.isArray(x)?x:[];s({templateId:L,tatMinutes:Ie(C?.tatMinutes),prefillWorkflowSteps:P,prefillFormFields:D})}catch(z){console.log("Failed to load template details:",z),s({templateId:L,prefillWorkflowSteps:[],prefillFormFields:[]})}},H=()=>{const C={...o,template:"",categoryType:"",tatMinutes:"",description:""};Q(C),s({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},E=C=>{const L=C.target.value;if(!L){H();return}const W=F.find(z=>z.value===L)?.complaintType;if(W){M(W);return}V("template",L),V("categoryType",L)},V=(C,L)=>{const W=Array.isArray(L)?C==="userIds"?Jn(L,K):[...new Set(L.filter(x=>x!=null&&x!==""))]:L,z={...o,[C]:W};Q(z,C==="roles"?{categoryRoleIds:W}:{}),u(x=>{if(!x[C])return x;const P={...x};return delete P[C],P})},j=o.visibilityType==="PRIVATE_LINK"||o.visibilityType==="PUBLIC_LINK",J=async()=>{const C={};if(o.categoryName.trim()||(C.categoryName=!0),Nf(o.tatMinutes)||(C.tatMinutes=!0),o.visibilityType||(C.visibilityType=!0),o.roles.length||(C.roles=!0),j&&!o.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){u(C);return}u({});const L=Ie(o.tatMinutes),W={...o,userIds:Jn(o.userIds,K)};Q(W,{tatMinutes:L,categoryRoleIds:W.roles});const z={categoryName:o.categoryName,categoryType:o.categoryType||o.template,tatMinutes:L,description:o.description,visibilityType:o.visibilityType,urlLink:j?o.urlLink:"",active:o.active,roles:W.roles,userIds:W.userIds},x=S?rn({id:p,data:{code:z.categoryName,name:z.categoryName,description:z.description,tatMinutes:z.tatMinutes,accessType:z.visibilityType,roleIds:z.roles.map(D=>parseInt(D,10)),userIds:z.userIds.map(D=>parseInt(D,10))},onFail:D=>{console.log("updateComplaintType onFail:",D)}}):nn({payload:z,onSuccess:D=>{f(st(D?.data?.id??D?.id??null))},onFail:D=>{console.log("createComplaintType onFail:",D)}}),P=await f(x);if(S&&rn.fulfilled.match(P)||!S&&nn.fulfilled.match(P)){if(!S){const D=P.payload?.data?.id??P.payload?.id;D!=null&&f(st(D))}t.onNext?.()}};return i.jsxs(i.Fragment,{children:[i.jsx(fn,{...t,steps:Me,showNextButton:!!t.showNextButton,onNext:J}),v||Object.keys(d).length>0?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:v||Ep(d,o)}):null,i.jsxs(cn,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:i.jsx("div",{className:"ca-category-type__header-tools",children:i.jsx("div",{className:"ca-category-type__template",children:i.jsx(ia,{label:"Select Template (Optional)",value:o.template||o.categoryType,onChange:E,options:_p(F),placeholder:"Select Template",maxVisible:5,disabled:S,className:S?"ca-select--disabled":""})})}),children:[i.jsxs("div",{className:"ca-step-section",children:[i.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[i.jsx(dn,{label:i.jsxs(i.Fragment,{children:["Category Name ",i.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:o.categoryName,onChange:C=>V("categoryName",C.target.value),placeholder:"Enter category name"}),i.jsx(dn,{label:i.jsxs(i.Fragment,{children:["TAT ",i.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:o.tatMinutes,onChange:C=>V("tatMinutes",C.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),i.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:i.jsx(dn,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:o.description,onChange:C=>V("description",C.target.value),placeholder:"Enter description"})}),i.jsxs("div",{className:"ca-step-row",children:[i.jsx(ia,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:o.visibilityType,onChange:C=>V("visibilityType",C.target.value),options:Sp,placeholder:"Select visibility type"}),j?i.jsx(dn,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:o.urlLink,onChange:C=>V("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),i.jsxs("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:[i.jsx(un,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,options:G,value:o.roles,maxVisible:4,onChange:C=>V("roles",C)}),i.jsx(un,{label:"Select User for Configure",options:k,value:R,maxVisible:4,searchable:!0,searchPlaceholder:"Search User",lockedValues:K,onChange:C=>V("userIds",C)})]}),h?i.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,b?i.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function si({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 i.jsxs("div",{className:"ca-add-table-card",children:[i.jsxs("header",{className:"ca-add-table-card__header",children:[i.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),i.jsxs("div",{className:"ca-add-table-card__header-text",children:[i.jsx("h3",{className:"ca-add-table-card__title",children:r}),i.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),i.jsx("div",{className:"ca-add-table-card__action",children:i.jsxs(ve,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const ua=["Yes","No"],Tt=()=>i.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function oi({name:e,level:t,value:n,initialFormValues:r,setFormValues:a,onChange:s,selected:o=!1,onSelect:l,onDelete:c,subtitle:d,roleList:u=[],showRoleError:f=!1,showEscalationError:p=!1,userList:S=[],fieldErrors:N={}}){const m=n??r??{},g=Array.isArray(m.role)?m.role:[],b=Array.isArray(m.users)?m.users:[],h=m.workflowType==="user"?"user":"role",v=u.map(F=>({value:F.id??F.roleId??F.value,label:F.name??F.roleName??F.label})).filter(F=>F.value!==null&&F.value!==void 0&&F.value!==""),_=F=>{const M=[F?.firstName,F?.lastName].map(V=>String(V??"").trim()).filter(Boolean).join(" "),H=String(F?.name??F?.userName??F?.label??"").trim()||M,E=[F?.roleName,F?.role?.name,typeof F?.role=="string"?F.role:"",...Array.isArray(F?.roles)?F.roles.map(V=>typeof V=="string"?V:V?.name):[]].map(V=>String(V??"").trim()).filter(Boolean).filter((V,j,J)=>J.indexOf(V)===j).join(", ");return{userName:H,roleName:E,email:String(F?.email??F?.userEmail??"").trim()}},B=S.map(F=>{const{userName:M,roleName:H,email:E}=_(F);return{value:F.id??F.userId??F.user_id??F.value,label:M,sublabel:E,title:E?`Email: ${E}`:"",searchText:H}}).filter(F=>F.value!==null&&F.value!==void 0&&F.value!==""),O=(F,M)=>{const H={...m,[F]:M};a?a(H):s?.(H)},Q=g.length===0&&b.length===0,G=(f||!!N.role)&&Q,k=F=>F?"ca-control--invalid":"",I=t===1?"green":t===2?"orange":"blue",K=F=>`workflow-level-${t}-${F}`,R=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),ee=[{value:"role",label:"Role",count:g.length},{value:"user",label:"User",count:b.length}];return i.jsxs("article",{className:`ca-table-card ca-table-card--${I}${o?" ca-table-card--selected":""}`,onClick:l,children:[i.jsxs("header",{className:"ca-table-card__header",children:[i.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),i.jsxs("div",{className:"ca-table-card__header-text",children:[i.jsx("h3",{className:"ca-table-card__title",children:e}),i.jsx("p",{className:"ca-table-card__subtitle",children:R})]}),i.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:F=>{F.stopPropagation(),c?.()},children:i.jsx(Kn,{size:15,color:"currentColor"})})]}),i.jsx("div",{className:"ca-table-card__divider"}),i.jsxs("div",{className:"ca-table-card__fields",children:[i.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:ee.map(F=>i.jsxs("button",{type:"button",className:`ca-type-toggle__btn${h===F.value?" ca-type-toggle__btn--active":""}`,onClick:M=>{M.stopPropagation(),h!==F.value&&O("workflowType",F.value)},children:[F.label,F.count?` (${F.count})`:""]},F.value))}),h==="role"?i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Select Roles",i.jsx(Tt,{})]}),htmlFor:K("roleIds"),children:i.jsx(un,{id:K("role"),value:g,options:v,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:G,onChange:F=>O("role",F)},"role")}):i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Select Users",i.jsx(Tt,{})]}),htmlFor:K("userIds"),children:i.jsx(un,{id:K("user"),value:b,options:B,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:G,onChange:F=>O("users",F)},"user")}),i.jsx("div",{className:"ca-table-card__divider"}),i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Can Resolve ",i.jsx(i.Fragment,{children:"(Change the Status)"}),i.jsx(Tt,{})]}),htmlFor:K("canResolve"),children:i.jsx(ze,{id:K("canResolve"),className:k(N.canResolve),value:m.canResolve,options:ua,onChange:F=>O("canResolve",F.target.value)})}),i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Can Reassign ",i.jsx(i.Fragment,{children:"(Change the Level)"}),i.jsx(Tt,{})]}),htmlFor:K("canReassign"),children:i.jsx(ze,{id:K("canReassign"),className:k(N.canReassign),value:t===1?"No":m.canReassign,options:t===1?["No"]:ua,disabled:t===1,onChange:F=>O("canReassign",F.target.value)})}),i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Final Level",i.jsx(i.Fragment,{children:"(can be resolved or closed the complaint)"}),i.jsx(Tt,{})]}),htmlFor:K("finalLevel"),children:i.jsx(ze,{id:K("finalLevel"),className:k(N.finalLevel),value:m.finalLevel,options:ua,onChange:F=>O("finalLevel",F.target.value)})}),i.jsx(Ue,{label:i.jsxs(i.Fragment,{children:["Escalation time",i.jsx(Tt,{})]}),htmlFor:K("escalationTime"),children:i.jsx("div",{className:"ca-table-card__time-input",children:i.jsx(At,{id:K("escalationTime"),type:"text",className:k(p||N.escalation),value:m.escalateAfterMinutes??"",placeholder:"--",onChange:F=>O("escalateAfterMinutes",F.target.value)})})})]})]})}function fa({open:e,title:t,children:n,primaryLabel:r="Save",onPrimary:a,secondaryLabel:s="Cancel",onSecondary:o,primaryDisabled:l=!1}){return e?i.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:i.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?i.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,n,i.jsxs("div",{className:"ca-confirm-modal__actions",children:[s?i.jsx(ve,{variant:"outline",onClick:o,children:s}):null,i.jsx(ve,{onClick:a,disabled:l,children:r})]})]})}):null}function ii({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?i.jsx(fa,{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"?i.jsx(fa,{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 pa(e,t=0){const n=s=>!String(s??"").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 Lp="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",Tp="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",Fp="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",Ip="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",ha=(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:Ct(n.escalateAfterMinutes)||""});function ma(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 Op(e,t){const n=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(n.find(l=>l.length)??n[0]??[]).map(l=>l&&typeof l=="object"?l.id??l.roleId:l).filter(l=>l!=null),s=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(l=>l&&typeof l=="object"?l.userId??l.id:l).filter(l=>l!=null),o=a.length>0?"role":s.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return ha(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:s,workflowType:o,canResolve:ma(e.canResolve),canReassign:t===0?"No":ma(e.canReassign),finalLevel:ma(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:Ct(e.escalateAfterMinutes)||""})}function li(e=[]){return(Array.isArray(e)?e:[]).map(Op)}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 ga=[ha(1,"Level 1")];function di({accent:e}){return i.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[i.jsx("img",{src:Lp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),i.jsx("span",{children:"Escalates to"}),i.jsx("img",{src:Tp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function ui({accent:e}){return i.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[i.jsx("img",{src:Fp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),i.jsx("span",{children:"Escalates to"}),i.jsx("img",{src:Ip,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function fi({id:e,selectedTableId:t,onSelect:n,setUpdatePayload:r,registerWorkflowActions:a,roleList:s=[],prefillSteps:o=[],tatTotalMinutes:l=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:u=!1,userList:f=[],onAddBlocked:p}){const S=e!=null,[,N]=w.useState(ga),[m,g]=w.useState(ga),[b,h]=w.useState([]),[v,_]=w.useState(S),[B,O]=w.useState(null),[Q,G]=w.useState(l),k=w.useRef(null),I=w.useRef(l),[K,R]=w.useState([]),[ee,F]=w.useState(null),M=X.useDispatch(),H=w.useMemo(()=>{const x=li(o);return x.length?x:ga},[o]),E=(()=>{const x=new Set;return[...s,...b,...ci(o)].filter(P=>{const D=String(P?.id??P?.roleId??P?.value);return x.has(D)?!1:(x.add(D),!0)})})();if(!S&&B!==H){const x=Nt(H,l);O(H),g(x),N(x)}if(!v&&Q!==l){G(l);const x=Nt(m,l);x!==m&&g(x)}w.useEffect(()=>{I.current=l},[l]),w.useEffect(()=>{if(!S){const D=Nt(H,I.current);r({id:e,tables:D});return}let x=!1;return(async()=>{_(!0);try{const D=await M(Ge(e)).unwrap(),A=Array.isArray(D?.data)?D.data:Array.isArray(D)?D:[];h(ci(A));const Z=li(A),Y=Nt(Z.length?Z:H,I.current);x||(N(Y),g(Y),r({id:e,tables:Y}))}catch(D){if(!x){const A=Nt(H,I.current);N(A),g(A),r({id:e,tables:A}),console.error("Failed to load workflow steps:",D)}}finally{x||_(!1)}})(),()=>{x=!0}},[M,H,S,e,r]),w.useEffect(()=>{v||r?.({id:e,tables:m})},[e,v,r,m]);const V=w.useCallback((x,{preserveLastLevel:P}={})=>{const D=x.map((Y,re)=>re===0?{...Y,canReassign:"No"}:Y),A=P?D:Nt(D,l),Z={id:e,tables:A};return g(A),console.log("[TableCardGrid] updated form values:",A),console.log("[TableCardGrid] PUT payload:",Z),r?.(Z),Z},[e,r,l]);w.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!m.length)return null;const x=m.length-1,P=m.map((D,A)=>A===x?{...D,finalLevel:"Yes"}:D);return V(P,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,m,l,V]);const j=x=>{const P=m[m.length-1];return P!=null&&P.id===x},J=(x,P)=>{V(m.map(D=>D.id===x?{...D,...P}:D),{preserveLastLevel:j(x)})},C=(x,P)=>{const D=m.findIndex(Y=>Y.id===x);if(D<0)return;const A=m[D],Z=typeof P=="function"?P(A):P;if(D<m.length-1&&A.finalLevel!=="Yes"&&Z.finalLevel==="Yes"){F({tableId:x,value:Z});return}V(m.map((Y,re)=>re===D?Z:Y),{preserveLastLevel:j(x)})},L=()=>{if(!ee)return;const x=m.findIndex(D=>D.id===ee.tableId);if(x<0){F(null);return}const P=m.slice(0,x+1).map((D,A)=>A===x?ee.value:D);R(D=>D.filter(A=>P.some(Z=>Z.id===A))),V(P),F(null)},W=x=>{if(m.some(Y=>Y.finalLevel==="Yes"))return;const P=m[m.length-1];if(P){const Y=pa(P,m.length-1);if(Object.values(Y).some(Boolean)){R(re=>re.includes(P.id)?re:[...re,P.id]),p?.(`Please fill all required fields of Level ${m.length} before adding a new level.`);return}}p?.("");const D=m.reduce((Y,re)=>Math.max(Y,Number(re.id)||0),0)+1,A=m.length+1,Z=Af(m);V([...Z,ha(D,x||`Level ${A}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const Y=k.current;Y&&Y.scrollTo({left:Y.scrollWidth,behavior:"smooth"})})})},z=x=>{V(m.filter(P=>P.id!==x))};return v&&!m.length?null:i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:k,children:i.jsxs("div",{className:"ca-table-card-grid__track",children:[m.map((x,P)=>i.jsxs(w.Fragment,{children:[i.jsx(oi,{name:x.name,roleList:E,showRoleError:c||u,showEscalationError:d,userList:f,level:P+1,value:x,initialFormValues:x,setFormValues:D=>C(x.id,D),selected:x.id===t,onSelect:()=>n?.(x),onDelete:()=>z(x.id),onChange:D=>J(x.id,D),fieldErrors:u||K.includes(x.id)?pa(x,P):{}}),P<m.length-1?i.jsxs(i.Fragment,{children:[i.jsx(di,{accent:P===0?"green":P===1?"orange":"purple"}),i.jsx(ui,{accent:P===0?"green":P===1?"orange":"purple"})]}):null]},x.id)),m.length?i.jsxs(i.Fragment,{children:[i.jsx(di,{accent:m.length===1?"green":m.length===2?"orange":"purple"}),i.jsx(ui,{accent:m.length===1?"green":m.length===2?"orange":"purple"})]}):null,i.jsx(si,{level:m.length+1,onAdd:W,disabled:m.some(x=>x.finalLevel==="Yes")})]})}),i.jsx(ii,{variant:"finalLevelDelete",levelNo:ee?m.findIndex(x=>x.id===ee.tableId)+1:null,open:!!ee,onConfirm:L,onClose:()=>F(null)})]})}function kp({totalMinutes:e=0,usedMinutes:t=0}){const n=Ie(e),r=Ie(t),a=Math.max(0,n-r),s=Ct(a)||"0m",o=n>0?Math.min(100,r/n*100):0;return i.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${s} left`,children:[i.jsxs("div",{className:"ca-tat-progress__row",children:[i.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),i.jsxs("span",{className:"ca-tat-progress__remaining",children:[s," left"]})]}),i.jsx("div",{className:"ca-tat-progress__track",children:i.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${o}%`}})})]})}function pi(e){return e?.data??e?.id??e}function xp(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 Dp(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles].flatMap(n=>Array.isArray(n)?n:[n]).map(xp).filter(Boolean)}function Pp(e){const t=[e?.role,e?.roles,e?.assignedRoles].flatMap(r=>Array.isArray(r)?r:[r]);return[e?.roleName,e?.role_name,...t.map(r=>typeof r=="string"?r:r?.name??r?.roleName??r?.label)].filter(Boolean).map(r=>String(r).trim().toLowerCase()).filter(Boolean)}function Mp({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:s=[]}){const{state:o,updateWorkflow:l}=Gn(),{workflow:c}=o,d=o.categoryRoleIds,u=w.useMemo(()=>{const j=new Set((Array.isArray(d)?d:[]).filter(J=>J!=null&&J!=="").map(String));return j.size?a.filter(J=>!j.has(String(J.id??J.roleId??J.value))):a},[d,a]),f=w.useMemo(()=>{const j=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));if(!j.size)return s;const J=new Set(a.filter(C=>j.has(String(C.id??C.roleId??C.value))).map(C=>String(C.name??C.roleName??C.label??"").trim().toLowerCase()).filter(Boolean));return s.filter(C=>!Dp(C).some(L=>j.has(L))&&!Pp(C).some(L=>J.has(L)))},[d,a,s]),[p,S]=w.useState(null),[N,m]=w.useState(""),[g,b]=w.useState(!1),[h,v]=w.useState(null),_=w.useRef(null),B=w.useCallback(j=>{S(j),m("")},[]),O=w.useCallback(j=>{_.current=j},[]),Q=X.useDispatch();let{id:G}=X.useSelector(j=>j.appDetails||{});const k=X.useSelector(j=>j.complaintType?.selected),I=pi(G),K=pi(k?.id??k?._id),R=Ie(k?.tatMinutes??o.tatMinutes);w.useEffect(()=>{I==null||I===""||K!=null&&String(K)===String(I)&&k?.tatMinutes!=null||Q(vt(I))},[Q,k?.tatMinutes,K,I]);const ee=w.useMemo(()=>{const j=Array.isArray(p?.tables)?p.tables:[];return Ef(j)},[p]),F=r??c.selectedTableCard??null,M=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((j,J)=>`L${J+1}`).join(" > "):"",H=j=>{Q($n({id:j.id,tables:j,onSuccess:J=>{console.log("updateWorkflowSteps onSuccess:",J),m(""),n.onNext?.()},onFail:J=>{const C=J?.response?.data??J?.payload??J,L=[...new Set(Array.isArray(C?.errors)?C.errors.map(x=>x?.message).filter(Boolean):[])],W=(L.length?L.join(" "):null)??C?.message??C?.error??J?.message??"Failed to update workflow steps",z=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(_f(z))}}))},E=async()=>{if(m(""),!p){m("Workflow steps are not ready to save.");return}const j=Array.isArray(p.tables)?p.tables:[];if(!j.length){m("Add at least one workflow level before continuing.");return}b(!0);const J=j.map((W,z)=>pa(W,z)),C=j.length-1;if(J.some((W,z)=>Object.entries(W).some(([x,P])=>P&&!(z===C&&x==="finalLevel")))){m("Please complete all required fields in every workflow level.");return}if(j[C].finalLevel!=="Yes"){v(C+1);return}H(p)},V=()=>{const j=_.current?.setLastLevelFinal?.();if(v(null),!j){m("Unable to update the final workflow level. Please try again.");return}b(!0),H(j)};return i.jsxs(i.Fragment,{children:[i.jsx(fn,{...n,steps:Me,onNext:E,showNextButton:!0}),N?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:N}):null,i.jsx(ii,{variant:"finalLevelRequired",levelNo:h,open:h!=null,onConfirm:V,onClose:()=>v(null)}),i.jsx(cn,{title:t.title,description:M,showNext:!1,headerExtra:i.jsx(kp,{totalMinutes:R,usedMinutes:ee}),children:i.jsx("div",{className:"ca-workflow__main",children:i.jsx(fi,{id:G,selectedTableId:F?.id,onSelect:j=>l({selectedTableCard:j}),setUpdatePayload:B,registerWorkflowActions:O,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(N),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(N),showRequiredErrors:g,prefillSteps:o.prefillWorkflowSteps,tatTotalMinutes:R})})})]})}function hi({onAdd:e,disabled:t=!1}){return i.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const mi=w.createContext(null);function ya(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Store"}function gi(e,t){const n=ya(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function it(){const e=w.useContext(mi);return{storeName:ya(e),label:t=>gi(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?ya(e):gi(t.fieldLabel??t.label??t.fieldName??"",e)}}}function yi({size:e=16,color:t="#9CA3AF",...n}){return i.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...n,children:[i.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),i.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),i.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),i.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),i.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),i.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}const Up=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],bi=new Set(["Select","Dropdown","Radio","Checkbox"]),Bp=["Both","User","Admin"],$p={Open:"#FF0000","Under Verification":"#FF6F00",Resolved:"#00D82F",Closed:"#006FFF"},Si=["Open","Under Verification","Resolved","Closed"],Be={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...Si],optionColors:{...$p},parentMappings:{},lockMode:"options",isNew:!1},Zn={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},pn={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},jp=[{...Be,label:Be.fieldLabel},{...pn,label:pn.fieldLabel}];function vi(e){return String(e||"").trim().toLowerCase()}function se(e){const t=vi(e?.fieldKey),n=vi(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function $e(e){return se(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function Vp(e,t=[]){if(!se(e))return!1;const n=t.length?t:[e],r=n.filter(o=>!o?.isNew&&se(o)),a=n.filter($e),s=r[0]||a[0]||n.find(o=>se(o)&&!o?.isNew);return s?String(s.id)===String(e.id):!e?.isNew}function Xn(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function Ze(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function Xe(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="closed"}function qp(e){return String(e||"").trim().toLowerCase()==="open"}function Ft(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),n=new Set,r=[];return Si.forEach(a=>{const s=t.find(o=>String(o).trim().toLowerCase()===a.toLowerCase());s==null||n.has(s)||(r.push(s),n.add(s))}),t.forEach(a=>{n.has(a)||(r.push(a),n.add(a))}),r}function wi(e){return bi.has(e?.fieldType)||$e(e)}function ba(e){return!e||se(e)||Ze(e)||!bi.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function It(e=[]){return e.some(ba)}function Ci(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!ba(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 Wp(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(),s=String(t?.fieldType||"").trim().toLowerCase();return!!(n&&r&&a&&s&&n===r&&a===s)}function Qn(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:Wp(e,n)):!1}function Rn(e=[]){return e.some(t=>Qn(t,e))}function Sa(e,t={},n=""){const r=String(n||"");if(se({fieldKey:r})||Ze({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 zp(e){return Xn(e)?"Priorities":"Option"}function Hp(e,t=!1){return e?t?"Define options and set parent.":se(e)?"Manage the status":"Manage your fields.":""}function er(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return er({...e,fieldType:"Checkbox"},t);if(se(e)){if(e?.isNew||!Vp(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{...Be,...e,fieldKey:Be.fieldKey,fieldLabel:r?Be.fieldLabel:n,originalFieldName:r?Be.originalFieldName:e.originalFieldName??n,fieldType:Be.fieldType,required:!0,options:Ft(e.options?.length?e.options:Be.options),optionColors:{...Be.optionColors,...e.optionColors},lockMode:"options"}}return Xn(e)?{...Zn,...e,fieldKey:e.fieldKey||Zn.fieldKey,fieldType:Zn.fieldType,options:e.options?.length?e.options:Zn.options,lockMode:"options"}:Ze(e)?{...pn,...e,fieldKey:pn.fieldKey,fieldType:pn.fieldType,required:!0,lockMode:"all"}:e}function Ot(e=[]){const t=e.map(r=>er(r,e));if(t.some(se))return t;const n={...Be};return[er(n,[n,...t]),...t]}function va(e,t){return!t||e.includes(t)?e:[t,...e]}function Ni(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 Kp="#9CA3AF";function _i({field:e,fieldOptions:t=[],fieldTypeOptions:n=[],fieldAccessOptions:r=[],hideForOptions:a=[],isSaving:s=!1,selected:o=!1,isDragging:l=!1,onSelect:c,onDragStartField:d,onDragEndField:u,onReorder:f,onChange:p,onDelete:S,onSave:N,cardRef:m,onOptionNotice:g,hasDuplicateIdentity:b=!1,hasMissingOptions:h=!1}){const[v,_]=w.useState(""),[B,O]=w.useState(null),Q=w.useRef(!1),{label:G,fieldLabel:k}=it(),I=Ni(e),[K,R]=w.useState(()=>({id:e.id,signature:e.isNew?null:I}));K.id!==e.id&&R({id:e.id,signature:e.isNew?null:I});const ee=e.lockMode==="all",F=$e(e),M=ee||e.lockMode==="options",H=wi(e),E=ee||!H,V=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),j=K.signature!==I,J=!!s||!V,C=b||h?"ca-control--invalid":"",L=A=>p?.({...e,...A}),W=()=>{if(E)return;const A=v.trim();if(!A)return;if(se(e)&&Xe(A)){const Y=(e.options||[]).find(re=>String(re).trim().toLowerCase()===A.toLowerCase());if(Y){g?.(`${Y} already exists in options`),_("");return}}if(e.options?.includes(A))return;const Z=se(e)?{...e.optionColors||{},[A]:e.optionColors?.[A]||Kp}:e.optionColors;L({options:se(e)?Ft([...e.options||[],A]):[...e.options||[],A],...se(e)?{optionColors:Z}:{}}),_("")},z=A=>{if(E||se(e)&&Xe(A))return;const Z={...e.optionColors||{}};delete Z[A];const Y={...e.parentMappings||{}};delete Y[A],L({options:e.options.filter(re=>re!==A),parentMappings:Y,...se(e)?{optionColors:Z}:{}})},x=A=>{E||se(e)&&Xe(A)||(Q.current=!1,O({original:A,draft:A}))},P=()=>{Q.current=!0,O(null)},D=()=>{if(Q.current){Q.current=!1;return}if(!B)return;const{original:A,draft:Z}=B,Y=Z.trim();if(O(null),!Y||Y===A)return;if((e.options||[]).some(fe=>fe!==A&&(fe===Y||se(e)&&String(fe).trim().toLowerCase()===Y.toLowerCase()))){g?.(`${Y} already exists in options`);return}const ye=(e.options||[]).map(fe=>fe===A?Y:fe),je={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(je,A)&&(je[Y]=je[A],delete je[A]);const Oe={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(Oe,A)&&(Oe[Y]=Oe[A],delete Oe[A]),L({options:se(e)?Ft(ye):ye,parentMappings:je,optionColors:Oe})};return i.jsxs("article",{ref:m,className:`ca-form-card${o?" ca-form-card--selected":""}${l?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:A=>{F||(A.preventDefault(),A.dataTransfer.dropEffect="move")},onDrop:A=>{if(F){u?.();return}A.preventDefault();const Z=A.dataTransfer.getData("text/plain");f?.(Z,e.id),u?.()},children:[i.jsxs("div",{className:"ca-form-card__row ca-form-card__row--order",children:[F?i.jsx("span",{"aria-hidden":"true",style:{display:"inline-block",width:15,height:15}}):i.jsx("span",{className:"ca-form-card__drag",draggable:!0,"aria-label":"Reorder field",onClick:A=>A.stopPropagation(),onDragStart:A=>{A.dataTransfer.setData("text/plain",String(e.id)),A.dataTransfer.effectAllowed="move",d?.()},onDragEnd:()=>u?.(),children:i.jsx(yi,{size:15,color:"currentColor"})}),i.jsxs("div",{className:"ca-form-card__actions",children:[i.jsx("button",{type:"button",className:"ca-form-card__save","aria-label":"Save form field",disabled:J||ee||!j,onClick:async A=>{if(A.stopPropagation(),J||ee||!j)return;const Z=await N?.(e);Z&&R({id:e.id,signature:Ni(Z)})},children:"Save"}),$e(e)?null:i.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:A=>{A.stopPropagation(),S?.(e.id)},children:i.jsx(Kn,{size:15,color:"currentColor"})})]})]}),i.jsx("div",{className:"ca-form-card__row",children:M?i.jsx("span",{className:"ca-form-card__static",children:k(e)||"—"}):i.jsx(At,{value:ee?k(e):e.fieldLabel,placeholder:"Enter field label",disabled:M,className:C,onChange:A=>L({fieldLabel:A.target.value})})}),i.jsx("div",{className:"ca-form-card__row",children:M?i.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):i.jsx(ze,{value:e.fieldType,options:va(n,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:M,className:C,onChange:A=>{const Z=A.target.value;if(wi({...e,fieldType:Z})){L({fieldType:Z,dependsOn:"",parentMappings:{}});return}L({fieldType:Z,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),i.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:i.jsx(Hn,{checked:!!e.required,disabled:M,onChange:A=>L({required:A}),"aria-label":"Required"})}),i.jsx("div",{className:"ca-form-card__row",children:i.jsx(ze,{value:e.fieldAccess,options:va(r,e.fieldAccess),placeholder:"Select access",disabled:M,allowClear:!0,onChange:A=>L({fieldAccess:A.target.value})})}),i.jsxs("div",{className:"ca-form-card__row",children:[i.jsx(ze,{value:"",options:a.filter(A=>!e.hideFor?.includes(A)),placeholder:"Select level",disabled:M,onChange:A=>L({hideFor:[...e.hideFor||[],A.target.value]})}),e.hideFor?.length?i.jsx("div",{className:"ca-form-card__chips",children:e.hideFor.map(A=>i.jsxs("span",{className:"ca-form-card__chip",children:[A,i.jsx("button",{type:"button","aria-label":`Remove ${A}`,disabled:M,onClick:()=>L({hideFor:e.hideFor.filter(Z=>Z!==A)}),children:"×"})]},A))}):null]}),i.jsx("div",{className:"ca-form-card__row",children:i.jsx(ze,{value:e.dependsOn,options:va(t,e.dependsOn).map(A=>({value:A,label:G(A)})),placeholder:"Select field label",disabled:M||!H,allowClear:!0,onChange:A=>{const Z=A.target.value;if(!Z){L({dependsOn:"",parentMappings:{}});return}L({dependsOn:Z})}})}),i.jsxs("div",{className:"ca-form-card__row ca-form-card__row--options",children:[i.jsxs("div",{className:"ca-form-card__option-entry",children:[i.jsx(At,{value:v,placeholder:"Enter option",disabled:E,className:h?"ca-control--invalid":"",onChange:A=>_(A.target.value),onKeyDown:A=>{A.key==="Enter"&&(A.preventDefault(),W())}}),i.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:E,onClick:W,children:"+"})]}),i.jsx("div",{className:"ca-form-card__chips",children:(H?se(e)?Ft(e.options||[]):e.options||[]:[]).map(A=>{const Z=se(e)&&Xe(A),Y=B?.original===A;return i.jsxs("span",{className:`ca-form-card__chip${Z?" ca-form-card__chip--locked":""}`,children:[Y?i.jsx("input",{autoFocus:!0,value:B.draft,onChange:re=>O({original:A,draft:re.target.value}),onBlur:D,onClick:re=>re.stopPropagation(),onKeyDown:re=>{re.key==="Enter"?(re.preventDefault(),D()):re.key==="Escape"&&(re.preventDefault(),P())},"aria-label":`Edit ${A}`,style:{width:`${Math.max(B.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):i.jsx("span",{role:Z||E?void 0:"button",tabIndex:Z||E?void 0:0,title:Z||E?void 0:"Click to edit",style:Z||E?void 0:{cursor:"text"},onClick:()=>x(A),onKeyDown:re=>{re.key==="Enter"&&x(A)},children:A}),Z?null:i.jsx("button",{type:"button","aria-label":`Remove ${A}`,disabled:E,onClick:()=>z(A),children:"×"})]},A)})})]})]})}const Ei=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const Yp=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const Gp=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Ai=e=>{const t=Gp(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 Jp=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Zp=w.createContext({}),Xp=()=>w.useContext(Zp),Qp=w.forwardRef(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:a="",children:s,iconNode:o,...l},c)=>{const{size:d=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p="currentColor",className:S=""}=Xp()??{},N=r??f?Number(n??u)*24/Number(t??d):n??u;return w.createElement("svg",{ref:c,...wa,width:t??d??wa.width,height:t??d??wa.height,stroke:e??p,strokeWidth:N,className:Ei("lucide",S,a),...!s&&!Jp(l)&&{"aria-hidden":"true"},...l},[...o.map(([m,g])=>w.createElement(m,g)),...Array.isArray(s)?s:[s]])});const we=(e,t)=>{const n=w.forwardRef(({className:r,...a},s)=>w.createElement(Qp,{ref:s,iconNode:t,className:Ei(`lucide-${Yp(Ai(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Ai(e),n};const Rp=we("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);const Li=we("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 Ti=we("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const eh=we("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const th=we("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const nh=we("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const rh=we("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const tr=we("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const ah=we("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 sh=we("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 oh=we("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 Fi=we("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const Ii=we("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 ih=we("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"}]]);function Ca({option:e,onDelete:t,locked:n=!1}){return i.jsx("td",{children:n?null:i.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:i.jsx(ih,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function lh(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 ch({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,a=se(r)?r:null,s=w.useMemo(()=>{const h=String(r?.dependsOn||"").trim();if(!h)return null;const v=e.filter(_=>String(_.fieldLabel||"").trim()===h);return v.find(_=>(_.options||[]).some(B=>String(B||"").trim()))||v[0]||null},[r?.dependsOn,e]),o=s?.options||[],l=!!r?.dependsOn,[c,d]=w.useState(!1),u=(h,v)=>{if(!a)return;const _=/^#[0-9A-Fa-f]{6}$/.test(v)?v.toUpperCase():v;n?.(e.map(B=>B.id===a.id?{...B,optionColors:{...B.optionColors,[h]:_}}:B))},f=(h,v)=>{r&&n?.(e.map(_=>_.id===r.id?{..._,parentMappings:{..._.parentMappings||{},[h]:v}}:_))},p=h=>{if(!r||se(r)&&Xe(h))return;const v={...r.optionColors||{}};delete v[h];const _={...r.parentMappings||{}};delete _[h],n?.(e.map(B=>B.id===r.id?{...B,options:(B.options||[]).filter(O=>O!==h),parentMappings:_,...se(B)?{optionColors:v}:{}}:B))},S=r?.fieldLabel||"Select field",N=Hp(r,l),m=se(r)?Ft(r?.options||[]):r?.options||[],g=(h,v)=>i.jsx("div",{className:"field-options-panel__table-wrap",children:i.jsxs("table",{className:"field-options-panel__table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[h.map(_=>i.jsx("th",{scope:"col",children:_},_)),i.jsx("th",{scope:"col","aria-label":"Delete"})]})}),i.jsx("tbody",{children:v})]})});let b=i.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return l?b=m.length?g(["Option label",s?.fieldLabel||"Parent"],m.map(h=>i.jsxs("tr",{children:[i.jsx("td",{children:h}),i.jsx("td",{children:i.jsxs("select",{"aria-label":`Parent for ${h}`,value:r.parentMappings?.[h]||"",disabled:!o.length,onChange:v=>f(h,v.target.value),children:[i.jsx("option",{value:"",children:o.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),o.map(v=>i.jsx("option",{value:v,children:v},v))]})}),i.jsx(Ca,{option:h,onDelete:p,locked:se(r)&&Xe(h)})]},h))):i.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):a?b=m.length?g([se(a)?"Status":"Option","Colors"],m.map(h=>{const v=lh(a.optionColors?.[h]);return i.jsxs("tr",{children:[i.jsx("td",{children:h}),i.jsx("td",{children:i.jsxs("div",{className:"field-options-panel__color",children:[i.jsx("input",{className:"field-options-panel__hex","aria-label":`Color for ${h}`,value:a.optionColors?.[h]||v,onChange:_=>u(h,_.target.value)}),i.jsx("label",{className:"field-options-panel__swatch",style:{background:v},title:v,children:i.jsx("input",{type:"color","aria-label":`Pick color for ${h}`,value:v,onChange:_=>u(h,_.target.value)})})]})}),i.jsx(Ca,{option:h,onDelete:p,locked:se(a)&&Xe(h)})]},h)})):i.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):m.length&&(b=g([zp(r)],m.map(h=>i.jsxs("tr",{children:[i.jsx("td",{children:h}),i.jsx(Ca,{option:h,onDelete:p,locked:se(r)&&Xe(h)})]},h)))),i.jsxs("aside",{className:`field-options-panel${c?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${S}`,children:[i.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":c,"aria-controls":"field-options-panel-body",onClick:()=>d(h=>!h),children:[i.jsxs("span",{className:"field-options-panel__summary-text",children:[i.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",S]}),N?i.jsx("span",{className:"field-options-panel__description",children:N}):null]}),i.jsx(Ti,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),i.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:b})]})}function dh(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||se(a))return;const s=String(a.fieldLabel||a.label||"").trim();if(!s)return;const o=s.toLowerCase();n.has(o)||!(a?.options||[]).some(c=>String(c||"").trim())||(n.add(o),r.push(s))}),r}const uh=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function fh(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 kt(e=[]){const t=e.map(fh);return t.map(n=>er(n,t))}function Oi({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:s=[],onSave:o,onDelete:l}){const[c,d]=w.useState(()=>kt(e??[])),[u,f]=w.useState(null),[p,S]=w.useState(null),[N,m]=w.useState(""),g=w.useRef(""),b=w.useRef(null),h=w.useRef({}),v=M=>{const H=kt(M);d(H),t?.(H)},_=(e??[]).map(M=>M.id).join(",");w.useEffect(()=>{if(!N)return;const M=window.setTimeout(()=>m(""),3200);return()=>window.clearTimeout(M)},[N]),w.useEffect(()=>{!_||_===g.current||(g.current=_,d(kt(e)))},[_,e]),w.useEffect(()=>{if(n)return n.current=M=>{M&&d(H=>{const E=H.find(J=>Qn(M,[J]));if(Rn(H)||E)return E&&f(E.id),H;if(It(H))return H;const V=kt([...H,{...M,id:`${M.id}-${Date.now()}`,isNew:!0}]),j=V[V.length-1];return f(j.id),t?.(V),V})},()=>{n.current=null}},[n,t]),w.useEffect(()=>{if(u==null)return;const M=b.current,H=h.current[u];if(!M||!H)return;const E=requestAnimationFrame(()=>{const V=M.getBoundingClientRect(),j=H.getBoundingClientRect(),J=12;j.left>=V.left+J&&j.right<=V.right-J||M.scrollTo({left:M.scrollLeft+j.left-V.left-(V.width-j.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(E)},[u,c]);const B=(M,H)=>{if(M==null||H==null||String(M)===String(H))return;const E=c.findIndex(L=>String(L.id)===String(M)),V=c.findIndex(L=>String(L.id)===String(H));if(E<0||V<0||$e(c[E])||$e(c[V]))return;const j=c.findIndex($e),J=[...c],[C]=J.splice(E,1);if(J.splice(V,0,C),j>=0){const L=J.findIndex($e);if(L!==j){const[W]=J.splice(L,1);J.splice(j,0,W)}}v(J.map((L,W)=>({...L,order:W+1})))},O=M=>{const H=c.find(z=>z.id===M.id),E=H&&H.fieldType!==M.fieldType;M.dependsOn&&M.dependsOn!==H?.dependsOn&&f(M.id);const V=String(H?.fieldLabel||"").trim(),j=H?.options||[],J=M.options||[],C=j.filter(z=>!J.includes(z)),L=J.filter(z=>!j.includes(z)),W=j.length===J.length&&C.length===1&&L.length===1?{from:C[0],to:L[0]}:null;v(c.map(z=>{if(z.id===M.id)return M;if(E&&V&&String(z.dependsOn||"").trim()===V)return{...z,dependsOn:"",parentMappings:{}};if(W&&V&&String(z.dependsOn||"").trim()===V){const x=Object.fromEntries(Object.entries(z.parentMappings||{}).map(([P,D])=>[P,D===W.from?W.to:D]));return{...z,parentMappings:x}}return z}))},Q=async M=>{const H=c.find(E=>E.id===M);if(!(!H||$e(H)))try{if(await l?.(H)===!1)return;const V=String(H.fieldLabel||"").trim();v(c.filter(j=>j.id!==M).map((j,J)=>V&&String(j.dependsOn||"").trim()===V?{...j,dependsOn:"",parentMappings:{},order:J+1}:{...j,order:J+1}))}catch{}},G=()=>{Rn(c)||It(c)||v(kt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},k=async M=>{if(Qn(M,c))return null;try{const H=await o?.(M);return H?(d(E=>{const V=kt(E.map(j=>j.id===M.id?{...H,isNew:!1,order:j.order||1}:j));return t?.(V),V}),H):null}catch{return null}},I=Rn(c),K=It(c),R=I?"A field with this label and type already exists":"",ee=Ci(c),F=c.find(M=>M.id===u)||null;return i.jsxs(i.Fragment,{children:[R||ee||N?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:R||ee||N}):null,i.jsxs("div",{className:"ca-form-card-grid__container ",children:[i.jsxs("div",{className:"ca-form-card-grid",children:[i.jsx("div",{className:"ca-form-card-grid__labels",children:uh.map(M=>i.jsx("div",{className:"ca-form-card-grid__label",children:M},M))}),i.jsxs("div",{className:"ca-form-card-grid__cards",ref:b,children:[c.map(M=>i.jsx(_i,{field:M,fieldOptions:dh(M,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:s,selected:F?.id===M.id,isDragging:String(p)===String(M.id),cardRef:H=>{H?h.current[M.id]=H:delete h.current[M.id]},onSelect:()=>f(M.id),onDragStartField:()=>S(M.id),onDragEndField:()=>S(null),onReorder:B,onChange:O,onDelete:Q,onSave:k,onOptionNotice:m,hasDuplicateIdentity:Qn(M,c),hasMissingOptions:ba(M)},M.id)),i.jsx(hi,{onAdd:G,disabled:I||K})]})]}),i.jsx(ch,{formFields:c,selectedField:F,onChange:v})]})]})}const ki={department:Li,priorities:sh,status:tr,statuses:tr,statusCustom:tr,Status:tr,storeId:Ii,storeIdCustom:Ii};function ph({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,s]=w.useState(!1),{fieldLabel:o}=it();return i.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[i.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>s(l=>!l),children:[i.jsxs("span",{className:"custom-field-table__summary-text",children:[i.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),i.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),i.jsx(Ti,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),i.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(l=>{const c=o(l),d=ki[l.fieldKey]||ki[l.id]||Li;return i.jsxs("div",{className:"custom-field-table__row",children:[i.jsx(d,{className:"custom-field-table__field-icon",size:14,strokeWidth:1.5,"aria-hidden":"true"}),i.jsx("span",{className:"custom-field-table__label",children:c}),i.jsx("button",{className:"custom-field-table__add",type:"button","aria-label":`Add ${c}`,title:n?r:`Add ${c}`,disabled:n,onClick:()=>{n||t?.(l)},children:i.jsx(Fi,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},l.fieldKey??l.id)})}),i.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[i.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]})]})}const xi={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"},Di={BOTH:"Both",USER:"User",ADMIN:"Admin"},hh={...Object.fromEntries(Object.entries(xi).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},mh={...Object.fromEntries(Object.entries(Di).map(([e,t])=>[t,e])),Both:"BOTH",User:"USER",Admin:"ADMIN"};function xt(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 gh(e,t){const n=xt(e),r=xt(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function nr(e,t){return se({...e,fieldLabel:t})?xt(t)||"status":Ze({...e,fieldLabel:t})?"storeIdCustom":gh(t,e.fieldType)}function hn(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 yh(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function Na(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function bh(e=[]){const t=se(e)?Ft(e.options||[]):e.options||[];if(!t.length)return null;const n=e.parentMappings||{},r=e.optionColors||{},a=!!e.dependsOn||t.some(s=>n[s]);return se(e)?{values:t.map((s,o)=>{const l={name:s,displayOrder:o+1,isActive:!0,isDefault:qp(s)};return r[s]&&(l.color=r[s]),l})}:a?{values:t.map(s=>{const o={label:s};return n[s]&&(o.dependsOnValue=n[s]),o})}:{values:t}}function Sh(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),s=t.find(S=>String(S.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),o=nr(e,r)||(a?e.fieldKey:""),l=s?nr(s,s.fieldLabel)||s.fieldKey:"",c=Ch(e,n),d=bh(e),u=hh[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=mh[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:r,fieldKey:o,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),l&&l!==o&&(p.dependsOnFieldKey=l),p}function Pi(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 Mi(e,t){return Pi(e)!==Pi(t)}function vh(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,s)=>Sh({...a,order:a.order||s+1},t,n))}}function wh(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function rr(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 Ui(e,t=[]){if(!e)return null;const n=rr(e);if(n)return n;const r=typeof e=="object"?e.id??e.workflowStepId:null;if(r==null)return null;const a=t.find(s=>String(s.id)===String(r));return rr(a)}function Ch(e,t=[]){const n=Array.isArray(e.hideFor)?e.hideFor:[];if(!n.length)return null;for(const s of n){const o=t.find(l=>rr(l)===s||String(l.id)===String(s));if(o?.id!=null)return o.id}const r=e.hideForWorkflowStepId;return r==null||r===""?null:t.some(s=>String(s.id)===String(r))?r:null}function Bi(e){return[...new Set(e.filter(Boolean))]}function ar(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function Nh(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function _h(e,t=[]){if(!e)return"";const n=t.map(ar).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>xt(s)===e||xt(s)===xt(e))||e}function Eh(e){return e&&typeof e=="object"&&e.color?e.color:""}function lt(e=[],t=[]){const n=[...e].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0));return Ot(n.map(r=>{const a=r?.options?.values??[],s=n.find(l=>l.id===r.dependsOnFieldId||r.dependsOnFieldKey&&l.fieldKey===r.dependsOnFieldKey),o=t.find(l=>String(l.id)===String(r.hideForWorkflowStepId));return{id:r.id,order:r.displayOrder,fieldLabel:r.fieldName??r.fieldLabel??"",fieldType:Sa(r.fieldType,xi,r.fieldKey),required:!!r.required,fieldAccess:Di[r.fieldAccess]??r.fieldAccess??"",hideFor:Bi([...Array.isArray(r.hideFor)?r.hideFor:[],Ui(r.hideForWorkflowStep,t),Ui(o,t)]),dependsOn:r.dependsOnField?.fieldName??s?.fieldName??r.dependsOn??"",options:a.map(ar).filter(Boolean),parentMappings:Object.fromEntries(a.map(l=>{const c=ar(l),d=Nh(l);return!c||!d?null:[c,_h(d,s?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(l=>[ar(l),Eh(l)]).filter(([l,c])=>l&&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 Ah({stepMeta:e,stepperProps:t}){const n=X.useDispatch(),{systemId:r}=bn(),a=X.useSelector(L=>L.appDetails?.id),s=hn(a)??hn(r),{state:o,update:l}=Gn(),{formFields:c,prefillFormFields:d=[]}=o,u=w.useRef(null),f=w.useCallback(L=>l({formFields:L}),[l]),p=w.useCallback(async L=>{const W=String(L.fieldLabel||"").trim();return W?{...L,fieldLabel:W,fieldKey:nr(L,W),originalFieldName:W,isNew:!1}:null},[]),S=w.useCallback(async L=>$e(L)?!1:(Na(L)&&await n(Qt({complaintTypeId:s,fieldId:L.id})).unwrap(),!0),[s,n]),N=X.useSelector(L=>L.complaintAppComplaint?.formFields?.data),m=X.useSelector(L=>L.complaintAppComplaint?.formFields?.isLoading),g=X.useSelector(L=>L.complaintAppComplaint?.formFields?.error),b=X.useSelector(L=>L.workflow?.workflowSteps),h=w.useMemo(()=>wh(b),[b]),v=w.useRef(h),[_,B]=w.useState(!1);w.useEffect(()=>{v.current=h},[h]),w.useEffect(()=>{const L=hn(s);L!=null&&n(Ge(L))},[s,n]),w.useEffect(()=>{const L=hn(s);if(L==null)return;let W=!1;return n(Fe(L)).unwrap().then(z=>{if(W)return;const x=Array.isArray(z)?z:z?.data;if(!(Array.isArray(x)&&x.length>0)&&d.length){const D=lt(d,v.current).map((A,Z)=>({...A,id:`prefill-${Z}`,isNew:!1}));l({formFields:Ot(D)})}else{const D=Ot(lt(Array.isArray(x)?x:[],v.current));l({formFields:D})}B(!0)}).catch(()=>{if(!W){if(d.length){const z=lt(d,v.current).map((x,P)=>({...x,id:`prefill-${P}`,isNew:!1}));l({formFields:Ot(z)})}B(!0)}}),()=>{W=!0}},[s,n,d,l]);const O=w.useMemo(()=>Ot(lt(N,h)),[N,h]),G=hn(s)==null||_,k=G?c:O,I=w.useMemo(()=>jp.filter(L=>!k.some(W=>L.fieldKey&&W.fieldKey===L.fieldKey||se(L)&&se(W)||Xn(L)&&Xn(W)||Ze(L)&&Ze(W))),[k]),K=w.useMemo(()=>Rn(k),[k]),R=w.useMemo(()=>It(k),[k]),ee=yh(g),F=Up,M=Bp,H=w.useMemo(()=>{const L=[...h].sort((z,x)=>(z.levelNo??0)-(x.levelNo??0)).map(z=>rr(z)).filter(Boolean),W=O.flatMap(z=>z.hideFor);return Bi([...L,...W])},[O,h]),E=w.useMemo(()=>{const L=new Map(lt(N,h).map(W=>[Number(W.id),W]));return k.filter(W=>{if(W.isNew&&String(W.fieldLabel||"").trim())return!0;if(!Na(W))return!1;const z=L.get(Number(W.id));return!z||Mi(W,z)})},[N,k,h]),[V,j]=w.useState(!1),J=w.useCallback(async L=>{if(!It(k)&&s)try{const z=k.map(Y=>{if(!L||!Y.isNew)return Y;const re=String(Y.fieldLabel||"").trim();return re?{...Y,fieldLabel:re,fieldKey:nr(Y,re),originalFieldName:re,isNew:!1}:Y}).filter(Y=>!Y.isNew&&String(Y.fieldLabel||"").trim()),x=new Map(lt(N,h).map(Y=>[Number(Y.id),Y]));if(!z.some(Y=>{if(!Na(Y))return!0;const re=x.get(Number(Y.id));return!re||Mi(Y,re)})){t.onNext?.();return}const D=[...z].sort((Y,re)=>+!!Y.dependsOn-+!!re.dependsOn);await n(Xt({complaintTypeId:s,data:vh(D,D,h)})).unwrap();const A=await n(Fe(s)).unwrap(),Z=Array.isArray(A)?A:A?.data;l({formFields:Ot(lt(Array.isArray(Z)?Z:[],h))}),t.onNext?.()}catch{}},[N,s,n,k,t,l,h]),C=w.useCallback(()=>{if(!It(k)){if(E.length){j(!0);return}J(!1)}},[k,E.length,J]);return i.jsxs(i.Fragment,{children:[i.jsx(fn,{...t,steps:Me,onNext:C}),V?i.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:i.jsxs("div",{className:"ca-confirm-modal__dialog",children:[i.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),i.jsxs("div",{className:"ca-confirm-modal__actions",children:[i.jsx(ve,{variant:"outline",onClick:()=>{j(!1),J(!1)},children:"OK"}),i.jsx(ve,{onClick:()=>{j(!1),J(!0)},children:"Save"})]})]})}):null,i.jsx(cn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!G||m?i.jsx(Lt,{text:"Loading form fields"}):ee&&!k.length?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:ee}):i.jsxs("div",{className:"ca-form-fields",children:[ee?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:ee}):null,i.jsx(ph,{fields:I,disableAdd:K||R,disableAddHint:K?"Resolve duplicate field first":R?Ci(k):void 0,onAddField:L=>u.current?.({...L})}),i.jsx("div",{className:"ca-settings-card__divider"}),i.jsx(Oi,{initialFields:k,addExternalFieldRef:u,onChange:f,fieldTypeOptions:F,fieldAccessOptions:M,hideForOptions:H,onSave:p,onDelete:S})]})})]})}function $i({label:e="Active",checked:t,onChange:n,disabled:r=!1,className:a=""}){return i.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[i.jsx(Uo,{children:e}),i.jsx(Hn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function ji({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=it();return i.jsxs("select",{...r,className:"review-control",value:t??"",onChange:s=>n(s.target.value),children:[i.jsx("option",{value:"",children:a("Select Store")}),e.map(s=>i.jsx("option",{value:s.id,children:s.name??s.label??String(s.id)},s.id))]})}const Lh=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function _a(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function Th(e){return e?e.type&&e.type.startsWith("image/")?!0:Lh.test(e.name||""):!1}function Fh(e){return`${e.name}-${e.size}-${e.lastModified}`}function sr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:s=!1,disabled:o=!1,accept:l}){const c=_a(n,a),d=w.useMemo(()=>_a(n,a).map((u,f)=>{const p=Th(u);return{key:`${Fh(u)}-${f}`,name:u.name,isImage:p,url:p?URL.createObjectURL(u):""}}),[n,a]);return w.useEffect(()=>()=>{d.forEach(u=>{u.url&&URL.revokeObjectURL(u.url)})},[d]),i.jsxs("div",{className:"review-file-field",children:[i.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:l,multiple:a,required:!!s&&c.length===0,disabled:o,onChange:u=>{const f=Array.from(u.target.files||[]);if(!a){r(f[0]||"");return}const p=_a(n,!0);r([...p,...f]),u.target.value=""}}),d.length?i.jsx("div",{className:"review-file-preview",children:i.jsx("div",{className:"review-file-preview__images",children:d.map((u,f)=>i.jsxs("div",{className:"review-file-preview__item",children:[u.isImage?i.jsx("img",{className:"review-file-preview__thumb",src:u.url,alt:u.name,title:u.name}):i.jsx("span",{className:"review-file-preview__name",children:u.name}),i.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${u.name}`,onClick:()=>{r(a?c.filter((p,S)=>S!==f):"")},children:"×"})]},u.key))})}):null]})}const Ih=new Set(["select","radio","checkbox"]);function Vi(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 Ea(e){return`review-${e.id??e.fieldKey??(Vi(ct(e))||"field")}`}function qi(e,t,n){return n===0?e:`${e}-${Vi(t)||n}`}function Aa(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 Wi(e){return Ih.has(e)}function Oh(e){return e==="textarea"||e==="radio"||e==="checkbox"}function kh(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function zi(e){return String(e||"").replace(/\d/g,"")}function Hi(e){return String(e||"").replace(/[^\d]/g,"")}function mn(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 gn(e){return String(e.fieldKey||e.id||ct(e)||Ea(e))}function Ki(e,t=[]){const n=String(e.dependsOn||"").trim();return n&&t.find(r=>{const a=ct(r),s=String(r.fieldKey||"");return a===n||s===n})||null}function Yi(e,t=[],n={}){const r=e.options||[],a=Ki(e,t);if(!a)return r;const s=e.parentMappings||{};if(!r.some(c=>!!s[c]))return r;const l=String(n[gn(a)]||"").trim();return l?r.filter(c=>String(s[c]||"")===l):r}function Gi(e){return e==="checkbox"||e==="images"?[]:""}function xh({question:e,options:t,value:n,onChange:r,storeList:a}){const s=Ea(e),o=Aa(e),l=n??Gi(o),c={id:s,name:String(e.fieldKey||ct(e)||s),required:!!e.required};if(Ze(e)&&Array.isArray(a))return i.jsx(ji,{...c,storeList:a,value:l,onChange:r});if(o==="radio")return i.jsx("div",{className:"review-options review-options--inline",children:t.map((d,u)=>{const f=qi(s,d,u);return i.jsxs("label",{className:"review-option",htmlFor:f,children:[i.jsx("input",{...c,id:f,type:"radio",value:d,checked:l===d,onChange:p=>r(p.target.value)}),i.jsx("span",{children:d})]},d)})});if(o==="checkbox"){const d=Array.isArray(l)?l:[];return i.jsx("div",{className:"review-options review-options--inline",children:t.map((u,f)=>{const p=qi(s,u,f);return i.jsxs("label",{className:"review-option",htmlFor:p,children:[i.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:u,checked:d.includes(u),required:!1,onChange:S=>r(S.target.checked?[...d,u]:d.filter(N=>N!==u))}),i.jsx("span",{children:u})]},u)})})}return o==="textarea"?i.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:mn(e,o),value:l,onChange:d=>r(d.target.value)}):o==="select"?i.jsxs("select",{...c,className:"review-control",value:l,onChange:d=>r(d.target.value),children:[i.jsx("option",{value:"",children:mn(e,o)}),t.map(d=>i.jsx("option",{value:d,children:d},d))]}):o==="file"?i.jsx(sr,{...c,value:l,onChange:r,multiple:!0}):o==="images"?i.jsx(sr,{...c,value:l,onChange:r,multiple:!0}):o==="number"?i.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:mn(e,o),value:l,onChange:d=>r(Hi(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(Hi(u)))}}):kh(e)?i.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:mn(e,o),value:l,onChange:d=>r(zi(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(zi(u)))}}):i.jsx("input",{...c,className:"review-control",type:o,placeholder:mn(e,o),value:l,onChange:d=>r(d.target.value)})}function Dh({fields:e=[],storeList:t}){const{fieldLabel:n}=it(),[r,a]=w.useState({}),s=(o,l)=>{const c=gn(o);a(d=>{const u={...d,[c]:l};return e.forEach(f=>{const p=Ki(f,e);if(!p||gn(p)!==c)return;const S=Aa(f);if(!Wi(S))return;const N=Yi(f,e,u),m=gn(f),g=u[m];Array.isArray(g)?u[m]=g.filter(b=>N.includes(b)):g&&!N.includes(g)&&(u[m]="")}),u})};return e.length?i.jsx("div",{className:"review-form-card",children:i.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:o=>o.preventDefault(),children:i.jsx("div",{className:"review-form-grid",children:e.map(o=>{const l=Aa(o),c=Ea(o),d=Wi(l)?Yi(o,e,r):[];return i.jsxs("div",{className:`review-question${Oh(l)?" review-question--wide":""}`,children:[i.jsxs("label",{className:"review-label",htmlFor:c,children:[n(o)||"Untitled field",o.required?i.jsx("span",{className:"review-required",children:"*"}):null]}),i.jsx(xh,{storeList:t,question:o,options:d,value:r[gn(o)]??Gi(l),onChange:u=>s(o,u)})]},o.id??o.fieldKey??ct(o))})})})}):i.jsx("p",{className:"review-empty",children:"No form fields added"})}const Ph={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"},Mh={BOTH:"Both",USER:"User",ADMIN:"Admin"};function Uh(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function Bh(e){return[...new Set(e.filter(Boolean))]}function La(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ta(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 $h(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function jh(e,t=[]){if(!e)return"";const n=t.map(La).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>Ta(s)===e||Ta(s)===Ta(e))||e}function Vh(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(s=>s.id===n.dependsOnFieldId||n.dependsOnFieldKey&&s.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:Sa(n.fieldType,Ph,n.fieldKey),required:!!n.required,fieldAccess:Mh[n.fieldAccess]??n.fieldAccess??"",hideFor:Bh([...Array.isArray(n.hideFor)?n.hideFor:[],Uh(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(La).filter(Boolean),parentMappings:Object.fromEntries(r.map(s=>{const o=La(s),l=$h(s);return!o||!l?null:[o,jh(l,a?.options?.values??[])]}).filter(Boolean))}})}function qh({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=X.useDispatch(),s=X.useSelector(O=>O.appDetails?.id),o=X.useSelector(O=>O.complaintAppComplaint.formFields.data),l=X.useSelector(O=>O.complaintAppComplaint.formFields.isLoading),c=X.useSelector(O=>O.complaintAppComplaint.formFields.error),d=X.useSelector(O=>O.createComplaint?.isActive),u=X.useSelector(O=>O.createComplaint?.activeComplaintTypeId),f=X.useSelector(O=>O.createComplaint?.isUpdatingActive),p=X.useSelector(O=>O.createComplaint?.activeError),S=X.useSelector(O=>O.complaintType?.selected),N=X.useSelector(O=>O.complaintType?.complaintList??[]),m=X.useSelector(O=>O.appDetails?.details?.currentUser),g=w.useMemo(()=>Vh(o),[o]),b=w.useMemo(()=>s==null?null:S&&String(S.id??S._id)===String(s)?S:N.find(O=>String(O?.id??O?._id)===String(s))??null,[N,s,S]),h=b!=null&&(b.isActive!=null||b.active!=null)?!!(b.isActive??b.active):null,v=String(u)===String(s)?!!d:h??!0,_=Un(b,m);w.useEffect(()=>{s&&a(Fe(s))},[s,a]);const B=O=>{!s||f||!_||a(ln({id:s,isActive:O}))};return i.jsxs(i.Fragment,{children:[i.jsx(fn,{...n,steps:Me,showSaveButton:!1,nextLabel:"Publish",extraActions:i.jsx($i,{label:"Active",checked:v,disabled:!s||f||!_,onChange:B}),onNext:()=>{e?.(),n.onNext?.()}}),p?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,i.jsx(cn,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:i.jsx("div",{className:"ca-review",children:i.jsx("section",{className:"ca-review__block ca-review__block--last",children:l?i.jsx(Lt,{text:"Loading form fields"}):c&&!g.length?i.jsx("p",{className:"ca-body",children:c}):i.jsx(Dh,{fields:g,storeList:r})})})})]})}function Wh(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>Me.length?Me.length:Math.floor(t)}function zh(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:s=[],storeList:o,showSaveButton:l=!0,showNextButton:c=!0}){const d=Ye(),u=X.useDispatch(),{systemId:f}=bn(),[p,S]=ss(),N=Wh(p.get("step")||1),m=zh(p.get("substep")||1),g=!!f&&f!=="new",[b,h]=w.useState(!1);w.useEffect(()=>{if(!g)return;let I=!1;const K=R=>{const ee=R?.data??R;return Array.isArray(ee)?ee:Array.isArray(ee?.data)?ee.data:[]};return Promise.all([u(Ge(f)).unwrap(),u(Fe(f)).unwrap()]).then(([R,ee])=>{I||h(K(R).length>0&&K(ee).length>0)}).catch(()=>{I||h(!1)}),()=>{I=!0}},[u,g,f]);const v=g&&b;w.useEffect(()=>{f&&u(st(f)),u(wt({data:g}))},[u,g,f]),w.useEffect(()=>{if(!p.get("step")){const I=new URLSearchParams(p);I.set("step","1"),S(I,{replace:!0})}},[p,S]);const _=w.useMemo(()=>Me.find(I=>I.id===N)||Me[0],[N]),B=w.useCallback((I,K)=>{const R=new URLSearchParams(p);R.set("step",String(I)),I===4?R.set("substep",String(K??(I===N?m:1))):R.delete("substep"),S(R,{replace:!1}),n?.({systemId:f,step:I,substep:K})},[p,S,n,f,N,m]),O=()=>{if(N<Me.length){B(N+1,1);return}d("/")},Q=I=>{B(4,I)},G=()=>{t?.({systemId:f,step:N})},k={currentStep:N,allStepsUnlocked:v,onStepClick:I=>B(I,I===4?1:void 0),showSaveButton:l,showNextButton:c,onSaveDraft:()=>r?.({systemId:f,step:N}),onNext:O,className:"ca-settings-page__stepper"};return i.jsx(Qo,{children:i.jsxs("div",{className:"ca-settings-page",children:[i.jsxs("div",{className:"ca-settings-page__header",children:[i.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:i.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:i.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),i.jsx(ta,{children:e})]}),N===1?i.jsx(Ap,{stepMeta:_,stepperProps:k,roleList:a,userList:s}):null,N===2?i.jsx(Mp,{onNext:O,stepMeta:_,roleList:a,userList:s,substep:m,onSubstepChange:Q,stepperProps:k}):null,N===3?i.jsx(Ah,{stepMeta:_,stepperProps:k}):null,N===4?i.jsx(qh,{storeList:o,onPublish:G,stepMeta:_,stepperProps:k}):null]})},f||"new")}const Hh=["January","February","March","April","May","June","July","August","September","October","November","December"];function Kh(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()} ${Hh[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function Yh(){const e=Ye(),t=X.useSelector(u=>u.status?.complaintSummary??null),n=t?.totalComplaints??0,r=t?.totalComplaints??0,a=Kh(t?.lastSubmittedAt),s=X.useSelector(u=>u.appDetails?.id),o=X.useSelector(u=>u.complaintType?.selected??null),l=o?.id??o?._id,d=l==null||s==null||String(l)===String(s)?o?.name??o?.complaintTypeName??o?.title??"":"";return i.jsxs("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:[i.jsxs("div",{className:"ca-query-details__heading",children:[i.jsxs("div",{className:"ca-query-details__title-row",children:[i.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:i.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:i.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),i.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:d||"Complaint Management"})]}),i.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",n??0]})]}),i.jsxs("div",{className:"ca-query-details__summary",children:[i.jsxs("div",{className:"ca-query-details__card",children:[i.jsx("span",{className:"ca-query-details__label",children:"Total Complaints"}),i.jsx("strong",{className:"ca-query-details__value",children:r??0})]}),i.jsxs("div",{className:"ca-query-details__card",children:[i.jsx("span",{className:"ca-query-details__label",children:"Last Complaint Submitted Date"}),i.jsx("strong",{className:"ca-query-details__value",children:a||"NA"})]})]})]})}function Zi({currentPage:e,totalItems:t,itemsPerPage:n,onPageChange:r,onItemsPerPageChange:a,selectOptions:s=["5","10","15","20","25"],totalPages:o,disabled:l=!1}){if(t<=0)return null;const c=(e-1)*n+1,d=Math.min(e*n,t),u=e<=1,f=e>=o;return i.jsxs("div",{className:`ca-custom-pagination${l?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[i.jsxs("label",{className:"ca-custom-pagination__page-size",children:[i.jsx("span",{children:"Results per page:"}),i.jsx("select",{className:"ca-custom-pagination__select",value:String(n),onChange:p=>a?.(Number(p.target.value)),disabled:l,"aria-label":"Results per page",children:s.map(p=>i.jsx("option",{value:p,children:p},p))})]}),i.jsxs("div",{className:"ca-custom-pagination__navigation",children:[i.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(1),disabled:l||u,"aria-label":"First page",children:i.jsx(nh,{size:16,"aria-hidden":"true"})}),i.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e-1),disabled:l||u,"aria-label":"Previous page",children:i.jsx(eh,{size:16,"aria-hidden":"true"})}),i.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),i.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e+1),disabled:l||f,"aria-label":"Next page",children:i.jsx(th,{size:16,"aria-hidden":"true"})}),i.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(o),disabled:l||f,"aria-label":"Last page",children:i.jsx(rh,{size:16,"aria-hidden":"true"})})]})]})}function Gh({type:e}){return e==="error"?i.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[i.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),i.jsx("path",{d:"M12 7.5v5.5M12 16.2v.1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):i.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[i.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),i.jsx("path",{d:"M8 12.5l2.8 2.8L16.2 9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Jh({id:e,message:t,type:n="success",onDismiss:r}){return w.useEffect(()=>{const a=setTimeout(()=>r(e),3500);return()=>clearTimeout(a)},[e,r]),i.jsxs("div",{className:`ca-toast ca-toast--${n}`,role:"status",children:[i.jsx("span",{className:"ca-toast__icon",children:i.jsx(Gh,{type:n})}),i.jsxs("div",{className:"ca-toast__content",children:[i.jsx("div",{className:"ca-toast__title",children:n==="error"?"Error":"Success"}),i.jsx("div",{className:"ca-toast__message",children:t})]}),i.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>r(e),children:i.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:i.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Zh({toasts:e=[],onDismiss:t}){return e.length?i.jsx("div",{className:"ca-toast-container",children:e.map(n=>i.jsx(Jh,{...n,onDismiss:t},n.id))}):null}const Xh=["Open","Closed"];function Xi({selectedStatus:e,statusNames:t=[],updatedAtSortOldest:n,onStatusChange:r,onSortChange:a,onNewComplaint:s,onDownloadReport:o,isDownloadingReport:l=!1,complaintTypeId:c,canCreateComplaint:d=!0,isComplaintTypeActive:u=!0}){return i.jsxs("div",{className:"ca-complaint-table__toolbar",children:[i.jsxs("div",{className:"ca-complaint-table__filters",children:[i.jsxs("label",{className:"ca-complaint-table__filter",children:[i.jsx(oh,{size:14,"aria-hidden":"true"}),i.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),i.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:f=>r?.(f.target.value),children:[i.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:Xh).map(f=>i.jsx("option",{value:f,children:f},f))]})]}),i.jsx("button",{type:"button",className:`ca-complaint-table__sort${n?" ca-complaint-table__sort--reversed":""}`,"aria-label":n?"Sort by newest updated at date":"Sort by oldest updated at date",title:"Sort by Updated At",onClick:a,children:i.jsx(Rp,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),i.jsxs("div",{className:"ca-complaint-table__actions",children:[d?i.jsx(ve,{variant:"outline",onClick:s,size:"sm",startIcon:i.jsx(Fi,{size:14}),disabled:!u,children:"New Complaint"}):null,i.jsx(ve,{variant:"outline",size:"sm",startIcon:i.jsx(ah,{size:14}),onClick:o,disabled:l||!c,children:"Download Report"})]})]})}function Qi({text:e="No data"}){return i.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const Qh=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?$/,Rh=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function or(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(Rh).map(r=>r.trim()).filter(Boolean):[n])}function em(e){const t=or(e);return t.length>0&&t.every(n=>typeof n=="string"&&Qh.test(n))}function Fa(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||em(t)}function tm(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const s=r[a.key]??"-";Fa(a,s)&&or(s).forEach(o=>{typeof o=="string"&&n.add(o)})})}),Array.from(n)}const nm=["Open","Closed"],Ia=["Level 1","Level 2","Level 3"],Ri=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function rm({value:e,urlMap:t={}}){const n=w.useMemo(()=>or(e),[e]),[r,a]=w.useState(null);if(!n.length)return"-";const s=n.filter(p=>typeof p=="string"&&Ri.test(p)),o=n.filter(p=>typeof p=="string"&&!Ri.test(p)).map(p=>({name:p,url:t[p]})),l=s.map(p=>({name:p,url:t[p]})).filter(p=>p.url),c=l[0],d=()=>a(null),u=()=>a(p=>p>0?p-1:l.length-1),f=()=>a(p=>p<l.length-1?p+1:0);return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?i.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:i.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,o.length?o.map(p=>p.url?i.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",children:p.name.split("/").pop()},p.name):i.jsx("span",{className:"ca-complaint-table__attachment-name",children:p.name},p.name)):null,!c&&!o.length?n.map(p=>i.jsx("span",{className:"ca-complaint-table__attachment-name",children:String(p)},String(p))):null,l.length>1?i.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${l.length-1} more images`,children:["+",l.length-1]}):null]}),r!=null&&l.length?i.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[i.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),i.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:u,"aria-label":"Previous image",children:"‹"}),i.jsx("img",{className:"ca-complaint-table__preview-image",src:l[r].url,alt:l[r].name}),i.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:f,"aria-label":"Next image",children:"›"}),i.jsxs("span",{className:"ca-complaint-table__preview-count",children:[r+1," / ",l.length]})]}):null]})}function el({value:e,options:t,fallbackOptions:n,ariaLabel:r,selectKey:a,onChange:s,disabled:o=!1}){const c=(t.length?t:n.map(S=>({value:S,label:S}))).map(S=>S&&typeof S=="object"?{value:String(S.value??S.id??""),label:S.label??S.name??String(S.value??S.id??""),disabled:!!S.disabled}:{value:String(S),label:String(S),disabled:!1}).filter(S=>S.value||S.label),d=e!=null&&e!==""&&e!=="-"?String(e):"",u=c.map(S=>S.value),f=d&&!u.includes(d)?[{value:d,label:d,disabled:!1},...c]:c,p=f.some(S=>S.value===d)?d:f[0]?.value??"";return i.jsx("select",{className:"ca-complaint-table__select","aria-label":r,value:p,disabled:o,title:o?"You do not have permission to change this":void 0,onChange:S=>s?.(S.target.value),children:f.map(S=>i.jsx("option",{value:S.value,disabled:S.disabled,children:S.label},S.value))},a)}function tl(e,t){return t==null||t===""||!Array.isArray(e)?!1:e.some(n=>n&&typeof n=="object"?String(n.value??n.id)===String(t):String(n)===String(t))}function ir(e,t=!1){const n=[];return!t&&e==="description"&&n.push("ca-complaint-table__desc"),e==="status"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--status"),e==="escalationTo"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--escalation"),n.length?n.join(" "):void 0}function nl(e,t,n,r,a={}){const s=t[e.key]??"-",o=a.statusOptions??n,l=a.escalationOptions??r;return e.key==="status"?i.jsx(el,{value:tl(o,t.statusId)?t.statusId:s,options:o,fallbackOptions:nm,ariaLabel:"Status",disabled:a.canChangeStatus===!1,selectKey:`status-${t.id}`,onChange:a.onStatusChange}):e.key==="escalationTo"?i.jsx(el,{value:tl(l,t.currentStepId)?t.currentStepId:s,options:l,fallbackOptions:Ia,ariaLabel:"Escalation to",disabled:a.canChangeEscalation===!1,selectKey:`escalation-${t.id}`,onChange:a.onEscalationChange}):Fa(e,s)&&or(s).some(c=>typeof c=="string")?i.jsx(rm,{value:s,urlMap:a.attachmentUrlMap}):s}function rl({scrollFields:e,stickyFields:t,tableRows:n,fieldLabel:r,statusNames:a,getCellContext:s,page:o,itemsPerPage:l}){return i.jsxs("div",{className:"ca-complaint-table__scroll",children:[i.jsxs("table",{children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{scope:"col",children:"#"}),e.map(c=>i.jsx("th",{scope:"col",className:ir(c.key,!0),children:r(c)},c.id)),i.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(c=>i.jsx("th",{scope:"col",className:ir(c.key,!0),children:r(c)},c.id))]})}),i.jsx("tbody",{children:n.map((c,d)=>i.jsxs("tr",{children:[i.jsx("td",{children:(o-1)*l+d+1}),e.map(u=>i.jsx("td",{className:ir(u.key),children:nl(u,c,a,Ia,s(c))},`${c.id??d}-${u.id}`)),i.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(u=>i.jsx("td",{className:ir(u.key),children:nl(u,c,a,Ia,s(c))},`${c.id??d}-${u.id}`))]},c.id??d))})]}),n.length?null:i.jsx("div",{className:"ca-complaint-table__empty-overlay",children:i.jsx(Qi,{text:"No Complaint"})})]})}const al="aira-query-complaintTypeId",sl={id:"status",label:"Status",key:"status"},ol={id:"escalationTo",label:"Escalation To",key:"escalationTo"},am={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},sm={id:"updatedAt",label:"Updated At",key:"updatedAt"},yn="desc",Oa="asc",om=10,im=["5","10","15","20","25"],lm=999999,ka=new Set(["status","escalationTo","id","submittedByUserName","updatedAt"]),cm=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function dm(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()} ${cm[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function il(e){if(!e)return 0;const t=new Date(e).getTime();return Number.isNaN(t)?0:t}function um(e,t){return t!==yn&&t!==Oa?e:[...e].sort((n,r)=>{const a=il(n.updatedAtValue),s=il(r.updatedAtValue);return a===s?0:t===Oa?a-s:s-a})}function fm(e){return e===yn?Oa:yn}function ll(e){return[am,sm,...e,sl,ol]}function pm(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&&!ka.has(r.key))}function hm(e,t,n,r){const a=e?.data??e??{},s=Number(a.total??a.totalItems??a.totalCount??a.count),o=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(o)&&o>0?{totalPages:o,totalItems:Number.isFinite(s)&&s>=0?s:Math.max(r,o*n),hasNext:t<o}:Number.isFinite(s)&&s>=0?{totalPages:Math.max(1,Math.ceil(s/n)),totalItems:s,hasNext:t*n<s}:{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 mm(){try{return sessionStorage.getItem(al)}catch{return null}}function dl(e){const t=cl(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(al,n)}catch{}return n}function gm(...e){for(const t of e){const n=cl(t);if(n!=null&&n!=="")return String(n)}return null}function ul(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 s=n.id??n.statusId;if(s!=null){const o=t.find(l=>String(l.id)===String(s));if(o?.name)return o.name}}const r=e?.statusId??e?.complaintStatusId;if(r!=null){const a=t.find(s=>String(s.id)===String(r));if(a?.name)return a.name}return""}function ym(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(s=>String(s.name).trim()===r.trim());if(a?.id!=null)return a.id}return null}function lr(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}function fl(e){const t=String(e||"").trim().toLowerCase();return t==="resolved"||t==="closed"}function cr(e){return String(e||"").trim().toLowerCase()==="closed"}function bm(e,t=[]){const n=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(n!=null&&n!==""){const a=t.find(s=>String(s.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 Sm(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(s=>String(s.id)===String(r));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function pl(e,t=[],n=[]){const r=bm(e,n),a={id:e?.complaintId??e?.id,status:ul(e,t),isClosed:cr(ul(e,t)),statusId:ym(e,t),escalationTo:Sm(e,n),currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:lr(e?.canResolve??r?.canResolve),isFinalLevel:lr(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),submittedByUserName:e?.submittedByUserName||"-",updatedAt:dm(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(s=>{const o=s.fieldKey||s.fieldName;o&&!ka.has(o)&&(a[o]=s.value)}),a}function hl(e,t){const n=new Set,r=t.map(a=>{if(n.add(a.key),a.fieldType)return a;const s=e.flatMap(o=>o._fields||[]).find(o=>(o.fieldKey||o.fieldName)===a.key);return s?.fieldType?{...a,fieldType:s.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(s=>{const o=s.fieldKey||s.fieldName;!o||ka.has(o)||n.has(o)||(n.add(o),r.push({id:o,label:s.fieldName||o,key:o,fieldType:s.fieldType}))})}),r}function vm(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 wm(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function ml(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function Cm(e,t){const n=e.map(a=>ml(a.label)).join(","),r=t.map(a=>e.map(s=>ml(a[s.key]??"-")).join(","));return[n,...r].join(`\r
12
- `)}function Nm(e,t){return e.map(n=>{const r=fl(n.name),s=!(String(n.id)===String(t.statusId))&&r&&!t.canResolve;return{value:n.id,label:n.name,disabled:s}}).filter(n=>n.label)}function _m(e,t){const n=[...e].sort((o,l)=>(o.levelNo??0)-(l.levelNo??0)),r=n.findIndex(o=>String(o.id)===String(t?.currentStepId));if(r<0)return[];const a=Number(n[r].levelNo??r+1),s=new Set([a]);return s.add(a+1),a>1&&lr(n[r].canReassign)&&s.add(a-1),n.filter((o,l)=>s.has(Number(o.levelNo??l+1))).map(o=>({value:o.id,label:o.levelNo!=null?`Level ${o.levelNo}`:String(o.name||o.id),disabled:!1})).filter(o=>o.label)}async function Em({complaintTypeId:e,status:t}){const n=await ce.get(bo,{params:{complaintTypeId:e,page:1,limit:lm,...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return wm(n.data)}function Am(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 gl(e,t=[],n=[],r=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const s=t.find(o=>String(o.id)===String(a));return!s||!yl(s,n,r)}function Lm(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 yl(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&Lm(e).includes(Number(n))}function Tm(e,t=[],n=[],r=null){if(cr(e?.status))return{canChangeStatus:!1,canChangeEscalation:!1};const a=t.find(o=>String(o.id)===String(e?.currentStepId));if(!a)return{canChangeStatus:!0,canChangeEscalation:!0};const s=yl(a,n,r);return{canChangeStatus:s,canChangeEscalation:s}}function Fm(){const{fieldLabel:e}=it(),t=X.useDispatch(),n=Ye(),{complaintTypeId:r}=bn(),[a]=ss(),s=X.useSelector($=>$.appDetails?.id),o=gm(r,a.get("complaintTypeId"),s,mm()),{list:l=[],isLoading:c=!1,error:d=null,hasLoaded:u=!1,requestedComplaintTypeId:f=null,meta:p=null}=X.useSelector($=>$.complaintManagement??{}),S=X.useSelector($=>$.status?.list??[]),N=X.useSelector($=>$.changeStatus?.error??null),m=X.useSelector($=>$.changeStatus?.updatingId??null),g=X.useSelector($=>$.workflow?.workflowSteps),b=X.useSelector($=>$.appDetails?.details?.currentUser),h=w.useMemo(()=>S.map($=>$.name).filter(Boolean),[S]),v=w.useMemo(()=>Array.isArray(g)?g:[],[g]),_=w.useMemo(()=>Am(b),[b]),B=b?.id??b?.userId??null,O=X.useSelector($=>{const te=$.complaintType?.selected,oe=Array.isArray(te?.accesses)?te.accesses.map(le=>le?.role?.id??le?.role?.roleId??le?.roleId).map(Number).filter(Number.isFinite):[];return oe.length?oe:(Array.isArray(te?.roleIds)?te.roleIds:Array.isArray(te?.roles)?te.roles:[]).map(le=>Number(le?.id??le?.roleId??le?.role_id??le)).filter(le=>Number.isFinite(le))}),Q=X.useSelector($=>{const te=$.complaintType?.selected;return te?.isActive!=null?!!te.isActive:te?.active!=null?!!te.active:!0}),[G,k]=w.useState({complaintTypeId:null,status:"all"}),[I,K]=w.useState({complaintTypeId:null,direction:yn}),[R,ee]=w.useState(1),[F,M]=w.useState(om),[H,E]=w.useState([]),[V,j]=w.useState({}),[J,C]=w.useState(!1),[L,W]=w.useState(null),[z,x]=w.useState(null),[P,D]=w.useState(""),[A,Z]=w.useState([]),Y=String(G.complaintTypeId)===String(o)?G.status:"all",re=String(I.complaintTypeId)===String(o)?I.direction:yn,ye=($,te="success")=>{const oe=`${Date.now()}-${Math.random()}`;Z(ue=>[...ue,{id:oe,message:$,type:te}])},je=$=>Z(te=>te.filter(oe=>oe.id!==$));w.useEffect(()=>{!o||r||(dl(o),n(`/complaintmanagement/${o}`,{replace:!0}))},[o,n,r]),w.useEffect(()=>{if(!o||!r)return;dl(o),t(st(o)),t(Co()),t(Ao()),t(Xf());const $=t(jn(o)),te=t(on(o)),oe=t(Ge(o)),ue=t(Fe(o)),le=t(vt(o));return ue.unwrap().then(Le=>E(pm(Le))).catch(()=>E([])),()=>{$.abort?.(),te.abort?.(),oe.abort?.(),ue.abort?.(),le.abort?.()}},[o,t,r]),w.useEffect(()=>{if(!o||!r)return;const $=t(_t({complaintTypeId:o,page:R,limit:F,status:Y==="all"?void 0:Y}));return()=>$.abort?.()},[o,t,F,R,r,Y]);const Oe=O.some($=>_.includes($)),fe=w.useMemo(()=>f!=null&&o!=null&&String(f)!==String(o)?[]:l.map($=>({...pl($,S,v),_fields:$?.formField||[]})),[o,l,f,S,v]),ne=w.useMemo(()=>hl(fe,H).filter($=>gl($,v,_,B)),[fe,H,v,_,B]),be=ll(ne),Ae=w.useMemo(()=>um(fe,re),[fe,re]),Ne=Ae.map(({_fields:$,...te})=>te),Pt=w.useMemo(()=>tm(ne,Ae),[ne,Ae]),Pa=Pt.every($=>Object.prototype.hasOwnProperty.call(V,$));w.useEffect(()=>{const $=Pt.filter(oe=>!Object.prototype.hasOwnProperty.call(V,oe));if(!$.length)return;let te=!1;return Promise.all($.map(async oe=>{try{const ue=await t(Wn({params:{path:oe}})).unwrap();return[oe,ue]}catch{return[oe,""]}})).then(oe=>{te||j(ue=>({...ue,...Object.fromEntries(oe)}))}),()=>{te=!0}},[Pt,V,t]);const Ve=hm(p,R,F,Ne.length),El=!!(o&&!d&&(!Ne.length&&(c||!u)||Ne.length>0&&!Pa)),s0=$=>{ee(1),k({complaintTypeId:o,status:$}),o&&t(_t({complaintTypeId:o,page:1,limit:F,status:$==="all"?void 0:$}))},o0=$=>{$>=1&&$<=Ve.totalPages&&$!==R&&ee($)},i0=$=>{const te=Number($);!Number.isFinite(te)||te<=0||te===F||(M(te),ee(1))},l0=()=>K({complaintTypeId:o,direction:fm(re)}),c0=()=>{o&&n(`/complaintmanagement/new/${o}`)},d0=($,te)=>{if($?.id==null||cr($.status)||m!=null&&String(m)===String($.id)||String(te)===String($.statusId)||String(te)===String($.status))return;const oe=S.find(le=>String(le.id)===String(te)||String(le.name)===String(te));oe?.id==null||fl(oe.name)&&!$.canResolve||(D(""),x({type:"status",row:$,statusId:oe.id,currentStepId:$.currentStepId,fromLabel:$.status||"—",toLabel:oe.name}))},u0=($,te)=>{if($?.id==null||cr($.status)||m!=null&&String(m)===String($.id)||String(te)===String($.currentStepId)||String(te)===String($.escalationTo))return;const oe=v.find(Qe=>String(Qe.id)===String(te)||`Level ${Qe.levelNo}`===String(te));if(oe?.id==null)return;const ue=[...v].sort((Qe,m0)=>(Qe.levelNo??0)-(m0.levelNo??0)),le=ue.findIndex(Qe=>String(Qe.id)===String($.currentStepId)),Le=ue.findIndex(Qe=>String(Qe.id)===String(oe.id));if(le<0||Le<0)return;const ke=Number(ue[le].levelNo??le+1),xe=Number(ue[Le].levelNo??Le+1);Math.abs(xe-ke)===1&&(xe<ke&&!lr(ue[le].canReassign)||(D(""),x({type:"escalation",row:$,statusId:$.statusId,currentStepId:oe.id,fromLabel:$.escalationTo||"—",toLabel:oe.levelNo!=null?`Level ${oe.levelNo}`:String(oe.name||oe.id)})))},f0=()=>{if(!z)return;const{row:$,statusId:te,currentStepId:oe,type:ue,fromLabel:le,toLabel:Le}=z;t(sn({id:$.id,statusId:te,currentStepId:oe,status:ue==="status"?Le:void 0,remark:P,onSuccess:()=>{ye(ue==="status"?`Successfully changed Status from ${le} to ${Le}`:`Successfully changed Escalation from ${le} to ${Le}`,"success"),ue==="escalation"&&o&&(t(_t({complaintTypeId:o,page:R,limit:F,status:Y==="all"?void 0:Y})),t(on(o)))},onFail:ke=>{const xe=ke?.response?.data?.message??ke?.message??"Failed to update complaint";ye(xe,"error")}})),x(null),D("")},p0=()=>{x(null),D("")},h0=$=>({...Tm($,v,_,B),statusOptions:Nm(S,$),escalationOptions:_m(v,$),onStatusChange:te=>d0($,te),onEscalationChange:te=>u0($,te),attachmentUrlMap:V});return{complaintTypeId:o,canCreateComplaint:Oe,isComplaintTypeActive:Q,statusNames:h,selectedStatus:Y,selectedUpdatedAtSort:re,isDownloadingReport:J,onStatusChange:s0,onSortChange:l0,onNewComplaint:c0,onDownloadReport:async()=>{if(!(!o||J)){C(!0),W(null);try{const te=(await Em({complaintTypeId:o,status:Y})).map(xe=>({...pl(xe,S,v),_fields:xe?.formField||[]})),oe=hl(te,H).filter(xe=>gl(xe,v,_,B)),ue=ll(oe).filter(xe=>!vm(xe,te,Fa)),le=new Blob([Cm(ue,te)],{type:"text/csv;charset=utf-8;"}),Le=URL.createObjectURL(le),ke=document.createElement("a");ke.href=Le,ke.download=`complaints-report-${o}-${Date.now()}.csv`,document.body.appendChild(ke),ke.click(),document.body.removeChild(ke),URL.revokeObjectURL(Le)}catch($){W($?.response?.data?.message??$?.message??"Failed to download report")}finally{C(!1)}}},error:d,downloadError:L,statusUpdateError:N,showLoading:El,pendingChange:z,remarkDraft:P,onRemarkDraftChange:D,onConfirmPendingChange:f0,onCancelPendingChange:p0,toasts:A,onDismissToast:je,tableProps:{scrollFields:be.filter($=>$.key!=="status"&&$.key!=="escalationTo"),stickyFields:[sl,ol],tableRows:Ne,fieldLabel:e,getCellContext:h0,page:R,itemsPerPage:F},paginationProps:{currentPage:R,totalItems:Ve.totalItems,itemsPerPage:F,onPageChange:o0,onItemsPerPageChange:i0,selectOptions:im,totalPages:Ve.totalPages,disabled:El,hasRows:!!(Ve.totalItems>0||Ne.length||R>1)}}}function Im(){const e=Fm();return i.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[i.jsx(Xi,{selectedStatus:e.selectedStatus,statusNames:e.statusNames,updatedAtSortOldest:e.selectedUpdatedAtSort==="asc",onStatusChange:e.onStatusChange,onSortChange:e.onSortChange,onNewComplaint:e.onNewComplaint,onDownloadReport:e.onDownloadReport,isDownloadingReport:e.isDownloadingReport,complaintTypeId:e.complaintTypeId,canCreateComplaint:e.canCreateComplaint,isComplaintTypeActive:e.isComplaintTypeActive}),e.error?i.jsx("p",{className:"ca-body",children:e.error}):null,e.downloadError?i.jsx("p",{className:"ca-body",children:e.downloadError}):null,e.statusUpdateError?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:e.statusUpdateError}):null,e.showLoading?i.jsx(Lt,{text:"Loading complaints"}):i.jsx(rl,{...e.tableProps}),e.paginationProps.hasRows?i.jsx(Zi,{...e.paginationProps}):null,e.pendingChange?i.jsxs(fa,{open:!0,title:e.pendingChange.type==="status"?`Change status from ${e.pendingChange.fromLabel} to ${e.pendingChange.toLabel}?`:`Change escalation from ${e.pendingChange.fromLabel} to ${e.pendingChange.toLabel}?`,onPrimary:e.onConfirmPendingChange,onSecondary:e.onCancelPendingChange,primaryLabel:"Save",secondaryLabel:"Cancel",children:[i.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-remark-input",children:"Remark (optional)"}),i.jsx("textarea",{id:"ca-remark-input",className:"ca-confirm-modal__textarea",value:e.remarkDraft,onChange:t=>e.onRemarkDraftChange(t.target.value),placeholder:"Add a remark (optional)"})]}):null,i.jsx(Zh,{toasts:e.toasts,onDismiss:e.onDismissToast})]})}const dr=()=>i.jsxs("main",{className:"ca-query-management-page",children:[i.jsx(Yh,{}),i.jsx(Im,{})]}),Om={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 xa(e){return typeof e=="string"?e:e?.label??""}function km(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),s=n?.options?.values??[],o=t.find(l=>l.id===n.dependsOnFieldId||n.dependsOnFieldKey&&l.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:r,fieldKey:se({fieldKey:a,label:r})?"status":a,fieldType:Sa(n.fieldType,Om,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??o?.fieldName??n.dependsOn??"",options:s.map(xa).filter(Boolean),parentMappings:Object.fromEntries(s.map(l=>{const c=xa(l),d=Dm(l);return!c||!d?null:[c,Pm(d,o?.options?.values??[])]}).filter(Boolean))}})}function ur(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 xm(e){if(se(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:ur(e.label||t)}function Dm(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Pm(e,t=[]){if(!e)return"";const n=t.map(xa).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>ur(s)===e||ur(s)===ur(e))||e}function Mm(e,t=[],n={}){const r=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return r;const s=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!s)return r;const o=e.parentMappings||{};if(!r.some(d=>!!o[d]))return r;const c=String(n[pe(s)]||"").trim();return c?r.filter(d=>String(o[d]||"")===c):r}function bl(e){return Dt(e)==="checkbox"}function Um(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function Bm(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function $m(e,t,n){const r={},a=Array.isArray(t)?t[0]:t;if(!a)return r;let s=e,o=a;for(;s?.dependsOn;){const l=Um(n,s.dependsOn);if(!l)break;const c=(s.parentMappings||{})[o];if(!c)break;r[pe(l)]=bl(l)?[c]:c,s=l,o=c}for(s=e,o=a;s;){const l=Bm(n,s);if(!l)break;const c=l.parentMappings||{},d=Object.keys(c).find(u=>c[u]===o);if(!d)break;r[pe(l)]=bl(l)?[d]:d,s=l,o=d}return r}function pe(e){return String(e.fieldKey||e.id||e.label)}function Dt(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 Sl(e){return`new-query-${e.id??pe(e)}`}function vl(e){if(se(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=Dt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function jm(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 Da(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;return n.url||n.fileUrl||n.urlPath||n.filePath||n.path||n.key||n.fileName||n.name||e.url||e.fileUrl||e.urlPath||e.filePath||e.path||e.key||e.fileName||n.id||e.id||t?.name||""}async function Vm(e,t,n){const r=Dt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(Et({file:n,folder:"complaints"})).unwrap();return Da(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const s=await e(Et({file:a,folder:"complaints"})).unwrap();return Da(s,a)}return a})):r==="images"&&Array.isArray(n)?await Promise.all(n.map(async s=>{if(typeof File<"u"&&s instanceof File){const o=await e(Et({file:s,folder:"complaints"})).unwrap();return Da(o,s)}return s})):jm(n)}async function qm(e=[],t={},n){const r={};for(const a of e){const s=xm(a);s&&(r[s]=await Vm(n,a,t[pe(a)]))}return r}function wl(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function Wm(e){return/^\d+$/.test(String(e).trim())}function zm(e=[],t={}){for(const n of e){const r=Dt(n),a=t[pe(n)],s=n.label||"This field";if(n.required&&wl(a))return`${s} is required.`;if(!wl(a)&&r==="number"&&!Wm(a))return`${s} must be a valid number.`}return""}function Hm({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:s}=it(),o=Dt(e),l=Sl(e),c=se(e);if(Ze(e)&&Array.isArray(r))return i.jsx(ji,{id:l,name:pe(e),required:e.required,storeList:r,value:t,onChange:n});if(o==="radio")return i.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>i.jsxs("label",{className:"review-option",htmlFor:`${l}-${d}`,children:[i.jsx("input",{id:`${l}-${d}`,name:pe(e),type:"radio",value:d,checked:t===d,onChange:u=>n(u.target.value),required:e.required,disabled:c}),i.jsx("span",{children:d})]},d))});if(o==="checkbox"){const d=Array.isArray(t)?t:[];return i.jsx("div",{className:"review-options review-options--inline",children:a.map(u=>i.jsxs("label",{className:"review-option",htmlFor:`${l}-${u}`,children:[i.jsx("input",{id:`${l}-${u}`,name:`${pe(e)}[]`,type:"checkbox",value:u,checked:d.includes(u),onChange:f=>n(f.target.checked?[...d,u]:d.filter(p=>p!==u))}),i.jsx("span",{children:u})]},u))})}if(o==="textarea")return i.jsx("textarea",{id:l,name:pe(e),className:"review-control review-control--textarea",value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c});if(o==="file")return i.jsx(sr,{id:l,name:pe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(o==="images")return i.jsx(sr,{id:l,name:pe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(o==="number")return i.jsx("input",{id:l,name:pe(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(o==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return i.jsxs("select",{id:l,name:pe(e),className:"review-control",value:t,onChange:u=>n(u.target.value),required:e.required,disabled:c,children:[c?null:i.jsxs("option",{value:"",children:["Select ",s(e)]}),d.map(u=>i.jsx("option",{value:u,children:u},u))]})}return i.jsx("input",{id:l,name:pe(e),className:"review-control",type:o,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function Cl({storeList:e}={}){const{fieldLabel:t}=it(),n=X.useDispatch(),r=Ye(),{complaintTypeId:a}=bn(),s=Number(a),o=Number.isFinite(s)&&s>0,[l,c]=w.useState([]),[d,u]=w.useState({}),[f,p]=w.useState(!0),[S,N]=w.useState(!1),[m,g]=w.useState(""),[b,h]=w.useState(""),[v,_]=w.useState("");w.useEffect(()=>{if(!o)return;let G=!1;return n(Fe(s)).unwrap().then(k=>{if(G)return;const I=km(Array.isArray(k?.data)?k.data:k);c(I),u(Object.fromEntries(I.map(K=>[pe(K),vl(K)])))}).catch(k=>{G||g(typeof k=="string"?k:k?.message||"Failed to load form fields.")}).finally(()=>{G||p(!1)}),()=>{G=!0}},[s,n,o]);const B=w.useMemo(()=>l.length>0,[l]),O=async G=>{if(G.preventDefault(),!o){g("A valid complaint type is required.");return}g(""),h(""),N(!0);const k=zm(l,d);if(k){g(k),N(!1);return}try{const I=await qm(l,d,n),K={complaintTypeId:s,title:v.trim(),fieldValues:I};await n(qn(K)).unwrap(),h("Query submitted successfully."),r(`/complaintmanagement/${s}`)}catch(I){g(typeof I=="string"?I:I?.message||"Failed to submit query.")}finally{N(!1)}},Q=G=>{const k=Mm(G,l,d);return i.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Dt(G))?" review-question--wide":""}`,children:[i.jsxs("label",{className:"review-label",htmlFor:Sl(G),children:[t(G)||"Untitled field",G.required?i.jsx("span",{className:"review-required",children:"*"}):null]}),i.jsx(Hm,{storeList:e,field:G,options:k,value:d[pe(G)]??vl(G),onChange:I=>{se(G)||u(K=>{const R=$m(G,I,l);return{...K,[pe(G)]:I,...R}})}})]},G.id??pe(G))};return i.jsx("main",{className:"ca-query-management-page",children:i.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[i.jsx("div",{className:"ca-query-details__heading",children:i.jsxs("div",{className:"ca-query-details__title-row",children:[i.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>r(`/complaintmanagement/${s}`),"aria-label":"Back to Complaint Management",children:i.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:i.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),i.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),m||!o?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:m||"A valid complaint type is required."}):null,f&&o?i.jsx(Lt,{text:"Loading form fields"}):null,o&&!f&&B?i.jsxs("form",{className:"review-form-card",onSubmit:O,children:[i.jsx("div",{className:"review-form-grid",children:l.map(G=>i.jsx(w.Fragment,{children:se(G)?null:Q(G)},G.id??pe(G)))}),i.jsx("div",{className:"ca-new-query__actions",children:i.jsx(ve,{type:"submit",disabled:S,children:S?"Submitting...":"Submit Complaint"})}),b?i.jsx("p",{className:"ca-body",children:b}):null]}):null]})})}function Km({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??i.jsx(Jo,{...e});return i.jsxs(vc,{children:[i.jsx(Pe,{path:"/",element:a}),i.jsx(Pe,{path:"/settings/:systemId",element:i.jsx(Ji,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),i.jsx(Pe,{path:"complaintmanagement",element:i.jsx(dr,{company:e.company})}),i.jsx(Pe,{path:"complaintmanagement/new/:complaintTypeId",element:i.jsx(Cl,{company:e.company,storeList:e.storeList})}),i.jsx(Pe,{path:"complaintmanagement/:complaintTypeId",element:i.jsx(dr,{company:e.company})}),i.jsx(Pe,{path:"querymanagement",element:i.jsx(dr,{company:e.company})}),i.jsx(Pe,{path:"querymanagement/new/:complaintTypeId",element:i.jsx(Cl,{company:e.company,storeList:e.storeList})}),i.jsx(Pe,{path:"querymanagement/:complaintTypeId",element:i.jsx(dr,{company:e.company})}),i.jsx(Pe,{path:"*",element:a})]})}function Ym({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return i.jsx(Km,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function Gm({children:e}){const{cssVars:t,darkMode:n,mode:r}=ao();return i.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function Jm({basePath:e,children:t}){return ut()?t:i.jsx(Pc,{basename:e,children:t})}function Zm({store:e,children:t}){return i.jsx(X.Provider,{store:e||Do,children:t})}function Xm({details:e,children:t}){const n=X.useDispatch();return w.useEffect(()=>{n(fo(e))},[n,e]),t}const Nl=[],_l=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:s=!1,title:o,description:l,rolelist:c,roleList:d=c??Nl,userList:u=Nl,storeList:f,currentUser:p,company:S=p?.company,useDemoData:N=!0,createLabel:m,onCreateForm:g,onConfigure:b,onOpen:h,onTitleClick:v,onDescriptionClick:_,onSearch:B,onPublish:O,onSaveDraft:Q,showSaveButton:G,showNextButton:k,onStepChange:I,children:K})=>{const R={title:o,description:l,useDemoData:N,createLabel:m,onCreateForm:g,onConfigure:b,onOpen:h,roleList:d,userList:u,storeList:f,company:S,onTitleClick:v,onDescriptionClick:_,onSearch:B,onSaveDraft:Q,showSaveButton:G,showNextButton:k},ee=w.useMemo(()=>({apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:s,title:o,description:l,roleList:d,userList:u,storeList:f,currentUser:p,company:S,useDemoData:N,createLabel:m,onCreateForm:g,onConfigure:b,onOpen:h,onTitleClick:v,onDescriptionClick:_,onSearch:B,onPublish:O,onSaveDraft:Q,showSaveButton:G,showNextButton:k,onStepChange:I}),[e,t,r,a,s,o,l,d,u,f,p,S,N,m,g,b,h,v,_,B,O,Q,G,k,I]);return i.jsx(mi.Provider,{value:S,children:i.jsx(ro,{theme:a,darkMode:s,children:i.jsx(Zm,{store:n,children:i.jsx(Xm,{details:ee,children:i.jsx(Gm,{children:i.jsx(Xs,{apiUrl:e,authToken:t,children:i.jsx(Jm,{basePath:r,children:i.jsx(Ym,{pageProps:R,onPublish:O,onStepChange:I,children:K})})})})})})})})};function Qm({children:e,onClick:t,className:n="",active:r=!1}){return i.jsx("button",{type:"button",className:`ca-chip ${r?"ca-chip--active":""} ${n}`.trim(),onClick:t,children:e})}function Rm({checked:e=!1,onChange:t,name:n,value:r,"aria-label":a,className:s=""}){return i.jsxs("label",{className:`ca-radio ${s}`.trim(),children:[i.jsx("input",{type:"radio",className:"ca-radio__input",name:n,value:r,checked:e,onChange:t,"aria-label":a}),i.jsx("span",{className:"ca-radio__mark"})]})}function e0({status:e="inactive",label:t,className:n=""}){const a=String(e).toLowerCase()==="active",s=t??(a?"Active":"Inactive");return i.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${n}`.trim(),children:s})}const t0=We.colors,n0=We.radii,r0=We.spacing,a0=We.typography;T.AddFormButton=hi,T.AddTableCard=si,T.ApiProvider=Xs,T.BodyText=zn,T.Button=ve,T.COMPLAINT_ENDPOINTS=Pn,T.CardFooter=Vo,T.CardHeader=jo,T.ChevronDownIcon=aa,T.ChevronRightIcon=Yn,T.Chip=Qm,T.CloseIcon=ti,T.ComplaintApp=_l,T.ComplaintManagementPage=Jo,T.ComplaintSettingsPage=Ji,T.ComplaintTableGrid=rl,T.ComplaintTableToolbar=Xi,T.CustomPagination=Zi,T.DEFAULT_PAGE_DESCRIPTION=Go,T.DEMO_SYSTEMS=hp,T.DataPoint=qo,T.Divider=Wo,T.DragHandleIcon=yi,T.EmptyState=Qi,T.FieldLabel=ra,T.FormCard=_i,T.FormCardGrid=Oi,T.FormField=Ue,T.FormInput=dn,T.FormSelect=ia,T.FormTextarea=yp,T.Heading1=ta,T.Heading2=na,T.Input=At,T.LabelText=Uo,T.LayersIcon=gp,T.LinkText=ip,T.Loading=Lt,T.PageHeader=$o,T.PlusIcon=Po,T.Radio=Rm,T.RoleMultiSelect=un,T.SETTINGS_STEPS=Me,T.SearchBar=Yo,T.SearchIcon=Ko,T.Select=ze,T.SettingsCard=cn,T.SettingsCardHeader=Ro,T.SettingsWizardProvider=Qo,T.StatusBadge=e0,T.Stepper=fn,T.SystemCard=zo,T.SystemCardGrid=Ho,T.TableCard=oi,T.TableCardGrid=fi,T.Tag=ni,T.Textarea=ei,T.ThemeProvider=ro,T.Toggle=Hn,T.ToggleField=$i,T.TrashIcon=Kn,T.Typography=Je,T.ValueText=Bo,T.WORKFLOW_SUBSTEPS=mp,T.api=ce,T.appDetailsReducer=po,T.clearAppDetails=Sf,T.clearComplaintError=df,T.clearId=vf,T.clearSelectedComplaintResource=uf,T.colors=t0,T.complaintReducer=io,T.createComplaintStore=xo,T.darkTheme=Zt,T.deepMerge=St,T.default=_l,T.defaultThemeFile=Qs,T.deleteFormField=Qt,T.getFormFields=Fe,T.lightTheme=We,T.normalizeThemeFile=Rs,T.radii=n0,T.resetComplaintState=ff,T.resolveActiveTheme=eo,T.saveFormFields=Xt,T.setAppDetails=fo,T.setAuthToken=qr,T.setBaseUrl=Zs,T.setId=st,T.setIsEdit=wt,T.spacing=r0,T.store=Do,T.themeToCssVars=to,T.typography=a0,T.useSettingsWizard=Gn,T.useTheme=ao,Object.defineProperties(T,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
3
+ `+('Please change the parent <Route path="'+C+'"> to <Route ')+('path="'+(C==="/"?"*":C+"/*")+'">.'))}let f=nt(),p;if(t){var g;let C=typeof t=="string"?ht(t):t;d==="/"||(g=C.pathname)!=null&&g.startsWith(d)||(process.env.NODE_ENV!=="production"?ae(!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 "'+C.pathname+'" was given in the `location` prop.')):ae(!1)),p=C}else p=f;let v=p.pathname||"/",h=v;if(d!=="/"){let C=d.replace(/^\//,"").split("/");h="/"+v.replace(/^\//,"").split("/").slice(C.length).join("/")}let m=tc(e,{pathname:h});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Ae(u||m!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Ae(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 y=Dc(m&&m.map(C=>Object.assign({},C,{params:Object.assign({},l,C.params),pathname:qe([d,a.encodeLocation?a.encodeLocation(C.pathname).pathname:C.pathname]),pathnameBase:C.pathnameBase==="/"?d:qe([d,a.encodeLocation?a.encodeLocation(C.pathnameBase).pathname:C.pathnameBase])})),s,n,r);return t&&y?U.createElement(Vt.Provider,{value:{location:Bt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Ke.Pop}},y):y}function Fc(){let e=$c(),t=Cc(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},s={padding:"2px 4px",backgroundColor:r},i=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),i=U.createElement(U.Fragment,null,U.createElement("p",null,"💿 Hey developer 👋"),U.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",U.createElement("code",{style:s},"ErrorBoundary")," or"," ",U.createElement("code",{style:s},"errorElement")," prop on your route."))),U.createElement(U.Fragment,null,U.createElement("h2",null,"Unexpected Application Error!"),U.createElement("h3",{style:{fontStyle:"italic"}},t),n?U.createElement("pre",{style:a},n):null,i)}const Ic=U.createElement(Fc,null);class Oc extends U.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?U.createElement(Ue.Provider,{value:this.props.routeContext},U.createElement(Nr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function kc(e){let{routeContext:t,match:n,children:r}=e,a=U.useContext(jt);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),U.createElement(Ue.Provider,{value:t},r)}function Dc(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let i=e,l=(a=n)==null?void 0:a.errors;if(l!=null){let u=i.findIndex(f=>f.route.id&&l?.[f.route.id]!==void 0);u>=0||(process.env.NODE_ENV!=="production"?ae(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(l).join(",")):ae(!1)),i=i.slice(0,Math.min(i.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<i.length;u++){let f=i[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:g}=n,v=f.route.loader&&p[f.route.id]===void 0&&(!g||g[f.route.id]===void 0);if(f.route.lazy||v){c=!0,d>=0?i=i.slice(0,d+1):i=[i[0]];break}}}return i.reduceRight((u,f,p)=>{let g,v=!1,h=null,m=null;n&&(g=l&&f.route.id?l[f.route.id]:void 0,h=f.route.errorElement||Ic,c&&(d<0&&p===0?(ms("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),v=!0,m=null):d===p&&(v=!0,m=f.route.hydrateFallbackElement||null)));let y=t.concat(i.slice(0,p+1)),C=()=>{let E;return g?E=h:v?E=m:f.route.Component?E=U.createElement(f.route.Component,null):f.route.element?E=f.route.element:E=u,U.createElement(kc,{match:f,routeContext:{outlet:u,matches:y,isDataRoute:n!=null},children:E})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?U.createElement(Oc,{location:n.location,revalidation:n.revalidation,component:h,error:g,children:C(),routeContext:{outlet:null,matches:y,isDataRoute:!0}}):C()},null)}var ps=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(ps||{}),zt=(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})(zt||{});function _r(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function xc(e){let t=U.useContext(jt);return t||(process.env.NODE_ENV!=="production"?ae(!1,_r(e)):ae(!1)),t}function Mc(e){let t=U.useContext(Cr);return t||(process.env.NODE_ENV!=="production"?ae(!1,_r(e)):ae(!1)),t}function Pc(e){let t=U.useContext(Ue);return t||(process.env.NODE_ENV!=="production"?ae(!1,_r(e)):ae(!1)),t}function Er(e){let t=Pc(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?ae(!1,e+' can only be used on routes that contain a unique "id"'):ae(!1)),n.route.id}function Uc(){return Er(zt.UseRouteId)}function $c(){var e;let t=U.useContext(Nr),n=Mc(zt.UseRouteError),r=Er(zt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Bc(){let{router:e}=xc(ps.UseNavigateStable),t=Er(zt.UseNavigateStable),n=U.useRef(!1);return fs(()=>{n.current=!0}),U.useCallback(function(a,s){s===void 0&&(s={}),process.env.NODE_ENV!=="production"&&Ae(n.current,us),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Bt({fromRouteId:t},s)))},[e,t])}const hs={};function ms(e,t,n){!t&&!hs[e]&&(hs[e]=!0,process.env.NODE_ENV!=="production"&&Ae(!1,n))}const gs={};function jc(e,t){process.env.NODE_ENV!=="production"&&!gs[t]&&(gs[t]=!0,console.warn(t))}const ys=(e,t,n)=>jc(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function Vc(e,t){e?.v7_startTransition===void 0&&ys("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&&ys("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function De(e){process.env.NODE_ENV!=="production"?ae(!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>."):ae(!1)}function qc(e){let{basename:t="/",children:n=null,location:r,navigationType:a=Ke.Pop,navigator:s,static:i=!1,future:l}=e;mt()&&(process.env.NODE_ENV!=="production"?ae(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):ae(!1));let c=t.replace(/^\/*/,"/"),d=U.useMemo(()=>({basename:c,navigator:s,static:i,future:Bt({v7_relativeSplatPath:!1},l)}),[c,l,s,i]);typeof r=="string"&&(r=ht(r));let{pathname:u="/",search:f="",hash:p="",state:g=null,key:v="default"}=r,h=U.useMemo(()=>{let m=Ye(u,c);return m==null?null:{location:{pathname:m,search:f,hash:p,state:g,key:v},navigationType:a}},[c,u,f,p,g,v,a]);return process.env.NODE_ENV!=="production"&&Ae(h!=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."),h==null?null:U.createElement(ke.Provider,{value:d},U.createElement(Vt.Provider,{children:n,value:h}))}function Wc(e){let{children:t,location:n}=e;return Tc(Ar(t),n)}new Promise(()=>{});function Ar(e,t){t===void 0&&(t=[]);let n=[];return U.Children.forEach(e,(r,a)=>{if(!U.isValidElement(r))return;let s=[...t,a];if(r.type===U.Fragment){n.push.apply(n,Ar(r.props.children,s));return}r.type!==De&&(process.env.NODE_ENV!=="production"?ae(!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>"):ae(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?ae(!1,"An index route cannot have child routes."):ae(!1));let i={id:r.props.id||s.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&&(i.children=Ar(r.props.children,s)),n.push(i)}),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 Tr(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 Nn="get",_n="application/x-www-form-urlencoded";function En(e){return e!=null&&typeof e.tagName=="string"}function zc(e){return En(e)&&e.tagName.toLowerCase()==="button"}function Hc(e){return En(e)&&e.tagName.toLowerCase()==="form"}function Kc(e){return En(e)&&e.tagName.toLowerCase()==="input"}function Yc(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Gc(e,t){return e.button===0&&(!t||t==="_self")&&!Yc(e)}function Lr(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 Jc(e,t){let n=Lr(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(s=>{n.append(a,s)})}),n}let An=null;function Zc(){if(An===null)try{new FormData(document.createElement("form"),0),An=!1}catch{An=!0}return An}const Xc=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Fr(e){return e!=null&&!Xc.has(e)?(process.env.NODE_ENV!=="production"&&Ae(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+_n+'"')),null):e}function Qc(e,t){let n,r,a,s,i;if(Hc(e)){let l=e.getAttribute("action");r=l?Ye(l,t):null,n=e.getAttribute("method")||Nn,a=Fr(e.getAttribute("enctype"))||_n,s=new FormData(e)}else if(zc(e)||Kc(e)&&(e.type==="submit"||e.type==="image")){let l=e.form;if(l==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||l.getAttribute("action");if(r=c?Ye(c,t):null,n=e.getAttribute("formmethod")||l.getAttribute("method")||Nn,a=Fr(e.getAttribute("formenctype"))||Fr(l.getAttribute("enctype"))||_n,s=new FormData(l,e),!Zc()){let{name:d,type:u,value:f}=e;if(u==="image"){let p=d?d+".":"";s.append(p+"x","0"),s.append(p+"y","0")}else d&&s.append(d,f)}}else{if(En(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Nn,r=null,a=_n,i=e}return s&&a==="text/plain"&&(i=s,s=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:s,body:i}}const Rc=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],ed=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],td=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],nd="6";try{window.__reactRouterVersion=nd}catch{}const bs=U.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(bs.displayName="ViewTransition");const rd=U.createContext(new Map);process.env.NODE_ENV!=="production"&&(rd.displayName="Fetchers");const Ss=U["startTransition"];function ad(e){let{basename:t,children:n,future:r,window:a}=e,s=U.useRef();s.current==null&&(s.current=Ql({window:a,v5Compat:!0}));let i=s.current,[l,c]=U.useState({action:i.action,location:i.location}),{v7_startTransition:d}=r||{},u=U.useCallback(f=>{d&&Ss?Ss(()=>c(f)):c(f)},[c,d]);return U.useLayoutEffect(()=>i.listen(u),[i,u]),U.useEffect(()=>Vc(r),[r]),U.createElement(qc,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:i,future:r})}process.env.NODE_ENV;const sd=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",od=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,vs=U.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:s,replace:i,state:l,target:c,to:d,preventScrollReset:u,viewTransition:f}=t,p=Tr(t,Rc),{basename:g}=U.useContext(ke),v,h=!1;if(typeof d=="string"&&od.test(d)&&(v=d,sd))try{let E=new URL(window.location.href),N=d.startsWith("//")?new URL(E.protocol+d):new URL(d),O=Ye(N.pathname,g);N.origin===E.origin&&O!=null?d=O+N.search+N.hash:h=!0}catch{process.env.NODE_ENV!=="production"&&Ae(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let m=Ec(d,{relative:a}),y=dd(d,{replace:i,state:l,target:c,preventScrollReset:u,relative:a,viewTransition:f});function C(E){r&&r(E),E.defaultPrevented||y(E)}return U.createElement("a",gt({},p,{href:v||m,onClick:h||s?r:C,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(vs.displayName="Link");const id=U.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:s="",end:i=!1,style:l,to:c,viewTransition:d,children:u}=t,f=Tr(t,ed),p=Wt(c,{relative:f.relative}),g=nt(),v=U.useContext(Cr),{navigator:h,basename:m}=U.useContext(ke),y=v!=null&&gd(p)&&d===!0,C=h.encodeLocation?h.encodeLocation(p).pathname:p.pathname,E=g.pathname,N=v&&v.navigation&&v.navigation.location?v.navigation.location.pathname:null;a||(E=E.toLowerCase(),N=N?N.toLowerCase():null,C=C.toLowerCase()),N&&m&&(N=Ye(N,m)||N);const O=C!=="/"&&C.endsWith("/")?C.length-1:C.length;let L=E===C||!i&&E.startsWith(C)&&E.charAt(O)==="/",H=N!=null&&(N===C||!i&&N.startsWith(C)&&N.charAt(C.length)==="/"),te={isActive:L,isPending:H,isTransitioning:y},Z=L?r:void 0,j;typeof s=="function"?j=s(te):j=[s,L?"active":null,H?"pending":null,y?"transitioning":null].filter(Boolean).join(" ");let z=typeof l=="function"?l(te):l;return U.createElement(vs,gt({},f,{"aria-current":Z,className:j,ref:n,style:z,to:c,viewTransition:d}),typeof u=="function"?u(te):u)});process.env.NODE_ENV!=="production"&&(id.displayName="NavLink");const ld=U.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:s,state:i,method:l=Nn,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,g=Tr(e,td),v=hd(),h=md(c,{relative:u}),m=l.toLowerCase()==="get"?"get":"post",y=C=>{if(d&&d(C),C.defaultPrevented)return;C.preventDefault();let E=C.nativeEvent.submitter,N=E?.getAttribute("formmethod")||l;v(E||C.currentTarget,{fetcherKey:n,method:N,navigate:r,replace:s,state:i,relative:u,preventScrollReset:f,viewTransition:p})};return U.createElement("form",gt({ref:t,method:m,action:h,onSubmit:a?d:y},g))});process.env.NODE_ENV!=="production"&&(ld.displayName="Form"),process.env.NODE_ENV;var Tn;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Tn||(Tn={}));var ws;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(ws||(ws={}));function cd(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Cs(e){let t=U.useContext(jt);return t||(process.env.NODE_ENV!=="production"?ae(!1,cd(e)):ae(!1)),t}function dd(e,t){let{target:n,replace:r,state:a,preventScrollReset:s,relative:i,viewTransition:l}=t===void 0?{}:t,c=We(),d=nt(),u=Wt(e,{relative:i});return U.useCallback(f=>{if(Gc(f,n)){f.preventDefault();let p=r!==void 0?r:$t(d)===$t(u);c(e,{replace:p,state:a,preventScrollReset:s,relative:i,viewTransition:l})}},[d,c,u,r,a,n,e,s,i,l])}function Ns(e){process.env.NODE_ENV!=="production"&&Ae(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=U.useRef(Lr(e)),n=U.useRef(!1),r=nt(),a=U.useMemo(()=>Jc(r.search,n.current?null:t.current),[r.search]),s=We(),i=U.useCallback((l,c)=>{const d=Lr(typeof l=="function"?l(a):l);n.current=!0,s("?"+d,c)},[s,a]);return[a,i]}function ud(){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,pd=()=>"__"+String(++fd)+"__";function hd(){let{router:e}=Cs(Tn.UseSubmit),{basename:t}=U.useContext(ke),n=Uc();return U.useCallback(function(r,a){a===void 0&&(a={}),ud();let{action:s,method:i,encType:l,formData:c,body:d}=Qc(r,t);if(a.navigate===!1){let u=a.fetcherKey||pd();e.fetch(u,n,a.action||s,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||i,formEncType:a.encType||l,flushSync:a.flushSync})}else e.navigate(a.action||s,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||i,formEncType:a.encType||l,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,n])}function md(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=U.useContext(ke),a=U.useContext(Ue);a||(process.env.NODE_ENV!=="production"?ae(!1,"useFormAction must be used inside a RouteContext"):ae(!1));let[s]=a.matches.slice(-1),i=gt({},Wt(e||".",{relative:n})),l=nt();if(e==null){i.search=l.search;let c=new URLSearchParams(i.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();i.search=f?"?"+f:""}}return(!e||e===".")&&s.route.index&&(i.search=i.search?i.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(i.pathname=i.pathname==="/"?r:qe([r,i.pathname])),$t(i)}function gd(e,t){t===void 0&&(t={});let n=U.useContext(bs);n==null&&(process.env.NODE_ENV!=="production"?ae(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):ae(!1));let{basename:r}=Cs(Tn.useViewTransitionState),a=Wt(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=Ye(n.currentLocation.pathname,r)||n.currentLocation.pathname,i=Ye(n.nextLocation.pathname,r)||n.nextLocation.pathname;return vr(a.pathname,i)!=null||vr(a.pathname,s)!=null}function _s(e,t){return function(){return e.apply(t,arguments)}}const{toString:yd}=Object.prototype,{getPrototypeOf:yt}=Object,{iterator:Ht,toStringTag:Es}=Symbol,Ln=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Kt=(e,t)=>{let n=e;const r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),Ln(n,t))return!0;n=yt(n)}return!1},bd=(e,t)=>e!=null&&Kt(e,t)?e[t]:void 0,Ir=(e=>t=>{const n=yd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Te=e=>(e=e.toLowerCase(),t=>Ir(t)===e),Fn=e=>t=>typeof t===e,{isArray:rt}=Array,at=Fn("undefined");function bt(e){return e!==null&&!at(e)&&e.constructor!==null&&!at(e.constructor)&&_e(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const As=Te("ArrayBuffer");function Sd(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&As(e.buffer),t}const vd=Fn("string"),_e=Fn("function"),Ts=Fn("number"),St=e=>e!==null&&typeof e=="object",wd=e=>e===!0||e===!1,In=e=>{if(!St(e))return!1;const t=yt(e);return(t===null||t===Object.prototype||yt(t)===null)&&!Kt(e,Es)&&!Kt(e,Ht)},Cd=e=>{if(!St(e)||bt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Nd=Te("Date"),_d=Te("File"),Ed=e=>!!(e&&typeof e.uri<"u"),Ad=e=>e&&typeof e.getParts<"u",Td=Te("Blob"),Ld=Te("FileList"),Fd=Te("Set"),Id=e=>St(e)&&_e(e.pipe);function Od(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Ls=Od(),Fs=typeof Ls.FormData<"u"?Ls.FormData:void 0,kd=e=>{if(!e)return!1;if(Fs&&e instanceof Fs)return!0;const t=yt(e);if(!t||t===Object.prototype||!_e(e.append))return!1;const n=Ir(e);return n==="formdata"||n==="object"&&_e(e.toString)&&e.toString()==="[object FormData]"},Dd=Te("URLSearchParams"),[xd,Md,Pd,Ud]=["ReadableStream","Request","Response","Headers"].map(Te),$d=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Yt(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,a;if(typeof e!="object"&&(e=[e]),rt(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(bt(e))return;const s=n?Object.getOwnPropertyNames(e):Object.keys(e),i=s.length;let l;for(r=0;r<i;r++)l=s[r],t.call(null,e[l],l,e)}}function Is(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 st=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Os=e=>!at(e)&&e!==st;function Or(...e){const{caseless:t,skipUndefined:n}=Os(this)&&this||{},r={},a=(s,i)=>{if(i==="__proto__"||i==="constructor"||i==="prototype")return;const l=t&&typeof i=="string"&&Is(r,i)||i,c=Ln(r,l)?r[l]:void 0;In(c)&&In(s)?r[l]=Or(c,s):In(s)?r[l]=Or({},s):rt(s)?r[l]=s.slice():(!n||!at(s))&&(r[l]=s)};for(let s=0,i=e.length;s<i;s++){const l=e[s];if(!l||bt(l)||(Yt(l,a),typeof l!="object"||rt(l)))continue;const c=Object.getOwnPropertySymbols(l);for(let d=0;d<c.length;d++){const u=c[d];Zd.call(l,u)&&a(l[u],u)}}return r}const Bd=(e,t,n,{allOwnKeys:r}={})=>(Yt(t,(a,s)=>{n&&_e(a)?Object.defineProperty(e,s,{__proto__:null,value:_s(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,s,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),jd=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Vd=(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)},qd=(e,t,n,r)=>{let a,s,i;const l={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),s=a.length;s-- >0;)i=a[s],(!r||r(i,e,t))&&!l[i]&&(t[i]=e[i],l[i]=!0);e=n!==!1&&yt(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},Wd=(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},zd=e=>{if(!e)return null;if(rt(e))return e;let t=e.length;if(!Ts(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},Hd=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&yt(Uint8Array)),Kd=(e,t)=>{const r=(e&&e[Ht]).call(e);let a;for(;(a=r.next())&&!a.done;){const s=a.value;t.call(e,s[0],s[1])}},Yd=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Gd=Te("HTMLFormElement"),Jd=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:Zd}=Object.prototype,Xd=Te("RegExp"),ks=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Yt(n,(a,s)=>{let i;(i=t(a,s,e))!==!1&&(r[s]=i||a)}),Object.defineProperties(e,r)},Qd=e=>{ks(e,(t,n)=>{if(_e(e)&&["arguments","caller","callee"].includes(n))return!1;const r=e[n];if(_e(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+"'")})}})},Rd=(e,t)=>{const n={},r=a=>{a.forEach(s=>{n[s]=!0})};return rt(e)?r(e):r(String(e).split(t)),n},eu=()=>{},tu=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function nu(e){return!!(e&&_e(e.append)&&e[Es]==="FormData"&&e[Ht])}const ru=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(Fd(r)){a=[];for(const s of r){const i=n(s);!at(i)&&a.push(i)}}else a=rt(r)?[]:{},Yt(r,(s,i)=>{const l=n(s);!at(l)&&(a[i]=l)});return t.delete(r),a}}return r};return n(e)},au=Te("AsyncFunction"),su=e=>e&&(St(e)||_e(e))&&_e(e.then)&&_e(e.catch),Ds=((e,t)=>e?setImmediate:t?((n,r)=>(st.addEventListener("message",({source:a,data:s})=>{a===st&&s===n&&r.length&&r.shift()()},!1),a=>{r.push(a),st.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",_e(st.postMessage)),ou=typeof queueMicrotask<"u"?queueMicrotask.bind(st):typeof process<"u"&&process.nextTick||Ds,xs=e=>e!=null&&_e(e[Ht]),b={isArray:rt,isArrayBuffer:As,isBuffer:bt,isFormData:kd,isArrayBufferView:Sd,isString:vd,isNumber:Ts,isBoolean:wd,isObject:St,isPlainObject:In,isEmptyObject:Cd,isReadableStream:xd,isRequest:Md,isResponse:Pd,isHeaders:Ud,isUndefined:at,isDate:Nd,isFile:_d,isReactNativeBlob:Ed,isReactNative:Ad,isBlob:Td,isRegExp:Xd,isFunction:_e,isStream:Id,isURLSearchParams:Dd,isTypedArray:Hd,isFileList:Ld,forEach:Yt,merge:Or,extend:Bd,trim:$d,stripBOM:jd,inherits:Vd,toFlatObject:qd,kindOf:Ir,kindOfTest:Te,endsWith:Wd,toArray:zd,forEachEntry:Kd,matchAll:Yd,isHTMLForm:Gd,hasOwnProperty:Ln,hasOwnProp:Ln,hasOwnInPrototypeChain:Kt,getSafeProp:bd,reduceDescriptors:ks,freezeMethods:Qd,toObjectSet:Rd,toCamelCase:Jd,noop:eu,toFiniteNumber:tu,findKey:Is,global:st,isContextDefined:Os,isSpecCompliantForm:nu,toJSONObject:ru,isAsyncFn:au,isThenable:su,setImmediate:Ds,asap:ou,isIterable:xs,isSafeIterable:e=>e!=null&&Kt(e,Ht)&&xs(e)},iu=b.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"]),lu=e=>{const t={};let n,r,a;return e&&e.split(`
4
+ `).forEach(function(i){a=i.indexOf(":"),n=i.substring(0,a).trim().toLowerCase(),r=i.substring(a+1).trim();const l=b.hasOwnProp(t,n);!n||l&&b.hasOwnProp(iu,n)||(n==="set-cookie"?l?t[n].push(r):t[n]=[r]:t[n]=l?t[n]+", "+r:r)}),t};function cu(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 du=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),uu=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function kr(e,t){return b.isArray(e)?e.map(n=>kr(n,t)):cu(String(e).replace(t,""))}const fu=e=>kr(e,du),pu=e=>kr(e,uu);function Ms(e){const t=Object.create(null);return b.forEach(e.toJSON(),(n,r)=>{t[r]=pu(n)}),t}const Ps=Symbol("internals");function Gt(e){return e&&String(e).trim().toLowerCase()}function On(e){return e===!1||e==null?e:b.isArray(e)?e.map(On):fu(String(e))}function hu(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 mu=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Dr(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 gu(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 yu(e){const t=Object.create(null),n=String(e);let r=0,a=!1,s=!1;function i(l){const c=Dr(n.slice(r,l)),d=c.indexOf("=");if(d<1)return;const u=Dr(c.slice(0,d));if(!mu.test(u))return;const f=u.toLowerCase();if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=Dr(c.slice(d+1));t[f]=gu(p)}for(let l=0;l<n.length;l++){const c=n.charCodeAt(l);a?s?s=!1:c===92?s=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(i(l),r=l+1)}return i(n.length),t}const bu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function xr(e,t,n,r,a){if(b.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!b.isString(t)){if(b.isString(r))return t.indexOf(r)!==-1;if(b.isRegExp(r))return r.test(t)}}function Su(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function vu(e,t){const n=b.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(a,s,i){return this[r].call(this,t,a,s,i)},configurable:!0})})}let Se=class{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function s(l,c,d){const u=Gt(c);if(!u)return;const f=b.findKey(a,u);(!f||a[f]===void 0||d===!0||d===void 0&&a[f]!==!1)&&(a[f||c]=On(l))}const i=(l,c)=>b.forEach(l,(d,u)=>s(d,u,c));if(b.isPlainObject(t)||t instanceof this.constructor)i(t,n);else if(b.isString(t)&&(t=t.trim())&&!bu(t))i(lu(t),n);else if(b.isObject(t)&&b.isSafeIterable(t)){let l=Object.create(null),c,d;for(const u of t){if(!b.isArray(u))throw new TypeError("Object iterator must return a key-value pair");d=u[0],b.hasOwnProp(l,d)?(c=l[d],l[d]=b.isArray(c)?[...c,u[1]]:[c,u[1]]):l[d]=u[1]}i(l,n)}else t!=null&&s(n,t,r);return this}get(t,n){if(t=Gt(t),t){const r=b.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return hu(a);if(b.isFunction(n))return n.call(this,a,r);if(b.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Gt(t),t){const r=b.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||xr(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function s(i){if(i=Gt(i),i){const l=b.findKey(r,i);l&&(!n||xr(r,r[l],l,n))&&(delete r[l],a=!0)}}return b.isArray(t)?t.forEach(s):s(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const s=n[r];(!t||xr(this,this[s],s,t,!0))&&(delete this[s],a=!0)}return a}normalize(t){const n=this,r={};return b.forEach(this,(a,s)=>{const i=b.findKey(r,s);if(i){n[i]=On(a),delete n[s];return}const l=t?Su(s):String(s).trim();l!==s&&delete n[s],n[l]=On(a),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return b.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&b.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 b.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 yu(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[Ps]=this[Ps]={accessors:{}}).accessors,a=this.prototype;function s(i){const l=Gt(i);r[l]||(vu(a,i),r[l]=!0)}return b.isArray(t)?t.forEach(s):s(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),b.reduceDescriptors(Se.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),b.freezeMethods(Se);const kn="[REDACTED ****]";function wu(e){if(b.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(b.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function Cu(e,t){const n=new Set(t.map(s=>String(s).toLowerCase())),r=[],a=s=>{if(s===null||typeof s!="object"||b.isBuffer(s))return s;if(r.indexOf(s)!==-1)return;s instanceof Se&&(s=s.toJSON()),r.push(s);let i;if(b.isArray(s))i=[],s.forEach((l,c)=>{const d=a(l);b.isUndefined(d)||(i[c]=d)});else{if(!b.isPlainObject(s)&&wu(s))return r.pop(),s;i=Object.create(null);for(const[l,c]of Object.entries(s)){const d=n.has(l.toLowerCase())?kn:a(c);b.isUndefined(d)||(i[l]=d)}}return r.pop(),i};return a(e)}function Us(e){try{return String(e)}catch{return""}}function Nu(e){return e.errors.map(n=>{try{return n&&n.message?Us(n.message):Us(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let W=class Jl extends Error{static from(t,n,r,a,s,i){let l=t.message;!l&&b.isArray(t.errors)&&t.errors.length&&(l=Nu(t));const c=new Jl(l,n||t.code,r,a,s);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),i&&Object.assign(c,i),c}constructor(t,n,r,a,s){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),s&&(this.response=s,this.status=s.status)}toJSON(){const t=this.config,n=t&&b.hasOwnProp(t,"redact")?t.redact:void 0,r=b.isArray(n)&&n.length>0?Cu(t,n):b.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}}};W.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",W.ERR_BAD_OPTION="ERR_BAD_OPTION",W.ECONNABORTED="ECONNABORTED",W.ETIMEDOUT="ETIMEDOUT",W.ECONNREFUSED="ECONNREFUSED",W.ERR_NETWORK="ERR_NETWORK",W.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",W.ERR_DEPRECATED="ERR_DEPRECATED",W.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",W.ERR_BAD_REQUEST="ERR_BAD_REQUEST",W.ERR_CANCELED="ERR_CANCELED",W.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",W.ERR_INVALID_URL="ERR_INVALID_URL",W.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const _u=null,$s=100;function Mr(e){return b.isPlainObject(e)||b.isArray(e)}function Bs(e){return b.endsWith(e,"[]")?e.slice(0,-2):e}function Pr(e,t,n){return e?e.concat(t).map(function(a,s){return a=Bs(a),!n&&s?"["+a+"]":a}).join(n?".":""):t}function Eu(e){return b.isArray(e)&&!e.some(Mr)}const Au=b.toFlatObject(b,{},null,function(t){return/^is[A-Z]/.test(t)});function Dn(e,t,n){if(!b.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=b.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(C,E){return!b.isUndefined(E[C])});const r=n.metaTokens,a=n.visitor||v,s=n.dots,i=n.indexes,l=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?$s:n.maxDepth,d=l&&b.isSpecCompliantForm(t),u=[];if(!b.isFunction(a))throw new TypeError("visitor must be a function");function f(y){if(y===null)return"";if(b.isDate(y))return y.toISOString();if(b.isBoolean(y))return y.toString();if(!d&&b.isBlob(y))throw new W("Blob is not supported. Use a Buffer instead.");if(b.isArrayBuffer(y)||b.isTypedArray(y)){if(d&&typeof l=="function")return new l([y]);throw new W("Blob is not supported. Use a Buffer instead.",W.ERR_NOT_SUPPORT)}return y}function p(y){if(y>c)throw new W("Object is too deeply nested ("+y+" levels). Max depth: "+c,W.ERR_FORM_DATA_DEPTH_EXCEEDED)}function g(y,C){if(c===1/0)return JSON.stringify(y);const E=[];return JSON.stringify(y,function(O,L){if(!b.isObject(L))return L;for(;E.length&&E[E.length-1]!==this;)E.pop();return E.push(L),p(C+E.length-1),L})}function v(y,C,E){let N=y;if(b.isReactNative(t)&&b.isReactNativeBlob(y))return t.append(Pr(E,C,s),f(y)),!1;if(y&&!E&&typeof y=="object"){if(b.endsWith(C,"{}"))C=r?C:C.slice(0,-2),y=g(y,1);else if(b.isArray(y)&&Eu(y)||(b.isFileList(y)||b.endsWith(C,"[]"))&&(N=b.toArray(y)))return C=Bs(C),N.forEach(function(L,H){!(b.isUndefined(L)||L===null)&&t.append(i===!0?Pr([C],H,s):i===null?C:C+"[]",f(L))}),!1}return Mr(y)?!0:(t.append(Pr(E,C,s),f(y)),!1)}const h=Object.assign(Au,{defaultVisitor:v,convertValue:f,isVisitable:Mr});function m(y,C,E=0){if(!b.isUndefined(y)){if(p(E),u.indexOf(y)!==-1)throw new Error("Circular reference detected in "+C.join("."));u.push(y),b.forEach(y,function(O,L){(!(b.isUndefined(O)||O===null)&&a.call(t,O,b.isString(L)?L.trim():L,C,h))===!0&&m(O,C?C.concat(L):[L],E+1)}),u.pop()}}if(!b.isObject(e))throw new TypeError("data must be an object");return m(e),t}function js(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Ur(e,t){this._pairs=[],e&&Dn(e,this,t)}const Vs=Ur.prototype;Vs.append=function(t,n){this._pairs.push([t,n])},Vs.toString=function(t){const n=t?r=>t.call(this,r,js):js;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function Tu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function qs(e,t,n){if(!t)return e;e=e||"";const r=b.isFunction(n)?{serialize:n}:n,a=b.getSafeProp(r,"encode")||Tu,s=b.getSafeProp(r,"serialize");let i;if(s?i=s(t,r):i=b.isURLSearchParams(t)?t.toString():new Ur(t,r).toString(a),i){const l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class Ws{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){b.forEach(this.handlers,function(r){r!==null&&t(r)})}}const $r={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},Lu={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Ur,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Br=typeof window<"u"&&typeof document<"u",jr=typeof navigator=="object"&&navigator||void 0,Fu=Br&&(!jr||["ReactNative","NativeScript","NS"].indexOf(jr.product)<0),Iu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Ou=Br&&window.location.href||"http://localhost",be={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Br,hasStandardBrowserEnv:Fu,hasStandardBrowserWebWorkerEnv:Iu,navigator:jr,origin:Ou},Symbol.toStringTag,{value:"Module"})),...Lu};function ku(e,t){return Dn(e,new be.classes.URLSearchParams,{visitor:function(n,r,a,s){return be.isNode&&b.isBuffer(n)?(this.append(r,n.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}const zs=$s;function Hs(e){if(e>zs)throw new W("FormData field is too deeply nested ("+e+" levels). Max depth: "+zs,W.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Du(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Hs(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function xu(e){const t={},n=Object.keys(e);let r;const a=n.length;let s;for(r=0;r<a;r++)s=n[r],t[s]=e[s];return t}function Ks(e){function t(n,r,a,s){Hs(s);let i=n[s++];if(i==="__proto__")return!0;const l=Number.isFinite(+i),c=s>=n.length;return i=!i&&b.isArray(a)?a.length:i,c?(b.hasOwnProp(a,i)?a[i]=b.isArray(a[i])?a[i].concat(r):[a[i],r]:a[i]=r,!l):((!b.hasOwnProp(a,i)||!b.isObject(a[i]))&&(a[i]=[]),t(n,r,a[i],s)&&b.isArray(a[i])&&(a[i]=xu(a[i])),!l)}if(b.isFormData(e)&&b.isFunction(e.entries)){const n={};return b.forEachEntry(e,(r,a)=>{t(Du(r),a,n,0)}),n}return null}const vt=(e,t)=>e!=null&&b.hasOwnProp(e,t)?e[t]:void 0;function Mu(e,t,n){if(b.isString(e))try{return(t||JSON.parse)(e),b.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Jt={transitional:$r,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,s=b.isObject(t);if(s&&b.isHTMLForm(t)&&(t=new FormData(t)),b.isFormData(t))return a?JSON.stringify(Ks(t)):t;if(b.isArrayBuffer(t)||b.isBuffer(t)||b.isStream(t)||b.isFile(t)||b.isBlob(t)||b.isReadableStream(t))return t;if(b.isArrayBufferView(t))return t.buffer;if(b.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){const c=vt(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return ku(t,c).toString();if((l=b.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=vt(this,"env"),u=d&&d.FormData;return Dn(l?{"files[]":t}:t,u&&new u,c)}}return s||a?(n.setContentType("application/json",!1),Mu(t)):t}],transformResponse:[function(t){const n=vt(this,"transitional")||Jt.transitional,r=n&&n.forcedJSONParsing,a=vt(this,"responseType"),s=a==="json";if(b.isResponse(t)||b.isReadableStream(t))return t;if(t&&b.isString(t)&&(r&&!a||s)){const l=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t,vt(this,"parseReviver"))}catch(c){if(l)throw c.name==="SyntaxError"?W.from(c,W.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:be.classes.FormData,Blob:be.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};b.forEach(["delete","get","head","post","put","patch","query"],e=>{Jt.headers[e]={}});function Vr(e,t){const n=this||Jt,r=t||n,a=Se.from(r.headers);let s=r.data;return b.forEach(e,function(l){s=l.call(n,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function Ys(e){return!!(e&&e.__CANCEL__)}let Zt=class extends W{constructor(t,n,r){super(t??"canceled",W.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Gs(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new W("Request failed with status code "+n.status,n.status>=400&&n.status<500?W.ERR_BAD_REQUEST:W.ERR_BAD_RESPONSE,n.config,n.request,n))}function Pu(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function Uu(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,s=0,i;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),u=r[s];i||(i=d),n[a]=c,r[a]=d;let f=s,p=0;for(;f!==a;)p+=n[f++],f=f%e;if(a=(a+1)%e,a===s&&(s=(s+1)%e),d-i<t)return;const g=u&&d-u;return g?Math.round(p*1e3/g):void 0}}function $u(e,t){let n=0,r=1e3/t,a,s;const i=(d,u=Date.now())=>{n=u,a=null,s&&(clearTimeout(s),s=null),e(...d)};return[(...d)=>{const u=Date.now(),f=u-n;f>=r?i(d,u):(a=d,s||(s=setTimeout(()=>{s=null,i(a)},r-f)))},()=>a&&i(a)]}const xn=(e,t,n=3)=>{let r=0;const a=Uu(50,250);return $u(s=>{if(!s||typeof s.loaded!="number")return;const i=s.loaded,l=s.lengthComputable?s.total:void 0,c=Math.max(0,l!=null?Math.min(i,l):i),d=Math.max(0,c-r),u=a(d);r=Math.max(r,c);const f={loaded:c,total:l,progress:l?c/l:void 0,bytes:d,rate:u||void 0,estimated:u&&l?(l-c)/u:void 0,event:s,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(f)},n)},Js=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Zs=(e,t=b.asap)=>(...n)=>t(()=>e(...n)),Bu=be.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,be.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(be.origin),be.navigator&&/(msie|trident)/i.test(be.navigator.userAgent)):()=>!0,ju=be.hasStandardBrowserEnv?{write(e,t,n,r,a,s,i){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];b.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),b.isString(r)&&l.push(`path=${r}`),b.isString(a)&&l.push(`domain=${a}`),s===!0&&l.push("secure"),b.isString(i)&&l.push(`SameSite=${i}`),document.cookie=l.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 Vu(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function qu(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 Wu=/^https?:(?!\/\/)/i,zu=/[\t\n\r]/g;function Hu(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function Ku(e){return Hu(e).replace(zu,"")}function Yu(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${kn}`)}function Gu(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${kn}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${kn}`);return n===-1?a:`${a}#${Yu(t.slice(n+1))}`}function Xs(e,t){if(typeof e=="string"){const n=Ku(e);if(Wu.test(n))throw new W(`Invalid URL ${JSON.stringify(Gu(n))}: missing "//" after protocol`,W.ERR_INVALID_URL,t)}}function Qs(e,t,n,r){Xs(t,r);let a=!Vu(t);return e&&(a||n===!1)?(Xs(e,r),qu(e,t)):t}const Rs=e=>e instanceof Se?{...e}:e,Ju=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function ot(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,g){return b.isPlainObject(u)&&b.isPlainObject(f)?b.merge.call({caseless:g},u,f):b.isPlainObject(f)?b.merge({},f):b.isArray(f)?f.slice():f}function a(u,f,p,g){if(b.isUndefined(f)){if(!b.isUndefined(u))return r(void 0,u,p,g)}else return r(u,f,p,g)}function s(u,f){if(!b.isUndefined(f))return r(void 0,f)}function i(u,f){if(b.isUndefined(f)){if(!b.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function l(u){const f=b.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!b.isUndefined(f))if(b.isPlainObject(f)){if(b.hasOwnProp(f,u))return f[u]}else return;const p=b.hasOwnProp(e,"transitional")?e.transitional:void 0;if(b.isPlainObject(p)&&b.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(b.hasOwnProp(t,p))return r(u,f);if(b.hasOwnProp(e,p))return r(void 0,u)}const d={url:s,method:s,data:s,baseURL:i,transformRequest:i,transformResponse:i,paramsSerializer:i,timeout:i,timeoutMessage:i,withCredentials:i,withXSRFToken:i,adapter:i,responseType:i,xsrfCookieName:i,xsrfHeaderName:i,onUploadProgress:i,onDownloadProgress:i,decompress:i,maxContentLength:i,maxBodyLength:i,beforeRedirect:i,transport:i,httpAgent:i,httpsAgent:i,cancelToken:i,socketPath:i,allowedSocketPaths:i,responseEncoding:i,validateStatus:c,headers:(u,f,p)=>a(Rs(u),Rs(f),p,!0)};return b.forEach(Ju({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=b.hasOwnProp(d,f)?d[f]:a,g=b.hasOwnProp(e,f)?e[f]:void 0,v=b.hasOwnProp(t,f)?t[f]:void 0,h=p(g,v,f);b.isUndefined(h)&&p!==c||(n[f]=h)}),b.hasOwnProp(t,"validateStatus")&&b.isUndefined(t.validateStatus)&&l("validateStatusUndefinedResolves")===!1&&(b.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const Zu=["content-type","content-length"];function Xu(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{Zu.includes(r.toLowerCase())&&e.set(r,a)})}const Qu=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function eo(e){const t=ot({},e),n=p=>b.hasOwnProp(t,p)?t[p]:void 0,r=n("data");let a=n("withXSRFToken");const s=n("xsrfHeaderName"),i=n("xsrfCookieName");let l=n("headers");const c=n("auth"),d=n("baseURL"),u=n("allowAbsoluteUrls"),f=n("url");if(t.headers=l=Se.from(l),t.url=qs(Qs(d,f,u,t),n("params"),n("paramsSerializer")),c){const p=b.getSafeProp(c,"username")||"",g=b.getSafeProp(c,"password")||"";try{l.set("Authorization","Basic "+btoa(p+":"+(g?Qu(g):"")))}catch(v){throw W.from(v,W.ERR_BAD_OPTION_VALUE,e)}}if(b.isFormData(r)&&(be.hasStandardBrowserEnv||be.hasStandardBrowserWebWorkerEnv||b.isReactNative(r)?l.setContentType(void 0):b.isFunction(r.getHeaders)&&Xu(l,r.getHeaders(),n("formDataHeaderPolicy"))),be.hasStandardBrowserEnv&&(b.isFunction(a)&&(a=a(t)),a===!0||a==null&&Bu(t.url))){const g=s&&i&&ju.read(i);g&&l.set(s,g)}return t}const Ru=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=eo(e);let s=a.data;const i=Se.from(a.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,g,v;function h(){g&&g(),v&&v(),a.cancelToken&&a.cancelToken.unsubscribe(u),a.signal&&a.signal.removeEventListener("abort",u)}let m=new XMLHttpRequest;m.open(a.method.toUpperCase(),a.url,!0),m.timeout=a.timeout;function y(){if(!m)return;const E=Se.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),O={data:!l||l==="text"||l==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:E,config:e,request:m};Gs(function(H){n(H),h()},function(H){r(H),h()},O),m=null}"onloadend"in m?m.onloadend=y:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.startsWith("file:"))||setTimeout(y)},m.onabort=function(){m&&(r(new W("Request aborted",W.ECONNABORTED,e,m)),h(),m=null)},m.onerror=function(N){const O=N&&N.message?N.message:"Network Error",L=new W(O,W.ERR_NETWORK,e,m);L.event=N||null,r(L),h(),m=null},m.ontimeout=function(){let N=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const O=a.transitional||$r;a.timeoutErrorMessage&&(N=a.timeoutErrorMessage),r(new W(N,O.clarifyTimeoutError?W.ETIMEDOUT:W.ECONNABORTED,e,m)),h(),m=null},s===void 0&&i.setContentType(null),"setRequestHeader"in m&&b.forEach(Ms(i),function(N,O){m.setRequestHeader(O,N)}),b.isUndefined(a.withCredentials)||(m.withCredentials=!!a.withCredentials),l&&l!=="json"&&(m.responseType=a.responseType),d&&([p,v]=xn(d,!0),m.addEventListener("progress",p)),c&&m.upload&&([f,g]=xn(c),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",g)),(a.cancelToken||a.signal)&&(u=E=>{m&&(r(!E||E.type?new Zt(null,e,m):E),m.abort(),h(),m=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const C=Pu(a.url);if(C&&!be.protocols.includes(C)){r(new W("Unsupported protocol "+C+":",W.ERR_BAD_REQUEST,e)),h();return}m.send(s||null)})},ef=(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,i();const d=c instanceof Error?c:this.reason;n.abort(d instanceof W?d:new Zt(d instanceof Error?d.message:d))}};let s=t&&setTimeout(()=>{s=null,a(new W(`timeout of ${t}ms exceeded`,W.ETIMEDOUT))},t);const i=()=>{e&&(s&&clearTimeout(s),s=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:l}=n;return l.unsubscribe=()=>b.asap(i),l},tf=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},nf=async function*(e,t){for await(const n of rf(e))yield*tf(n,t)},rf=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()}},to=(e,t,n,r)=>{const a=nf(e,t);let s=0,i,l=c=>{i||(i=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:u}=await a.next();if(d){l(),c.close();return}let f=u.byteLength;if(n){let p=s+=f;n(p)}c.enqueue(new Uint8Array(u))}catch(d){throw l(d),d}},cancel(c){return l(c),a.return()}},{highWaterMark:2})},no=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,ro=(e,t,n)=>t+2<n&&no(e.charCodeAt(t+1))&&no(e.charCodeAt(t+2)),ao=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,sf=e=>e===9||e===10||e===12||e===13||e===32,of=e=>{const t=Math.floor(e/4),n=e%4;return t*3+(n===2?1:n===3?2:0)},lf=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)},cf=e=>{const t=e.length;let n=0,r=0,a=!1;for(let s=0;s<t;s++){let i=e.charCodeAt(s);if(i===37&&ro(e,s,t)&&(i=ao(e.charCodeAt(s+1))*16+ao(e.charCodeAt(s+2)),s+=2),!sf(i)){if(i===61){r++;continue}if(!af(i)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?lf(e):of(n)},df=(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 i=0;for(let l=0,c=a.length;l<c;l++){const d=a.charCodeAt(l);if(d===37&&ro(a,l,c))i+=1,l+=2;else if(d<128)i+=1;else if(d<2048)i+=2;else if(d>=55296&&d<=56319&&l+1<c){const u=a.charCodeAt(l+1);u>=56320&&u<=57343?(i+=4,l++):i+=3}else i+=3}return i};function uf(e){const t=typeof e=="string"?e.indexOf("#"):-1;return df(t===-1?e:e.slice(0,t),cf)}const qr="1.19.0",so=64*1024,{isFunction:Mn}=b,ff=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),oo=e=>{if(!b.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},io=(e,...t)=>{try{return!!e(...t)}catch{return!1}},pf=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},hf=e=>{const t=b.global!==void 0&&b.global!==null?b.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=b.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:s,Response:i}=e,l=a?Mn(a):typeof fetch=="function",c=Mn(s),d=Mn(i);if(!l)return!1;const u=l&&Mn(n),f=l&&(typeof r=="function"?(y=>C=>y.encode(C))(new r):async y=>new Uint8Array(await new s(y).arrayBuffer())),p=c&&u&&io(()=>{let y=!1;const C=new s(be.origin,{body:new n,method:"POST",get duplex(){return y=!0,"half"}}),E=C.headers.has("Content-Type");return C.body!=null&&C.body.cancel(),y&&!E}),g=d&&u&&io(()=>b.isReadableStream(new i("").body)),v={stream:g&&(y=>y.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(y=>{!v[y]&&(v[y]=(C,E)=>{let N=C&&C[y];if(N)return N.call(C);throw new W(`Response type '${y}' is not supported`,W.ERR_NOT_SUPPORT,E)})});const h=async y=>{if(y==null)return 0;if(b.isBlob(y))return y.size;if(b.isSpecCompliantForm(y))return(await new s(be.origin,{method:"POST",body:y}).arrayBuffer()).byteLength;if(b.isArrayBufferView(y)||b.isArrayBuffer(y))return y.byteLength;if(b.isURLSearchParams(y)&&(y=y+""),b.isString(y))return(await f(y)).byteLength},m=async(y,C)=>{const E=b.toFiniteNumber(y.getContentLength());return E??h(C)};return async y=>{let{url:C,method:E,data:N,signal:O,cancelToken:L,timeout:H,onDownloadProgress:te,onUploadProgress:Z,responseType:j,headers:z,withCredentials:$="same-origin",fetchOptions:V,maxContentLength:T,maxBodyLength:D}=eo(y);const B=b.isNumber(T)&&T>-1,Y=b.isNumber(D)&&D>-1,A=I=>b.hasOwnProp(y,I)?y[I]:void 0;let F=a||fetch;j=j?(j+"").toLowerCase():"text";let w=ef([O,L&&L.toAbortSignal()],H),P=null;const x=w&&w.unsubscribe&&(()=>{w.unsubscribe()});let q,G=null;const se=()=>new W("Request body larger than maxBodyLength limit",W.ERR_BAD_REQUEST,y,P);try{let I;const K=A("auth");if(K){const ee=b.getSafeProp(K,"username")||"",ye=b.getSafeProp(K,"password")||"";I={username:ee,password:ye}}if(pf(C)){const ee=new URL(C,be.origin);if(!I&&(ee.username||ee.password)){const ye=oo(ee.username),Ce=oo(ee.password);I={username:ye,password:Ce}}(ee.username||ee.password)&&(ee.username="",ee.password="",C=ee.href)}if(I&&(z.delete("authorization"),z.set("Authorization","Basic "+btoa(ff((I.username||"")+":"+(I.password||""))))),B&&typeof C=="string"&&C.startsWith("data:")&&uf(C)>T)throw new W("maxContentLength size of "+T+" exceeded",W.ERR_BAD_RESPONSE,y,P);if(Y&&E!=="get"&&E!=="head"){const ee=await h(N);if(typeof ee=="number"&&isFinite(ee)&&(q=ee,ee>D))throw se()}const _=Y&&(b.isReadableStream(N)||b.isStream(N)),J=(ee,ye,Ce)=>to(ee,so,Ie=>{if(Y&&Ie>D)throw G=se();ye&&ye(Ie)},Ce);if(p&&E!=="get"&&E!=="head"&&(Z||_)){if(q=q??await m(z,N),q!==0||_){let ee=new s(C,{method:"POST",body:N,duplex:"half"}),ye;if(b.isFormData(N)&&(ye=ee.headers.get("content-type"))&&z.setContentType(ye),ee.body){const[Ce,Ie]=Z&&Js(q,xn(Zs(Z)))||[];N=J(ee.body,Ce,Ie)}}}else if(_&&!c&&u&&E!=="get"&&E!=="head")N=J(N);else if(_&&c&&!p&&E!=="get"&&E!=="head")throw new W("Stream request bodies are not supported by the current fetch implementation",W.ERR_NOT_SUPPORT,y,P);b.isString($)||($=$?"include":"omit");const Q=c&&"credentials"in s.prototype;if(b.isFormData(N)){const ee=z.getContentType();ee&&/^multipart\/form-data/i.test(ee)&&!/boundary=/i.test(ee)&&z.delete("content-type")}z.set("User-Agent","axios/"+qr,!1);const re={...V,signal:w,method:E.toUpperCase(),headers:Ms(z.normalize()),body:N,duplex:"half",credentials:Q?$:void 0};P=c&&new s(C,re);let he=await(c?F(P,V):F(C,re));const de=Se.from(he.headers);if(B){const ee=b.toFiniteNumber(de.getContentLength());if(ee!=null&&ee>T)throw new W("maxContentLength size of "+T+" exceeded",W.ERR_BAD_RESPONSE,y,P)}const me=g&&(j==="stream"||j==="response");if(g&&he.body&&(te||B||me&&x)){const ee={};["status","statusText","headers"].forEach(pt=>{ee[pt]=he[pt]});const ye=b.toFiniteNumber(de.getContentLength()),[Ce,Ie]=te&&Js(ye,xn(Zs(te),!0))||[];let wn=0;const Za=pt=>{if(B&&(wn=pt,wn>T))throw new W("maxContentLength size of "+T+" exceeded",W.ERR_BAD_RESPONSE,y,P);Ce&&Ce(pt)};he=new i(to(he.body,so,Za,()=>{Ie&&Ie(),x&&x()}),ee)}j=j||"text";let ge=await v[b.findKey(v,j)||"text"](he,y);if(B&&!g&&!me){let ee;if(ge!=null&&(typeof ge.byteLength=="number"?ee=ge.byteLength:typeof ge.size=="number"?ee=ge.size:typeof ge=="string"&&(ee=typeof r=="function"?new r().encode(ge).byteLength:ge.length)),typeof ee=="number"&&ee>T)throw new W("maxContentLength size of "+T+" exceeded",W.ERR_BAD_RESPONSE,y,P)}return!me&&x&&x(),await new Promise((ee,ye)=>{Gs(ee,ye,{data:ge,headers:Se.from(he.headers),status:he.status,statusText:he.statusText,config:y,request:P})})}catch(I){if(x&&x(),w&&w.aborted&&w.reason instanceof W){const K=w.reason;throw K.config=y,P&&(K.request=P),I!==K&&Object.defineProperty(K,"cause",{__proto__:null,value:I,writable:!0,enumerable:!1,configurable:!0}),K}if(G)throw P&&!G.request&&(G.request=P),G;if(I instanceof W)throw P&&!I.request&&(I.request=P),I;if(I&&I.name==="TypeError"&&/Load failed|fetch/i.test(I.message)){const K=new W("Network Error",W.ERR_NETWORK,y,P,I&&I.response);throw Object.defineProperty(K,"cause",{__proto__:null,value:I.cause||I,writable:!0,enumerable:!1,configurable:!0}),K}throw W.from(I,I&&I.code,y,P,I&&I.response)}}},mf=new Map,lo=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:a}=t,s=[r,a,n];let i=s.length,l=i,c,d,u=mf;for(;l--;)c=s[l],d=u.get(c),d===void 0&&u.set(c,d=l?new Map:hf(t)),u=d;return d};lo();const Wr={http:_u,xhr:Ru,fetch:{get:lo}};b.forEach(Wr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const co=e=>`- ${e}`,gf=e=>b.isFunction(e)||e===null||e===!1;function yf(e,t){e=b.isArray(e)?e:[e];const{length:n}=e;let r,a;const s={};for(let i=0;i<n;i++){r=e[i];let l;if(a=r,!gf(r)&&(a=Wr[(l=String(r)).toLowerCase()],a===void 0))throw new W(`Unknown adapter '${l}'`);if(a&&(b.isFunction(a)||(a=a.get(t))))break;s[l||"#"+i]=a}if(!a){const i=Object.entries(s).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let l=n?i.length>1?`since :
6
+ `+i.map(co).join(`
7
+ `):" "+co(i[0]):"as no adapter specified";throw new W("There is no suitable adapter to dispatch the request "+l,W.ERR_NOT_SUPPORT)}return a}const uo={getAdapter:yf,adapters:Wr};function zr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Zt(null,e)}function Hr(e){return zr(e),e.headers=Se.from(e.headers),e.data=Vr.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),uo.getAdapter(e.adapter||Jt.adapter,e)(e).then(function(r){zr(e),e.response=r;try{r.data=Vr.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=Se.from(r.headers),r},function(r){if(!Ys(r)&&(zr(e),r&&r.response)){e.response=r.response;try{r.response.data=Vr.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=Se.from(r.response.headers)}return Promise.reject(r)})}const Pn={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Pn[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const fo={};Pn.transitional=function(t,n,r){function a(s,i){return"[Axios v"+qr+"] Transitional option '"+s+"'"+i+(r?". "+r:"")}return(s,i,l)=>{if(t===!1)throw new W(a(i," has been removed"+(n?" in "+n:"")),W.ERR_DEPRECATED);return n&&!fo[i]&&(fo[i]=!0,console.warn(a(i," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(s,i,l):!0}},Pn.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function bf(e,t,n){if(typeof e!="object"||e===null)throw new W("options must be an object",W.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const s=r[a],i=Object.prototype.hasOwnProperty.call(t,s)?t[s]:void 0;if(i){const l=e[s],c=l===void 0||i(l,s,e);if(c!==!0)throw new W("option "+s+" must be "+c,W.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new W("Unknown option "+s,W.ERR_BAD_OPTION)}}const Un={assertOptions:bf,validators:Pn},ve=Un.validators;let it=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ws,response:new Ws}}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 s=(()=>{if(!a.stack)return"";const i=a.stack.indexOf(`
8
+ `);return i===-1?"":a.stack.slice(i+1)})();try{if(!r.stack)r.stack=s;else if(s){const i=s.indexOf(`
9
+ `),l=i===-1?-1:s.indexOf(`
10
+ `,i+1),c=l===-1?"":s.slice(l+1);String(r.stack).endsWith(c)||(r.stack+=`
11
+ `+s)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=ot(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:s}=n;r!==void 0&&Un.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&&(b.isFunction(a)?n.paramsSerializer={serialize:a}:Un.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),Un.assertOptions(n,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let i=s&&b.merge(s.common,s[n.method]);s&&b.forEach(["delete","get","head","post","put","patch","query","common"],v=>{delete s[v]}),n.headers=Se.concat(i,s);const l=[];let c=!0;this.interceptors.request.forEach(function(h){if(typeof h.runWhen=="function"&&h.runWhen(n)===!1)return;c=c&&h.synchronous;const m=n.transitional||$r;m&&m.legacyInterceptorReqResOrdering?l.unshift(h.fulfilled,h.rejected):l.push(h.fulfilled,h.rejected)});const d=[];this.interceptors.response.forEach(function(h){d.push(h.fulfilled,h.rejected)});let u,f=0,p;if(!c){const v=[Hr.bind(this),void 0];for(v.unshift(...l),v.push(...d),p=v.length,u=Promise.resolve(n);f<p;)u=u.then(v[f++],v[f++]);return u}p=l.length;let g=n;for(;f<p;){const v=l[f++],h=l[f++];try{g=v?v(g):g}catch(m){if(!h){u=Promise.reject(m);break}try{const y=h.call(this,m);b.isThenable(y)&&(u=Promise.resolve(y).then(()=>Hr.call(this,g)))}catch(y){u=Promise.reject(y)}break}}if(!u)try{u=Hr.call(this,g)}catch(v){u=Promise.reject(v)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=ot(this.defaults,t);const n=Qs(t.baseURL,t.url,t.allowAbsoluteUrls,t);return qs(n,t.params,t.paramsSerializer)}};b.forEach(["delete","get","head","options"],function(t){it.prototype[t]=function(n,r){return this.request(ot(r||{},{method:t,url:n,data:r&&b.hasOwnProp(r,"data")?r.data:void 0}))}}),b.forEach(["post","put","patch","query"],function(t){function n(r){return function(s,i,l){return this.request(ot(l||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:s,data:i}))}}it.prototype[t]=n(),t!=="query"&&(it.prototype[t+"Form"]=n(!0))});let Sf=class Zl{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(s){n=s});const r=this;this.promise.then(a=>{if(!r._listeners)return;let s=r._listeners.length;for(;s-- >0;)r._listeners[s](a);r._listeners=null}),this.promise.then=a=>{let s;const i=new Promise(l=>{r.subscribe(l),s=l}).then(a);return i.cancel=function(){r.unsubscribe(s)},i},t(function(s,i,l){r.reason||(r.reason=new Zt(s,i,l),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 Zl(function(a){t=a}),cancel:t}}};function vf(e){return function(n){return e.apply(null,n)}}function wf(e){return b.isObject(e)&&e.isAxiosError===!0}const Kr={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(Kr).forEach(([e,t])=>{Kr[t]=e});function po(e){const t=new it(e),n=_s(it.prototype.request,t);return b.extend(n,it.prototype,t,{allOwnKeys:!0}),b.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return po(ot(e,a))},n}const ue=po(Jt);ue.Axios=it,ue.CanceledError=Zt,ue.CancelToken=Sf,ue.isCancel=Ys,ue.VERSION=qr,ue.toFormData=Dn,ue.AxiosError=W,ue.Cancel=ue.CanceledError,ue.all=function(t){return Promise.all(t)},ue.spread=vf,ue.isAxiosError=wf,ue.mergeConfig=ot,ue.AxiosHeaders=Se,ue.formToJSON=e=>Ks(b.isHTMLForm(e)?new FormData(e):e),ue.getAdapter=uo.getAdapter,ue.HttpStatusCode=Kr,ue.default=ue;const{Axios:m0,AxiosError:g0,CanceledError:y0,isCancel:b0,CancelToken:S0,VERSION:v0,all:w0,Cancel:C0,isAxiosError:N0,spread:_0,toFormData:E0,AxiosHeaders:A0,HttpStatusCode:T0,formToJSON:L0,getAdapter:F0,mergeConfig:I0,create:O0}=ue;function $n(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 Cf={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 Yr(e,t){function n(a,s,i){if(!(typeof document>"u")){i=$n({},t,i),typeof i.expires=="number"&&(i.expires=new Date(Date.now()+i.expires*864e5)),i.expires&&(i.expires=i.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var l="";for(var c in i)i[c]&&(l+="; "+c,i[c]!==!0&&(l+="="+i[c].split(";")[0]));return document.cookie=a+"="+e.write(s,a)+l}}function r(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var s=document.cookie?document.cookie.split("; "):[],i={},l=0;l<s.length;l++){var c=s[l].split("="),d=c.slice(1).join("=");try{var u=decodeURIComponent(c[0]);if(u in i||(i[u]=e.read(d,u)),a===u)break}catch{}}return a?i[a]:i}}return Object.create({set:n,get:r,remove:function(a,s){n(a,"",$n({},s,{expires:-1}))},withAttributes:function(a){return Yr(this.converter,$n({},this.attributes,a))},withConverter:function(a){return Yr($n({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Xt=Yr(Cf,{path:"/"});const Nf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let wt="https://api-grievance.airaops.com",ho=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:br&&br.tagName.toUpperCase()==="SCRIPT"&&br.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&Nf?.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 mo=e=>{wt=e||"",le.defaults.baseURL=wt},Gr=e=>{ho=e||null},_f=()=>ho||Xt.get("token")||null,le=ue.create({baseURL:wt,headers:{Accept:"application/json","Content-Type":"application/json"}});le.interceptors.request.use(e=>{const t=_f();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Jr=!1,Zr=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=Xt.get("refreshToken");if(r)try{Jr||(Jr=!0,Zr=ue.post(`${wt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await Zr,{token:s,refreshToken:i}=a.data;return Gr(s),i&&Xt.set("refreshToken",i),t.headers.Authorization=`Bearer ${s}`,le(t)}catch{Xt.remove("token"),Xt.remove("refreshToken")}finally{Jr=!1,Zr=null}}return Promise.reject(e)});const Ef=S.createContext(null),go=({children:e,apiUrl:t,authToken:n})=>(t&&mo(t),Gr(n||null),o.jsx(Ef.Provider,{value:{apiUrl:t,authToken:n},children:e})),ze={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)"}},Qt={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)"}},yo={light:ze,dark:Qt};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 bo(e){return!e||!Ct(e)?{light:ze,dark:Qt}:Ct(e.light)||Ct(e.dark)?{light:Nt(ze,e.light||{}),dark:Nt(Qt,e.dark||{})}:{light:Nt(ze,e),dark:Nt(Qt,e)}}function So(e,t=!1){const n=bo(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const Af={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"},Tf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},Lf={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"},Ff={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function vo(e){const t={};return e?.colors&&Object.entries(Af).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(Tf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(Lf).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(Ff).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 wo=S.createContext({darkMode:!1,theme:null,themeFile:yo,cssVars:{}});function Co({theme:e,darkMode:t=!1,children:n}){const r=S.useMemo(()=>{const a=So(e,!!t),s=vo(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:s,mode:a.mode}},[e,t]);return o.jsx(wo.Provider,{value:r,children:n})}function No(){return S.useContext(wo)}const Bn=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),If=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"},Of=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:If(e)}),Xr=(e,t)=>ie.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return Of(a,r)}}),xe=Xr("complaint/types/getFormFields",(e,{signal:t})=>le.get(Bn.formFields(e),{signal:t})),Rt=Xr("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>le.put(Bn.formFields(e),t)),en=Xr("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>le.delete(`${Bn.formFields(e)}/${t}`)),_o={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},kf=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}},Qr=e=>e.payload?.message??e.error?.message??"Something went wrong",Eo=ie.createSlice({name:"complaintAppComplaint",initialState:_o,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 _o}},extraReducers:e=>{e.addCase(xe.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(xe.fulfilled,(t,n)=>{const r=kf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(xe.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=Qr(n)}).addCase(Rt.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(Rt.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(Rt.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=Qr(n)}).addCase(en.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(en.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(en.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=Qr(n)})}}),{clearComplaintError:Df,clearSelectedComplaintResource:xf,resetComplaintState:Mf}=Eo.actions,Ao=Eo.reducer,tn="/api/v1/complaint-types",nn=(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"})},rn=ie.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await le.get(tn,{params:e??{}})).data}catch(n){return nn(n,t)}}),Ge=ie.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await le.get(`${tn}/${n}`)).data}catch(n){return nn(n,t)}}),an=ie.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(i=>parseInt(i,10)),userIds:(e.userIds??[]).map(i=>parseInt(i,10))},s=await le.post(tn,a);return t&&typeof t=="function"&&t(s.data),s.data}catch(a){return console.log("createComplaintType error:",a),n&&typeof n=="function"&&n(a),nn(a,r)}}),sn=ie.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:n,onFail:r},a)=>{try{const s=await le.patch(`${tn}/${e}`,t);return n&&typeof n=="function"&&n(s.data),s.data}catch(s){return console.log("updateComplaintType error:",s),r&&typeof r=="function"&&r(s),nn(s,a)}}),jn=ie.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await le.delete(`${tn}/${e}`);return{id:e,data:n.data}}catch(n){return nn(n,t)}}),Rr=["userId","id","_id","userID","user_id","value"];function Vn(e,t=Rr){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=Vn(r,Rr);if(a!==null)return a}}return Vn(e.user,Rr)}function ea(e){const t=Vn(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ta(e,t){const n=ea(e),r=Vn(t);return r!==null&&n?.includes(r)===!0}const Pf={complaintList:[],selected:null,loading:!1,saving:!1,error:null},Uf=["data","items","results","content","records","list","payload","response","result"],To=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of Uf)if(e[t]!==void 0){const n=To(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},Ee=e=>e?.id??e?._id,na=(e,t)=>{if(!t)return e;const n=ea(e),r=ea(t);return n?.length||!r?.length?e:{...e,userIds:r}},Lo=ie.createSlice({name:"complaintType",initialState:Pf,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(Ee(a))===String(n)?{...a,isActive:r}:a),String(Ee(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(rn.pending,t=>{t.loading=!0,t.error=null}).addCase(rn.fulfilled,(t,n)=>{t.loading=!1;const r=new Map(t.complaintList.map(a=>[String(Ee(a)),a]));t.complaintList=To(n.payload).map(a=>na(a,r.get(String(Ee(a)))))}).addCase(rn.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(Ge.pending,t=>{t.loading=!0,t.error=null}).addCase(Ge.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(s=>String(Ee(s))===String(Ee(r)));t.selected=na(r,a)}).addCase(Ge.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint type"}).addCase(an.pending,t=>{t.saving=!0,t.error=null}).addCase(an.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=n.meta?.arg?.payload?.userIds,s=Array.isArray(a)?{...r,userIds:a}:r;t.complaintList=[s,...t.complaintList.filter(i=>String(Ee(i))!==String(Ee(s)))],t.selected=s}).addCase(an.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to create complaint type"}).addCase(sn.pending,t=>{t.saving=!0,t.error=null}).addCase(sn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=Ee(r)??n.meta?.arg?.id,s=t.complaintList.find(c=>String(Ee(c))===String(a)),i=n.meta?.arg?.data?.userIds,l=Array.isArray(i)?{...r,userIds:i}:na(r,s);t.complaintList=t.complaintList.map(c=>String(Ee(c))===String(a)?l:c),t.selected=l}).addCase(sn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update complaint type"}).addCase(jn.pending,t=>{t.saving=!0,t.error=null}).addCase(jn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ee(a))!==String(r)),String(Ee(t.selected))===String(r)&&(t.selected=null)}).addCase(jn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:$f}=Lo.actions,Bf=Lo.reducer,jf={details:{},id:null,isEdit:!1},Fo=ie.createSlice({name:"appDetails",initialState:jf,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:Io,clearAppDetails:Vf,setId:lt,setIsEdit:_t,clearId:qf}=Fo.actions,Oo=Fo.reducer,Wf={list:[],pagination:null,isLoading:!1,error:null},ko=ie.createSlice({name:"roles",initialState:Wf,reducers:{}});ko.reducer;const qn=60,ra=24*qn,zf={d:ra,h:qn,m:1};function aa(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Do(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,s)=>a+Le(s?.escalateAfterMinutes),0)}function Le(e){if(e==null||e==="")return 0;if(typeof e=="number")return aa(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return aa(t);const n=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let r=0,a=!1,s;for(;(s=n.exec(t))!==null;)a=!0,r+=(zf[s[2]]||0)*Number(s[1]);return a?aa(r):0}function Et(e){const t=Math.round(typeof e=="number"?e:Le(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/ra),r=Math.floor(t%ra/qn),a=t%qn,s=[];return n&&s.push(`${n}d`),r&&s.push(`${r}h`),a&&s.push(`${a}m`),s.join("")}function Hf(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Le(e)>0}function Kf(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>Et(Number(n))||"0m")}function Yf(e=[]){return Do(e,!0)}function At(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Le(t)-Do(e,!1)),r=Et(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((s,i)=>i===a?{...s,escalateAfterMinutes:r}:s)}function Gf(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 xo=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function Jf(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 sa(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const Mo=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Jf(e)}),Je=ie.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await le.get(xo(e))).data}catch(n){return Mo(n,t)}}),Wn=ie.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 s=t.tables.map((l,c)=>{const d=Array.isArray(l.role)?l.role.map(v=>Number(v)):[],u=Array.isArray(l.users)?l.users.map(v=>Number(v)):[],f=d.length>0,p=u.length>0,g=!f&&(p||l.workflowType==="user");return{levelNo:c+1,workflowType:g?"Users Based":"Role Based",...f||!g?{roleIds:d}:{},...p||g?{userAssignments:u.map(v=>({userId:v}))}:{},escalateAfterMinutes:Le(l.escalateAfterMinutes),canResolve:sa(l.canResolve),canReassign:sa(l.canReassign),isFinalLevel:sa(l.finalLevel),isActive:!0}}),i=await le.put(xo(e),{steps:s});return typeof n=="function"&&n(i.data),i.data}catch(s){return typeof r=="function"&&r(s),Mo(s,a)}}),Zf={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},Xf=ie.createSlice({name:"workflow",initialState:Zf,reducers:{},extraReducers:e=>{e.addCase(Je.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(Je.fulfilled,(t,n)=>{t.workflowStepsLoading=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Je.rejected,(t,n)=>{n.meta.aborted||(t.workflowStepsLoading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch workflow steps")}).addCase(Wn.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Wn.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Wn.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,oa="/api/v1/complaints",Qf=(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"})},ct=ie.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:n,page:r=1,limit:a=10,status:s,sort:i="-createdAt",fromDate:l,toDate:c}=e||{},d={page:r,limit:a,complaintTypeId:n,sort:i};return s!=null&&s!==""&&s!=="all"&&(d.status=s),l&&c&&(d.fromDate=l,d.toDate=c),(await le.get(oa,{params:d,signal:t.signal})).data}catch(n){return Qf(n,t)}}),Rf=e=>`/api/v1/complaints/${e}`,ep=(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 ia(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const on=ie.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:n,assignedToUserId:r,remark:a,onSuccess:s,onFail:i},l)=>{try{const c={},d=ia(t),u=ia(n),f=ia(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(Rf(e),c,{signal:l.signal});return s&&typeof s=="function"&&s(p.data),p.data}catch(c){return i&&typeof i=="function"&&i(c),ep(c,l)}}),Po={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},tp=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}},np=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",Uo=e=>e?.complaintId??e?.id,rp=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??Uo(r);return a==null?e:e.map(s=>{if(String(Uo(s))!==String(a))return s;const i={...s};return r&&typeof r=="object"&&!Array.isArray(r)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(l=>{r[l]!==void 0&&(i[l]=r[l])}),n.statusId!=null&&(i.statusId=n.statusId),n.status&&(i.status=n.status),n.currentStepId!=null&&(i.currentStepId=n.currentStepId,i.currentWorkflowStepId=n.currentStepId,i.workflowStepId=n.currentStepId),n.level!=null&&(i.level=n.level,i.levelNo=n.level),n.assignedToUserId!=null&&(i.assignedToUserId=n.assignedToUserId),i})},$o=ie.createSlice({name:"complaintManagement",initialState:Po,reducers:{resetComplaintManagementState:()=>Po},extraReducers:e=>{e.addCase(ct.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg?.complaintTypeId??null}).addCase(ct.fulfilled,(t,n)=>{const r=n.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r))return;const a=tp(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(ct.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=np(n))}).addCase(on.fulfilled,(t,n)=>{t.list=rp(t.list,n)})}}),{resetComplaintManagementState:Bo}=$o.actions,ap=$o.reducer,sp=e=>`/api/v1/complaint-types/${e}/statuses`,op="/api/v1/complaints/summary",jo=(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"})},ln=ie.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await le.get(sp(e),{signal:t.signal})).data}catch(n){return jo(n,t)}}),Tt=ie.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await le.get(op,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return jo(n,t)}}),Vo={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},ip=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},cp=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",dp=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",zn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),qo=ie.createSlice({name:"status",initialState:Vo,reducers:{resetStatusState:()=>Vo},extraReducers:e=>{e.addCase(ln.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(ln.fulfilled,(t,n)=>{const r=n.meta.arg;if(zn(t.requestedComplaintTypeId,r))return;const a=ip(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((s,i)=>(s.displayOrder??0)-(i.displayOrder??0))}).addCase(ln.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=cp(n))}).addCase(Tt.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(Tt.fulfilled,(t,n)=>{const r=n.meta.arg;zn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=lp(n.payload))}).addCase(Tt.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=dp(n))})}}),{resetStatusState:Wo}=qo.actions,up=qo.reducer,fp="/api/v1/complaints",pp="/api/v1/complaint-types",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"})},Hn=ie.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await le.post(fp,e,{signal:t.signal})).data}catch(n){return zo(n,t)}}),cn=ie.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const s=await le.patch(`${pp}/${e}`,{isActive:t},{signal:a.signal});return n&&typeof n=="function"&&n(s.data),s.data}catch(s){return r&&typeof r=="function"&&r(s),zo(s,a)}}),hp={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",gp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",yp=ie.createSlice({name:"createComplaint",initialState:hp,reducers:{},extraReducers:e=>{e.addCase(Hn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(Hn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(Hn.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=gp(n))})}}).reducer,Ho={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},bp=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Ko=ie.createSlice({name:"changeStatus",initialState:Ho,reducers:{resetChangeStatusState:()=>Ho},extraReducers:e=>{e.addCase(on.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=n.meta.arg?.id??null}).addCase(on.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=n.payload?.data??n.payload}).addCase(on.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=bp(n))})}}),{resetChangeStatusState:Sp}=Ko.actions,vp=Ko.reducer,wp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},la=(e,t)=>{try{return wp?.[e]||t}catch{return t}},Cp=la("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Yo=la("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),Np=la("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Go=e=>/^https?:\/\//i.test(e)?e:`${Cp}${e}`,_p=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",Jo=(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: ${Yo}`:e?.response?.data?.error??e?.message??t)},Lt=ie.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:_p(e)},a=await le.post(Go(Yo),r),s=a.data.uploadSignedUrl;return(await fetch(s,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:n("Error uploading file")}catch(r){return n(Jo(r,"Error uploading file"))}}),Kn=ie.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await le.get(Go(Np),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(Jo(n,"Error getting file signedUrl"))}}),Ep={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},Ap=ie.createSlice({name:"s3",initialState:Ep,reducers:{},extraReducers:e=>{e.addCase(Lt.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(Lt.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(Lt.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(Kn.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(Kn.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(Kn.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,Tp=ie.combineReducers({complaintAppComplaint:Ao,complaintType:Bf,appDetails:Oo,workflow:Xf,roles:ko.reducer,complaintManagement:ap,status:up,createComplaint:yp,changeStatus:vp,s3:Ap}),Zo=e=>ie.configureStore({reducer:Tp,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),Xo=Zo();function we({children:e,variant:t="primary",size:n="md",startIcon:r,endIcon:a,className:s="",type:i="button",disabled:l=!1,onClick:c,...d}){const u=["ca-btn",`ca-btn--${t}`,n==="sm"?"ca-btn--sm":"",n==="lg"?"ca-btn--lg":"",s].filter(Boolean).join(" ");return o.jsxs("button",{type:i,className:u,disabled:l,onClick:c,...d,children:[r?o.jsx("span",{className:"ca-btn__icon",children:r}):null,e,a?o.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function Qo({size:e=16,color:t="currentColor",...n}){return o.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:o.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const Ro={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},Lp={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Ze({variant:e="body",as:t,className:n="",children:r,...a}){const s=t||Lp[e]||"p",i=Ro[e]||Ro.body;return o.jsx(s,{className:`${i} ${n}`.trim(),...a,children:r})}function ca(e){return o.jsx(Ze,{variant:"h1",...e})}function da(e){return o.jsx(Ze,{variant:"h2",...e})}function Yn(e){return o.jsx(Ze,{variant:"body",...e})}function ei(e){return o.jsx(Ze,{variant:"label",...e})}function ti(e){return o.jsx(Ze,{variant:"value",...e})}function Fp(e){return o.jsx(Ze,{variant:"link",type:"button",...e})}function ua({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,showAction:a=!0,className:s=""}){return o.jsxs("header",{className:`ca-page-header ${s}`.trim(),children:[o.jsxs("div",{className:"ca-page-header__text",children:[o.jsx(ca,{children:e}),t?o.jsx(Yn,{children:t}):null]}),a?o.jsx("div",{className:"ca-page-header__actions",children:o.jsx(we,{startIcon:o.jsx(Qo,{}),onClick:r,children:n})}):null]})}function Gn({checked:e=!1,onChange:t,disabled:n=!1,"aria-label":r="Toggle",className:a=""}){return o.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:o.jsx("span",{className:"ca-toggle__thumb"})})}function Jn({size:e=16,color:t="#9CA3AF",...n}){return o.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:o.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 ni({title:e,titleAsLink:t=!1,onTitleClick:n,isActive:r=!1,canManage:a=!1,canDelete:s=!1,activeDisabled:i=!1,onActiveChange:l,onDelete:c,className:d=""}){return o.jsxs("div",{className:`ca-system-card__header ${d}`.trim(),children:[o.jsx("div",{className:"ca-system-card__title-wrap",children:t?o.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:n,children:e}):o.jsx(da,{children:e})}),o.jsxs("div",{className:"ca-system-card__header-actions",children:[o.jsx("span",{className:"ca-system-card__active-label",children:r?"Active":"Inactive"}),o.jsx(Gn,{checked:r,disabled:!a||i,className:a?"":"ca-toggle--no-permission","aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:l}),o.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:s?`Delete ${e}`:"You do not have permission to delete this form",disabled:!s,onClick:c,children:o.jsx(Jn,{size:40,color:"currentColor"})})]})]})}function Zn({size:e=16,color:t="currentColor",...n}){return o.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:o.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const Ip="ComplaintTracker",Op=[{actionName:"READ",featureModule:{name:"ComplaintTracker",isActive:!0},source:"role:STOREMANAGER"},{actionName:"DELETE",featureModule:{name:"ComplaintTracker",isActive:!0},source:"role:STOREMANAGER"},{actionName:"CREATE",featureModule:{name:"ComplaintTracker",isActive:!0},source:"role:STOREMANAGER"},{actionName:"FULL_ACCESS",featureModule:{name:"ComplaintTracker",isActive:!0},source:"role:STOREMANAGER"}];function fa(e){const t=Array.isArray(e)?e:[],n=new Set(t.filter(c=>c?.featureModule?.name===Ip&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),r=n.has("READ"),a=n.has("CREATE"),s=n.has("FULL_ACCESS"),i=n.has("DELETE"),l=r||s;return{canViewCards:l,canCreateForm:a,canDelete:i,canOpen:s,hasAnyAccess:l||a}}const kp="aira-query-complaintTypeId";function ri({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:s,canConfigure:i=!1}){const l=We(),c=X.useDispatch(),d=X.useSelector(g=>g.appDetails?.details?.featureActions),{canOpen:u}=fa(d),f=s?.data??s?.id??s?._id??s,p=()=>{const g=s?.data??s?.id??s?._id??s;if(g!=null&&g!==""){const v=String(g);try{sessionStorage.setItem(kp,v)}catch{}c(lt(v)),c(Bo()),c(Wo()),l(`/complaintmanagement/${v}`);return}l("/complaintmanagement")};return o.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[o.jsx(Ze,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),o.jsxs("div",{className:"ca-system-card__footer-actions",children:[u?o.jsxs(we,{size:"sm",onClick:p,children:[t,o.jsx(Zn,{size:14,color:"currentColor"})]}):null,i?o.jsx(we,{size:"sm",onClick:()=>{if(f==null||f==="")return;const g=String(f);c(_t({data:!0})),c(lt(g)),l(`/settings/${g}?step=1`)},endIcon:o.jsx(Zn,{size:14,color:"currentColor"}),children:n}):null]})]})}function ai({label:e,value:t,icon:n,className:r=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return o.jsxs("div",{className:`ca-data-point ${r}`.trim(),children:[n?o.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:n}):null,o.jsx(ti,{children:a}),o.jsx("span",{className:"ca-data-point__label",children:e})]})}function si({className:e=""}){return o.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const Dp="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",xp="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",Mp="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",Pp="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";function Up(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 oi({id:e,title:t,item:n,status:r="inactive",description:a,descriptionHref:s,departments:i,workflows:l,fields:c,formsFilled:d,updatedOn:u,titleAsLink:f=!1,onTitleClick:p,onDescriptionClick:g,onConfigure:v,onOpen:h,onDelete:m,onToggleActive:y,isTogglingActive:C=!1,className:E=""}){const N=X.useSelector(V=>V.appDetails?.details?.currentUser),O=X.useSelector(V=>V.appDetails?.details?.featureActions),{canCreateForm:L,canDelete:H}=fa(O),te=L&&ta(n,N),Z=()=>{v?.({id:e,title:t,status:r,departments:i,workflows:l,fields:c,formsFilled:d,updatedOn:u})},j=()=>{if(g){g({id:e,title:t,descriptionHref:s});return}s&&typeof window<"u"&&window.open(s,"_blank","noopener,noreferrer")},z=[{label:"Total entries",value:n?.totalEntries??0,icon:o.jsx("img",{src:Dp,alt:""})},{label:"Open entries",value:n?.openEntries??0,icon:o.jsx("img",{src:xp,alt:""})},{label:"Done entries",value:n?.closedEntries??0,icon:o.jsx("img",{src:Mp,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:o.jsx("img",{src:Pp,alt:""})}],$=e??n?.id??n?._id;return o.jsxs("article",{className:`ca-system-card ${E}`.trim(),children:[o.jsx(ni,{title:n?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:te,canDelete:H,activeDisabled:C,onActiveChange:V=>y?.({id:$,isActive:V,item:n}),onDelete:()=>m?.({id:$,title:t,item:n})}),a?o.jsx("p",{className:"ca-system-card__description",onClick:j,children:a}):null,o.jsx("div",{className:"ca-system-card__stats",children:z.map((V,T)=>o.jsxs(S.Fragment,{children:[T>0?o.jsx(si,{}):o.jsx("div",{className:"ca-system-card__stats-spacer"}),o.jsx(ai,{label:V.label,value:V.value,icon:V.icon})]},V.label))}),o.jsx(ri,{updatedOn:u??Up(n?.updatedAt??n?.createdAt),onOpen:()=>h?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canConfigure:te,onConfigure:Z})]})}function ii({systems:e=[],onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,togglingActiveId:s=null,onTitleClick:i,onDescriptionClick:l,emptyMessage:c="No systems found.",className:d=""}){return e.length?o.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(u=>o.jsx(oi,{item:u,...u,onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,isTogglingActive:String(s)===String(u.id??u._id),onTitleClick:i,onDescriptionClick:l},u.id??u.title))}):o.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:o.jsx("div",{className:"ca-empty",children:o.jsx(Yn,{children:c})})})}function Ft({value:e,onChange:t,placeholder:n,type:r="text",icon:a,className:s="",inputClassName:i="",...l}){return o.jsxs("div",{className:`ca-input-wrap ${s}`.trim(),children:[a?o.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,o.jsx("input",{type:r,className:`ca-input ${a?"ca-input--with-icon":""} ${i}`.trim(),value:e,onChange:t,placeholder:n,...l})]})}function li({size:e=18,color:t="currentColor",...n}){return o.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:[o.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"}),o.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function ci({value:e,onChange:t,onSearch:n,placeholder:r="Search",className:a=""}){const s=i=>{i.key==="Enter"&&n&&n(e)};return o.jsx("div",{className:`ca-search ${a}`.trim(),children:o.jsx(Ft,{value:e,onChange:t,onKeyDown:s,placeholder:r,icon:o.jsx(li,{}),"aria-label":r})})}function dt({text:e="Loading",fullScreen:t=!1}){return o.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[o.jsx("span",{className:"ca-loading__spinner"}),o.jsxs("span",{children:[e,"…"]})]})}const $p=[{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"}],di="Create, manage and track complaint forms, workflows and responses across departments.";const ui=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const Bp=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const jp=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const fi=e=>{const t=jp(e);return t.charAt(0).toUpperCase()+t.slice(1)};var pa={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 Vp=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},qp=S.createContext({}),Wp=()=>S.useContext(qp),zp=S.forwardRef(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:a="",children:s,iconNode:i,...l},c)=>{const{size:d=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p="currentColor",className:g=""}=Wp()??{},v=r??f?Number(n??u)*24/Number(t??d):n??u;return S.createElement("svg",{ref:c,...pa,width:t??d??pa.width,height:t??d??pa.height,stroke:e??p,strokeWidth:v,className:ui("lucide",g,a),...!s&&!Vp(l)&&{"aria-hidden":"true"},...l},[...i.map(([h,m])=>S.createElement(h,m)),...Array.isArray(s)?s:[s]])});const Ne=(e,t)=>{const n=S.forwardRef(({className:r,...a},s)=>S.createElement(zp,{ref:s,iconNode:t,className:ui(`lucide-${Bp(fi(e))}`,`lucide-${e}`,r),...a}));return n.displayName=fi(e),n};const pi=Ne("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 hi=Ne("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Hp=Ne("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const ha=Ne("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const Kp=Ne("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const Yp=Ne("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const Xn=Ne("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const Gp=Ne("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 Jp=Ne("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 Zp=Ne("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 Xp=Ne("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const mi=Ne("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const gi=Ne("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 Qp=Ne("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 Rp=Ne("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),eh=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],yi=new Set(["Select","Dropdown","Radio","Checkbox"]),th=["Both","User","Admin"],nh={Open:"#FF0000","Under Verification":"#FF6F00",Resolved:"#00D82F",Done:"#006FFF"},bi=["Open","Under Verification","Resolved","Done"],$e={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...bi],optionColors:{...nh},parentMappings:{},lockMode:"options",isNew:!1},Qn={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},dn={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},rh=[{...$e,label:$e.fieldLabel},{...dn,label:dn.fieldLabel}];function Si(e){return String(e||"").trim().toLowerCase()}function ne(e){const t=Si(e?.fieldKey),n=Si(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function Be(e){return ne(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function ah(e,t=[]){if(!ne(e))return!1;const n=t.length?t:[e],r=n.filter(i=>!i?.isNew&&ne(i)),a=n.filter(Be),s=r[0]||a[0]||n.find(i=>ne(i)&&!i?.isNew);return s?String(s.id)===String(e.id):!e?.isNew}function Rn(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function Xe(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function Qe(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="done"||t==="closed"}function sh(e){return String(e||"").trim().toLowerCase()==="open"}function Re(e){return String(e||"").trim().toLowerCase()==="closed"?"Done":e}function oh(e={}){const t={};return Object.entries(e).forEach(([n,r])=>{t[Re(n)]=r}),t}function It(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),n=new Set,r=[];return bi.forEach(a=>{const s=t.find(i=>String(i).trim().toLowerCase()===a.toLowerCase());s==null||n.has(s)||(r.push(s),n.add(s))}),t.forEach(a=>{n.has(a)||(r.push(a),n.add(a))}),r}function vi(e){return yi.has(e?.fieldType)||Be(e)}function ma(e){return!e||ne(e)||Xe(e)||!yi.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function Ot(e=[]){return e.some(ma)}function wi(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!ma(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 ih(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(),s=String(t?.fieldType||"").trim().toLowerCase();return!!(n&&r&&a&&s&&n===r&&a===s)}function er(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:ih(e,n)):!1}function tr(e=[]){return e.some(t=>er(t,e))}function ga(e,t={},n=""){const r=String(n||"");if(ne({fieldKey:r})||Xe({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 lh(e){return Rn(e)?"Priorities":"Option"}function ch(e,t=!1){return e?t?"Define options and set parent.":ne(e)?"Manage the status":"Manage your fields.":""}function nr(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return nr({...e,fieldType:"Checkbox"},t);if(ne(e)){if(e?.isNew||!ah(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{...$e,...e,fieldKey:$e.fieldKey,fieldLabel:r?$e.fieldLabel:n,originalFieldName:r?$e.originalFieldName:e.originalFieldName??n,fieldType:$e.fieldType,required:!0,options:It((e.options?.length?e.options:$e.options).map(Re)),optionColors:oh({...$e.optionColors,...e.optionColors}),lockMode:"options"}}return Rn(e)?{...Qn,...e,fieldKey:e.fieldKey||Qn.fieldKey,fieldType:Qn.fieldType,options:e.options?.length?e.options:Qn.options,lockMode:"options"}:Xe(e)?{...dn,...e,fieldKey:dn.fieldKey,fieldType:dn.fieldType,required:!0,lockMode:"all"}:e}function kt(e=[]){const t=e.map(r=>nr(r,e));if(t.some(ne))return t;const n={...$e};return[nr(n,[n,...t]),...t]}function Ci({row:e}){return o.jsxs("div",{className:"ca-filler-row",children:[o.jsxs("div",{className:"ca-filler-row__top",children:[o.jsxs("span",{className:"ca-filler-row__title",children:[o.jsx("span",{className:"ca-filler-row__prefix",children:"Complaint:"})," ",e.title]}),o.jsx(ha,{size:16,"aria-hidden":"true"})]}),o.jsxs("div",{className:"ca-filler-row__meta",children:[o.jsxs("span",{children:["Status: ",o.jsx("strong",{children:Re(e.status)})]}),o.jsxs("span",{children:["Level: ",o.jsx("strong",{children:e.level})]}),o.jsx("span",{children:e.assignedTo==="Unassigned"?e.assignedTo:o.jsxs(o.Fragment,{children:["Assigned to: ",o.jsx("strong",{children:e.assignedTo})]})}),o.jsx("span",{children:e.date})]})]})}const Ni="aira-query-complaintTypeId",_i={id:"status",label:"Status",key:"status"},Ei={id:"escalationTo",label:"Escalation To",key:"escalationTo"},dh={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},uh={id:"createdAt",label:"Created At",key:"createdAt"},fh={id:"updatedAt",label:"Updated At",key:"updatedAt"},un="desc",ya="asc",ph=10,hh=["5","10","15","20","25"],mh=999999,ba=new Set(["status","escalationTo","id","submittedByUserName","createdAt","updatedAt"]),gh=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function Ai(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()} ${gh[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function Ti(e){if(!e)return 0;const t=new Date(e).getTime();return Number.isNaN(t)?0:t}function yh(e,t){return t!==un&&t!==ya?e:[...e].sort((n,r)=>{const a=Ti(n.updatedAtValue),s=Ti(r.updatedAtValue);return a===s?0:t===ya?a-s:s-a})}function bh(e){return e===un?ya:un}function Li(e){return[dh,uh,fh,...e,_i,Ei]}function Sh(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&&!ba.has(r.key))}function vh(e,t,n,r){const a=e?.data??e??{},s=Number(a.total??a.totalItems??a.totalCount??a.count),i=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(i)&&i>0?{totalPages:i,totalItems:Number.isFinite(s)&&s>=0?s:Math.max(r,i*n),hasNext:t<i}:Number.isFinite(s)&&s>=0?{totalPages:Math.max(1,Math.ceil(s/n)),totalItems:s,hasNext:t*n<s}:{totalPages:t+(r>=n?1:0),totalItems:Math.max(r,t*n),hasNext:r>=n}}function Fi(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function wh(){try{return sessionStorage.getItem(Ni)}catch{return null}}function Ii(e){const t=Fi(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(Ni,n)}catch{}return n}function Ch(...e){for(const t of e){const n=Fi(t);if(n!=null&&n!=="")return String(n)}return null}function Sa(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 s=n.id??n.statusId;if(s!=null){const i=t.find(l=>String(l.id)===String(s));if(i?.name)return i.name}}const r=e?.statusId??e?.complaintStatusId;if(r!=null){const a=t.find(s=>String(s.id)===String(r));if(a?.name)return a.name}return""}function Nh(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(s=>String(s.name).trim()===r.trim());if(a?.id!=null)return a.id}return null}function rr(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}function Oi(e){const t=String(e||"").trim().toLowerCase();return t==="resolved"||t==="closed"||t==="done"}function fn(e){const t=String(e||"").trim().toLowerCase();return t==="done"||t==="resolved"||t==="closed"}function _h(e,t=[]){const n=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(n!=null&&n!==""){const a=t.find(s=>String(s.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 Eh(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(s=>String(s.id)===String(r));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function ki(e,t=[],n=[]){const r=_h(e,n),a={id:e?.complaintId??e?.id,status:Sa(e,t),isClosed:fn(Sa(e,t)),statusId:Nh(e,t),escalationTo:Eh(e,n),currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:rr(e?.canResolve??r?.canResolve),isFinalLevel:rr(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),submittedByUserName:e?.submittedByUserName||"-",createdAt:Ai(e?.createdAt)||"-",updatedAt:Ai(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(s=>{const i=s.fieldKey||s.fieldName;i&&!ba.has(i)&&(a[i]=s.value)}),a}function Di(e,t){const n=new Set,r=t.map(a=>{if(n.add(a.key),a.fieldType)return a;const s=e.flatMap(i=>i._fields||[]).find(i=>(i.fieldKey||i.fieldName)===a.key);return s?.fieldType?{...a,fieldType:s.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(s=>{const i=s.fieldKey||s.fieldName;!i||ba.has(i)||n.has(i)||(n.add(i),r.push({id:i,label:s.fieldName||i,key:i,fieldType:s.fieldType}))})}),r}function Ah(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 xi(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function Mi(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function Th(e,t){const n=e.map(a=>Mi(a.label)).join(","),r=t.map(a=>e.map(s=>Mi(a[s.key]??"-")).join(","));return[n,...r].join(`\r
12
+ `)}const Lh=["January","February","March","April","May","June","July","August","September","October","November","December"];function Pi(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":`${t.getDate()} ${Lh[t.getMonth()]} ${t.getFullYear()}`}function Fh(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 Ih(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 Oh(e,t=[]){return Ih(e).some(n=>t.includes(n))}function Ui(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 kh(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=Ui(r);if(a)return a;const s=(r&&typeof r=="object"?r.id??r.userId:r)??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId;if(s!=null&&s!==""){const i=t.find(l=>String(l?.id??l?.userId)===String(s));return Ui(i)}return""}function Dh(e){const t=String(e||"").toLowerCase();return t==="file"||t==="images"||t==="image"}function xh(e){const t=e?.title??e?.name??e?.complaintTitle;if(t&&String(t).trim())return String(t).trim();const r=[...Array.isArray(e?.formField)?e.formField:Array.isArray(e?.fieldValues)?e.fieldValues.map(a=>({...a.formField||{},value:a.value})):[]].sort((a,s)=>(a.displayOrder??0)-(s.displayOrder??0)).find(a=>{const s=String(a.fieldKey||a.fieldName||"").trim().toLowerCase(),i=Array.isArray(a.value)?a.value.join(", "):a.value;return s!=="status"&&!Dh(a.fieldType)&&i!=null&&String(i).trim()!==""&&!String(i).trim().startsWith("[")});return r?String(Array.isArray(r.value)?r.value.join(", "):r.value).trim():""}function $i(e,t=[],n=[]){const r=Sa(e,t),a=e?.level??e?.levelNo??e?.currentLevel;return{id:e?.complaintId??e?.id,title:xh(e)||"-",status:r||"-",isClosed:fn(r),level:a!=null&&a!==""?a:"-",assignedTo:kh(e,n)||"Unassigned",date:Pi(e?.createdAt??e?.date)}}function Mh(e,t=[]){const n=e?.userComplaintSummary??{},r=Number(n.totalComplaints)||0,a=Number(n.openComplaints)||0,s=Math.max(r-a,0),i=(Array.isArray(e?.recentOpenComplaints)?e.recentOpenComplaints:[]).slice(0,2).map(l=>$i(l,[],t));return{total:r,open:a,closed:s,previewRows:i}}function Ph(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 Bi(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}const Uh=[];function $h({form:e,onAddComplaint:t,onViewAll:n}){const r=X.useSelector(d=>d.appDetails?.details?.userList)??Uh,{total:a,open:s,closed:i,previewRows:l}=Mh(e,r),c=e.isActive!==!1&&e.active!==!1;return o.jsxs("article",{className:"ca-filler-card",children:[o.jsxs("div",{className:"ca-filler-card__head",children:[o.jsxs("div",{className:"ca-filler-card__heading",children:[o.jsxs("h3",{className:"ca-filler-card__title",children:[e.name??e.title,a?` (${a})`:""]}),s?o.jsxs("span",{className:"ca-filler-card__count",children:[s," open"]}):null,i?o.jsxs("span",{className:"ca-filler-card__count",children:[i," closed"]}):null]}),o.jsxs("button",{type:"button",className:"ca-filler-card__add",onClick:()=>t?.(e),disabled:!c,children:["Add complaint ",o.jsx(ha,{size:14,"aria-hidden":"true"})]})]}),o.jsx("p",{className:"ca-filler-card__desc",children:e.description||"Description of the form"}),l.map(d=>o.jsx(Ci,{row:d},d.id)),o.jsxs("div",{className:"ca-filler-card__foot",children:[a?o.jsx("button",{type:"button",className:"ca-filler-card__link",onClick:()=>n?.(e),children:"View all >"}):o.jsx("span",{}),o.jsx("span",{className:"ca-filler-card__date",children:Pi(e.createdAt)})]})]})}function ji({title:e="Complaint Management",description:t=di,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:s,onTitleClick:i,onDescriptionClick:l,onSearch:c}){const d=We(),u=X.useDispatch(),[f,p]=S.useState(""),[g,v]=S.useState(null),[h,m]=S.useState(""),{complaintList:y=[],loading:C=!1,error:E=null}=X.useSelector(F=>F.complaintType??{}),N=X.useSelector(F=>F.appDetails?.details?.currentUser),O=X.useSelector(F=>F.appDetails?.details?.featureActions),{canViewCards:L,canCreateForm:H,canDelete:te,hasAnyAccess:Z}=S.useMemo(()=>fa(O),[O]),j=S.useMemo(()=>Fh(N),[N]),z=S.useMemo(()=>y.filter(F=>Oh(F,j)),[y,j]),$=z.length>0;S.useEffect(()=>{u(_t({data:!1}))},[u]),S.useEffect(()=>{const F=setTimeout(()=>m(f.trim()),400);return()=>clearTimeout(F)},[f]),S.useEffect(()=>{u(rn(h?{search:h}:void 0))},[u,h]);const V=y;S.useEffect(()=>{c&&c(f)},[f,c]);const T=F=>{p(F.target.value)},D=F=>{a?.(F),d(`/settings/${F.id??"new"}?step=1`)},B=()=>{u(_t({data:!1})),r?.(),d("/settings/new?step=1")},Y=({id:F})=>{te&&F!=null&&u(jn(F))},A=({id:F,isActive:w,item:P})=>{!H||!ta(P,N)||F!=null&&(v(F),u(cn({id:F,isActive:w})).unwrap().then(()=>u($f({id:F,isActive:w}))).finally(()=>v(null)))};return Z?$?o.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[o.jsx(ua,{title:"Complaints",description:"Create, manage and track complaint forms, workflows and responses across departments.",showAction:!1}),o.jsx("div",{className:"ca-filler-card-list",children:z.map(F=>o.jsx($h,{form:F,onAddComplaint:w=>d(`/complaintmanagement/new/${w.id}`),onViewAll:w=>d(`/complaintmanagement/${w.id}/all`)},F.id))})]}):o.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[o.jsx(ua,{title:e,description:t,actionLabel:n,onAction:B,showAction:H}),L?o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"ca-search-container",children:o.jsx(ci,{value:f,onChange:T,placeholder:"Search"})}),C?o.jsx(dt,{text:"Loading systems"}):E?o.jsx("div",{className:"ca-empty",children:o.jsx("p",{className:"ca-body",children:typeof E=="string"?E:"Failed to load complaint types."})}):o.jsx(ii,{systems:V,onConfigure:D,onOpen:s,onDelete:Y,onToggleActive:A,togglingActiveId:g,onTitleClick:i,onDescriptionClick:l,emptyMessage:f?"No systems match your search.":"No systems found."})]}):null]}):o.jsx("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",style:{minHeight:"80vh",display:"flex",alignItems:"center",justifyContent:"center"},children:o.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 Vi=S.createContext(null),qi=()=>({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 Wi({children:e,initialValues:t}){const[n,r]=S.useState(()=>({...qi(),...t,workflow:{...qi().workflow,...t?.workflow}})),a=S.useCallback(l=>{r(c=>({...c,...l}))},[]),s=S.useCallback(l=>{r(c=>({...c,workflow:{...c.workflow,...l}}))},[]),i=S.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:s}),[n,a,s]);return o.jsx(Vi.Provider,{value:i,children:e})}function ar(){const e=S.useContext(Vi);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const je=[{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."}],Bh=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function jh({size:e=28,color:t="currentColor",...n}){return o.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...n,children:[o.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),o.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),o.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function zi({title:e,description:t,nextLabel:n="Next",onNext:r,showNext:a=!0,nextDisabled:s=!1,nextVariant:i="primary",extra:l=null,className:c=""}){return o.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[o.jsx("div",{className:"ca-settings-card__heading",children:o.jsxs("div",{children:[o.jsx(da,{children:e}),t?o.jsx(Yn,{className:"ca-settings-card__desc",children:t}):null]})}),l,a?o.jsx(we,{variant:i,disabled:s,onClick:r,endIcon:o.jsx(Zn,{size:14,color:"currentColor"}),children:n}):null]})}function pn({title:e,description:t,onNext:n,nextLabel:r,showNext:a=!0,nextDisabled:s,nextVariant:i,headerExtra:l,children:c,footer:d,className:u=""}){return o.jsxs("section",{className:`ca-settings-card ${u}`.trim(),children:[o.jsx(zi,{title:e,description:t,onNext:n,nextLabel:r,showNext:a,nextDisabled:s,nextVariant:i,extra:l}),o.jsx("div",{className:"ca-settings-card__body",children:c}),d?o.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function va({children:e,hint:t,htmlFor:n,className:r=""}){return o.jsxs("div",{className:`ca-field-label ${r}`.trim(),children:[o.jsx("label",{className:"ca-label",htmlFor:n,children:e}),t!=null?o.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function wa({size:e=16,color:t="currentColor",...n}){return o.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:o.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function Ca(e){return typeof e=="string"?e:e.value}function Na(e){return typeof e=="string"?e:e.label}function He({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:s=!1,maxVisible:i,allowClear:l=!1,...c}){const[d,u]=S.useState(!1),f=S.useRef(null),p=e??"",g=n.find(m=>String(Ca(m))===String(p)),v=g?Na(g):"";S.useEffect(()=>{if(!d)return;const m=y=>{f.current?.contains(y.target)||u(!1)};return document.addEventListener("mousedown",m),()=>document.removeEventListener("mousedown",m)},[d]);const h=m=>{t?.({target:{value:m}})};return i?o.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:f,children:[o.jsx("button",{type:"button",id:c.id,className:`ca-select__control${v?"":" ca-select__control--placeholder"}`,disabled:s,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(m=>!m),children:v||r}),o.jsx("span",{className:"ca-select__chevron",children:o.jsx(wa,{size:16})}),d?o.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":i},children:n.map(m=>{const y=Ca(m),C=String(y)===String(p);return o.jsx("li",{role:"none",children:o.jsx("button",{type:"button",role:"option","aria-selected":C,className:`ca-select__option${C?" is-selected":""}`,onClick:()=>{h(y),u(!1)},children:Na(m)})},y)})}):null]}):o.jsxs("div",{className:`ca-select ${a}`.trim(),children:[o.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:s,...c,children:[o.jsx("option",{value:"",disabled:!l,children:r}),n.map(m=>{const y=Ca(m);return o.jsx("option",{value:y,disabled:!!(m&&typeof m=="object"&&m.disabled),children:Na(m)},y)})]}),o.jsx("span",{className:"ca-select__chevron",children:o.jsx(wa,{size:16})})]})}function Hi({value:e,onChange:t,placeholder:n,maxLength:r,rows:a=4,className:s="",...i}){return o.jsx("textarea",{className:`ca-textarea ${s}`.trim(),value:e,onChange:t,placeholder:n,maxLength:r,rows:a,...i})}function Ve({label:e,hint:t,children:n,className:r="",htmlFor:a}){return o.jsxs("div",{className:`ca-form-field ${r}`.trim(),children:[e!=null?o.jsx(va,{htmlFor:a,hint:t,children:e}):null,n]})}function hn({label:e,hint:t,helperText:n,...r}){return o.jsxs(Ve,{label:e,hint:t,htmlFor:r.id,children:[o.jsx(Ft,{...r}),n?o.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function _a({label:e,hint:t,...n}){return o.jsx(Ve,{label:e,hint:t,htmlFor:n.id,children:o.jsx(He,{...n})})}function Vh({label:e,hint:t,maxLength:n,value:r="",...a}){const s=t??(n!=null?`${String(r).length}/${n}`:void 0);return o.jsx(Ve,{label:e,hint:s,htmlFor:a.id,children:o.jsx(Hi,{value:r,maxLength:n,...a})})}function Ki({size:e=12,color:t="currentColor",...n}){return o.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:o.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function Yi({label:e,onRemove:t,className:n="",title:r}){return o.jsxs("span",{className:`ca-tag ${n}`.trim(),title:r,children:[e,t?o.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:o.jsx(Ki,{size:10})}):null]})}function sr({label:e="",options:t=[],value:n=[],onChange:r,placeholder:a="Select roles",className:s="",hasError:i=!1,required:l=!1,emptyText:c="No roles available",openDirection:d="up",showAll:u=!0,maxVisible:f=null,searchable:p=!1,searchPlaceholder:g="Search",lockedValues:v=[],rotateChevron:h=!1}){const[m,y]=S.useState(!1),[C,E]=S.useState(""),N=Array.isArray(n)?n.filter(A=>A!=null&&A!==""):[],O=new Set(v.map(A=>String(A))),L=S.useRef(null),H=S.useRef(null),te=t.map(A=>typeof A=="string"?{value:A,label:A,sublabel:"",searchText:A}:{value:A.value,label:A.label,sublabel:A.sublabel??"",title:A.title??"",searchText:A.searchText??`${A.label??""} ${A.sublabel??""}`}).filter(A=>A.value!==null&&A.value!==void 0&&A.value!==""),Z=new Map(te.map(A=>[String(A.value),A.label])),j=A=>N.some(F=>String(F)===String(A)),z=te.filter(A=>`${A.label} ${A.sublabel} ${A.searchText}`.toLowerCase().includes(C.trim().toLowerCase())),$=z.map(A=>A.value),V=$.length>0&&$.every(A=>j(A)),T=()=>{if(V)r?.(N.filter(A=>O.has(String(A))||!$.some(F=>String(F)===String(A))));else{const A=N.filter(F=>!$.some(w=>String(w)===String(F)));r?.([...A,...$])}};S.useEffect(()=>{m&&H.current&&(H.current.scrollTop=0)},[m]),S.useEffect(()=>{if(!m)return;const A=w=>{L.current&&!L.current.contains(w.target)&&(y(!1),E(""))},F=w=>{w.key==="Escape"&&(y(!1),E(""))};return document.addEventListener("mousedown",A),document.addEventListener("touchstart",A),document.addEventListener("keydown",F),()=>{document.removeEventListener("mousedown",A),document.removeEventListener("touchstart",A),document.removeEventListener("keydown",F)}},[m]);const D=A=>{O.has(String(A))||(j(A)?r?.(N.filter(F=>String(F)!==String(A))):r?.([...N,A]),E(""))},B=A=>{O.has(String(A))||r?.(N.filter(F=>String(F)!==String(A)))},Y=N.length?`${N.length} selected`:a;return o.jsxs("div",{className:`ca-role-select ${s}`.trim(),style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,width:"100%"},children:[o.jsxs(va,{children:[e,l?o.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),o.jsxs("div",{className:"ca-multi-select",ref:L,style:{position:"relative",width:"100%"},children:[p?o.jsxs("div",{className:`ca-multi-select__trigger ${i?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:i?"1px solid #dc2626":void 0,boxShadow:i?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":m,onClick:()=>y(!0),children:[o.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:C,placeholder:g,"aria-label":g,onFocus:()=>y(!0),onChange:A=>{E(A.target.value),y(!0)},onKeyDown:A=>{A.key==="Escape"&&(A.stopPropagation(),y(!1),E(""))}}),o.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:h&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:o.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):o.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${i?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:i?"1px solid #dc2626":void 0,boxShadow:i?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>y(A=>!A),"aria-haspopup":"listbox","aria-expanded":m,children:[o.jsx("span",{className:N.length?"":"ca-multi-select__placeholder",children:Y}),o.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:h&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:o.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),m?o.jsxs("ul",{ref:H,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&&z.length>1?o.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:o.jsxs("label",{className:"ca-multi-select__option",children:[o.jsx("input",{type:"checkbox",checked:V,onChange:T}),o.jsx("span",{children:"All"})]})}):null,z.length?z.map(A=>o.jsx("li",{role:"option","aria-selected":j(A.value),children:o.jsxs("label",{className:"ca-multi-select__option",children:[o.jsx("input",{type:"checkbox",checked:j(A.value),disabled:O.has(String(A.value)),onChange:()=>D(A.value)}),o.jsxs("span",{className:"ca-multi-select__option-text",children:[o.jsx("span",{className:"ca-multi-select__option-label",children:A.label}),A.sublabel?o.jsx("span",{className:"ca-multi-select__option-sublabel",children:A.sublabel}):null]})]})},String(A.value))):o.jsx("li",{className:"ca-multi-select__empty",children:C?"No matching options":c})]}):null]}),N.length>0?o.jsx("div",{className:"ca-tag-list",children:[...new Set(N)].map(A=>o.jsx(Yi,{label:Z.get(String(A))||String(A),title:te.find(F=>String(F.value)===String(A))?.title,onRemove:O.has(String(A))?void 0:()=>B(A)},String(A)))}):null]})}function mn({steps:e=[],currentStep:t=1,allStepsUnlocked:n=!1,onStepClick:r,className:a="",size:s="md",showSaveButton:i=!1,showNextButton:l=!1,onNext:c,nextLabel:d="Next >",extraActions:u=null}){const f=S.useRef({}),p=X.useDispatch();return S.useEffect(()=>{const g=f.current[t];if(!g)return;const v=requestAnimationFrame(()=>{let h=g.parentElement;for(;h&&h!==document.body;){const{overflowX:O}=getComputedStyle(h);if(h.scrollWidth>h.clientWidth+1&&(O==="auto"||O==="scroll"))break;h=h.parentElement}if(!h||h===document.body)return;const m=h.getBoundingClientRect(),y=g.getBoundingClientRect(),C=12;if(y.left>=m.left+C&&y.right<=m.right-C)return;const N=y.left-m.left-(m.width-y.width)/2;h.scrollTo({left:h.scrollLeft+N,behavior:"smooth"})});return()=>cancelAnimationFrame(v)},[t]),o.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${s} ${a}`.trim(),children:[o.jsx("nav",{className:`ca-stepper ca-stepper--${s}`,"aria-label":"Progress",children:e.map((g,v)=>{const h=g.id??v+1,m=h===t,y=h<t,C=!!r&&(n||y||m);return o.jsxs("button",{type:"button",ref:E=>{f.current[h]=E},className:["ca-stepper__item",m?"ca-stepper__item--active":"",y?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-v},onClick:()=>{p(_t({data:!0})),C&&r?.(h)},disabled:!C,"aria-current":m?"step":void 0,children:[o.jsxs("span",{className:"ca-stepper__circle",children:[h,"."]}),o.jsx("span",{className:"ca-stepper__label",children:g.label})]},h)})}),i||l||u?o.jsxs("div",{className:"ca-stepper__actions",children:[u,l?o.jsx(we,{onClick:c,children:d}):null]}):null]})}const qh={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},Wh=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],zh={value:"",label:"Select Template"},Ea=e=>String(e?.id??e?.code??e?.name??"");function Hh(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 Aa(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=Hh(n);if(r.length)return r}return[]}function or(e){return e==null||e===""?null:String(e).trim()||null}function Gi(e){return or(e?.userId??e?.user_id??e?.id??e?.value)}function Kh(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=or(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 s=t.find(i=>{const l=String(i?.name??i?.userName??[i?.firstName,i?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(i?.email??i?.userEmail??"").trim().toLowerCase();return a===l||a===c});return Gi(s)}function Ta(...e){const t=new Map;return e.flat().forEach(n=>{const r=or(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const Ji=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(i=>i?.role?.id??i?.roleId):[],n=Array.isArray(e?.roleIds)?e.roleIds:[],r=i=>i.map(l=>l&&typeof l=="object"?l.id??l.roleId??l.role_id??l.value:l).filter(l=>l!=null&&l!==""),a=r(t),s=r(n);return{categoryName:e?.name??e?.code??"",tatMinutes:Et(e?.tatMinutes)||"",template:Ea(e),categoryType:e?.categoryType??Ea(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:s)],userIds:Aa(e)}};function Yh(e){return[zh,...e]}function Gh(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 Jh({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:s}=ar(),[i,l]=S.useState(()=>a.categoryFormData??qh),c=S.useRef(a.categoryFormData),[d,u]=S.useState({}),f=X.useDispatch(),{id:p}=X.useSelector(w=>w.appDetails||{}),{isEdit:g}=X.useSelector(w=>w.appDetails||{}),v=X.useSelector(w=>w.complaintType||{}),h=X.useSelector(w=>w.appDetails?.details?.currentUser),{complaintList:m=[],saving:y,loading:C,error:E}=v,N=m.find(w=>String(w?.id??w?._id)===String(p))??(String(v.selected?.id??v.selected?._id)===String(p)?v.selected:null),O=S.useRef(N),L=S.useRef(!1);S.useEffect(()=>{O.current=N},[N]);const H=(w,P={})=>{l(w),c.current=w,s({categoryFormData:w,...P})};S.useEffect(()=>{a.categoryFormData||s({categoryFormData:i,categoryRoleIds:i.roles})},[i,s,a.categoryFormData]),S.useEffect(()=>{!m.length&&!C&&!L.current&&(L.current=!0,f(rn()))},[m.length,f,C]),S.useEffect(()=>{!g||p===null||p===void 0||c.current||f(Ge(p)).unwrap().then(w=>{const P=w?.data??w;if(!P||c.current)return;const x=O.current,q=Aa(P),G=Aa(x),se={...P,roleIds:P.roleIds??x?.roleIds,userIds:q.length?q:G},I=Ji(se);l(I),c.current=I,s({categoryFormData:I,categoryRoleIds:I.roles})}).catch(w=>{console.log(" Fetch error:",w)})},[f,p,g,s]);const te=n.map(w=>({value:w.id??w.roleId??w.value,label:w.name??w.roleName??w.label})).filter(w=>w.value!==null&&w.value!==void 0&&w.value!==""),Z=r.map(w=>{const P=String(w?.name??w?.userName??w?.label??[w?.firstName,w?.lastName].filter(Boolean).join(" ")??"").trim(),x=String(w?.email??w?.userEmail??"").trim();return{value:w.id??w.userId??w.user_id??w.value,label:P,sublabel:x,title:x?`Email: ${x}`:""}}).filter(w=>w.value!==null&&w.value!==void 0&&w.value!==""),j=g?Kh(N,r):Gi(h),z=[];Ta(i.userIds,z);const $=g?N?.createdByUser??N?.createdBy:h;if(j&&!Z.some(w=>or(w.value)===j)){const w=typeof $=="object"?String($.name??$.userName??[$.firstName,$.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";Z.push({value:j,label:w||"Created by user",sublabel:typeof $=="object"?String($.email??"").trim():""})}const V=m.map(w=>({value:Ea(w),label:w?.name??w?.code??"",complaintType:w})).filter(w=>w.value&&w.label),T=async w=>{const P=w?.id??w?._id??null,x={...i,...Ji(w),categoryName:"",roles:[],userIds:z};if(H(x,{categoryRoleIds:[]}),s({templateId:P,tatMinutes:Le(w?.tatMinutes)}),P==null||P===""){s({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[q,G]=await Promise.all([f(Je(P)).unwrap(),f(xe(P)).unwrap()]),se=(Array.isArray(q?.data)?q.data:Array.isArray(q)?q:[]).map(K=>({...K,roleIds:[],role:[],roleId:null})),I=Array.isArray(G?.data)?G.data:Array.isArray(G)?G:[];s({templateId:P,tatMinutes:Le(w?.tatMinutes),prefillWorkflowSteps:se,prefillFormFields:I})}catch(q){console.log("Failed to load template details:",q),s({templateId:P,prefillWorkflowSteps:[],prefillFormFields:[]})}},D=()=>{const w={...i,template:"",categoryType:"",tatMinutes:"",description:""};H(w),s({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},B=w=>{const P=w.target.value;if(!P){D();return}const x=V.find(q=>q.value===P)?.complaintType;if(x){T(x);return}Y("template",P),Y("categoryType",P)},Y=(w,P)=>{const x=Array.isArray(P)?w==="userIds"?Ta(P,z):[...new Set(P.filter(G=>G!=null&&G!==""))]:P,q={...i,[w]:x};H(q,w==="roles"?{categoryRoleIds:x}:{}),u(G=>{if(!G[w])return G;const se={...G};return delete se[w],se})},A=i.visibilityType==="PRIVATE_LINK"||i.visibilityType==="PUBLIC_LINK",F=async()=>{const w={};if(i.categoryName.trim()||(w.categoryName=!0),Hf(i.tatMinutes)||(w.tatMinutes=!0),i.visibilityType||(w.visibilityType=!0),i.roles.length||(w.roles=!0),A&&!i.urlLink.trim()&&(w.urlLink=!0),Object.keys(w).length>0){u(w);return}u({});const P=Le(i.tatMinutes),x={...i,userIds:Ta(i.userIds,z)};H(x,{tatMinutes:P,categoryRoleIds:x.roles});const q={categoryName:i.categoryName,categoryType:i.categoryType||i.template,tatMinutes:P,description:i.description,visibilityType:i.visibilityType,urlLink:A?i.urlLink:"",active:i.active,roles:x.roles},G=g?sn({id:p,data:{code:q.categoryName,name:q.categoryName,description:q.description,tatMinutes:q.tatMinutes,accessType:q.visibilityType,roleIds:q.roles.map(I=>parseInt(I,10))},onFail:I=>{console.log("updateComplaintType onFail:",I)}}):an({payload:q,onSuccess:I=>{f(lt(I?.data?.id??I?.id??null))},onFail:I=>{console.log("createComplaintType onFail:",I)}}),se=await f(G);if(g&&sn.fulfilled.match(se)||!g&&an.fulfilled.match(se)){if(!g){const I=se.payload?.data?.id??se.payload?.id;I!=null&&f(lt(I))}t.onNext?.()}};return o.jsxs(o.Fragment,{children:[o.jsx(mn,{...t,steps:je,showNextButton:!!t.showNextButton,onNext:F}),E||Object.keys(d).length>0?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:E||Gh(d,i)}):null,o.jsxs(pn,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:o.jsx("div",{className:"ca-category-type__header-tools",children:o.jsx("div",{className:"ca-category-type__template",children:o.jsx(_a,{label:"Select Template (Optional)",value:i.template||i.categoryType,onChange:B,options:Yh(V),placeholder:"Select Template",maxVisible:5,disabled:g,className:g?"ca-select--disabled":""})})}),children:[o.jsxs("div",{className:"ca-step-section",children:[o.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[o.jsx(hn,{label:o.jsxs(o.Fragment,{children:["Category Name ",o.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:i.categoryName,onChange:w=>Y("categoryName",w.target.value),placeholder:"Enter category name"}),o.jsx(hn,{label:o.jsxs(o.Fragment,{children:["TAT ",o.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:i.tatMinutes,onChange:w=>Y("tatMinutes",w.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),o.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:o.jsx(hn,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:i.description,onChange:w=>Y("description",w.target.value),placeholder:"Enter description"})}),o.jsxs("div",{className:"ca-step-row",children:[o.jsx(_a,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:i.visibilityType,onChange:w=>Y("visibilityType",w.target.value),options:Wh,placeholder:"Select visibility type"}),A?o.jsx(hn,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:i.urlLink,onChange:w=>Y("urlLink",w.target.value),placeholder:"urllink"}):null]})]}),o.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:o.jsx(sr,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:te,value:i.roles,maxVisible:4,onChange:w=>Y("roles",w)})}),C?o.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,y?o.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function Zi({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 o.jsxs("div",{className:"ca-add-table-card",children:[o.jsxs("header",{className:"ca-add-table-card__header",children:[o.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),o.jsxs("div",{className:"ca-add-table-card__header-text",children:[o.jsx("h3",{className:"ca-add-table-card__title",children:r}),o.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),o.jsx("div",{className:"ca-add-table-card__action",children:o.jsxs(we,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const La=["Yes","No"],Dt=()=>o.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function Xi({name:e,level:t,value:n,initialFormValues:r,setFormValues:a,onChange:s,selected:i=!1,onSelect:l,onDelete:c,subtitle:d,roleList:u=[],showRoleError:f=!1,showEscalationError:p=!1,userList:g=[],fieldErrors:v={}}){const h=n??r??{},m=Array.isArray(h.role)?h.role:[],y=Array.isArray(h.users)?h.users:[],C=h.workflowType==="user"?"user":"role",E=u.map(T=>({value:T.id??T.roleId??T.value,label:T.name??T.roleName??T.label})).filter(T=>T.value!==null&&T.value!==void 0&&T.value!==""),N=T=>{const D=[T?.firstName,T?.lastName].map(A=>String(A??"").trim()).filter(Boolean).join(" "),B=String(T?.name??T?.userName??T?.label??"").trim()||D,Y=[T?.roleName,T?.role?.name,typeof T?.role=="string"?T.role:"",...Array.isArray(T?.roles)?T.roles.map(A=>typeof A=="string"?A:A?.name):[]].map(A=>String(A??"").trim()).filter(Boolean).filter((A,F,w)=>w.indexOf(A)===F).join(", ");return{userName:B,roleName:Y,email:String(T?.email??T?.userEmail??"").trim()}},O=g.map(T=>{const{userName:D,roleName:B,email:Y}=N(T);return{value:T.id??T.userId??T.user_id??T.value,label:D,sublabel:Y,title:Y?`Email: ${Y}`:"",searchText:B}}).filter(T=>T.value!==null&&T.value!==void 0&&T.value!==""),L=(T,D)=>{const B={...h,[T]:D};a?a(B):s?.(B)},H=m.length===0&&y.length===0,te=(f||!!v.role)&&H,Z=T=>T?"ca-control--invalid":"",j=t===1?"green":t===2?"orange":"blue",z=T=>`workflow-level-${t}-${T}`,$=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:y.length}];return o.jsxs("article",{className:`ca-table-card ca-table-card--${j}${i?" ca-table-card--selected":""}`,onClick:l,children:[o.jsxs("header",{className:"ca-table-card__header",children:[o.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),o.jsxs("div",{className:"ca-table-card__header-text",children:[o.jsx("h3",{className:"ca-table-card__title",children:e}),o.jsx("p",{className:"ca-table-card__subtitle",children:$})]}),o.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:T=>{T.stopPropagation(),c?.()},children:o.jsx(Jn,{size:15,color:"currentColor"})})]}),o.jsx("div",{className:"ca-table-card__divider"}),o.jsxs("div",{className:"ca-table-card__fields",children:[o.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:V.map(T=>o.jsxs("button",{type:"button",className:`ca-type-toggle__btn${C===T.value?" ca-type-toggle__btn--active":""}`,onClick:D=>{D.stopPropagation(),C!==T.value&&L("workflowType",T.value)},children:[T.label,T.count?` (${T.count})`:""]},T.value))}),C==="role"?o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Select Roles",o.jsx(Dt,{})]}),htmlFor:z("roleIds"),children:o.jsx(sr,{id:z("role"),value:m,options:E,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:te,onChange:T=>L("role",T)},"role")}):o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Select Users",o.jsx(Dt,{})]}),htmlFor:z("userIds"),children:o.jsx(sr,{id:z("user"),value:y,options:O,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:te,onChange:T=>L("users",T)},"user")}),o.jsx("div",{className:"ca-table-card__divider"}),o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Can Resolve ",o.jsx(o.Fragment,{children:"(Change the Status)"}),o.jsx(Dt,{})]}),htmlFor:z("canResolve"),children:o.jsx(He,{id:z("canResolve"),className:Z(v.canResolve),value:h.canResolve,options:La,onChange:T=>L("canResolve",T.target.value)})}),o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Can Reassign ",o.jsx(o.Fragment,{children:"(Change the Level)"}),o.jsx(Dt,{})]}),htmlFor:z("canReassign"),children:o.jsx(He,{id:z("canReassign"),className:Z(v.canReassign),value:t===1?"No":h.canReassign,options:t===1?["No"]:La,disabled:t===1,onChange:T=>L("canReassign",T.target.value)})}),o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Final Level",o.jsx(o.Fragment,{children:"(can be resolved or closed the complaint)"}),o.jsx(Dt,{})]}),htmlFor:z("finalLevel"),children:o.jsx(He,{id:z("finalLevel"),className:Z(v.finalLevel),value:h.finalLevel,options:La,onChange:T=>L("finalLevel",T.target.value)})}),o.jsx(Ve,{label:o.jsxs(o.Fragment,{children:["Escalation time",o.jsx(Dt,{})]}),htmlFor:z("escalationTime"),children:o.jsx("div",{className:"ca-table-card__time-input",children:o.jsx(Ft,{id:z("escalationTime"),type:"text",className:Z(p||v.escalation),value:h.escalateAfterMinutes??"",placeholder:"--",onChange:T=>L("escalateAfterMinutes",T.target.value)})})})]})]})}function Fa({open:e,title:t,children:n,primaryLabel:r="Save",onPrimary:a,secondaryLabel:s="Cancel",onSecondary:i,primaryDisabled:l=!1}){return e?o.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:o.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?o.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,n,o.jsxs("div",{className:"ca-confirm-modal__actions",children:[s?o.jsx(we,{variant:"outline",onClick:i,children:s}):null,o.jsx(we,{onClick:a,disabled:l,children:r})]})]})}):null}function Qi({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?o.jsx(Fa,{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"?o.jsx(Fa,{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 Ia(e,t=0){const n=s=>!String(s??"").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 Zh="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",Xh="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",Qh="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",Rh="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",Oa=(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:Et(n.escalateAfterMinutes)||""});function ka(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 em(e,t){const n=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(n.find(l=>l.length)??n[0]??[]).map(l=>l&&typeof l=="object"?l.id??l.roleId:l).filter(l=>l!=null),s=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(l=>l&&typeof l=="object"?l.userId??l.id:l).filter(l=>l!=null),i=a.length>0?"role":s.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return Oa(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:s,workflowType:i,canResolve:ka(e.canResolve),canReassign:t===0?"No":ka(e.canReassign),finalLevel:ka(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:Et(e.escalateAfterMinutes)||""})}function Ri(e=[]){return(Array.isArray(e)?e:[]).map(em)}function el(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(n=>n&&typeof n=="object"):[])}const Da=[Oa(1,"Level 1")];function tl({accent:e}){return o.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[o.jsx("img",{src:Zh,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),o.jsx("span",{children:"Escalates to"}),o.jsx("img",{src:Xh,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function nl({accent:e}){return o.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[o.jsx("img",{src:Qh,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),o.jsx("span",{children:"Escalates to"}),o.jsx("img",{src:Rh,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function rl({id:e,selectedTableId:t,onSelect:n,setUpdatePayload:r,registerWorkflowActions:a,roleList:s=[],prefillSteps:i=[],tatTotalMinutes:l=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:u=!1,userList:f=[],onAddBlocked:p}){const g=e!=null,[,v]=S.useState(Da),[h,m]=S.useState(Da),[y,C]=S.useState([]),[E,N]=S.useState(g),[O,L]=S.useState(null),[H,te]=S.useState(l),Z=S.useRef(null),j=S.useRef(l),z=S.useRef(new Set),[$,V]=S.useState([]),[T,D]=S.useState(null),B=X.useDispatch(),Y=S.useMemo(()=>{const I=Ri(i);return I.length?I:Da},[i]),A=(()=>{const I=new Set;return[...s,...y,...el(i)].filter(K=>{const _=String(K?.id??K?.roleId??K?.value);return I.has(_)?!1:(I.add(_),!0)})})();if(!g&&O!==Y){const I=At(Y,l);L(Y),m(I),v(I)}if(!E&&H!==l){te(l);const I=At(h,l);I!==h&&m(I)}S.useEffect(()=>{j.current=l},[l]),S.useEffect(()=>{if(!g){const _=At(Y,j.current);r({id:e,tables:_});return}let I=!1;return(async()=>{N(!0);try{const _=await B(Je(e)).unwrap(),J=Array.isArray(_?.data)?_.data:Array.isArray(_)?_:[];C(el(J));const Q=Ri(J),re=At(Q.length?Q:Y,j.current);I||(v(re),m(re),r({id:e,tables:re}))}catch(_){if(!I){const J=At(Y,j.current);v(J),m(J),r({id:e,tables:J}),console.error("Failed to load workflow steps:",_)}}finally{I||N(!1)}})(),()=>{I=!0}},[B,Y,g,e,r]),S.useEffect(()=>{E||r?.({id:e,tables:h})},[e,E,r,h]);const F=S.useCallback((I,{preserveLastLevel:K}={})=>{const _=I.map((re,he)=>he===0?{...re,canReassign:"No"}:re),J=K?_:At(_,l),Q={id:e,tables:J};return m(J),console.log("[TableCardGrid] updated form values:",J),console.log("[TableCardGrid] PUT payload:",Q),r?.(Q),Q},[e,r,l]);S.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!h.length)return null;const I=h.length-1,K=h.map((_,J)=>J===I?{..._,finalLevel:"Yes"}:_);return F(K,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,h,l,F]);const w=I=>{const K=h[h.length-1];return K!=null&&K.id===I},P=(I,K)=>{Object.prototype.hasOwnProperty.call(K,"escalateAfterMinutes")&&z.current.add(I),F(h.map(_=>_.id===I?{..._,...K}:_),{preserveLastLevel:w(I)})},x=(I,K)=>{const _=h.findIndex(re=>re.id===I);if(_<0)return;const J=h[_],Q=typeof K=="function"?K(J):K;if(Q.escalateAfterMinutes!==J.escalateAfterMinutes&&z.current.add(I),_<h.length-1&&J.finalLevel!=="Yes"&&Q.finalLevel==="Yes"){D({tableId:I,value:Q});return}F(h.map((re,he)=>he===_?Q:re),{preserveLastLevel:w(I)})},q=()=>{if(!T)return;const I=h.findIndex(_=>_.id===T.tableId);if(I<0){D(null);return}const K=h.slice(0,I+1).map((_,J)=>J===I?T.value:_);V(_=>_.filter(J=>K.some(Q=>Q.id===J))),F(K),D(null)},G=I=>{if(h.some(de=>de.finalLevel==="Yes"))return;const K=h[h.length-1];if(K){const de=Ia(K,h.length-1);if(Object.values(de).some(Boolean)){V(me=>me.includes(K.id)?me:[...me,K.id]),p?.(`Please fill all required fields of Level ${h.length} before adding a new level.`);return}}p?.("");const _=h.reduce((de,me)=>Math.max(de,Number(me.id)||0),0)+1,J=h.length+1,Q=h[h.length-1],he=Q!=null&&z.current.has(Q.id)&&Le(Q.escalateAfterMinutes)>0?h:Gf(h);z.current.delete(_),F([...he,Oa(_,I||`Level ${J}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const de=Z.current;de&&de.scrollTo({left:de.scrollWidth,behavior:"smooth"})})})},se=I=>{z.current.delete(I),F(h.filter(K=>K.id!==I))};return E&&!h.length?null:o.jsxs(o.Fragment,{children:[o.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:Z,children:o.jsxs("div",{className:"ca-table-card-grid__track",children:[h.map((I,K)=>o.jsxs(S.Fragment,{children:[o.jsx(Xi,{name:I.name,roleList:A,showRoleError:c||u,showEscalationError:d,userList:f,level:K+1,value:I,initialFormValues:I,setFormValues:_=>x(I.id,_),selected:I.id===t,onSelect:()=>n?.(I),onDelete:()=>se(I.id),onChange:_=>P(I.id,_),fieldErrors:u||$.includes(I.id)?Ia(I,K):{}}),K<h.length-1?o.jsxs(o.Fragment,{children:[o.jsx(tl,{accent:K===0?"green":K===1?"orange":"purple"}),o.jsx(nl,{accent:K===0?"green":K===1?"orange":"purple"})]}):null]},I.id)),h.length?o.jsxs(o.Fragment,{children:[o.jsx(tl,{accent:h.length===1?"green":h.length===2?"orange":"purple"}),o.jsx(nl,{accent:h.length===1?"green":h.length===2?"orange":"purple"})]}):null,o.jsx(Zi,{level:h.length+1,onAdd:G,disabled:h.some(I=>I.finalLevel==="Yes")})]})}),o.jsx(Qi,{variant:"finalLevelDelete",levelNo:T?h.findIndex(I=>I.id===T.tableId)+1:null,open:!!T,onConfirm:q,onClose:()=>D(null)})]})}function tm({totalMinutes:e=0,usedMinutes:t=0}){const n=Le(e),r=Le(t),a=Math.max(0,n-r),s=Et(a)||"0m",i=n>0?Math.min(100,r/n*100):0;return o.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${s} left`,children:[o.jsxs("div",{className:"ca-tat-progress__row",children:[o.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),o.jsxs("span",{className:"ca-tat-progress__remaining",children:[s," left"]})]}),o.jsx("div",{className:"ca-tat-progress__track",children:o.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${i}%`}})})]})}function al(e){return e?.data??e?.id??e}function nm(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 rm(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles].flatMap(n=>Array.isArray(n)?n:[n]).map(nm).filter(Boolean)}function am(e){const t=[e?.role,e?.roles,e?.assignedRoles].flatMap(r=>Array.isArray(r)?r:[r]);return[e?.roleName,e?.role_name,...t.map(r=>typeof r=="string"?r:r?.name??r?.roleName??r?.label)].filter(Boolean).map(r=>String(r).trim().toLowerCase()).filter(Boolean)}function sm({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:s=[]}){const{state:i,updateWorkflow:l}=ar(),{workflow:c}=i,d=i.categoryRoleIds,u=S.useMemo(()=>{const F=new Set((Array.isArray(d)?d:[]).filter(w=>w!=null&&w!=="").map(String));return F.size?a.filter(w=>!F.has(String(w.id??w.roleId??w.value))):a},[d,a]),f=S.useMemo(()=>{const F=new Set((Array.isArray(d)?d:[]).filter(P=>P!=null&&P!=="").map(String));if(!F.size)return s;const w=new Set(a.filter(P=>F.has(String(P.id??P.roleId??P.value))).map(P=>String(P.name??P.roleName??P.label??"").trim().toLowerCase()).filter(Boolean));return s.filter(P=>!rm(P).some(x=>F.has(x))&&!am(P).some(x=>w.has(x)))},[d,a,s]),[p,g]=S.useState(null),[v,h]=S.useState(""),[m,y]=S.useState(!1),[C,E]=S.useState(null),N=S.useRef(null),O=S.useCallback(F=>{g(F),h("")},[]),L=S.useCallback(F=>{N.current=F},[]),H=X.useDispatch();let{id:te}=X.useSelector(F=>F.appDetails||{});const Z=X.useSelector(F=>F.complaintType?.selected),j=al(te),z=al(Z?.id??Z?._id),$=Le(Z?.tatMinutes??i.tatMinutes);S.useEffect(()=>{j==null||j===""||z!=null&&String(z)===String(j)&&Z?.tatMinutes!=null||H(Ge(j))},[H,Z?.tatMinutes,z,j]);const V=S.useMemo(()=>{const F=Array.isArray(p?.tables)?p.tables:[];return Yf(F)},[p]),T=r??c.selectedTableCard??null,D=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((F,w)=>`L${w+1}`).join(" > "):"",B=F=>{H(Wn({id:F.id,tables:F,onSuccess:w=>{console.log("updateWorkflowSteps onSuccess:",w),h(""),n.onNext?.()},onFail:w=>{const P=w?.response?.data??w?.payload??w,x=[...new Set(Array.isArray(P?.errors)?P.errors.map(se=>se?.message).filter(Boolean):[])],q=(x.length?x.join(" "):null)??P?.message??P?.error??w?.message??"Failed to update workflow steps",G=String(q).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.");h(Kf(G))}}))},Y=async()=>{if(h(""),!p){h("Workflow steps are not ready to save.");return}const F=Array.isArray(p.tables)?p.tables:[];if(!F.length){h("Add at least one workflow level before continuing.");return}y(!0);const w=F.map((q,G)=>Ia(q,G)),P=F.length-1;if(w.some((q,G)=>Object.entries(q).some(([se,I])=>I&&!(G===P&&se==="finalLevel")))){h("Please complete all required fields in every workflow level.");return}if(F[P].finalLevel!=="Yes"){E(P+1);return}B(p)},A=()=>{const F=N.current?.setLastLevelFinal?.();if(E(null),!F){h("Unable to update the final workflow level. Please try again.");return}y(!0),B(F)};return o.jsxs(o.Fragment,{children:[o.jsx(mn,{...n,steps:je,onNext:Y,showNextButton:!0}),v?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:v}):null,o.jsx(Qi,{variant:"finalLevelRequired",levelNo:C,open:C!=null,onConfirm:A,onClose:()=>E(null)}),o.jsx(pn,{title:t.title,description:D,showNext:!1,headerExtra:o.jsx(tm,{totalMinutes:$,usedMinutes:V}),children:o.jsx("div",{className:"ca-workflow__main",children:o.jsx(rl,{id:te,selectedTableId:T?.id,onSelect:F=>l({selectedTableCard:F}),setUpdatePayload:O,registerWorkflowActions:L,roleList:u,userList:f,onAddBlocked:h,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(v),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(v),showRequiredErrors:m,prefillSteps:i.prefillWorkflowSteps,tatTotalMinutes:$})})})]})}function sl({onAdd:e,disabled:t=!1}){return o.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const ol=S.createContext(null);function xa(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function il(e,t){const n=xa(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function et(){const e=S.useContext(ol);return{storeName:xa(e),label:t=>il(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?xa(e):il(t.fieldLabel??t.label??t.fieldName??"",e)}}}function ll({size:e=16,color:t="#9CA3AF",...n}){return o.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...n,children:[o.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),o.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),o.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),o.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),o.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),o.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}function Ma(e,t){return!t||e.includes(t)?e:[t,...e]}function cl(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 om="#9CA3AF";function dl({field:e,fieldOptions:t=[],fieldTypeOptions:n=[],fieldAccessOptions:r=[],hideForOptions:a=[],isSaving:s=!1,selected:i=!1,isDragging:l=!1,onSelect:c,onDragStartField:d,onDragEndField:u,onReorder:f,onChange:p,onDelete:g,onSave:v,cardRef:h,onOptionNotice:m,hasDuplicateIdentity:y=!1,hasMissingOptions:C=!1}){const[E,N]=S.useState(""),[O,L]=S.useState(null),H=S.useRef(!1),{label:te,fieldLabel:Z}=et(),j=cl(e),[z,$]=S.useState(()=>({id:e.id,signature:e.isNew?null:j}));z.id!==e.id&&$({id:e.id,signature:e.isNew?null:j});const V=e.lockMode==="all",T=Be(e),D=V||e.lockMode==="options",B=vi(e),Y=V||!B,A=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),F=z.signature!==j,w=!!s||!A,P=y||C?"ca-control--invalid":"",x=_=>p?.({...e,..._}),q=()=>{if(Y)return;const _=E.trim();if(!_)return;if(ne(e)&&Qe(_)){const Q=(e.options||[]).find(re=>String(re).trim().toLowerCase()===_.toLowerCase());if(Q){m?.(`${Q} already exists in options`),N("");return}}if(e.options?.includes(_))return;const J=ne(e)?{...e.optionColors||{},[_]:e.optionColors?.[_]||om}:e.optionColors;x({options:ne(e)?It([...e.options||[],_]):[...e.options||[],_],...ne(e)?{optionColors:J}:{}}),N("")},G=_=>{if(Y||ne(e)&&Qe(_))return;const J={...e.optionColors||{}};delete J[_];const Q={...e.parentMappings||{}};delete Q[_],x({options:e.options.filter(re=>re!==_),parentMappings:Q,...ne(e)?{optionColors:J}:{}})},se=_=>{Y||ne(e)&&Qe(_)||(H.current=!1,L({original:_,draft:_}))},I=()=>{H.current=!0,L(null)},K=()=>{if(H.current){H.current=!1;return}if(!O)return;const{original:_,draft:J}=O,Q=J.trim();if(L(null),!Q||Q===_)return;if((e.options||[]).some(ge=>ge!==_&&(ge===Q||ne(e)&&String(ge).trim().toLowerCase()===Q.toLowerCase()))){m?.(`${Q} already exists in options`);return}const he=(e.options||[]).map(ge=>ge===_?Q:ge),de={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(de,_)&&(de[Q]=de[_],delete de[_]);const me={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(me,_)&&(me[Q]=me[_],delete me[_]),x({options:ne(e)?It(he):he,parentMappings:de,optionColors:me})};return o.jsxs("article",{ref:h,className:`ca-form-card${i?" ca-form-card--selected":""}${l?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:_=>{T||(_.preventDefault(),_.dataTransfer.dropEffect="move")},onDrop:_=>{if(T){u?.();return}_.preventDefault();const J=_.dataTransfer.getData("text/plain");f?.(J,e.id),u?.()},children:[o.jsxs("div",{className:"ca-form-card__row ca-form-card__row--order",children:[T?o.jsx("span",{"aria-hidden":"true",style:{display:"inline-block",width:15,height:15}}):o.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:o.jsx(ll,{size:15,color:"currentColor"})}),o.jsxs("div",{className:"ca-form-card__actions",children:[o.jsx("button",{type:"button",className:"ca-form-card__save","aria-label":"Save form field",disabled:w||V||!F,onClick:async _=>{if(_.stopPropagation(),w||V||!F)return;const J=await v?.(e);J&&$({id:e.id,signature:cl(J)})},children:"Save"}),Be(e)?null:o.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:_=>{_.stopPropagation(),g?.(e.id)},children:o.jsx(Jn,{size:15,color:"currentColor"})})]})]}),o.jsx("div",{className:"ca-form-card__row",children:D?o.jsx("span",{className:"ca-form-card__static",children:Z(e)||"—"}):o.jsx(Ft,{value:V?Z(e):e.fieldLabel,placeholder:"Enter field label",disabled:D,className:P,onChange:_=>x({fieldLabel:_.target.value})})}),o.jsx("div",{className:"ca-form-card__row",children:D?o.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):o.jsx(He,{value:e.fieldType,options:Ma(n,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:D,className:P,onChange:_=>{const J=_.target.value;if(vi({...e,fieldType:J})){x({fieldType:J,dependsOn:"",parentMappings:{}});return}x({fieldType:J,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),o.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:o.jsx(Gn,{checked:!!e.required,disabled:D,onChange:_=>x({required:_}),"aria-label":"Required"})}),o.jsx("div",{className:"ca-form-card__row",children:o.jsx(He,{value:e.fieldAccess,options:Ma(r,e.fieldAccess),placeholder:"Select access",disabled:D,allowClear:!0,onChange:_=>x({fieldAccess:_.target.value})})}),o.jsxs("div",{className:"ca-form-card__row",children:[o.jsx(He,{value:"",options:a.filter(_=>!e.hideFor?.includes(_)),placeholder:"Select level",disabled:D,onChange:_=>x({hideFor:[...e.hideFor||[],_.target.value]})}),e.hideFor?.length?o.jsx("div",{className:"ca-form-card__chips",children:e.hideFor.map(_=>o.jsxs("span",{className:"ca-form-card__chip",children:[_,o.jsx("button",{type:"button","aria-label":`Remove ${_}`,disabled:D,onClick:()=>x({hideFor:e.hideFor.filter(J=>J!==_)}),children:"×"})]},_))}):null]}),o.jsx("div",{className:"ca-form-card__row",children:o.jsx(He,{value:e.dependsOn,options:Ma(t,e.dependsOn).map(_=>({value:_,label:te(_)})),placeholder:"Select field label",disabled:D||!B,allowClear:!0,onChange:_=>{const J=_.target.value;if(!J){x({dependsOn:"",parentMappings:{}});return}x({dependsOn:J})}})}),o.jsxs("div",{className:"ca-form-card__row ca-form-card__row--options",children:[o.jsxs("div",{className:"ca-form-card__option-entry",children:[o.jsx(Ft,{value:E,placeholder:"Enter option",disabled:Y,className:C?"ca-control--invalid":"",onChange:_=>N(_.target.value),onKeyDown:_=>{_.key==="Enter"&&(_.preventDefault(),q())}}),o.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:Y,onClick:q,children:"+"})]}),o.jsx("div",{className:"ca-form-card__chips",children:(B?ne(e)?It(e.options||[]):e.options||[]:[]).map(_=>{const J=ne(e)&&Qe(_),Q=O?.original===_;return o.jsxs("span",{className:`ca-form-card__chip${J?" ca-form-card__chip--locked":""}`,children:[Q?o.jsx("input",{autoFocus:!0,value:O.draft,onChange:re=>L({original:_,draft:re.target.value}),onBlur:K,onClick:re=>re.stopPropagation(),onKeyDown:re=>{re.key==="Enter"?(re.preventDefault(),K()):re.key==="Escape"&&(re.preventDefault(),I())},"aria-label":`Edit ${_}`,style:{width:`${Math.max(O.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):o.jsx("span",{role:J||Y?void 0:"button",tabIndex:J||Y?void 0:0,title:J||Y?void 0:"Click to edit",style:J||Y?void 0:{cursor:"text"},onClick:()=>se(_),onKeyDown:re=>{re.key==="Enter"&&se(_)},children:ne(e)?Re(_):_}),J?null:o.jsx("button",{type:"button","aria-label":`Remove ${_}`,disabled:Y,onClick:()=>G(_),children:"×"})]},_)})})]})]})}function Pa({option:e,onDelete:t,locked:n=!1}){return o.jsx("td",{children:n?null:o.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:o.jsx(Qp,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function im(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 lm({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,{fieldLabel:a}=et(),s=N=>ne(r)?Re(N):N,i=ne(r)?r:null,l=S.useMemo(()=>{const N=String(r?.dependsOn||"").trim();if(!N)return null;const O=e.filter(L=>String(L.fieldLabel||"").trim()===N);return O.find(L=>(L.options||[]).some(H=>String(H||"").trim()))||O[0]||null},[r?.dependsOn,e]),c=l?.options||[],d=!!r?.dependsOn,[u,f]=S.useState(!1),p=(N,O)=>{if(!i)return;const L=/^#[0-9A-Fa-f]{6}$/.test(O)?O.toUpperCase():O;n?.(e.map(H=>H.id===i.id?{...H,optionColors:{...H.optionColors,[N]:L}}:H))},g=(N,O)=>{r&&n?.(e.map(L=>L.id===r.id?{...L,parentMappings:{...L.parentMappings||{},[N]:O}}:L))},v=N=>{if(!r||ne(r)&&Qe(N))return;const O={...r.optionColors||{}};delete O[N];const L={...r.parentMappings||{}};delete L[N],n?.(e.map(H=>H.id===r.id?{...H,options:(H.options||[]).filter(te=>te!==N),parentMappings:L,...ne(H)?{optionColors:O}:{}}:H))},h=r&&a(r)||"Select field",m=ch(r,d),y=ne(r)?It(r?.options||[]):r?.options||[],C=(N,O)=>o.jsx("div",{className:"field-options-panel__table-wrap",children:o.jsxs("table",{className:"field-options-panel__table",children:[o.jsx("thead",{children:o.jsxs("tr",{children:[N.map(L=>o.jsx("th",{scope:"col",children:L},L)),o.jsx("th",{scope:"col","aria-label":"Delete"})]})}),o.jsx("tbody",{children:O})]})});let E=o.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return d?E=y.length?C(["Option label",l?a(l):"Parent"],y.map(N=>o.jsxs("tr",{children:[o.jsx("td",{children:s(N)}),o.jsx("td",{children:o.jsxs("select",{"aria-label":`Parent for ${N}`,value:r.parentMappings?.[N]||"",disabled:!c.length,onChange:O=>g(N,O.target.value),children:[o.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),c.map(O=>o.jsx("option",{value:O,children:O},O))]})}),o.jsx(Pa,{option:N,onDelete:v,locked:ne(r)&&Qe(N)})]},N))):o.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):i?E=y.length?C([ne(i)?"Status":"Option","Colors"],y.map(N=>{const O=im(i.optionColors?.[N]);return o.jsxs("tr",{children:[o.jsx("td",{children:s(N)}),o.jsx("td",{children:o.jsxs("div",{className:"field-options-panel__color",children:[o.jsx("input",{className:"field-options-panel__hex","aria-label":`Color for ${N}`,value:i.optionColors?.[N]||O,onChange:L=>p(N,L.target.value)}),o.jsx("label",{className:"field-options-panel__swatch",style:{background:O},title:O,children:o.jsx("input",{type:"color","aria-label":`Pick color for ${N}`,value:O,onChange:L=>p(N,L.target.value)})})]})}),o.jsx(Pa,{option:N,onDelete:v,locked:ne(i)&&Qe(N)})]},N)})):o.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):y.length&&(E=C([lh(r)],y.map(N=>o.jsxs("tr",{children:[o.jsx("td",{children:s(N)}),o.jsx(Pa,{option:N,onDelete:v,locked:ne(r)&&Qe(N)})]},N)))),o.jsxs("aside",{className:`field-options-panel${u?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${h}`,children:[o.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":u,"aria-controls":"field-options-panel-body",onClick:()=>f(N=>!N),children:[o.jsxs("span",{className:"field-options-panel__summary-text",children:[o.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",h]}),m?o.jsx("span",{className:"field-options-panel__description",children:m}):null]}),o.jsx(hi,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),o.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:E})]})}function cm(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||ne(a))return;const s=String(a.fieldLabel||a.label||"").trim();if(!s)return;const i=s.toLowerCase();n.has(i)||!(a?.options||[]).some(c=>String(c||"").trim())||(n.add(i),r.push(s))}),r}const dm=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function um(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 xt(e=[]){const t=e.map(um);return t.map(n=>nr(n,t))}function ul({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:s=[],onSave:i,onDelete:l}){const[c,d]=S.useState(()=>xt(e??[])),[u,f]=S.useState(null),[p,g]=S.useState(null),[v,h]=S.useState(""),m=S.useRef(""),y=S.useRef(null),C=S.useRef({}),E=D=>{const B=xt(D);d(B),t?.(B)},N=(e??[]).map(D=>D.id).join(",");S.useEffect(()=>{if(!v)return;const D=window.setTimeout(()=>h(""),3200);return()=>window.clearTimeout(D)},[v]),S.useEffect(()=>{!N||N===m.current||(m.current=N,d(xt(e)))},[N,e]),S.useEffect(()=>{if(n)return n.current=D=>{D&&d(B=>{const Y=B.find(w=>er(D,[w]));if(tr(B)||Y)return Y&&f(Y.id),B;if(Ot(B))return B;const A=xt([...B,{...D,id:`${D.id}-${Date.now()}`,isNew:!0}]),F=A[A.length-1];return f(F.id),t?.(A),A})},()=>{n.current=null}},[n,t]),S.useEffect(()=>{if(u==null)return;const D=y.current,B=C.current[u];if(!D||!B)return;const Y=requestAnimationFrame(()=>{const A=D.getBoundingClientRect(),F=B.getBoundingClientRect(),w=12;F.left>=A.left+w&&F.right<=A.right-w||D.scrollTo({left:D.scrollLeft+F.left-A.left-(A.width-F.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(Y)},[u,c]);const O=(D,B)=>{if(D==null||B==null||String(D)===String(B))return;const Y=c.findIndex(x=>String(x.id)===String(D)),A=c.findIndex(x=>String(x.id)===String(B));if(Y<0||A<0||Be(c[Y])||Be(c[A]))return;const F=c.findIndex(Be),w=[...c],[P]=w.splice(Y,1);if(w.splice(A,0,P),F>=0){const x=w.findIndex(Be);if(x!==F){const[q]=w.splice(x,1);w.splice(F,0,q)}}E(w.map((x,q)=>({...x,order:q+1})))},L=D=>{const B=c.find(G=>G.id===D.id),Y=B&&B.fieldType!==D.fieldType;D.dependsOn&&D.dependsOn!==B?.dependsOn&&f(D.id);const A=String(B?.fieldLabel||"").trim(),F=B?.options||[],w=D.options||[],P=F.filter(G=>!w.includes(G)),x=w.filter(G=>!F.includes(G)),q=F.length===w.length&&P.length===1&&x.length===1?{from:P[0],to:x[0]}:null;E(c.map(G=>{if(G.id===D.id)return D;if(Y&&A&&String(G.dependsOn||"").trim()===A)return{...G,dependsOn:"",parentMappings:{}};if(q&&A&&String(G.dependsOn||"").trim()===A){const se=Object.fromEntries(Object.entries(G.parentMappings||{}).map(([I,K])=>[I,K===q.from?q.to:K]));return{...G,parentMappings:se}}return G}))},H=async D=>{const B=c.find(Y=>Y.id===D);if(!(!B||Be(B)))try{if(await l?.(B)===!1)return;const A=String(B.fieldLabel||"").trim();E(c.filter(F=>F.id!==D).map((F,w)=>A&&String(F.dependsOn||"").trim()===A?{...F,dependsOn:"",parentMappings:{},order:w+1}:{...F,order:w+1}))}catch{}},te=()=>{tr(c)||Ot(c)||E(xt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},Z=async D=>{if(er(D,c))return null;try{const B=await i?.(D);return B?(d(Y=>{const A=xt(Y.map(F=>F.id===D.id?{...B,isNew:!1,order:F.order||1}:F));return t?.(A),A}),B):null}catch{return null}},j=tr(c),z=Ot(c),$=j?"A field with this label and type already exists":"",V=wi(c),T=c.find(D=>D.id===u)||null;return o.jsxs(o.Fragment,{children:[$||V||v?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:$||V||v}):null,o.jsxs("div",{className:"ca-form-card-grid__container ",children:[o.jsxs("div",{className:"ca-form-card-grid",children:[o.jsx("div",{className:"ca-form-card-grid__labels",children:dm.map(D=>o.jsx("div",{className:"ca-form-card-grid__label",children:D},D))}),o.jsxs("div",{className:"ca-form-card-grid__cards",ref:y,children:[c.map(D=>o.jsx(dl,{field:D,fieldOptions:cm(D,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:s,selected:T?.id===D.id,isDragging:String(p)===String(D.id),cardRef:B=>{B?C.current[D.id]=B:delete C.current[D.id]},onSelect:()=>f(D.id),onDragStartField:()=>g(D.id),onDragEndField:()=>g(null),onReorder:O,onChange:L,onDelete:H,onSave:Z,onOptionNotice:h,hasDuplicateIdentity:er(D,c),hasMissingOptions:ma(D)},D.id)),o.jsx(sl,{onAdd:te,disabled:j||z})]})]}),o.jsx(lm,{formFields:c,selectedField:T,onChange:E})]})]})}const fl={department:pi,priorities:Jp,status:Xn,statuses:Xn,statusCustom:Xn,Status:Xn,storeId:gi,storeIdCustom:gi};function fm({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,s]=S.useState(!1),{fieldLabel:i}=et();return o.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[o.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>s(l=>!l),children:[o.jsxs("span",{className:"custom-field-table__summary-text",children:[o.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),o.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),o.jsx(hi,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),o.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(l=>{const c=i(l),d=fl[l.fieldKey]||fl[l.id]||pi;return o.jsxs("div",{className:"custom-field-table__row",children:[o.jsx(d,{className:"custom-field-table__field-icon",size:14,strokeWidth:1.5,"aria-hidden":"true"}),o.jsx("span",{className:"custom-field-table__label",children:c}),o.jsx("button",{className:"custom-field-table__add",type:"button","aria-label":`Add ${c}`,title:n?r:`Add ${c}`,disabled:n,onClick:()=>{n||t?.(l)},children:o.jsx(mi,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},l.fieldKey??l.id)})}),o.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[o.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]}),o.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[o.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const pl={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"},hl={BOTH:"Both",USER:"User",ADMIN:"Admin"},pm={...Object.fromEntries(Object.entries(pl).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},hm={...Object.fromEntries(Object.entries(hl).map(([e,t])=>[t,e])),Both:"BOTH",User:"USER",Admin:"ADMIN"};function Mt(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 mm(e,t){const n=Mt(e),r=Mt(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function ir(e,t){return ne({...e,fieldLabel:t})?Mt(t)||"status":Xe({...e,fieldLabel:t})?"storeIdCustom":mm(t,e.fieldType)}function gn(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 gm(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function Ua(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function ym(e=[]){const t=ne(e)?It(e.options||[]):e.options||[];if(!t.length)return null;const n=e.parentMappings||{},r=e.optionColors||{},a=!!e.dependsOn||t.some(s=>n[s]);return ne(e)?{values:t.map((s,i)=>{const l={name:s,displayOrder:i+1,isActive:!0,isDefault:sh(s)};return r[s]&&(l.color=r[s]),l})}:a?{values:t.map(s=>{const i={label:s};return n[s]&&(i.dependsOnValue=n[s]),i})}:{values:t}}function bm(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),s=t.find(g=>String(g.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),i=ir(e,r)||(a?e.fieldKey:""),l=s?ir(s,s.fieldLabel)||s.fieldKey:"",c=wm(e,n),d=ym(e),u=pm[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=hm[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:r,fieldKey:i,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),l&&l!==i&&(p.dependsOnFieldKey=l),p}function ml(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 gl(e,t){return ml(e)!==ml(t)}function Sm(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,s)=>bm({...a,order:a.order||s+1},t,n))}}function vm(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function lr(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 yl(e,t=[]){if(!e)return null;const n=lr(e);if(n)return n;const r=typeof e=="object"?e.id??e.workflowStepId:null;if(r==null)return null;const a=t.find(s=>String(s.id)===String(r));return lr(a)}function wm(e,t=[]){const n=Array.isArray(e.hideFor)?e.hideFor:[];if(!n.length)return null;for(const s of n){const i=t.find(l=>lr(l)===s||String(l.id)===String(s));if(i?.id!=null)return i.id}const r=e.hideForWorkflowStepId;return r==null||r===""?null:t.some(s=>String(s.id)===String(r))?r:null}function bl(e){return[...new Set(e.filter(Boolean))]}function cr(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function Cm(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Nm(e,t=[]){if(!e)return"";const n=t.map(cr).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>Mt(s)===e||Mt(s)===Mt(e))||e}function _m(e){return e&&typeof e=="object"&&e.color?e.color:""}function ut(e=[],t=[]){const n=[...e].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0));return kt(n.map(r=>{const a=r?.options?.values??[],s=n.find(l=>l.id===r.dependsOnFieldId||r.dependsOnFieldKey&&l.fieldKey===r.dependsOnFieldKey),i=t.find(l=>String(l.id)===String(r.hideForWorkflowStepId));return{id:r.id,order:r.displayOrder,fieldLabel:r.fieldName??r.fieldLabel??"",fieldType:ga(r.fieldType,pl,r.fieldKey),required:!!r.required,fieldAccess:hl[r.fieldAccess]??r.fieldAccess??"",hideFor:bl([...Array.isArray(r.hideFor)?r.hideFor:[],yl(r.hideForWorkflowStep,t),yl(i,t)]),dependsOn:r.dependsOnField?.fieldName??s?.fieldName??r.dependsOn??"",options:a.map(cr).filter(Boolean),parentMappings:Object.fromEntries(a.map(l=>{const c=cr(l),d=Cm(l);return!c||!d?null:[c,Nm(d,s?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(l=>[cr(l),_m(l)]).filter(([l,c])=>l&&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 Em({stepMeta:e,stepperProps:t}){const n=X.useDispatch(),{systemId:r}=qt(),a=X.useSelector(x=>x.appDetails?.id),s=gn(a)??gn(r),{state:i,update:l}=ar(),{formFields:c,prefillFormFields:d=[]}=i,u=S.useRef(null),f=S.useCallback(x=>l({formFields:x}),[l]),p=S.useCallback(async x=>{const q=String(x.fieldLabel||"").trim();return q?{...x,fieldLabel:q,fieldKey:ir(x,q),originalFieldName:q,isNew:!1}:null},[]),g=S.useCallback(async x=>Be(x)?!1:(Ua(x)&&await n(en({complaintTypeId:s,fieldId:x.id})).unwrap(),!0),[s,n]),v=X.useSelector(x=>x.complaintAppComplaint?.formFields?.data),h=X.useSelector(x=>x.complaintAppComplaint?.formFields?.isLoading),m=X.useSelector(x=>x.complaintAppComplaint?.formFields?.error),y=X.useSelector(x=>x.workflow?.workflowSteps),C=S.useMemo(()=>vm(y),[y]),E=S.useRef(C),[N,O]=S.useState(!1);S.useEffect(()=>{E.current=C},[C]),S.useEffect(()=>{const x=gn(s);x!=null&&n(Je(x))},[s,n]),S.useEffect(()=>{const x=gn(s);if(x==null)return;let q=!1;return n(xe(x)).unwrap().then(G=>{if(q)return;const se=Array.isArray(G)?G:G?.data;if(!(Array.isArray(se)&&se.length>0)&&d.length){const K=ut(d,E.current).map((_,J)=>({..._,id:`prefill-${J}`,isNew:!1}));l({formFields:kt(K)})}else{const K=kt(ut(Array.isArray(se)?se:[],E.current));l({formFields:K})}O(!0)}).catch(()=>{if(!q){if(d.length){const G=ut(d,E.current).map((se,I)=>({...se,id:`prefill-${I}`,isNew:!1}));l({formFields:kt(G)})}O(!0)}}),()=>{q=!0}},[s,n,d,l]);const L=S.useMemo(()=>kt(ut(v,C)),[v,C]),te=gn(s)==null||N,Z=te?c:L,j=S.useMemo(()=>rh.filter(x=>!Z.some(q=>x.fieldKey&&q.fieldKey===x.fieldKey||ne(x)&&ne(q)||Rn(x)&&Rn(q)||Xe(x)&&Xe(q))),[Z]),z=S.useMemo(()=>tr(Z),[Z]),$=S.useMemo(()=>Ot(Z),[Z]),V=gm(m),T=eh,D=th,B=S.useMemo(()=>{const x=[...C].sort((G,se)=>(G.levelNo??0)-(se.levelNo??0)).map(G=>lr(G)).filter(Boolean),q=L.flatMap(G=>G.hideFor);return bl([...x,...q])},[L,C]),Y=S.useMemo(()=>{const x=new Map(ut(v,C).map(q=>[Number(q.id),q]));return Z.filter(q=>{if(q.isNew&&String(q.fieldLabel||"").trim())return!0;if(!Ua(q))return!1;const G=x.get(Number(q.id));return!G||gl(q,G)})},[v,Z,C]),[A,F]=S.useState(!1),w=S.useCallback(async x=>{if(!Ot(Z)&&s)try{const G=Z.map(Q=>{if(!x||!Q.isNew)return Q;const re=String(Q.fieldLabel||"").trim();return re?{...Q,fieldLabel:re,fieldKey:ir(Q,re),originalFieldName:re,isNew:!1}:Q}).filter(Q=>!Q.isNew&&String(Q.fieldLabel||"").trim()),se=new Map(ut(v,C).map(Q=>[Number(Q.id),Q]));if(!G.some(Q=>{if(!Ua(Q))return!0;const re=se.get(Number(Q.id));return!re||gl(Q,re)})){t.onNext?.();return}const K=[...G].sort((Q,re)=>+!!Q.dependsOn-+!!re.dependsOn);await n(Rt({complaintTypeId:s,data:Sm(K,K,C)})).unwrap();const _=await n(xe(s)).unwrap(),J=Array.isArray(_)?_:_?.data;l({formFields:kt(ut(Array.isArray(J)?J:[],C))}),t.onNext?.()}catch{}},[v,s,n,Z,t,l,C]),P=S.useCallback(()=>{if(!Ot(Z)){if(Y.length){F(!0);return}w(!1)}},[Z,Y.length,w]);return o.jsxs(o.Fragment,{children:[o.jsx(mn,{...t,steps:je,onNext:P}),A?o.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:o.jsxs("div",{className:"ca-confirm-modal__dialog",children:[o.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),o.jsxs("div",{className:"ca-confirm-modal__actions",children:[o.jsx(we,{variant:"outline",onClick:()=>{F(!1),w(!1)},children:"OK"}),o.jsx(we,{onClick:()=>{F(!1),w(!0)},children:"Save"})]})]})}):null,o.jsx(pn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!te||h?o.jsx(dt,{text:"Loading form fields"}):V&&!Z.length?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:V}):o.jsxs("div",{className:"ca-form-fields",children:[V?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:V}):null,o.jsx(fm,{fields:j,disableAdd:z||$,disableAddHint:z?"Resolve duplicate field first":$?wi(Z):void 0,onAddField:x=>u.current?.({...x})}),o.jsx("div",{className:"ca-settings-card__divider"}),o.jsx(ul,{initialFields:Z,addExternalFieldRef:u,onChange:f,fieldTypeOptions:T,fieldAccessOptions:D,hideForOptions:B,onSave:p,onDelete:g})]})})]})}function Sl({label:e="Active",checked:t,onChange:n,disabled:r=!1,className:a=""}){return o.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[o.jsx(ei,{children:e}),o.jsx(Gn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function vl({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=et();return o.jsxs("select",{...r,className:"review-control",value:t??"",onChange:s=>n(s.target.value),children:[o.jsx("option",{value:"",children:a("Select Store")}),e.map(s=>o.jsx("option",{value:s.id,children:s.name??s.label??String(s.id)},s.id))]})}const Am=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function $a(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function Tm(e){return e?e.type&&e.type.startsWith("image/")?!0:Am.test(e.name||""):!1}function Lm(e){return`${e.name}-${e.size}-${e.lastModified}`}function dr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:s=!1,disabled:i=!1,accept:l}){const c=$a(n,a),d=S.useMemo(()=>$a(n,a).map((u,f)=>{const p=Tm(u);return{key:`${Lm(u)}-${f}`,name:u.name,isImage:p,url:p?URL.createObjectURL(u):""}}),[n,a]);return S.useEffect(()=>()=>{d.forEach(u=>{u.url&&URL.revokeObjectURL(u.url)})},[d]),o.jsxs("div",{className:"review-file-field",children:[o.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:l,multiple:a,required:!!s&&c.length===0,disabled:i,onChange:u=>{const f=Array.from(u.target.files||[]);if(!a){r(f[0]||"");return}const p=$a(n,!0);r([...p,...f]),u.target.value=""}}),d.length?o.jsx("div",{className:"review-file-preview",children:o.jsx("div",{className:"review-file-preview__images",children:d.map((u,f)=>o.jsxs("div",{className:"review-file-preview__item",children:[u.isImage?o.jsx("img",{className:"review-file-preview__thumb",src:u.url,alt:u.name,title:u.name}):o.jsx("span",{className:"review-file-preview__name",children:u.name}),o.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${u.name}`,onClick:()=>{r(a?c.filter((p,g)=>g!==f):"")},children:"×"})]},u.key))})}):null]})}const Fm=new Set(["select","radio","checkbox"]);function wl(e){return String(e||"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"")}function ft(e){return String(e.label||e.fieldLabel||e.fieldName||e.name||"").trim()}function Ba(e){return`review-${e.id??e.fieldKey??(wl(ft(e))||"field")}`}function Cl(e,t,n){return n===0?e:`${e}-${wl(t)||n}`}function ja(e){const t=String(e.fieldType||"").toLowerCase(),n=String(e.fieldKey||ft(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 Nl(e){return Fm.has(e)}function Im(e){return e==="textarea"||e==="radio"||e==="checkbox"}function Om(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function _l(e){return String(e||"").replace(/\d/g,"")}function El(e){return String(e||"").replace(/[^\d]/g,"")}function yn(e,t){const n=String(ft(e)||"value").toLowerCase();return t==="date"?"mm/dd/yyyy":t==="select"?`Select ${n}`:t==="email"?"Enter email":`Enter ${n}`}function bn(e){return String(e.fieldKey||e.id||ft(e)||Ba(e))}function Al(e,t=[]){const n=String(e.dependsOn||"").trim();return n&&t.find(r=>{const a=ft(r),s=String(r.fieldKey||"");return a===n||s===n})||null}function Tl(e,t=[],n={}){const r=e.options||[],a=Al(e,t);if(!a)return r;const s=e.parentMappings||{};if(!r.some(c=>!!s[c]))return r;const l=String(n[bn(a)]||"").trim();return l?r.filter(c=>String(s[c]||"")===l):r}function Ll(e){return e==="checkbox"||e==="images"?[]:""}function km({question:e,options:t,value:n,onChange:r,storeList:a}){const s=Ba(e),i=ja(e),l=n??Ll(i),c={id:s,name:String(e.fieldKey||ft(e)||s),required:!!e.required};if(Xe(e)&&Array.isArray(a))return o.jsx(vl,{...c,storeList:a,value:l,onChange:r});if(i==="radio")return o.jsx("div",{className:"review-options review-options--inline",children:t.map((d,u)=>{const f=Cl(s,d,u);return o.jsxs("label",{className:"review-option",htmlFor:f,children:[o.jsx("input",{...c,id:f,type:"radio",value:d,checked:l===d,onChange:p=>r(p.target.value)}),o.jsx("span",{children:d})]},d)})});if(i==="checkbox"){const d=Array.isArray(l)?l:[];return o.jsx("div",{className:"review-options review-options--inline",children:t.map((u,f)=>{const p=Cl(s,u,f);return o.jsxs("label",{className:"review-option",htmlFor:p,children:[o.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:u,checked:d.includes(u),required:!1,onChange:g=>r(g.target.checked?[...d,u]:d.filter(v=>v!==u))}),o.jsx("span",{children:u})]},u)})})}return i==="textarea"?o.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:yn(e,i),value:l,onChange:d=>r(d.target.value)}):i==="select"?o.jsxs("select",{...c,className:"review-control",value:l,onChange:d=>r(d.target.value),children:[o.jsx("option",{value:"",children:yn(e,i)}),t.map(d=>o.jsx("option",{value:d,children:d},d))]}):i==="file"?o.jsx(dr,{...c,value:l,onChange:r,multiple:!0}):i==="images"?o.jsx(dr,{...c,value:l,onChange:r,multiple:!0}):i==="number"?o.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:yn(e,i),value:l,onChange:d=>r(El(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(El(u)))}}):Om(e)?o.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:yn(e,i),value:l,onChange:d=>r(_l(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(_l(u)))}}):o.jsx("input",{...c,className:"review-control",type:i,placeholder:yn(e,i),value:l,onChange:d=>r(d.target.value)})}function Dm({fields:e=[],storeList:t}){const{fieldLabel:n}=et(),[r,a]=S.useState({}),s=(i,l)=>{const c=bn(i);a(d=>{const u={...d,[c]:l};return e.forEach(f=>{const p=Al(f,e);if(!p||bn(p)!==c)return;const g=ja(f);if(!Nl(g))return;const v=Tl(f,e,u),h=bn(f),m=u[h];Array.isArray(m)?u[h]=m.filter(y=>v.includes(y)):m&&!v.includes(m)&&(u[h]="")}),u})};return e.length?o.jsx("div",{className:"review-form-card",children:o.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:i=>i.preventDefault(),children:o.jsx("div",{className:"review-form-grid",children:e.map(i=>{const l=ja(i),c=Ba(i),d=Nl(l)?Tl(i,e,r):[];return o.jsxs("div",{className:`review-question${Im(l)?" review-question--wide":""}`,children:[o.jsxs("label",{className:"review-label",htmlFor:c,children:[n(i)||"Untitled field",i.required?o.jsx("span",{className:"review-required",children:"*"}):null]}),o.jsx(km,{storeList:t,question:i,options:d,value:r[bn(i)]??Ll(l),onChange:u=>s(i,u)})]},i.id??i.fieldKey??ft(i))})})})}):o.jsx("p",{className:"review-empty",children:"No form fields added"})}const xm={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"},Mm={BOTH:"Both",USER:"User",ADMIN:"Admin"};function Pm(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function Um(e){return[...new Set(e.filter(Boolean))]}function Va(e){return typeof e=="string"?e:e?.label??e?.name??""}function qa(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 $m(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Bm(e,t=[]){if(!e)return"";const n=t.map(Va).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>qa(s)===e||qa(s)===qa(e))||e}function jm(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(s=>s.id===n.dependsOnFieldId||n.dependsOnFieldKey&&s.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:ga(n.fieldType,xm,n.fieldKey),required:!!n.required,fieldAccess:Mm[n.fieldAccess]??n.fieldAccess??"",hideFor:Um([...Array.isArray(n.hideFor)?n.hideFor:[],Pm(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(Va).filter(Boolean),parentMappings:Object.fromEntries(r.map(s=>{const i=Va(s),l=$m(s);return!i||!l?null:[i,Bm(l,a?.options?.values??[])]}).filter(Boolean))}})}function Vm({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=X.useDispatch(),s=X.useSelector(L=>L.appDetails?.id),i=X.useSelector(L=>L.complaintAppComplaint.formFields.data),l=X.useSelector(L=>L.complaintAppComplaint.formFields.isLoading),c=X.useSelector(L=>L.complaintAppComplaint.formFields.error),d=X.useSelector(L=>L.createComplaint?.isActive),u=X.useSelector(L=>L.createComplaint?.activeComplaintTypeId),f=X.useSelector(L=>L.createComplaint?.isUpdatingActive),p=X.useSelector(L=>L.createComplaint?.activeError),g=X.useSelector(L=>L.complaintType?.selected),v=X.useSelector(L=>L.complaintType?.complaintList??[]),h=X.useSelector(L=>L.appDetails?.details?.currentUser),m=S.useMemo(()=>jm(i),[i]),y=S.useMemo(()=>s==null?null:g&&String(g.id??g._id)===String(s)?g:v.find(L=>String(L?.id??L?._id)===String(s))??null,[v,s,g]),C=y!=null&&(y.isActive!=null||y.active!=null)?!!(y.isActive??y.active):null,E=String(u)===String(s)?!!d:C??!0,N=ta(y,h);S.useEffect(()=>{s&&a(xe(s))},[s,a]);const O=L=>{!s||f||!N||a(cn({id:s,isActive:L}))};return o.jsxs(o.Fragment,{children:[o.jsx(mn,{...n,steps:je,showSaveButton:!1,nextLabel:"Publish",extraActions:o.jsx(Sl,{label:"Active",checked:E,disabled:!s||f||!N,onChange:O}),onNext:()=>{e?.(),n.onNext?.()}}),p?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,o.jsx(pn,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:o.jsx("div",{className:"ca-review",children:o.jsx("section",{className:"ca-review__block ca-review__block--last",children:l?o.jsx(dt,{text:"Loading form fields"}):c&&!m.length?o.jsx("p",{className:"ca-body",children:c}):o.jsx(Dm,{fields:m,storeList:r})})})})]})}function qm(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>je.length?je.length:Math.floor(t)}function Wm(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function Fl({title:e="Complaint Management Settings",onPublish:t,onStepChange:n,onSaveDraft:r,roleList:a=[],userList:s=[],storeList:i,showSaveButton:l=!0,showNextButton:c=!0}){const d=We(),u=X.useDispatch(),{systemId:f}=qt(),[p,g]=Ns(),v=qm(p.get("step")||1),h=Wm(p.get("substep")||1),m=!!f&&f!=="new",[y,C]=S.useState(!1);S.useEffect(()=>{if(!m)return;let j=!1;const z=$=>{const V=$?.data??$;return Array.isArray(V)?V:Array.isArray(V?.data)?V.data:[]};return Promise.all([u(Je(f)).unwrap(),u(xe(f)).unwrap()]).then(([$,V])=>{j||C(z($).length>0&&z(V).length>0)}).catch(()=>{j||C(!1)}),()=>{j=!0}},[u,m,f]);const E=m&&y;S.useEffect(()=>{f&&u(lt(f)),u(_t({data:m}))},[u,m,f]),S.useEffect(()=>{if(!p.get("step")){const j=new URLSearchParams(p);j.set("step","1"),g(j,{replace:!0})}},[p,g]);const N=S.useMemo(()=>je.find(j=>j.id===v)||je[0],[v]),O=S.useCallback((j,z)=>{const $=new URLSearchParams(p);$.set("step",String(j)),j===4?$.set("substep",String(z??(j===v?h:1))):$.delete("substep"),g($,{replace:!1}),n?.({systemId:f,step:j,substep:z})},[p,g,n,f,v,h]),L=()=>{if(v<je.length){O(v+1,1);return}d("/")},H=j=>{O(4,j)},te=()=>{t?.({systemId:f,step:v})},Z={currentStep:v,allStepsUnlocked:E,onStepClick:j=>O(j,j===4?1:void 0),showSaveButton:l,showNextButton:c,onSaveDraft:()=>r?.({systemId:f,step:v}),onNext:L,className:"ca-settings-page__stepper"};return o.jsx(Wi,{children:o.jsxs("div",{className:"ca-settings-page",children:[o.jsxs("div",{className:"ca-settings-page__header",children:[o.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:o.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:o.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsx(ca,{children:e})]}),v===1?o.jsx(Jh,{stepMeta:N,stepperProps:Z,roleList:a,userList:s}):null,v===2?o.jsx(sm,{onNext:L,stepMeta:N,roleList:a,userList:s,substep:h,onSubstepChange:H,stepperProps:Z}):null,v===3?o.jsx(Em,{stepMeta:N,stepperProps:Z}):null,v===4?o.jsx(Vm,{storeList:i,onPublish:te,stepMeta:N,stepperProps:Z}):null]})},f||"new")}const zm=["January","February","March","April","May","June","July","August","September","October","November","December"];function Hm(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()} ${zm[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function Km(){const e=We(),t=X.useSelector(u=>u.status?.complaintSummary??null),n=t?.totalComplaints??0,r=t?.totalComplaints??0,a=Hm(t?.lastSubmittedAt),s=X.useSelector(u=>u.appDetails?.id),i=X.useSelector(u=>u.complaintType?.selected??null),l=i?.id??i?._id,d=l==null||s==null||String(l)===String(s)?i?.name??i?.complaintTypeName??i?.title??"":"";return o.jsxs("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:[o.jsxs("div",{className:"ca-query-details__heading",children:[o.jsxs("div",{className:"ca-query-details__title-row",children:[o.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:o.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:o.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:d||"Complaint Management"})]}),o.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",n??0]})]}),o.jsxs("div",{className:"ca-query-details__summary",children:[o.jsxs("div",{className:"ca-query-details__card",children:[o.jsx("span",{className:"ca-query-details__label",children:"Total Complaints"}),o.jsx("strong",{className:"ca-query-details__value",children:r??0})]}),o.jsxs("div",{className:"ca-query-details__card",children:[o.jsx("span",{className:"ca-query-details__label",children:"Last Complaint Submitted Date"}),o.jsx("strong",{className:"ca-query-details__value",children:a||"NA"})]})]})]})}function Il({currentPage:e,totalItems:t,itemsPerPage:n,onPageChange:r,onItemsPerPageChange:a,selectOptions:s=["5","10","15","20","25"],totalPages:i,disabled:l=!1}){if(t<=0)return null;const c=(e-1)*n+1,d=Math.min(e*n,t),u=e<=1,f=e>=i;return o.jsxs("div",{className:`ca-custom-pagination${l?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[o.jsxs("label",{className:"ca-custom-pagination__page-size",children:[o.jsx("span",{children:"Results per page:"}),o.jsx("select",{className:"ca-custom-pagination__select",value:String(n),onChange:p=>a?.(Number(p.target.value)),disabled:l,"aria-label":"Results per page",children:s.map(p=>o.jsx("option",{value:p,children:p},p))})]}),o.jsxs("div",{className:"ca-custom-pagination__navigation",children:[o.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(1),disabled:l||u,"aria-label":"First page",children:o.jsx(Kp,{size:16,"aria-hidden":"true"})}),o.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e-1),disabled:l||u,"aria-label":"Previous page",children:o.jsx(Hp,{size:16,"aria-hidden":"true"})}),o.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),o.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e+1),disabled:l||f,"aria-label":"Next page",children:o.jsx(ha,{size:16,"aria-hidden":"true"})}),o.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(i),disabled:l||f,"aria-label":"Last page",children:o.jsx(Yp,{size:16,"aria-hidden":"true"})})]})]})}function Ym({type:e}){return e==="error"?o.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[o.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),o.jsx("path",{d:"M12 7.5v5.5M12 16.2v.1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):o.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[o.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),o.jsx("path",{d:"M8 12.5l2.8 2.8L16.2 9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Gm({id:e,message:t,type:n="success",onDismiss:r}){return S.useEffect(()=>{const a=setTimeout(()=>r(e),3500);return()=>clearTimeout(a)},[e,r]),o.jsxs("div",{className:`ca-toast ca-toast--${n}`,role:"status",children:[o.jsx("span",{className:"ca-toast__icon",children:o.jsx(Ym,{type:n})}),o.jsxs("div",{className:"ca-toast__content",children:[o.jsx("div",{className:"ca-toast__title",children:n==="error"?"Error":"Success"}),o.jsx("div",{className:"ca-toast__message",children:t})]}),o.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>r(e),children:o.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:o.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Jm({toasts:e=[],onDismiss:t}){return e.length?o.jsx("div",{className:"ca-toast-container",children:e.map(n=>o.jsx(Gm,{...n,onDismiss:t},n.id))}):null}const Zm=["Open","Done"];function Ol({selectedStatus:e,statusNames:t=[],onStatusChange:n,onOpenDateFilter:r,hasDateFilter:a=!1,onDownloadReport:s,isDownloadingReport:i=!1,complaintTypeId:l}){return o.jsxs("div",{className:"ca-complaint-table__toolbar",children:[o.jsxs("div",{className:"ca-complaint-table__filters",children:[o.jsxs("label",{className:"ca-complaint-table__filter",children:[o.jsx(Zp,{size:14,"aria-hidden":"true"}),o.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),o.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:c=>n?.(c.target.value),children:[o.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:Zm).map(c=>o.jsx("option",{value:c,children:Re(c)},c))]})]}),o.jsx("button",{type:"button",className:`ca-complaint-table__sort${a?" ca-complaint-table__sort--active":""}`,"aria-label":"Filter by date",title:"Filter by date",onClick:r,children:o.jsx(Xp,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),o.jsx("div",{className:"ca-complaint-table__actions",children:o.jsx(we,{variant:"outline",size:"sm",startIcon:o.jsx(Gp,{size:14}),onClick:s,disabled:i||!l,children:"Download Report"})})]})}const Xm=[{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"}],kl=e=>String(e).padStart(2,"0"),Fe=e=>`${e.getFullYear()}-${kl(e.getMonth()+1)}-${kl(e.getDate())}`,Sn=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function Qm(e,t="",n="",r=new Date){const a=new Date(r.getFullYear(),r.getMonth(),r.getDate()),s=(a.getDay()+6)%7,i=Sn(a,-s);switch(e){case"today":return{fromDate:Fe(a),toDate:Fe(a)};case"yesterday":return{fromDate:Fe(Sn(a,-1)),toDate:Fe(Sn(a,-1))};case"lastWeek":return{fromDate:Fe(Sn(i,-7)),toDate:Fe(Sn(i,-1))};case"wtd":return{fromDate:Fe(i),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 Rm(e){if(!e?.preset)return{};const t=Qm(e.preset,e.from,e.to);return t?{...t}:{}}const eg=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function tg({initial:e,onApply:t,onReset:n,onClose:r}){const[a,s]=S.useState(e?.field||"updated"),[i,l]=S.useState(e?.preset||""),[c,d]=S.useState(e?.from||""),[u,f]=S.useState(e?.to||""),p=i==="custom"&&(!c||!u||c>u),g=!!i&&!p;return o.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:o.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[o.jsxs("div",{className:"ca-date-filter__header",children:[o.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),o.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:r,children:o.jsx(Rp,{size:18})})]}),o.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:eg.map(v=>o.jsx("button",{type:"button",className:`ca-date-filter__tab${a===v.value?" ca-date-filter__tab--active":""}`,onClick:()=>s(v.value),children:v.label},v.value))}),o.jsx("div",{className:"ca-date-filter__list",children:Xm.map(v=>o.jsxs("label",{className:`ca-date-filter__option${i===v.value?" ca-date-filter__option--active":""}`,children:[o.jsx("input",{type:"radio",name:"complaint-date-preset",checked:i===v.value,onChange:()=>l(v.value)}),o.jsx("span",{children:v.label})]},v.value))}),i==="custom"?o.jsxs("div",{className:"ca-date-filter__custom",children:[o.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),o.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:u||void 0,onChange:v=>d(v.target.value)}),o.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),o.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:u,min:c||void 0,onChange:v=>f(v.target.value)})]}):null,o.jsxs("div",{className:"ca-confirm-modal__actions",children:[o.jsx(we,{variant:"outline",onClick:n,children:"Reset"}),o.jsx(we,{onClick:()=>t({field:a,preset:i,from:c,to:u}),disabled:!g,children:"Apply"})]})]})})}function ng({open:e,initial:t,onApply:n,onReset:r,onClose:a}){return e?o.jsx(tg,{initial:t,onApply:n,onReset:r,onClose:a}):null}function Wa({text:e="No data"}){return o.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const rg=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function vn(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(0,n):t}function ur(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(n+2):t}const ag=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function fr(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(ag).map(r=>r.trim()).filter(Boolean):[n])}function sg(e){const t=fr(e);return t.length>0&&t.every(n=>typeof n=="string"&&rg.test(n))}function za(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||sg(t)}function og(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const s=r[a.key]??"-";za(a,s)&&fr(s).forEach(i=>{typeof i=="string"&&n.add(vn(i))})})}),Array.from(n)}const ig=["Open","Done"],Ha=["Level 1","Level 2","Level 3"],Dl=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function Ka(e,t=7){const n=String(e||""),r=n.lastIndexOf("."),a=r>0?n.slice(0,r):n,s=r>0?n.slice(r):"";return a.length>t?`${a.slice(0,t)}...${s}`:n}function lg({value:e,urlMap:t={}}){const n=S.useMemo(()=>fr(e),[e]),[r,a]=S.useState(null);if(!n.length)return"-";const s=n.filter(p=>typeof p=="string"&&Dl.test(vn(p))),i=n.filter(p=>typeof p=="string"&&!Dl.test(vn(p))).map(p=>({name:ur(p),url:t[vn(p)]})),l=s.map(p=>({name:ur(p),url:t[vn(p)]})).filter(p=>p.url),c=l[0],d=()=>a(null),u=()=>a(p=>p>0?p-1:l.length-1),f=()=>a(p=>p<l.length-1?p+1:0);return o.jsxs(o.Fragment,{children:[o.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?o.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:o.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,i.length?i.map(p=>{const g=String(p.name).split("/").pop();return p.url?o.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",title:g,children:Ka(g)},p.name):o.jsx("span",{className:"ca-complaint-table__attachment-name",title:g,children:Ka(g)},p.name)}):null,!c&&!i.length?n.map(p=>o.jsx("span",{className:"ca-complaint-table__attachment-name",title:ur(p),children:Ka(ur(p))},String(p))):null,l.length>1?o.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${l.length-1} more images`,children:["+",l.length-1]}):null]}),r!=null&&l.length?o.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[o.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),o.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:u,"aria-label":"Previous image",children:"‹"}),o.jsx("img",{className:"ca-complaint-table__preview-image",src:l[r].url,alt:l[r].name}),o.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:f,"aria-label":"Next image",children:"›"}),o.jsxs("span",{className:"ca-complaint-table__preview-count",children:[r+1," / ",l.length]})]}):null]})}function xl({value:e,options:t,fallbackOptions:n,ariaLabel:r,selectKey:a,onChange:s,disabled:i=!1}){const c=(t.length?t:n.map(g=>({value:g,label:g}))).map(g=>g&&typeof g=="object"?{value:String(g.value??g.id??""),label:g.label??g.name??String(g.value??g.id??""),disabled:!!g.disabled}:{value:String(g),label:String(g),disabled:!1}).filter(g=>g.value||g.label),d=e!=null&&e!==""&&e!=="-"?String(e):"",u=c.map(g=>g.value),f=d&&!u.includes(d)?[{value:d,label:d,disabled:!1},...c]:c,p=f.some(g=>g.value===d)?d:f[0]?.value??"";return o.jsx("select",{className:"ca-complaint-table__select","aria-label":r,value:p,disabled:i,title:i?"You do not have permission to change this":void 0,onChange:g=>s?.(g.target.value),children:f.map(g=>o.jsx("option",{value:g.value,disabled:g.disabled,children:g.label},g.value))},a)}function Ml(e,t){return t==null||t===""||!Array.isArray(e)?!1:e.some(n=>n&&typeof n=="object"?String(n.value??n.id)===String(t):String(n)===String(t))}function pr(e,t=!1){const n=[];return!t&&e==="description"&&n.push("ca-complaint-table__desc"),e==="status"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--status"),e==="escalationTo"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--escalation"),n.length?n.join(" "):void 0}function Pl(e,t,n,r,a={}){const s=t[e.key]??"-",i=a.statusOptions??n,l=a.escalationOptions??r;return e.key==="status"?o.jsx(xl,{value:Ml(i,t.statusId)?t.statusId:s,options:i,fallbackOptions:ig,ariaLabel:"Status",disabled:a.canChangeStatus===!1,selectKey:`status-${t.id}`,onChange:a.onStatusChange}):e.key==="escalationTo"?o.jsx(xl,{value:Ml(l,t.currentStepId)?t.currentStepId:s,options:l,fallbackOptions:Ha,ariaLabel:"Escalation to",disabled:a.canChangeEscalation===!1,selectKey:`escalation-${t.id}`,onChange:a.onEscalationChange}):za(e,s)&&fr(s).some(c=>typeof c=="string")?o.jsx(lg,{value:s,urlMap:a.attachmentUrlMap}):s}function Ul({scrollFields:e,stickyFields:t,tableRows:n,fieldLabel:r,statusNames:a,getCellContext:s,page:i,itemsPerPage:l}){return o.jsxs("div",{className:"ca-complaint-table__scroll",children:[o.jsxs("table",{children:[o.jsx("thead",{children:o.jsxs("tr",{children:[o.jsx("th",{scope:"col",children:"#"}),e.map(c=>o.jsx("th",{scope:"col",className:pr(c.key,!0),children:r(c)},c.id)),o.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(c=>o.jsx("th",{scope:"col",className:pr(c.key,!0),children:r(c)},c.id))]})}),o.jsx("tbody",{children:n.map((c,d)=>o.jsxs("tr",{children:[o.jsx("td",{children:(i-1)*l+d+1}),e.map(u=>o.jsx("td",{className:pr(u.key),children:Pl(u,c,a,Ha,s(c))},`${c.id??d}-${u.id}`)),o.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(u=>o.jsx("td",{className:pr(u.key),children:Pl(u,c,a,Ha,s(c))},`${c.id??d}-${u.id}`))]},c.id??d))})]}),n.length?null:o.jsx("div",{className:"ca-complaint-table__empty-overlay",children:o.jsx(Wa,{text:"No Complaint"})})]})}function cg(e,t){return e.map(n=>{const r=Oi(n.name),s=!(String(n.id)===String(t.statusId))&&r&&!t.canResolve;return{value:n.id,label:n.name,disabled:s}}).filter(n=>n.label)}function dg(e,t){const n=[...e].sort((i,l)=>(i.levelNo??0)-(l.levelNo??0)),r=n.findIndex(i=>String(i.id)===String(t?.currentStepId));if(r<0)return[];const a=Number(n[r].levelNo??r+1),s=new Set([a]);return s.add(a+1),a>1&&rr(n[r].canReassign)&&s.add(a-1),n.filter((i,l)=>s.has(Number(i.levelNo??l+1))).map(i=>({value:i.id,label:i.levelNo!=null?`Level ${i.levelNo}`:String(i.name||i.id),disabled:!1})).filter(i=>i.label)}async function ug({complaintTypeId:e,status:t,dateParams:n={}}){const r=await le.get(oa,{params:{...n,complaintTypeId:e,page:1,limit:mh,...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return xi(r.data)}function fg(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 $l(e,t=[],n=[],r=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const s=t.find(i=>String(i.id)===String(a));return!s||!Bl(s,n,r)}function pg(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 Bl(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&pg(e).includes(Number(n))}function hg(e,t=[],n=[],r=null){if(fn(e?.status))return{canChangeStatus:!1,canChangeEscalation:!1};const a=t.find(i=>String(i.id)===String(e?.currentStepId));if(!a)return{canChangeStatus:!0,canChangeEscalation:!0};const s=Bl(a,n,r);return{canChangeStatus:s,canChangeEscalation:s}}function mg(){const{fieldLabel:e}=et(),t=X.useDispatch(),n=We(),{complaintTypeId:r}=qt(),[a]=Ns(),s=X.useSelector(M=>M.appDetails?.id),i=Ch(r,a.get("complaintTypeId"),s,wh()),{list:l=[],isLoading:c=!1,error:d=null,hasLoaded:u=!1,requestedComplaintTypeId:f=null,meta:p=null}=X.useSelector(M=>M.complaintManagement??{}),g=X.useSelector(M=>M.status?.list??[]),v=X.useSelector(M=>M.changeStatus?.error??null),h=X.useSelector(M=>M.changeStatus?.updatingId??null),m=X.useSelector(M=>M.workflow?.workflowSteps),y=X.useSelector(M=>M.appDetails?.details?.currentUser),C=X.useSelector(M=>M.appDetails?.details?.storeList),E=S.useMemo(()=>Ph(C),[C]),N=S.useMemo(()=>g.map(M=>M.name).filter(Boolean),[g]),O=S.useMemo(()=>Array.isArray(m)?m:[],[m]),L=S.useMemo(()=>fg(y),[y]),H=y?.id??y?.userId??null,te=X.useSelector(M=>{const R=M.complaintType?.selected,oe=Array.isArray(R?.accesses)?R.accesses.map(ce=>ce?.role?.id??ce?.role?.roleId??ce?.roleId).map(Number).filter(Number.isFinite):[];return oe.length?oe:(Array.isArray(R?.roleIds)?R.roleIds:Array.isArray(R?.roles)?R.roles:[]).map(ce=>Number(ce?.id??ce?.roleId??ce?.role_id??ce)).filter(ce=>Number.isFinite(ce))}),Z=X.useSelector(M=>{const R=M.complaintType?.selected;return R?.isActive!=null?!!R.isActive:R?.active!=null?!!R.active:!0}),[j,z]=S.useState({complaintTypeId:null,status:"all"}),[$,V]=S.useState({complaintTypeId:null,direction:un}),[T,D]=S.useState(1),[B,Y]=S.useState(ph),[A,F]=S.useState([]),[w,P]=S.useState({}),[x,q]=S.useState(!1),[G,se]=S.useState(null),[I,K]=S.useState(null),[_,J]=S.useState(""),[Q,re]=S.useState([]),[he,de]=S.useState(!1),[me,ge]=S.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),ee=String(me.complaintTypeId)===String(i)&&me.preset?me:null,ye=S.useMemo(()=>Rm(ee),[ee]),Ce=String(j.complaintTypeId)===String(i)?j.status:"all",Ie=String($.complaintTypeId)===String(i)?$.direction:un,wn=(M,R="success")=>{const oe=`${Date.now()}-${Math.random()}`;re(fe=>[...fe,{id:oe,message:M,type:R}])},Za=M=>re(R=>R.filter(oe=>oe.id!==M));S.useEffect(()=>{!i||r||(Ii(i),n(`/complaintmanagement/${i}`,{replace:!0}))},[i,n,r]),S.useEffect(()=>{if(!i||!r)return;Ii(i),t(lt(i)),t(Bo()),t(Wo()),t(Sp());const M=t(ln(i)),R=t(Tt(i)),oe=t(Je(i)),fe=t(xe(i)),ce=t(Ge(i));return fe.unwrap().then(Oe=>F(Sh(Oe))).catch(()=>F([])),()=>{M.abort?.(),R.abort?.(),oe.abort?.(),fe.abort?.(),ce.abort?.()}},[i,t,r]),S.useEffect(()=>{if(!i||!r)return;const M=t(ct({complaintTypeId:i,page:T,limit:B,status:Ce==="all"?void 0:Ce,...ye}));return()=>M.abort?.()},[i,ye,t,B,T,r,Ce]);const pt=te.some(M=>L.includes(M)),gr=S.useMemo(()=>f!=null&&i!=null&&String(f)!==String(i)?[]:l.map(M=>({...Bi(ki(M,g,O),E),_fields:M?.formField||[]})),[i,l,f,g,O,E]),Xa=S.useMemo(()=>Di(gr,A).filter(M=>$l(M,O,L,H)),[gr,A,O,L,H]),Kg=Li(Xa),Qa=S.useMemo(()=>yh(gr,Ie),[gr,Ie]),Cn=Qa.map(({_fields:M,...R})=>R),Ra=S.useMemo(()=>og(Xa,Qa),[Xa,Qa]),Yg=Ra.every(M=>Object.prototype.hasOwnProperty.call(w,M));S.useEffect(()=>{const M=Ra.filter(oe=>!Object.prototype.hasOwnProperty.call(w,oe));if(!M.length)return;let R=!1;return Promise.all(M.map(async oe=>{try{const fe=await t(Kn({params:{path:oe}})).unwrap();return[oe,fe]}catch{return[oe,""]}})).then(oe=>{R||P(fe=>({...fe,...Object.fromEntries(oe)}))}),()=>{R=!0}},[Ra,w,t]);const yr=vh(p,T,B,Cn.length),Gl=!!(i&&!d&&(!Cn.length&&(c||!u)||Cn.length>0&&!Yg)),Gg=M=>{D(1),z({complaintTypeId:i,status:M}),i&&t(ct({complaintTypeId:i,page:1,limit:B,status:M==="all"?void 0:M,...ye}))},Jg=M=>{M>=1&&M<=yr.totalPages&&M!==T&&D(M)},Zg=M=>{const R=Number(M);!Number.isFinite(R)||R<=0||R===B||(Y(R),D(1))},Xg=()=>V({complaintTypeId:i,direction:bh(Ie)}),Qg=M=>{D(1),ge({complaintTypeId:i,...M}),de(!1)},Rg=()=>{D(1),ge({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),de(!1)},e0=()=>{i&&n(`/complaintmanagement/new/${i}`)},t0=(M,R)=>{if(M?.id==null||fn(M.status)||h!=null&&String(h)===String(M.id)||String(R)===String(M.statusId)||String(R)===String(M.status))return;const oe=g.find(ce=>String(ce.id)===String(R)||String(ce.name)===String(R));oe?.id==null||Oi(oe.name)&&!M.canResolve||(J(""),K({type:"status",row:M,statusId:oe.id,currentStepId:M.currentStepId,fromLabel:M.status||"—",toLabel:oe.name}))},n0=(M,R)=>{if(M?.id==null||fn(M.status)||h!=null&&String(h)===String(M.id)||String(R)===String(M.currentStepId)||String(R)===String(M.escalationTo))return;const oe=O.find(tt=>String(tt.id)===String(R)||`Level ${tt.levelNo}`===String(R));if(oe?.id==null)return;const fe=[...O].sort((tt,o0)=>(tt.levelNo??0)-(o0.levelNo??0)),ce=fe.findIndex(tt=>String(tt.id)===String(M.currentStepId)),Oe=fe.findIndex(tt=>String(tt.id)===String(oe.id));if(ce<0||Oe<0)return;const Me=Number(fe[ce].levelNo??ce+1),Pe=Number(fe[Oe].levelNo??Oe+1);Math.abs(Pe-Me)===1&&(Pe<Me&&!rr(fe[ce].canReassign)||(J(""),K({type:"escalation",row:M,statusId:M.statusId,currentStepId:oe.id,fromLabel:M.escalationTo||"—",toLabel:oe.levelNo!=null?`Level ${oe.levelNo}`:String(oe.name||oe.id)})))},r0=()=>{if(!I)return;const{row:M,statusId:R,currentStepId:oe,type:fe,fromLabel:ce,toLabel:Oe}=I;t(on({id:M.id,statusId:R,currentStepId:oe,status:fe==="status"?Oe:void 0,remark:_,onSuccess:()=>{wn(fe==="status"?`Successfully changed Status from ${ce} to ${Oe}`:`Successfully changed Escalation from ${ce} to ${Oe}`,"success"),fe==="escalation"&&i&&(t(ct({complaintTypeId:i,page:T,limit:B,...ye})),t(Tt(i)))},onFail:Me=>{const Pe=Me?.response?.data?.message??Me?.message??"Failed to update complaint";wn(Pe,"error"),i&&(t(ct({complaintTypeId:i,page:T,limit:B,status:Ce==="all"?void 0:Ce})),t(Tt(i)))}})),K(null),J("")},a0=()=>{K(null),J("")},s0=M=>({...hg(M,O,L,H),statusOptions:cg(g,M),escalationOptions:dg(O,M),onStatusChange:R=>t0(M,R),onEscalationChange:R=>n0(M,R),attachmentUrlMap:w});return{complaintTypeId:i,canCreateComplaint:pt,isComplaintTypeActive:Z,statusNames:N,selectedStatus:Ce,selectedUpdatedAtSort:Ie,isDownloadingReport:x,onStatusChange:Gg,onSortChange:Xg,dateFilter:ee,hasDateFilter:!!ee,isDateFilterOpen:he,onOpenDateFilter:()=>de(!0),onCloseDateFilter:()=>de(!1),onApplyDateFilter:Qg,onResetDateFilter:Rg,onNewComplaint:e0,onDownloadReport:async()=>{if(!(!i||x)){q(!0),se(null);try{const R=(await ug({complaintTypeId:i,status:Ce,dateParams:ye})).map(Pe=>({...Bi(ki(Pe,g,O),E),_fields:Pe?.formField||[]})),oe=Di(R,A).filter(Pe=>$l(Pe,O,L,H)),fe=Li(oe).filter(Pe=>!Ah(Pe,R,za)),ce=new Blob([Th(fe,R)],{type:"text/csv;charset=utf-8;"}),Oe=URL.createObjectURL(ce),Me=document.createElement("a");Me.href=Oe,Me.download=`complaints-report-${i}-${Date.now()}.csv`,document.body.appendChild(Me),Me.click(),document.body.removeChild(Me),URL.revokeObjectURL(Oe)}catch(M){se(M?.response?.data?.message??M?.message??"Failed to download report")}finally{q(!1)}}},error:d,downloadError:G,statusUpdateError:v,showLoading:Gl,pendingChange:I,remarkDraft:_,onRemarkDraftChange:J,onConfirmPendingChange:r0,onCancelPendingChange:a0,toasts:Q,onDismissToast:Za,tableProps:{scrollFields:Kg.filter(M=>M.key!=="status"&&M.key!=="escalationTo"),stickyFields:[_i,Ei],tableRows:Cn,fieldLabel:e,getCellContext:s0,page:T,itemsPerPage:B},paginationProps:{currentPage:T,totalItems:yr.totalItems,itemsPerPage:B,onPageChange:Jg,onItemsPerPageChange:Zg,selectOptions:hh,totalPages:yr.totalPages,disabled:Gl,hasRows:!!(yr.totalItems>0||Cn.length||T>1)}}}function gg(){const e=mg();return o.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[o.jsx(Ol,{selectedStatus:e.selectedStatus,statusNames:e.statusNames,updatedAtSortOldest:e.selectedUpdatedAtSort==="asc",onStatusChange:e.onStatusChange,onSortChange:e.onSortChange,onNewComplaint:e.onNewComplaint,onOpenDateFilter:e.onOpenDateFilter,hasDateFilter:e.hasDateFilter,onDownloadReport:e.onDownloadReport,isDownloadingReport:e.isDownloadingReport,complaintTypeId:e.complaintTypeId,canCreateComplaint:e.canCreateComplaint,isComplaintTypeActive:e.isComplaintTypeActive}),e.error?o.jsx("p",{className:"ca-body",children:e.error}):null,e.downloadError?o.jsx("p",{className:"ca-body",children:e.downloadError}):null,e.statusUpdateError?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:e.statusUpdateError}):null,e.showLoading?o.jsx(dt,{text:"Loading complaints"}):o.jsx(Ul,{...e.tableProps}),e.paginationProps.hasRows?o.jsx(Il,{...e.paginationProps}):null,e.pendingChange?o.jsxs(Fa,{open:!0,title:e.pendingChange.type==="status"?`Change status from ${Re(e.pendingChange.fromLabel)} to ${Re(e.pendingChange.toLabel)}?`:`Change escalation from ${e.pendingChange.fromLabel} to ${e.pendingChange.toLabel}?`,onPrimary:e.onConfirmPendingChange,onSecondary:e.onCancelPendingChange,primaryLabel:"Save",secondaryLabel:"Cancel",children:[o.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-remark-input",children:"Remark (optional)"}),o.jsx("textarea",{id:"ca-remark-input",className:"ca-confirm-modal__textarea",value:e.remarkDraft,onChange:t=>e.onRemarkDraftChange(t.target.value),placeholder:"Add a remark (optional)"})]}):null,o.jsx(ng,{open:e.isDateFilterOpen,initial:e.dateFilter,onApply:e.onApplyDateFilter,onReset:e.onResetDateFilter,onClose:e.onCloseDateFilter}),o.jsx(Jm,{toasts:e.toasts,onDismiss:e.onDismissToast})]})}const hr=()=>o.jsxs("main",{className:"ca-query-management-page",children:[o.jsx(Km,{}),o.jsx(gg,{})]}),yg={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 Ya(e){return typeof e=="string"?e:e?.label??""}function bg(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),s=n?.options?.values??[],i=t.find(l=>l.id===n.dependsOnFieldId||n.dependsOnFieldKey&&l.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:r,fieldKey:ne({fieldKey:a,label:r})?"status":a,fieldType:ga(n.fieldType,yg,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??i?.fieldName??n.dependsOn??"",options:s.map(Ya).filter(Boolean),parentMappings:Object.fromEntries(s.map(l=>{const c=Ya(l),d=vg(l);return!c||!d?null:[c,wg(d,i?.options?.values??[])]}).filter(Boolean))}})}function mr(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 Sg(e){if(ne(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:mr(e.label||t)}function vg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function wg(e,t=[]){if(!e)return"";const n=t.map(Ya).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>mr(s)===e||mr(s)===mr(e))||e}function Cg(e,t=[],n={}){const r=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return r;const s=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!s)return r;const i=e.parentMappings||{};if(!r.some(d=>!!i[d]))return r;const c=String(n[pe(s)]||"").trim();return c?r.filter(d=>String(i[d]||"")===c):r}function jl(e){return Pt(e)==="checkbox"}function Ng(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function _g(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function Eg(e,t,n){const r={},a=Array.isArray(t)?t[0]:t;if(!a)return r;let s=e,i=a;for(;s?.dependsOn;){const l=Ng(n,s.dependsOn);if(!l)break;const c=(s.parentMappings||{})[i];if(!c)break;r[pe(l)]=jl(l)?[c]:c,s=l,i=c}for(s=e,i=a;s;){const l=_g(n,s);if(!l)break;const c=l.parentMappings||{},d=Object.keys(c).find(u=>c[u]===i);if(!d)break;r[pe(l)]=jl(l)?[d]:d,s=l,i=d}return r}function pe(e){return String(e.fieldKey||e.id||e.label)}function Pt(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 Vl(e){return`new-query-${e.id??pe(e)}`}function ql(e){if(ne(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=Pt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function Wl(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 Ga(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 Ag(e,t,n){const r=Pt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(Lt({file:n,folder:"complaints"})).unwrap();return Ga(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const s=await e(Lt({file:a,folder:"complaints"})).unwrap();return Ga(s,a)}return a})):r==="images"&&Array.isArray(n)?await Promise.all(n.map(async s=>{if(typeof File<"u"&&s instanceof File){const i=await e(Lt({file:s,folder:"complaints"})).unwrap();return Ga(i,s)}return s})):Wl(n)}async function Tg(e=[],t={},n){const r={};for(const a of e){const s=Sg(a);s&&(r[s]=await Ag(n,a,t[pe(a)]))}return r}function zl(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function Lg(e){return/^\d+$/.test(String(e).trim())}function Fg(e=[],t={}){for(const n of e){const r=Pt(n),a=t[pe(n)],s=n.label||"This field";if(n.required&&zl(a))return`${s} is required.`;if(!zl(a)&&r==="number"&&!Lg(a))return`${s} must be a valid number.`}return""}function Ig({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:s}=et(),i=Pt(e),l=Vl(e),c=ne(e);if(Xe(e)&&Array.isArray(r))return o.jsx(vl,{id:l,name:pe(e),required:e.required,storeList:r,value:t,onChange:n});if(i==="radio")return o.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>o.jsxs("label",{className:"review-option",htmlFor:`${l}-${d}`,children:[o.jsx("input",{id:`${l}-${d}`,name:pe(e),type:"radio",value:d,checked:t===d,onChange:u=>n(u.target.value),required:e.required,disabled:c}),o.jsx("span",{children:d})]},d))});if(i==="checkbox"){const d=Array.isArray(t)?t:[];return o.jsx("div",{className:"review-options review-options--inline",children:a.map(u=>o.jsxs("label",{className:"review-option",htmlFor:`${l}-${u}`,children:[o.jsx("input",{id:`${l}-${u}`,name:`${pe(e)}[]`,type:"checkbox",value:u,checked:d.includes(u),onChange:f=>n(f.target.checked?[...d,u]:d.filter(p=>p!==u))}),o.jsx("span",{children:u})]},u))})}if(i==="textarea")return o.jsx("textarea",{id:l,name:pe(e),className:"review-control review-control--textarea",value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c});if(i==="file")return o.jsx(dr,{id:l,name:pe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(i==="images")return o.jsx(dr,{id:l,name:pe(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(i==="number")return o.jsx("input",{id:l,name:pe(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(i==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return o.jsxs("select",{id:l,name:pe(e),className:"review-control",value:t,onChange:u=>n(u.target.value),required:e.required,disabled:c,children:[c?null:o.jsxs("option",{value:"",children:["Select ",s(e)]}),d.map(u=>o.jsx("option",{value:u,children:u},u))]})}return o.jsx("input",{id:l,name:pe(e),className:"review-control",type:i,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function Hl({storeList:e}={}){const{fieldLabel:t}=et(),n=X.useDispatch(),r=We(),{complaintTypeId:a}=qt(),s=Number(a),i=Number.isFinite(s)&&s>0,[l,c]=S.useState([]),[d,u]=S.useState({}),[f,p]=S.useState(!0),[g,v]=S.useState(!1),[h,m]=S.useState(""),[y,C]=S.useState(""),[E,N]=S.useState(""),[O,L]=S.useState(""),H=X.useSelector($=>{const V=$.complaintType??{},D=(Array.isArray(V.complaintList)?V.complaintList:[]).find(B=>String(B?.id??B?._id)===String(a))??(String(V.selected?.id??V.selected?._id)===String(a)?V.selected:null);return String(D?.name??D?.code??"").trim()}),te=H||O;S.useEffect(()=>{if(!i||H)return;let $=!1;return n(Ge(s)).unwrap().then(V=>{if($)return;const T=V?.data??V;L(String(T?.name??T?.code??"").trim())}).catch(()=>{}),()=>{$=!0}},[s,H,n,i]),S.useEffect(()=>{if(!i)return;let $=!1;return n(xe(s)).unwrap().then(V=>{if($)return;const T=bg(Array.isArray(V?.data)?V.data:V);c(T),u(Object.fromEntries(T.map(D=>[pe(D),ql(D)])))}).catch(V=>{$||m(typeof V=="string"?V:V?.message||"Failed to load form fields.")}).finally(()=>{$||p(!1)}),()=>{$=!0}},[s,n,i]);const Z=S.useMemo(()=>l.length>0,[l]),j=async $=>{if($.preventDefault(),!i){m("A valid complaint type is required.");return}m(""),C(""),v(!0);const V=Fg(l,d);if(V){m(V),v(!1);return}try{const T=await Tg(l,d,n),D=l.findIndex(ne),B=l[D+1],A=(B?[].concat(Wl(d[pe(B)])).join(", ").trim():"")||te;if(!A){m("Title is required. Please fill the first field.");return}await n(Hn({complaintTypeId:s,title:A,fieldValues:T})).unwrap(),C("Query submitted successfully."),r(`/complaintmanagement/${s}/all`)}catch(T){m(typeof T=="string"?T:T?.message||"Failed to submit query.")}finally{v(!1)}},z=$=>{const V=Cg($,l,d);return o.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Pt($))?" review-question--wide":""}`,children:[o.jsxs("label",{className:"review-label",htmlFor:Vl($),children:[t($)||"Untitled field",$.required?o.jsx("span",{className:"review-required",children:"*"}):null]}),o.jsx(Ig,{storeList:e,field:$,options:V,value:d[pe($)]??ql($),onChange:T=>{ne($)||u(D=>{const B=Eg($,T,l);return{...D,[pe($)]:T,...B}})}})]},$.id??pe($))};return o.jsx("main",{className:"ca-query-management-page",children:o.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[o.jsx("div",{className:"ca-query-details__heading",children:o.jsxs("div",{className:"ca-query-details__title-row",children:[o.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>r(-1),"aria-label":"Back to Complaint Management",children:o.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:o.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),h||!i?o.jsx("div",{className:"ca-validation-toast",role:"alert",children:h||"A valid complaint type is required."}):null,f&&i?o.jsx(dt,{text:"Loading form fields"}):null,i&&!f&&Z?o.jsxs("form",{className:"review-form-card",onSubmit:j,children:[o.jsx("div",{className:"review-form-grid",children:l.map($=>o.jsx(S.Fragment,{children:ne($)?null:z($)},$.id??pe($)))}),o.jsx("div",{className:"ca-new-query__actions",children:o.jsx(we,{type:"submit",disabled:g,children:g?"Submitting...":"Submit Complaint"})}),y?o.jsx("p",{className:"ca-body",children:y}):null]}):null]})})}const Ja=[];function Og(e,t=200){const n=X.useDispatch(),r=X.useSelector(g=>g.appDetails?.details?.userList)??Ja,a=X.useSelector(g=>g.status?.list)??Ja,[s,i]=S.useState({key:null,complaints:[],error:null}),l=e==null||e===""?null:`${e}:${t}`;S.useEffect(()=>{if(e==null||e==="")return;const g=n(ln(e));return()=>g.abort?.()},[e,n]),S.useEffect(()=>{if(e==null||e==="")return;let g=!1;const v=`${e}:${t}`;return le.get(oa,{params:{complaintTypeId:e,page:1,limit:t}}).then(h=>{g||i({key:v,complaints:xi(h.data),error:null})}).catch(h=>{g||i({key:v,complaints:[],error:h?.response?.data?.message??h?.message??"Failed to load complaints"})}),()=>{g=!0}},[e,t]);const c=s.key===l,d=c?s.complaints:Ja,u=c?s.error:null,f=l!==null&&!c;return{rows:S.useMemo(()=>{const g=h=>{const m=new Date(h?.createdAt??h?.submittedAt??h?.date??0).getTime();return Number.isNaN(m)?0:m},v=h=>Number(h?.complaintId??h?.id)||0;return[...d].sort((h,m)=>g(m)-g(h)||v(m)-v(h)).map(h=>$i(h,a,r))},[d,a,r]),isLoading:f,error:u}}function kg(){const e=X.useDispatch(),t=We(),{complaintTypeId:n}=qt(),{rows:r,isLoading:a,error:s}=Og(n),i=X.useSelector(l=>{const c=l.complaintType??{};return(Array.isArray(c.complaintList)?c.complaintList:[]).find(u=>String(u?.id??u?._id)===String(n))??(String(c.selected?.id??c.selected?._id)===String(n)?c.selected:null)});return S.useEffect(()=>{!i&&n&&e(Ge(n))},[n,e,i]),o.jsx("main",{className:"ca-query-management-page",children:o.jsxs("section",{className:"ca-filler-list",children:[o.jsxs("div",{className:"ca-query-details__heading",children:[o.jsxs("div",{className:"ca-query-details__title-row",children:[o.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>t("/"),"aria-label":"Back to Complaints",children:o.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:o.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),o.jsxs("div",{children:[o.jsxs("h1",{className:"ca-query-details__title",children:[i?.name??i?.title??"Complaints",r.length?` (${r.length})`:""]}),o.jsx("p",{className:"ca-filler-card__desc",children:i?.description||"Description of the form"})]})]}),o.jsx(we,{startIcon:o.jsx(mi,{size:14}),onClick:()=>t(`/complaintmanagement/new/${n}`),disabled:i?.isActive===!1||i?.active===!1,children:"Add Complaint"})]}),s?o.jsx("p",{className:"ca-body",children:s}):null,a?o.jsx(dt,{text:"Loading complaints"}):null,!a&&!s&&!r.length?o.jsx(Wa,{text:"No Complaint"}):null,a?null:r.map(l=>o.jsx(Ci,{row:l},l.id))]})})}function Dg({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??o.jsx(ji,{...e});return o.jsxs(Wc,{children:[o.jsx(De,{path:"/",element:a}),o.jsx(De,{path:"/settings/:systemId",element:o.jsx(Fl,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),o.jsx(De,{path:"complaintmanagement",element:o.jsx(hr,{company:e.company})}),o.jsx(De,{path:"complaintmanagement/new/:complaintTypeId",element:o.jsx(Hl,{company:e.company,storeList:e.storeList})}),o.jsx(De,{path:"complaintmanagement/:complaintTypeId",element:o.jsx(hr,{company:e.company})}),o.jsx(De,{path:"complaintmanagement/:complaintTypeId/all",element:o.jsx(kg,{})}),o.jsx(De,{path:"querymanagement",element:o.jsx(hr,{company:e.company})}),o.jsx(De,{path:"querymanagement/new/:complaintTypeId",element:o.jsx(Hl,{company:e.company,storeList:e.storeList})}),o.jsx(De,{path:"querymanagement/:complaintTypeId",element:o.jsx(hr,{company:e.company})}),o.jsx(De,{path:"*",element:a})]})}function xg({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return o.jsx(Dg,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function Mg({children:e}){const{cssVars:t,darkMode:n,mode:r}=No();return o.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function Pg({basePath:e,children:t}){return mt()?t:o.jsx(ad,{basename:e,children:t})}function Ug({store:e,children:t}){return o.jsx(X.Provider,{store:e||Xo,children:t})}function $g({details:e,children:t}){const n=X.useDispatch();return S.useEffect(()=>{n(Io(e))},[n,e]),t}const Kl=[],Yl=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:s=!1,title:i,description:l,rolelist:c,roleList:d=c??Kl,userList:u=Kl,storeList:f,currentUser:p,company:g=p?.company,featureActions:v=Op,useDemoData:h=!0,createLabel:m,onCreateForm:y,onConfigure:C,onOpen:E,onTitleClick:N,onDescriptionClick:O,onSearch:L,onPublish:H,onSaveDraft:te,showSaveButton:Z,showNextButton:j,onStepChange:z,children:$})=>{const V={title:i,description:l,useDemoData:h,createLabel:m,onCreateForm:y,onConfigure:C,onOpen:E,roleList:d,userList:u,storeList:f,company:g,onTitleClick:N,onDescriptionClick:O,onSearch:L,onSaveDraft:te,showSaveButton:Z,showNextButton:j},T=S.useMemo(()=>({featureActions:v,apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:s,title:i,description:l,roleList:d,userList:u,storeList:f,currentUser:p,company:g,useDemoData:h,createLabel:m,onCreateForm:y,onConfigure:C,onOpen:E,onTitleClick:N,onDescriptionClick:O,onSearch:L,onPublish:H,onSaveDraft:te,showSaveButton:Z,showNextButton:j,onStepChange:z}),[v,e,t,r,a,s,i,l,d,u,f,p,g,h,m,y,C,E,N,O,L,H,te,Z,j,z]);return o.jsx(ol.Provider,{value:g,children:o.jsx(Co,{theme:a,darkMode:s,children:o.jsx(Ug,{store:n,children:o.jsx($g,{details:T,children:o.jsx(Mg,{children:o.jsx(go,{apiUrl:e,authToken:t,children:o.jsx(Pg,{basePath:r,children:o.jsx(xg,{pageProps:V,onPublish:H,onStepChange:z,children:$})})})})})})})})};function Bg({children:e,onClick:t,className:n="",active:r=!1}){return o.jsx("button",{type:"button",className:`ca-chip ${r?"ca-chip--active":""} ${n}`.trim(),onClick:t,children:e})}function jg({checked:e=!1,onChange:t,name:n,value:r,"aria-label":a,className:s=""}){return o.jsxs("label",{className:`ca-radio ${s}`.trim(),children:[o.jsx("input",{type:"radio",className:"ca-radio__input",name:n,value:r,checked:e,onChange:t,"aria-label":a}),o.jsx("span",{className:"ca-radio__mark"})]})}function Vg({status:e="inactive",label:t,className:n=""}){const a=String(e).toLowerCase()==="active",s=t??(a?"Active":"Inactive");return o.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${n}`.trim(),children:s})}const qg=ze.colors,Wg=ze.radii,zg=ze.spacing,Hg=ze.typography;k.AddFormButton=sl,k.AddTableCard=Zi,k.ApiProvider=go,k.BodyText=Yn,k.Button=we,k.COMPLAINT_ENDPOINTS=Bn,k.CardFooter=ri,k.CardHeader=ni,k.ChevronDownIcon=wa,k.ChevronRightIcon=Zn,k.Chip=Bg,k.CloseIcon=Ki,k.ComplaintApp=Yl,k.ComplaintManagementPage=ji,k.ComplaintSettingsPage=Fl,k.ComplaintTableGrid=Ul,k.ComplaintTableToolbar=Ol,k.CustomPagination=Il,k.DEFAULT_PAGE_DESCRIPTION=di,k.DEMO_SYSTEMS=$p,k.DataPoint=ai,k.Divider=si,k.DragHandleIcon=ll,k.EmptyState=Wa,k.FieldLabel=va,k.FormCard=dl,k.FormCardGrid=ul,k.FormField=Ve,k.FormInput=hn,k.FormSelect=_a,k.FormTextarea=Vh,k.Heading1=ca,k.Heading2=da,k.Input=Ft,k.LabelText=ei,k.LayersIcon=jh,k.LinkText=Fp,k.Loading=dt,k.PageHeader=ua,k.PlusIcon=Qo,k.Radio=jg,k.RoleMultiSelect=sr,k.SETTINGS_STEPS=je,k.SearchBar=ci,k.SearchIcon=li,k.Select=He,k.SettingsCard=pn,k.SettingsCardHeader=zi,k.SettingsWizardProvider=Wi,k.StatusBadge=Vg,k.Stepper=mn,k.SystemCard=oi,k.SystemCardGrid=ii,k.TableCard=Xi,k.TableCardGrid=rl,k.Tag=Yi,k.Textarea=Hi,k.ThemeProvider=Co,k.Toggle=Gn,k.ToggleField=Sl,k.TrashIcon=Jn,k.Typography=Ze,k.ValueText=ti,k.WORKFLOW_SUBSTEPS=Bh,k.api=le,k.appDetailsReducer=Oo,k.clearAppDetails=Vf,k.clearComplaintError=Df,k.clearId=qf,k.clearSelectedComplaintResource=xf,k.colors=qg,k.complaintReducer=Ao,k.createComplaintStore=Zo,k.darkTheme=Qt,k.deepMerge=Nt,k.default=Yl,k.defaultThemeFile=yo,k.deleteFormField=en,k.getFormFields=xe,k.lightTheme=ze,k.normalizeThemeFile=bo,k.radii=Wg,k.resetComplaintState=Mf,k.resolveActiveTheme=So,k.saveFormFields=Rt,k.setAppDetails=Io,k.setAuthToken=Gr,k.setBaseUrl=mo,k.setId=lt,k.setIsEdit=_t,k.spacing=zg,k.store=Xo,k.themeToCssVars=vo,k.typography=Hg,k.useSettingsWizard=ar,k.useTheme=No,Object.defineProperties(k,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
13
13
  //# sourceMappingURL=complaint-app.umd.js.map