@attabot/complaint-app 1.0.37 → 1.0.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/complaint-app.js +6087 -5122
- package/dist/complaint-app.js.map +1 -1
- package/dist/complaint-app.umd.js +11 -11
- package/dist/complaint-app.umd.js.map +1 -1
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
(function(O,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):(O=typeof globalThis<"u"?globalThis:O||self,i(O.ComplaintApp={},O["react/jsx-runtime"],O.React,O.ReactDOM,O.ReactRedux,O.RTK))})(this,(function(O,i,S,$0,Q,ie){"use strict";var yr=typeof document<"u"?document.currentScript:null;function jl(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=jl(S);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)}var Ke;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Ke||(Ke={}));const Ha="popstate";function Vl(e){e===void 0&&(e={});function t(r,a){let{pathname:s,search:o,hash:l}=r.location;return br("",{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:$t(a)}return Wl(t,n,null,e)}function se(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ee(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function ql(){return Math.random().toString(36).substr(2,8)}function Ka(e,t){return{usr:e.state,key:e.key,idx:t}}function br(e,t,n,r){return n===void 0&&(n=null),Bt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pt(t):t,{state:n,key:t&&t.key||r||ql()})}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 pt(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function Wl(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:s=!1}=r,o=a.history,l=Ke.Pop,c=null,d=u();d==null&&(d=0,o.replaceState(Bt({},o.state,{idx:d}),""));function u(){return(o.state||{idx:null}).idx}function f(){l=Ke.Pop;let h=u(),m=h==null?null:h-d;d=h,c&&c({action:l,location:y.location,delta:m})}function p(h,m){l=Ke.Push;let v=br(y.location,h,m);d=u()+1;let E=Ka(v,d),_=y.createHref(v);try{o.pushState(E,"",_)}catch(D){if(D instanceof DOMException&&D.name==="DataCloneError")throw D;a.location.assign(_)}s&&c&&c({action:l,location:y.location,delta:1})}function b(h,m){l=Ke.Replace;let v=br(y.location,h,m);d=u();let E=Ka(v,d),_=y.createHref(v);o.replaceState(E,"",_),s&&c&&c({action:l,location:y.location,delta:0})}function w(h){let m=a.location.origin!=="null"?a.location.origin:a.location.href,v=typeof h=="string"?h:$t(h);return v=v.replace(/ $/,"%20"),se(m,"No window.location.(origin|href) available to create URL for href: "+v),new URL(v,m)}let y={get action(){return l},get location(){return e(a,o)},listen(h){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(Ha,f),c=h,()=>{a.removeEventListener(Ha,f),c=null}},createHref(h){return t(a,h)},createURL:w,encodeLocation(h){let m=w(h);return{pathname:m.pathname,search:m.search,hash:m.hash}},push:p,replace:b,go(h){return o.go(h)}};return y}var Ya;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Ya||(Ya={}));function zl(e,t,n){return n===void 0&&(n="/"),Hl(e,t,n)}function Hl(e,t,n,r){let a=typeof t=="string"?pt(t):t,s=Ye(a.pathname||"/",n);if(s==null)return null;let o=Ga(e);Kl(o);let l=null,c=rc(s);for(let d=0;l==null&&d<o.length;++d)l=tc(o[d],c);return l}function Ga(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("/")&&(se(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=Ve([r,c.relativePath]),u=n.concat(c);s.children&&s.children.length>0&&(se(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),Ga(s.children,t,u,d)),!(s.path==null&&!s.index)&&t.push({path:d,score:Rl(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 Kl(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:ec(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Yl=/^:[\w-]+$/,Gl=3,Jl=2,Zl=1,Xl=10,Ql=-2,Za=e=>e==="*";function Rl(e,t){let n=e.split("/"),r=n.length;return n.some(Za)&&(r+=Ql),t&&(r+=Jl),n.filter(a=>!Za(a)).reduce((a,s)=>a+(Yl.test(s)?Gl:s===""?Zl:Xl),r)}function ec(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 tc(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=Sr({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:Ve([s,f.pathname]),pathnameBase:lc(Ve([s,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(s=Ve([s,f.pathnameBase]))}return o}function Sr(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=nc(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:b}=u;if(p==="*"){let y=l[f]||"";o=s.slice(0,s.length-y.length).replace(/(.)\/+$/,"$1")}const w=l[f];return b&&!w?d[p]=void 0:d[p]=(w||"").replace(/%2F/g,"/"),d},{}),pathname:s,pathnameBase:o,pattern:e}}function nc(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Ee(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 rc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Ee(!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 ac=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,sc=e=>ac.test(e);function oc(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?pt(e):e,s;if(n)if(sc(n))s=n;else{if(n.includes("//")){let o=n;n=es(n),Ee(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+n))}n.startsWith("/")?s=Xa(n.substring(1),"/"):s=Xa(n,t)}else s=t;return{pathname:s,search:cc(r),hash:dc(a)}}function Xa(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 vr(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 ic(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Qa(e,t){let n=ic(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function Ra(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=pt(e):(a=Bt({},e),se(!a.pathname||!a.pathname.includes("?"),vr("?","pathname","search",a)),se(!a.pathname||!a.pathname.includes("#"),vr("#","pathname","hash",a)),se(!a.search||!a.search.includes("#"),vr("#","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=oc(a,l),d=o&&o!=="/"&&o.endsWith("/"),u=(s||o===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const es=e=>e.replace(/\/\/+/g,"/"),Ve=e=>es(e.join("/")),lc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),cc=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,dc=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function uc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ts=["post","put","patch","delete"];new Set(ts);const fc=["get",...ts];new Set(fc);function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jt.apply(null,arguments)}const Vt=U.createContext(null);process.env.NODE_ENV!=="production"&&(Vt.displayName="DataRouter");const wr=U.createContext(null);process.env.NODE_ENV!=="production"&&(wr.displayName="DataRouterState");const pc=U.createContext(null);process.env.NODE_ENV!=="production"&&(pc.displayName="Await");const Ie=U.createContext(null);process.env.NODE_ENV!=="production"&&(Ie.displayName="Navigation");const qt=U.createContext(null);process.env.NODE_ENV!=="production"&&(qt.displayName="Location");const Me=U.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(Me.displayName="Route");const Cr=U.createContext(null);process.env.NODE_ENV!=="production"&&(Cr.displayName="RouteError");function hc(e,t){let{relative:n}=t===void 0?{}:t;ht()||(process.env.NODE_ENV!=="production"?se(!1,"useHref() may be used only in the context of a <Router> component."):se(!1));let{basename:r,navigator:a}=U.useContext(Ie),{hash:s,pathname:o,search:l}=Wt(e,{relative:n}),c=o;return r!=="/"&&(c=o==="/"?r:Ve([r,o])),a.createHref({pathname:c,search:l,hash:s})}function ht(){return U.useContext(qt)!=null}function tt(){return ht()||(process.env.NODE_ENV!=="production"?se(!1,"useLocation() may be used only in the context of a <Router> component."):se(!1)),U.useContext(qt).location}const ns="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function rs(e){U.useContext(Ie).static||U.useLayoutEffect(e)}function Ge(){let{isDataRoute:e}=U.useContext(Me);return e?Lc():mc()}function mc(){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useNavigate() may be used only in the context of a <Router> component."):se(!1));let e=U.useContext(Vt),{basename:t,future:n,navigator:r}=U.useContext(Ie),{matches:a}=U.useContext(Me),{pathname:s}=tt(),o=JSON.stringify(Qa(a,n.v7_relativeSplatPath)),l=U.useRef(!1);return rs(()=>{l.current=!0}),U.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&Ee(l.current,ns),!l.current)return;if(typeof d=="number"){r.go(d);return}let f=Ra(d,JSON.parse(o),s,u.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Ve([t,f.pathname])),(u.replace?r.replace:r.push)(f,u.state,u)},[t,r,o,s,e])}function vn(){let{matches:e}=U.useContext(Me),t=e[e.length-1];return t?t.params:{}}function Wt(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=U.useContext(Ie),{matches:a}=U.useContext(Me),{pathname:s}=tt(),o=JSON.stringify(Qa(a,r.v7_relativeSplatPath));return U.useMemo(()=>Ra(e,JSON.parse(o),s,n==="path"),[e,o,s,n])}function gc(e,t){return yc(e,t)}function yc(e,t,n,r){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useRoutes() may be used only in the context of a <Router> component."):se(!1));let{navigator:a}=U.useContext(Ie),{matches:s}=U.useContext(Me),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 v=u&&u.path||"";os(c,!u||v.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+v+'">) but the ')+`parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
1
|
+
(function(P,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("react-dom"),require("react-redux"),require("@reduxjs/toolkit")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom","react-redux","@reduxjs/toolkit"],s):(P=typeof globalThis<"u"?globalThis:P||self,s(P.ComplaintApp={},P["react/jsx-runtime"],P.React,P.ReactDOM,P.ReactRedux,P.RTK))})(this,(function(P,s,y,hc,Q,oe){"use strict";var Cn=typeof document<"u"?document.currentScript:null;function mc(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const n=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(t,r,n.get?n:{enumerable:!0,get:()=>e[r]})}}return t.default=e,Object.freeze(t)}const B=mc(y);function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},jt.apply(null,arguments)}var Je;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Je||(Je={}));const ns="popstate";function gc(e){e===void 0&&(e={});function t(n,a){let{pathname:o,search:l,hash:i}=n.location;return _n("",{pathname:o,search:l,hash:i},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function r(n,a){return typeof a=="string"?a:qt(a)}return bc(t,r,null,e)}function se(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Le(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function yc(){return Math.random().toString(36).substr(2,8)}function as(e,t){return{usr:e.state,key:e.key,idx:t}}function _n(e,t,r,n){return r===void 0&&(r=null),jt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pt(t):t,{state:r,key:t&&t.key||n||yc()})}function qt(e){let{pathname:t="/",search:r="",hash:n=""}=e;return r&&r!=="?"&&(t+=r.charAt(0)==="?"?r:"?"+r),n&&n!=="#"&&(t+=n.charAt(0)==="#"?n:"#"+n),t}function pt(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substr(r),e=e.substr(0,r));let n=e.indexOf("?");n>=0&&(t.search=e.substr(n),e=e.substr(0,n)),e&&(t.pathname=e)}return t}function bc(e,t,r,n){n===void 0&&(n={});let{window:a=document.defaultView,v5Compat:o=!1}=n,l=a.history,i=Je.Pop,c=null,d=u();d==null&&(d=0,l.replaceState(jt({},l.state,{idx:d}),""));function u(){return(l.state||{idx:null}).idx}function f(){i=Je.Pop;let m=u(),h=m==null?null:m-d;d=m,c&&c({action:i,location:g.location,delta:h})}function p(m,h){i=Je.Push;let v=_n(g.location,m,h);d=u()+1;let L=as(v,d),_=g.createHref(v);try{l.pushState(L,"",_)}catch(M){if(M instanceof DOMException&&M.name==="DataCloneError")throw M;a.location.assign(_)}o&&c&&c({action:i,location:g.location,delta:1})}function w(m,h){i=Je.Replace;let v=_n(g.location,m,h);d=u();let L=as(v,d),_=g.createHref(v);l.replaceState(L,"",_),o&&c&&c({action:i,location:g.location,delta:0})}function b(m){let h=a.location.origin!=="null"?a.location.origin:a.location.href,v=typeof m=="string"?m:qt(m);return v=v.replace(/ $/,"%20"),se(h,"No window.location.(origin|href) available to create URL for href: "+v),new URL(v,h)}let g={get action(){return i},get location(){return e(a,l)},listen(m){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(ns,f),c=m,()=>{a.removeEventListener(ns,f),c=null}},createHref(m){return t(a,m)},createURL:b,encodeLocation(m){let h=b(m);return{pathname:h.pathname,search:h.search,hash:h.hash}},push:p,replace:w,go(m){return l.go(m)}};return g}var ss;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(ss||(ss={}));function Sc(e,t,r){return r===void 0&&(r="/"),vc(e,t,r)}function vc(e,t,r,n){let a=typeof t=="string"?pt(t):t,o=Ze(a.pathname||"/",r);if(o==null)return null;let l=os(e);wc(l);let i=null,c=Oc(o);for(let d=0;i==null&&d<l.length;++d)i=Fc(l[d],c);return i}function os(e,t,r,n){t===void 0&&(t=[]),r===void 0&&(r=[]),n===void 0&&(n="");let a=(o,l,i)=>{let c={relativePath:i===void 0?o.path||"":i,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};c.relativePath.startsWith("/")&&(se(c.relativePath.startsWith(n),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+n+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(n.length));let d=qe([n,c.relativePath]),u=r.concat(c);o.children&&o.children.length>0&&(se(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),os(o.children,t,u,d)),!(o.path==null&&!o.index)&&t.push({path:d,score:Tc(d,o.index),routesMeta:u})};return e.forEach((o,l)=>{var i;if(o.path===""||!((i=o.path)!=null&&i.includes("?")))a(o,l);else for(let c of ls(o.path))a(o,l,c)}),t}function ls(e){let t=e.split("/");if(t.length===0)return[];let[r,...n]=t,a=r.endsWith("?"),o=r.replace(/\?$/,"");if(n.length===0)return a?[o,""]:[o];let l=ls(n.join("/")),i=[];return i.push(...l.map(c=>c===""?o:[o,c].join("/"))),a&&i.push(...l),i.map(c=>e.startsWith("/")&&c===""?"/":c)}function wc(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:Ic(t.routesMeta.map(n=>n.childrenIndex),r.routesMeta.map(n=>n.childrenIndex)))}const Cc=/^:[\w-]+$/,_c=3,Nc=2,Ac=1,Ec=10,Lc=-2,is=e=>e==="*";function Tc(e,t){let r=e.split("/"),n=r.length;return r.some(is)&&(n+=Lc),t&&(n+=Nc),r.filter(a=>!is(a)).reduce((a,o)=>a+(Cc.test(o)?_c:o===""?Ac:Ec),n)}function Ic(e,t){return e.length===t.length&&e.slice(0,-1).every((n,a)=>n===t[a])?e[e.length-1]-t[t.length-1]:0}function Fc(e,t,r){let{routesMeta:n}=e,a={},o="/",l=[];for(let i=0;i<n.length;++i){let c=n[i],d=i===n.length-1,u=o==="/"?t:t.slice(o.length)||"/",f=Nn({path:c.relativePath,caseSensitive:c.caseSensitive,end:d},u),p=c.route;if(!f)return null;Object.assign(a,f.params),l.push({params:a,pathname:qe([o,f.pathname]),pathnameBase:Uc(qe([o,f.pathnameBase])),route:p}),f.pathnameBase!=="/"&&(o=qe([o,f.pathnameBase]))}return l}function Nn(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,n]=kc(e.path,e.caseSensitive,e.end),a=t.match(r);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),i=a.slice(1);return{params:n.reduce((d,u,f)=>{let{paramName:p,isOptional:w}=u;if(p==="*"){let g=i[f]||"";l=o.slice(0,o.length-g.length).replace(/(.)\/+$/,"$1")}const b=i[f];return w&&!b?d[p]=void 0:d[p]=(b||"").replace(/%2F/g,"/"),d},{}),pathname:o,pathnameBase:l,pattern:e}}function kc(e,t,r){t===void 0&&(t=!1),r===void 0&&(r=!0),Le(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let n=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,i,c)=>(n.push({paramName:i,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(n.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),n]}function Oc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Le(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Ze(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,n=e.charAt(r);return n&&n!=="/"?null:e.slice(r)||"/"}const Dc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,xc=e=>Dc.test(e);function Mc(e,t){t===void 0&&(t="/");let{pathname:r,search:n="",hash:a=""}=typeof e=="string"?pt(e):e,o;if(r)if(xc(r))o=r;else{if(r.includes("//")){let l=r;r=fs(r),Le(!1,"Pathnames cannot have embedded double slashes - normalizing "+(l+" -> "+r))}r.startsWith("/")?o=cs(r.substring(1),"/"):o=cs(r,t)}else o=t;return{pathname:o,search:$c(n),hash:Bc(a)}}function cs(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?r.length>1&&r.pop():a!=="."&&r.push(a)}),r.length>1?r.join("/"):"/"}function An(e,t,r,n){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(n)+"]. Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Pc(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function ds(e,t){let r=Pc(e);return t?r.map((n,a)=>a===r.length-1?n.pathname:n.pathnameBase):r.map(n=>n.pathnameBase)}function us(e,t,r,n){n===void 0&&(n=!1);let a;typeof e=="string"?a=pt(e):(a=jt({},e),se(!a.pathname||!a.pathname.includes("?"),An("?","pathname","search",a)),se(!a.pathname||!a.pathname.includes("#"),An("#","pathname","hash",a)),se(!a.search||!a.search.includes("#"),An("#","search","hash",a)));let o=e===""||a.pathname==="",l=o?"/":a.pathname,i;if(l==null)i=r;else{let f=t.length-1;if(!n&&l.startsWith("..")){let p=l.split("/");for(;p[0]==="..";)p.shift(),f-=1;a.pathname=p.join("/")}i=f>=0?t[f]:"/"}let c=Mc(a,i),d=l&&l!=="/"&&l.endsWith("/"),u=(o||l===".")&&r.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const fs=e=>e.replace(/\/\/+/g,"/"),qe=e=>fs(e.join("/")),Uc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),$c=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Bc=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function jc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const ps=["post","put","patch","delete"];new Set(ps);const qc=["get",...ps];new Set(qc);function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},Vt.apply(null,arguments)}const Wt=B.createContext(null);process.env.NODE_ENV!=="production"&&(Wt.displayName="DataRouter");const En=B.createContext(null);process.env.NODE_ENV!=="production"&&(En.displayName="DataRouterState");const Vc=B.createContext(null);process.env.NODE_ENV!=="production"&&(Vc.displayName="Await");const Oe=B.createContext(null);process.env.NODE_ENV!=="production"&&(Oe.displayName="Navigation");const zt=B.createContext(null);process.env.NODE_ENV!=="production"&&(zt.displayName="Location");const xe=B.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(xe.displayName="Route");const Ln=B.createContext(null);process.env.NODE_ENV!=="production"&&(Ln.displayName="RouteError");function Wc(e,t){let{relative:r}=t===void 0?{}:t;ht()||(process.env.NODE_ENV!=="production"?se(!1,"useHref() may be used only in the context of a <Router> component."):se(!1));let{basename:n,navigator:a}=B.useContext(Oe),{hash:o,pathname:l,search:i}=Ht(e,{relative:r}),c=l;return n!=="/"&&(c=l==="/"?n:qe([n,l])),a.createHref({pathname:c,search:i,hash:o})}function ht(){return B.useContext(zt)!=null}function Me(){return ht()||(process.env.NODE_ENV!=="production"?se(!1,"useLocation() may be used only in the context of a <Router> component."):se(!1)),B.useContext(zt).location}const hs="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ms(e){B.useContext(Oe).static||B.useLayoutEffect(e)}function Pe(){let{isDataRoute:e}=B.useContext(xe);return e?nd():zc()}function zc(){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useNavigate() may be used only in the context of a <Router> component."):se(!1));let e=B.useContext(Wt),{basename:t,future:r,navigator:n}=B.useContext(Oe),{matches:a}=B.useContext(xe),{pathname:o}=Me(),l=JSON.stringify(ds(a,r.v7_relativeSplatPath)),i=B.useRef(!1);return ms(()=>{i.current=!0}),B.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&Le(i.current,hs),!i.current)return;if(typeof d=="number"){n.go(d);return}let f=us(d,JSON.parse(l),o,u.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:qe([t,f.pathname])),(u.replace?n.replace:n.push)(f,u.state,u)},[t,n,l,o,e])}function mt(){let{matches:e}=B.useContext(xe),t=e[e.length-1];return t?t.params:{}}function Ht(e,t){let{relative:r}=t===void 0?{}:t,{future:n}=B.useContext(Oe),{matches:a}=B.useContext(xe),{pathname:o}=Me(),l=JSON.stringify(ds(a,n.v7_relativeSplatPath));return B.useMemo(()=>us(e,JSON.parse(l),o,r==="path"),[e,l,o,r])}function Hc(e,t){return Kc(e,t)}function Kc(e,t,r,n){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useRoutes() may be used only in the context of a <Router> component."):se(!1));let{navigator:a}=B.useContext(Oe),{matches:o}=B.useContext(xe),l=o[o.length-1],i=l?l.params:{},c=l?l.pathname:"/",d=l?l.pathnameBase:"/",u=l&&l.route;if(process.env.NODE_ENV!=="production"){let v=u&&u.path||"";bs(c,!u||v.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+v+'">) but the ')+`parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
2
2
|
|
|
3
|
-
`+('Please change the parent <Route path="'+v+'"> to <Route ')+('path="'+(v==="/"?"*":v+"/*")+'">.'))}let f=tt(),p;if(t){var b;let v=typeof t=="string"?pt(t):t;d==="/"||(b=v.pathname)!=null&&b.startsWith(d)||(process.env.NODE_ENV!=="production"?se(!1,"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, the location pathname must begin with the portion of the URL pathname that was "+('matched by all parent routes. The current pathname base is "'+d+'" ')+('but pathname "'+v.pathname+'" was given in the `location` prop.')):se(!1)),p=v}else p=f;let w=p.pathname||"/",y=w;if(d!=="/"){let v=d.replace(/^\//,"").split("/");y="/"+w.replace(/^\//,"").split("/").slice(v.length).join("/")}let h=zl(e,{pathname:y});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Ee(u||h!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Ee(h==null||h[h.length-1].route.element!==void 0||h[h.length-1].route.Component!==void 0||h[h.length-1].route.lazy!==void 0,'Matched leaf route at location "'+p.pathname+p.search+p.hash+'" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.'));let m=Cc(h&&h.map(v=>Object.assign({},v,{params:Object.assign({},l,v.params),pathname:Ve([d,a.encodeLocation?a.encodeLocation(v.pathname).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?d:Ve([d,a.encodeLocation?a.encodeLocation(v.pathnameBase).pathname:v.pathnameBase])})),s,n,r);return t&&m?U.createElement(qt.Provider,{value:{location:jt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Ke.Pop}},m):m}function bc(){let e=Tc(),t=uc(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 Sc=U.createElement(bc,null);class vc 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(Me.Provider,{value:this.props.routeContext},U.createElement(Cr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function wc(e){let{routeContext:t,match:n,children:r}=e,a=U.useContext(Vt);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),U.createElement(Me.Provider,{value:t},r)}function Cc(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"?se(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(l).join(",")):se(!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:b}=n,w=f.route.loader&&p[f.route.id]===void 0&&(!b||b[f.route.id]===void 0);if(f.route.lazy||w){c=!0,d>=0?o=o.slice(0,d+1):o=[o[0]];break}}}return o.reduceRight((u,f,p)=>{let b,w=!1,y=null,h=null;n&&(b=l&&f.route.id?l[f.route.id]:void 0,y=f.route.errorElement||Sc,c&&(d<0&&p===0?(os("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),w=!0,h=null):d===p&&(w=!0,h=f.route.hydrateFallbackElement||null)));let m=t.concat(o.slice(0,p+1)),v=()=>{let E;return b?E=y:w?E=h:f.route.Component?E=U.createElement(f.route.Component,null):f.route.element?E=f.route.element:E=u,U.createElement(wc,{match:f,routeContext:{outlet:u,matches:m,isDataRoute:n!=null},children:E})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?U.createElement(vc,{location:n.location,revalidation:n.revalidation,component:y,error:b,children:v(),routeContext:{outlet:null,matches:m,isDataRoute:!0}}):v()},null)}var as=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(as||{}),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 _c(e){let t=U.useContext(Vt);return t||(process.env.NODE_ENV!=="production"?se(!1,_r(e)):se(!1)),t}function Nc(e){let t=U.useContext(wr);return t||(process.env.NODE_ENV!=="production"?se(!1,_r(e)):se(!1)),t}function Ec(e){let t=U.useContext(Me);return t||(process.env.NODE_ENV!=="production"?se(!1,_r(e)):se(!1)),t}function Nr(e){let t=Ec(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?se(!1,e+' can only be used on routes that contain a unique "id"'):se(!1)),n.route.id}function Ac(){return Nr(zt.UseRouteId)}function Tc(){var e;let t=U.useContext(Cr),n=Nc(zt.UseRouteError),r=Nr(zt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function Lc(){let{router:e}=_c(as.UseNavigateStable),t=Nr(zt.UseNavigateStable),n=U.useRef(!1);return rs(()=>{n.current=!0}),U.useCallback(function(a,s){s===void 0&&(s={}),process.env.NODE_ENV!=="production"&&Ee(n.current,ns),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,jt({fromRouteId:t},s)))},[e,t])}const ss={};function os(e,t,n){!t&&!ss[e]&&(ss[e]=!0,process.env.NODE_ENV!=="production"&&Ee(!1,n))}const is={};function Fc(e,t){process.env.NODE_ENV!=="production"&&!is[t]&&(is[t]=!0,console.warn(t))}const ls=(e,t,n)=>Fc(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function Ic(e,t){e?.v7_startTransition===void 0&&ls("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&&ls("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"?se(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>."):se(!1)}function Oc(e){let{basename:t="/",children:n=null,location:r,navigationType:a=Ke.Pop,navigator:s,static:o=!1,future:l}=e;ht()&&(process.env.NODE_ENV!=="production"?se(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):se(!1));let c=t.replace(/^\/*/,"/"),d=U.useMemo(()=>({basename:c,navigator:s,static:o,future:jt({v7_relativeSplatPath:!1},l)}),[c,l,s,o]);typeof r=="string"&&(r=pt(r));let{pathname:u="/",search:f="",hash:p="",state:b=null,key:w="default"}=r,y=U.useMemo(()=>{let h=Ye(u,c);return h==null?null:{location:{pathname:h,search:f,hash:p,state:b,key:w},navigationType:a}},[c,u,f,p,b,w,a]);return process.env.NODE_ENV!=="production"&&Ee(y!=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."),y==null?null:U.createElement(Ie.Provider,{value:d},U.createElement(qt.Provider,{children:n,value:y}))}function kc(e){let{children:t,location:n}=e;return gc(Er(t),n)}new Promise(()=>{});function Er(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,Er(r.props.children,s));return}r.type!==Pe&&(process.env.NODE_ENV!=="production"?se(!1,"["+(typeof r.type=="string"?r.type:r.type.name)+"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>"):se(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?se(!1,"An index route cannot have child routes."):se(!1));let 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=Er(r.props.children,s)),n.push(o)}),n}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)}function Ar(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 wn="get",Cn="application/x-www-form-urlencoded";function _n(e){return e!=null&&typeof e.tagName=="string"}function Dc(e){return _n(e)&&e.tagName.toLowerCase()==="button"}function xc(e){return _n(e)&&e.tagName.toLowerCase()==="form"}function Mc(e){return _n(e)&&e.tagName.toLowerCase()==="input"}function Pc(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Uc(e,t){return e.button===0&&(!t||t==="_self")&&!Pc(e)}function Tr(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 Bc(e,t){let n=Tr(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(s=>{n.append(a,s)})}),n}let Nn=null;function $c(){if(Nn===null)try{new FormData(document.createElement("form"),0),Nn=!1}catch{Nn=!0}return Nn}const jc=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Lr(e){return e!=null&&!jc.has(e)?(process.env.NODE_ENV!=="production"&&Ee(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+Cn+'"')),null):e}function Vc(e,t){let n,r,a,s,o;if(xc(e)){let l=e.getAttribute("action");r=l?Ye(l,t):null,n=e.getAttribute("method")||wn,a=Lr(e.getAttribute("enctype"))||Cn,s=new FormData(e)}else if(Dc(e)||Mc(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")||wn,a=Lr(e.getAttribute("formenctype"))||Lr(l.getAttribute("enctype"))||Cn,s=new FormData(l,e),!$c()){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(_n(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=wn,r=null,a=Cn,o=e}return s&&a==="text/plain"&&(o=s,s=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:s,body:o}}const qc=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],Wc=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],zc=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],Hc="6";try{window.__reactRouterVersion=Hc}catch{}const cs=U.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(cs.displayName="ViewTransition");const Kc=U.createContext(new Map);process.env.NODE_ENV!=="production"&&(Kc.displayName="Fetchers");const ds=U["startTransition"];function Yc(e){let{basename:t,children:n,future:r,window:a}=e,s=U.useRef();s.current==null&&(s.current=Vl({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&&ds?ds(()=>c(f)):c(f)},[c,d]);return U.useLayoutEffect(()=>o.listen(u),[o,u]),U.useEffect(()=>Ic(r),[r]),U.createElement(Oc,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:o,future:r})}process.env.NODE_ENV;const Gc=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Jc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,us=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=Ar(t,qc),{basename:b}=U.useContext(Ie),w,y=!1;if(typeof d=="string"&&Jc.test(d)&&(w=d,Gc))try{let E=new URL(window.location.href),_=d.startsWith("//")?new URL(E.protocol+d):new URL(d),D=Ye(_.pathname,b);_.origin===E.origin&&D!=null?d=D+_.search+_.hash:y=!0}catch{process.env.NODE_ENV!=="production"&&Ee(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let h=hc(d,{relative:a}),m=Rc(d,{replace:o,state:l,target:c,preventScrollReset:u,relative:a,viewTransition:f});function v(E){r&&r(E),E.defaultPrevented||m(E)}return U.createElement("a",mt({},p,{href:w||h,onClick:y||s?r:v,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(us.displayName="Link");const Zc=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=Ar(t,Wc),p=Wt(c,{relative:f.relative}),b=tt(),w=U.useContext(wr),{navigator:y,basename:h}=U.useContext(Ie),m=w!=null&&sd(p)&&d===!0,v=y.encodeLocation?y.encodeLocation(p).pathname:p.pathname,E=b.pathname,_=w&&w.navigation&&w.navigation.location?w.navigation.location.pathname:null;a||(E=E.toLowerCase(),_=_?_.toLowerCase():null,v=v.toLowerCase()),_&&h&&(_=Ye(_,h)||_);const D=v!=="/"&&v.endsWith("/")?v.length-1:v.length;let L=E===v||!o&&E.startsWith(v)&&E.charAt(D)==="/",Y=_!=null&&(_===v||!o&&_.startsWith(v)&&_.charAt(v.length)==="/"),te={isActive:L,isPending:Y,isTransitioning:m},J=L?r:void 0,W;typeof s=="function"?W=s(te):W=[s,L?"active":null,Y?"pending":null,m?"transitioning":null].filter(Boolean).join(" ");let H=typeof l=="function"?l(te):l;return U.createElement(us,mt({},f,{"aria-current":J,className:W,ref:n,style:H,to:c,viewTransition:d}),typeof u=="function"?u(te):u)});process.env.NODE_ENV!=="production"&&(Zc.displayName="NavLink");const Xc=U.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:s,state:o,method:l=wn,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,b=Ar(e,zc),w=rd(),y=ad(c,{relative:u}),h=l.toLowerCase()==="get"?"get":"post",m=v=>{if(d&&d(v),v.defaultPrevented)return;v.preventDefault();let E=v.nativeEvent.submitter,_=E?.getAttribute("formmethod")||l;w(E||v.currentTarget,{fetcherKey:n,method:_,navigate:r,replace:s,state:o,relative:u,preventScrollReset:f,viewTransition:p})};return U.createElement("form",mt({ref:t,method:h,action:y,onSubmit:a?d:m},b))});process.env.NODE_ENV!=="production"&&(Xc.displayName="Form"),process.env.NODE_ENV;var En;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(En||(En={}));var fs;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(fs||(fs={}));function Qc(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function ps(e){let t=U.useContext(Vt);return t||(process.env.NODE_ENV!=="production"?se(!1,Qc(e)):se(!1)),t}function Rc(e,t){let{target:n,replace:r,state:a,preventScrollReset:s,relative:o,viewTransition:l}=t===void 0?{}:t,c=Ge(),d=tt(),u=Wt(e,{relative:o});return U.useCallback(f=>{if(Uc(f,n)){f.preventDefault();let p=r!==void 0?r:$t(d)===$t(u);c(e,{replace:p,state:a,preventScrollReset:s,relative:o,viewTransition:l})}},[d,c,u,r,a,n,e,s,o,l])}function hs(e){process.env.NODE_ENV!=="production"&&Ee(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(Tr(e)),n=U.useRef(!1),r=tt(),a=U.useMemo(()=>Bc(r.search,n.current?null:t.current),[r.search]),s=Ge(),o=U.useCallback((l,c)=>{const d=Tr(typeof l=="function"?l(a):l);n.current=!0,s("?"+d,c)},[s,a]);return[a,o]}function ed(){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 td=0,nd=()=>"__"+String(++td)+"__";function rd(){let{router:e}=ps(En.UseSubmit),{basename:t}=U.useContext(Ie),n=Ac();return U.useCallback(function(r,a){a===void 0&&(a={}),ed();let{action:s,method:o,encType:l,formData:c,body:d}=Vc(r,t);if(a.navigate===!1){let u=a.fetcherKey||nd();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 ad(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=U.useContext(Ie),a=U.useContext(Me);a||(process.env.NODE_ENV!=="production"?se(!1,"useFormAction must be used inside a RouteContext"):se(!1));let[s]=a.matches.slice(-1),o=mt({},Wt(e||".",{relative:n})),l=tt();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:Ve([r,o.pathname])),$t(o)}function sd(e,t){t===void 0&&(t={});let n=U.useContext(cs);n==null&&(process.env.NODE_ENV!=="production"?se(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):se(!1));let{basename:r}=ps(En.useViewTransitionState),a=Wt(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=Ye(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=Ye(n.nextLocation.pathname,r)||n.nextLocation.pathname;return Sr(a.pathname,o)!=null||Sr(a.pathname,s)!=null}function ms(e,t){return function(){return e.apply(t,arguments)}}const{toString:od}=Object.prototype,{getPrototypeOf:gt}=Object,{iterator:Ht,toStringTag:gs}=Symbol,An=(({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),An(n,t))return!0;n=gt(n)}return!1},id=(e,t)=>e!=null&&Kt(e,t)?e[t]:void 0,Fr=(e=>t=>{const n=od.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Ae=e=>(e=e.toLowerCase(),t=>Fr(t)===e),Tn=e=>t=>typeof t===e,{isArray:nt}=Array,rt=Tn("undefined");function yt(e){return e!==null&&!rt(e)&&e.constructor!==null&&!rt(e.constructor)&&_e(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const ys=Ae("ArrayBuffer");function ld(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&ys(e.buffer),t}const cd=Tn("string"),_e=Tn("function"),bs=Tn("number"),bt=e=>e!==null&&typeof e=="object",dd=e=>e===!0||e===!1,Ln=e=>{if(!bt(e))return!1;const t=gt(e);return(t===null||t===Object.prototype||gt(t)===null)&&!Kt(e,gs)&&!Kt(e,Ht)},ud=e=>{if(!bt(e)||yt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},fd=Ae("Date"),pd=Ae("File"),hd=e=>!!(e&&typeof e.uri<"u"),md=e=>e&&typeof e.getParts<"u",gd=Ae("Blob"),yd=Ae("FileList"),bd=Ae("Set"),Sd=e=>bt(e)&&_e(e.pipe);function vd(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Ss=vd(),vs=typeof Ss.FormData<"u"?Ss.FormData:void 0,wd=e=>{if(!e)return!1;if(vs&&e instanceof vs)return!0;const t=gt(e);if(!t||t===Object.prototype||!_e(e.append))return!1;const n=Fr(e);return n==="formdata"||n==="object"&&_e(e.toString)&&e.toString()==="[object FormData]"},Cd=Ae("URLSearchParams"),[_d,Nd,Ed,Ad]=["ReadableStream","Request","Response","Headers"].map(Ae),Td=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]),nt(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(yt(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 ws(e,t){if(yt(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,a;for(;r-- >0;)if(a=n[r],t===a.toLowerCase())return a;return null}const at=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Cs=e=>!rt(e)&&e!==at;function Ir(...e){const{caseless:t,skipUndefined:n}=Cs(this)&&this||{},r={},a=(s,o)=>{if(o==="__proto__"||o==="constructor"||o==="prototype")return;const l=t&&typeof o=="string"&&ws(r,o)||o,c=An(r,l)?r[l]:void 0;Ln(c)&&Ln(s)?r[l]=Ir(c,s):Ln(s)?r[l]=Ir({},s):nt(s)?r[l]=s.slice():(!n||!rt(s))&&(r[l]=s)};for(let s=0,o=e.length;s<o;s++){const l=e[s];if(!l||yt(l)||(Yt(l,a),typeof l!="object"||nt(l)))continue;const c=Object.getOwnPropertySymbols(l);for(let d=0;d<c.length;d++){const u=c[d];$d.call(l,u)&&a(l[u],u)}}return r}const Ld=(e,t,n,{allOwnKeys:r}={})=>(Yt(t,(a,s)=>{n&&_e(a)?Object.defineProperty(e,s,{__proto__:null,value:ms(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),Fd=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Id=(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)},Od=(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&>(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kd=(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},Dd=e=>{if(!e)return null;if(nt(e))return e;let t=e.length;if(!bs(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},xd=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&>(Uint8Array)),Md=(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])}},Pd=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},Ud=Ae("HTMLFormElement"),Bd=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:$d}=Object.prototype,jd=Ae("RegExp"),_s=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Yt(n,(a,s)=>{let o;(o=t(a,s,e))!==!1&&(r[s]=o||a)}),Object.defineProperties(e,r)},Vd=e=>{_s(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+"'")})}})},qd=(e,t)=>{const n={},r=a=>{a.forEach(s=>{n[s]=!0})};return nt(e)?r(e):r(String(e).split(t)),n},Wd=()=>{},zd=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function Hd(e){return!!(e&&_e(e.append)&&e[gs]==="FormData"&&e[Ht])}const Kd=e=>{const t=new WeakSet,n=r=>{if(bt(r)){if(t.has(r))return;if(yt(r))return r;if(!("toJSON"in r)){t.add(r);let a;if(bd(r)){a=[];for(const s of r){const o=n(s);!rt(o)&&a.push(o)}}else a=nt(r)?[]:{},Yt(r,(s,o)=>{const l=n(s);!rt(l)&&(a[o]=l)});return t.delete(r),a}}return r};return n(e)},Yd=Ae("AsyncFunction"),Gd=e=>e&&(bt(e)||_e(e))&&_e(e.then)&&_e(e.catch),Ns=((e,t)=>e?setImmediate:t?((n,r)=>(at.addEventListener("message",({source:a,data:s})=>{a===at&&s===n&&r.length&&r.shift()()},!1),a=>{r.push(a),at.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",_e(at.postMessage)),Jd=typeof queueMicrotask<"u"?queueMicrotask.bind(at):typeof process<"u"&&process.nextTick||Ns,Es=e=>e!=null&&_e(e[Ht]),g={isArray:nt,isArrayBuffer:ys,isBuffer:yt,isFormData:wd,isArrayBufferView:ld,isString:cd,isNumber:bs,isBoolean:dd,isObject:bt,isPlainObject:Ln,isEmptyObject:ud,isReadableStream:_d,isRequest:Nd,isResponse:Ed,isHeaders:Ad,isUndefined:rt,isDate:fd,isFile:pd,isReactNativeBlob:hd,isReactNative:md,isBlob:gd,isRegExp:jd,isFunction:_e,isStream:Sd,isURLSearchParams:Cd,isTypedArray:xd,isFileList:yd,forEach:Yt,merge:Ir,extend:Ld,trim:Td,stripBOM:Fd,inherits:Id,toFlatObject:Od,kindOf:Fr,kindOfTest:Ae,endsWith:kd,toArray:Dd,forEachEntry:Md,matchAll:Pd,isHTMLForm:Ud,hasOwnProperty:An,hasOwnProp:An,hasOwnInPrototypeChain:Kt,getSafeProp:id,reduceDescriptors:_s,freezeMethods:Vd,toObjectSet:qd,toCamelCase:Bd,noop:Wd,toFiniteNumber:zd,findKey:ws,global:at,isContextDefined:Cs,isSpecCompliantForm:Hd,toJSONObject:Kd,isAsyncFn:Yd,isThenable:Gd,setImmediate:Ns,asap:Jd,isIterable:Es,isSafeIterable:e=>e!=null&&Kt(e,Ht)&&Es(e)},Zd=g.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"]),Xd=e=>{const t={};let n,r,a;return e&&e.split(`
|
|
4
|
-
`).forEach(function(
|
|
5
|
-
`)}getSetCookie(){const t=this.get("set-cookie");return g.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 ou(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[Ts]=this[Ts]={accessors:{}}).accessors,a=this.prototype;function s(o){const l=Gt(o);r[l]||(cu(a,o),r[l]=!0)}return g.isArray(t)?t.forEach(s):s(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),g.reduceDescriptors(Se.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),g.freezeMethods(Se);const In="[REDACTED ****]";function du(e){if(g.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(g.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function uu(e,t){const n=new Set(t.map(s=>String(s).toLowerCase())),r=[],a=s=>{if(s===null||typeof s!="object"||g.isBuffer(s))return s;if(r.indexOf(s)!==-1)return;s instanceof Se&&(s=s.toJSON()),r.push(s);let o;if(g.isArray(s))o=[],s.forEach((l,c)=>{const d=a(l);g.isUndefined(d)||(o[c]=d)});else{if(!g.isPlainObject(s)&&du(s))return r.pop(),s;o=Object.create(null);for(const[l,c]of Object.entries(s)){const d=n.has(l.toLowerCase())?In:a(c);g.isUndefined(d)||(o[l]=d)}}return r.pop(),o};return a(e)}function Ls(e){try{return String(e)}catch{return""}}function fu(e){return e.errors.map(n=>{try{return n&&n.message?Ls(n.message):Ls(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let q=class Bl extends Error{static from(t,n,r,a,s,o){let l=t.message;!l&&g.isArray(t.errors)&&t.errors.length&&(l=fu(t));const c=new Bl(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&&g.hasOwnProp(t,"redact")?t.redact:void 0,r=g.isArray(n)&&n.length>0?uu(t,n):g.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 pu=null,Fs=100;function xr(e){return g.isPlainObject(e)||g.isArray(e)}function Is(e){return g.endsWith(e,"[]")?e.slice(0,-2):e}function Mr(e,t,n){return e?e.concat(t).map(function(a,s){return a=Is(a),!n&&s?"["+a+"]":a}).join(n?".":""):t}function hu(e){return g.isArray(e)&&!e.some(xr)}const mu=g.toFlatObject(g,{},null,function(t){return/^is[A-Z]/.test(t)});function On(e,t,n){if(!g.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=g.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(v,E){return!g.isUndefined(E[v])});const r=n.metaTokens,a=n.visitor||w,s=n.dots,o=n.indexes,l=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?Fs:n.maxDepth,d=l&&g.isSpecCompliantForm(t),u=[];if(!g.isFunction(a))throw new TypeError("visitor must be a function");function f(m){if(m===null)return"";if(g.isDate(m))return m.toISOString();if(g.isBoolean(m))return m.toString();if(!d&&g.isBlob(m))throw new q("Blob is not supported. Use a Buffer instead.");if(g.isArrayBuffer(m)||g.isTypedArray(m)){if(d&&typeof l=="function")return new l([m]);throw new q("Blob is not supported. Use a Buffer instead.",q.ERR_NOT_SUPPORT)}return m}function p(m){if(m>c)throw new q("Object is too deeply nested ("+m+" levels). Max depth: "+c,q.ERR_FORM_DATA_DEPTH_EXCEEDED)}function b(m,v){if(c===1/0)return JSON.stringify(m);const E=[];return JSON.stringify(m,function(D,L){if(!g.isObject(L))return L;for(;E.length&&E[E.length-1]!==this;)E.pop();return E.push(L),p(v+E.length-1),L})}function w(m,v,E){let _=m;if(g.isReactNative(t)&&g.isReactNativeBlob(m))return t.append(Mr(E,v,s),f(m)),!1;if(m&&!E&&typeof m=="object"){if(g.endsWith(v,"{}"))v=r?v:v.slice(0,-2),m=b(m,1);else if(g.isArray(m)&&hu(m)||(g.isFileList(m)||g.endsWith(v,"[]"))&&(_=g.toArray(m)))return v=Is(v),_.forEach(function(L,Y){!(g.isUndefined(L)||L===null)&&t.append(o===!0?Mr([v],Y,s):o===null?v:v+"[]",f(L))}),!1}return xr(m)?!0:(t.append(Mr(E,v,s),f(m)),!1)}const y=Object.assign(mu,{defaultVisitor:w,convertValue:f,isVisitable:xr});function h(m,v,E=0){if(!g.isUndefined(m)){if(p(E),u.indexOf(m)!==-1)throw new Error("Circular reference detected in "+v.join("."));u.push(m),g.forEach(m,function(D,L){(!(g.isUndefined(D)||D===null)&&a.call(t,D,g.isString(L)?L.trim():L,v,y))===!0&&h(D,v?v.concat(L):[L],E+1)}),u.pop()}}if(!g.isObject(e))throw new TypeError("data must be an object");return h(e),t}function Os(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Pr(e,t){this._pairs=[],e&&On(e,this,t)}const ks=Pr.prototype;ks.append=function(t,n){this._pairs.push([t,n])},ks.toString=function(t){const n=t?r=>t.call(this,r,Os):Os;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function gu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ds(e,t,n){if(!t)return e;e=e||"";const r=g.isFunction(n)?{serialize:n}:n,a=g.getSafeProp(r,"encode")||gu,s=g.getSafeProp(r,"serialize");let o;if(s?o=s(t,r):o=g.isURLSearchParams(t)?t.toString():new Pr(t,r).toString(a),o){const l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+o}return e}class xs{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){g.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Ur={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},yu={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:Pr,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",$r=typeof navigator=="object"&&navigator||void 0,bu=Br&&(!$r||["ReactNative","NativeScript","NS"].indexOf($r.product)<0),Su=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",vu=Br&&window.location.href||"http://localhost",be={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Br,hasStandardBrowserEnv:bu,hasStandardBrowserWebWorkerEnv:Su,navigator:$r,origin:vu},Symbol.toStringTag,{value:"Module"})),...yu};function wu(e,t){return On(e,new be.classes.URLSearchParams,{visitor:function(n,r,a,s){return be.isNode&&g.isBuffer(n)?(this.append(r,n.toString("base64")),!1):s.defaultVisitor.apply(this,arguments)},...t})}const Ms=Fs;function Ps(e){if(e>Ms)throw new q("FormData field is too deeply nested ("+e+" levels). Max depth: "+Ms,q.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Cu(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Ps(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function _u(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 Us(e){function t(n,r,a,s){Ps(s);let o=n[s++];if(o==="__proto__")return!0;const l=Number.isFinite(+o),c=s>=n.length;return o=!o&&g.isArray(a)?a.length:o,c?(g.hasOwnProp(a,o)?a[o]=g.isArray(a[o])?a[o].concat(r):[a[o],r]:a[o]=r,!l):((!g.hasOwnProp(a,o)||!g.isObject(a[o]))&&(a[o]=[]),t(n,r,a[o],s)&&g.isArray(a[o])&&(a[o]=_u(a[o])),!l)}if(g.isFormData(e)&&g.isFunction(e.entries)){const n={};return g.forEachEntry(e,(r,a)=>{t(Cu(r),a,n,0)}),n}return null}const St=(e,t)=>e!=null&&g.hasOwnProp(e,t)?e[t]:void 0;function Nu(e,t,n){if(g.isString(e))try{return(t||JSON.parse)(e),g.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Jt={transitional:Ur,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,s=g.isObject(t);if(s&&g.isHTMLForm(t)&&(t=new FormData(t)),g.isFormData(t))return a?JSON.stringify(Us(t)):t;if(g.isArrayBuffer(t)||g.isBuffer(t)||g.isStream(t)||g.isFile(t)||g.isBlob(t)||g.isReadableStream(t))return t;if(g.isArrayBufferView(t))return t.buffer;if(g.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(s){const c=St(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return wu(t,c).toString();if((l=g.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=St(this,"env"),u=d&&d.FormData;return On(l?{"files[]":t}:t,u&&new u,c)}}return s||a?(n.setContentType("application/json",!1),Nu(t)):t}],transformResponse:[function(t){const n=St(this,"transitional")||Jt.transitional,r=n&&n.forcedJSONParsing,a=St(this,"responseType"),s=a==="json";if(g.isResponse(t)||g.isReadableStream(t))return t;if(t&&g.isString(t)&&(r&&!a||s)){const l=!(n&&n.silentJSONParsing)&&s;try{return JSON.parse(t,St(this,"parseReviver"))}catch(c){if(l)throw c.name==="SyntaxError"?q.from(c,q.ERR_BAD_RESPONSE,this,null,St(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}}};g.forEach(["delete","get","head","post","put","patch","query"],e=>{Jt.headers[e]={}});function jr(e,t){const n=this||Jt,r=t||n,a=Se.from(r.headers);let s=r.data;return g.forEach(e,function(l){s=l.call(n,s,a.normalize(),t?t.status:void 0)}),a.normalize(),s}function Bs(e){return!!(e&&e.__CANCEL__)}let Zt=class extends q{constructor(t,n,r){super(t??"canceled",q.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function $s(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 Eu(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function Au(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 b=u&&d-u;return b?Math.round(p*1e3/b):void 0}}function Tu(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 kn=(e,t,n=3)=>{let r=0;const a=Au(50,250);return Tu(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)},js=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Vs=(e,t=g.asap)=>(...n)=>t(()=>e(...n)),Lu=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,Fu=be.hasStandardBrowserEnv?{write(e,t,n,r,a,s,o){if(typeof document>"u")return;const l=[`${e}=${encodeURIComponent(t)}`];g.isNumber(n)&&l.push(`expires=${new Date(n).toUTCString()}`),g.isString(r)&&l.push(`path=${r}`),g.isString(a)&&l.push(`domain=${a}`),s===!0&&l.push("secure"),g.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 Iu(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Ou(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 ku=/^https?:(?!\/\/)/i,Du=/[\t\n\r]/g;function xu(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function Mu(e){return xu(e).replace(Du,"")}function Pu(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${In}`)}function Uu(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${In}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${In}`);return n===-1?a:`${a}#${Pu(t.slice(n+1))}`}function qs(e,t){if(typeof e=="string"){const n=Mu(e);if(ku.test(n))throw new q(`Invalid URL ${JSON.stringify(Uu(n))}: missing "//" after protocol`,q.ERR_INVALID_URL,t)}}function Ws(e,t,n,r){qs(t,r);let a=!Iu(t);return e&&(a||n===!1)?(qs(e,r),Ou(e,t)):t}const zs=e=>e instanceof Se?{...e}:e,Bu=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function st(e,t){e=e||{},t=t||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(u,f,p,b){return g.isPlainObject(u)&&g.isPlainObject(f)?g.merge.call({caseless:b},u,f):g.isPlainObject(f)?g.merge({},f):g.isArray(f)?f.slice():f}function a(u,f,p,b){if(g.isUndefined(f)){if(!g.isUndefined(u))return r(void 0,u,p,b)}else return r(u,f,p,b)}function s(u,f){if(!g.isUndefined(f))return r(void 0,f)}function o(u,f){if(g.isUndefined(f)){if(!g.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function l(u){const f=g.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!g.isUndefined(f))if(g.isPlainObject(f)){if(g.hasOwnProp(f,u))return f[u]}else return;const p=g.hasOwnProp(e,"transitional")?e.transitional:void 0;if(g.isPlainObject(p)&&g.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(g.hasOwnProp(t,p))return r(u,f);if(g.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(zs(u),zs(f),p,!0)};return g.forEach(Bu({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=g.hasOwnProp(d,f)?d[f]:a,b=g.hasOwnProp(e,f)?e[f]:void 0,w=g.hasOwnProp(t,f)?t[f]:void 0,y=p(b,w,f);g.isUndefined(y)&&p!==c||(n[f]=y)}),g.hasOwnProp(t,"validateStatus")&&g.isUndefined(t.validateStatus)&&l("validateStatusUndefinedResolves")===!1&&(g.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const $u=["content-type","content-length"];function ju(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{$u.includes(r.toLowerCase())&&e.set(r,a)})}const Vu=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function Hs(e){const t=st({},e),n=p=>g.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=Se.from(l),t.url=Ds(Ws(d,f,u,t),n("params"),n("paramsSerializer")),c){const p=g.getSafeProp(c,"username")||"",b=g.getSafeProp(c,"password")||"";try{l.set("Authorization","Basic "+btoa(p+":"+(b?Vu(b):"")))}catch(w){throw q.from(w,q.ERR_BAD_OPTION_VALUE,e)}}if(g.isFormData(r)&&(be.hasStandardBrowserEnv||be.hasStandardBrowserWebWorkerEnv||g.isReactNative(r)?l.setContentType(void 0):g.isFunction(r.getHeaders)&&ju(l,r.getHeaders(),n("formDataHeaderPolicy"))),be.hasStandardBrowserEnv&&(g.isFunction(a)&&(a=a(t)),a===!0||a==null&&Lu(t.url))){const b=s&&o&&Fu.read(o);b&&l.set(s,b)}return t}const qu=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=Hs(e);let s=a.data;const o=Se.from(a.headers).normalize();let{responseType:l,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,b,w;function y(){b&&b(),w&&w(),a.cancelToken&&a.cancelToken.unsubscribe(u),a.signal&&a.signal.removeEventListener("abort",u)}let h=new XMLHttpRequest;h.open(a.method.toUpperCase(),a.url,!0),h.timeout=a.timeout;function m(){if(!h)return;const E=Se.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),D={data:!l||l==="text"||l==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:E,config:e,request:h};$s(function(Y){n(Y),y()},function(Y){r(Y),y()},D),h=null}"onloadend"in h?h.onloadend=m:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.startsWith("file:"))||setTimeout(m)},h.onabort=function(){h&&(r(new q("Request aborted",q.ECONNABORTED,e,h)),y(),h=null)},h.onerror=function(_){const D=_&&_.message?_.message:"Network Error",L=new q(D,q.ERR_NETWORK,e,h);L.event=_||null,r(L),y(),h=null},h.ontimeout=function(){let _=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const D=a.transitional||Ur;a.timeoutErrorMessage&&(_=a.timeoutErrorMessage),r(new q(_,D.clarifyTimeoutError?q.ETIMEDOUT:q.ECONNABORTED,e,h)),y(),h=null},s===void 0&&o.setContentType(null),"setRequestHeader"in h&&g.forEach(As(o),function(_,D){h.setRequestHeader(D,_)}),g.isUndefined(a.withCredentials)||(h.withCredentials=!!a.withCredentials),l&&l!=="json"&&(h.responseType=a.responseType),d&&([p,w]=kn(d,!0),h.addEventListener("progress",p)),c&&h.upload&&([f,b]=kn(c),h.upload.addEventListener("progress",f),h.upload.addEventListener("loadend",b)),(a.cancelToken||a.signal)&&(u=E=>{h&&(r(!E||E.type?new Zt(null,e,h):E),h.abort(),y(),h=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const v=Eu(a.url);if(v&&!be.protocols.includes(v)){r(new q("Unsupported protocol "+v+":",q.ERR_BAD_REQUEST,e)),y();return}h.send(s||null)})},Wu=(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 Zt(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=()=>g.asap(o),l},zu=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},Hu=async function*(e,t){for await(const n of Ku(e))yield*zu(n,t)},Ku=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()}},Ks=(e,t,n,r)=>{const a=Hu(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})},Ys=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,Gs=(e,t,n)=>t+2<n&&Ys(e.charCodeAt(t+1))&&Ys(e.charCodeAt(t+2)),Js=e=>e<=57?e-48:(e&223)-55,Yu=e=>e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===45||e===95,Gu=e=>e===9||e===10||e===12||e===13||e===32,Ju=e=>{const t=Math.floor(e/4),n=e%4;return t*3+(n===2?1:n===3?2:0)},Zu=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)},Xu=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&&Gs(e,s,t)&&(o=Js(e.charCodeAt(s+1))*16+Js(e.charCodeAt(s+2)),s+=2),!Gu(o)){if(o===61){r++;continue}if(!Yu(o)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?Zu(e):Ju(n)},Qu=(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&&Gs(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 Ru(e){const t=typeof e=="string"?e.indexOf("#"):-1;return Qu(t===-1?e:e.slice(0,t),Xu)}const Vr="1.19.0",Zs=64*1024,{isFunction:Dn}=g,ef=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),Xs=e=>{if(!g.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},Qs=(e,...t)=>{try{return!!e(...t)}catch{return!1}},tf=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},nf=e=>{const t=g.global!==void 0&&g.global!==null?g.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=g.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:s,Response:o}=e,l=a?Dn(a):typeof fetch=="function",c=Dn(s),d=Dn(o);if(!l)return!1;const u=l&&Dn(n),f=l&&(typeof r=="function"?(m=>v=>m.encode(v))(new r):async m=>new Uint8Array(await new s(m).arrayBuffer())),p=c&&u&&Qs(()=>{let m=!1;const v=new s(be.origin,{body:new n,method:"POST",get duplex(){return m=!0,"half"}}),E=v.headers.has("Content-Type");return v.body!=null&&v.body.cancel(),m&&!E}),b=d&&u&&Qs(()=>g.isReadableStream(new o("").body)),w={stream:b&&(m=>m.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(m=>{!w[m]&&(w[m]=(v,E)=>{let _=v&&v[m];if(_)return _.call(v);throw new q(`Response type '${m}' is not supported`,q.ERR_NOT_SUPPORT,E)})});const y=async m=>{if(m==null)return 0;if(g.isBlob(m))return m.size;if(g.isSpecCompliantForm(m))return(await new s(be.origin,{method:"POST",body:m}).arrayBuffer()).byteLength;if(g.isArrayBufferView(m)||g.isArrayBuffer(m))return m.byteLength;if(g.isURLSearchParams(m)&&(m=m+""),g.isString(m))return(await f(m)).byteLength},h=async(m,v)=>{const E=g.toFiniteNumber(m.getContentLength());return E??y(v)};return async m=>{let{url:v,method:E,data:_,signal:D,cancelToken:L,timeout:Y,onDownloadProgress:te,onUploadProgress:J,responseType:W,headers:H,withCredentials:M="same-origin",fetchOptions:$,maxContentLength:N,maxBodyLength:I}=Hs(m);const j=g.isNumber(N)&&N>-1,G=g.isNumber(I)&&I>-1,T=F=>g.hasOwnProp(m,F)?m[F]:void 0;let x=a||fetch;W=W?(W+"").toLowerCase():"text";let C=Wu([D,L&&L.toAbortSignal()],Y),B=null;const k=C&&C.unsubscribe&&(()=>{C.unsubscribe()});let V,K=null;const ae=()=>new q("Request body larger than maxBodyLength limit",q.ERR_BAD_REQUEST,m,B);try{let F;const z=T("auth");if(z){const R=g.getSafeProp(z,"username")||"",ye=g.getSafeProp(z,"password")||"";F={username:R,password:ye}}if(tf(v)){const R=new URL(v,be.origin);if(!F&&(R.username||R.password)){const ye=Xs(R.username),ke=Xs(R.password);F={username:ye,password:ke}}(R.username||R.password)&&(R.username="",R.password="",v=R.href)}if(F&&(H.delete("authorization"),H.set("Authorization","Basic "+btoa(ef((F.username||"")+":"+(F.password||""))))),j&&typeof v=="string"&&v.startsWith("data:")&&Ru(v)>N)throw new q("maxContentLength size of "+N+" exceeded",q.ERR_BAD_RESPONSE,m,B);if(G&&E!=="get"&&E!=="head"){const R=await y(_);if(typeof R=="number"&&isFinite(R)&&(V=R,R>I))throw ae()}const A=G&&(g.isReadableStream(_)||g.isStream(_)),Z=(R,ye,ke)=>Ks(R,Zs,ze=>{if(G&&ze>I)throw K=ae();ye&&ye(ze)},ke);if(p&&E!=="get"&&E!=="head"&&(J||A)){if(V=V??await h(H,_),V!==0||A){let R=new s(v,{method:"POST",body:_,duplex:"half"}),ye;if(g.isFormData(_)&&(ye=R.headers.get("content-type"))&&H.setContentType(ye),R.body){const[ke,ze]=J&&js(V,kn(Vs(J)))||[];_=Z(R.body,ke,ze)}}}else if(A&&!c&&u&&E!=="get"&&E!=="head")_=Z(_);else if(A&&c&&!p&&E!=="get"&&E!=="head")throw new q("Stream request bodies are not supported by the current fetch implementation",q.ERR_NOT_SUPPORT,m,B);g.isString(M)||(M=M?"include":"omit");const X=c&&"credentials"in s.prototype;if(g.isFormData(_)){const R=H.getContentType();R&&/^multipart\/form-data/i.test(R)&&!/boundary=/i.test(R)&&H.delete("content-type")}H.set("User-Agent","axios/"+Vr,!1);const ne={...$,signal:C,method:E.toUpperCase(),headers:As(H.normalize()),body:_,duplex:"half",credentials:X?M:void 0};B=c&&new s(v,ne);let ue=await(c?x(B,$):x(v,ne));const me=Se.from(ue.headers);if(j){const R=g.toFiniteNumber(me.getContentLength());if(R!=null&&R>N)throw new q("maxContentLength size of "+N+" exceeded",q.ERR_BAD_RESPONSE,m,B)}const ge=b&&(W==="stream"||W==="response");if(b&&ue.body&&(te||j||ge&&k)){const R={};["status","statusText","headers"].forEach(He=>{R[He]=ue[He]});const ye=g.toFiniteNumber(me.getContentLength()),[ke,ze]=te&&js(ye,kn(Vs(te),!0))||[];let mr=0;const Ut=He=>{if(j&&(mr=He,mr>N))throw new q("maxContentLength size of "+N+" exceeded",q.ERR_BAD_RESPONSE,m,B);ke&&ke(He)};ue=new o(Ks(ue.body,Zs,Ut,()=>{ze&&ze(),k&&k()}),R)}W=W||"text";let fe=await w[g.findKey(w,W)||"text"](ue,m);if(j&&!b&&!ge){let R;if(fe!=null&&(typeof fe.byteLength=="number"?R=fe.byteLength:typeof fe.size=="number"?R=fe.size:typeof fe=="string"&&(R=typeof r=="function"?new r().encode(fe).byteLength:fe.length)),typeof R=="number"&&R>N)throw new q("maxContentLength size of "+N+" exceeded",q.ERR_BAD_RESPONSE,m,B)}return!ge&&k&&k(),await new Promise((R,ye)=>{$s(R,ye,{data:fe,headers:Se.from(ue.headers),status:ue.status,statusText:ue.statusText,config:m,request:B})})}catch(F){if(k&&k(),C&&C.aborted&&C.reason instanceof q){const z=C.reason;throw z.config=m,B&&(z.request=B),F!==z&&Object.defineProperty(z,"cause",{__proto__:null,value:F,writable:!0,enumerable:!1,configurable:!0}),z}if(K)throw B&&!K.request&&(K.request=B),K;if(F instanceof q)throw B&&!F.request&&(F.request=B),F;if(F&&F.name==="TypeError"&&/Load failed|fetch/i.test(F.message)){const z=new q("Network Error",q.ERR_NETWORK,m,B,F&&F.response);throw Object.defineProperty(z,"cause",{__proto__:null,value:F.cause||F,writable:!0,enumerable:!1,configurable:!0}),z}throw q.from(F,F&&F.code,m,B,F&&F.response)}}},rf=new Map,Rs=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=rf;for(;l--;)c=s[l],d=u.get(c),d===void 0&&u.set(c,d=l?new Map:nf(t)),u=d;return d};Rs();const qr={http:pu,xhr:qu,fetch:{get:Rs}};g.forEach(qr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const eo=e=>`- ${e}`,af=e=>g.isFunction(e)||e===null||e===!1;function sf(e,t){e=g.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,!af(r)&&(a=qr[(l=String(r)).toLowerCase()],a===void 0))throw new q(`Unknown adapter '${l}'`);if(a&&(g.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
|
-
`+
|
|
7
|
-
`):" "+
|
|
8
|
-
`);return
|
|
9
|
-
`),l
|
|
10
|
-
`,
|
|
11
|
-
`+s)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=st(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:s}=n;r!==void 0&&Mn.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&&(g.isFunction(a)?n.paramsSerializer={serialize:a}:Mn.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),Mn.assertOptions(n,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let o=s&&g.merge(s.common,s[n.method]);s&&g.forEach(["delete","get","head","post","put","patch","query","common"],w=>{delete s[w]}),n.headers=Se.concat(o,s);const l=[];let c=!0;this.interceptors.request.forEach(function(y){if(typeof y.runWhen=="function"&&y.runWhen(n)===!1)return;c=c&&y.synchronous;const h=n.transitional||Ur;h&&h.legacyInterceptorReqResOrdering?l.unshift(y.fulfilled,y.rejected):l.push(y.fulfilled,y.rejected)});const d=[];this.interceptors.response.forEach(function(y){d.push(y.fulfilled,y.rejected)});let u,f=0,p;if(!c){const w=[zr.bind(this),void 0];for(w.unshift(...l),w.push(...d),p=w.length,u=Promise.resolve(n);f<p;)u=u.then(w[f++],w[f++]);return u}p=l.length;let b=n;for(;f<p;){const w=l[f++],y=l[f++];try{b=w?w(b):b}catch(h){if(!y){u=Promise.reject(h);break}try{const m=y.call(this,h);g.isThenable(m)&&(u=Promise.resolve(m).then(()=>zr.call(this,b)))}catch(m){u=Promise.reject(m)}break}}if(!u)try{u=zr.call(this,b)}catch(w){u=Promise.reject(w)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=st(this.defaults,t);const n=Ws(t.baseURL,t.url,t.allowAbsoluteUrls,t);return Ds(n,t.params,t.paramsSerializer)}};g.forEach(["delete","get","head","options"],function(t){ot.prototype[t]=function(n,r){return this.request(st(r||{},{method:t,url:n,data:r&&g.hasOwnProp(r,"data")?r.data:void 0}))}}),g.forEach(["post","put","patch","query"],function(t){function n(r){return function(s,o,l){return this.request(st(l||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:s,data:o}))}}ot.prototype[t]=n(),t!=="query"&&(ot.prototype[t+"Form"]=n(!0))});let lf=class $l{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 Zt(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 $l(function(a){t=a}),cancel:t}}};function cf(e){return function(n){return e.apply(null,n)}}function df(e){return g.isObject(e)&&e.isAxiosError===!0}const Hr={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(Hr).forEach(([e,t])=>{Hr[t]=e});function ro(e){const t=new ot(e),n=ms(ot.prototype.request,t);return g.extend(n,ot.prototype,t,{allOwnKeys:!0}),g.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return ro(st(e,a))},n}const de=ro(Jt);de.Axios=ot,de.CanceledError=Zt,de.CancelToken=lf,de.isCancel=Bs,de.VERSION=Vr,de.toFormData=On,de.AxiosError=q,de.Cancel=de.CanceledError,de.all=function(t){return Promise.all(t)},de.spread=cf,de.isAxiosError=df,de.mergeConfig=st,de.AxiosHeaders=Se,de.formToJSON=e=>Us(g.isHTMLForm(e)?new FormData(e):e),de.getAdapter=to.getAdapter,de.HttpStatusCode=Hr,de.default=de;const{Axios:Y0,AxiosError:G0,CanceledError:J0,isCancel:Z0,CancelToken:X0,VERSION:Q0,all:R0,Cancel:eg,isAxiosError:tg,spread:ng,toFormData:rg,AxiosHeaders:ag,HttpStatusCode:sg,formToJSON:og,getAdapter:ig,mergeConfig:lg,create:cg}=de;function Pn(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 uf={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 Kr(e,t){function n(a,s,o){if(!(typeof document>"u")){o=Pn({},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,"",Pn({},s,{expires:-1}))},withAttributes:function(a){return Kr(this.converter,Pn({},this.attributes,a))},withConverter:function(a){return Kr(Pn({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Xt=Kr(uf,{path:"/"});const ff={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let vt="https://api-grievance.airaops.com",ao=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:yr&&yr.tagName.toUpperCase()==="SCRIPT"&&yr.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&ff?.VITE_API_URL)vt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(vt=e.env.VITE_API_URL)}}catch{}const so=e=>{vt=e||"",ce.defaults.baseURL=vt},Yr=e=>{ao=e||null},pf=()=>ao||Xt.get("token")||null,ce=de.create({baseURL:vt,headers:{Accept:"application/json","Content-Type":"application/json"}});ce.interceptors.request.use(e=>{const t=pf();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Gr=!1,Jr=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=Xt.get("refreshToken");if(r)try{Gr||(Gr=!0,Jr=de.post(`${vt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await Jr,{token:s,refreshToken:o}=a.data;return Yr(s),o&&Xt.set("refreshToken",o),t.headers.Authorization=`Bearer ${s}`,ce(t)}catch{Xt.remove("token"),Xt.remove("refreshToken")}finally{Gr=!1,Jr=null}}return Promise.reject(e)});const hf=S.createContext(null),oo=({children:e,apiUrl:t,authToken:n})=>(t&&so(t),Yr(n||null),i.jsx(hf.Provider,{value:{apiUrl:t,authToken:n},children:e})),qe={mode:"light",colors:{primary:"#2D64B8",primaryHover:"#2557A3",text:"#111827",textSecondary:"#6B7280",textMuted:"#9CA3AF",border:"#E5E7EB",borderLight:"#F3F4F6",background:"#FFFFFF",surface:"#FFFFFF",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#ECFDF5",activeBorder:"#A7F3D0",activeText:"#059669",inactiveBg:"#F3F4F6",inactiveBorder:"#D1D5DB",inactiveText:"#6B7280",link:"#2D64B8",divider:"#E5E7EB",accentBorder:"#C5D7F0",accentBg:"#EEF4FB",stepDone:"#D6E4F7",success:"#22C55E",danger:"#EF4444",secondaryBtn:"#D1D5DB",secondaryBtnHover:"#C4C9D1",inputBg:"#FFFFFF",tableHeadBg:"#EEF4FB",sidebarBg:"#FAFBFD",overlay:"rgba(16, 24, 40, 0.06)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(16, 24, 40, 0.04)",settings:"0 1px 3px rgba(16, 24, 40, 0.06)"}},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)"}},io={light:qe,dark:Qt};function wt(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function Ct(e,t){if(!wt(t))return e;const n={...e};return Object.keys(t).forEach(r=>{const a=t[r];wt(a)&&wt(e[r])?n[r]=Ct(e[r],a):a!==void 0&&(n[r]=a)}),n}function lo(e){return!e||!wt(e)?{light:qe,dark:Qt}:wt(e.light)||wt(e.dark)?{light:Ct(qe,e.light||{}),dark:Ct(Qt,e.dark||{})}:{light:Ct(qe,e),dark:Ct(Qt,e)}}function co(e,t=!1){const n=lo(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const mf={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"},gf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},yf={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"},bf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function uo(e){const t={};return e?.colors&&Object.entries(mf).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(gf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(yf).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(bf).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 fo=S.createContext({darkMode:!1,theme:null,themeFile:io,cssVars:{}});function po({theme:e,darkMode:t=!1,children:n}){const r=S.useMemo(()=>{const a=co(e,!!t),s=uo(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:s,mode:a.mode}},[e,t]);return i.jsx(fo.Provider,{value:r,children:n})}function ho(){return S.useContext(fo)}const Un=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),Sf=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"},vf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Sf(e)}),Zr=(e,t)=>ie.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return vf(a,r)}}),Oe=Zr("complaint/types/getFormFields",(e,{signal:t})=>ce.get(Un.formFields(e),{signal:t})),Rt=Zr("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>ce.put(Un.formFields(e),t)),en=Zr("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>ce.delete(`${Un.formFields(e)}/${t}`)),mo={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},wf=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}},Xr=e=>e.payload?.message??e.error?.message??"Something went wrong",go=ie.createSlice({name:"complaintAppComplaint",initialState:mo,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 mo}},extraReducers:e=>{e.addCase(Oe.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(Oe.fulfilled,(t,n)=>{const r=wf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(Oe.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=Xr(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=Xr(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=Xr(n)})}}),{clearComplaintError:Cf,clearSelectedComplaintResource:_f,resetComplaintState:Nf}=go.actions,yo=go.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 ce.get(tn)).data}catch(n){return nn(n,t)}}),it=ie.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await ce.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(o=>parseInt(o,10)),userIds:(e.userIds??[]).map(o=>parseInt(o,10))},s=await ce.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 ce.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)}}),Bn=ie.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await ce.delete(`${tn}/${e}`);return{id:e,data:n.data}}catch(n){return nn(n,t)}}),Qr=["userId","id","_id","userID","user_id","value"];function $n(e,t=Qr){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=$n(r,Qr);if(a!==null)return a}}return $n(e.user,Qr)}function Rr(e){const t=$n(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ea(e,t){const n=Rr(e),r=$n(t);return r!==null&&n?.includes(r)===!0}const Ef={complaintList:[],selected:null,loading:!1,saving:!1,error:null},Af=["data","items","results","content","records","list","payload","response","result"],bo=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of Af)if(e[t]!==void 0){const n=bo(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},Ne=e=>e?.id??e?._id,ta=(e,t)=>{if(!t)return e;const n=Rr(e),r=Rr(t);return n?.length||!r?.length?e:{...e,userIds:r}},So=ie.createSlice({name:"complaintType",initialState:Ef,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(Ne(a))===String(n)?{...a,isActive:r}:a),String(Ne(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(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(Ne(a)),a]));t.complaintList=bo(n.payload).map(a=>ta(a,r.get(String(Ne(a)))))}).addCase(rn.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(it.pending,t=>{t.loading=!0,t.error=null}).addCase(it.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(s=>String(Ne(s))===String(Ne(r)));t.selected=ta(r,a)}).addCase(it.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(o=>String(Ne(o))!==String(Ne(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=Ne(r)??n.meta?.arg?.id,s=t.complaintList.find(c=>String(Ne(c))===String(a)),o=n.meta?.arg?.data?.userIds,l=Array.isArray(o)?{...r,userIds:o}:ta(r,s);t.complaintList=t.complaintList.map(c=>String(Ne(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(Bn.pending,t=>{t.saving=!0,t.error=null}).addCase(Bn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ne(a))!==String(r)),String(Ne(t.selected))===String(r)&&(t.selected=null)}).addCase(Bn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:Tf}=So.actions,Lf=So.reducer,Ff={details:{},id:null,isEdit:!1},vo=ie.createSlice({name:"appDetails",initialState:Ff,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:wo,clearAppDetails:If,setId:lt,setIsEdit:_t,clearId:Of}=vo.actions,Co=vo.reducer,kf={list:[],pagination:null,isLoading:!1,error:null},_o=ie.createSlice({name:"roles",initialState:kf,reducers:{}});_o.reducer;const jn=60,na=24*jn,Df={d:na,h:jn,m:1};function ra(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function No(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,s)=>a+Te(s?.escalateAfterMinutes),0)}function Te(e){if(e==null||e==="")return 0;if(typeof e=="number")return ra(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return ra(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+=(Df[s[2]]||0)*Number(s[1]);return a?ra(r):0}function Nt(e){const t=Math.round(typeof e=="number"?e:Te(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/na),r=Math.floor(t%na/jn),a=t%jn,s=[];return n&&s.push(`${n}d`),r&&s.push(`${r}h`),a&&s.push(`${a}m`),s.join("")}function xf(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Te(e)>0}function Mf(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>Nt(Number(n))||"0m")}function Pf(e=[]){return No(e,!0)}function Et(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Te(t)-No(e,!1)),r=Nt(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((s,o)=>o===a?{...s,escalateAfterMinutes:r}:s)}function Uf(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 Eo=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function Bf(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 aa(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const Ao=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Bf(e)}),Je=ie.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await ce.get(Eo(e))).data}catch(n){return Ao(n,t)}}),Vn=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(w=>Number(w)):[],u=Array.isArray(l.users)?l.users.map(w=>Number(w)):[],f=d.length>0,p=u.length>0,b=!f&&(p||l.workflowType==="user");return{levelNo:c+1,workflowType:b?"Users Based":"Role Based",...f||!b?{roleIds:d}:{},...p||b?{userAssignments:u.map(w=>({userId:w}))}:{},escalateAfterMinutes:Te(l.escalateAfterMinutes),canResolve:aa(l.canResolve),canReassign:aa(l.canReassign),isFinalLevel:aa(l.finalLevel),isActive:!0}}),o=await ce.put(Eo(e),{steps:s});return typeof n=="function"&&n(o.data),o.data}catch(s){return typeof r=="function"&&r(s),Ao(s,a)}}),$f={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},jf=ie.createSlice({name:"workflow",initialState:$f,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(Vn.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Vn.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Vn.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,To="/api/v1/complaints",Vf=(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:o="-createdAt",fromDate:l,toDate:c}=e||{},d={page:r,limit:a,complaintTypeId:n,sort:o};return s!=null&&s!==""&&s!=="all"&&(d.status=s),l&&c&&(d.fromDate=l,d.toDate=c),(await ce.get(To,{params:d,signal:t.signal})).data}catch(n){return Vf(n,t)}}),qf=e=>`/api/v1/complaints/${e}`,Wf=(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 sa(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:o},l)=>{try{const c={},d=sa(t),u=sa(n),f=sa(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(qf(e),c,{signal:l.signal});return s&&typeof s=="function"&&s(p.data),p.data}catch(c){return o&&typeof o=="function"&&o(c),Wf(c,l)}}),Lo={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},zf=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}},Hf=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",Fo=e=>e?.complaintId??e?.id,Kf=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??Fo(r);return a==null?e:e.map(s=>{if(String(Fo(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})},Io=ie.createSlice({name:"complaintManagement",initialState:Lo,reducers:{resetComplaintManagementState:()=>Lo},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=zf(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=Hf(n))}).addCase(on.fulfilled,(t,n)=>{t.list=Kf(t.list,n)})}}),{resetComplaintManagementState:Oo}=Io.actions,Yf=Io.reducer,Gf=e=>`/api/v1/complaint-types/${e}/statuses`,Jf="/api/v1/complaints/summary",ko=(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("status/fetchStatuses",async(e,t)=>{try{return(await ce.get(Gf(e),{signal:t.signal})).data}catch(n){return ko(n,t)}}),At=ie.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await ce.get(Jf,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return ko(n,t)}}),Do={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},Zf=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},Xf=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Qf=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",Rf=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Wn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),xo=ie.createSlice({name:"status",initialState:Do,reducers:{resetStatusState:()=>Do},extraReducers:e=>{e.addCase(qn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(qn.fulfilled,(t,n)=>{const r=n.meta.arg;if(Wn(t.requestedComplaintTypeId,r))return;const a=Zf(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((s,o)=>(s.displayOrder??0)-(o.displayOrder??0))}).addCase(qn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Wn(t.requestedComplaintTypeId,r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Qf(n))}).addCase(At.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(At.fulfilled,(t,n)=>{const r=n.meta.arg;Wn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=Xf(n.payload))}).addCase(At.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Wn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=Rf(n))})}}),{resetStatusState:Mo}=xo.actions,ep=xo.reducer,tp="/api/v1/complaints",np="/api/v1/complaint-types",Po=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},zn=ie.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await ce.post(tp,e,{signal:t.signal})).data}catch(n){return Po(n,t)}}),ln=ie.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const s=await ce.patch(`${np}/${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),Po(s,a)}}),rp={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},ap=e=>e.payload?.message??e.error?.message??"Failed to create complaint",sp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",op=ie.createSlice({name:"createComplaint",initialState:rp,reducers:{},extraReducers:e=>{e.addCase(zn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(zn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(zn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=ap(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=sp(n))})}}).reducer,Uo={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},ip=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Bo=ie.createSlice({name:"changeStatus",initialState:Uo,reducers:{resetChangeStatusState:()=>Uo},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=ip(n))})}}),{resetChangeStatusState:lp}=Bo.actions,cp=Bo.reducer,dp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},oa=(e,t)=>{try{return dp?.[e]||t}catch{return t}},up=oa("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),$o=oa("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),fp=oa("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),jo=e=>/^https?:\/\//i.test(e)?e:`${up}${e}`,pp=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",Vo=(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: ${$o}`:e?.response?.data?.error??e?.message??t)},Tt=ie.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:pp(e)},a=await ce.post(jo($o),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(Vo(r,"Error uploading file"))}}),Hn=ie.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await ce.get(jo(fp),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(Vo(n,"Error getting file signedUrl"))}}),hp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},mp=ie.createSlice({name:"s3",initialState:hp,reducers:{},extraReducers:e=>{e.addCase(Tt.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(Tt.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(Tt.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(Hn.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(Hn.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(Hn.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,gp=ie.combineReducers({complaintAppComplaint:yo,complaintType:Lf,appDetails:Co,workflow:jf,roles:_o.reducer,complaintManagement:Yf,status:ep,createComplaint:op,changeStatus:cp,s3:mp}),qo=e=>ie.configureStore({reducer:gp,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),Wo=qo();function we({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 zo({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 Ho={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},yp={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||yp[e]||"p",o=Ho[e]||Ho.body;return i.jsx(s,{className:`${o} ${n}`.trim(),...a,children:r})}function ia(e){return i.jsx(Ze,{variant:"h1",...e})}function la(e){return i.jsx(Ze,{variant:"h2",...e})}function Kn(e){return i.jsx(Ze,{variant:"body",...e})}function Ko(e){return i.jsx(Ze,{variant:"label",...e})}function Yo(e){return i.jsx(Ze,{variant:"value",...e})}function bp(e){return i.jsx(Ze,{variant:"link",type:"button",...e})}function Go({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,showAction:a=!0,className:s=""}){return i.jsxs("header",{className:`ca-page-header ${s}`.trim(),children:[i.jsxs("div",{className:"ca-page-header__text",children:[i.jsx(ia,{children:e}),t?i.jsx(Kn,{children:t}):null]}),a?i.jsx("div",{className:"ca-page-header__actions",children:i.jsx(we,{startIcon:i.jsx(zo,{}),onClick:r,children:n})}):null]})}function Yn({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 Gn({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,canDelete:s=!1,activeDisabled:o=!1,onActiveChange:l,onDelete:c,className:d=""}){return i.jsxs("div",{className:`ca-system-card__header ${d}`.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(la,{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(Yn,{checked:r,disabled:!a||o,className:a?"":"ca-toggle--no-permission","aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:l}),i.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:i.jsx(Gn,{size:40,color:"currentColor"})})]})]})}function Jn({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 Sp="ComplaintTracker",vp=[{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 ca(e){const t=Array.isArray(e)?e:[],n=new Set(t.filter(c=>c?.featureModule?.name===Sp&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),r=n.has("READ"),a=n.has("CREATE"),s=n.has("FULL_ACCESS"),o=n.has("DELETE"),l=r||s;return{canViewCards:l,canCreateForm:a,canDelete:o,canOpen:s,hasAnyAccess:l||a}}const wp="aira-query-complaintTypeId";function Zo({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:s,canConfigure:o=!1}){const l=Ge(),c=Q.useDispatch(),d=Q.useSelector(b=>b.appDetails?.details?.featureActions),{canOpen:u}=ca(d),f=s?.data??s?.id??s?._id??s,p=()=>{const b=s?.data??s?.id??s?._id??s;if(b!=null&&b!==""){const w=String(b);try{sessionStorage.setItem(wp,w)}catch{}c(lt(w)),c(Oo()),c(Mo()),l(`/complaintmanagement/${w}`);return}l("/complaintmanagement")};return i.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[i.jsx(Ze,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),i.jsxs("div",{className:"ca-system-card__footer-actions",children:[u?i.jsxs(we,{size:"sm",onClick:p,children:[t,i.jsx(Jn,{size:14,color:"currentColor"})]}):null,o?i.jsx(we,{size:"sm",onClick:()=>{if(f==null||f==="")return;const b=String(f);c(_t({data:!0})),c(lt(b)),l(`/settings/${b}?step=1`)},endIcon:i.jsx(Jn,{size:14,color:"currentColor"}),children:n}):null]})]})}function Xo({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(Yo,{children:a}),i.jsx("span",{className:"ca-data-point__label",children:e})]})}function Qo({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",_p="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",Np="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",Ep="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 Ap(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 Ro({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:b,onConfigure:w,onOpen:y,onDelete:h,onToggleActive:m,isTogglingActive:v=!1,className:E=""}){const _=Q.useSelector($=>$.appDetails?.details?.currentUser),D=Q.useSelector($=>$.appDetails?.details?.featureActions),{canCreateForm:L,canDelete:Y}=ca(D),te=L&&ea(n,_),J=()=>{w?.({id:e,title:t,status:r,departments:o,workflows:l,fields:c,formsFilled:d,updatedOn:u})},W=()=>{if(b){b({id:e,title:t,descriptionHref:s});return}s&&typeof window<"u"&&window.open(s,"_blank","noopener,noreferrer")},H=[{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:_p,alt:""})},{label:"Done entries",value:n?.closedEntries??0,icon:i.jsx("img",{src:Np,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:i.jsx("img",{src:Ep,alt:""})}],M=e??n?.id??n?._id;return i.jsxs("article",{className:`ca-system-card ${E}`.trim(),children:[i.jsx(Jo,{title:n?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:te,canDelete:Y,activeDisabled:v,onActiveChange:$=>m?.({id:M,isActive:$,item:n}),onDelete:()=>h?.({id:M,title:t,item:n})}),a?i.jsx("p",{className:"ca-system-card__description",onClick:W,children:a}):null,i.jsx("div",{className:"ca-system-card__stats",children:H.map(($,N)=>i.jsxs(S.Fragment,{children:[N>0?i.jsx(Qo,{}):i.jsx("div",{className:"ca-system-card__stats-spacer"}),i.jsx(Xo,{label:$.label,value:$.value,icon:$.icon})]},$.label))}),i.jsx(Zo,{updatedOn:u??Ap(n?.updatedAt??n?.createdAt),onOpen:()=>y?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canConfigure:te,onConfigure:J})]})}function ei({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(Ro,{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(Kn,{children:c})})})}function Lt({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 ti({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 ni({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(Lt,{value:e,onChange:t,onKeyDown:s,placeholder:r,icon:i.jsx(ti,{}),"aria-label":r})})}function Ft({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 Tp=[{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"}],ri="Create, manage and track complaint forms, workflows and responses across departments.";function ai({title:e="Complaint Management",description:t=ri,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:s,onTitleClick:o,onDescriptionClick:l,onSearch:c}){const d=Ge(),u=Q.useDispatch(),[f,p]=S.useState(""),[b,w]=S.useState(null),{complaintList:y=[],loading:h=!1,error:m=null}=Q.useSelector(N=>N.complaintType??{}),v=Q.useSelector(N=>N.appDetails?.details?.currentUser),E=Q.useSelector(N=>N.appDetails?.details?.featureActions),{canViewCards:_,canCreateForm:D,canDelete:L,hasAnyAccess:Y}=S.useMemo(()=>ca(E),[E]);S.useEffect(()=>{u(_t({data:!1})),u(rn())},[u]);const te=S.useMemo(()=>{const N=f.trim().toLowerCase();return N?y.filter(I=>[I.title,I.name,I.description,I.status].filter(Boolean).join(" ").toLowerCase().includes(N)):y},[y,f]);S.useEffect(()=>{c&&c(f)},[f,c]);const J=N=>{p(N.target.value)},W=N=>{a?.(N),d(`/settings/${N.id??"new"}?step=1`)},H=()=>{u(_t({data:!1})),r?.(),d("/settings/new?step=1")},M=({id:N})=>{L&&N!=null&&u(Bn(N))},$=({id:N,isActive:I,item:j})=>{!D||!ea(j,v)||N!=null&&(w(N),u(ln({id:N,isActive:I})).unwrap().then(()=>u(Tf({id:N,isActive:I}))).finally(()=>w(null)))};return Y?i.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[i.jsx(Go,{title:e,description:t,actionLabel:n,onAction:H,showAction:D}),_?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"ca-search-container",children:i.jsx(ni,{value:f,onChange:J,placeholder:"Search"})}),h?i.jsx(Ft,{text:"Loading systems"}):m?i.jsx("div",{className:"ca-empty",children:i.jsx("p",{className:"ca-body",children:typeof m=="string"?m:"Failed to load complaint types."})}):i.jsx(ei,{systems:te,onConfigure:W,onOpen:s,onDelete:M,onToggleActive:$,togglingActiveId:b,onTitleClick:o,onDescriptionClick:l,emptyMessage:f?"No systems match your search.":"No systems found."})]}):null]}):i.jsx("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",style:{minHeight:"80vh",display:"flex",alignItems:"center",justifyContent:"center"},children:i.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 si=S.createContext(null),oi=()=>({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 ii({children:e,initialValues:t}){const[n,r]=S.useState(()=>({...oi(),...t,workflow:{...oi().workflow,...t?.workflow}})),a=S.useCallback(l=>{r(c=>({...c,...l}))},[]),s=S.useCallback(l=>{r(c=>({...c,workflow:{...c.workflow,...l}}))},[]),o=S.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:s}),[n,a,s]);return i.jsx(si.Provider,{value:o,children:e})}function Zn(){const e=S.useContext(si);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const Ue=[{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."}],Lp=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function Fp({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 li({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(la,{children:e}),t?i.jsx(Kn,{className:"ca-settings-card__desc",children:t}):null]})}),l,a?i.jsx(we,{variant:o,disabled:s,onClick:r,endIcon:i.jsx(Jn,{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(li,{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 da({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 ua({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 fa(e){return typeof e=="string"?e:e.value}function pa(e){return typeof e=="string"?e:e.label}function We({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:s=!1,maxVisible:o,allowClear:l=!1,...c}){const[d,u]=S.useState(!1),f=S.useRef(null),p=e??"",b=n.find(h=>String(fa(h))===String(p)),w=b?pa(b):"";S.useEffect(()=>{if(!d)return;const h=m=>{f.current?.contains(m.target)||u(!1)};return document.addEventListener("mousedown",h),()=>document.removeEventListener("mousedown",h)},[d]);const y=h=>{t?.({target:{value:h}})};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${w?"":" ca-select__control--placeholder"}`,disabled:s,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(h=>!h),children:w||r}),i.jsx("span",{className:"ca-select__chevron",children:i.jsx(ua,{size:16})}),d?i.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":o},children:n.map(h=>{const m=fa(h),v=String(m)===String(p);return i.jsx("li",{role:"none",children:i.jsx("button",{type:"button",role:"option","aria-selected":v,className:`ca-select__option${v?" is-selected":""}`,onClick:()=>{y(m),u(!1)},children:pa(h)})},m)})}):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(h=>{const m=fa(h);return i.jsx("option",{value:m,disabled:!!(h&&typeof h=="object"&&h.disabled),children:pa(h)},m)})]}),i.jsx("span",{className:"ca-select__chevron",children:i.jsx(ua,{size:16})})]})}function ci({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 Be({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(da,{htmlFor:a,hint:t,children:e}):null,n]})}function dn({label:e,hint:t,helperText:n,...r}){return i.jsxs(Be,{label:e,hint:t,htmlFor:r.id,children:[i.jsx(Lt,{...r}),n?i.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function ha({label:e,hint:t,...n}){return i.jsx(Be,{label:e,hint:t,htmlFor:n.id,children:i.jsx(We,{...n})})}function Ip({label:e,hint:t,maxLength:n,value:r="",...a}){const s=t??(n!=null?`${String(r).length}/${n}`:void 0);return i.jsx(Be,{label:e,hint:s,htmlFor:a.id,children:i.jsx(ci,{value:r,maxLength:n,...a})})}function di({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 ui({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(di,{size:10})}):null]})}function Xn({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:b="Search",lockedValues:w=[],rotateChevron:y=!1}){const[h,m]=S.useState(!1),[v,E]=S.useState(""),_=Array.isArray(n)?n.filter(T=>T!=null&&T!==""):[],D=new Set(w.map(T=>String(T))),L=S.useRef(null),Y=S.useRef(null),te=t.map(T=>typeof T=="string"?{value:T,label:T,sublabel:"",searchText:T}:{value:T.value,label:T.label,sublabel:T.sublabel??"",title:T.title??"",searchText:T.searchText??`${T.label??""} ${T.sublabel??""}`}).filter(T=>T.value!==null&&T.value!==void 0&&T.value!==""),J=new Map(te.map(T=>[String(T.value),T.label])),W=T=>_.some(x=>String(x)===String(T)),H=te.filter(T=>`${T.label} ${T.sublabel} ${T.searchText}`.toLowerCase().includes(v.trim().toLowerCase())),M=H.map(T=>T.value),$=M.length>0&&M.every(T=>W(T)),N=()=>{if($)r?.(_.filter(T=>D.has(String(T))||!M.some(x=>String(x)===String(T))));else{const T=_.filter(x=>!M.some(C=>String(C)===String(x)));r?.([...T,...M])}};S.useEffect(()=>{h&&Y.current&&(Y.current.scrollTop=0)},[h]),S.useEffect(()=>{if(!h)return;const T=C=>{L.current&&!L.current.contains(C.target)&&(m(!1),E(""))},x=C=>{C.key==="Escape"&&(m(!1),E(""))};return document.addEventListener("mousedown",T),document.addEventListener("touchstart",T),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",T),document.removeEventListener("touchstart",T),document.removeEventListener("keydown",x)}},[h]);const I=T=>{D.has(String(T))||(W(T)?r?.(_.filter(x=>String(x)!==String(T))):r?.([..._,T]),E(""))},j=T=>{D.has(String(T))||r?.(_.filter(x=>String(x)!==String(T)))},G=_.length?`${_.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(da,{children:[e,l?i.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),i.jsxs("div",{className:"ca-multi-select",ref:L,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":h,onClick:()=>m(!0),children:[i.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:v,placeholder:b,"aria-label":b,onFocus:()=>m(!0),onChange:T=>{E(T.target.value),m(!0)},onKeyDown:T=>{T.key==="Escape"&&(T.stopPropagation(),m(!1),E(""))}}),i.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:y&&h?"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:()=>m(T=>!T),"aria-haspopup":"listbox","aria-expanded":h,children:[i.jsx("span",{className:_.length?"":"ca-multi-select__placeholder",children:G}),i.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:y&&h?"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"})})]}),h?i.jsxs("ul",{ref:Y,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&&H.length>1?i.jsx("li",{role:"option","aria-selected":$,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:$,onChange:N}),i.jsx("span",{children:"All"})]})}):null,H.length?H.map(T=>i.jsx("li",{role:"option","aria-selected":W(T.value),children:i.jsxs("label",{className:"ca-multi-select__option",children:[i.jsx("input",{type:"checkbox",checked:W(T.value),disabled:D.has(String(T.value)),onChange:()=>I(T.value)}),i.jsxs("span",{className:"ca-multi-select__option-text",children:[i.jsx("span",{className:"ca-multi-select__option-label",children:T.label}),T.sublabel?i.jsx("span",{className:"ca-multi-select__option-sublabel",children:T.sublabel}):null]})]})},String(T.value))):i.jsx("li",{className:"ca-multi-select__empty",children:v?"No matching options":c})]}):null]}),_.length>0?i.jsx("div",{className:"ca-tag-list",children:[...new Set(_)].map(T=>i.jsx(ui,{label:J.get(String(T))||String(T),title:te.find(x=>String(x.value)===String(T))?.title,onRemove:D.has(String(T))?void 0:()=>j(T)},String(T)))}):null]})}function un({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=S.useRef({}),p=Q.useDispatch();return S.useEffect(()=>{const b=f.current[t];if(!b)return;const w=requestAnimationFrame(()=>{let y=b.parentElement;for(;y&&y!==document.body;){const{overflowX:D}=getComputedStyle(y);if(y.scrollWidth>y.clientWidth+1&&(D==="auto"||D==="scroll"))break;y=y.parentElement}if(!y||y===document.body)return;const h=y.getBoundingClientRect(),m=b.getBoundingClientRect(),v=12;if(m.left>=h.left+v&&m.right<=h.right-v)return;const _=m.left-h.left-(h.width-m.width)/2;y.scrollTo({left:y.scrollLeft+_,behavior:"smooth"})});return()=>cancelAnimationFrame(w)},[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((b,w)=>{const y=b.id??w+1,h=y===t,m=y<t,v=!!r&&(n||m||h);return i.jsxs("button",{type:"button",ref:E=>{f.current[y]=E},className:["ca-stepper__item",h?"ca-stepper__item--active":"",m?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-w},onClick:()=>{p(_t({data:!0})),v&&r?.(y)},disabled:!v,"aria-current":h?"step":void 0,children:[i.jsxs("span",{className:"ca-stepper__circle",children:[y,"."]}),i.jsx("span",{className:"ca-stepper__label",children:b.label})]},y)})}),o||l||u?i.jsxs("div",{className:"ca-stepper__actions",children:[u,l?i.jsx(we,{onClick:c,children:d}):null]}):null]})}const Op={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},kp=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],Dp={value:"",label:"Select Template"},ma=e=>String(e?.id??e?.code??e?.name??"");function xp(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 ga(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=xp(n);if(r.length)return r}return[]}function Qn(e){return e==null||e===""?null:String(e).trim()||null}function fi(e){return Qn(e?.userId??e?.user_id??e?.id??e?.value)}function Mp(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=Qn(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 fi(s)}function ya(...e){const t=new Map;return e.flat().forEach(n=>{const r=Qn(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const pi=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:Nt(e?.tatMinutes)||"",template:ma(e),categoryType:e?.categoryType??ma(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:ga(e)}};function Pp(e){return[Dp,...e]}function Up(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 Bp({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:s}=Zn(),[o,l]=S.useState(()=>a.categoryFormData??Op),c=S.useRef(a.categoryFormData),[d,u]=S.useState({}),f=Q.useDispatch(),{id:p}=Q.useSelector(C=>C.appDetails||{}),{isEdit:b}=Q.useSelector(C=>C.appDetails||{}),w=Q.useSelector(C=>C.complaintType||{}),y=Q.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:h=[],saving:m,loading:v,error:E}=w,_=h.find(C=>String(C?.id??C?._id)===String(p))??(String(w.selected?.id??w.selected?._id)===String(p)?w.selected:null),D=S.useRef(_),L=S.useRef(!1);S.useEffect(()=>{D.current=_},[_]);const Y=(C,B={})=>{l(C),c.current=C,s({categoryFormData:C,...B})};S.useEffect(()=>{a.categoryFormData||s({categoryFormData:o,categoryRoleIds:o.roles})},[o,s,a.categoryFormData]),S.useEffect(()=>{!h.length&&!v&&!L.current&&(L.current=!0,f(rn()))},[h.length,f,v]),S.useEffect(()=>{!b||p===null||p===void 0||c.current||f(it(p)).unwrap().then(C=>{const B=C?.data??C;if(!B||c.current)return;const k=D.current,V=ga(B),K=ga(k),ae={...B,roleIds:B.roleIds??k?.roleIds,userIds:V.length?V:K},F=pi(ae);l(F),c.current=F,s({categoryFormData:F,categoryRoleIds:F.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[f,p,b,s]);const te=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!==""),J=r.map(C=>{const B=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),k=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:B,sublabel:k,title:k?`Email: ${k}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),W=b?Mp(_,r):fi(y),H=[];ya(o.userIds,H);const M=b?_?.createdByUser??_?.createdBy:y;if(W&&!J.some(C=>Qn(C.value)===W)){const C=typeof M=="object"?String(M.name??M.userName??[M.firstName,M.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";J.push({value:W,label:C||"Created by user",sublabel:typeof M=="object"?String(M.email??"").trim():""})}const $=h.map(C=>({value:ma(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),N=async C=>{const B=C?.id??C?._id??null,k={...o,...pi(C),categoryName:"",roles:[],userIds:H};if(Y(k,{categoryRoleIds:[]}),s({templateId:B,tatMinutes:Te(C?.tatMinutes)}),B==null||B===""){s({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[V,K]=await Promise.all([f(Je(B)).unwrap(),f(Oe(B)).unwrap()]),ae=(Array.isArray(V?.data)?V.data:Array.isArray(V)?V:[]).map(z=>({...z,roleIds:[],role:[],roleId:null})),F=Array.isArray(K?.data)?K.data:Array.isArray(K)?K:[];s({templateId:B,tatMinutes:Te(C?.tatMinutes),prefillWorkflowSteps:ae,prefillFormFields:F})}catch(V){console.log("Failed to load template details:",V),s({templateId:B,prefillWorkflowSteps:[],prefillFormFields:[]})}},I=()=>{const C={...o,template:"",categoryType:"",tatMinutes:"",description:""};Y(C),s({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},j=C=>{const B=C.target.value;if(!B){I();return}const k=$.find(V=>V.value===B)?.complaintType;if(k){N(k);return}G("template",B),G("categoryType",B)},G=(C,B)=>{const k=Array.isArray(B)?C==="userIds"?ya(B,H):[...new Set(B.filter(K=>K!=null&&K!==""))]:B,V={...o,[C]:k};Y(V,C==="roles"?{categoryRoleIds:k}:{}),u(K=>{if(!K[C])return K;const ae={...K};return delete ae[C],ae})},T=o.visibilityType==="PRIVATE_LINK"||o.visibilityType==="PUBLIC_LINK",x=async()=>{const C={};if(o.categoryName.trim()||(C.categoryName=!0),xf(o.tatMinutes)||(C.tatMinutes=!0),o.visibilityType||(C.visibilityType=!0),o.roles.length||(C.roles=!0),T&&!o.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){u(C);return}u({});const B=Te(o.tatMinutes),k={...o,userIds:ya(o.userIds,H)};Y(k,{tatMinutes:B,categoryRoleIds:k.roles});const V={categoryName:o.categoryName,categoryType:o.categoryType||o.template,tatMinutes:B,description:o.description,visibilityType:o.visibilityType,urlLink:T?o.urlLink:"",active:o.active,roles:k.roles},K=b?sn({id:p,data:{code:V.categoryName,name:V.categoryName,description:V.description,tatMinutes:V.tatMinutes,accessType:V.visibilityType,roleIds:V.roles.map(F=>parseInt(F,10))},onFail:F=>{console.log("updateComplaintType onFail:",F)}}):an({payload:V,onSuccess:F=>{f(lt(F?.data?.id??F?.id??null))},onFail:F=>{console.log("createComplaintType onFail:",F)}}),ae=await f(K);if(b&&sn.fulfilled.match(ae)||!b&&an.fulfilled.match(ae)){if(!b){const F=ae.payload?.data?.id??ae.payload?.id;F!=null&&f(lt(F))}t.onNext?.()}};return i.jsxs(i.Fragment,{children:[i.jsx(un,{...t,steps:Ue,showNextButton:!!t.showNextButton,onNext:x}),E||Object.keys(d).length>0?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:E||Up(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(ha,{label:"Select Template (Optional)",value:o.template||o.categoryType,onChange:j,options:Pp($),placeholder:"Select Template",maxVisible:5,disabled:b,className:b?"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=>G("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=>G("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=>G("description",C.target.value),placeholder:"Enter description"})}),i.jsxs("div",{className:"ca-step-row",children:[i.jsx(ha,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:o.visibilityType,onChange:C=>G("visibilityType",C.target.value),options:kp,placeholder:"Select visibility type"}),T?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=>G("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),i.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:i.jsx(Xn,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:te,value:o.roles,maxVisible:4,onChange:C=>G("roles",C)})}),v?i.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,m?i.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function hi({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(we,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const ba=["Yes","No"],It=()=>i.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function mi({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:b=[],fieldErrors:w={}}){const y=n??r??{},h=Array.isArray(y.role)?y.role:[],m=Array.isArray(y.users)?y.users:[],v=y.workflowType==="user"?"user":"role",E=u.map(N=>({value:N.id??N.roleId??N.value,label:N.name??N.roleName??N.label})).filter(N=>N.value!==null&&N.value!==void 0&&N.value!==""),_=N=>{const I=[N?.firstName,N?.lastName].map(T=>String(T??"").trim()).filter(Boolean).join(" "),j=String(N?.name??N?.userName??N?.label??"").trim()||I,G=[N?.roleName,N?.role?.name,typeof N?.role=="string"?N.role:"",...Array.isArray(N?.roles)?N.roles.map(T=>typeof T=="string"?T:T?.name):[]].map(T=>String(T??"").trim()).filter(Boolean).filter((T,x,C)=>C.indexOf(T)===x).join(", ");return{userName:j,roleName:G,email:String(N?.email??N?.userEmail??"").trim()}},D=b.map(N=>{const{userName:I,roleName:j,email:G}=_(N);return{value:N.id??N.userId??N.user_id??N.value,label:I,sublabel:G,title:G?`Email: ${G}`:"",searchText:j}}).filter(N=>N.value!==null&&N.value!==void 0&&N.value!==""),L=(N,I)=>{const j={...y,[N]:I};a?a(j):s?.(j)},Y=h.length===0&&m.length===0,te=(f||!!w.role)&&Y,J=N=>N?"ca-control--invalid":"",W=t===1?"green":t===2?"orange":"blue",H=N=>`workflow-level-${t}-${N}`,M=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),$=[{value:"role",label:"Role",count:h.length},{value:"user",label:"User",count:m.length}];return i.jsxs("article",{className:`ca-table-card ca-table-card--${W}${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:M})]}),i.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:N=>{N.stopPropagation(),c?.()},children:i.jsx(Gn,{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:$.map(N=>i.jsxs("button",{type:"button",className:`ca-type-toggle__btn${v===N.value?" ca-type-toggle__btn--active":""}`,onClick:I=>{I.stopPropagation(),v!==N.value&&L("workflowType",N.value)},children:[N.label,N.count?` (${N.count})`:""]},N.value))}),v==="role"?i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Select Roles",i.jsx(It,{})]}),htmlFor:H("roleIds"),children:i.jsx(Xn,{id:H("role"),value:h,options:E,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:te,onChange:N=>L("role",N)},"role")}):i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Select Users",i.jsx(It,{})]}),htmlFor:H("userIds"),children:i.jsx(Xn,{id:H("user"),value:m,options:D,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:te,onChange:N=>L("users",N)},"user")}),i.jsx("div",{className:"ca-table-card__divider"}),i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Can Resolve ",i.jsx(i.Fragment,{children:"(Change the Status)"}),i.jsx(It,{})]}),htmlFor:H("canResolve"),children:i.jsx(We,{id:H("canResolve"),className:J(w.canResolve),value:y.canResolve,options:ba,onChange:N=>L("canResolve",N.target.value)})}),i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Can Reassign ",i.jsx(i.Fragment,{children:"(Change the Level)"}),i.jsx(It,{})]}),htmlFor:H("canReassign"),children:i.jsx(We,{id:H("canReassign"),className:J(w.canReassign),value:t===1?"No":y.canReassign,options:t===1?["No"]:ba,disabled:t===1,onChange:N=>L("canReassign",N.target.value)})}),i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Final Level",i.jsx(i.Fragment,{children:"(can be resolved or closed the complaint)"}),i.jsx(It,{})]}),htmlFor:H("finalLevel"),children:i.jsx(We,{id:H("finalLevel"),className:J(w.finalLevel),value:y.finalLevel,options:ba,onChange:N=>L("finalLevel",N.target.value)})}),i.jsx(Be,{label:i.jsxs(i.Fragment,{children:["Escalation time",i.jsx(It,{})]}),htmlFor:H("escalationTime"),children:i.jsx("div",{className:"ca-table-card__time-input",children:i.jsx(Lt,{id:H("escalationTime"),type:"text",className:J(p||w.escalation),value:y.escalateAfterMinutes??"",placeholder:"--",onChange:N=>L("escalateAfterMinutes",N.target.value)})})})]})]})}function Sa({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(we,{variant:"outline",onClick:o,children:s}):null,i.jsx(we,{onClick:a,disabled:l,children:r})]})]})}):null}function gi({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?i.jsx(Sa,{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(Sa,{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 va(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 $p="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",jp="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",Vp="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",qp="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",wa=(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:Nt(n.escalateAfterMinutes)||""});function Ca(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 Wp(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 wa(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:s,workflowType:o,canResolve:Ca(e.canResolve),canReassign:t===0?"No":Ca(e.canReassign),finalLevel:Ca(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:Nt(e.escalateAfterMinutes)||""})}function yi(e=[]){return(Array.isArray(e)?e:[]).map(Wp)}function bi(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(n=>n&&typeof n=="object"):[])}const _a=[wa(1,"Level 1")];function Si({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:$p,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),i.jsx("span",{children:"Escalates to"}),i.jsx("img",{src:jp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function vi({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:Vp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),i.jsx("span",{children:"Escalates to"}),i.jsx("img",{src:qp,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function wi({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 b=e!=null,[,w]=S.useState(_a),[y,h]=S.useState(_a),[m,v]=S.useState([]),[E,_]=S.useState(b),[D,L]=S.useState(null),[Y,te]=S.useState(l),J=S.useRef(null),W=S.useRef(l),H=S.useRef(new Set),[M,$]=S.useState([]),[N,I]=S.useState(null),j=Q.useDispatch(),G=S.useMemo(()=>{const F=yi(o);return F.length?F:_a},[o]),T=(()=>{const F=new Set;return[...s,...m,...bi(o)].filter(z=>{const A=String(z?.id??z?.roleId??z?.value);return F.has(A)?!1:(F.add(A),!0)})})();if(!b&&D!==G){const F=Et(G,l);L(G),h(F),w(F)}if(!E&&Y!==l){te(l);const F=Et(y,l);F!==y&&h(F)}S.useEffect(()=>{W.current=l},[l]),S.useEffect(()=>{if(!b){const A=Et(G,W.current);r({id:e,tables:A});return}let F=!1;return(async()=>{_(!0);try{const A=await j(Je(e)).unwrap(),Z=Array.isArray(A?.data)?A.data:Array.isArray(A)?A:[];v(bi(Z));const X=yi(Z),ne=Et(X.length?X:G,W.current);F||(w(ne),h(ne),r({id:e,tables:ne}))}catch(A){if(!F){const Z=Et(G,W.current);w(Z),h(Z),r({id:e,tables:Z}),console.error("Failed to load workflow steps:",A)}}finally{F||_(!1)}})(),()=>{F=!0}},[j,G,b,e,r]),S.useEffect(()=>{E||r?.({id:e,tables:y})},[e,E,r,y]);const x=S.useCallback((F,{preserveLastLevel:z}={})=>{const A=F.map((ne,ue)=>ue===0?{...ne,canReassign:"No"}:ne),Z=z?A:Et(A,l),X={id:e,tables:Z};return h(Z),console.log("[TableCardGrid] updated form values:",Z),console.log("[TableCardGrid] PUT payload:",X),r?.(X),X},[e,r,l]);S.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!y.length)return null;const F=y.length-1,z=y.map((A,Z)=>Z===F?{...A,finalLevel:"Yes"}:A);return x(z,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,y,l,x]);const C=F=>{const z=y[y.length-1];return z!=null&&z.id===F},B=(F,z)=>{Object.prototype.hasOwnProperty.call(z,"escalateAfterMinutes")&&H.current.add(F),x(y.map(A=>A.id===F?{...A,...z}:A),{preserveLastLevel:C(F)})},k=(F,z)=>{const A=y.findIndex(ne=>ne.id===F);if(A<0)return;const Z=y[A],X=typeof z=="function"?z(Z):z;if(X.escalateAfterMinutes!==Z.escalateAfterMinutes&&H.current.add(F),A<y.length-1&&Z.finalLevel!=="Yes"&&X.finalLevel==="Yes"){I({tableId:F,value:X});return}x(y.map((ne,ue)=>ue===A?X:ne),{preserveLastLevel:C(F)})},V=()=>{if(!N)return;const F=y.findIndex(A=>A.id===N.tableId);if(F<0){I(null);return}const z=y.slice(0,F+1).map((A,Z)=>Z===F?N.value:A);$(A=>A.filter(Z=>z.some(X=>X.id===Z))),x(z),I(null)},K=F=>{if(y.some(me=>me.finalLevel==="Yes"))return;const z=y[y.length-1];if(z){const me=va(z,y.length-1);if(Object.values(me).some(Boolean)){$(ge=>ge.includes(z.id)?ge:[...ge,z.id]),p?.(`Please fill all required fields of Level ${y.length} before adding a new level.`);return}}p?.("");const A=y.reduce((me,ge)=>Math.max(me,Number(ge.id)||0),0)+1,Z=y.length+1,X=y[y.length-1],ue=X!=null&&H.current.has(X.id)&&Te(X.escalateAfterMinutes)>0?y:Uf(y);H.current.delete(A),x([...ue,wa(A,F||`Level ${Z}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const me=J.current;me&&me.scrollTo({left:me.scrollWidth,behavior:"smooth"})})})},ae=F=>{H.current.delete(F),x(y.filter(z=>z.id!==F))};return E&&!y.length?null:i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:J,children:i.jsxs("div",{className:"ca-table-card-grid__track",children:[y.map((F,z)=>i.jsxs(S.Fragment,{children:[i.jsx(mi,{name:F.name,roleList:T,showRoleError:c||u,showEscalationError:d,userList:f,level:z+1,value:F,initialFormValues:F,setFormValues:A=>k(F.id,A),selected:F.id===t,onSelect:()=>n?.(F),onDelete:()=>ae(F.id),onChange:A=>B(F.id,A),fieldErrors:u||M.includes(F.id)?va(F,z):{}}),z<y.length-1?i.jsxs(i.Fragment,{children:[i.jsx(Si,{accent:z===0?"green":z===1?"orange":"purple"}),i.jsx(vi,{accent:z===0?"green":z===1?"orange":"purple"})]}):null]},F.id)),y.length?i.jsxs(i.Fragment,{children:[i.jsx(Si,{accent:y.length===1?"green":y.length===2?"orange":"purple"}),i.jsx(vi,{accent:y.length===1?"green":y.length===2?"orange":"purple"})]}):null,i.jsx(hi,{level:y.length+1,onAdd:K,disabled:y.some(F=>F.finalLevel==="Yes")})]})}),i.jsx(gi,{variant:"finalLevelDelete",levelNo:N?y.findIndex(F=>F.id===N.tableId)+1:null,open:!!N,onConfirm:V,onClose:()=>I(null)})]})}function zp({totalMinutes:e=0,usedMinutes:t=0}){const n=Te(e),r=Te(t),a=Math.max(0,n-r),s=Nt(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 Ci(e){return e?.data??e?.id??e}function Hp(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 Kp(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles].flatMap(n=>Array.isArray(n)?n:[n]).map(Hp).filter(Boolean)}function Yp(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 Gp({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:s=[]}){const{state:o,updateWorkflow:l}=Zn(),{workflow:c}=o,d=o.categoryRoleIds,u=S.useMemo(()=>{const x=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));return x.size?a.filter(C=>!x.has(String(C.id??C.roleId??C.value))):a},[d,a]),f=S.useMemo(()=>{const x=new Set((Array.isArray(d)?d:[]).filter(B=>B!=null&&B!=="").map(String));if(!x.size)return s;const C=new Set(a.filter(B=>x.has(String(B.id??B.roleId??B.value))).map(B=>String(B.name??B.roleName??B.label??"").trim().toLowerCase()).filter(Boolean));return s.filter(B=>!Kp(B).some(k=>x.has(k))&&!Yp(B).some(k=>C.has(k)))},[d,a,s]),[p,b]=S.useState(null),[w,y]=S.useState(""),[h,m]=S.useState(!1),[v,E]=S.useState(null),_=S.useRef(null),D=S.useCallback(x=>{b(x),y("")},[]),L=S.useCallback(x=>{_.current=x},[]),Y=Q.useDispatch();let{id:te}=Q.useSelector(x=>x.appDetails||{});const J=Q.useSelector(x=>x.complaintType?.selected),W=Ci(te),H=Ci(J?.id??J?._id),M=Te(J?.tatMinutes??o.tatMinutes);S.useEffect(()=>{W==null||W===""||H!=null&&String(H)===String(W)&&J?.tatMinutes!=null||Y(it(W))},[Y,J?.tatMinutes,H,W]);const $=S.useMemo(()=>{const x=Array.isArray(p?.tables)?p.tables:[];return Pf(x)},[p]),N=r??c.selectedTableCard??null,I=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((x,C)=>`L${C+1}`).join(" > "):"",j=x=>{Y(Vn({id:x.id,tables:x,onSuccess:C=>{console.log("updateWorkflowSteps onSuccess:",C),y(""),n.onNext?.()},onFail:C=>{const B=C?.response?.data??C?.payload??C,k=[...new Set(Array.isArray(B?.errors)?B.errors.map(ae=>ae?.message).filter(Boolean):[])],V=(k.length?k.join(" "):null)??B?.message??B?.error??C?.message??"Failed to update workflow steps",K=String(V).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.");y(Mf(K))}}))},G=async()=>{if(y(""),!p){y("Workflow steps are not ready to save.");return}const x=Array.isArray(p.tables)?p.tables:[];if(!x.length){y("Add at least one workflow level before continuing.");return}m(!0);const C=x.map((V,K)=>va(V,K)),B=x.length-1;if(C.some((V,K)=>Object.entries(V).some(([ae,F])=>F&&!(K===B&&ae==="finalLevel")))){y("Please complete all required fields in every workflow level.");return}if(x[B].finalLevel!=="Yes"){E(B+1);return}j(p)},T=()=>{const x=_.current?.setLastLevelFinal?.();if(E(null),!x){y("Unable to update the final workflow level. Please try again.");return}m(!0),j(x)};return i.jsxs(i.Fragment,{children:[i.jsx(un,{...n,steps:Ue,onNext:G,showNextButton:!0}),w?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:w}):null,i.jsx(gi,{variant:"finalLevelRequired",levelNo:v,open:v!=null,onConfirm:T,onClose:()=>E(null)}),i.jsx(cn,{title:t.title,description:I,showNext:!1,headerExtra:i.jsx(zp,{totalMinutes:M,usedMinutes:$}),children:i.jsx("div",{className:"ca-workflow__main",children:i.jsx(wi,{id:te,selectedTableId:N?.id,onSelect:x=>l({selectedTableCard:x}),setUpdatePayload:D,registerWorkflowActions:L,roleList:u,userList:f,onAddBlocked:y,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(w),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(w),showRequiredErrors:h,prefillSteps:o.prefillWorkflowSteps,tatTotalMinutes:M})})})]})}function _i({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 Ni=S.createContext(null);function Na(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function Ei(e,t){const n=Na(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function Xe(){const e=S.useContext(Ni);return{storeName:Na(e),label:t=>Ei(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?Na(e):Ei(t.fieldLabel??t.label??t.fieldName??"",e)}}}function Ai({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 Jp=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],Ti=new Set(["Select","Dropdown","Radio","Checkbox"]),Zp=["Both","User","Admin"],Xp={Open:"#FF0000","Under Verification":"#FF6F00",Resolved:"#00D82F",Done:"#006FFF"},Li=["Open","Under Verification","Resolved","Done"],$e={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...Li],optionColors:{...Xp},parentMappings:{},lockMode:"options",isNew:!1},Rn={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},fn={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},Qp=[{...$e,label:$e.fieldLabel},{...fn,label:fn.fieldLabel}];function Fi(e){return String(e||"").trim().toLowerCase()}function re(e){const t=Fi(e?.fieldKey),n=Fi(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function je(e){return re(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function Rp(e,t=[]){if(!re(e))return!1;const n=t.length?t:[e],r=n.filter(o=>!o?.isNew&&re(o)),a=n.filter(je),s=r[0]||a[0]||n.find(o=>re(o)&&!o?.isNew);return s?String(s.id)===String(e.id):!e?.isNew}function er(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function Qe(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function Re(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="done"||t==="closed"}function eh(e){return String(e||"").trim().toLowerCase()==="open"}function dt(e){return String(e||"").trim().toLowerCase()==="closed"?"Done":e}function th(e={}){const t={};return Object.entries(e).forEach(([n,r])=>{t[dt(n)]=r}),t}function Ot(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),n=new Set,r=[];return Li.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 Ii(e){return Ti.has(e?.fieldType)||je(e)}function Ea(e){return!e||re(e)||Qe(e)||!Ti.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function kt(e=[]){return e.some(Ea)}function Oi(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!Ea(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 nh(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 tr(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:nh(e,n)):!1}function nr(e=[]){return e.some(t=>tr(t,e))}function Aa(e,t={},n=""){const r=String(n||"");if(re({fieldKey:r})||Qe({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 rh(e){return er(e)?"Priorities":"Option"}function ah(e,t=!1){return e?t?"Define options and set parent.":re(e)?"Manage the status":"Manage your fields.":""}function rr(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return rr({...e,fieldType:"Checkbox"},t);if(re(e)){if(e?.isNew||!Rp(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:Ot((e.options?.length?e.options:$e.options).map(dt)),optionColors:th({...$e.optionColors,...e.optionColors}),lockMode:"options"}}return er(e)?{...Rn,...e,fieldKey:e.fieldKey||Rn.fieldKey,fieldType:Rn.fieldType,options:e.options?.length?e.options:Rn.options,lockMode:"options"}:Qe(e)?{...fn,...e,fieldKey:fn.fieldKey,fieldType:fn.fieldType,required:!0,lockMode:"all"}:e}function Dt(e=[]){const t=e.map(r=>rr(r,e));if(t.some(re))return t;const n={...$e};return[rr(n,[n,...t]),...t]}function Ta(e,t){return!t||e.includes(t)?e:[t,...e]}function ki(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 sh="#9CA3AF";function Di({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:b,onSave:w,cardRef:y,onOptionNotice:h,hasDuplicateIdentity:m=!1,hasMissingOptions:v=!1}){const[E,_]=S.useState(""),[D,L]=S.useState(null),Y=S.useRef(!1),{label:te,fieldLabel:J}=Xe(),W=ki(e),[H,M]=S.useState(()=>({id:e.id,signature:e.isNew?null:W}));H.id!==e.id&&M({id:e.id,signature:e.isNew?null:W});const $=e.lockMode==="all",N=je(e),I=$||e.lockMode==="options",j=Ii(e),G=$||!j,T=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),x=H.signature!==W,C=!!s||!T,B=m||v?"ca-control--invalid":"",k=A=>p?.({...e,...A}),V=()=>{if(G)return;const A=E.trim();if(!A)return;if(re(e)&&Re(A)){const X=(e.options||[]).find(ne=>String(ne).trim().toLowerCase()===A.toLowerCase());if(X){h?.(`${X} already exists in options`),_("");return}}if(e.options?.includes(A))return;const Z=re(e)?{...e.optionColors||{},[A]:e.optionColors?.[A]||sh}:e.optionColors;k({options:re(e)?Ot([...e.options||[],A]):[...e.options||[],A],...re(e)?{optionColors:Z}:{}}),_("")},K=A=>{if(G||re(e)&&Re(A))return;const Z={...e.optionColors||{}};delete Z[A];const X={...e.parentMappings||{}};delete X[A],k({options:e.options.filter(ne=>ne!==A),parentMappings:X,...re(e)?{optionColors:Z}:{}})},ae=A=>{G||re(e)&&Re(A)||(Y.current=!1,L({original:A,draft:A}))},F=()=>{Y.current=!0,L(null)},z=()=>{if(Y.current){Y.current=!1;return}if(!D)return;const{original:A,draft:Z}=D,X=Z.trim();if(L(null),!X||X===A)return;if((e.options||[]).some(fe=>fe!==A&&(fe===X||re(e)&&String(fe).trim().toLowerCase()===X.toLowerCase()))){h?.(`${X} already exists in options`);return}const ue=(e.options||[]).map(fe=>fe===A?X:fe),me={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(me,A)&&(me[X]=me[A],delete me[A]);const ge={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(ge,A)&&(ge[X]=ge[A],delete ge[A]),k({options:re(e)?Ot(ue):ue,parentMappings:me,optionColors:ge})};return i.jsxs("article",{ref:y,className:`ca-form-card${o?" ca-form-card--selected":""}${l?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:A=>{N||(A.preventDefault(),A.dataTransfer.dropEffect="move")},onDrop:A=>{if(N){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:[N?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(Ai,{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:C||$||!x,onClick:async A=>{if(A.stopPropagation(),C||$||!x)return;const Z=await w?.(e);Z&&M({id:e.id,signature:ki(Z)})},children:"Save"}),je(e)?null:i.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:A=>{A.stopPropagation(),b?.(e.id)},children:i.jsx(Gn,{size:15,color:"currentColor"})})]})]}),i.jsx("div",{className:"ca-form-card__row",children:I?i.jsx("span",{className:"ca-form-card__static",children:J(e)||"—"}):i.jsx(Lt,{value:$?J(e):e.fieldLabel,placeholder:"Enter field label",disabled:I,className:B,onChange:A=>k({fieldLabel:A.target.value})})}),i.jsx("div",{className:"ca-form-card__row",children:I?i.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):i.jsx(We,{value:e.fieldType,options:Ta(n,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:I,className:B,onChange:A=>{const Z=A.target.value;if(Ii({...e,fieldType:Z})){k({fieldType:Z,dependsOn:"",parentMappings:{}});return}k({fieldType:Z,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),i.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:i.jsx(Yn,{checked:!!e.required,disabled:I,onChange:A=>k({required:A}),"aria-label":"Required"})}),i.jsx("div",{className:"ca-form-card__row",children:i.jsx(We,{value:e.fieldAccess,options:Ta(r,e.fieldAccess),placeholder:"Select access",disabled:I,allowClear:!0,onChange:A=>k({fieldAccess:A.target.value})})}),i.jsxs("div",{className:"ca-form-card__row",children:[i.jsx(We,{value:"",options:a.filter(A=>!e.hideFor?.includes(A)),placeholder:"Select level",disabled:I,onChange:A=>k({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:I,onClick:()=>k({hideFor:e.hideFor.filter(Z=>Z!==A)}),children:"×"})]},A))}):null]}),i.jsx("div",{className:"ca-form-card__row",children:i.jsx(We,{value:e.dependsOn,options:Ta(t,e.dependsOn).map(A=>({value:A,label:te(A)})),placeholder:"Select field label",disabled:I||!j,allowClear:!0,onChange:A=>{const Z=A.target.value;if(!Z){k({dependsOn:"",parentMappings:{}});return}k({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(Lt,{value:E,placeholder:"Enter option",disabled:G,className:v?"ca-control--invalid":"",onChange:A=>_(A.target.value),onKeyDown:A=>{A.key==="Enter"&&(A.preventDefault(),V())}}),i.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:G,onClick:V,children:"+"})]}),i.jsx("div",{className:"ca-form-card__chips",children:(j?re(e)?Ot(e.options||[]):e.options||[]:[]).map(A=>{const Z=re(e)&&Re(A),X=D?.original===A;return i.jsxs("span",{className:`ca-form-card__chip${Z?" ca-form-card__chip--locked":""}`,children:[X?i.jsx("input",{autoFocus:!0,value:D.draft,onChange:ne=>L({original:A,draft:ne.target.value}),onBlur:z,onClick:ne=>ne.stopPropagation(),onKeyDown:ne=>{ne.key==="Enter"?(ne.preventDefault(),z()):ne.key==="Escape"&&(ne.preventDefault(),F())},"aria-label":`Edit ${A}`,style:{width:`${Math.max(D.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):i.jsx("span",{role:Z||G?void 0:"button",tabIndex:Z||G?void 0:0,title:Z||G?void 0:"Click to edit",style:Z||G?void 0:{cursor:"text"},onClick:()=>ae(A),onKeyDown:ne=>{ne.key==="Enter"&&ae(A)},children:re(e)?dt(A):A}),Z?null:i.jsx("button",{type:"button","aria-label":`Remove ${A}`,disabled:G,onClick:()=>K(A),children:"×"})]},A)})})]})]})}const xi=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const oh=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const ih=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Mi=e=>{const t=ih(e);return t.charAt(0).toUpperCase()+t.slice(1)};var La={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 lh=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},ch=S.createContext({}),dh=()=>S.useContext(ch),uh=S.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:b=""}=dh()??{},w=r??f?Number(n??u)*24/Number(t??d):n??u;return S.createElement("svg",{ref:c,...La,width:t??d??La.width,height:t??d??La.height,stroke:e??p,strokeWidth:w,className:xi("lucide",b,a),...!s&&!lh(l)&&{"aria-hidden":"true"},...l},[...o.map(([y,h])=>S.createElement(y,h)),...Array.isArray(s)?s:[s]])});const Ce=(e,t)=>{const n=S.forwardRef(({className:r,...a},s)=>S.createElement(uh,{ref:s,iconNode:t,className:xi(`lucide-${oh(Mi(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Mi(e),n};const Pi=Ce("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 Ui=Ce("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const fh=Ce("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const ph=Ce("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const hh=Ce("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const mh=Ce("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const ar=Ce("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const gh=Ce("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 yh=Ce("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 bh=Ce("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 Sh=Ce("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const Bi=Ce("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const $i=Ce("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 vh=Ce("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 wh=Ce("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);function Fa({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(vh,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function Ch(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 _h({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,{fieldLabel:a}=Xe(),s=_=>re(r)?dt(_):_,o=re(r)?r:null,l=S.useMemo(()=>{const _=String(r?.dependsOn||"").trim();if(!_)return null;const D=e.filter(L=>String(L.fieldLabel||"").trim()===_);return D.find(L=>(L.options||[]).some(Y=>String(Y||"").trim()))||D[0]||null},[r?.dependsOn,e]),c=l?.options||[],d=!!r?.dependsOn,[u,f]=S.useState(!1),p=(_,D)=>{if(!o)return;const L=/^#[0-9A-Fa-f]{6}$/.test(D)?D.toUpperCase():D;n?.(e.map(Y=>Y.id===o.id?{...Y,optionColors:{...Y.optionColors,[_]:L}}:Y))},b=(_,D)=>{r&&n?.(e.map(L=>L.id===r.id?{...L,parentMappings:{...L.parentMappings||{},[_]:D}}:L))},w=_=>{if(!r||re(r)&&Re(_))return;const D={...r.optionColors||{}};delete D[_];const L={...r.parentMappings||{}};delete L[_],n?.(e.map(Y=>Y.id===r.id?{...Y,options:(Y.options||[]).filter(te=>te!==_),parentMappings:L,...re(Y)?{optionColors:D}:{}}:Y))},y=r&&a(r)||"Select field",h=ah(r,d),m=re(r)?Ot(r?.options||[]):r?.options||[],v=(_,D)=>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:[_.map(L=>i.jsx("th",{scope:"col",children:L},L)),i.jsx("th",{scope:"col","aria-label":"Delete"})]})}),i.jsx("tbody",{children:D})]})});let E=i.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return d?E=m.length?v(["Option label",l?a(l):"Parent"],m.map(_=>i.jsxs("tr",{children:[i.jsx("td",{children:s(_)}),i.jsx("td",{children:i.jsxs("select",{"aria-label":`Parent for ${_}`,value:r.parentMappings?.[_]||"",disabled:!c.length,onChange:D=>b(_,D.target.value),children:[i.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),c.map(D=>i.jsx("option",{value:D,children:D},D))]})}),i.jsx(Fa,{option:_,onDelete:w,locked:re(r)&&Re(_)})]},_))):i.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):o?E=m.length?v([re(o)?"Status":"Option","Colors"],m.map(_=>{const D=Ch(o.optionColors?.[_]);return i.jsxs("tr",{children:[i.jsx("td",{children:s(_)}),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 ${_}`,value:o.optionColors?.[_]||D,onChange:L=>p(_,L.target.value)}),i.jsx("label",{className:"field-options-panel__swatch",style:{background:D},title:D,children:i.jsx("input",{type:"color","aria-label":`Pick color for ${_}`,value:D,onChange:L=>p(_,L.target.value)})})]})}),i.jsx(Fa,{option:_,onDelete:w,locked:re(o)&&Re(_)})]},_)})):i.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):m.length&&(E=v([rh(r)],m.map(_=>i.jsxs("tr",{children:[i.jsx("td",{children:s(_)}),i.jsx(Fa,{option:_,onDelete:w,locked:re(r)&&Re(_)})]},_)))),i.jsxs("aside",{className:`field-options-panel${u?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${y}`,children:[i.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":u,"aria-controls":"field-options-panel-body",onClick:()=>f(_=>!_),children:[i.jsxs("span",{className:"field-options-panel__summary-text",children:[i.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",y]}),h?i.jsx("span",{className:"field-options-panel__description",children:h}):null]}),i.jsx(Ui,{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:E})]})}function Nh(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||re(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 Eh=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function Ah(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(Ah);return t.map(n=>rr(n,t))}function ji({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:s=[],onSave:o,onDelete:l}){const[c,d]=S.useState(()=>xt(e??[])),[u,f]=S.useState(null),[p,b]=S.useState(null),[w,y]=S.useState(""),h=S.useRef(""),m=S.useRef(null),v=S.useRef({}),E=I=>{const j=xt(I);d(j),t?.(j)},_=(e??[]).map(I=>I.id).join(",");S.useEffect(()=>{if(!w)return;const I=window.setTimeout(()=>y(""),3200);return()=>window.clearTimeout(I)},[w]),S.useEffect(()=>{!_||_===h.current||(h.current=_,d(xt(e)))},[_,e]),S.useEffect(()=>{if(n)return n.current=I=>{I&&d(j=>{const G=j.find(C=>tr(I,[C]));if(nr(j)||G)return G&&f(G.id),j;if(kt(j))return j;const T=xt([...j,{...I,id:`${I.id}-${Date.now()}`,isNew:!0}]),x=T[T.length-1];return f(x.id),t?.(T),T})},()=>{n.current=null}},[n,t]),S.useEffect(()=>{if(u==null)return;const I=m.current,j=v.current[u];if(!I||!j)return;const G=requestAnimationFrame(()=>{const T=I.getBoundingClientRect(),x=j.getBoundingClientRect(),C=12;x.left>=T.left+C&&x.right<=T.right-C||I.scrollTo({left:I.scrollLeft+x.left-T.left-(T.width-x.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(G)},[u,c]);const D=(I,j)=>{if(I==null||j==null||String(I)===String(j))return;const G=c.findIndex(k=>String(k.id)===String(I)),T=c.findIndex(k=>String(k.id)===String(j));if(G<0||T<0||je(c[G])||je(c[T]))return;const x=c.findIndex(je),C=[...c],[B]=C.splice(G,1);if(C.splice(T,0,B),x>=0){const k=C.findIndex(je);if(k!==x){const[V]=C.splice(k,1);C.splice(x,0,V)}}E(C.map((k,V)=>({...k,order:V+1})))},L=I=>{const j=c.find(K=>K.id===I.id),G=j&&j.fieldType!==I.fieldType;I.dependsOn&&I.dependsOn!==j?.dependsOn&&f(I.id);const T=String(j?.fieldLabel||"").trim(),x=j?.options||[],C=I.options||[],B=x.filter(K=>!C.includes(K)),k=C.filter(K=>!x.includes(K)),V=x.length===C.length&&B.length===1&&k.length===1?{from:B[0],to:k[0]}:null;E(c.map(K=>{if(K.id===I.id)return I;if(G&&T&&String(K.dependsOn||"").trim()===T)return{...K,dependsOn:"",parentMappings:{}};if(V&&T&&String(K.dependsOn||"").trim()===T){const ae=Object.fromEntries(Object.entries(K.parentMappings||{}).map(([F,z])=>[F,z===V.from?V.to:z]));return{...K,parentMappings:ae}}return K}))},Y=async I=>{const j=c.find(G=>G.id===I);if(!(!j||je(j)))try{if(await l?.(j)===!1)return;const T=String(j.fieldLabel||"").trim();E(c.filter(x=>x.id!==I).map((x,C)=>T&&String(x.dependsOn||"").trim()===T?{...x,dependsOn:"",parentMappings:{},order:C+1}:{...x,order:C+1}))}catch{}},te=()=>{nr(c)||kt(c)||E(xt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},J=async I=>{if(tr(I,c))return null;try{const j=await o?.(I);return j?(d(G=>{const T=xt(G.map(x=>x.id===I.id?{...j,isNew:!1,order:x.order||1}:x));return t?.(T),T}),j):null}catch{return null}},W=nr(c),H=kt(c),M=W?"A field with this label and type already exists":"",$=Oi(c),N=c.find(I=>I.id===u)||null;return i.jsxs(i.Fragment,{children:[M||$||w?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:M||$||w}):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:Eh.map(I=>i.jsx("div",{className:"ca-form-card-grid__label",children:I},I))}),i.jsxs("div",{className:"ca-form-card-grid__cards",ref:m,children:[c.map(I=>i.jsx(Di,{field:I,fieldOptions:Nh(I,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:s,selected:N?.id===I.id,isDragging:String(p)===String(I.id),cardRef:j=>{j?v.current[I.id]=j:delete v.current[I.id]},onSelect:()=>f(I.id),onDragStartField:()=>b(I.id),onDragEndField:()=>b(null),onReorder:D,onChange:L,onDelete:Y,onSave:J,onOptionNotice:y,hasDuplicateIdentity:tr(I,c),hasMissingOptions:Ea(I)},I.id)),i.jsx(_i,{onAdd:te,disabled:W||H})]})]}),i.jsx(_h,{formFields:c,selectedField:N,onChange:E})]})]})}const Vi={department:Pi,priorities:yh,status:ar,statuses:ar,statusCustom:ar,Status:ar,storeId:$i,storeIdCustom:$i};function Th({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,s]=S.useState(!1),{fieldLabel:o}=Xe();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(Ui,{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=Vi[l.fieldKey]||Vi[l.id]||Pi;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(Bi,{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."]}),i.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[i.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const qi={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"},Wi={BOTH:"Both",USER:"User",ADMIN:"Admin"},Lh={...Object.fromEntries(Object.entries(qi).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},Fh={...Object.fromEntries(Object.entries(Wi).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 Ih(e,t){const n=Mt(e),r=Mt(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function sr(e,t){return re({...e,fieldLabel:t})?Mt(t)||"status":Qe({...e,fieldLabel:t})?"storeIdCustom":Ih(t,e.fieldType)}function pn(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 Oh(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function Ia(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function kh(e=[]){const t=re(e)?Ot(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 re(e)?{values:t.map((s,o)=>{const l={name:s,displayOrder:o+1,isActive:!0,isDefault:eh(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 Dh(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),s=t.find(b=>String(b.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),o=sr(e,r)||(a?e.fieldKey:""),l=s?sr(s,s.fieldLabel)||s.fieldKey:"",c=Ph(e,n),d=kh(e),u=Lh[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=Fh[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 zi(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 Hi(e,t){return zi(e)!==zi(t)}function xh(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,s)=>Dh({...a,order:a.order||s+1},t,n))}}function Mh(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function or(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 Ki(e,t=[]){if(!e)return null;const n=or(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 or(a)}function Ph(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=>or(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 Yi(e){return[...new Set(e.filter(Boolean))]}function ir(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function Uh(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Bh(e,t=[]){if(!e)return"";const n=t.map(ir).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>Mt(s)===e||Mt(s)===Mt(e))||e}function $h(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 Dt(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:Aa(r.fieldType,qi,r.fieldKey),required:!!r.required,fieldAccess:Wi[r.fieldAccess]??r.fieldAccess??"",hideFor:Yi([...Array.isArray(r.hideFor)?r.hideFor:[],Ki(r.hideForWorkflowStep,t),Ki(o,t)]),dependsOn:r.dependsOnField?.fieldName??s?.fieldName??r.dependsOn??"",options:a.map(ir).filter(Boolean),parentMappings:Object.fromEntries(a.map(l=>{const c=ir(l),d=Uh(l);return!c||!d?null:[c,Bh(d,s?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(l=>[ir(l),$h(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 jh({stepMeta:e,stepperProps:t}){const n=Q.useDispatch(),{systemId:r}=vn(),a=Q.useSelector(k=>k.appDetails?.id),s=pn(a)??pn(r),{state:o,update:l}=Zn(),{formFields:c,prefillFormFields:d=[]}=o,u=S.useRef(null),f=S.useCallback(k=>l({formFields:k}),[l]),p=S.useCallback(async k=>{const V=String(k.fieldLabel||"").trim();return V?{...k,fieldLabel:V,fieldKey:sr(k,V),originalFieldName:V,isNew:!1}:null},[]),b=S.useCallback(async k=>je(k)?!1:(Ia(k)&&await n(en({complaintTypeId:s,fieldId:k.id})).unwrap(),!0),[s,n]),w=Q.useSelector(k=>k.complaintAppComplaint?.formFields?.data),y=Q.useSelector(k=>k.complaintAppComplaint?.formFields?.isLoading),h=Q.useSelector(k=>k.complaintAppComplaint?.formFields?.error),m=Q.useSelector(k=>k.workflow?.workflowSteps),v=S.useMemo(()=>Mh(m),[m]),E=S.useRef(v),[_,D]=S.useState(!1);S.useEffect(()=>{E.current=v},[v]),S.useEffect(()=>{const k=pn(s);k!=null&&n(Je(k))},[s,n]),S.useEffect(()=>{const k=pn(s);if(k==null)return;let V=!1;return n(Oe(k)).unwrap().then(K=>{if(V)return;const ae=Array.isArray(K)?K:K?.data;if(!(Array.isArray(ae)&&ae.length>0)&&d.length){const z=ut(d,E.current).map((A,Z)=>({...A,id:`prefill-${Z}`,isNew:!1}));l({formFields:Dt(z)})}else{const z=Dt(ut(Array.isArray(ae)?ae:[],E.current));l({formFields:z})}D(!0)}).catch(()=>{if(!V){if(d.length){const K=ut(d,E.current).map((ae,F)=>({...ae,id:`prefill-${F}`,isNew:!1}));l({formFields:Dt(K)})}D(!0)}}),()=>{V=!0}},[s,n,d,l]);const L=S.useMemo(()=>Dt(ut(w,v)),[w,v]),te=pn(s)==null||_,J=te?c:L,W=S.useMemo(()=>Qp.filter(k=>!J.some(V=>k.fieldKey&&V.fieldKey===k.fieldKey||re(k)&&re(V)||er(k)&&er(V)||Qe(k)&&Qe(V))),[J]),H=S.useMemo(()=>nr(J),[J]),M=S.useMemo(()=>kt(J),[J]),$=Oh(h),N=Jp,I=Zp,j=S.useMemo(()=>{const k=[...v].sort((K,ae)=>(K.levelNo??0)-(ae.levelNo??0)).map(K=>or(K)).filter(Boolean),V=L.flatMap(K=>K.hideFor);return Yi([...k,...V])},[L,v]),G=S.useMemo(()=>{const k=new Map(ut(w,v).map(V=>[Number(V.id),V]));return J.filter(V=>{if(V.isNew&&String(V.fieldLabel||"").trim())return!0;if(!Ia(V))return!1;const K=k.get(Number(V.id));return!K||Hi(V,K)})},[w,J,v]),[T,x]=S.useState(!1),C=S.useCallback(async k=>{if(!kt(J)&&s)try{const K=J.map(X=>{if(!k||!X.isNew)return X;const ne=String(X.fieldLabel||"").trim();return ne?{...X,fieldLabel:ne,fieldKey:sr(X,ne),originalFieldName:ne,isNew:!1}:X}).filter(X=>!X.isNew&&String(X.fieldLabel||"").trim()),ae=new Map(ut(w,v).map(X=>[Number(X.id),X]));if(!K.some(X=>{if(!Ia(X))return!0;const ne=ae.get(Number(X.id));return!ne||Hi(X,ne)})){t.onNext?.();return}const z=[...K].sort((X,ne)=>+!!X.dependsOn-+!!ne.dependsOn);await n(Rt({complaintTypeId:s,data:xh(z,z,v)})).unwrap();const A=await n(Oe(s)).unwrap(),Z=Array.isArray(A)?A:A?.data;l({formFields:Dt(ut(Array.isArray(Z)?Z:[],v))}),t.onNext?.()}catch{}},[w,s,n,J,t,l,v]),B=S.useCallback(()=>{if(!kt(J)){if(G.length){x(!0);return}C(!1)}},[J,G.length,C]);return i.jsxs(i.Fragment,{children:[i.jsx(un,{...t,steps:Ue,onNext:B}),T?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(we,{variant:"outline",onClick:()=>{x(!1),C(!1)},children:"OK"}),i.jsx(we,{onClick:()=>{x(!1),C(!0)},children:"Save"})]})]})}):null,i.jsx(cn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!te||y?i.jsx(Ft,{text:"Loading form fields"}):$&&!J.length?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:$}):i.jsxs("div",{className:"ca-form-fields",children:[$?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:$}):null,i.jsx(Th,{fields:W,disableAdd:H||M,disableAddHint:H?"Resolve duplicate field first":M?Oi(J):void 0,onAddField:k=>u.current?.({...k})}),i.jsx("div",{className:"ca-settings-card__divider"}),i.jsx(ji,{initialFields:J,addExternalFieldRef:u,onChange:f,fieldTypeOptions:N,fieldAccessOptions:I,hideForOptions:j,onSave:p,onDelete:b})]})})]})}function Gi({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(Ko,{children:e}),i.jsx(Yn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function Ji({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=Xe();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 Vh=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function Oa(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function qh(e){return e?e.type&&e.type.startsWith("image/")?!0:Vh.test(e.name||""):!1}function Wh(e){return`${e.name}-${e.size}-${e.lastModified}`}function lr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:s=!1,disabled:o=!1,accept:l}){const c=Oa(n,a),d=S.useMemo(()=>Oa(n,a).map((u,f)=>{const p=qh(u);return{key:`${Wh(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]),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=Oa(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,b)=>b!==f):"")},children:"×"})]},u.key))})}):null]})}const zh=new Set(["select","radio","checkbox"]);function Zi(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 ka(e){return`review-${e.id??e.fieldKey??(Zi(ft(e))||"field")}`}function Xi(e,t,n){return n===0?e:`${e}-${Zi(t)||n}`}function Da(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 Qi(e){return zh.has(e)}function Hh(e){return e==="textarea"||e==="radio"||e==="checkbox"}function Kh(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function Ri(e){return String(e||"").replace(/\d/g,"")}function el(e){return String(e||"").replace(/[^\d]/g,"")}function hn(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 mn(e){return String(e.fieldKey||e.id||ft(e)||ka(e))}function tl(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 nl(e,t=[],n={}){const r=e.options||[],a=tl(e,t);if(!a)return r;const s=e.parentMappings||{};if(!r.some(c=>!!s[c]))return r;const l=String(n[mn(a)]||"").trim();return l?r.filter(c=>String(s[c]||"")===l):r}function rl(e){return e==="checkbox"||e==="images"?[]:""}function Yh({question:e,options:t,value:n,onChange:r,storeList:a}){const s=ka(e),o=Da(e),l=n??rl(o),c={id:s,name:String(e.fieldKey||ft(e)||s),required:!!e.required};if(Qe(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=Xi(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=Xi(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:b=>r(b.target.checked?[...d,u]:d.filter(w=>w!==u))}),i.jsx("span",{children:u})]},u)})})}return o==="textarea"?i.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:hn(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:hn(e,o)}),t.map(d=>i.jsx("option",{value:d,children:d},d))]}):o==="file"?i.jsx(lr,{...c,value:l,onChange:r,multiple:!0}):o==="images"?i.jsx(lr,{...c,value:l,onChange:r,multiple:!0}):o==="number"?i.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:hn(e,o),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)))}}):Kh(e)?i.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:hn(e,o),value:l,onChange:d=>r(Ri(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(Ri(u)))}}):i.jsx("input",{...c,className:"review-control",type:o,placeholder:hn(e,o),value:l,onChange:d=>r(d.target.value)})}function Gh({fields:e=[],storeList:t}){const{fieldLabel:n}=Xe(),[r,a]=S.useState({}),s=(o,l)=>{const c=mn(o);a(d=>{const u={...d,[c]:l};return e.forEach(f=>{const p=tl(f,e);if(!p||mn(p)!==c)return;const b=Da(f);if(!Qi(b))return;const w=nl(f,e,u),y=mn(f),h=u[y];Array.isArray(h)?u[y]=h.filter(m=>w.includes(m)):h&&!w.includes(h)&&(u[y]="")}),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=Da(o),c=ka(o),d=Qi(l)?nl(o,e,r):[];return i.jsxs("div",{className:`review-question${Hh(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(Yh,{storeList:t,question:o,options:d,value:r[mn(o)]??rl(l),onChange:u=>s(o,u)})]},o.id??o.fieldKey??ft(o))})})})}):i.jsx("p",{className:"review-empty",children:"No form fields added"})}const Jh={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"},Zh={BOTH:"Both",USER:"User",ADMIN:"Admin"};function Xh(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function Qh(e){return[...new Set(e.filter(Boolean))]}function xa(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ma(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 Rh(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function em(e,t=[]){if(!e)return"";const n=t.map(xa).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>Ma(s)===e||Ma(s)===Ma(e))||e}function tm(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:Aa(n.fieldType,Jh,n.fieldKey),required:!!n.required,fieldAccess:Zh[n.fieldAccess]??n.fieldAccess??"",hideFor:Qh([...Array.isArray(n.hideFor)?n.hideFor:[],Xh(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(xa).filter(Boolean),parentMappings:Object.fromEntries(r.map(s=>{const o=xa(s),l=Rh(s);return!o||!l?null:[o,em(l,a?.options?.values??[])]}).filter(Boolean))}})}function nm({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=Q.useDispatch(),s=Q.useSelector(L=>L.appDetails?.id),o=Q.useSelector(L=>L.complaintAppComplaint.formFields.data),l=Q.useSelector(L=>L.complaintAppComplaint.formFields.isLoading),c=Q.useSelector(L=>L.complaintAppComplaint.formFields.error),d=Q.useSelector(L=>L.createComplaint?.isActive),u=Q.useSelector(L=>L.createComplaint?.activeComplaintTypeId),f=Q.useSelector(L=>L.createComplaint?.isUpdatingActive),p=Q.useSelector(L=>L.createComplaint?.activeError),b=Q.useSelector(L=>L.complaintType?.selected),w=Q.useSelector(L=>L.complaintType?.complaintList??[]),y=Q.useSelector(L=>L.appDetails?.details?.currentUser),h=S.useMemo(()=>tm(o),[o]),m=S.useMemo(()=>s==null?null:b&&String(b.id??b._id)===String(s)?b:w.find(L=>String(L?.id??L?._id)===String(s))??null,[w,s,b]),v=m!=null&&(m.isActive!=null||m.active!=null)?!!(m.isActive??m.active):null,E=String(u)===String(s)?!!d:v??!0,_=ea(m,y);S.useEffect(()=>{s&&a(Oe(s))},[s,a]);const D=L=>{!s||f||!_||a(ln({id:s,isActive:L}))};return i.jsxs(i.Fragment,{children:[i.jsx(un,{...n,steps:Ue,showSaveButton:!1,nextLabel:"Publish",extraActions:i.jsx(Gi,{label:"Active",checked:E,disabled:!s||f||!_,onChange:D}),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(Ft,{text:"Loading form fields"}):c&&!h.length?i.jsx("p",{className:"ca-body",children:c}):i.jsx(Gh,{fields:h,storeList:r})})})})]})}function rm(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>Ue.length?Ue.length:Math.floor(t)}function am(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function al({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=Ge(),u=Q.useDispatch(),{systemId:f}=vn(),[p,b]=hs(),w=rm(p.get("step")||1),y=am(p.get("substep")||1),h=!!f&&f!=="new",[m,v]=S.useState(!1);S.useEffect(()=>{if(!h)return;let W=!1;const H=M=>{const $=M?.data??M;return Array.isArray($)?$:Array.isArray($?.data)?$.data:[]};return Promise.all([u(Je(f)).unwrap(),u(Oe(f)).unwrap()]).then(([M,$])=>{W||v(H(M).length>0&&H($).length>0)}).catch(()=>{W||v(!1)}),()=>{W=!0}},[u,h,f]);const E=h&&m;S.useEffect(()=>{f&&u(lt(f)),u(_t({data:h}))},[u,h,f]),S.useEffect(()=>{if(!p.get("step")){const W=new URLSearchParams(p);W.set("step","1"),b(W,{replace:!0})}},[p,b]);const _=S.useMemo(()=>Ue.find(W=>W.id===w)||Ue[0],[w]),D=S.useCallback((W,H)=>{const M=new URLSearchParams(p);M.set("step",String(W)),W===4?M.set("substep",String(H??(W===w?y:1))):M.delete("substep"),b(M,{replace:!1}),n?.({systemId:f,step:W,substep:H})},[p,b,n,f,w,y]),L=()=>{if(w<Ue.length){D(w+1,1);return}d("/")},Y=W=>{D(4,W)},te=()=>{t?.({systemId:f,step:w})},J={currentStep:w,allStepsUnlocked:E,onStepClick:W=>D(W,W===4?1:void 0),showSaveButton:l,showNextButton:c,onSaveDraft:()=>r?.({systemId:f,step:w}),onNext:L,className:"ca-settings-page__stepper"};return i.jsx(ii,{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(ia,{children:e})]}),w===1?i.jsx(Bp,{stepMeta:_,stepperProps:J,roleList:a,userList:s}):null,w===2?i.jsx(Gp,{onNext:L,stepMeta:_,roleList:a,userList:s,substep:y,onSubstepChange:Y,stepperProps:J}):null,w===3?i.jsx(jh,{stepMeta:_,stepperProps:J}):null,w===4?i.jsx(nm,{storeList:o,onPublish:te,stepMeta:_,stepperProps:J}):null]})},f||"new")}const sm=["January","February","March","April","May","June","July","August","September","October","November","December"];function om(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()} ${sm[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function im(){const e=Ge(),t=Q.useSelector(u=>u.status?.complaintSummary??null),n=t?.totalComplaints??0,r=t?.totalComplaints??0,a=om(t?.lastSubmittedAt),s=Q.useSelector(u=>u.appDetails?.id),o=Q.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 sl({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(hh,{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(fh,{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(ph,{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(mh,{size:16,"aria-hidden":"true"})})]})]})}function lm({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 cm({id:e,message:t,type:n="success",onDismiss:r}){return S.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(lm,{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 dm({toasts:e=[],onDismiss:t}){return e.length?i.jsx("div",{className:"ca-toast-container",children:e.map(n=>i.jsx(cm,{...n,onDismiss:t},n.id))}):null}const um=["Open","Done"];function ol({selectedStatus:e,statusNames:t=[],onStatusChange:n,onOpenDateFilter:r,hasDateFilter:a=!1,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(bh,{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=>n?.(f.target.value),children:[i.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:um).map(f=>i.jsx("option",{value:f,children:dt(f)},f))]})]}),i.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:i.jsx(Sh,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),i.jsxs("div",{className:"ca-complaint-table__actions",children:[d?i.jsx(we,{variant:"outline",onClick:s,size:"sm",startIcon:i.jsx(Bi,{size:14}),disabled:!u,children:"New Complaint"}):null,i.jsx(we,{variant:"outline",size:"sm",startIcon:i.jsx(gh,{size:14}),onClick:o,disabled:l||!c,children:"Download Report"})]})]})}const fm=[{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"}],il=e=>String(e).padStart(2,"0"),Le=e=>`${e.getFullYear()}-${il(e.getMonth()+1)}-${il(e.getDate())}`,gn=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function pm(e,t="",n="",r=new Date){const a=new Date(r.getFullYear(),r.getMonth(),r.getDate()),s=(a.getDay()+6)%7,o=gn(a,-s);switch(e){case"today":return{fromDate:Le(a),toDate:Le(a)};case"yesterday":return{fromDate:Le(gn(a,-1)),toDate:Le(gn(a,-1))};case"lastWeek":return{fromDate:Le(gn(o,-7)),toDate:Le(gn(o,-1))};case"wtd":return{fromDate:Le(o),toDate:Le(a)};case"mtd":return{fromDate:Le(new Date(a.getFullYear(),a.getMonth(),1)),toDate:Le(a)};case"ytd":return{fromDate:Le(new Date(a.getFullYear(),0,1)),toDate:Le(a)};case"custom":return t&&n?{fromDate:t,toDate:n}:null;default:return null}}function hm(e){if(!e?.preset)return{};const t=pm(e.preset,e.from,e.to);return t?{...t}:{}}const mm=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function gm({initial:e,onApply:t,onReset:n,onClose:r}){const[a,s]=S.useState(e?.field||"updated"),[o,l]=S.useState(e?.preset||""),[c,d]=S.useState(e?.from||""),[u,f]=S.useState(e?.to||""),p=o==="custom"&&(!c||!u||c>u),b=!!o&&!p;return i.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:i.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[i.jsxs("div",{className:"ca-date-filter__header",children:[i.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),i.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:r,children:i.jsx(wh,{size:18})})]}),i.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:mm.map(w=>i.jsx("button",{type:"button",className:`ca-date-filter__tab${a===w.value?" ca-date-filter__tab--active":""}`,onClick:()=>s(w.value),children:w.label},w.value))}),i.jsx("div",{className:"ca-date-filter__list",children:fm.map(w=>i.jsxs("label",{className:`ca-date-filter__option${o===w.value?" ca-date-filter__option--active":""}`,children:[i.jsx("input",{type:"radio",name:"complaint-date-preset",checked:o===w.value,onChange:()=>l(w.value)}),i.jsx("span",{children:w.label})]},w.value))}),o==="custom"?i.jsxs("div",{className:"ca-date-filter__custom",children:[i.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),i.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:u||void 0,onChange:w=>d(w.target.value)}),i.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),i.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:u,min:c||void 0,onChange:w=>f(w.target.value)})]}):null,i.jsxs("div",{className:"ca-confirm-modal__actions",children:[i.jsx(we,{variant:"outline",onClick:n,children:"Reset"}),i.jsx(we,{onClick:()=>t({field:a,preset:o,from:c,to:u}),disabled:!b,children:"Apply"})]})]})})}function ym({open:e,initial:t,onApply:n,onReset:r,onClose:a}){return e?i.jsx(gm,{initial:t,onApply:n,onReset:r,onClose:a}):null}function ll({text:e="No data"}){return i.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const bm=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function yn(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(0,n):t}function Pa(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(n+2):t}const Sm=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function cr(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(Sm).map(r=>r.trim()).filter(Boolean):[n])}function vm(e){const t=cr(e);return t.length>0&&t.every(n=>typeof n=="string"&&bm.test(n))}function Ua(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||vm(t)}function wm(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const s=r[a.key]??"-";Ua(a,s)&&cr(s).forEach(o=>{typeof o=="string"&&n.add(yn(o))})})}),Array.from(n)}const Cm=["Open","Done"],Ba=["Level 1","Level 2","Level 3"],cl=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function _m({value:e,urlMap:t={}}){const n=S.useMemo(()=>cr(e),[e]),[r,a]=S.useState(null);if(!n.length)return"-";const s=n.filter(p=>typeof p=="string"&&cl.test(yn(p))),o=n.filter(p=>typeof p=="string"&&!cl.test(yn(p))).map(p=>({name:Pa(p),url:t[yn(p)]})),l=s.map(p=>({name:Pa(p),url:t[yn(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:Pa(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 dl({value:e,options:t,fallbackOptions:n,ariaLabel:r,selectKey:a,onChange:s,disabled:o=!1}){const c=(t.length?t:n.map(b=>({value:b,label:b}))).map(b=>b&&typeof b=="object"?{value:String(b.value??b.id??""),label:b.label??b.name??String(b.value??b.id??""),disabled:!!b.disabled}:{value:String(b),label:String(b),disabled:!1}).filter(b=>b.value||b.label),d=e!=null&&e!==""&&e!=="-"?String(e):"",u=c.map(b=>b.value),f=d&&!u.includes(d)?[{value:d,label:d,disabled:!1},...c]:c,p=f.some(b=>b.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:b=>s?.(b.target.value),children:f.map(b=>i.jsx("option",{value:b.value,disabled:b.disabled,children:b.label},b.value))},a)}function ul(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 dr(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 fl(e,t,n,r,a={}){const s=t[e.key]??"-",o=a.statusOptions??n,l=a.escalationOptions??r;return e.key==="status"?i.jsx(dl,{value:ul(o,t.statusId)?t.statusId:s,options:o,fallbackOptions:Cm,ariaLabel:"Status",disabled:a.canChangeStatus===!1,selectKey:`status-${t.id}`,onChange:a.onStatusChange}):e.key==="escalationTo"?i.jsx(dl,{value:ul(l,t.currentStepId)?t.currentStepId:s,options:l,fallbackOptions:Ba,ariaLabel:"Escalation to",disabled:a.canChangeEscalation===!1,selectKey:`escalation-${t.id}`,onChange:a.onEscalationChange}):Ua(e,s)&&cr(s).some(c=>typeof c=="string")?i.jsx(_m,{value:s,urlMap:a.attachmentUrlMap}):s}function pl({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:dr(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:dr(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:dr(u.key),children:fl(u,c,a,Ba,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:dr(u.key),children:fl(u,c,a,Ba,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(ll,{text:"No Complaint"})})]})}const hl="aira-query-complaintTypeId",ml={id:"status",label:"Status",key:"status"},gl={id:"escalationTo",label:"Escalation To",key:"escalationTo"},Nm={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},Em={id:"createdAt",label:"Created At",key:"createdAt"},Am={id:"updatedAt",label:"Updated At",key:"updatedAt"},bn="desc",$a="asc",Tm=10,Lm=["5","10","15","20","25"],Fm=999999,ja=new Set(["status","escalationTo","id","submittedByUserName","createdAt","updatedAt"]),Im=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function yl(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()} ${Im[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function bl(e){if(!e)return 0;const t=new Date(e).getTime();return Number.isNaN(t)?0:t}function Om(e,t){return t!==bn&&t!==$a?e:[...e].sort((n,r)=>{const a=bl(n.updatedAtValue),s=bl(r.updatedAtValue);return a===s?0:t===$a?a-s:s-a})}function km(e){return e===bn?$a:bn}function Sl(e){return[Nm,Em,Am,...e,ml,gl]}function Dm(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&&!ja.has(r.key))}function xm(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 vl(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function Mm(){try{return sessionStorage.getItem(hl)}catch{return null}}function wl(e){const t=vl(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(hl,n)}catch{}return n}function Pm(...e){for(const t of e){const n=vl(t);if(n!=null&&n!=="")return String(n)}return null}function Cl(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 Um(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 ur(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}function _l(e){const t=String(e||"").trim().toLowerCase();return t==="resolved"||t==="closed"||t==="done"}function fr(e){const t=String(e||"").trim().toLowerCase();return t==="done"||t==="resolved"||t==="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 $m(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 Nl(e,t=[],n=[]){const r=Bm(e,n),a={id:e?.complaintId??e?.id,status:Cl(e,t),isClosed:fr(Cl(e,t)),statusId:Um(e,t),escalationTo:$m(e,n),currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:ur(e?.canResolve??r?.canResolve),isFinalLevel:ur(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),submittedByUserName:e?.submittedByUserName||"-",createdAt:yl(e?.createdAt)||"-",updatedAt:yl(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(s=>{const o=s.fieldKey||s.fieldName;o&&!ja.has(o)&&(a[o]=s.value)}),a}function El(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||ja.has(o)||n.has(o)||(n.add(o),r.push({id:o,label:s.fieldName||o,key:o,fieldType:s.fieldType}))})}),r}function jm(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 Vm(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function Al(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function qm(e,t){const n=e.map(a=>Al(a.label)).join(","),r=t.map(a=>e.map(s=>Al(a[s.key]??"-")).join(","));return[n,...r].join(`\r
|
|
12
|
-
`)}function Wm(e,t){return e.map(n=>{const r=_l(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 zm(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&&ur(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 Hm({complaintTypeId:e,status:t,dateParams:n={}}){const r=await ce.get(To,{params:{...n,complaintTypeId:e,page:1,limit:Fm,...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return Vm(r.data)}function Km(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 Tl(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||!Ll(s,n,r)}function Ym(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 Ll(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&Ym(e).includes(Number(n))}function Gm(e,t=[],n=[],r=null){if(fr(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=Ll(a,n,r);return{canChangeStatus:s,canChangeEscalation:s}}function Jm(){const{fieldLabel:e}=Xe(),t=Q.useDispatch(),n=Ge(),{complaintTypeId:r}=vn(),[a]=hs(),s=Q.useSelector(P=>P.appDetails?.id),o=Pm(r,a.get("complaintTypeId"),s,Mm()),{list:l=[],isLoading:c=!1,error:d=null,hasLoaded:u=!1,requestedComplaintTypeId:f=null,meta:p=null}=Q.useSelector(P=>P.complaintManagement??{}),b=Q.useSelector(P=>P.status?.list??[]),w=Q.useSelector(P=>P.changeStatus?.error??null),y=Q.useSelector(P=>P.changeStatus?.updatingId??null),h=Q.useSelector(P=>P.workflow?.workflowSteps),m=Q.useSelector(P=>P.appDetails?.details?.currentUser),v=S.useMemo(()=>b.map(P=>P.name).filter(Boolean),[b]),E=S.useMemo(()=>Array.isArray(h)?h:[],[h]),_=S.useMemo(()=>Km(m),[m]),D=m?.id??m?.userId??null,L=Q.useSelector(P=>{const ee=P.complaintType?.selected,oe=Array.isArray(ee?.accesses)?ee.accesses.map(le=>le?.role?.id??le?.role?.roleId??le?.roleId).map(Number).filter(Number.isFinite):[];return oe.length?oe:(Array.isArray(ee?.roleIds)?ee.roleIds:Array.isArray(ee?.roles)?ee.roles:[]).map(le=>Number(le?.id??le?.roleId??le?.role_id??le)).filter(le=>Number.isFinite(le))}),Y=Q.useSelector(P=>{const ee=P.complaintType?.selected;return ee?.isActive!=null?!!ee.isActive:ee?.active!=null?!!ee.active:!0}),[te,J]=S.useState({complaintTypeId:null,status:"all"}),[W,H]=S.useState({complaintTypeId:null,direction:bn}),[M,$]=S.useState(1),[N,I]=S.useState(Tm),[j,G]=S.useState([]),[T,x]=S.useState({}),[C,B]=S.useState(!1),[k,V]=S.useState(null),[K,ae]=S.useState(null),[F,z]=S.useState(""),[A,Z]=S.useState([]),[X,ne]=S.useState(!1),[ue,me]=S.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),ge=String(ue.complaintTypeId)===String(o)&&ue.preset?ue:null,fe=S.useMemo(()=>hm(ge),[ge]),R=String(te.complaintTypeId)===String(o)?te.status:"all",ye=String(W.complaintTypeId)===String(o)?W.direction:bn,ke=(P,ee="success")=>{const oe=`${Date.now()}-${Math.random()}`;Z(pe=>[...pe,{id:oe,message:P,type:ee}])},ze=P=>Z(ee=>ee.filter(oe=>oe.id!==P));S.useEffect(()=>{!o||r||(wl(o),n(`/complaintmanagement/${o}`,{replace:!0}))},[o,n,r]),S.useEffect(()=>{if(!o||!r)return;wl(o),t(lt(o)),t(Oo()),t(Mo()),t(lp());const P=t(qn(o)),ee=t(At(o)),oe=t(Je(o)),pe=t(Oe(o)),le=t(it(o));return pe.unwrap().then(Fe=>G(Dm(Fe))).catch(()=>G([])),()=>{P.abort?.(),ee.abort?.(),oe.abort?.(),pe.abort?.(),le.abort?.()}},[o,t,r]),S.useEffect(()=>{if(!o||!r)return;const P=t(ct({complaintTypeId:o,page:M,limit:N,status:R==="all"?void 0:R,...fe}));return()=>P.abort?.()},[o,fe,t,N,M,r,R]);const mr=L.some(P=>_.includes(P)),Ut=S.useMemo(()=>f!=null&&o!=null&&String(f)!==String(o)?[]:l.map(P=>({...Nl(P,b,E),_fields:P?.formField||[]})),[o,l,f,b,E]),He=S.useMemo(()=>El(Ut,j).filter(P=>Tl(P,E,_,D)),[Ut,j,E,_,D]),N0=Sl(He),Wa=S.useMemo(()=>Om(Ut,ye),[Ut,ye]),Sn=Wa.map(({_fields:P,...ee})=>ee),za=S.useMemo(()=>wm(He,Wa),[He,Wa]),E0=za.every(P=>Object.prototype.hasOwnProperty.call(T,P));S.useEffect(()=>{const P=za.filter(oe=>!Object.prototype.hasOwnProperty.call(T,oe));if(!P.length)return;let ee=!1;return Promise.all(P.map(async oe=>{try{const pe=await t(Hn({params:{path:oe}})).unwrap();return[oe,pe]}catch{return[oe,""]}})).then(oe=>{ee||x(pe=>({...pe,...Object.fromEntries(oe)}))}),()=>{ee=!0}},[za,T,t]);const gr=xm(p,M,N,Sn.length),Ul=!!(o&&!d&&(!Sn.length&&(c||!u)||Sn.length>0&&!E0)),A0=P=>{$(1),J({complaintTypeId:o,status:P}),o&&t(ct({complaintTypeId:o,page:1,limit:N,status:P==="all"?void 0:P,...fe}))},T0=P=>{P>=1&&P<=gr.totalPages&&P!==M&&$(P)},L0=P=>{const ee=Number(P);!Number.isFinite(ee)||ee<=0||ee===N||(I(ee),$(1))},F0=()=>H({complaintTypeId:o,direction:km(ye)}),I0=P=>{$(1),me({complaintTypeId:o,...P}),ne(!1)},O0=()=>{$(1),me({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),ne(!1)},k0=()=>{o&&n(`/complaintmanagement/new/${o}`)},D0=(P,ee)=>{if(P?.id==null||fr(P.status)||y!=null&&String(y)===String(P.id)||String(ee)===String(P.statusId)||String(ee)===String(P.status))return;const oe=b.find(le=>String(le.id)===String(ee)||String(le.name)===String(ee));oe?.id==null||_l(oe.name)&&!P.canResolve||(z(""),ae({type:"status",row:P,statusId:oe.id,currentStepId:P.currentStepId,fromLabel:P.status||"—",toLabel:oe.name}))},x0=(P,ee)=>{if(P?.id==null||fr(P.status)||y!=null&&String(y)===String(P.id)||String(ee)===String(P.currentStepId)||String(ee)===String(P.escalationTo))return;const oe=E.find(et=>String(et.id)===String(ee)||`Level ${et.levelNo}`===String(ee));if(oe?.id==null)return;const pe=[...E].sort((et,B0)=>(et.levelNo??0)-(B0.levelNo??0)),le=pe.findIndex(et=>String(et.id)===String(P.currentStepId)),Fe=pe.findIndex(et=>String(et.id)===String(oe.id));if(le<0||Fe<0)return;const De=Number(pe[le].levelNo??le+1),xe=Number(pe[Fe].levelNo??Fe+1);Math.abs(xe-De)===1&&(xe<De&&!ur(pe[le].canReassign)||(z(""),ae({type:"escalation",row:P,statusId:P.statusId,currentStepId:oe.id,fromLabel:P.escalationTo||"—",toLabel:oe.levelNo!=null?`Level ${oe.levelNo}`:String(oe.name||oe.id)})))},M0=()=>{if(!K)return;const{row:P,statusId:ee,currentStepId:oe,type:pe,fromLabel:le,toLabel:Fe}=K;t(on({id:P.id,statusId:ee,currentStepId:oe,status:pe==="status"?Fe:void 0,remark:F,onSuccess:()=>{ke(pe==="status"?`Successfully changed Status from ${le} to ${Fe}`:`Successfully changed Escalation from ${le} to ${Fe}`,"success"),pe==="escalation"&&o&&(t(ct({complaintTypeId:o,page:M,limit:N,...fe})),t(At(o)))},onFail:De=>{const xe=De?.response?.data?.message??De?.message??"Failed to update complaint";ke(xe,"error"),o&&(t(ct({complaintTypeId:o,page:M,limit:N,status:R==="all"?void 0:R})),t(At(o)))}})),ae(null),z("")},P0=()=>{ae(null),z("")},U0=P=>({...Gm(P,E,_,D),statusOptions:Wm(b,P),escalationOptions:zm(E,P),onStatusChange:ee=>D0(P,ee),onEscalationChange:ee=>x0(P,ee),attachmentUrlMap:T});return{complaintTypeId:o,canCreateComplaint:mr,isComplaintTypeActive:Y,statusNames:v,selectedStatus:R,selectedUpdatedAtSort:ye,isDownloadingReport:C,onStatusChange:A0,onSortChange:F0,dateFilter:ge,hasDateFilter:!!ge,isDateFilterOpen:X,onOpenDateFilter:()=>ne(!0),onCloseDateFilter:()=>ne(!1),onApplyDateFilter:I0,onResetDateFilter:O0,onNewComplaint:k0,onDownloadReport:async()=>{if(!(!o||C)){B(!0),V(null);try{const ee=(await Hm({complaintTypeId:o,status:R,dateParams:fe})).map(xe=>({...Nl(xe,b,E),_fields:xe?.formField||[]})),oe=El(ee,j).filter(xe=>Tl(xe,E,_,D)),pe=Sl(oe).filter(xe=>!jm(xe,ee,Ua)),le=new Blob([qm(pe,ee)],{type:"text/csv;charset=utf-8;"}),Fe=URL.createObjectURL(le),De=document.createElement("a");De.href=Fe,De.download=`complaints-report-${o}-${Date.now()}.csv`,document.body.appendChild(De),De.click(),document.body.removeChild(De),URL.revokeObjectURL(Fe)}catch(P){V(P?.response?.data?.message??P?.message??"Failed to download report")}finally{B(!1)}}},error:d,downloadError:k,statusUpdateError:w,showLoading:Ul,pendingChange:K,remarkDraft:F,onRemarkDraftChange:z,onConfirmPendingChange:M0,onCancelPendingChange:P0,toasts:A,onDismissToast:ze,tableProps:{scrollFields:N0.filter(P=>P.key!=="status"&&P.key!=="escalationTo"),stickyFields:[ml,gl],tableRows:Sn,fieldLabel:e,getCellContext:U0,page:M,itemsPerPage:N},paginationProps:{currentPage:M,totalItems:gr.totalItems,itemsPerPage:N,onPageChange:T0,onItemsPerPageChange:L0,selectOptions:Lm,totalPages:gr.totalPages,disabled:Ul,hasRows:!!(gr.totalItems>0||Sn.length||M>1)}}}function Zm(){const e=Jm();return i.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[i.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?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(Ft,{text:"Loading complaints"}):i.jsx(pl,{...e.tableProps}),e.paginationProps.hasRows?i.jsx(sl,{...e.paginationProps}):null,e.pendingChange?i.jsxs(Sa,{open:!0,title:e.pendingChange.type==="status"?`Change status from ${dt(e.pendingChange.fromLabel)} to ${dt(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(ym,{open:e.isDateFilterOpen,initial:e.dateFilter,onApply:e.onApplyDateFilter,onReset:e.onResetDateFilter,onClose:e.onCloseDateFilter}),i.jsx(dm,{toasts:e.toasts,onDismiss:e.onDismissToast})]})}const pr=()=>i.jsxs("main",{className:"ca-query-management-page",children:[i.jsx(im,{}),i.jsx(Zm,{})]}),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"};function Va(e){return typeof e=="string"?e:e?.label??""}function Qm(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:re({fieldKey:a,label:r})?"status":a,fieldType:Aa(n.fieldType,Xm,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??o?.fieldName??n.dependsOn??"",options:s.map(Va).filter(Boolean),parentMappings:Object.fromEntries(s.map(l=>{const c=Va(l),d=e0(l);return!c||!d?null:[c,t0(d,o?.options?.values??[])]}).filter(Boolean))}})}function hr(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 Rm(e){if(re(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:hr(e.label||t)}function e0(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function t0(e,t=[]){if(!e)return"";const n=t.map(Va).filter(Boolean),r=n.find(s=>s===e);return r||n.find(s=>hr(s)===e||hr(s)===hr(e))||e}function n0(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[he(s)]||"").trim();return c?r.filter(d=>String(o[d]||"")===c):r}function Fl(e){return Pt(e)==="checkbox"}function r0(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function a0(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function s0(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=r0(n,s.dependsOn);if(!l)break;const c=(s.parentMappings||{})[o];if(!c)break;r[he(l)]=Fl(l)?[c]:c,s=l,o=c}for(s=e,o=a;s;){const l=a0(n,s);if(!l)break;const c=l.parentMappings||{},d=Object.keys(c).find(u=>c[u]===o);if(!d)break;r[he(l)]=Fl(l)?[d]:d,s=l,o=d}return r}function he(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 Il(e){return`new-query-${e.id??he(e)}`}function Ol(e){if(re(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=Pt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function kl(e){return Array.isArray(e)?e.map(t=>typeof File<"u"&&t instanceof File?t.name:t):typeof File<"u"&&e instanceof File?e.name:e??""}function qa(e,t){if(e==null)return t?.name||"";if(typeof e=="string"||typeof e=="number")return String(e);const n=e.file&&typeof e.file=="object"?e.file:e,r=n.path||n.id||t?.name||"",a=n.originalName||t?.name||"";return a&&r&&String(r)!==a?`${r}::${a}`:r}async function o0(e,t,n){const r=Pt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(Tt({file:n,folder:"complaints"})).unwrap();return qa(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const s=await e(Tt({file:a,folder:"complaints"})).unwrap();return qa(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(Tt({file:s,folder:"complaints"})).unwrap();return qa(o,s)}return s})):kl(n)}async function i0(e=[],t={},n){const r={};for(const a of e){const s=Rm(a);s&&(r[s]=await o0(n,a,t[he(a)]))}return r}function Dl(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function l0(e){return/^\d+$/.test(String(e).trim())}function c0(e=[],t={}){for(const n of e){const r=Pt(n),a=t[he(n)],s=n.label||"This field";if(n.required&&Dl(a))return`${s} is required.`;if(!Dl(a)&&r==="number"&&!l0(a))return`${s} must be a valid number.`}return""}function d0({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:s}=Xe(),o=Pt(e),l=Il(e),c=re(e);if(Qe(e)&&Array.isArray(r))return i.jsx(Ji,{id:l,name:he(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:he(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:`${he(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:he(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(lr,{id:l,name:he(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(o==="images")return i.jsx(lr,{id:l,name:he(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(o==="number")return i.jsx("input",{id:l,name:he(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:he(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:he(e),className:"review-control",type:o,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function xl({storeList:e}={}){const{fieldLabel:t}=Xe(),n=Q.useDispatch(),r=Ge(),{complaintTypeId:a}=vn(),s=Number(a),o=Number.isFinite(s)&&s>0,[l,c]=S.useState([]),[d,u]=S.useState({}),[f,p]=S.useState(!0),[b,w]=S.useState(!1),[y,h]=S.useState(""),[m,v]=S.useState(""),[E,_]=S.useState(""),[D,L]=S.useState(""),Y=Q.useSelector(M=>{const $=M.complaintType??{},I=(Array.isArray($.complaintList)?$.complaintList:[]).find(j=>String(j?.id??j?._id)===String(a))??(String($.selected?.id??$.selected?._id)===String(a)?$.selected:null);return String(I?.name??I?.code??"").trim()}),te=Y||D;S.useEffect(()=>{if(!o||Y)return;let M=!1;return n(it(s)).unwrap().then($=>{if(M)return;const N=$?.data??$;L(String(N?.name??N?.code??"").trim())}).catch(()=>{}),()=>{M=!0}},[s,Y,n,o]),S.useEffect(()=>{if(!o)return;let M=!1;return n(Oe(s)).unwrap().then($=>{if(M)return;const N=Qm(Array.isArray($?.data)?$.data:$);c(N),u(Object.fromEntries(N.map(I=>[he(I),Ol(I)])))}).catch($=>{M||h(typeof $=="string"?$:$?.message||"Failed to load form fields.")}).finally(()=>{M||p(!1)}),()=>{M=!0}},[s,n,o]);const J=S.useMemo(()=>l.length>0,[l]),W=async M=>{if(M.preventDefault(),!o){h("A valid complaint type is required.");return}h(""),v(""),w(!0);const $=c0(l,d);if($){h($),w(!1);return}try{const N=await i0(l,d,n),I=l.findIndex(re),j=l[I+1],T=(j?[].concat(kl(d[he(j)])).join(", ").trim():"")||te;if(!T){h("Title is required. Please fill the first field.");return}await n(zn({complaintTypeId:s,title:T,fieldValues:N})).unwrap(),v("Query submitted successfully."),r(`/complaintmanagement/${s}`)}catch(N){h(typeof N=="string"?N:N?.message||"Failed to submit query.")}finally{w(!1)}},H=M=>{const $=n0(M,l,d);return i.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Pt(M))?" review-question--wide":""}`,children:[i.jsxs("label",{className:"review-label",htmlFor:Il(M),children:[t(M)||"Untitled field",M.required?i.jsx("span",{className:"review-required",children:"*"}):null]}),i.jsx(d0,{storeList:e,field:M,options:$,value:d[he(M)]??Ol(M),onChange:N=>{re(M)||u(I=>{const j=s0(M,N,l);return{...I,[he(M)]:N,...j}})}})]},M.id??he(M))};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"})]})}),y||!o?i.jsx("div",{className:"ca-validation-toast",role:"alert",children:y||"A valid complaint type is required."}):null,f&&o?i.jsx(Ft,{text:"Loading form fields"}):null,o&&!f&&J?i.jsxs("form",{className:"review-form-card",onSubmit:W,children:[i.jsx("div",{className:"review-form-grid",children:l.map(M=>i.jsx(S.Fragment,{children:re(M)?null:H(M)},M.id??he(M)))}),i.jsx("div",{className:"ca-new-query__actions",children:i.jsx(we,{type:"submit",disabled:b,children:b?"Submitting...":"Submit Complaint"})}),m?i.jsx("p",{className:"ca-body",children:m}):null]}):null]})})}function u0({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??i.jsx(ai,{...e});return i.jsxs(kc,{children:[i.jsx(Pe,{path:"/",element:a}),i.jsx(Pe,{path:"/settings/:systemId",element:i.jsx(al,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),i.jsx(Pe,{path:"complaintmanagement",element:i.jsx(pr,{company:e.company})}),i.jsx(Pe,{path:"complaintmanagement/new/:complaintTypeId",element:i.jsx(xl,{company:e.company,storeList:e.storeList})}),i.jsx(Pe,{path:"complaintmanagement/:complaintTypeId",element:i.jsx(pr,{company:e.company})}),i.jsx(Pe,{path:"querymanagement",element:i.jsx(pr,{company:e.company})}),i.jsx(Pe,{path:"querymanagement/new/:complaintTypeId",element:i.jsx(xl,{company:e.company,storeList:e.storeList})}),i.jsx(Pe,{path:"querymanagement/:complaintTypeId",element:i.jsx(pr,{company:e.company})}),i.jsx(Pe,{path:"*",element:a})]})}function f0({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return i.jsx(u0,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function p0({children:e}){const{cssVars:t,darkMode:n,mode:r}=ho();return i.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function h0({basePath:e,children:t}){return ht()?t:i.jsx(Yc,{basename:e,children:t})}function m0({store:e,children:t}){return i.jsx(Q.Provider,{store:e||Wo,children:t})}function g0({details:e,children:t}){const n=Q.useDispatch();return S.useEffect(()=>{n(wo(e))},[n,e]),t}const Ml=[],Pl=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:s=!1,title:o,description:l,rolelist:c,roleList:d=c??Ml,userList:u=Ml,storeList:f,currentUser:p,company:b=p?.company,featureActions:w=vp,useDemoData:y=!0,createLabel:h,onCreateForm:m,onConfigure:v,onOpen:E,onTitleClick:_,onDescriptionClick:D,onSearch:L,onPublish:Y,onSaveDraft:te,showSaveButton:J,showNextButton:W,onStepChange:H,children:M})=>{const $={title:o,description:l,useDemoData:y,createLabel:h,onCreateForm:m,onConfigure:v,onOpen:E,roleList:d,userList:u,storeList:f,company:b,onTitleClick:_,onDescriptionClick:D,onSearch:L,onSaveDraft:te,showSaveButton:J,showNextButton:W},N=S.useMemo(()=>({featureActions:w,apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:s,title:o,description:l,roleList:d,userList:u,storeList:f,currentUser:p,company:b,useDemoData:y,createLabel:h,onCreateForm:m,onConfigure:v,onOpen:E,onTitleClick:_,onDescriptionClick:D,onSearch:L,onPublish:Y,onSaveDraft:te,showSaveButton:J,showNextButton:W,onStepChange:H}),[w,e,t,r,a,s,o,l,d,u,f,p,b,y,h,m,v,E,_,D,L,Y,te,J,W,H]);return i.jsx(Ni.Provider,{value:b,children:i.jsx(po,{theme:a,darkMode:s,children:i.jsx(m0,{store:n,children:i.jsx(g0,{details:N,children:i.jsx(p0,{children:i.jsx(oo,{apiUrl:e,authToken:t,children:i.jsx(h0,{basePath:r,children:i.jsx(f0,{pageProps:$,onPublish:Y,onStepChange:H,children:M})})})})})})})})};function y0({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 b0({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 S0({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 v0=qe.colors,w0=qe.radii,C0=qe.spacing,_0=qe.typography;O.AddFormButton=_i,O.AddTableCard=hi,O.ApiProvider=oo,O.BodyText=Kn,O.Button=we,O.COMPLAINT_ENDPOINTS=Un,O.CardFooter=Zo,O.CardHeader=Jo,O.ChevronDownIcon=ua,O.ChevronRightIcon=Jn,O.Chip=y0,O.CloseIcon=di,O.ComplaintApp=Pl,O.ComplaintManagementPage=ai,O.ComplaintSettingsPage=al,O.ComplaintTableGrid=pl,O.ComplaintTableToolbar=ol,O.CustomPagination=sl,O.DEFAULT_PAGE_DESCRIPTION=ri,O.DEMO_SYSTEMS=Tp,O.DataPoint=Xo,O.Divider=Qo,O.DragHandleIcon=Ai,O.EmptyState=ll,O.FieldLabel=da,O.FormCard=Di,O.FormCardGrid=ji,O.FormField=Be,O.FormInput=dn,O.FormSelect=ha,O.FormTextarea=Ip,O.Heading1=ia,O.Heading2=la,O.Input=Lt,O.LabelText=Ko,O.LayersIcon=Fp,O.LinkText=bp,O.Loading=Ft,O.PageHeader=Go,O.PlusIcon=zo,O.Radio=b0,O.RoleMultiSelect=Xn,O.SETTINGS_STEPS=Ue,O.SearchBar=ni,O.SearchIcon=ti,O.Select=We,O.SettingsCard=cn,O.SettingsCardHeader=li,O.SettingsWizardProvider=ii,O.StatusBadge=S0,O.Stepper=un,O.SystemCard=Ro,O.SystemCardGrid=ei,O.TableCard=mi,O.TableCardGrid=wi,O.Tag=ui,O.Textarea=ci,O.ThemeProvider=po,O.Toggle=Yn,O.ToggleField=Gi,O.TrashIcon=Gn,O.Typography=Ze,O.ValueText=Yo,O.WORKFLOW_SUBSTEPS=Lp,O.api=ce,O.appDetailsReducer=Co,O.clearAppDetails=If,O.clearComplaintError=Cf,O.clearId=Of,O.clearSelectedComplaintResource=_f,O.colors=v0,O.complaintReducer=yo,O.createComplaintStore=qo,O.darkTheme=Qt,O.deepMerge=Ct,O.default=Pl,O.defaultThemeFile=io,O.deleteFormField=en,O.getFormFields=Oe,O.lightTheme=qe,O.normalizeThemeFile=lo,O.radii=w0,O.resetComplaintState=Nf,O.resolveActiveTheme=co,O.saveFormFields=Rt,O.setAppDetails=wo,O.setAuthToken=Yr,O.setBaseUrl=so,O.setId=lt,O.setIsEdit=_t,O.spacing=C0,O.store=Wo,O.themeToCssVars=uo,O.typography=_0,O.useSettingsWizard=Zn,O.useTheme=ho,Object.defineProperties(O,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
3
|
+
`+('Please change the parent <Route path="'+v+'"> to <Route ')+('path="'+(v==="/"?"*":v+"/*")+'">.'))}let f=Me(),p;if(t){var w;let v=typeof t=="string"?pt(t):t;d==="/"||(w=v.pathname)!=null&&w.startsWith(d)||(process.env.NODE_ENV!=="production"?se(!1,"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, the location pathname must begin with the portion of the URL pathname that was "+('matched by all parent routes. The current pathname base is "'+d+'" ')+('but pathname "'+v.pathname+'" was given in the `location` prop.')):se(!1)),p=v}else p=f;let b=p.pathname||"/",g=b;if(d!=="/"){let v=d.replace(/^\//,"").split("/");g="/"+b.replace(/^\//,"").split("/").slice(v.length).join("/")}let m=Sc(e,{pathname:g});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Le(u||m!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Le(m==null||m[m.length-1].route.element!==void 0||m[m.length-1].route.Component!==void 0||m[m.length-1].route.lazy!==void 0,'Matched leaf route at location "'+p.pathname+p.search+p.hash+'" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.'));let h=Xc(m&&m.map(v=>Object.assign({},v,{params:Object.assign({},i,v.params),pathname:qe([d,a.encodeLocation?a.encodeLocation(v.pathname).pathname:v.pathname]),pathnameBase:v.pathnameBase==="/"?d:qe([d,a.encodeLocation?a.encodeLocation(v.pathnameBase).pathname:v.pathnameBase])})),o,r,n);return t&&h?B.createElement(zt.Provider,{value:{location:Vt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Je.Pop}},h):h}function Yc(){let e=rd(),t=jc(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,n="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:n},o={padding:"2px 4px",backgroundColor:n},l=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),l=B.createElement(B.Fragment,null,B.createElement("p",null,"💿 Hey developer 👋"),B.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",B.createElement("code",{style:o},"ErrorBoundary")," or"," ",B.createElement("code",{style:o},"errorElement")," prop on your route."))),B.createElement(B.Fragment,null,B.createElement("h2",null,"Unexpected Application Error!"),B.createElement("h3",{style:{fontStyle:"italic"}},t),r?B.createElement("pre",{style:a},r):null,l)}const Gc=B.createElement(Yc,null);class Jc extends B.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,r){return r.location!==t.location||r.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:r.error,location:r.location,revalidation:t.revalidation||r.revalidation}}componentDidCatch(t,r){console.error("React Router caught the following error during render",t,r)}render(){return this.state.error!==void 0?B.createElement(xe.Provider,{value:this.props.routeContext},B.createElement(Ln.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Zc(e){let{routeContext:t,match:r,children:n}=e,a=B.useContext(Wt);return a&&a.static&&a.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=r.route.id),B.createElement(xe.Provider,{value:t},n)}function Xc(e,t,r,n){var a;if(t===void 0&&(t=[]),r===void 0&&(r=null),n===void 0&&(n=null),e==null){var o;if(!r)return null;if(r.errors)e=r.matches;else if((o=n)!=null&&o.v7_partialHydration&&t.length===0&&!r.initialized&&r.matches.length>0)e=r.matches;else return null}let l=e,i=(a=r)==null?void 0:a.errors;if(i!=null){let u=l.findIndex(f=>f.route.id&&i?.[f.route.id]!==void 0);u>=0||(process.env.NODE_ENV!=="production"?se(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(i).join(",")):se(!1)),l=l.slice(0,Math.min(l.length,u+1))}let c=!1,d=-1;if(r&&n&&n.v7_partialHydration)for(let u=0;u<l.length;u++){let f=l[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:w}=r,b=f.route.loader&&p[f.route.id]===void 0&&(!w||w[f.route.id]===void 0);if(f.route.lazy||b){c=!0,d>=0?l=l.slice(0,d+1):l=[l[0]];break}}}return l.reduceRight((u,f,p)=>{let w,b=!1,g=null,m=null;r&&(w=i&&f.route.id?i[f.route.id]:void 0,g=f.route.errorElement||Gc,c&&(d<0&&p===0?(bs("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),b=!0,m=null):d===p&&(b=!0,m=f.route.hydrateFallbackElement||null)));let h=t.concat(l.slice(0,p+1)),v=()=>{let L;return w?L=g:b?L=m:f.route.Component?L=B.createElement(f.route.Component,null):f.route.element?L=f.route.element:L=u,B.createElement(Zc,{match:f,routeContext:{outlet:u,matches:h,isDataRoute:r!=null},children:L})};return r&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?B.createElement(Jc,{location:r.location,revalidation:r.revalidation,component:g,error:w,children:v(),routeContext:{outlet:null,matches:h,isDataRoute:!0}}):v()},null)}var gs=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(gs||{}),Kt=(function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e})(Kt||{});function Tn(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Qc(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Tn(e)):se(!1)),t}function Rc(e){let t=B.useContext(En);return t||(process.env.NODE_ENV!=="production"?se(!1,Tn(e)):se(!1)),t}function ed(e){let t=B.useContext(xe);return t||(process.env.NODE_ENV!=="production"?se(!1,Tn(e)):se(!1)),t}function In(e){let t=ed(e),r=t.matches[t.matches.length-1];return r.route.id||(process.env.NODE_ENV!=="production"?se(!1,e+' can only be used on routes that contain a unique "id"'):se(!1)),r.route.id}function td(){return In(Kt.UseRouteId)}function rd(){var e;let t=B.useContext(Ln),r=Rc(Kt.UseRouteError),n=In(Kt.UseRouteError);return t!==void 0?t:(e=r.errors)==null?void 0:e[n]}function nd(){let{router:e}=Qc(gs.UseNavigateStable),t=In(Kt.UseNavigateStable),r=B.useRef(!1);return ms(()=>{r.current=!0}),B.useCallback(function(a,o){o===void 0&&(o={}),process.env.NODE_ENV!=="production"&&Le(r.current,hs),r.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Vt({fromRouteId:t},o)))},[e,t])}const ys={};function bs(e,t,r){!t&&!ys[e]&&(ys[e]=!0,process.env.NODE_ENV!=="production"&&Le(!1,r))}const Ss={};function ad(e,t){process.env.NODE_ENV!=="production"&&!Ss[t]&&(Ss[t]=!0,console.warn(t))}const vs=(e,t,r)=>ad(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+r+"."));function sd(e,t){e?.v7_startTransition===void 0&&vs("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&&vs("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function _e(e){process.env.NODE_ENV!=="production"?se(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>."):se(!1)}function od(e){let{basename:t="/",children:r=null,location:n,navigationType:a=Je.Pop,navigator:o,static:l=!1,future:i}=e;ht()&&(process.env.NODE_ENV!=="production"?se(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):se(!1));let c=t.replace(/^\/*/,"/"),d=B.useMemo(()=>({basename:c,navigator:o,static:l,future:Vt({v7_relativeSplatPath:!1},i)}),[c,i,o,l]);typeof n=="string"&&(n=pt(n));let{pathname:u="/",search:f="",hash:p="",state:w=null,key:b="default"}=n,g=B.useMemo(()=>{let m=Ze(u,c);return m==null?null:{location:{pathname:m,search:f,hash:p,state:w,key:b},navigationType:a}},[c,u,f,p,w,b,a]);return process.env.NODE_ENV!=="production"&&Le(g!=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."),g==null?null:B.createElement(Oe.Provider,{value:d},B.createElement(zt.Provider,{children:r,value:g}))}function ld(e){let{children:t,location:r}=e;return Hc(Fn(t),r)}new Promise(()=>{});function Fn(e,t){t===void 0&&(t=[]);let r=[];return B.Children.forEach(e,(n,a)=>{if(!B.isValidElement(n))return;let o=[...t,a];if(n.type===B.Fragment){r.push.apply(r,Fn(n.props.children,o));return}n.type!==_e&&(process.env.NODE_ENV!=="production"?se(!1,"["+(typeof n.type=="string"?n.type:n.type.name)+"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>"):se(!1)),!n.props.index||!n.props.children||(process.env.NODE_ENV!=="production"?se(!1,"An index route cannot have child routes."):se(!1));let l={id:n.props.id||o.join("-"),caseSensitive:n.props.caseSensitive,element:n.props.element,Component:n.props.Component,index:n.props.index,path:n.props.path,loader:n.props.loader,action:n.props.action,errorElement:n.props.errorElement,ErrorBoundary:n.props.ErrorBoundary,hasErrorBoundary:n.props.ErrorBoundary!=null||n.props.errorElement!=null,shouldRevalidate:n.props.shouldRevalidate,handle:n.props.handle,lazy:n.props.lazy};n.props.children&&(l.children=Fn(n.props.children,o)),r.push(l)}),r}function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)({}).hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},gt.apply(null,arguments)}function kn(e,t){if(e==null)return{};var r={};for(var n in e)if({}.hasOwnProperty.call(e,n)){if(t.indexOf(n)!==-1)continue;r[n]=e[n]}return r}const Er="get",Lr="application/x-www-form-urlencoded";function Tr(e){return e!=null&&typeof e.tagName=="string"}function id(e){return Tr(e)&&e.tagName.toLowerCase()==="button"}function cd(e){return Tr(e)&&e.tagName.toLowerCase()==="form"}function dd(e){return Tr(e)&&e.tagName.toLowerCase()==="input"}function ud(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function fd(e,t){return e.button===0&&(!t||t==="_self")&&!ud(e)}function On(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let n=e[r];return t.concat(Array.isArray(n)?n.map(a=>[r,a]):[[r,n]])},[]))}function pd(e,t){let r=On(e);return t&&t.forEach((n,a)=>{r.has(a)||t.getAll(a).forEach(o=>{r.append(a,o)})}),r}let Ir=null;function hd(){if(Ir===null)try{new FormData(document.createElement("form"),0),Ir=!1}catch{Ir=!0}return Ir}const md=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Dn(e){return e!=null&&!md.has(e)?(process.env.NODE_ENV!=="production"&&Le(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+Lr+'"')),null):e}function gd(e,t){let r,n,a,o,l;if(cd(e)){let i=e.getAttribute("action");n=i?Ze(i,t):null,r=e.getAttribute("method")||Er,a=Dn(e.getAttribute("enctype"))||Lr,o=new FormData(e)}else if(id(e)||dd(e)&&(e.type==="submit"||e.type==="image")){let i=e.form;if(i==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||i.getAttribute("action");if(n=c?Ze(c,t):null,r=e.getAttribute("formmethod")||i.getAttribute("method")||Er,a=Dn(e.getAttribute("formenctype"))||Dn(i.getAttribute("enctype"))||Lr,o=new FormData(i,e),!hd()){let{name:d,type:u,value:f}=e;if(u==="image"){let p=d?d+".":"";o.append(p+"x","0"),o.append(p+"y","0")}else d&&o.append(d,f)}}else{if(Tr(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=Er,n=null,a=Lr,l=e}return o&&a==="text/plain"&&(l=o,o=void 0),{action:n,method:r.toLowerCase(),encType:a,formData:o,body:l}}const yd=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],bd=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],Sd=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],vd="6";try{window.__reactRouterVersion=vd}catch{}const ws=B.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(ws.displayName="ViewTransition");const wd=B.createContext(new Map);process.env.NODE_ENV!=="production"&&(wd.displayName="Fetchers");const Cs=B["startTransition"];function Cd(e){let{basename:t,children:r,future:n,window:a}=e,o=B.useRef();o.current==null&&(o.current=gc({window:a,v5Compat:!0}));let l=o.current,[i,c]=B.useState({action:l.action,location:l.location}),{v7_startTransition:d}=n||{},u=B.useCallback(f=>{d&&Cs?Cs(()=>c(f)):c(f)},[c,d]);return B.useLayoutEffect(()=>l.listen(u),[l,u]),B.useEffect(()=>sd(n),[n]),B.createElement(od,{basename:t,children:r,location:i.location,navigationType:i.action,navigator:l,future:n})}process.env.NODE_ENV;const _d=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Nd=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,_s=B.forwardRef(function(t,r){let{onClick:n,relative:a,reloadDocument:o,replace:l,state:i,target:c,to:d,preventScrollReset:u,viewTransition:f}=t,p=kn(t,yd),{basename:w}=B.useContext(Oe),b,g=!1;if(typeof d=="string"&&Nd.test(d)&&(b=d,_d))try{let L=new URL(window.location.href),_=d.startsWith("//")?new URL(L.protocol+d):new URL(d),M=Ze(_.pathname,w);_.origin===L.origin&&M!=null?d=M+_.search+_.hash:g=!0}catch{process.env.NODE_ENV!=="production"&&Le(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let m=Wc(d,{relative:a}),h=Td(d,{replace:l,state:i,target:c,preventScrollReset:u,relative:a,viewTransition:f});function v(L){n&&n(L),L.defaultPrevented||h(L)}return B.createElement("a",gt({},p,{href:b||m,onClick:g||o?n:v,ref:r,target:c}))});process.env.NODE_ENV!=="production"&&(_s.displayName="Link");const Ad=B.forwardRef(function(t,r){let{"aria-current":n="page",caseSensitive:a=!1,className:o="",end:l=!1,style:i,to:c,viewTransition:d,children:u}=t,f=kn(t,bd),p=Ht(c,{relative:f.relative}),w=Me(),b=B.useContext(En),{navigator:g,basename:m}=B.useContext(Oe),h=b!=null&&xd(p)&&d===!0,v=g.encodeLocation?g.encodeLocation(p).pathname:p.pathname,L=w.pathname,_=b&&b.navigation&&b.navigation.location?b.navigation.location.pathname:null;a||(L=L.toLowerCase(),_=_?_.toLowerCase():null,v=v.toLowerCase()),_&&m&&(_=Ze(_,m)||_);const M=v!=="/"&&v.endsWith("/")?v.length-1:v.length;let T=L===v||!l&&L.startsWith(v)&&L.charAt(M)==="/",q=_!=null&&(_===v||!l&&_.startsWith(v)&&_.charAt(v.length)==="/"),R={isActive:T,isPending:q,isTransitioning:h},J=T?n:void 0,V;typeof o=="function"?V=o(R):V=[o,T?"active":null,q?"pending":null,h?"transitioning":null].filter(Boolean).join(" ");let G=typeof i=="function"?i(R):i;return B.createElement(_s,gt({},f,{"aria-current":J,className:V,ref:r,style:G,to:c,viewTransition:d}),typeof u=="function"?u(R):u)});process.env.NODE_ENV!=="production"&&(Ad.displayName="NavLink");const Ed=B.forwardRef((e,t)=>{let{fetcherKey:r,navigate:n,reloadDocument:a,replace:o,state:l,method:i=Er,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,w=kn(e,Sd),b=Od(),g=Dd(c,{relative:u}),m=i.toLowerCase()==="get"?"get":"post",h=v=>{if(d&&d(v),v.defaultPrevented)return;v.preventDefault();let L=v.nativeEvent.submitter,_=L?.getAttribute("formmethod")||i;b(L||v.currentTarget,{fetcherKey:r,method:_,navigate:n,replace:o,state:l,relative:u,preventScrollReset:f,viewTransition:p})};return B.createElement("form",gt({ref:t,method:m,action:g,onSubmit:a?d:h},w))});process.env.NODE_ENV!=="production"&&(Ed.displayName="Form"),process.env.NODE_ENV;var Fr;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(Fr||(Fr={}));var Ns;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(Ns||(Ns={}));function Ld(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function As(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Ld(e)):se(!1)),t}function Td(e,t){let{target:r,replace:n,state:a,preventScrollReset:o,relative:l,viewTransition:i}=t===void 0?{}:t,c=Pe(),d=Me(),u=Ht(e,{relative:l});return B.useCallback(f=>{if(fd(f,r)){f.preventDefault();let p=n!==void 0?n:qt(d)===qt(u);c(e,{replace:p,state:a,preventScrollReset:o,relative:l,viewTransition:i})}},[d,c,u,n,a,r,e,o,l,i])}function Es(e){process.env.NODE_ENV!=="production"&&Le(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=B.useRef(On(e)),r=B.useRef(!1),n=Me(),a=B.useMemo(()=>pd(n.search,r.current?null:t.current),[n.search]),o=Pe(),l=B.useCallback((i,c)=>{const d=On(typeof i=="function"?i(a):i);r.current=!0,o("?"+d,c)},[o,a]);return[a,l]}function Id(){if(typeof document>"u")throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}let Fd=0,kd=()=>"__"+String(++Fd)+"__";function Od(){let{router:e}=As(Fr.UseSubmit),{basename:t}=B.useContext(Oe),r=td();return B.useCallback(function(n,a){a===void 0&&(a={}),Id();let{action:o,method:l,encType:i,formData:c,body:d}=gd(n,t);if(a.navigate===!1){let u=a.fetcherKey||kd();e.fetch(u,r,a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,flushSync:a.flushSync})}else e.navigate(a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,replace:a.replace,state:a.state,fromRouteId:r,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,r])}function Dd(e,t){let{relative:r}=t===void 0?{}:t,{basename:n}=B.useContext(Oe),a=B.useContext(xe);a||(process.env.NODE_ENV!=="production"?se(!1,"useFormAction must be used inside a RouteContext"):se(!1));let[o]=a.matches.slice(-1),l=gt({},Ht(e||".",{relative:r})),i=Me();if(e==null){l.search=i.search;let c=new URLSearchParams(l.search),d=c.getAll("index");if(d.some(f=>f==="")){c.delete("index"),d.filter(p=>p).forEach(p=>c.append("index",p));let f=c.toString();l.search=f?"?"+f:""}}return(!e||e===".")&&o.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),n!=="/"&&(l.pathname=l.pathname==="/"?n:qe([n,l.pathname])),qt(l)}function xd(e,t){t===void 0&&(t={});let r=B.useContext(ws);r==null&&(process.env.NODE_ENV!=="production"?se(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):se(!1));let{basename:n}=As(Fr.useViewTransitionState),a=Ht(e,{relative:t.relative});if(!r.isTransitioning)return!1;let o=Ze(r.currentLocation.pathname,n)||r.currentLocation.pathname,l=Ze(r.nextLocation.pathname,n)||r.nextLocation.pathname;return Nn(a.pathname,l)!=null||Nn(a.pathname,o)!=null}function Ls(e,t){return function(){return e.apply(t,arguments)}}const{toString:Md}=Object.prototype,{getPrototypeOf:yt}=Object,{iterator:Yt,toStringTag:Ts}=Symbol,kr=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),Gt=(e,t)=>{let r=e;const n=[];for(;r!=null&&r!==Object.prototype;){if(n.indexOf(r)!==-1)return!1;if(n.push(r),kr(r,t))return!0;r=yt(r)}return!1},Pd=(e,t)=>e!=null&&Gt(e,t)?e[t]:void 0,xn=(e=>t=>{const r=Md.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),Te=e=>(e=e.toLowerCase(),t=>xn(t)===e),Or=e=>t=>typeof t===e,{isArray:rt}=Array,nt=Or("undefined");function bt(e){return e!==null&&!nt(e)&&e.constructor!==null&&!nt(e.constructor)&&we(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Is=Te("ArrayBuffer");function Ud(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Is(e.buffer),t}const $d=Or("string"),we=Or("function"),Fs=Or("number"),St=e=>e!==null&&typeof e=="object",Bd=e=>e===!0||e===!1,Dr=e=>{if(!St(e))return!1;const t=yt(e);return(t===null||t===Object.prototype||yt(t)===null)&&!Gt(e,Ts)&&!Gt(e,Yt)},jd=e=>{if(!St(e)||bt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},qd=Te("Date"),Vd=Te("File"),Wd=e=>!!(e&&typeof e.uri<"u"),zd=e=>e&&typeof e.getParts<"u",Hd=Te("Blob"),Kd=Te("FileList"),Yd=Te("Set"),Gd=e=>St(e)&&we(e.pipe);function Jd(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const ks=Jd(),Os=typeof ks.FormData<"u"?ks.FormData:void 0,Zd=e=>{if(!e)return!1;if(Os&&e instanceof Os)return!0;const t=yt(e);if(!t||t===Object.prototype||!we(e.append))return!1;const r=xn(e);return r==="formdata"||r==="object"&&we(e.toString)&&e.toString()==="[object FormData]"},Xd=Te("URLSearchParams"),[Qd,Rd,eu,tu]=["ReadableStream","Request","Response","Headers"].map(Te),ru=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Jt(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,a;if(typeof e!="object"&&(e=[e]),rt(e))for(n=0,a=e.length;n<a;n++)t.call(null,e[n],n,e);else{if(bt(e))return;const o=r?Object.getOwnPropertyNames(e):Object.keys(e),l=o.length;let i;for(n=0;n<l;n++)i=o[n],t.call(null,e[i],i,e)}}function Ds(e,t){if(bt(e))return null;t=t.toLowerCase();const r=Object.keys(e);let n=r.length,a;for(;n-- >0;)if(a=r[n],t===a.toLowerCase())return a;return null}const at=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,xs=e=>!nt(e)&&e!==at;function Mn(...e){const{caseless:t,skipUndefined:r}=xs(this)&&this||{},n={},a=(o,l)=>{if(l==="__proto__"||l==="constructor"||l==="prototype")return;const i=t&&typeof l=="string"&&Ds(n,l)||l,c=kr(n,i)?n[i]:void 0;Dr(c)&&Dr(o)?n[i]=Mn(c,o):Dr(o)?n[i]=Mn({},o):rt(o)?n[i]=o.slice():(!r||!nt(o))&&(n[i]=o)};for(let o=0,l=e.length;o<l;o++){const i=e[o];if(!i||bt(i)||(Jt(i,a),typeof i!="object"||rt(i)))continue;const c=Object.getOwnPropertySymbols(i);for(let d=0;d<c.length;d++){const u=c[d];hu.call(i,u)&&a(i[u],u)}}return n}const nu=(e,t,r,{allOwnKeys:n}={})=>(Jt(t,(a,o)=>{r&&we(a)?Object.defineProperty(e,o,{__proto__:null,value:Ls(a,r),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:n}),e),au=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),su=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),r&&Object.assign(e.prototype,r)},ou=(e,t,r,n)=>{let a,o,l;const i={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),o=a.length;o-- >0;)l=a[o],(!n||n(l,e,t))&&!i[l]&&(t[l]=e[l],i[l]=!0);e=r!==!1&&yt(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},lu=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},iu=e=>{if(!e)return null;if(rt(e))return e;let t=e.length;if(!Fs(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},cu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&yt(Uint8Array)),du=(e,t)=>{const n=(e&&e[Yt]).call(e);let a;for(;(a=n.next())&&!a.done;){const o=a.value;t.call(e,o[0],o[1])}},uu=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},fu=Te("HTMLFormElement"),pu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,a){return n.toUpperCase()+a}),{propertyIsEnumerable:hu}=Object.prototype,mu=Te("RegExp"),Ms=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};Jt(r,(a,o)=>{let l;(l=t(a,o,e))!==!1&&(n[o]=l||a)}),Object.defineProperties(e,n)},gu=e=>{Ms(e,(t,r)=>{if(we(e)&&["arguments","caller","callee"].includes(r))return!1;const n=e[r];if(we(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},yu=(e,t)=>{const r={},n=a=>{a.forEach(o=>{r[o]=!0})};return rt(e)?n(e):n(String(e).split(t)),r},bu=()=>{},Su=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vu(e){return!!(e&&we(e.append)&&e[Ts]==="FormData"&&e[Yt])}const wu=e=>{const t=new WeakSet,r=n=>{if(St(n)){if(t.has(n))return;if(bt(n))return n;if(!("toJSON"in n)){t.add(n);let a;if(Yd(n)){a=[];for(const o of n){const l=r(o);!nt(l)&&a.push(l)}}else a=rt(n)?[]:{},Jt(n,(o,l)=>{const i=r(o);!nt(i)&&(a[l]=i)});return t.delete(n),a}}return n};return r(e)},Cu=Te("AsyncFunction"),_u=e=>e&&(St(e)||we(e))&&we(e.then)&&we(e.catch),Ps=((e,t)=>e?setImmediate:t?((r,n)=>(at.addEventListener("message",({source:a,data:o})=>{a===at&&o===r&&n.length&&n.shift()()},!1),a=>{n.push(a),at.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",we(at.postMessage)),Nu=typeof queueMicrotask<"u"?queueMicrotask.bind(at):typeof process<"u"&&process.nextTick||Ps,Us=e=>e!=null&&we(e[Yt]),S={isArray:rt,isArrayBuffer:Is,isBuffer:bt,isFormData:Zd,isArrayBufferView:Ud,isString:$d,isNumber:Fs,isBoolean:Bd,isObject:St,isPlainObject:Dr,isEmptyObject:jd,isReadableStream:Qd,isRequest:Rd,isResponse:eu,isHeaders:tu,isUndefined:nt,isDate:qd,isFile:Vd,isReactNativeBlob:Wd,isReactNative:zd,isBlob:Hd,isRegExp:mu,isFunction:we,isStream:Gd,isURLSearchParams:Xd,isTypedArray:cu,isFileList:Kd,forEach:Jt,merge:Mn,extend:nu,trim:ru,stripBOM:au,inherits:su,toFlatObject:ou,kindOf:xn,kindOfTest:Te,endsWith:lu,toArray:iu,forEachEntry:du,matchAll:uu,isHTMLForm:fu,hasOwnProperty:kr,hasOwnProp:kr,hasOwnInPrototypeChain:Gt,getSafeProp:Pd,reduceDescriptors:Ms,freezeMethods:gu,toObjectSet:yu,toCamelCase:pu,noop:bu,toFiniteNumber:Su,findKey:Ds,global:at,isContextDefined:xs,isSpecCompliantForm:vu,toJSONObject:wu,isAsyncFn:Cu,isThenable:_u,setImmediate:Ps,asap:Nu,isIterable:Us,isSafeIterable:e=>e!=null&&Gt(e,Yt)&&Us(e)},Au=S.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Eu=e=>{const t={};let r,n,a;return e&&e.split(`
|
|
4
|
+
`).forEach(function(l){a=l.indexOf(":"),r=l.substring(0,a).trim().toLowerCase(),n=l.substring(a+1).trim();const i=S.hasOwnProp(t,r);!r||i&&S.hasOwnProp(Au,r)||(r==="set-cookie"?i?t[r].push(n):t[r]=[n]:t[r]=i?t[r]+", "+n:n)}),t};function Lu(e){let t=0,r=e.length;for(;t<r;){const n=e.charCodeAt(t);if(n!==9&&n!==32)break;t+=1}for(;r>t;){const n=e.charCodeAt(r-1);if(n!==9&&n!==32)break;r-=1}return t===0&&r===e.length?e:e.slice(t,r)}const Tu=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),Iu=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function Pn(e,t){return S.isArray(e)?e.map(r=>Pn(r,t)):Lu(String(e).replace(t,""))}const Fu=e=>Pn(e,Tu),ku=e=>Pn(e,Iu);function $s(e){const t=Object.create(null);return S.forEach(e.toJSON(),(r,n)=>{t[n]=ku(r)}),t}const Bs=Symbol("internals");function Zt(e){return e&&String(e).trim().toLowerCase()}function xr(e){return e===!1||e==null?e:S.isArray(e)?e.map(xr):Fu(String(e))}function Ou(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const Du=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Un(e){let t=0,r=e.length;for(;t<r;){const n=e.charCodeAt(t);if(n!==9&&n!==32)break;t+=1}for(;r>t;){const n=e.charCodeAt(r-1);if(n!==9&&n!==32)break;r-=1}return t===0&&r===e.length?e:e.slice(t,r)}function xu(e){const t=e.length-1;if(t<1||e.charCodeAt(0)!==34||e.charCodeAt(t)!==34)return e;let r="";for(let n=1;n<t;n++){const a=e.charCodeAt(n);if(a===34||a===92&&(n+=1,n>=t))return e;r+=e[n]}return r}function Mu(e){const t=Object.create(null),r=String(e);let n=0,a=!1,o=!1;function l(i){const c=Un(r.slice(n,i)),d=c.indexOf("=");if(d<1)return;const u=Un(c.slice(0,d));if(!Du.test(u))return;const f=u.toLowerCase();if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=Un(c.slice(d+1));t[f]=xu(p)}for(let i=0;i<r.length;i++){const c=r.charCodeAt(i);a?o?o=!1:c===92?o=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(l(i),n=i+1)}return l(r.length),t}const Pu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function $n(e,t,r,n,a){if(S.isFunction(n))return n.call(this,t,r);if(a&&(t=r),!!S.isString(t)){if(S.isString(n))return t.indexOf(n)!==-1;if(S.isRegExp(n))return n.test(t)}}function Uu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function $u(e,t){const r=S.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{__proto__:null,value:function(a,o,l){return this[n].call(this,t,a,o,l)},configurable:!0})})}let Se=class{constructor(t){t&&this.set(t)}set(t,r,n){const a=this;function o(i,c,d){const u=Zt(c);if(!u)return;const f=S.findKey(a,u);(!f||a[f]===void 0||d===!0||d===void 0&&a[f]!==!1)&&(a[f||c]=xr(i))}const l=(i,c)=>S.forEach(i,(d,u)=>o(d,u,c));if(S.isPlainObject(t)||t instanceof this.constructor)l(t,r);else if(S.isString(t)&&(t=t.trim())&&!Pu(t))l(Eu(t),r);else if(S.isObject(t)&&S.isSafeIterable(t)){let i=Object.create(null),c,d;for(const u of t){if(!S.isArray(u))throw new TypeError("Object iterator must return a key-value pair");d=u[0],S.hasOwnProp(i,d)?(c=i[d],i[d]=S.isArray(c)?[...c,u[1]]:[c,u[1]]):i[d]=u[1]}l(i,r)}else t!=null&&o(r,t,n);return this}get(t,r){if(t=Zt(t),t){const n=S.findKey(this,t);if(n){const a=this[n];if(!r)return a;if(r===!0)return Ou(a);if(S.isFunction(r))return r.call(this,a,n);if(S.isRegExp(r))return r.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=Zt(t),t){const n=S.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||$n(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let a=!1;function o(l){if(l=Zt(l),l){const i=S.findKey(n,l);i&&(!r||$n(n,n[i],i,r))&&(delete n[i],a=!0)}}return S.isArray(t)?t.forEach(o):o(t),a}clear(t){const r=Object.keys(this);let n=r.length,a=!1;for(;n--;){const o=r[n];(!t||$n(this,this[o],o,t,!0))&&(delete this[o],a=!0)}return a}normalize(t){const r=this,n={};return S.forEach(this,(a,o)=>{const l=S.findKey(n,o);if(l){r[l]=xr(a),delete r[o];return}const i=t?Uu(o):String(o).trim();i!==o&&delete r[o],r[i]=xr(a),n[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return S.forEach(this,(n,a)=>{n!=null&&n!==!1&&(r[a]=t&&S.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(`
|
|
5
|
+
`)}getSetCookie(){const t=this.get("set-cookie");return S.isArray(t)?t:t==null||t===!1?[]:[t]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static parseParameters(t){return Mu(t)}static concat(t,...r){const n=new this(t);return r.forEach(a=>n.set(a)),n}static accessor(t){const n=(this[Bs]=this[Bs]={accessors:{}}).accessors,a=this.prototype;function o(l){const i=Zt(l);n[i]||($u(a,l),n[i]=!0)}return S.isArray(t)?t.forEach(o):o(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),S.reduceDescriptors(Se.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}}),S.freezeMethods(Se);const Mr="[REDACTED ****]";function Bu(e){if(S.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(S.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function ju(e,t){const r=new Set(t.map(o=>String(o).toLowerCase())),n=[],a=o=>{if(o===null||typeof o!="object"||S.isBuffer(o))return o;if(n.indexOf(o)!==-1)return;o instanceof Se&&(o=o.toJSON()),n.push(o);let l;if(S.isArray(o))l=[],o.forEach((i,c)=>{const d=a(i);S.isUndefined(d)||(l[c]=d)});else{if(!S.isPlainObject(o)&&Bu(o))return n.pop(),o;l=Object.create(null);for(const[i,c]of Object.entries(o)){const d=r.has(i.toLowerCase())?Mr:a(c);S.isUndefined(d)||(l[i]=d)}}return n.pop(),l};return a(e)}function js(e){try{return String(e)}catch{return""}}function qu(e){return e.errors.map(r=>{try{return r&&r.message?js(r.message):js(r)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let K=class fc extends Error{static from(t,r,n,a,o,l){let i=t.message;!i&&S.isArray(t.errors)&&t.errors.length&&(i=qu(t));const c=new fc(i,r||t.code,n,a,o);return Object.defineProperty(c,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),c.name=t.name,t.status!=null&&c.status==null&&(c.status=t.status),l&&Object.assign(c,l),c}constructor(t,r,n,a,o){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,r&&(this.code=r),n&&(this.config=n),a&&(this.request=a),o&&(this.response=o,this.status=o.status)}toJSON(){const t=this.config,r=t&&S.hasOwnProp(t,"redact")?t.redact:void 0,n=S.isArray(r)&&r.length>0?ju(t,r):S.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:n,code:this.code,status:this.status}}};K.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",K.ERR_BAD_OPTION="ERR_BAD_OPTION",K.ECONNABORTED="ECONNABORTED",K.ETIMEDOUT="ETIMEDOUT",K.ECONNREFUSED="ECONNREFUSED",K.ERR_NETWORK="ERR_NETWORK",K.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",K.ERR_DEPRECATED="ERR_DEPRECATED",K.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",K.ERR_BAD_REQUEST="ERR_BAD_REQUEST",K.ERR_CANCELED="ERR_CANCELED",K.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",K.ERR_INVALID_URL="ERR_INVALID_URL",K.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Vu=null,qs=100;function Bn(e){return S.isPlainObject(e)||S.isArray(e)}function Vs(e){return S.endsWith(e,"[]")?e.slice(0,-2):e}function jn(e,t,r){return e?e.concat(t).map(function(a,o){return a=Vs(a),!r&&o?"["+a+"]":a}).join(r?".":""):t}function Wu(e){return S.isArray(e)&&!e.some(Bn)}const zu=S.toFlatObject(S,{},null,function(t){return/^is[A-Z]/.test(t)});function Pr(e,t,r){if(!S.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=S.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(v,L){return!S.isUndefined(L[v])});const n=r.metaTokens,a=r.visitor||b,o=r.dots,l=r.indexes,i=r.Blob||typeof Blob<"u"&&Blob,c=r.maxDepth===void 0?qs:r.maxDepth,d=i&&S.isSpecCompliantForm(t),u=[];if(!S.isFunction(a))throw new TypeError("visitor must be a function");function f(h){if(h===null)return"";if(S.isDate(h))return h.toISOString();if(S.isBoolean(h))return h.toString();if(!d&&S.isBlob(h))throw new K("Blob is not supported. Use a Buffer instead.");if(S.isArrayBuffer(h)||S.isTypedArray(h)){if(d&&typeof i=="function")return new i([h]);throw new K("Blob is not supported. Use a Buffer instead.",K.ERR_NOT_SUPPORT)}return h}function p(h){if(h>c)throw new K("Object is too deeply nested ("+h+" levels). Max depth: "+c,K.ERR_FORM_DATA_DEPTH_EXCEEDED)}function w(h,v){if(c===1/0)return JSON.stringify(h);const L=[];return JSON.stringify(h,function(M,T){if(!S.isObject(T))return T;for(;L.length&&L[L.length-1]!==this;)L.pop();return L.push(T),p(v+L.length-1),T})}function b(h,v,L){let _=h;if(S.isReactNative(t)&&S.isReactNativeBlob(h))return t.append(jn(L,v,o),f(h)),!1;if(h&&!L&&typeof h=="object"){if(S.endsWith(v,"{}"))v=n?v:v.slice(0,-2),h=w(h,1);else if(S.isArray(h)&&Wu(h)||(S.isFileList(h)||S.endsWith(v,"[]"))&&(_=S.toArray(h)))return v=Vs(v),_.forEach(function(T,q){!(S.isUndefined(T)||T===null)&&t.append(l===!0?jn([v],q,o):l===null?v:v+"[]",f(T))}),!1}return Bn(h)?!0:(t.append(jn(L,v,o),f(h)),!1)}const g=Object.assign(zu,{defaultVisitor:b,convertValue:f,isVisitable:Bn});function m(h,v,L=0){if(!S.isUndefined(h)){if(p(L),u.indexOf(h)!==-1)throw new Error("Circular reference detected in "+v.join("."));u.push(h),S.forEach(h,function(M,T){(!(S.isUndefined(M)||M===null)&&a.call(t,M,S.isString(T)?T.trim():T,v,g))===!0&&m(M,v?v.concat(T):[T],L+1)}),u.pop()}}if(!S.isObject(e))throw new TypeError("data must be an object");return m(e),t}function Ws(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(n){return t[n]})}function qn(e,t){this._pairs=[],e&&Pr(e,this,t)}const zs=qn.prototype;zs.append=function(t,r){this._pairs.push([t,r])},zs.toString=function(t){const r=t?n=>t.call(this,n,Ws):Ws;return this._pairs.map(function(a){return r(a[0])+"="+r(a[1])},"").join("&")};function Hu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Hs(e,t,r){if(!t)return e;e=e||"";const n=S.isFunction(r)?{serialize:r}:r,a=S.getSafeProp(n,"encode")||Hu,o=S.getSafeProp(n,"serialize");let l;if(o?l=o(t,n):l=S.isURLSearchParams(t)?t.toString():new qn(t,n).toString(a),l){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+l}return e}class Ks{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){S.forEach(this.handlers,function(n){n!==null&&t(n)})}}const Vn={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},Ku={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:qn,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Wn=typeof window<"u"&&typeof document<"u",zn=typeof navigator=="object"&&navigator||void 0,Yu=Wn&&(!zn||["ReactNative","NativeScript","NS"].indexOf(zn.product)<0),Gu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Ju=Wn&&window.location.href||"http://localhost",ge={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Wn,hasStandardBrowserEnv:Yu,hasStandardBrowserWebWorkerEnv:Gu,navigator:zn,origin:Ju},Symbol.toStringTag,{value:"Module"})),...Ku};function Zu(e,t){return Pr(e,new ge.classes.URLSearchParams,{visitor:function(r,n,a,o){return ge.isNode&&S.isBuffer(r)?(this.append(n,r.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}const Ys=qs;function Gs(e){if(e>Ys)throw new K("FormData field is too deeply nested ("+e+" levels). Max depth: "+Ys,K.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Xu(e){const t=[],r=/[^.[\]]+|\[([^.[\]]*)]/g;let n;for(;(n=r.exec(e))!==null;)Gs(t.length),t.push(n[0]==="[]"?"":n[1]||n[0]);return t}function Qu(e){const t={},r=Object.keys(e);let n;const a=r.length;let o;for(n=0;n<a;n++)o=r[n],t[o]=e[o];return t}function Js(e){function t(r,n,a,o){Gs(o);let l=r[o++];if(l==="__proto__")return!0;const i=Number.isFinite(+l),c=o>=r.length;return l=!l&&S.isArray(a)?a.length:l,c?(S.hasOwnProp(a,l)?a[l]=S.isArray(a[l])?a[l].concat(n):[a[l],n]:a[l]=n,!i):((!S.hasOwnProp(a,l)||!S.isObject(a[l]))&&(a[l]=[]),t(r,n,a[l],o)&&S.isArray(a[l])&&(a[l]=Qu(a[l])),!i)}if(S.isFormData(e)&&S.isFunction(e.entries)){const r={};return S.forEachEntry(e,(n,a)=>{t(Xu(n),a,r,0)}),r}return null}const vt=(e,t)=>e!=null&&S.hasOwnProp(e,t)?e[t]:void 0;function Ru(e,t,r){if(S.isString(e))try{return(t||JSON.parse)(e),S.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const Xt={transitional:Vn,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",a=n.indexOf("application/json")>-1,o=S.isObject(t);if(o&&S.isHTMLForm(t)&&(t=new FormData(t)),S.isFormData(t))return a?JSON.stringify(Js(t)):t;if(S.isArrayBuffer(t)||S.isBuffer(t)||S.isStream(t)||S.isFile(t)||S.isBlob(t)||S.isReadableStream(t))return t;if(S.isArrayBufferView(t))return t.buffer;if(S.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){const c=vt(this,"formSerializer");if(n.indexOf("application/x-www-form-urlencoded")>-1)return Zu(t,c).toString();if((i=S.isFileList(t))||n.indexOf("multipart/form-data")>-1){const d=vt(this,"env"),u=d&&d.FormData;return Pr(i?{"files[]":t}:t,u&&new u,c)}}return o||a?(r.setContentType("application/json",!1),Ru(t)):t}],transformResponse:[function(t){const r=vt(this,"transitional")||Xt.transitional,n=r&&r.forcedJSONParsing,a=vt(this,"responseType"),o=a==="json";if(S.isResponse(t)||S.isReadableStream(t))return t;if(t&&S.isString(t)&&(n&&!a||o)){const i=!(r&&r.silentJSONParsing)&&o;try{return JSON.parse(t,vt(this,"parseReviver"))}catch(c){if(i)throw c.name==="SyntaxError"?K.from(c,K.ERR_BAD_RESPONSE,this,null,vt(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};S.forEach(["delete","get","head","post","put","patch","query"],e=>{Xt.headers[e]={}});function Hn(e,t){const r=this||Xt,n=t||r,a=Se.from(n.headers);let o=n.data;return S.forEach(e,function(i){o=i.call(r,o,a.normalize(),t?t.status:void 0)}),a.normalize(),o}function Zs(e){return!!(e&&e.__CANCEL__)}let Qt=class extends K{constructor(t,r,n){super(t??"canceled",K.ERR_CANCELED,r,n),this.name="CanceledError",this.__CANCEL__=!0}};function Xs(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new K("Request failed with status code "+r.status,r.status>=400&&r.status<500?K.ERR_BAD_REQUEST:K.ERR_BAD_RESPONSE,r.config,r.request,r))}function ef(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function tf(e,t){e=e||10;const r=new Array(e),n=new Array(e);let a=0,o=0,l;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),u=n[o];l||(l=d),r[a]=c,n[a]=d;let f=o,p=0;for(;f!==a;)p+=r[f++],f=f%e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),d-l<t)return;const w=u&&d-u;return w?Math.round(p*1e3/w):void 0}}function rf(e,t){let r=0,n=1e3/t,a,o;const l=(d,u=Date.now())=>{r=u,a=null,o&&(clearTimeout(o),o=null),e(...d)};return[(...d)=>{const u=Date.now(),f=u-r;f>=n?l(d,u):(a=d,o||(o=setTimeout(()=>{o=null,l(a)},n-f)))},()=>a&&l(a)]}const Ur=(e,t,r=3)=>{let n=0;const a=tf(50,250);return rf(o=>{if(!o||typeof o.loaded!="number")return;const l=o.loaded,i=o.lengthComputable?o.total:void 0,c=Math.max(0,i!=null?Math.min(l,i):l),d=Math.max(0,c-n),u=a(d);n=Math.max(n,c);const f={loaded:c,total:i,progress:i?c/i:void 0,bytes:d,rate:u||void 0,estimated:u&&i?(i-c)/u:void 0,event:o,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(f)},r)},Qs=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},Rs=(e,t=S.asap)=>(...r)=>t(()=>e(...r)),nf=ge.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,ge.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(ge.origin),ge.navigator&&/(msie|trident)/i.test(ge.navigator.userAgent)):()=>!0,af=ge.hasStandardBrowserEnv?{write(e,t,r,n,a,o,l){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];S.isNumber(r)&&i.push(`expires=${new Date(r).toUTCString()}`),S.isString(n)&&i.push(`path=${n}`),S.isString(a)&&i.push(`domain=${a}`),o===!0&&i.push("secure"),S.isString(l)&&i.push(`SameSite=${l}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.split(";");for(let r=0;r<t.length;r++){const n=t[r].replace(/^\s+/,""),a=n.indexOf("=");if(a!==-1&&n.slice(0,a)===e)try{return decodeURIComponent(n.slice(a+1))}catch{return n.slice(a+1)}}return null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function sf(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function of(e,t){if(!t)return e;let r=e.length;for(;r>0&&e.charCodeAt(r-1)===47;)r--;return e.slice(0,r)+"/"+t.replace(/^\/+/,"")}const lf=/^https?:(?!\/\/)/i,cf=/[\t\n\r]/g;function df(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function uf(e){return df(e).replace(cf,"")}function ff(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,r,n="")=>`${r}${n}${Mr}`)}function pf(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Mr}@`),r=t.indexOf("#"),a=(r===-1?t:t.slice(0,r)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Mr}`);return r===-1?a:`${a}#${ff(t.slice(r+1))}`}function eo(e,t){if(typeof e=="string"){const r=uf(e);if(lf.test(r))throw new K(`Invalid URL ${JSON.stringify(pf(r))}: missing "//" after protocol`,K.ERR_INVALID_URL,t)}}function to(e,t,r,n){eo(t,n);let a=!sf(t);return e&&(a||r===!1)?(eo(e,n),of(e,t)):t}const ro=e=>e instanceof Se?{...e}:e,hf=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function st(e,t){e=e||{},t=t||{};const r=Object.create(null);Object.defineProperty(r,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function n(u,f,p,w){return S.isPlainObject(u)&&S.isPlainObject(f)?S.merge.call({caseless:w},u,f):S.isPlainObject(f)?S.merge({},f):S.isArray(f)?f.slice():f}function a(u,f,p,w){if(S.isUndefined(f)){if(!S.isUndefined(u))return n(void 0,u,p,w)}else return n(u,f,p,w)}function o(u,f){if(!S.isUndefined(f))return n(void 0,f)}function l(u,f){if(S.isUndefined(f)){if(!S.isUndefined(u))return n(void 0,u)}else return n(void 0,f)}function i(u){const f=S.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!S.isUndefined(f))if(S.isPlainObject(f)){if(S.hasOwnProp(f,u))return f[u]}else return;const p=S.hasOwnProp(e,"transitional")?e.transitional:void 0;if(S.isPlainObject(p)&&S.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(S.hasOwnProp(t,p))return n(u,f);if(S.hasOwnProp(e,p))return n(void 0,u)}const d={url:o,method:o,data:o,baseURL:l,transformRequest:l,transformResponse:l,paramsSerializer:l,timeout:l,timeoutMessage:l,withCredentials:l,withXSRFToken:l,adapter:l,responseType:l,xsrfCookieName:l,xsrfHeaderName:l,onUploadProgress:l,onDownloadProgress:l,decompress:l,maxContentLength:l,maxBodyLength:l,beforeRedirect:l,transport:l,httpAgent:l,httpsAgent:l,cancelToken:l,socketPath:l,allowedSocketPaths:l,responseEncoding:l,validateStatus:c,headers:(u,f,p)=>a(ro(u),ro(f),p,!0)};return S.forEach(hf({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=S.hasOwnProp(d,f)?d[f]:a,w=S.hasOwnProp(e,f)?e[f]:void 0,b=S.hasOwnProp(t,f)?t[f]:void 0,g=p(w,b,f);S.isUndefined(g)&&p!==c||(r[f]=g)}),S.hasOwnProp(t,"validateStatus")&&S.isUndefined(t.validateStatus)&&i("validateStatusUndefinedResolves")===!1&&(S.hasOwnProp(e,"validateStatus")?r.validateStatus=n(void 0,e.validateStatus):delete r.validateStatus),r}const mf=["content-type","content-length"];function gf(e,t,r){if(r!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([n,a])=>{mf.includes(n.toLowerCase())&&e.set(n,a)})}const yf=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,r)=>String.fromCharCode(parseInt(r,16)));function no(e){const t=st({},e),r=p=>S.hasOwnProp(t,p)?t[p]:void 0,n=r("data");let a=r("withXSRFToken");const o=r("xsrfHeaderName"),l=r("xsrfCookieName");let i=r("headers");const c=r("auth"),d=r("baseURL"),u=r("allowAbsoluteUrls"),f=r("url");if(t.headers=i=Se.from(i),t.url=Hs(to(d,f,u,t),r("params"),r("paramsSerializer")),c){const p=S.getSafeProp(c,"username")||"",w=S.getSafeProp(c,"password")||"";try{i.set("Authorization","Basic "+btoa(p+":"+(w?yf(w):"")))}catch(b){throw K.from(b,K.ERR_BAD_OPTION_VALUE,e)}}if(S.isFormData(n)&&(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv||S.isReactNative(n)?i.setContentType(void 0):S.isFunction(n.getHeaders)&&gf(i,n.getHeaders(),r("formDataHeaderPolicy"))),ge.hasStandardBrowserEnv&&(S.isFunction(a)&&(a=a(t)),a===!0||a==null&&nf(t.url))){const w=o&&l&&af.read(l);w&&i.set(o,w)}return t}const bf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(r,n){const a=no(e);let o=a.data;const l=Se.from(a.headers).normalize();let{responseType:i,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,w,b;function g(){w&&w(),b&&b(),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 h(){if(!m)return;const L=Se.from("getAllResponseHeaders"in m&&m.getAllResponseHeaders()),M={data:!i||i==="text"||i==="json"?m.responseText:m.response,status:m.status,statusText:m.statusText,headers:L,config:e,request:m};Xs(function(q){r(q),g()},function(q){n(q),g()},M),m=null}"onloadend"in m?m.onloadend=h:m.onreadystatechange=function(){!m||m.readyState!==4||m.status===0&&!(m.responseURL&&m.responseURL.startsWith("file:"))||setTimeout(h)},m.onabort=function(){m&&(n(new K("Request aborted",K.ECONNABORTED,e,m)),g(),m=null)},m.onerror=function(_){const M=_&&_.message?_.message:"Network Error",T=new K(M,K.ERR_NETWORK,e,m);T.event=_||null,n(T),g(),m=null},m.ontimeout=function(){let _=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const M=a.transitional||Vn;a.timeoutErrorMessage&&(_=a.timeoutErrorMessage),n(new K(_,M.clarifyTimeoutError?K.ETIMEDOUT:K.ECONNABORTED,e,m)),g(),m=null},o===void 0&&l.setContentType(null),"setRequestHeader"in m&&S.forEach($s(l),function(_,M){m.setRequestHeader(M,_)}),S.isUndefined(a.withCredentials)||(m.withCredentials=!!a.withCredentials),i&&i!=="json"&&(m.responseType=a.responseType),d&&([p,b]=Ur(d,!0),m.addEventListener("progress",p)),c&&m.upload&&([f,w]=Ur(c),m.upload.addEventListener("progress",f),m.upload.addEventListener("loadend",w)),(a.cancelToken||a.signal)&&(u=L=>{m&&(n(!L||L.type?new Qt(null,e,m):L),m.abort(),g(),m=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const v=ef(a.url);if(v&&!ge.protocols.includes(v)){n(new K("Unsupported protocol "+v+":",K.ERR_BAD_REQUEST,e)),g();return}m.send(o||null)})},Sf=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;const r=new AbortController;let n=!1;const a=function(c){if(!n){n=!0,l();const d=c instanceof Error?c:this.reason;r.abort(d instanceof K?d:new Qt(d instanceof Error?d.message:d))}};let o=t&&setTimeout(()=>{o=null,a(new K(`timeout of ${t}ms exceeded`,K.ETIMEDOUT))},t);const l=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(a):c.removeEventListener("abort",a)}),e=null)};e.forEach(c=>{if(!n){if(c.aborted){a.call(c);return}c.addEventListener("abort",a,{once:!0})}});const{signal:i}=r;return i.unsubscribe=()=>S.asap(l),i},vf=function*(e,t){let r=e.byteLength;if(r<t){yield e;return}let n=0,a;for(;n<r;)a=n+t,yield e.slice(n,a),n=a},wf=async function*(e,t){for await(const r of Cf(e))yield*vf(r,t)},Cf=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:r,value:n}=await t.read();if(r)break;yield n}}finally{await t.cancel()}},ao=(e,t,r,n)=>{const a=wf(e,t);let o=0,l,i=c=>{l||(l=!0,n&&n(c))};return new ReadableStream({async pull(c){try{const{done:d,value:u}=await a.next();if(d){i(),c.close();return}let f=u.byteLength;if(r){let p=o+=f;r(p)}c.enqueue(new Uint8Array(u))}catch(d){throw i(d),d}},cancel(c){return i(c),a.return()}},{highWaterMark:2})},so=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,oo=(e,t,r)=>t+2<r&&so(e.charCodeAt(t+1))&&so(e.charCodeAt(t+2)),lo=e=>e<=57?e-48:(e&223)-55,_f=e=>e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===43||e===47||e===45||e===95,Nf=e=>e===9||e===10||e===12||e===13||e===32,Af=e=>{const t=Math.floor(e/4),r=e%4;return t*3+(r===2?1:r===3?2:0)},Ef=e=>{const t=e.length;let r=0;return t>0&&e.charCodeAt(t-1)===61&&(r++,t>1&&e.charCodeAt(t-2)===61&&r++),Math.floor((t-r)*3/4)},Lf=e=>{const t=e.length;let r=0,n=0,a=!1;for(let o=0;o<t;o++){let l=e.charCodeAt(o);if(l===37&&oo(e,o,t)&&(l=lo(e.charCodeAt(o+1))*16+lo(e.charCodeAt(o+2)),o+=2),!Nf(l)){if(l===61){n++;continue}if(!_f(l)||n>0){a=!0;continue}r++}}return a||n>2||n>0&&(r+n)%4!==0||r%4===1?Ef(e):Af(r)},Tf=(e,t)=>{if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;const r=e.indexOf(",");if(r<0)return 0;const n=e.slice(5,r),a=e.slice(r+1);if(/;base64/i.test(n))return t(a);let l=0;for(let i=0,c=a.length;i<c;i++){const d=a.charCodeAt(i);if(d===37&&oo(a,i,c))l+=1,i+=2;else if(d<128)l+=1;else if(d<2048)l+=2;else if(d>=55296&&d<=56319&&i+1<c){const u=a.charCodeAt(i+1);u>=56320&&u<=57343?(l+=4,i++):l+=3}else l+=3}return l};function If(e){const t=typeof e=="string"?e.indexOf("#"):-1;return Tf(t===-1?e:e.slice(0,t),Lf)}const Kn="1.19.0",io=64*1024,{isFunction:$r}=S,Ff=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,r)=>String.fromCharCode(parseInt(r,16))),co=e=>{if(!S.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},uo=(e,...t)=>{try{return!!e(...t)}catch{return!1}},kf=e=>{const t=e.indexOf("://");let r=e;return t!==-1&&(r=r.slice(t+3)),r.includes("@")||r.includes(":")},Of=e=>{const t=S.global!==void 0&&S.global!==null?S.global:globalThis,{ReadableStream:r,TextEncoder:n}=t;e=S.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:o,Response:l}=e,i=a?$r(a):typeof fetch=="function",c=$r(o),d=$r(l);if(!i)return!1;const u=i&&$r(r),f=i&&(typeof n=="function"?(h=>v=>h.encode(v))(new n):async h=>new Uint8Array(await new o(h).arrayBuffer())),p=c&&u&&uo(()=>{let h=!1;const v=new o(ge.origin,{body:new r,method:"POST",get duplex(){return h=!0,"half"}}),L=v.headers.has("Content-Type");return v.body!=null&&v.body.cancel(),h&&!L}),w=d&&u&&uo(()=>S.isReadableStream(new l("").body)),b={stream:w&&(h=>h.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(h=>{!b[h]&&(b[h]=(v,L)=>{let _=v&&v[h];if(_)return _.call(v);throw new K(`Response type '${h}' is not supported`,K.ERR_NOT_SUPPORT,L)})});const g=async h=>{if(h==null)return 0;if(S.isBlob(h))return h.size;if(S.isSpecCompliantForm(h))return(await new o(ge.origin,{method:"POST",body:h}).arrayBuffer()).byteLength;if(S.isArrayBufferView(h)||S.isArrayBuffer(h))return h.byteLength;if(S.isURLSearchParams(h)&&(h=h+""),S.isString(h))return(await f(h)).byteLength},m=async(h,v)=>{const L=S.toFiniteNumber(h.getContentLength());return L??g(v)};return async h=>{let{url:v,method:L,data:_,signal:M,cancelToken:T,timeout:q,onDownloadProgress:R,onUploadProgress:J,responseType:V,headers:G,withCredentials:$="same-origin",fetchOptions:Y,maxContentLength:I,maxBodyLength:D}=no(h);const j=S.isNumber(I)&&I>-1,H=S.isNumber(D)&&D>-1,E=k=>S.hasOwnProp(h,k)?h[k]:void 0;let x=a||fetch;V=V?(V+"").toLowerCase():"text";let C=Sf([M,T&&T.toAbortSignal()],q),F=null;const O=C&&C.unsubscribe&&(()=>{C.unsubscribe()});let W,Z=null;const te=()=>new K("Request body larger than maxBodyLength limit",K.ERR_BAD_REQUEST,h,F);try{let k;const A=E("auth");if(A){const re=S.getSafeProp(A,"username")||"",me=S.getSafeProp(A,"password")||"";k={username:re,password:me}}if(kf(v)){const re=new URL(v,ge.origin);if(!k&&(re.username||re.password)){const me=co(re.username),ke=co(re.password);k={username:me,password:ke}}(re.username||re.password)&&(re.username="",re.password="",v=re.href)}if(k&&(G.delete("authorization"),G.set("Authorization","Basic "+btoa(Ff((k.username||"")+":"+(k.password||""))))),j&&typeof v=="string"&&v.startsWith("data:")&&If(v)>I)throw new K("maxContentLength size of "+I+" exceeded",K.ERR_BAD_RESPONSE,h,F);if(H&&L!=="get"&&L!=="head"){const re=await g(_);if(typeof re=="number"&&isFinite(re)&&(W=re,re>D))throw te()}const N=H&&(S.isReadableStream(_)||S.isStream(_)),z=(re,me,ke)=>ao(re,io,Ae=>{if(H&&Ae>D)throw Z=te();me&&me(Ae)},ke);if(p&&L!=="get"&&L!=="head"&&(J||N)){if(W=W??await m(G,_),W!==0||N){let re=new o(v,{method:"POST",body:_,duplex:"half"}),me;if(S.isFormData(_)&&(me=re.headers.get("content-type"))&&G.setContentType(me),re.body){const[ke,Ae]=J&&Qs(W,Ur(Rs(J)))||[];_=z(re.body,ke,Ae)}}}else if(N&&!c&&u&&L!=="get"&&L!=="head")_=z(_);else if(N&&c&&!p&&L!=="get"&&L!=="head")throw new K("Stream request bodies are not supported by the current fetch implementation",K.ERR_NOT_SUPPORT,h,F);S.isString($)||($=$?"include":"omit");const X=c&&"credentials"in o.prototype;if(S.isFormData(_)){const re=G.getContentType();re&&/^multipart\/form-data/i.test(re)&&!/boundary=/i.test(re)&&G.delete("content-type")}G.set("User-Agent","axios/"+Kn,!1);const ae={...Y,signal:C,method:L.toUpperCase(),headers:$s(G.normalize()),body:_,duplex:"half",credentials:X?$:void 0};F=c&&new o(v,ae);let ue=await(c?x(F,Y):x(v,ae));const fe=Se.from(ue.headers);if(j){const re=S.toFiniteNumber(fe.getContentLength());if(re!=null&&re>I)throw new K("maxContentLength size of "+I+" exceeded",K.ERR_BAD_RESPONSE,h,F)}const pe=w&&(V==="stream"||V==="response");if(w&&ue.body&&(R||j||pe&&O)){const re={};["status","statusText","headers"].forEach(je=>{re[je]=ue[je]});const me=S.toFiniteNumber(fe.getContentLength()),[ke,Ae]=R&&Qs(me,Ur(Rs(R),!0))||[];let ut=0;const Ye=je=>{if(j&&(ut=je,ut>I))throw new K("maxContentLength size of "+I+" exceeded",K.ERR_BAD_RESPONSE,h,F);ke&&ke(je)};ue=new l(ao(ue.body,io,Ye,()=>{Ae&&Ae(),O&&O()}),re)}V=V||"text";let he=await b[S.findKey(b,V)||"text"](ue,h);if(j&&!w&&!pe){let re;if(he!=null&&(typeof he.byteLength=="number"?re=he.byteLength:typeof he.size=="number"?re=he.size:typeof he=="string"&&(re=typeof n=="function"?new n().encode(he).byteLength:he.length)),typeof re=="number"&&re>I)throw new K("maxContentLength size of "+I+" exceeded",K.ERR_BAD_RESPONSE,h,F)}return!pe&&O&&O(),await new Promise((re,me)=>{Xs(re,me,{data:he,headers:Se.from(ue.headers),status:ue.status,statusText:ue.statusText,config:h,request:F})})}catch(k){if(O&&O(),C&&C.aborted&&C.reason instanceof K){const A=C.reason;throw A.config=h,F&&(A.request=F),k!==A&&Object.defineProperty(A,"cause",{__proto__:null,value:k,writable:!0,enumerable:!1,configurable:!0}),A}if(Z)throw F&&!Z.request&&(Z.request=F),Z;if(k instanceof K)throw F&&!k.request&&(k.request=F),k;if(k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)){const A=new K("Network Error",K.ERR_NETWORK,h,F,k&&k.response);throw Object.defineProperty(A,"cause",{__proto__:null,value:k.cause||k,writable:!0,enumerable:!1,configurable:!0}),A}throw K.from(k,k&&k.code,h,F,k&&k.response)}}},Df=new Map,fo=e=>{let t=e&&e.env||{};const{fetch:r,Request:n,Response:a}=t,o=[n,a,r];let l=o.length,i=l,c,d,u=Df;for(;i--;)c=o[i],d=u.get(c),d===void 0&&u.set(c,d=i?new Map:Of(t)),u=d;return d};fo();const Yn={http:Vu,xhr:bf,fetch:{get:fo}};S.forEach(Yn,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const po=e=>`- ${e}`,xf=e=>S.isFunction(e)||e===null||e===!1;function Mf(e,t){e=S.isArray(e)?e:[e];const{length:r}=e;let n,a;const o={};for(let l=0;l<r;l++){n=e[l];let i;if(a=n,!xf(n)&&(a=Yn[(i=String(n)).toLowerCase()],a===void 0))throw new K(`Unknown adapter '${i}'`);if(a&&(S.isFunction(a)||(a=a.get(t))))break;o[i||"#"+l]=a}if(!a){const l=Object.entries(o).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let i=r?l.length>1?`since :
|
|
6
|
+
`+l.map(po).join(`
|
|
7
|
+
`):" "+po(l[0]):"as no adapter specified";throw new K("There is no suitable adapter to dispatch the request "+i,K.ERR_NOT_SUPPORT)}return a}const ho={getAdapter:Mf,adapters:Yn};function Gn(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Qt(null,e)}function Jn(e){return Gn(e),e.headers=Se.from(e.headers),e.data=Hn.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ho.getAdapter(e.adapter||Xt.adapter,e)(e).then(function(n){Gn(e),e.response=n;try{n.data=Hn.call(e,e.transformResponse,n)}finally{delete e.response}return n.headers=Se.from(n.headers),n},function(n){if(!Zs(n)&&(Gn(e),n&&n.response)){e.response=n.response;try{n.response.data=Hn.call(e,e.transformResponse,n.response)}finally{delete e.response}n.response.headers=Se.from(n.response.headers)}return Promise.reject(n)})}const Br={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Br[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}});const mo={};Br.transitional=function(t,r,n){function a(o,l){return"[Axios v"+Kn+"] Transitional option '"+o+"'"+l+(n?". "+n:"")}return(o,l,i)=>{if(t===!1)throw new K(a(l," has been removed"+(r?" in "+r:"")),K.ERR_DEPRECATED);return r&&!mo[l]&&(mo[l]=!0,console.warn(a(l," has been deprecated since v"+r+" and will be removed in the near future"))),t?t(o,l,i):!0}},Br.spelling=function(t){return(r,n)=>(console.warn(`${n} is likely a misspelling of ${t}`),!0)};function Pf(e,t,r){if(typeof e!="object"||e===null)throw new K("options must be an object",K.ERR_BAD_OPTION_VALUE);const n=Object.keys(e);let a=n.length;for(;a-- >0;){const o=n[a],l=Object.prototype.hasOwnProperty.call(t,o)?t[o]:void 0;if(l){const i=e[o],c=i===void 0||l(i,o,e);if(c!==!0)throw new K("option "+o+" must be "+c,K.ERR_BAD_OPTION_VALUE);continue}if(r!==!0)throw new K("Unknown option "+o,K.ERR_BAD_OPTION)}}const jr={assertOptions:Pf,validators:Br},ve=jr.validators;let ot=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ks,response:new Ks}}async request(t,r){try{return await this._request(t,r)}catch(n){if(n instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const o=(()=>{if(!a.stack)return"";const l=a.stack.indexOf(`
|
|
8
|
+
`);return l===-1?"":a.stack.slice(l+1)})();try{if(!n.stack)n.stack=o;else if(o){const l=o.indexOf(`
|
|
9
|
+
`),i=l===-1?-1:o.indexOf(`
|
|
10
|
+
`,l+1),c=i===-1?"":o.slice(i+1);String(n.stack).endsWith(c)||(n.stack+=`
|
|
11
|
+
`+o)}}catch{}}throw n}}_request(t,r){typeof t=="string"?(r=r||{},r.url=t):r=t||{},r=st(this.defaults,r);const{transitional:n,paramsSerializer:a,headers:o}=r;n!==void 0&&jr.assertOptions(n,{silentJSONParsing:ve.transitional(ve.boolean),forcedJSONParsing:ve.transitional(ve.boolean),clarifyTimeoutError:ve.transitional(ve.boolean),legacyInterceptorReqResOrdering:ve.transitional(ve.boolean),advertiseZstdAcceptEncoding:ve.transitional(ve.boolean),validateStatusUndefinedResolves:ve.transitional(ve.boolean)},!1),a!=null&&(S.isFunction(a)?r.paramsSerializer={serialize:a}:jr.assertOptions(a,{encode:ve.function,serialize:ve.function},!0)),r.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?r.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:r.allowAbsoluteUrls=!0),jr.assertOptions(r,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),r.method=(r.method||this.defaults.method||"get").toLowerCase();let l=o&&S.merge(o.common,o[r.method]);o&&S.forEach(["delete","get","head","post","put","patch","query","common"],b=>{delete o[b]}),r.headers=Se.concat(l,o);const i=[];let c=!0;this.interceptors.request.forEach(function(g){if(typeof g.runWhen=="function"&&g.runWhen(r)===!1)return;c=c&&g.synchronous;const m=r.transitional||Vn;m&&m.legacyInterceptorReqResOrdering?i.unshift(g.fulfilled,g.rejected):i.push(g.fulfilled,g.rejected)});const d=[];this.interceptors.response.forEach(function(g){d.push(g.fulfilled,g.rejected)});let u,f=0,p;if(!c){const b=[Jn.bind(this),void 0];for(b.unshift(...i),b.push(...d),p=b.length,u=Promise.resolve(r);f<p;)u=u.then(b[f++],b[f++]);return u}p=i.length;let w=r;for(;f<p;){const b=i[f++],g=i[f++];try{w=b?b(w):w}catch(m){if(!g){u=Promise.reject(m);break}try{const h=g.call(this,m);S.isThenable(h)&&(u=Promise.resolve(h).then(()=>Jn.call(this,w)))}catch(h){u=Promise.reject(h)}break}}if(!u)try{u=Jn.call(this,w)}catch(b){u=Promise.reject(b)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=st(this.defaults,t);const r=to(t.baseURL,t.url,t.allowAbsoluteUrls,t);return Hs(r,t.params,t.paramsSerializer)}};S.forEach(["delete","get","head","options"],function(t){ot.prototype[t]=function(r,n){return this.request(st(n||{},{method:t,url:r,data:n&&S.hasOwnProp(n,"data")?n.data:void 0}))}}),S.forEach(["post","put","patch","query"],function(t){function r(n){return function(o,l,i){return this.request(st(i||{},{method:t,headers:n?{"Content-Type":"multipart/form-data"}:{},url:o,data:l}))}}ot.prototype[t]=r(),t!=="query"&&(ot.prototype[t+"Form"]=r(!0))});let Uf=class pc{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let r;this.promise=new Promise(function(o){r=o});const n=this;this.promise.then(a=>{if(!n._listeners)return;let o=n._listeners.length;for(;o-- >0;)n._listeners[o](a);n._listeners=null}),this.promise.then=a=>{let o;const l=new Promise(i=>{n.subscribe(i),o=i}).then(a);return l.cancel=function(){n.unsubscribe(o)},l},t(function(o,l,i){n.reason||(n.reason=new Qt(o,l,i),r(n.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 r=this._listeners.indexOf(t);r!==-1&&this._listeners.splice(r,1)}toAbortSignal(){const t=new AbortController,r=n=>{t.abort(n)};return this.subscribe(r),t.signal.unsubscribe=()=>this.unsubscribe(r),t.signal}static source(){let t;return{token:new pc(function(a){t=a}),cancel:t}}};function $f(e){return function(r){return e.apply(null,r)}}function Bf(e){return S.isObject(e)&&e.isAxiosError===!0}const Zn={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(Zn).forEach(([e,t])=>{Zn[t]=e});function go(e){const t=new ot(e),r=Ls(ot.prototype.request,t);return S.extend(r,ot.prototype,t,{allOwnKeys:!0}),S.extend(r,t,null,{allOwnKeys:!0}),r.create=function(a){return go(st(e,a))},r}const de=go(Xt);de.Axios=ot,de.CanceledError=Qt,de.CancelToken=Uf,de.isCancel=Zs,de.VERSION=Kn,de.toFormData=Pr,de.AxiosError=K,de.Cancel=de.CanceledError,de.all=function(t){return Promise.all(t)},de.spread=$f,de.isAxiosError=Bf,de.mergeConfig=st,de.AxiosHeaders=Se,de.formToJSON=e=>Js(S.isHTMLForm(e)?new FormData(e):e),de.getAdapter=ho.getAdapter,de.HttpStatusCode=Zn,de.default=de;const{Axios:J0,AxiosError:Z0,CanceledError:X0,isCancel:Q0,CancelToken:R0,VERSION:ey,all:ty,Cancel:ry,isAxiosError:ny,spread:ay,toFormData:sy,AxiosHeaders:oy,HttpStatusCode:ly,formToJSON:iy,getAdapter:cy,mergeConfig:dy,create:uy}=de;function qr(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)n!=="__proto__"&&(e[n]=r[n])}return e}var jf={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Xn(e,t){function r(a,o,l){if(!(typeof document>"u")){l=qr({},t,l),typeof l.expires=="number"&&(l.expires=new Date(Date.now()+l.expires*864e5)),l.expires&&(l.expires=l.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var i="";for(var c in l)l[c]&&(i+="; "+c,l[c]!==!0&&(i+="="+l[c].split(";")[0]));return document.cookie=a+"="+e.write(o,a)+i}}function n(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var o=document.cookie?document.cookie.split("; "):[],l={},i=0;i<o.length;i++){var c=o[i].split("="),d=c.slice(1).join("=");try{var u=decodeURIComponent(c[0]);if(u in l||(l[u]=e.read(d,u)),a===u)break}catch{}}return a?l[a]:l}}return Object.create({set:r,get:n,remove:function(a,o){r(a,"",qr({},o,{expires:-1}))},withAttributes:function(a){return Xn(this.converter,qr({},this.attributes,a))},withConverter:function(a){return Xn(qr({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Rt=Xn(jf,{path:"/"});const qf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let wt="https://api-grievance.airaops.com",yo=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Cn&&Cn.tagName.toUpperCase()==="SCRIPT"&&Cn.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&qf?.VITE_API_URL)wt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(wt=e.env.VITE_API_URL)}}catch{}const bo=e=>{wt=e||"",le.defaults.baseURL=wt},Qn=e=>{yo=e||null},Vf=()=>yo||Rt.get("token")||null,le=de.create({baseURL:wt,headers:{Accept:"application/json","Content-Type":"application/json"}});le.interceptors.request.use(e=>{const t=Vf();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Rn=!1,ea=null;le.interceptors.response.use(e=>e,async e=>{const t=e.config,r=e.response;if(r&&(r.status===401||r.status===402)){const n=Rt.get("refreshToken");if(n)try{Rn||(Rn=!0,ea=de.post(`${wt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${n}`}}));const a=await ea,{token:o,refreshToken:l}=a.data;return Qn(o),l&&Rt.set("refreshToken",l),t.headers.Authorization=`Bearer ${o}`,le(t)}catch{Rt.remove("token"),Rt.remove("refreshToken")}finally{Rn=!1,ea=null}}return Promise.reject(e)});const Wf=y.createContext(null),So=({children:e,apiUrl:t,authToken:r})=>(t&&bo(t),Qn(r||null),s.jsx(Wf.Provider,{value:{apiUrl:t,authToken:r},children:e})),Ve={mode:"light",colors:{primary:"#2D64B8",primaryHover:"#2557A3",text:"#111827",textSecondary:"#6B7280",textMuted:"#9CA3AF",border:"#E5E7EB",borderLight:"#F3F4F6",background:"#FFFFFF",surface:"#FFFFFF",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#ECFDF5",activeBorder:"#A7F3D0",activeText:"#059669",inactiveBg:"#F3F4F6",inactiveBorder:"#D1D5DB",inactiveText:"#6B7280",link:"#2D64B8",divider:"#E5E7EB",accentBorder:"#C5D7F0",accentBg:"#EEF4FB",stepDone:"#D6E4F7",success:"#22C55E",danger:"#EF4444",secondaryBtn:"#D1D5DB",secondaryBtnHover:"#C4C9D1",inputBg:"#FFFFFF",tableHeadBg:"#EEF4FB",sidebarBg:"#FAFBFD",overlay:"rgba(16, 24, 40, 0.06)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(16, 24, 40, 0.04)",settings:"0 1px 3px rgba(16, 24, 40, 0.06)"}},er={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)"}},vo={light:Ve,dark:er};function Ct(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function _t(e,t){if(!Ct(t))return e;const r={...e};return Object.keys(t).forEach(n=>{const a=t[n];Ct(a)&&Ct(e[n])?r[n]=_t(e[n],a):a!==void 0&&(r[n]=a)}),r}function wo(e){return!e||!Ct(e)?{light:Ve,dark:er}:Ct(e.light)||Ct(e.dark)?{light:_t(Ve,e.light||{}),dark:_t(er,e.dark||{})}:{light:_t(Ve,e),dark:_t(er,e)}}function Co(e,t=!1){const r=wo(e);return{...t?r.dark:r.light,mode:t?"dark":"light",__pack:r}}const zf={primary:"--ca-primary",primaryHover:"--ca-primary-hover",text:"--ca-text",textSecondary:"--ca-text-secondary",textMuted:"--ca-text-muted",border:"--ca-border",borderLight:"--ca-border-light",background:"--ca-bg",surface:"--ca-surface",white:"--ca-white",onPrimary:"--ca-on-primary",activeBg:"--ca-active-bg",activeBorder:"--ca-active-border",activeText:"--ca-active-text",inactiveBg:"--ca-inactive-bg",inactiveBorder:"--ca-inactive-border",inactiveText:"--ca-inactive-text",link:"--ca-link",divider:"--ca-divider",accentBorder:"--ca-accent-border",accentBg:"--ca-accent-bg",stepDone:"--ca-step-done",success:"--ca-success",danger:"--ca-danger",secondaryBtn:"--ca-secondary-btn",secondaryBtnHover:"--ca-secondary-btn-hover",inputBg:"--ca-input-bg",tableHeadBg:"--ca-table-head-bg",sidebarBg:"--ca-sidebar-bg",overlay:"--ca-overlay"},Hf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},Kf={fontFamily:"--ca-font",h1Size:"--ca-h1-size",h2Size:"--ca-h2-size",bodySize:"--ca-body-size",labelSize:"--ca-label-size",valueSize:"--ca-value-size",smallSize:"--ca-small-size"},Yf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function _o(e){const t={};return e?.colors&&Object.entries(zf).forEach(([r,n])=>{e.colors[r]!=null&&(t[n]=e.colors[r])}),e?.radii&&Object.entries(Hf).forEach(([r,n])=>{e.radii[r]!=null&&(t[n]=e.radii[r])}),e?.typography&&Object.entries(Kf).forEach(([r,n])=>{e.typography[r]!=null&&(t[n]=e.typography[r])}),e?.shadow&&Object.entries(Yf).forEach(([r,n])=>{e.shadow[r]!=null&&(t[n]=e.shadow[r])}),t["--ca-on-primary"]&&!t["--ca-white"]&&(t["--ca-white"]=t["--ca-on-primary"]),t}const No=y.createContext({darkMode:!1,theme:null,themeFile:vo,cssVars:{}});function Ao({theme:e,darkMode:t=!1,children:r}){const n=y.useMemo(()=>{const a=Co(e,!!t),o=_o(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:o,mode:a.mode}},[e,t]);return s.jsx(No.Provider,{value:n,children:r})}function Eo(){return y.useContext(No)}const Vr=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),Gf=e=>{const t=e?.response?.data,r=Array.isArray(t?.errors)?t.errors.map(a=>a?.message).filter(Boolean):[];if(r.length)return r.join(" ");const n=t?.message??t?.error??e?.message;return Array.isArray(n)?n.filter(Boolean).join(", "):n&&typeof n=="object"?n.message??JSON.stringify(n):n||"Something went wrong"},Jf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Gf(e)}),ta=(e,t)=>oe.createAsyncThunk(e,async(r,n)=>{try{return(await t(r,n)).data}catch(a){return Jf(a,n)}}),De=ta("complaint/types/getFormFields",(e,{signal:t})=>le.get(Vr.formFields(e),{signal:t})),tr=ta("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>le.put(Vr.formFields(e),t)),rr=ta("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>le.delete(`${Vr.formFields(e)}/${t}`)),Lo={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},Zf=e=>{if(Array.isArray(e))return{data:e,pagination:null};const t=e?.data??e;return Array.isArray(t)?{data:t,pagination:e?.pagination??null}:{data:t?.results??t?.items??[],pagination:t?.pagination??e?.pagination??null}},ra=e=>e.payload?.message??e.error?.message??"Something went wrong",To=oe.createSlice({name:"complaintAppComplaint",initialState:Lo,reducers:{clearComplaintError(e,t){const r=t.payload;r&&e[r]?.error!==void 0?e[r].error=null:e.error=null},clearSelectedComplaintResource(e,t){const r=t.payload;r&&e[r]?.selected!==void 0&&(e[r].selected=null)},resetComplaintState(){return Lo}},extraReducers:e=>{e.addCase(De.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(De.fulfilled,(t,r)=>{const n=Zf(r.payload);t.formFields.isLoading=!1,t.formFields.data=n.data}).addCase(De.rejected,(t,r)=>{t.formFields.isLoading=!1,t.formFields.error=ra(r)}).addCase(tr.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(tr.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(tr.rejected,(t,r)=>{t.formFields.isMutating=!1,t.formFields.error=ra(r)}).addCase(rr.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(rr.fulfilled,(t,r)=>{const n=r.meta.arg?.fieldId;t.formFields.isMutating=!1,t.formFields.data=t.formFields.data.filter(a=>a.id!==n)}).addCase(rr.rejected,(t,r)=>{t.formFields.isMutating=!1,t.formFields.error=ra(r)})}}),{clearComplaintError:Xf,clearSelectedComplaintResource:Qf,resetComplaintState:Rf}=To.actions,Io=To.reducer,nr="/api/v1/complaint-types",ar=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r?.message==="Complaint type code already exists"?"A category with this name already exists. Please use a different name.":null)??(n.includes("code must be shorter than or equal to 50 characters")?"Category name cannot exceed 50 characters. Please enter a shorter name.":null)??(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Something went wrong"})},sr=oe.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await le.get(nr,{params:e??{}})).data}catch(r){return ar(r,t)}}),Xe=oe.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const r=e;return(await le.get(`${nr}/${r}`)).data}catch(r){return ar(r,t)}}),or=oe.createAsyncThunk("complaintType/create",async({payload:e,onSuccess:t,onFail:r},n)=>{try{const a={code:e.categoryName,name:e.categoryName,description:e.description,tatMinutes:e.tatMinutes,accessType:e.visibilityType,roleIds:e.roles.map(l=>parseInt(l,10)),userIds:(e.userIds??[]).map(l=>parseInt(l,10))},o=await le.post(nr,a);return t&&typeof t=="function"&&t(o.data),o.data}catch(a){return console.log("createComplaintType error:",a),r&&typeof r=="function"&&r(a),ar(a,n)}}),lr=oe.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:r,onFail:n},a)=>{try{const o=await le.patch(`${nr}/${e}`,t);return r&&typeof r=="function"&&r(o.data),o.data}catch(o){return console.log("updateComplaintType error:",o),n&&typeof n=="function"&&n(o),ar(o,a)}}),Wr=oe.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const r=await le.delete(`${nr}/${e}`);return{id:e,data:r.data}}catch(r){return ar(r,t)}}),na=["userId","id","_id","userID","user_id","value"];function zr(e,t=na){if(typeof e=="string"||typeof e=="number")return String(e).trim()||null;if(!e||typeof e!="object")return null;for(const r of t){const n=e[r];if(n!=null&&n!==e){const a=zr(n,na);if(a!==null)return a}}return zr(e.user,na)}function aa(e){const t=zr(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ep(e,t){const r=aa(e),n=zr(t);return n!==null&&r?.includes(n)===!0}const tp={complaintList:[],selected:null,loading:!1,saving:!1,error:null},rp=["data","items","results","content","records","list","payload","response","result"],Fo=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of rp)if(e[t]!==void 0){const r=Fo(e[t]);if(r.length||Array.isArray(e[t]))return r}return[]},Ne=e=>e?.id??e?._id,sa=(e,t)=>{if(!t)return e;const r=aa(e),n=aa(t);return r?.length||!n?.length?e:{...e,userIds:n}},ko=oe.createSlice({name:"complaintType",initialState:tp,reducers:{setComplaintTypeActive(e,t){const{id:r,isActive:n}=t.payload??{};r!=null&&(e.complaintList=e.complaintList.map(a=>String(Ne(a))===String(r)?{...a,isActive:n}:a),String(Ne(e.selected))===String(r)&&(e.selected={...e.selected,isActive:n}))}},extraReducers:e=>{e.addCase(sr.pending,t=>{t.loading=!0,t.error=null}).addCase(sr.fulfilled,(t,r)=>{t.loading=!1;const n=new Map(t.complaintList.map(a=>[String(Ne(a)),a]));t.complaintList=Fo(r.payload).map(a=>sa(a,n.get(String(Ne(a)))))}).addCase(sr.rejected,(t,r)=>{t.loading=!1,t.error=r.payload?.message??r.error?.message??"Failed to fetch complaint types"}).addCase(Xe.pending,t=>{t.loading=!0,t.error=null}).addCase(Xe.fulfilled,(t,r)=>{t.loading=!1;const n=r.payload?.data??r.payload,a=t.complaintList.find(o=>String(Ne(o))===String(Ne(n)));t.selected=sa(n,a)}).addCase(Xe.rejected,(t,r)=>{t.loading=!1,t.error=r.payload?.message??r.error?.message??"Failed to fetch complaint type"}).addCase(or.pending,t=>{t.saving=!0,t.error=null}).addCase(or.fulfilled,(t,r)=>{t.saving=!1;const n=r.payload?.data??r.payload,a=r.meta?.arg?.payload?.userIds,o=Array.isArray(a)?{...n,userIds:a}:n;t.complaintList=[o,...t.complaintList.filter(l=>String(Ne(l))!==String(Ne(o)))],t.selected=o}).addCase(or.rejected,(t,r)=>{t.saving=!1,t.error=r.payload?.message??r.error?.message??"Failed to create complaint type"}).addCase(lr.pending,t=>{t.saving=!0,t.error=null}).addCase(lr.fulfilled,(t,r)=>{t.saving=!1;const n=r.payload?.data??r.payload,a=Ne(n)??r.meta?.arg?.id,o=t.complaintList.find(c=>String(Ne(c))===String(a)),l=r.meta?.arg?.data?.userIds,i=Array.isArray(l)?{...n,userIds:l}:sa(n,o);t.complaintList=t.complaintList.map(c=>String(Ne(c))===String(a)?i:c),t.selected=i}).addCase(lr.rejected,(t,r)=>{t.saving=!1,t.error=r.payload?.message??r.error?.message??"Failed to update complaint type"}).addCase(Wr.pending,t=>{t.saving=!0,t.error=null}).addCase(Wr.fulfilled,(t,r)=>{t.saving=!1;const n=r.payload?.id??r.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ne(a))!==String(n)),String(Ne(t.selected))===String(n)&&(t.selected=null)}).addCase(Wr.rejected,(t,r)=>{t.saving=!1,t.error=r.payload?.message??r.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:np}=ko.actions,ap=ko.reducer,sp={details:{},id:null,isEdit:!1},Oo=oe.createSlice({name:"appDetails",initialState:sp,reducers:{setAppDetails(e,t){e.details=t.payload??{}},clearAppDetails(e){e.details={}},setId(e,t){e.id=t.payload},setIsEdit(e,t){e.isEdit=t.payload.data},clearId(e){e.id=null}}}),{setAppDetails:Do,clearAppDetails:op,setId:lt,setIsEdit:Nt,clearId:lp}=Oo.actions,xo=Oo.reducer,ip={list:[],pagination:null,isLoading:!1,error:null},Mo=oe.createSlice({name:"roles",initialState:ip,reducers:{}});Mo.reducer;const Hr=60,oa=24*Hr,cp={d:oa,h:Hr,m:1};function la(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Po(e=[],t=!0){const r=Array.isArray(e)?e:[];return(t?r:r.slice(0,-1)).reduce((a,o)=>a+Ie(o?.escalateAfterMinutes),0)}function Ie(e){if(e==null||e==="")return 0;if(typeof e=="number")return la(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return la(t);const r=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let n=0,a=!1,o;for(;(o=r.exec(t))!==null;)a=!0,n+=(cp[o[2]]||0)*Number(o[1]);return a?la(n):0}function At(e){const t=Math.round(typeof e=="number"?e:Ie(e));if(!Number.isFinite(t)||t<=0)return"";const r=Math.floor(t/oa),n=Math.floor(t%oa/Hr),a=t%Hr,o=[];return r&&o.push(`${r}d`),n&&o.push(`${n}h`),a&&o.push(`${a}m`),o.join("")}function dp(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Ie(e)>0}function up(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,r)=>At(Number(r))||"0m")}function fp(e=[]){return Po(e,!0)}function Et(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const r=Math.max(0,Ie(t)-Po(e,!1)),n=At(r),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===n?e:e.map((o,l)=>l===a?{...o,escalateAfterMinutes:n}:o)}function pp(e=[]){if(!Array.isArray(e)||e.length===0)return e;const t=e.length-1;return e.map((r,n)=>n===t?{...r,escalateAfterMinutes:""}:r)}const Uo=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function hp(e){const t=e?.response?.data??e?.payload??e,r=Array.isArray(t?.errors)?t.errors.map(n=>n?.message).filter(Boolean):[];return r.length?r.join(" "):t?.message??t?.error??e?.message??"Something went wrong"}function ia(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const $o=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:hp(e)}),We=oe.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await le.get(Uo(e))).data}catch(r){return $o(r,t)}}),Kr=oe.createAsyncThunk("workflow/updateSteps",async({id:e,tables:t,onSuccess:r,onFail:n},a)=>{try{if(!Array.isArray(t.tables))throw new Error("tables must be an array");const o=t.tables.map((i,c)=>{const d=Array.isArray(i.role)?i.role.map(b=>Number(b)):[],u=Array.isArray(i.users)?i.users.map(b=>Number(b)):[],f=d.length>0,p=u.length>0,w=!f&&(p||i.workflowType==="user");return{levelNo:c+1,workflowType:w?"Users Based":"Role Based",...f||!w?{roleIds:d}:{},...p||w?{userAssignments:u.map(b=>({userId:b}))}:{},escalateAfterMinutes:Ie(i.escalateAfterMinutes),canResolve:ia(i.canResolve),canReassign:ia(i.canReassign),isFinalLevel:ia(i.finalLevel),isActive:!0}}),l=await le.put(Uo(e),{steps:o});return typeof r=="function"&&r(l.data),l.data}catch(o){return typeof n=="function"&&n(o),$o(o,a)}}),mp={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},gp=oe.createSlice({name:"workflow",initialState:mp,reducers:{},extraReducers:e=>{e.addCase(We.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(We.fulfilled,(t,r)=>{t.workflowStepsLoading=!1,t.workflowSteps=r.payload?.data??r.payload}).addCase(We.rejected,(t,r)=>{r.meta.aborted||(t.workflowStepsLoading=!1,t.error=r.payload?.message??r.error?.message??"Failed to fetch workflow steps")}).addCase(Kr.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Kr.fulfilled,(t,r)=>{t.workflowStepsSaving=!1,t.workflowSteps=r.payload?.data??r.payload}).addCase(Kr.rejected,(t,r)=>{t.workflowStepsSaving=!1,t.error=r.payload?.message??r.error?.message??"Failed to update workflow steps"})}}).reducer,ca="/api/v1/complaints",yp=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Something went wrong"})},Yr=oe.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:r,page:n=1,limit:a=10,status:o,sort:l="-createdAt",fromDate:i,toDate:c,assignedToUserId:d,unassigned:u,showAllComplaints:f,escalationTo:p}=e||{},w={page:n,limit:a,complaintTypeId:r,sort:l};return o!=null&&o!==""&&o!=="all"&&(w.status=o),i&&c&&(w.fromDate=i,w.toDate=c),d!=null&&d!==""&&(w.assignedToUserId=d),u!=null&&u!==""&&(w.unassigned=u),f!=null&&f!==""&&(w.showAllComplaints=f),p!=null&&p!==""&&p!=="all"&&(w.escalationTo=p),(await le.get(ca,{params:w,signal:t.signal})).data}catch(r){return yp(r,t)}}),bp=e=>`/api/v1/complaints/${e}`,Sp=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Something went wrong"})};function da(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const Lt=oe.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:r,assignedToUserId:n,remark:a,onSuccess:o,onFail:l},i)=>{try{const c={},d=da(t),u=da(r),f=da(n);d!=null&&(c.statusId=d),u!=null&&(c.currentStepId=u),f!=null&&(c.assignedToUserId=f),a!=null&&String(a).trim()!==""&&(c.remarks=String(a).trim());const p=await le.patch(bp(e),c,{signal:i.signal});return o&&typeof o=="function"&&o(p.data),p.data}catch(c){return l&&typeof l=="function"&&l(c),Sp(c,i)}}),Bo={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},vp=e=>{const t=e?.data??e;if(Array.isArray(t))return{list:t,meta:e?.meta??e?.pagination??null};const r=t?.data??t?.results??t?.items??[];return{list:Array.isArray(r)?r:[],meta:t?.meta??t?.pagination??e?.meta??e?.pagination??null}},wp=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",jo=e=>e?.complaintId??e?.id,Cp=(e,t)=>{const r=t.meta?.arg??{},n=t.payload?.data??t.payload,a=r.id??jo(n);return a==null?e:e.map(o=>{if(String(jo(o))!==String(a))return o;const l={...o};return n&&typeof n=="object"&&!Array.isArray(n)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(i=>{n[i]!==void 0&&(l[i]=n[i])}),r.statusId!=null&&(l.statusId=r.statusId),r.status&&(l.status=r.status),r.currentStepId!=null&&(l.currentStepId=r.currentStepId,l.currentWorkflowStepId=r.currentStepId,l.workflowStepId=r.currentStepId),r.level!=null&&(l.level=r.level,l.levelNo=r.level),r.assignedToUserId!=null&&(l.assignedToUserId=r.assignedToUserId),l})},qo=oe.createSlice({name:"complaintManagement",initialState:Bo,reducers:{resetComplaintManagementState:()=>Bo},extraReducers:e=>{e.addCase(Yr.pending,(t,r)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=r.meta.arg?.complaintTypeId??null}).addCase(Yr.fulfilled,(t,r)=>{const n=r.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&n!=null&&String(t.requestedComplaintTypeId)!==String(n))return;const a=vp(r.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(Yr.rejected,(t,r)=>{if(r.meta.aborted)return;const n=r.meta.arg?.complaintTypeId;t.requestedComplaintTypeId!=null&&n!=null&&String(t.requestedComplaintTypeId)!==String(n)||(t.isLoading=!1,t.hasLoaded=!0,t.error=wp(r))}).addCase(Lt.fulfilled,(t,r)=>{t.list=Cp(t.list,r)})}}),{resetComplaintManagementState:Vo}=qo.actions,_p=qo.reducer,Np=e=>`/api/v1/complaint-types/${e}/statuses`,Ap="/api/v1/complaints/summary",Wo=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Something went wrong"})},Tt=oe.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await le.get(Np(e),{signal:t.signal})).data}catch(r){return Wo(r,t)}}),Gr=oe.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await le.get(Ap,{params:{complaintTypeId:e},signal:t.signal})).data}catch(r){return Wo(r,t)}}),zo={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},Ep=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},Lp=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Tp=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",Ip=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Jr=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),Ho=oe.createSlice({name:"status",initialState:zo,reducers:{resetStatusState:()=>zo},extraReducers:e=>{e.addCase(Tt.pending,(t,r)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=r.meta.arg??null}).addCase(Tt.fulfilled,(t,r)=>{const n=r.meta.arg;if(Jr(t.requestedComplaintTypeId,n))return;const a=Ep(r.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((o,l)=>(o.displayOrder??0)-(l.displayOrder??0))}).addCase(Tt.rejected,(t,r)=>{if(r.meta.aborted)return;const n=r.meta.arg;Jr(t.requestedComplaintTypeId,n)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Tp(r))}).addCase(Gr.pending,(t,r)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=r.meta.arg??null}).addCase(Gr.fulfilled,(t,r)=>{const n=r.meta.arg;Jr(t.requestedComplaintSummaryTypeId,n)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=Lp(r.payload))}).addCase(Gr.rejected,(t,r)=>{if(r.meta.aborted)return;const n=r.meta.arg;Jr(t.requestedComplaintSummaryTypeId,n)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=Ip(r))})}}),{resetStatusState:Ko}=Ho.actions,Fp=Ho.reducer,kp="/api/v1/complaints",Op="/api/v1/complaint-types",Yo=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Something went wrong"})},Zr=oe.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await le.post(kp,e,{signal:t.signal})).data}catch(r){return Yo(r,t)}}),ir=oe.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:r,onFail:n},a)=>{try{const o=await le.patch(`${Op}/${e}`,{isActive:t},{signal:a.signal});return r&&typeof r=="function"&&r(o.data),o.data}catch(o){return n&&typeof n=="function"&&n(o),Yo(o,a)}}),Dp={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},xp=e=>e.payload?.message??e.error?.message??"Failed to create complaint",Mp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",Pp=oe.createSlice({name:"createComplaint",initialState:Dp,reducers:{},extraReducers:e=>{e.addCase(Zr.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(Zr.fulfilled,(t,r)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=r.payload?.data??r.payload}).addCase(Zr.rejected,(t,r)=>{r.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=xp(r))}).addCase(ir.pending,t=>{t.isUpdatingActive=!0,t.activeError=null}).addCase(ir.fulfilled,(t,r)=>{t.isUpdatingActive=!1;const n=r.payload?.data??r.payload;t.activeComplaintTypeId=n?.id??r.meta?.arg?.id??null,t.isActive=!!(n?.isActive??n?.active??r.meta?.arg?.isActive)}).addCase(ir.rejected,(t,r)=>{r.meta.aborted||(t.isUpdatingActive=!1,t.activeError=Mp(r))})}}).reducer,Go={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},Up=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Jo=oe.createSlice({name:"changeStatus",initialState:Go,reducers:{resetChangeStatusState:()=>Go},extraReducers:e=>{e.addCase(Lt.pending,(t,r)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=r.meta.arg?.id??null}).addCase(Lt.fulfilled,(t,r)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=r.payload?.data??r.payload}).addCase(Lt.rejected,(t,r)=>{r.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=Up(r))})}}),{resetChangeStatusState:$p}=Jo.actions,Bp=Jo.reducer,jp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},ua=(e,t)=>{try{return jp?.[e]||t}catch{return t}},qp=ua("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Zo=ua("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),Vp=ua("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Xo=e=>/^https?:\/\//i.test(e)?e:`${qp}${e}`,Wp=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",Qo=(e,t)=>{const r=e?.response?.data,n=r?.error?.details?.errors?.file;if(n)return n;const a=r?.message;return a||(e?.response?.status===404?`S3 upload endpoint was not found: ${Zo}`:e?.response?.data?.error??e?.message??t)},It=oe.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:r})=>{try{const n={fileSize:e.size,subDirectory:t,fileName:Wp(e)},a=await le.post(Xo(Zo),n),o=a.data.uploadSignedUrl;return(await fetch(o,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:r("Error uploading file")}catch(n){return r(Qo(n,"Error uploading file"))}}),cr=oe.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const n=(await le.get(Xo(Vp),{params:e})).data??{},a=n.data??n;return a.signedUrl||a.uploadSignedUrl||""}catch(r){return t(Qo(r,"Error getting file signedUrl"))}}),zp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},Hp=oe.createSlice({name:"s3",initialState:zp,reducers:{},extraReducers:e=>{e.addCase(It.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(It.fulfilled,(t,r)=>{t.isUploading=!1,t.uploadedFile=r.payload,t.uploadedFiles.push(r.payload)}).addCase(It.rejected,(t,r)=>{r.meta.aborted||(t.isUploading=!1,t.uploadError=r.payload||"Error uploading file")}).addCase(cr.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(cr.fulfilled,(t,r)=>{t.isGettingSignedUrl=!1,t.signedUrl=r.payload}).addCase(cr.rejected,(t,r)=>{r.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=r.payload||"Error getting file signedUrl")})}}).reducer,Kp=e=>`/api/v1/complaints/${encodeURIComponent(e)}`,Yp=(e,t)=>{const r=e?.response?.data,n=Array.isArray(r?.errors)?r.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n.length?n.join(" "):null)??r?.message??r?.error??e?.message??"Failed to fetch complaint details"})},Ft=oe.createAsyncThunk("complaintsGetOne/fetchById",async(e,t)=>{try{return(await le.get(Kp(e),{signal:t.signal})).data}catch(r){return Yp(r,t)}}),Ro={data:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintId:null},Gp=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint details",el=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),tl=oe.createSlice({name:"complaintsGetOne",initialState:Ro,reducers:{resetComplaintDetails:()=>Ro},extraReducers:e=>{e.addCase(Ft.pending,(t,r)=>{t.data=null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.requestedComplaintId=r.meta.arg??null}).addCase(Ft.fulfilled,(t,r)=>{el(t.requestedComplaintId,r.meta.arg)||(t.data=r.payload?.data??r.payload,t.isLoading=!1,t.hasLoaded=!0)}).addCase(Ft.rejected,(t,r)=>{r.meta.aborted||el(t.requestedComplaintId,r.meta.arg)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Gp(r))})}}),{resetComplaintDetails:Jp}=tl.actions,Zp=tl.reducer,Xp=e=>`/api/v1/users/role/${e}`,dr=oe.createAsyncThunk("roleUsers/fetchByRole",async(e,t)=>{try{const r=await le.get(Xp(encodeURIComponent(e)),{signal:t.signal});return{roleId:e,response:r.data}}catch(r){return t.rejectWithValue({roleId:e,message:r?.response?.data?.message??r?.response?.data?.error??r?.message??"Failed to fetch users for role"})}}),Qp={usersByRoleId:{},loadingByRoleId:{},errorByRoleId:{}},Rp=oe.createSlice({name:"roleUsers",initialState:Qp,reducers:{},extraReducers:e=>{e.addCase(dr.pending,(t,r)=>{const n=String(r.meta.arg);t.loadingByRoleId[n]=!0,delete t.errorByRoleId[n]}).addCase(dr.fulfilled,(t,r)=>{const n=String(r.payload.roleId),a=r.payload.response?.data??r.payload.response;t.usersByRoleId[n]=Array.isArray(a)?a:[],t.loadingByRoleId[n]=!1}).addCase(dr.rejected,(t,r)=>{if(r.meta.aborted)return;const n=String(r.payload?.roleId??r.meta.arg);t.loadingByRoleId[n]=!1,t.errorByRoleId[n]=r.payload?.message??r.error?.message??"Failed to fetch users for role"})}}).reducer,eh=e=>`/api/v1/complaints/${encodeURIComponent(e)}/activities`,kt=oe.createAsyncThunk("activityLog/fetchByComplaint",async(e,t)=>{try{const r=await le.get(eh(e),{signal:t.signal});return{complaintId:e,response:r.data}}catch(r){return t.rejectWithValue({complaintId:e,message:r?.response?.data?.message??r?.response?.data?.error??r?.message??"Failed to fetch complaint activity"})}}),rl={activities:[],complaintId:null,isLoading:!1,error:null,hasLoaded:!1,currentRequestId:null};function th(e){const t=e?.data??e;return Array.isArray(t)?t:Array.isArray(t?.activities)?t.activities:Array.isArray(t?.items)?t.items:Array.isArray(t?.results)?t.results:[]}const nl=oe.createSlice({name:"activityLog",initialState:rl,reducers:{resetActivityLog:()=>rl},extraReducers:e=>{e.addCase(kt.pending,(t,r)=>{t.activities=[],t.complaintId=r.meta.arg??null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.currentRequestId=r.meta.requestId}).addCase(kt.fulfilled,(t,r)=>{t.currentRequestId===r.meta.requestId&&(t.activities=th(r.payload?.response),t.complaintId=r.payload?.complaintId??r.meta.arg,t.isLoading=!1,t.hasLoaded=!0,t.currentRequestId=null)}).addCase(kt.rejected,(t,r)=>{r.meta.aborted||t.currentRequestId!==r.meta.requestId||(t.isLoading=!1,t.hasLoaded=!0,t.error=r.payload?.message??r.error?.message??"Failed to fetch complaint activity",t.currentRequestId=null)})}}),{resetActivityLog:rh}=nl.actions,nh=nl.reducer,ah=oe.combineReducers({complaintAppComplaint:Io,complaintType:ap,appDetails:xo,workflow:gp,roles:Mo.reducer,complaintManagement:_p,status:Fp,createComplaint:Pp,changeStatus:Bp,s3:Hp,complaintsGetOne:Zp,roleUsers:Rp,activityLog:nh}),al=e=>oe.configureStore({reducer:ah,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),sl=al();function ye({children:e,variant:t="primary",size:r="md",startIcon:n,endIcon:a,className:o="",type:l="button",disabled:i=!1,onClick:c,...d}){const u=["ca-btn",`ca-btn--${t}`,r==="sm"?"ca-btn--sm":"",r==="lg"?"ca-btn--lg":"",o].filter(Boolean).join(" ");return s.jsxs("button",{type:l,className:u,disabled:i,onClick:c,...d,children:[n?s.jsx("span",{className:"ca-btn__icon",children:n}):null,e,a?s.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function ol({size:e=16,color:t="currentColor",...r}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...r,children:s.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const ll={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},sh={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Qe({variant:e="body",as:t,className:r="",children:n,...a}){const o=t||sh[e]||"p",l=ll[e]||ll.body;return s.jsx(o,{className:`${l} ${r}`.trim(),...a,children:n})}function fa(e){return s.jsx(Qe,{variant:"h1",...e})}function pa(e){return s.jsx(Qe,{variant:"h2",...e})}function Xr(e){return s.jsx(Qe,{variant:"body",...e})}function il(e){return s.jsx(Qe,{variant:"label",...e})}function cl(e){return s.jsx(Qe,{variant:"value",...e})}function oh(e){return s.jsx(Qe,{variant:"link",type:"button",...e})}function ha({title:e="Complaint Management",description:t,actionLabel:r="Create New Form",onAction:n,showAction:a=!0,className:o=""}){return s.jsxs("header",{className:`ca-page-header ${o}`.trim(),children:[s.jsxs("div",{className:"ca-page-header__text",children:[s.jsx(fa,{children:e}),t?s.jsx(Xr,{children:t}):null]}),a?s.jsx("div",{className:"ca-page-header__actions",children:s.jsx(ye,{startIcon:s.jsx(ol,{}),onClick:n,children:r})}):null]})}function Qr({checked:e=!1,onChange:t,disabled:r=!1,"aria-label":n="Toggle",className:a=""}){return s.jsx("button",{type:"button",role:"switch","aria-checked":e,"aria-label":n,disabled:r,className:`ca-toggle ${e?"ca-toggle--on":""} ${a}`.trim(),onClick:()=>t?.(!e),children:s.jsx("span",{className:"ca-toggle__thumb"})})}function Rr({size:e=16,color:t="#9CA3AF",...r}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...r,children:s.jsx("path",{d:"M4 7h16M9 7V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2m2 0v12a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2V7h12Z",stroke:t,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})}function dl({title:e,titleAsLink:t=!1,onTitleClick:r,isActive:n=!1,canManage:a=!1,canDelete:o=!1,activeDisabled:l=!1,onActiveChange:i,onDelete:c,className:d=""}){return s.jsxs("div",{className:`ca-system-card__header ${d}`.trim(),children:[s.jsx("div",{className:"ca-system-card__title-wrap",children:t?s.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:r,children:e}):s.jsx(pa,{children:e})}),s.jsxs("div",{className:"ca-system-card__header-actions",children:[s.jsx("span",{className:"ca-system-card__active-label",children:n?"Active":"Inactive"}),a?s.jsx(Qr,{checked:n,disabled:l,"aria-label":`${n?"Deactivate":"Activate"} ${e}`,onChange:i}):null,s.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:o?`Delete ${e}`:"You do not have permission to delete this form",disabled:!o,onClick:c,children:s.jsx(Rr,{size:40,color:"currentColor"})})]})]})}function ur({size:e=16,color:t="currentColor",...r}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...r,children:s.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const lh="aira-query-complaintTypeId";function ul({updatedOn:e,openLabel:t="Open",configureLabel:r="Configure",onOpen:n,className:a="",id:o,canConfigure:l=!1,canOpen:i=!1,canAddComplaint:c=!1}){const d=Pe(),u=Q.useDispatch(),f=o?.data??o?.id??o?._id??o,p=()=>{const w=o?.data??o?.id??o?._id??o;if(w!=null&&w!==""){const b=String(w);try{sessionStorage.setItem(lh,b)}catch{}u(lt(b)),u(Vo()),u(Ko()),d(`/complaintmanagement/${b}`);return}d("/complaintmanagement")};return s.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[s.jsx(Qe,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),s.jsxs("div",{className:"ca-system-card__footer-actions",children:[i?s.jsxs(ye,{size:"sm",onClick:p,children:[t,s.jsx(ur,{size:14,color:"currentColor"})]}):null,l?s.jsx(ye,{size:"sm",onClick:()=>{if(f==null||f==="")return;const w=String(f);u(Nt({data:!0})),u(lt(w)),d(`/settings/${w}?step=1`)},endIcon:s.jsx(ur,{size:14,color:"currentColor"}),children:r}):null,c?s.jsx(ye,{size:"sm",onClick:()=>{f==null||f===""||d(`/complaintmanagement/new/${String(f)}`)},endIcon:s.jsx(ur,{size:14,color:"currentColor"}),children:"Add complaint"}):null]})]})}function fl({label:e,value:t,icon:r,className:n=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return s.jsxs("div",{className:`ca-data-point ${n}`.trim(),children:[r?s.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:r}):null,s.jsx(cl,{children:a}),s.jsx("span",{className:"ca-data-point__label",children:e})]})}function pl({className:e=""}){return s.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const ih="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_617_15259)'%3e%3cpath%20d='M9.99992%2011.9997H6.66658M11.9999%209.33301H6.66658M2.66659%2014.6663H13.3333C13.6869%2014.6663%2014.026%2014.5259%2014.2761%2014.2758C14.5261%2014.0258%2014.6666%2013.6866%2014.6666%2013.333V2.66634C14.6666%202.31272%2014.5261%201.97358%2014.2761%201.72353C14.026%201.47348%2013.6869%201.33301%2013.3333%201.33301H5.33325C4.97963%201.33301%204.64049%201.47348%204.39044%201.72353C4.14039%201.97358%203.99992%202.31272%203.99992%202.66634V5.99967M2.66659%2014.6663C3.02021%2014.6663%203.35935%2014.5259%203.60939%2014.2758C3.85944%2014.0258%203.99992%2013.6866%203.99992%2013.333V5.99967M2.66659%2014.6663C2.31296%2014.6663%201.97382%2014.5259%201.72378%2014.2758C1.47373%2014.0258%201.33325%2013.6866%201.33325%2013.333V7.33301C1.33325%206.97939%201.47373%206.64025%201.72378%206.3902C1.97382%206.14015%202.31296%205.99967%202.66659%205.99967H3.99992M7.33325%203.99967H11.3333C11.7014%203.99967%2011.9999%204.29815%2011.9999%204.66634V5.99967C11.9999%206.36786%2011.7014%206.66634%2011.3333%206.66634H7.33325C6.96506%206.66634%206.66658%206.36786%206.66658%205.99967V4.66634C6.66658%204.29815%206.96506%203.99967%207.33325%203.99967Z'%20stroke='%232D64B8'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_617_15259'%3e%3crect%20width='16'%20height='16'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",ch="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.44729%202.75711C6.48402%202.37067%206.66351%202.01181%206.95069%201.75063C7.23787%201.48945%207.61211%201.34473%208.00029%201.34473C8.38847%201.34473%208.76271%201.48945%209.04989%201.75063C9.33707%202.01181%209.51656%202.37067%209.55329%202.75711C9.57537%203.00675%209.65727%203.24739%209.79205%203.45867C9.92683%203.66995%2010.1105%203.84565%2010.3276%203.97089C10.5447%204.09614%2010.7887%204.16724%2011.0391%204.17819C11.2895%204.18913%2011.5388%204.1396%2011.766%204.03378C12.1187%203.87363%2012.5184%203.85045%2012.8873%203.96877C13.2562%204.08708%2013.5678%204.33841%2013.7616%204.67385C13.9554%205.00928%2014.0175%205.40482%2013.9357%205.78349C13.854%206.16215%2013.6342%206.49685%2013.3193%206.72244C13.1142%206.86634%2012.9468%207.05751%2012.8312%207.27979C12.7157%207.50207%2012.6553%207.74891%2012.6553%207.99944C12.6553%208.24997%2012.7157%208.49681%2012.8312%208.71909C12.9468%208.94137%2013.1142%209.13254%2013.3193%209.27644C13.6342%209.50203%2013.854%209.83673%2013.9357%2010.2154C14.0175%2010.5941%2013.9554%2010.9896%2013.7616%2011.325C13.5678%2011.6605%2013.2562%2011.9118%2012.8873%2012.0301C12.5184%2012.1484%2012.1187%2012.1253%2011.766%2011.9651C11.5388%2011.8593%2011.2895%2011.8097%2011.0391%2011.8207C10.7887%2011.8316%2010.5447%2011.9027%2010.3276%2012.028C10.1105%2012.1532%209.92683%2012.3289%209.79205%2012.5402C9.65727%2012.7515%209.57537%2012.9921%209.55329%2013.2418C9.51656%2013.6282%209.33707%2013.9871%209.04989%2014.2483C8.76271%2014.5094%208.38847%2014.6542%208.00029%2014.6542C7.61211%2014.6542%207.23787%2014.5094%206.95069%2014.2483C6.66351%2013.9871%206.48402%2013.6282%206.44729%2013.2418C6.42525%2012.992%206.34336%2012.7513%206.20854%2012.54C6.07371%2012.3286%205.88994%2012.1528%205.67278%2012.0276C5.45562%2011.9023%205.21147%2011.8313%204.96101%2011.8204C4.71055%2011.8095%204.46116%2011.8591%204.23396%2011.9651C3.88122%2012.1253%203.48151%2012.1484%203.11263%2012.0301C2.74374%2011.9118%202.43207%2011.6605%202.23828%2011.325C2.04449%2010.9896%201.98244%2010.5941%202.0642%2010.2154C2.14596%209.83673%202.36569%209.50203%202.68063%209.27644C2.88571%209.13254%203.05311%208.94137%203.16868%208.71909C3.28426%208.49681%203.34459%208.24997%203.34459%207.99944C3.34459%207.74891%203.28426%207.50207%203.16868%207.27979C3.05311%207.05751%202.88571%206.86634%202.68063%206.72244C2.36614%206.49674%202.14679%206.16217%202.06523%205.78376C1.98366%205.40535%202.0457%205.01014%202.23928%204.67492C2.43287%204.3397%202.74417%204.08843%203.11269%203.96994C3.4812%203.85144%203.88061%203.8742%204.23329%204.03378C4.46046%204.1396%204.70979%204.18913%204.96016%204.17819C5.21053%204.16724%205.45458%204.09614%205.67165%203.97089C5.88872%203.84565%206.07242%203.66995%206.2072%203.45867C6.34198%203.24739%206.42388%203.00675%206.44596%202.75711M9.99996%207.99978C9.99996%209.10434%209.10453%209.99978%207.99996%209.99978C6.89539%209.99978%205.99996%209.10434%205.99996%207.99978C5.99996%206.89521%206.89539%205.99978%207.99996%205.99978C9.10453%205.99978%209.99996%206.89521%209.99996%207.99978Z'%20stroke='%23745EBF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",dh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.99992%208H6.66659M9.99992%205.33333H6.66659M12.6666%2011.3333V3.33333C12.6666%202.97971%2012.5261%202.64057%2012.2761%202.39052C12.026%202.14048%2011.6869%202%2011.3333%202H2.66659M2.66659%202C3.02021%202%203.35935%202.14048%203.60939%202.39052C3.85944%202.64057%203.99992%202.97971%203.99992%203.33333V5.33333M2.66659%202C2.31296%202%201.97382%202.14048%201.72378%202.39052C1.47373%202.64057%201.33325%202.97971%201.33325%203.33333V4.66667C1.33325%204.84348%201.40349%205.01305%201.52851%205.13807C1.65354%205.2631%201.82311%205.33333%201.99992%205.33333H3.99992M5.33325%2014H13.3333C13.6869%2014%2014.026%2013.8595%2014.2761%2013.6095C14.5261%2013.3594%2014.6666%2013.0203%2014.6666%2012.6667V12C14.6666%2011.8232%2014.5963%2011.6536%2014.4713%2011.5286C14.3463%2011.4036%2014.1767%2011.3333%2013.9999%2011.3333H7.33325C7.15644%2011.3333%206.98687%2011.4036%206.86185%2011.5286C6.73682%2011.6536%206.66659%2011.8232%206.66659%2012V12.6667C6.66659%2013.0203%206.52611%2013.3594%206.27606%2013.6095C6.02601%2013.8595%205.68687%2014%205.33325%2014ZM5.33325%2014C4.97963%2014%204.64049%2013.8595%204.39044%2013.6095C4.14039%2013.3594%203.99992%2013.0203%203.99992%2012.6667V5.33333'%20stroke='%2300B692'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",uh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.66675%209.33301H6.66675M2.66675%201.33301H9.33341M3.33341%2011.9997H12.6667C13.0349%2011.9997%2013.3334%2012.2982%2013.3334%2012.6663V13.9997C13.3334%2014.3679%2013.0349%2014.6663%2012.6667%2014.6663H3.33341C2.96522%2014.6663%202.66675%2014.3679%202.66675%2013.9997V12.6663C2.66675%2012.2982%202.96522%2011.9997%203.33341%2011.9997ZM3.33341%203.99967H12.6667C13.0349%203.99967%2013.3334%204.29815%2013.3334%204.66634V5.99967C13.3334%206.36786%2013.0349%206.66634%2012.6667%206.66634H3.33341C2.96522%206.66634%202.66675%206.36786%202.66675%205.99967V4.66634C2.66675%204.29815%202.96522%203.99967%203.33341%203.99967Z'%20stroke='%23FF6F00'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",fh="ComplaintTracker",ph=[{actionName:"READ",featureModule:{name:"ComplaintTracker",isActive:!1},source:"role:STOREMANAGER"},{actionName:"DELETE",featureModule:{name:"ComplaintTracker",isActive:!1},source:"role:STOREMANAGER"},{actionName:"CREATE",featureModule:{name:"ComplaintTracker",isActive:!1},source:"role:STOREMANAGER"},{actionName:"FULL_ACCESS",featureModule:{name:"ComplaintTracker",isActive:!0},source:"role:STOREMANAGER"},{actionName:"FULL_DATA_ACCESS",featureModule:{name:"ComplaintTracker",isActive:!1},source:"role:STOREMANAGER"}];function hl(e){const t=Array.isArray(e)?e:[],r=new Set(t.filter(c=>c?.featureModule?.name===fh&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),n=r.has("FULL_ACCESS"),a=r.has("READ")||n,o=r.has("CREATE")||n,l=r.has("DELETE")||n,i=r.has("FULL_DATA_ACCESS");return{canViewCards:a,canCreateForm:o,canDelete:l,canOpen:i,hasAnyAccess:a||o||l||i}}const ml="aira-query-complaintTypeId",hh={id:"status",label:"Status",key:"status"},mh={id:"escalationTo",label:"Escalation To",key:"escalationTo"},gh={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},yh={id:"createdAt",label:"Created At",key:"createdAt"},bh={id:"updatedAt",label:"Updated At",key:"updatedAt"},gl="desc",yl="asc",Sh=10,vh=["5","10","15","20","25"],wh=999999,ma=new Set(["status","escalationTo","id","submittedByUserName","createdAt","updatedAt"]),Ch=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function bl(e){if(!e)return"";const t=new Date(e);if(Number.isNaN(t.getTime()))return"";const r=String(t.getHours()).padStart(2,"0"),n=String(t.getMinutes()).padStart(2,"0");return`${t.getDate()} ${Ch[t.getMonth()]} ${t.getFullYear()}, ${r}:${n}`}function Sl(e){return[gh,yh,bh,hh,mh,...e]}function _h(e){const t=e?.data??e,r=Array.isArray(t)?t:t?.data??t?.results??t?.items??[];return[...Array.isArray(r)?r:[]].sort((n,a)=>(n.displayOrder??0)-(a.displayOrder??0)).map(n=>{const a=n.fieldKey||n.fieldName||n.fieldLabel;return{id:a,label:n.fieldName||n.fieldLabel||n.label||a,key:a,fieldType:n.fieldType,hideForWorkflowStepId:n.hideForWorkflowStepId??null}}).filter(n=>n.key&&!ma.has(n.key))}function Nh(e,t,r,n){const a=e?.data??e??{},o=Number(a.total??a.totalItems??a.totalCount??a.count),l=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(l)&&l>0?{totalPages:l,totalItems:Number.isFinite(o)&&o>=0?o:Math.max(n,l*r),hasNext:t<l}:Number.isFinite(o)&&o>=0?{totalPages:Math.max(1,Math.ceil(o/r)),totalItems:o,hasNext:t*r<o}:{totalPages:t+(n>=r?1:0),totalItems:Math.max(n,t*r),hasNext:n>=r}}function vl(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function Ah(){try{return sessionStorage.getItem(ml)}catch{return null}}function wl(e){const t=vl(e);if(t==null||t==="")return null;const r=String(t);try{sessionStorage.setItem(ml,r)}catch{}return r}function Eh(...e){for(const t of e){const r=vl(t);if(r!=null&&r!=="")return String(r)}return null}function ga(e,t=[]){const r=e?.status;if(typeof r=="string"&&r.trim())return r.trim();if(r&&typeof r=="object"){const a=r.name??r.label??r.status;if(a)return String(a).trim();const o=r.id??r.statusId;if(o!=null){const l=t.find(i=>String(i.id)===String(o));if(l?.name)return l.name}}const n=e?.statusId??e?.complaintStatusId;if(n!=null){const a=t.find(o=>String(o.id)===String(n));if(a?.name)return a.name}return""}function Lh(e,t=[]){const r=e?.statusId??e?.complaintStatusId;if(r!=null&&r!=="")return r;const n=e?.status;if(n&&typeof n=="object"){const a=n.id??n.statusId;if(a!=null&&a!=="")return a}if(typeof n=="string"&&n.trim()){const a=t.find(o=>String(o.name).trim()===n.trim());if(a?.id!=null)return a.id}return null}function en(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}const Th=new Set(["closed","cancelled","canceled"]);function ya(e){return Th.has(String(e||"").trim().toLowerCase())}function Ih(e){return ya(e)}function ba(e){return ya(e)}function Fh(e,t=[]){const r=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(r!=null&&r!==""){const a=t.find(o=>String(o.id)===String(r));if(a)return a}const n=e?.level??e?.levelNo;return n!=null&&n!==""?t.find(a=>String(a.levelNo)===String(n))??null:null}function kh(e,t=[]){const r=e?.level??e?.levelNo;if(r!=null&&r!=="")return`Level ${r}`;const n=e?.workflowStepId??e?.currentWorkflowStepId??e?.currentStepId;if(n!=null){const a=t.find(o=>String(o.id)===String(n));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function Cl(e,t=[],r=[]){const n=Fh(e,r),a=n?.levelNo??e?.level??e?.levelNo??e?.currentLevel,o=Array.isArray(e?.workflowLevels)?e.workflowLevels.find(f=>String(f?.levelNo)===String(a)):null,l=n?.roleIds?.[0]??n?.roles?.[0]?.id??n?.roleId??o?.roleIds?.[0]??e?.roleId??e?.assignedRoleId??null,i=e?.assignedTo??e?.assignedUser??e?.assignee,d=(i&&typeof i=="object"?i.userId??i.id:i!=null&&i!==""&&Number.isFinite(Number(i))?i:null)??e?.assignedToUser?.userId??e?.assignedToUser?.id??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId??null,u={id:e?.complaintId??e?.id,status:ga(e,t),isClosed:ba(ga(e,t)),statusId:Lh(e,t),escalationTo:kh(e,r),level:a??null,currentStepId:n?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:en(e?.canResolve??n?.canResolve),isFinalLevel:en(e?.isFinalLevel??n?.isFinalLevel??n?.finalLevel),roleId:l,assignedToUserId:d,assignedToUserName:Fl(e),submittedByUserName:e?.submittedByUserName||"-",createdAt:bl(e?.createdAt)||"-",updatedAt:bl(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(f=>{const p=f.fieldKey||f.fieldName;p&&!ma.has(p)&&(u[p]=f.value)}),u}function _l(e,t){const r=new Set,n=t.map(a=>{if(r.add(a.key),a.fieldType)return a;const o=e.flatMap(l=>l._fields||[]).find(l=>(l.fieldKey||l.fieldName)===a.key);return o?.fieldType?{...a,fieldType:o.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(o=>{const l=o.fieldKey||o.fieldName;!l||ma.has(l)||r.has(l)||(r.add(l),n.push({id:l,label:o.fieldName||l,key:l,fieldType:o.fieldType}))})}),n}function Oh(e,t,r){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"?!0:t.some(a=>r(e,a[e.key]??"-"))}function Nl(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function Al(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function Dh(e,t){const r=e.map(a=>Al(a.label)).join(","),n=t.map(a=>e.map(o=>Al(a[o.key]??"-")).join(","));return[r,...n].join(`\r
|
|
12
|
+
`)}const xh=["January","February","March","April","May","June","July","August","September","October","November","December"];function El(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":`${t.getDate()} ${xh[t.getMonth()]} ${t.getFullYear()}`}function Ll(e){return(Array.isArray(e?.roles)?e.roles:[]).map(r=>Number(r?.id??r?.roleId??r?.role_id??r)).filter(r=>Number.isFinite(r))}function Mh(e){const t=Array.isArray(e?.accesses)?e.accesses.map(n=>n?.role?.id??n?.role?.roleId??n?.roleId).map(Number).filter(Number.isFinite):[];return t.length?t:(Array.isArray(e?.roleIds)?e.roleIds:Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Tl(e,t=[]){return Mh(e).some(r=>t.includes(r))}function Il(e){if(!e)return"";if(typeof e=="string")return e.trim();if(typeof e!="object")return"";const t=[e.firstName,e.lastName].filter(Boolean).join(" ");return String(e.name||e.userName||e.fullName||t||"").trim()}function Fl(e,t=[]){const r=e?.assignedToUserName??e?.assignedToName??e?.assignedUserName;if(r&&String(r).trim())return String(r).trim();const n=e?.assignedTo??e?.assignedUser??e?.assignee,a=Il(n);if(a)return a;const o=(n&&typeof n=="object"?n.id??n.userId:n)??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId;if(o!=null&&o!==""){const l=t.find(i=>String(i?.id??i?.userId)===String(o));return Il(l)}return""}function Ph(e){const t=String(e||"").toLowerCase();return t==="file"||t==="images"||t==="image"}function Uh(e){const t=e?.title??e?.name??e?.complaintTitle;if(t&&String(t).trim())return String(t).trim();const n=[...Array.isArray(e?.formField)?e.formField:Array.isArray(e?.fieldValues)?e.fieldValues.map(a=>({...a.formField||{},value:a.value})):[]].sort((a,o)=>(a.displayOrder??0)-(o.displayOrder??0)).find(a=>{const o=String(a.fieldKey||a.fieldName||"").trim().toLowerCase(),l=Array.isArray(a.value)?a.value.join(", "):a.value;return o!=="status"&&!Ph(a.fieldType)&&l!=null&&String(l).trim()!==""&&!String(l).trim().startsWith("[")});return n?String(Array.isArray(n.value)?n.value.join(", "):n.value).trim():""}function kl(e,t=[],r=[],n=null){const a=ga(e,t),o=e?.level??e?.levelNo??e?.currentLevel;return{id:e?.complaintId??e?.id,title:Uh(e)||"-",status:a||"-",isClosed:ba(a),level:o!=null&&o!==""?o:"-",assignedTo:Fl(e,r)||"Unassigned",date:El(e?.createdAt??e?.date),tat:n?Vh(e,n.tatMinutes,a):null}}function $h(e,t=[]){const r=e?.userComplaintSummary??{},n=Number(r.totalComplaints)||0,a=Number(r.openComplaints)||0,o=Number(r.closedComplaints)||0,l=Number(r.cancelledComplaints)||0,i=(Array.isArray(e?.recentOpenComplaints)?e.recentOpenComplaints:[]).slice(0,2).map(c=>kl(c,[],t));return{total:n,open:a,closed:o,cancelled:l,previewRows:i}}function Bh(e=[]){const t={};return(Array.isArray(e)?e:[]).forEach(r=>{const n=r?.id??r?._id,a=r?.name??r?.storeName;n!=null&&a&&(t[String(n)]=String(a))}),t}function Ol(e,t={}){if(!Object.keys(t).length)return e;const r={...e};return Object.keys(r).forEach(n=>{const a=r[n];typeof a=="string"&&t[a.trim()]&&(r[n]=t[a.trim()])}),r}function jh(e,t=[],r=null){const n=e?.workflowComplaintSummary,a=[n?.levels,n?.steps,e?.workflowLevels,e?.workflowSteps].filter(Array.isArray).flat(),o=i=>Number(i&&typeof i=="object"?i.userId??i.id??i.roleId??i.role_id??i.user?.id??i.role?.id:i),l=(...i)=>i.filter(Array.isArray).flat().map(o).filter(Number.isFinite);return a.some(i=>{const c=l(i?.roleIds,i?.roles,i?.roleId!=null?[i.roleId]:null),d=l(i?.userIds,i?.users,i?.userAssignments,i?.assignedUsers);return c.some(u=>t.includes(u))||r!=null&&d.includes(Number(r))})}function Sa(e){const t=Math.max(Math.floor(Math.abs(e)/60),0),r=Math.floor(t/1440),n=Math.floor(t%1440/60),a=t%60,o=[];return r&&o.push(`${r}d`),n&&o.push(`${n}h`),a&&!r&&o.push(`${a}m`),o.join(" ")||"0m"}function qh(e){if(e%1440===0){const t=e/1440;return`${t} ${t===1?"day":"days"}`}return Sa(e*60)}function Vh(e,t,r=""){if(ya(r))return null;const n=Number(e?.escalationTimeRemainingSeconds);if(e?.escalationTimeRemainingSeconds==null||!Number.isFinite(n))return null;const a=Number(t)>0?Number(t)*60:0,o=n<0,l=a?Math.min(Math.max(Math.round((1-n/a)*100),0),100):0;return{percent:o?100:l,state:o?"overdue":l>=75?"warn":"ok",remainingLabel:o?`Overdue by ${Sa(n)}`:`${Sa(n)} remaining`,totalLabel:a?`of ${qh(Number(t))}`:""}}function Wh(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"})}function Dl({id:e,title:t,item:r,status:n="inactive",description:a,descriptionHref:o,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u,titleAsLink:f=!1,onTitleClick:p,onDescriptionClick:w,onConfigure:b,onOpen:g,onDelete:m,onToggleActive:h,isTogglingActive:v=!1,className:L=""}){const _=Q.useSelector(E=>E.appDetails?.details?.currentUser),M=Q.useSelector(E=>E.appDetails?.details?.featureActions),{canCreateForm:T,canDelete:q,canOpen:R}=hl(M),J=T,V=Ll(_),G=_?.id??_?.userId??null,$=R||jh(r,V,G),Y=Tl(r,V)&&r?.isActive!==!1,I=()=>{b?.({id:e,title:t,status:n,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u})},D=()=>{if(w){w({id:e,title:t,descriptionHref:o});return}o&&typeof window<"u"&&window.open(o,"_blank","noopener,noreferrer")},j=[{label:"Total entries",value:r?.totalEntries??0,icon:s.jsx("img",{src:ih,alt:""})},{label:"Open entries",value:r?.openEntries??0,icon:s.jsx("img",{src:ch,alt:""})},{label:"Closed entries",value:r?.closedEntries??0,icon:s.jsx("img",{src:dh,alt:""})},{label:"Escalated entries",value:r?.escalatedEntries??0,icon:s.jsx("img",{src:uh,alt:""})}],H=e??r?.id??r?._id;return s.jsxs("article",{className:`ca-system-card ${L}`.trim(),children:[s.jsx(dl,{title:r?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!r?.isActive,canManage:J,canDelete:q,activeDisabled:v,onActiveChange:E=>h?.({id:H,isActive:E,item:r}),onDelete:()=>m?.({id:H,title:t,item:r})}),a?s.jsx("p",{className:"ca-system-card__description",onClick:D,children:a}):null,s.jsx("div",{className:"ca-system-card__stats",children:j.map((E,x)=>s.jsxs(y.Fragment,{children:[x>0?s.jsx(pl,{}):s.jsx("div",{className:"ca-system-card__stats-spacer"}),s.jsx(fl,{label:E.label,value:E.value,icon:E.icon})]},E.label))}),s.jsx(ul,{updatedOn:u??Wh(r?.updatedAt??r?.createdAt),onOpen:()=>g?.({id:e,title:t}),id:e??r?.id??r?._id,title:t,canOpen:$,canConfigure:J,canAddComplaint:Y,onConfigure:I})]})}function xl({systems:e=[],onConfigure:t,onOpen:r,onDelete:n,onToggleActive:a,togglingActiveId:o=null,onTitleClick:l,onDescriptionClick:i,emptyMessage:c="No systems found.",className:d=""}){return e.length?s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(u=>s.jsx(Dl,{item:u,...u,onConfigure:t,onOpen:r,onDelete:n,onToggleActive:a,isTogglingActive:String(o)===String(u.id??u._id),onTitleClick:l,onDescriptionClick:i},u.id??u.title))}):s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:s.jsx("div",{className:"ca-empty",children:s.jsx(Xr,{children:c})})})}function Ot({value:e,onChange:t,placeholder:r,type:n="text",icon:a,className:o="",inputClassName:l="",...i}){return s.jsxs("div",{className:`ca-input-wrap ${o}`.trim(),children:[a?s.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,s.jsx("input",{type:n,className:`ca-input ${a?"ca-input--with-icon":""} ${l}`.trim(),value:e,onChange:t,placeholder:r,...i})]})}function Ml({size:e=18,color:t="currentColor",...r}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...r,children:[s.jsx("path",{d:"M10.5 18a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Z",stroke:t,strokeWidth:"1.75"}),s.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function Pl({value:e,onChange:t,onSearch:r,placeholder:n="Search",className:a=""}){const o=l=>{l.key==="Enter"&&r&&r(e)};return s.jsx("div",{className:`ca-search ${a}`.trim(),children:s.jsx(Ot,{value:e,onChange:t,onKeyDown:o,placeholder:n,icon:s.jsx(Ml,{}),"aria-label":n})})}function ze({text:e="Loading",fullScreen:t=!1}){return s.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[s.jsx("span",{className:"ca-loading__spinner"}),s.jsxs("span",{children:[e,"…"]})]})}const zh=[{id:"qms",title:"QMS - Query Management System",status:"active",description:"Description of the template",departments:3,workflows:12,fields:55,formsFilled:234,updatedOn:"12 Mar 2024",titleAsLink:!1},{id:"cms",title:"CX- Pulse-360 ",status:"active",description:"Description of the template",departments:5,workflows:8,fields:42,formsFilled:189,updatedOn:"08 Mar 2024"},{id:"fms",title:"ENE - TRACKER",status:"inactive",description:"Description of the template",departments:2,workflows:4,fields:28,formsFilled:56,updatedOn:"01 Feb 2024"},{id:"rms",title:"RTV - Return to Vendor ",status:"active",description:"Description of the template",departments:4,workflows:10,fields:61,formsFilled:312,updatedOn:"20 Mar 2024"}],Ul="Create, manage and track complaint forms, workflows and responses across departments.";const $l=(...e)=>e.filter((t,r,n)=>!!t&&t.trim()!==""&&n.indexOf(t)===r).join(" ").trim();const Hh=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const Kh=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,r,n)=>n?n.toUpperCase():r.toLowerCase());const Bl=e=>{const t=Kh(e);return t.charAt(0).toUpperCase()+t.slice(1)};var va={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Yh=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Gh=y.createContext({}),Jh=()=>y.useContext(Gh),Zh=y.forwardRef(({color:e,size:t,strokeWidth:r,absoluteStrokeWidth:n,className:a="",children:o,iconNode:l,...i},c)=>{const{size:d=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p="currentColor",className:w=""}=Jh()??{},b=n??f?Number(r??u)*24/Number(t??d):r??u;return y.createElement("svg",{ref:c,...va,width:t??d??va.width,height:t??d??va.height,stroke:e??p,strokeWidth:b,className:$l("lucide",w,a),...!o&&!Yh(i)&&{"aria-hidden":"true"},...i},[...l.map(([g,m])=>y.createElement(g,m)),...Array.isArray(o)?o:[o]])});const be=(e,t)=>{const r=y.forwardRef(({className:n,...a},o)=>y.createElement(Zh,{ref:o,iconNode:t,className:$l(`lucide-${Hh(Bl(e))}`,`lucide-${e}`,n),...a}));return r.displayName=Bl(e),r};const Xh=be("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);const jl=be("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);const Qh=be("calendar-days",[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M8 13h.01",key:"1sbv64"}],["path",{d:"M12 13h.01",key:"y0uutt"}],["path",{d:"M16 13h.01",key:"wip0gl"}],["path",{d:"M8 17h.01",key:"p3bg7i"}],["path",{d:"M12 17h.01",key:"p32p05"}],["path",{d:"M16 17h.01",key:"ql8jdd"}]]);const fr=be("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Rh=be("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const tn=be("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const em=be("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const tm=be("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const rn=be("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const rm=be("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);const nm=be("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);const am=be("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);const sm=be("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const ql=be("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const Vl=be("store",[["path",{d:"M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5",key:"slp6dd"}],["path",{d:"M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244",key:"o0xfot"}],["path",{d:"M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05",key:"wn3emo"}]]);const om=be("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);const lm=be("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),im=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],Wl=new Set(["Select","Dropdown","Radio","Checkbox"]),cm=["Both","User","Admin"],dm={Open:"#FF0000",Cancelled:"#FF6F00",Closed:"#00D82F"},wa=["Open","Cancelled","Closed"],He={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...wa],optionColors:{...dm},parentMappings:{},lockMode:"options",isNew:!1},nn={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},pr={id:"custom-store-id",fieldKey:"storeIdCustom",fieldLabel:"Store ID",originalFieldName:"Store ID",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[],optionColors:{},parentMappings:{},lockMode:"all",isNew:!1},um=[{...He,label:He.fieldLabel},{...pr,label:pr.fieldLabel}];function zl(e){return String(e||"").trim().toLowerCase()}function ne(e){const t=zl(e?.fieldKey),r=zl(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||r==="status"||r==="statuses"}function Ue(e){return ne(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function fm(e,t=[]){if(!ne(e))return!1;const r=t.length?t:[e],n=r.filter(l=>!l?.isNew&&ne(l)),a=r.filter(Ue),o=n[0]||a[0]||r.find(l=>ne(l)&&!l?.isNew);return o?String(o.id)===String(e.id):!e?.isNew}function an(e){const t=String(e?.fieldKey||"").toLowerCase(),r=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||r==="priorities"}function Re(e){const t=String(e?.fieldKey||"").toLowerCase(),r=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||r==="store id"}function et(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="cancelled"||t==="canceled"||t==="closed"}function pm(e){return String(e||"").trim().toLowerCase()==="open"}function sn(e){return String(e||"").trim().toLowerCase()==="done"?"Closed":e}function hr(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),r=new Set,n=[];return wa.forEach(a=>{const o=t.find(l=>String(l).trim().toLowerCase()===a.toLowerCase());o==null||r.has(o)||(n.push(o),r.add(o))}),t.forEach(a=>{r.has(a)||(n.push(a),r.add(a))}),n}function Hl(e){return Wl.has(e?.fieldType)||Ue(e)}function Ca(e){return!e||ne(e)||Re(e)||!Wl.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function Dt(e=[]){return e.some(Ca)}function Kl(e=[]){const t=[],r=new Set;return e.forEach(n=>{if(!Ca(n))return;const a=String(n.fieldType||"").trim();!a||r.has(a)||(r.add(a),t.push(a))}),t.length?t.length===1?`Add options for ${t[0]} field.`:t.length===2?`Add options for ${t[0]} and ${t[1]} fields.`:`Add options for ${t.slice(0,-1).join(", ")}, and ${t[t.length-1]} fields.`:""}function hm(e,t){const r=String(e?.fieldLabel||e?.label||"").trim().toLowerCase(),n=String(t?.fieldLabel||t?.label||"").trim().toLowerCase(),a=String(e?.fieldType||"").trim().toLowerCase(),o=String(t?.fieldType||"").trim().toLowerCase();return!!(r&&n&&a&&o&&r===n&&a===o)}function on(e,t=[]){return e?t.some(r=>String(r.id)===String(e.id)?!1:hm(e,r)):!1}function ln(e=[]){return e.some(t=>on(t,e))}function _a(e,t={},r=""){const n=String(r||"");if(ne({fieldKey:n})||Re({fieldKey:n}))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"&&n.endsWith("Images"))return t.IMAGES??"Images";if(e==="DATETIME"&&n.endsWith("Time")&&!n.endsWith("DateTime"))return t.TIME??"Time";if(e==="SELECT"||e==="DROPDOWN"){const a=n.toLowerCase();if(a.endsWith("dropdown"))return t.DROPDOWN??"Dropdown";if(a.endsWith("select"))return t.SELECT??"Select"}return t[e]??e??"Custom"}function mm(e){return an(e)?"Priorities":"Option"}function gm(e,t=!1){return e?t?"Define options and set parent.":ne(e)?"Manage the status":"Manage your fields.":""}function cn(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return cn({...e,fieldType:"Checkbox"},t);if(ne(e)){if(e?.isNew||!fm(e,t))return{...e,lockMode:e?.lockMode==="all"?e.lockMode:void 0};const r=String(e.fieldLabel||e.label||"").trim(),n=!r||r.toLowerCase()==="statuses";return{...He,...e,fieldKey:He.fieldKey,fieldLabel:n?He.fieldLabel:r,originalFieldName:n?He.originalFieldName:e.originalFieldName??r,fieldType:He.fieldType,required:!0,options:[...wa],optionColors:{...He.optionColors},lockMode:"options"}}return an(e)?{...nn,...e,fieldKey:e.fieldKey||nn.fieldKey,fieldType:nn.fieldType,options:e.options?.length?e.options:nn.options,lockMode:"options"}:Re(e)?{...pr,...e,fieldKey:pr.fieldKey,fieldType:pr.fieldType,required:!0,lockMode:"all"}:e}function xt(e=[]){const t=e.map(n=>cn(n,e));if(t.some(ne))return t;const r={...He};return[cn(r,[r,...t]),...t]}function Yl({row:e,onClick:t}){return s.jsxs("div",{className:"ca-filler-row ca-filler-row--clickable",role:"button",tabIndex:0,onClick:()=>t?.(e),onKeyDown:r=>{r.key!=="Enter"&&r.key!==" "||(r.preventDefault(),t?.(e))},"aria-label":`Open complaint ${e.title||e.id}`,children:[s.jsxs("div",{className:"ca-filler-row__top",children:[s.jsxs("span",{className:"ca-filler-row__title",children:[s.jsx("span",{className:"ca-filler-row__prefix",children:"Complaint:"})," ",e.title]}),s.jsxs("span",{className:"ca-filler-row__right",children:[e.tat?s.jsxs("span",{className:"ca-filler-row__tat",children:[s.jsx("span",{className:"ca-filler-row__tat-label",children:"TAT"}),s.jsx("span",{className:"ca-filler-row__tat-track",children:s.jsx("span",{className:`ca-filler-row__tat-fill ca-filler-row__tat-fill--${e.tat.state}`,style:{width:`${e.tat.percent}%`}})}),s.jsxs("span",{className:"ca-filler-row__tat-text",children:[s.jsx("strong",{children:e.tat.remainingLabel})," ",e.tat.totalLabel]})]}):null,s.jsx(tn,{size:16,"aria-hidden":"true"})]})]}),s.jsxs("div",{className:"ca-filler-row__meta",children:[s.jsxs("span",{children:["Status: ",s.jsx("strong",{children:sn(e.status)})]}),s.jsxs("span",{children:["Level: ",s.jsx("strong",{children:e.level})]}),s.jsx("span",{children:e.assignedTo==="Unassigned"?e.assignedTo:s.jsxs(s.Fragment,{children:["Assigned to: ",s.jsx("strong",{children:e.assignedTo})]})}),s.jsx("span",{children:e.date})]})]})}const ym=[];function bm({form:e,onAddComplaint:t,onViewAll:r}){const n=Q.useSelector(u=>u.appDetails?.details?.userList)??ym,{total:a,open:o,closed:l,cancelled:i,previewRows:c}=$h(e,n),d=e.isActive!==!1&&e.active!==!1;return s.jsxs("article",{className:"ca-filler-card",children:[s.jsxs("div",{className:"ca-filler-card__head",children:[s.jsxs("div",{className:"ca-filler-card__heading",children:[s.jsxs("h3",{className:"ca-filler-card__title",children:[e.name??e.title,a?` (${a})`:""]}),o?s.jsxs("span",{className:"ca-filler-card__count",children:[o," open"]}):null,l?s.jsxs("span",{className:"ca-filler-card__count",children:[l," closed"]}):null,i?s.jsxs("span",{className:"ca-filler-card__count",children:[i," cancelled"]}):null]}),s.jsxs("button",{type:"button",className:"ca-filler-card__add",onClick:()=>t?.(e),disabled:!d,children:["Add complaint ",s.jsx(tn,{size:14,"aria-hidden":"true"})]})]}),s.jsx("p",{className:"ca-filler-card__desc",children:e.description||"Description of the form"}),c.map(u=>s.jsx(Yl,{row:u},u.id)),s.jsxs("div",{className:"ca-filler-card__foot",children:[a?s.jsx("button",{type:"button",className:"ca-filler-card__link",onClick:()=>r?.(e),children:"View all >"}):s.jsx("span",{}),s.jsx("span",{className:"ca-filler-card__date",children:El(e.createdAt)})]})]})}function Gl({title:e="Complaint Management",description:t=Ul,createLabel:r="Create New Form",onCreateForm:n,onConfigure:a,onOpen:o,onTitleClick:l,onDescriptionClick:i,onSearch:c}){const d=Pe(),u=Q.useDispatch(),[f,p]=y.useState(""),[w,b]=y.useState(null),[g,m]=y.useState(""),{complaintList:h=[],loading:v=!1,error:L=null}=Q.useSelector(F=>F.complaintType??{}),_=Q.useSelector(F=>F.appDetails?.details?.currentUser),M=Q.useSelector(F=>F.appDetails?.details?.featureActions),{canViewCards:T,canCreateForm:q,canDelete:R,canOpen:J,hasAnyAccess:V}=y.useMemo(()=>hl(M),[M]),G=y.useMemo(()=>Ll(_),[_]),$=y.useMemo(()=>h.filter(F=>Tl(F,G)),[h,G]),Y=T||q||R||J,I=!Y&&$.length>0;y.useEffect(()=>{u(Nt({data:!1}))},[u]),y.useEffect(()=>{const F=setTimeout(()=>m(f.trim()),400);return()=>clearTimeout(F)},[f]),y.useEffect(()=>{u(sr(g?{search:g}:void 0))},[u,g]);const D=h;y.useEffect(()=>{c&&c(f)},[f,c]);const j=F=>{p(F.target.value)},H=F=>{a?.(F),d(`/settings/${F.id??"new"}?step=1`)},E=()=>{u(Nt({data:!1})),n?.(),d("/settings/new?step=1")},x=({id:F})=>{R&&F!=null&&u(Wr(F))},C=({id:F,isActive:O})=>{q&&F!=null&&(b(F),u(ir({id:F,isActive:O})).unwrap().then(()=>u(np({id:F,isActive:O}))).finally(()=>b(null)))};return!Y&&(v||!h.length)&&!L?s.jsx(ze,{text:"Loading"}):I?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:"Complaints",description:"Create, manage and track complaint forms, workflows and responses across departments.",showAction:!1}),s.jsx("div",{className:"ca-filler-card-list",children:$.map(F=>s.jsx(bm,{form:F,onAddComplaint:O=>d(`/complaintmanagement/new/${O.id}`),onViewAll:O=>d(`/complaintmanagement/${O.id}/all`)},F.id))})]}):V?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:e,description:t,actionLabel:r,onAction:E,showAction:q}),Y?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-search-container",children:s.jsx(Pl,{value:f,onChange:j,placeholder:"Search"})}),v?s.jsx(ze,{text:"Loading systems"}):L?s.jsx("div",{className:"ca-empty",children:s.jsx("p",{className:"ca-body",children:typeof L=="string"?L:"Failed to load complaint types."})}):s.jsx(xl,{systems:D,onConfigure:H,onOpen:o,onDelete:x,onToggleActive:C,togglingActiveId:w,onTitleClick:l,onDescriptionClick:i,emptyMessage:f?"No systems match your search.":"No systems found."})]}):null]}):s.jsx("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",style:{minHeight:"80vh",display:"flex",alignItems:"center",justifyContent:"center"},children:s.jsx("h5",{className:"ca-body",style:{fontSize:24,color:"#808080",lineHeight:1.3,fontWeight:400,fontFamily:'Inter, "system-ui", arial, sans-serif'},children:"You do not have access rights for this page."})})}const Jl=y.createContext(null),Zl=()=>({categoryName:"",categoryType:"",tatMinutes:"",template:"",visibilityType:"",urlLink:"",active:!1,description:"",roles:[],categoryRoleIds:[],categoryFormData:null,departmentRows:[{id:"1",department:"",subDepartment:"",roles:""}],priorityDraft:"",priorities:[],defaultPriorityId:null,selectedDeptNode:null,workflow:{name:"",tatMinutes:"",description:"",status:[],steps:[],selectedTableCard:null},fieldDraft:{name:"",type:""},formFields:[],templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]});function Xl({children:e,initialValues:t}){const[r,n]=y.useState(()=>({...Zl(),...t,workflow:{...Zl().workflow,...t?.workflow}})),a=y.useCallback(i=>{n(c=>({...c,...i}))},[]),o=y.useCallback(i=>{n(c=>({...c,workflow:{...c.workflow,...i}}))},[]),l=y.useMemo(()=>({state:r,setState:n,update:a,updateWorkflow:o}),[r,a,o]);return s.jsx(Jl.Provider,{value:l,children:e})}function dn(){const e=y.useContext(Jl);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const $e=[{id:1,key:"category",label:"Category Type",title:"Category Type",description:"Define the type and basic details for this category type."},{id:2,key:"workflow",label:"Workflow",title:"Workflow",description:"L1 > L2 > L3"},{id:3,key:"formFields",label:"Form Fields"},{id:4,key:"review",label:"Review & Publish",title:"Review & Publish",description:"Review your configuration and publish."}],Sm=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function vm({size:e=28,color:t="currentColor",...r}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...r,children:[s.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),s.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),s.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Ql({title:e,description:t,nextLabel:r="Next",onNext:n,showNext:a=!0,nextDisabled:o=!1,nextVariant:l="primary",extra:i=null,className:c=""}){return s.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[s.jsx("div",{className:"ca-settings-card__heading",children:s.jsxs("div",{children:[s.jsx(pa,{children:e}),t?s.jsx(Xr,{className:"ca-settings-card__desc",children:t}):null]})}),i,a?s.jsx(ye,{variant:l,disabled:o,onClick:n,endIcon:s.jsx(ur,{size:14,color:"currentColor"}),children:r}):null]})}function mr({title:e,description:t,onNext:r,nextLabel:n,showNext:a=!0,nextDisabled:o,nextVariant:l,headerExtra:i,children:c,footer:d,className:u=""}){return s.jsxs("section",{className:`ca-settings-card ${u}`.trim(),children:[s.jsx(Ql,{title:e,description:t,onNext:r,nextLabel:n,showNext:a,nextDisabled:o,nextVariant:l,extra:i}),s.jsx("div",{className:"ca-settings-card__body",children:c}),d?s.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function Na({children:e,hint:t,htmlFor:r,className:n=""}){return s.jsxs("div",{className:`ca-field-label ${n}`.trim(),children:[s.jsx("label",{className:"ca-label",htmlFor:r,children:e}),t!=null?s.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function Aa({size:e=16,color:t="currentColor",...r}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...r,children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function Ea(e){return typeof e=="string"?e:e.value}function La(e){return typeof e=="string"?e:e.label}function Ke({value:e,onChange:t,options:r=[],placeholder:n="Select",className:a="",disabled:o=!1,maxVisible:l,allowClear:i=!1,...c}){const[d,u]=y.useState(!1),f=y.useRef(null),p=e??"",w=r.find(m=>String(Ea(m))===String(p)),b=w?La(w):"";y.useEffect(()=>{if(!d)return;const m=h=>{f.current?.contains(h.target)||u(!1)};return document.addEventListener("mousedown",m),()=>document.removeEventListener("mousedown",m)},[d]);const g=m=>{t?.({target:{value:m}})};return l?s.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:f,children:[s.jsx("button",{type:"button",id:c.id,className:`ca-select__control${b?"":" ca-select__control--placeholder"}`,disabled:o,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(m=>!m),children:b||n}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Aa,{size:16})}),d?s.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":l},children:r.map(m=>{const h=Ea(m),v=String(h)===String(p);return s.jsx("li",{role:"none",children:s.jsx("button",{type:"button",role:"option","aria-selected":v,className:`ca-select__option${v?" is-selected":""}`,onClick:()=>{g(h),u(!1)},children:La(m)})},h)})}):null]}):s.jsxs("div",{className:`ca-select ${a}`.trim(),children:[s.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:o,...c,children:[s.jsx("option",{value:"",disabled:!i,children:n}),r.map(m=>{const h=Ea(m);return s.jsx("option",{value:h,disabled:!!(m&&typeof m=="object"&&m.disabled),children:La(m)},h)})]}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Aa,{size:16})})]})}function Rl({value:e,onChange:t,placeholder:r,maxLength:n,rows:a=4,className:o="",...l}){return s.jsx("textarea",{className:`ca-textarea ${o}`.trim(),value:e,onChange:t,placeholder:r,maxLength:n,rows:a,...l})}function Be({label:e,hint:t,children:r,className:n="",htmlFor:a}){return s.jsxs("div",{className:`ca-form-field ${n}`.trim(),children:[e!=null?s.jsx(Na,{htmlFor:a,hint:t,children:e}):null,r]})}function gr({label:e,hint:t,helperText:r,...n}){return s.jsxs(Be,{label:e,hint:t,htmlFor:n.id,children:[s.jsx(Ot,{...n}),r?s.jsx("p",{className:"ca-form-field__helper",children:r}):null]})}function Ta({label:e,hint:t,...r}){return s.jsx(Be,{label:e,hint:t,htmlFor:r.id,children:s.jsx(Ke,{...r})})}function wm({label:e,hint:t,maxLength:r,value:n="",...a}){const o=t??(r!=null?`${String(n).length}/${r}`:void 0);return s.jsx(Be,{label:e,hint:o,htmlFor:a.id,children:s.jsx(Rl,{value:n,maxLength:r,...a})})}function ei({size:e=12,color:t="currentColor",...r}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...r,children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function ti({label:e,onRemove:t,className:r="",title:n}){return s.jsxs("span",{className:`ca-tag ${r}`.trim(),title:n,children:[e,t?s.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:s.jsx(ei,{size:10})}):null]})}function un({label:e="",options:t=[],value:r=[],onChange:n,placeholder:a="Select roles",className:o="",hasError:l=!1,required:i=!1,emptyText:c="No roles available",openDirection:d="up",showAll:u=!0,maxVisible:f=null,searchable:p=!1,searchPlaceholder:w="Search",lockedValues:b=[],rotateChevron:g=!1}){const[m,h]=y.useState(!1),[v,L]=y.useState(""),_=Array.isArray(r)?r.filter(E=>E!=null&&E!==""):[],M=new Set(b.map(E=>String(E))),T=y.useRef(null),q=y.useRef(null),R=t.map(E=>typeof E=="string"?{value:E,label:E,sublabel:"",searchText:E}:{value:E.value,label:E.label,sublabel:E.sublabel??"",title:E.title??"",searchText:E.searchText??`${E.label??""} ${E.sublabel??""}`}).filter(E=>E.value!==null&&E.value!==void 0&&E.value!==""),J=new Map(R.map(E=>[String(E.value),E.label])),V=E=>_.some(x=>String(x)===String(E)),G=R.filter(E=>`${E.label} ${E.sublabel} ${E.searchText}`.toLowerCase().includes(v.trim().toLowerCase())),$=G.map(E=>E.value),Y=$.length>0&&$.every(E=>V(E)),I=()=>{if(Y)n?.(_.filter(E=>M.has(String(E))||!$.some(x=>String(x)===String(E))));else{const E=_.filter(x=>!$.some(C=>String(C)===String(x)));n?.([...E,...$])}};y.useEffect(()=>{m&&q.current&&(q.current.scrollTop=0)},[m]),y.useEffect(()=>{if(!m)return;const E=C=>{T.current&&!T.current.contains(C.target)&&(h(!1),L(""))},x=C=>{C.key==="Escape"&&(h(!1),L(""))};return document.addEventListener("mousedown",E),document.addEventListener("touchstart",E),document.addEventListener("keydown",x),()=>{document.removeEventListener("mousedown",E),document.removeEventListener("touchstart",E),document.removeEventListener("keydown",x)}},[m]);const D=E=>{M.has(String(E))||(V(E)?n?.(_.filter(x=>String(x)!==String(E))):n?.([..._,E]),L(""))},j=E=>{M.has(String(E))||n?.(_.filter(x=>String(x)!==String(E)))},H=_.length?`${_.length} selected`:a;return s.jsxs("div",{className:`ca-role-select ${o}`.trim(),style:{display:"flex",flexDirection:"column",alignItems:"stretch",gap:8,width:"100%"},children:[s.jsxs(Na,{children:[e,i?s.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),s.jsxs("div",{className:"ca-multi-select",ref:T,style:{position:"relative",width:"100%"},children:[p?s.jsxs("div",{className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":m,onClick:()=>h(!0),children:[s.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:v,placeholder:w,"aria-label":w,onFocus:()=>h(!0),onChange:E=>{L(E.target.value),h(!0)},onKeyDown:E=>{E.key==="Escape"&&(E.stopPropagation(),h(!1),L(""))}}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:g&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):s.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>h(E=>!E),"aria-haspopup":"listbox","aria-expanded":m,children:[s.jsx("span",{className:_.length?"":"ca-multi-select__placeholder",children:H}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:g&&m?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),m?s.jsxs("ul",{ref:q,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&&G.length>1?s.jsx("li",{role:"option","aria-selected":Y,style:{position:"sticky",top:0,zIndex:1,background:"var(--ca-surface, #fff)",borderBottom:"1px solid var(--ca-border, #e5e7eb)"},children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:Y,onChange:I}),s.jsx("span",{children:"All"})]})}):null,G.length?G.map(E=>s.jsx("li",{role:"option","aria-selected":V(E.value),children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:V(E.value),disabled:M.has(String(E.value)),onChange:()=>D(E.value)}),s.jsxs("span",{className:"ca-multi-select__option-text",children:[s.jsx("span",{className:"ca-multi-select__option-label",children:E.label}),E.sublabel?s.jsx("span",{className:"ca-multi-select__option-sublabel",children:E.sublabel}):null]})]})},String(E.value))):s.jsx("li",{className:"ca-multi-select__empty",children:v?"No matching options":c})]}):null]}),_.length>0?s.jsx("div",{className:"ca-tag-list",children:[...new Set(_)].map(E=>s.jsx(ti,{label:J.get(String(E))||String(E),title:R.find(x=>String(x.value)===String(E))?.title,onRemove:M.has(String(E))?void 0:()=>j(E)},String(E)))}):null]})}function yr({steps:e=[],currentStep:t=1,allStepsUnlocked:r=!1,onStepClick:n,className:a="",size:o="md",showSaveButton:l=!1,showNextButton:i=!1,onNext:c,nextLabel:d="Next >",extraActions:u=null}){const f=y.useRef({}),p=Q.useDispatch();return y.useEffect(()=>{const w=f.current[t];if(!w)return;const b=requestAnimationFrame(()=>{let g=w.parentElement;for(;g&&g!==document.body;){const{overflowX:M}=getComputedStyle(g);if(g.scrollWidth>g.clientWidth+1&&(M==="auto"||M==="scroll"))break;g=g.parentElement}if(!g||g===document.body)return;const m=g.getBoundingClientRect(),h=w.getBoundingClientRect(),v=12;if(h.left>=m.left+v&&h.right<=m.right-v)return;const _=h.left-m.left-(m.width-h.width)/2;g.scrollTo({left:g.scrollLeft+_,behavior:"smooth"})});return()=>cancelAnimationFrame(b)},[t]),s.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${o} ${a}`.trim(),children:[s.jsx("nav",{className:`ca-stepper ca-stepper--${o}`,"aria-label":"Progress",children:e.map((w,b)=>{const g=w.id??b+1,m=g===t,h=g<t,v=!!n&&(r||h||m);return s.jsxs("button",{type:"button",ref:L=>{f.current[g]=L},className:["ca-stepper__item",m?"ca-stepper__item--active":"",h?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-b},onClick:()=>{p(Nt({data:!0})),v&&n?.(g)},disabled:!v,"aria-current":m?"step":void 0,children:[s.jsxs("span",{className:"ca-stepper__circle",children:[g,"."]}),s.jsx("span",{className:"ca-stepper__label",children:w.label})]},g)})}),l||i||u?s.jsxs("div",{className:"ca-stepper__actions",children:[u,i?s.jsx(ye,{onClick:c,children:d}):null]}):null]})}const Cm={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},_m=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],Nm={value:"",label:"Select Template"},Ia=e=>String(e?.id??e?.code??e?.name??"");function Am(e){return Array.isArray(e)?[...new Set(e.map(t=>!t||typeof t!="object"?t:t.userId??t.user_id??t.id??t.value??t.user?.userId??t.user?.id).filter(t=>t!=null&&t!==""))]:[]}function Fa(e){const t=[e?.userIds,e?.users,Array.isArray(e?.accesses)?e.accesses.map(r=>r?.userId??r?.user?.id):null];for(const r of t){const n=Am(r);if(n.length)return n}return[]}function fn(e){return e==null||e===""?null:String(e).trim()||null}function ri(e){return fn(e?.userId??e?.user_id??e?.id??e?.value)}function Em(e,t=[]){const r=e?.createdByUser??e?.createdBy??e?.creator,n=fn(e?.createdByUserId??e?.createdById??r?.userId??r?.id??r?.user?.id??(typeof r=="number"||/^\d+$/.test(String(r??"").trim())?r:null));if(n)return n;const a=typeof r=="string"?r.trim().toLowerCase():String(r?.name??r?.userName??"").trim().toLowerCase();if(!a)return null;const o=t.find(l=>{const i=String(l?.name??l?.userName??[l?.firstName,l?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(l?.email??l?.userEmail??"").trim().toLowerCase();return a===i||a===c});return ri(o)}function ka(...e){const t=new Map;return e.flat().forEach(r=>{const n=fn(r);n!==null&&!t.has(n)&&t.set(n,r)}),[...t.values()]}const ni=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(l=>l?.role?.id??l?.roleId):[],r=Array.isArray(e?.roleIds)?e.roleIds:[],n=l=>l.map(i=>i&&typeof i=="object"?i.id??i.roleId??i.role_id??i.value:i).filter(i=>i!=null&&i!==""),a=n(t),o=n(r);return{categoryName:e?.name??e?.code??"",tatMinutes:At(e?.tatMinutes)||"",template:Ia(e),categoryType:e?.categoryType??Ia(e),description:e?.description??"",visibilityType:e?.visibilityType??e?.accessType??"INTERNAL_LOGIN",urlLink:e?.urlLink??"",active:e?.isActive??e?.active??!0,roles:[...new Set(a.length?a:o)],userIds:Fa(e)}};function Lm(e){return[Nm,...e]}function Tm(e,t){const r=[];if(e.categoryName&&r.push("Please enter a category name."),e.tatMinutes){const n=String(t.tatMinutes??"").trim();r.push(n?"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&&r.push("Please select a visibility type."),e.urlLink&&r.push("Please enter a URL link."),e.roles&&r.push("Please select roles for complaint filling."),r.join(" ")}function Im({stepMeta:e,stepperProps:t,roleList:r=[],userList:n=[]}){const{state:a,update:o}=dn(),[l,i]=y.useState(()=>a.categoryFormData??Cm),c=y.useRef(a.categoryFormData),[d,u]=y.useState({}),f=Q.useDispatch(),{id:p}=Q.useSelector(C=>C.appDetails||{}),{isEdit:w}=Q.useSelector(C=>C.appDetails||{}),b=Q.useSelector(C=>C.complaintType||{}),g=Q.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:m=[],saving:h,loading:v,error:L}=b,_=m.find(C=>String(C?.id??C?._id)===String(p))??(String(b.selected?.id??b.selected?._id)===String(p)?b.selected:null),M=y.useRef(_),T=y.useRef(!1);y.useEffect(()=>{M.current=_},[_]);const q=(C,F={})=>{i(C),c.current=C,o({categoryFormData:C,...F})};y.useEffect(()=>{a.categoryFormData||o({categoryFormData:l,categoryRoleIds:l.roles})},[l,o,a.categoryFormData]),y.useEffect(()=>{!m.length&&!v&&!T.current&&(T.current=!0,f(sr()))},[m.length,f,v]),y.useEffect(()=>{!w||p===null||p===void 0||c.current||f(Xe(p)).unwrap().then(C=>{const F=C?.data??C;if(!F||c.current)return;const O=M.current,W=Fa(F),Z=Fa(O),te={...F,roleIds:F.roleIds??O?.roleIds,userIds:W.length?W:Z},k=ni(te);i(k),c.current=k,o({categoryFormData:k,categoryRoleIds:k.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[f,p,w,o]);const R=r.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!==""),J=n.map(C=>{const F=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),O=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:F,sublabel:O,title:O?`Email: ${O}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),V=w?Em(_,n):ri(g),G=[];ka(l.userIds,G);const $=w?_?.createdByUser??_?.createdBy:g;if(V&&!J.some(C=>fn(C.value)===V)){const C=typeof $=="object"?String($.name??$.userName??[$.firstName,$.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";J.push({value:V,label:C||"Created by user",sublabel:typeof $=="object"?String($.email??"").trim():""})}const Y=m.map(C=>({value:Ia(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),I=async C=>{const F=C?.id??C?._id??null,O={...l,...ni(C),categoryName:"",roles:[],userIds:G};if(q(O,{categoryRoleIds:[]}),o({templateId:F,tatMinutes:Ie(C?.tatMinutes)}),F==null||F===""){o({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[W,Z]=await Promise.all([f(We(F)).unwrap(),f(De(F)).unwrap()]),te=(Array.isArray(W?.data)?W.data:Array.isArray(W)?W:[]).map(A=>({...A,roleIds:[],role:[],roleId:null})),k=Array.isArray(Z?.data)?Z.data:Array.isArray(Z)?Z:[];o({templateId:F,tatMinutes:Ie(C?.tatMinutes),prefillWorkflowSteps:te,prefillFormFields:k})}catch(W){console.log("Failed to load template details:",W),o({templateId:F,prefillWorkflowSteps:[],prefillFormFields:[]})}},D=()=>{const C={...l,template:"",categoryType:"",tatMinutes:"",description:""};q(C),o({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},j=C=>{const F=C.target.value;if(!F){D();return}const O=Y.find(W=>W.value===F)?.complaintType;if(O){I(O);return}H("template",F),H("categoryType",F)},H=(C,F)=>{const O=Array.isArray(F)?C==="userIds"?ka(F,G):[...new Set(F.filter(Z=>Z!=null&&Z!==""))]:F,W={...l,[C]:O};q(W,C==="roles"?{categoryRoleIds:O}:{}),u(Z=>{if(!Z[C])return Z;const te={...Z};return delete te[C],te})},E=l.visibilityType==="PRIVATE_LINK"||l.visibilityType==="PUBLIC_LINK",x=async()=>{const C={};if(l.categoryName.trim()||(C.categoryName=!0),dp(l.tatMinutes)||(C.tatMinutes=!0),l.visibilityType||(C.visibilityType=!0),l.roles.length||(C.roles=!0),E&&!l.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){u(C);return}u({});const F=Ie(l.tatMinutes),O={...l,userIds:ka(l.userIds,G)};q(O,{tatMinutes:F,categoryRoleIds:O.roles});const W={categoryName:l.categoryName,categoryType:l.categoryType||l.template,tatMinutes:F,description:l.description,visibilityType:l.visibilityType,urlLink:E?l.urlLink:"",active:l.active,roles:O.roles},Z=w?lr({id:p,data:{code:W.categoryName,name:W.categoryName,description:W.description,tatMinutes:W.tatMinutes,accessType:W.visibilityType,roleIds:W.roles.map(k=>parseInt(k,10))},onFail:k=>{console.log("updateComplaintType onFail:",k)}}):or({payload:W,onSuccess:k=>{f(lt(k?.data?.id??k?.id??null))},onFail:k=>{console.log("createComplaintType onFail:",k)}}),te=await f(Z);if(w&&lr.fulfilled.match(te)||!w&&or.fulfilled.match(te)){if(!w){const k=te.payload?.data?.id??te.payload?.id;k!=null&&f(lt(k))}t.onNext?.()}};return s.jsxs(s.Fragment,{children:[s.jsx(yr,{...t,steps:$e,showNextButton:!!t.showNextButton,onNext:x}),L||Object.keys(d).length>0?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:L||Tm(d,l)}):null,s.jsxs(mr,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:s.jsx("div",{className:"ca-category-type__header-tools",children:s.jsx("div",{className:"ca-category-type__template",children:s.jsx(Ta,{label:"Select Template (Optional)",value:l.template||l.categoryType,onChange:j,options:Lm(Y),placeholder:"Select Template",maxVisible:5,disabled:w,className:w?"ca-select--disabled":""})})}),children:[s.jsxs("div",{className:"ca-step-section",children:[s.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[s.jsx(gr,{label:s.jsxs(s.Fragment,{children:["Category Name ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:l.categoryName,onChange:C=>H("categoryName",C.target.value),placeholder:"Enter category name"}),s.jsx(gr,{label:s.jsxs(s.Fragment,{children:["TAT ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:l.tatMinutes,onChange:C=>H("tatMinutes",C.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),s.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:s.jsx(gr,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:l.description,onChange:C=>H("description",C.target.value),placeholder:"Enter description"})}),s.jsxs("div",{className:"ca-step-row",children:[s.jsx(Ta,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:l.visibilityType,onChange:C=>H("visibilityType",C.target.value),options:_m,placeholder:"Select visibility type"}),E?s.jsx(gr,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:l.urlLink,onChange:C=>H("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),s.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:s.jsx(un,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:R,value:l.roles,maxVisible:4,onChange:C=>H("roles",C)})}),v?s.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,h?s.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function ai({level:e,onAdd:t,disabled:r=!1}){const n=`Level ${e}`,a=e===1?"Initial Handler":e===2?"Escalation if L1 TAT exceeded":"Escalation workflow";return s.jsxs("div",{className:"ca-add-table-card",children:[s.jsxs("header",{className:"ca-add-table-card__header",children:[s.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),s.jsxs("div",{className:"ca-add-table-card__header-text",children:[s.jsx("h3",{className:"ca-add-table-card__title",children:n}),s.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),s.jsx("div",{className:"ca-add-table-card__action",children:s.jsxs(ye,{type:"button",className:"ca-add-table-card__button",disabled:r,onClick:()=>t?.(n),children:["+ Add L",e]})})]})}const Oa=["Yes","No"],Mt=()=>s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function si({name:e,level:t,value:r,initialFormValues:n,setFormValues:a,onChange:o,selected:l=!1,onSelect:i,onDelete:c,subtitle:d,roleList:u=[],showRoleError:f=!1,showEscalationError:p=!1,userList:w=[],fieldErrors:b={}}){const g=r??n??{},m=Array.isArray(g.role)?g.role:[],h=Array.isArray(g.users)?g.users:[],v=g.workflowType==="user"?"user":"role",L=u.map(I=>({value:I.id??I.roleId??I.value,label:I.name??I.roleName??I.label})).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),_=I=>{const D=[I?.firstName,I?.lastName].map(E=>String(E??"").trim()).filter(Boolean).join(" "),j=String(I?.name??I?.userName??I?.label??"").trim()||D,H=[I?.roleName,I?.role?.name,typeof I?.role=="string"?I.role:"",...Array.isArray(I?.roles)?I.roles.map(E=>typeof E=="string"?E:E?.name):[]].map(E=>String(E??"").trim()).filter(Boolean).filter((E,x,C)=>C.indexOf(E)===x).join(", ");return{userName:j,roleName:H,email:String(I?.email??I?.userEmail??"").trim()}},M=w.map(I=>{const{userName:D,roleName:j,email:H}=_(I);return{value:I.id??I.userId??I.user_id??I.value,label:D,sublabel:H,title:H?`Email: ${H}`:"",searchText:j}}).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),T=(I,D)=>{const j={...g,[I]:D};a?a(j):o?.(j)},q=m.length===0&&h.length===0,R=(f||!!b.role)&&q,J=I=>I?"ca-control--invalid":"",V=t===1?"green":t===2?"orange":"blue",G=I=>`workflow-level-${t}-${I}`,$=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),Y=[{value:"role",label:"Role",count:m.length},{value:"user",label:"User",count:h.length}];return s.jsxs("article",{className:`ca-table-card ca-table-card--${V}${l?" ca-table-card--selected":""}`,onClick:i,children:[s.jsxs("header",{className:"ca-table-card__header",children:[s.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),s.jsxs("div",{className:"ca-table-card__header-text",children:[s.jsx("h3",{className:"ca-table-card__title",children:e}),s.jsx("p",{className:"ca-table-card__subtitle",children:$})]}),s.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:I=>{I.stopPropagation(),c?.()},children:s.jsx(Rr,{size:15,color:"currentColor"})})]}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsxs("div",{className:"ca-table-card__fields",children:[s.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:Y.map(I=>s.jsxs("button",{type:"button",className:`ca-type-toggle__btn${v===I.value?" ca-type-toggle__btn--active":""}`,onClick:D=>{D.stopPropagation(),v!==I.value&&T("workflowType",I.value)},children:[I.label,I.count?` (${I.count})`:""]},I.value))}),v==="role"?s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Roles",s.jsx(Mt,{})]}),htmlFor:G("roleIds"),children:s.jsx(un,{id:G("role"),value:m,options:L,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:R,onChange:I=>T("role",I)},"role")}):s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Users",s.jsx(Mt,{})]}),htmlFor:G("userIds"),children:s.jsx(un,{id:G("user"),value:h,options:M,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:R,onChange:I=>T("users",I)},"user")}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Resolve ",s.jsx(s.Fragment,{children:"(Change the Status)"}),s.jsx(Mt,{})]}),htmlFor:G("canResolve"),children:s.jsx(Ke,{id:G("canResolve"),className:J(b.canResolve),value:g.canResolve,options:Oa,onChange:I=>T("canResolve",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Reassign ",s.jsx(s.Fragment,{children:"(Change the Level)"}),s.jsx(Mt,{})]}),htmlFor:G("canReassign"),children:s.jsx(Ke,{id:G("canReassign"),className:J(b.canReassign),value:t===1?"No":g.canReassign,options:t===1?["No"]:Oa,disabled:t===1,onChange:I=>T("canReassign",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Final Level",s.jsx(s.Fragment,{children:"(can be resolved or closed the complaint)"}),s.jsx(Mt,{})]}),htmlFor:G("finalLevel"),children:s.jsx(Ke,{id:G("finalLevel"),className:J(b.finalLevel),value:g.finalLevel,options:Oa,onChange:I=>T("finalLevel",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Escalation time",s.jsx(Mt,{})]}),htmlFor:G("escalationTime"),children:s.jsx("div",{className:"ca-table-card__time-input",children:s.jsx(Ot,{id:G("escalationTime"),type:"text",className:J(p||b.escalation),value:g.escalateAfterMinutes??"",placeholder:"--",onChange:I=>T("escalateAfterMinutes",I.target.value)})})})]})]})}function oi({open:e,title:t,children:r,primaryLabel:n="Save",onPrimary:a,secondaryLabel:o="Cancel",onSecondary:l,primaryDisabled:i=!1}){return e?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?s.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,r,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[o?s.jsx(ye,{variant:"outline",onClick:l,children:o}):null,s.jsx(ye,{onClick:a,disabled:i,children:n})]})]})}):null}function li({variant:e,levelNo:t,open:r,onConfirm:n,onClose:a}){return r?e==="finalLevelDelete"?s.jsx(oi,{open:!0,title:`Final Level is set to Yes at Level ${t}. You can't create a next level here, and every level after Level ${t} will be deleted. Do you want to continue?`,primaryLabel:"Ok",onPrimary:n,secondaryLabel:"Cancel",onSecondary:a}):e==="finalLevelRequired"?s.jsx(oi,{open:!0,title:`Level ${t} is the last level. "Final Level" must be Yes. Click Ok to set it to Yes.`,primaryLabel:"Ok",onPrimary:n,secondaryLabel:null}):null:null}function Da(e,t=0){const r=o=>!String(o??"").trim(),n=!(Array.isArray(e?.role)&&e.role.length),a=!(Array.isArray(e?.users)&&e.users.length);return{role:n&&a,canResolve:r(e?.canResolve),canReassign:t>0&&r(e?.canReassign),finalLevel:r(e?.finalLevel),escalation:r(e?.escalateAfterMinutes)}}const Fm="data:image/svg+xml,%3csvg%20width='31'%20height='57'%20viewBox='0%200%2031%2057'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M0.50001%200.000227733C0.223869%200.000226605%209.85899e-06%200.224084%208.79418e-06%200.500226C7.72665e-06%200.776369%200.223865%201.00023%200.500009%201.00023L0.50001%200.500227L0.50001%200.000227733ZM15%200.500275L15%201.00028L15%200.500275ZM27%2012.5003L27.5%2012.5003L27%2012.5003ZM26.6464%2056.8527C26.8417%2057.048%2027.1582%2057.048%2027.3535%2056.8527L30.5355%2053.6707C30.7307%2053.4755%2030.7307%2053.1589%2030.5355%2052.9636C30.3402%2052.7683%2030.0236%2052.7683%2029.8284%2052.9636L26.9999%2055.792L24.1715%2052.9636C23.9763%2052.7683%2023.6597%2052.7683%2023.4644%2052.9636C23.2692%2053.1589%2023.2692%2053.4754%2023.4644%2053.6707L26.6464%2056.8527ZM0.50001%200.500227L0.500009%201.00023L15%201.00028L15%200.500275L15%200.000275583L0.50001%200.000227733L0.50001%200.500227ZM27%2012.5003L26.5%2012.5003L26.4999%2056.4991L26.9999%2056.4991L27.4999%2056.4991L27.5%2012.5003L27%2012.5003ZM15%200.500275L15%201.00028C21.3513%201.0003%2026.5%206.14903%2026.5%2012.5003L27%2012.5003L27.5%2012.5003C27.5%205.59674%2021.9036%200.000298399%2015%200.000275583L15%200.500275Z'%20fill='%2300BF87'/%3e%3c/svg%3e",km="data:image/svg+xml,%3csvg%20width='28'%20height='61'%20viewBox='0%200%2028%2061'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M27.0053%2057.2042C27.2006%2057.009%2027.2006%2056.6924%2027.0053%2056.4971L23.8233%2053.3152C23.6281%2053.1199%2023.3115%2053.1199%2023.1162%2053.3152C22.921%2053.5104%2022.921%2053.827%2023.1162%2054.0223L25.9447%2056.8507L23.1163%2059.6791C22.921%2059.8744%2022.921%2060.191%2023.1163%2060.3862C23.3115%2060.5815%2023.6281%2060.5815%2023.8234%2060.3862L27.0053%2057.2042ZM12.5001%2056.8508L12.5001%2057.3508V57.3508L12.5001%2056.8508ZM0.500014%2044.8508L1.33317e-05%2044.8508V44.8508L0.500014%2044.8508ZM26.6518%2056.8507L26.6518%2056.3507L12.5001%2056.3508L12.5001%2056.8508L12.5001%2057.3508L26.6518%2057.3507L26.6518%2056.8507ZM0.500014%2044.8508L1.00001%2044.8508L1.00001%20-0.000388027L0.50001%20-0.000388722L9.54624e-06%20-0.000389416L1.33317e-05%2044.8508L0.500014%2044.8508ZM12.5001%2056.8508L12.5001%2056.3508C6.14877%2056.3508%201.00001%2051.2021%201.00001%2044.8508L0.500014%2044.8508L1.33317e-05%2044.8508C1.43871e-05%2051.7544%205.59649%2057.3508%2012.5001%2057.3508L12.5001%2056.8508Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",Om="data:image/svg+xml,%3csvg%20width='57'%20height='31'%20viewBox='0%200%2057%2031'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M56.9989%200.500133C56.9989%200.223991%2056.7751%200.000131942%2056.4989%200.00013087C56.2228%200.000129795%2055.9989%200.223987%2055.9989%200.500131L56.4989%200.500132L56.9989%200.500133ZM56.4989%2015.0002L55.9989%2015.0002L56.4989%2015.0002ZM44.4989%2027.0001L44.4988%2027.5001L44.4989%2027.0001ZM0.146456%2026.6465C-0.0488074%2026.8418%20-0.0488086%2027.1584%200.146455%2027.3536L3.32843%2030.5356C3.52369%2030.7309%203.84027%2030.7309%204.03554%2030.5356C4.2308%2030.3403%204.2308%2030.0238%204.03554%2029.8285L1.20712%2027.0001L4.03555%2024.1716C4.23081%2023.9764%204.23081%2023.6598%204.03555%2023.4645C3.84029%2023.2693%203.5237%2023.2693%203.32844%2023.4645L0.146456%2026.6465ZM56.4989%200.500132L55.9989%200.500131L55.9989%2015.0002L56.4989%2015.0002L56.9989%2015.0002L56.9989%200.500133L56.4989%200.500132ZM44.4989%2027.0001L44.4989%2026.5001L0.500009%2026.5001L0.500008%2027.0001L0.500007%2027.5001L44.4988%2027.5001L44.4989%2027.0001ZM56.4989%2015.0002L55.9989%2015.0002C55.9988%2021.3514%2050.8501%2026.5001%2044.4989%2026.5001L44.4989%2027.0001L44.4988%2027.5001C51.4024%2027.5001%2056.9988%2021.9037%2056.9989%2015.0002L56.4989%2015.0002Z'%20fill='%2300BF87'/%3e%3c/svg%3e",Dm="data:image/svg+xml,%3csvg%20width='61'%20height='28'%20viewBox='0%200%2061%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.32848%2027.0049C3.52374%2027.2002%203.84032%2027.2002%204.03559%2027.0049L7.21755%2023.8229C7.41281%2023.6277%207.4128%2023.3111%207.21754%2023.1158C7.02228%2022.9206%206.70569%2022.9206%206.51043%2023.1158L3.68203%2025.9443L0.85358%2023.1159C0.658316%2022.9206%200.341733%2022.9206%200.146472%2023.1159C-0.0487878%2023.3111%20-0.0487864%2023.6277%200.146478%2023.823L3.32848%2027.0049ZM3.68194%2012.4997L3.18194%2012.4997V12.4997L3.68194%2012.4997ZM15.6819%200.499617L15.6819%20-0.000382774V-0.000382774L15.6819%200.499617ZM3.68203%2026.6514L4.18203%2026.6514L4.18194%2012.4997L3.68194%2012.4997L3.18194%2012.4997L3.18203%2026.6514L3.68203%2026.6514ZM15.6819%200.499617L15.6819%200.999618L60.5331%200.999616L60.5331%200.499615L60.5331%20-0.000385315L15.6819%20-0.000382774L15.6819%200.499617ZM3.68194%2012.4997L4.18194%2012.4997C4.1819%206.14838%209.33063%200.999618%2015.6819%200.999618L15.6819%200.499617L15.6819%20-0.000382774C8.77834%20-0.00038191%203.18189%205.5961%203.18194%2012.4997L3.68194%2012.4997Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",xa=(e,t,r={})=>({id:e,name:t,role:Array.isArray(r.role)?r.role:r.roleId!==void 0&&r.roleId!==null?[r.roleId]:[],users:Array.isArray(r.users)?r.users:[],workflowType:r.workflowType??"role",canResolve:r.canResolve??"",canReassign:r.canReassign??(Number(e)===1?"No":""),finalLevel:r.finalLevel??"",escalateAfterMinutes:At(r.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 xm(e,t){const r=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(r.find(i=>i.length)??r[0]??[]).map(i=>i&&typeof i=="object"?i.id??i.roleId:i).filter(i=>i!=null),o=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(i=>i&&typeof i=="object"?i.userId??i.id:i).filter(i=>i!=null),l=a.length>0?"role":o.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return xa(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:o,workflowType:l,canResolve:Ma(e.canResolve),canReassign:t===0?"No":Ma(e.canReassign),finalLevel:Ma(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:At(e.escalateAfterMinutes)||""})}function ii(e=[]){return(Array.isArray(e)?e:[]).map(xm)}function ci(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(r=>r&&typeof r=="object"):[])}const Pa=[xa(1,"Level 1")];function di({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Fm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:km,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function ui({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Om,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:Dm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function fi({id:e,selectedTableId:t,onSelect:r,setUpdatePayload:n,registerWorkflowActions:a,roleList:o=[],prefillSteps:l=[],tatTotalMinutes:i=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:u=!1,userList:f=[],onAddBlocked:p}){const w=e!=null,[,b]=y.useState(Pa),[g,m]=y.useState(Pa),[h,v]=y.useState([]),[L,_]=y.useState(w),[M,T]=y.useState(null),[q,R]=y.useState(i),J=y.useRef(null),V=y.useRef(i),G=y.useRef(new Set),[$,Y]=y.useState([]),[I,D]=y.useState(null),j=Q.useDispatch(),H=y.useMemo(()=>{const k=ii(l);return k.length?k:Pa},[l]),E=(()=>{const k=new Set;return[...o,...h,...ci(l)].filter(A=>{const N=String(A?.id??A?.roleId??A?.value);return k.has(N)?!1:(k.add(N),!0)})})();if(!w&&M!==H){const k=Et(H,i);T(H),m(k),b(k)}if(!L&&q!==i){R(i);const k=Et(g,i);k!==g&&m(k)}y.useEffect(()=>{V.current=i},[i]),y.useEffect(()=>{if(!w){const N=Et(H,V.current);n({id:e,tables:N});return}let k=!1;return(async()=>{_(!0);try{const N=await j(We(e)).unwrap(),z=Array.isArray(N?.data)?N.data:Array.isArray(N)?N:[];v(ci(z));const X=ii(z),ae=Et(X.length?X:H,V.current);k||(b(ae),m(ae),n({id:e,tables:ae}))}catch(N){if(!k){const z=Et(H,V.current);b(z),m(z),n({id:e,tables:z}),console.error("Failed to load workflow steps:",N)}}finally{k||_(!1)}})(),()=>{k=!0}},[j,H,w,e,n]),y.useEffect(()=>{L||n?.({id:e,tables:g})},[e,L,n,g]);const x=y.useCallback((k,{preserveLastLevel:A}={})=>{const N=k.map((ae,ue)=>ue===0?{...ae,canReassign:"No"}:ae),z=A?N:Et(N,i),X={id:e,tables:z};return m(z),console.log("[TableCardGrid] updated form values:",z),console.log("[TableCardGrid] PUT payload:",X),n?.(X),X},[e,n,i]);y.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!g.length)return null;const k=g.length-1,A=g.map((N,z)=>z===k?{...N,finalLevel:"Yes"}:N);return x(A,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,n,g,i,x]);const C=k=>{const A=g[g.length-1];return A!=null&&A.id===k},F=(k,A)=>{Object.prototype.hasOwnProperty.call(A,"escalateAfterMinutes")&&G.current.add(k),x(g.map(N=>N.id===k?{...N,...A}:N),{preserveLastLevel:C(k)})},O=(k,A)=>{const N=g.findIndex(ae=>ae.id===k);if(N<0)return;const z=g[N],X=typeof A=="function"?A(z):A;if(X.escalateAfterMinutes!==z.escalateAfterMinutes&&G.current.add(k),N<g.length-1&&z.finalLevel!=="Yes"&&X.finalLevel==="Yes"){D({tableId:k,value:X});return}x(g.map((ae,ue)=>ue===N?X:ae),{preserveLastLevel:C(k)})},W=()=>{if(!I)return;const k=g.findIndex(N=>N.id===I.tableId);if(k<0){D(null);return}const A=g.slice(0,k+1).map((N,z)=>z===k?I.value:N);Y(N=>N.filter(z=>A.some(X=>X.id===z))),x(A),D(null)},Z=k=>{if(g.some(fe=>fe.finalLevel==="Yes"))return;const A=g[g.length-1];if(A){const fe=Da(A,g.length-1);if(Object.values(fe).some(Boolean)){Y(pe=>pe.includes(A.id)?pe:[...pe,A.id]),p?.(`Please fill all required fields of Level ${g.length} before adding a new level.`);return}}p?.("");const N=g.reduce((fe,pe)=>Math.max(fe,Number(pe.id)||0),0)+1,z=g.length+1,X=g[g.length-1],ue=X!=null&&G.current.has(X.id)&&Ie(X.escalateAfterMinutes)>0?g:pp(g);G.current.delete(N),x([...ue,xa(N,k||`Level ${z}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const fe=J.current;fe&&fe.scrollTo({left:fe.scrollWidth,behavior:"smooth"})})})},te=k=>{G.current.delete(k),x(g.filter(A=>A.id!==k))};return L&&!g.length?null:s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:J,children:s.jsxs("div",{className:"ca-table-card-grid__track",children:[g.map((k,A)=>s.jsxs(y.Fragment,{children:[s.jsx(si,{name:k.name,roleList:E,showRoleError:c||u,showEscalationError:d,userList:f,level:A+1,value:k,initialFormValues:k,setFormValues:N=>O(k.id,N),selected:k.id===t,onSelect:()=>r?.(k),onDelete:()=>te(k.id),onChange:N=>F(k.id,N),fieldErrors:u||$.includes(k.id)?Da(k,A):{}}),A<g.length-1?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:A===0?"green":A===1?"orange":"purple"}),s.jsx(ui,{accent:A===0?"green":A===1?"orange":"purple"})]}):null]},k.id)),g.length?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:g.length===1?"green":g.length===2?"orange":"purple"}),s.jsx(ui,{accent:g.length===1?"green":g.length===2?"orange":"purple"})]}):null,s.jsx(ai,{level:g.length+1,onAdd:Z,disabled:g.some(k=>k.finalLevel==="Yes")})]})}),s.jsx(li,{variant:"finalLevelDelete",levelNo:I?g.findIndex(k=>k.id===I.tableId)+1:null,open:!!I,onConfirm:W,onClose:()=>D(null)})]})}function Mm({totalMinutes:e=0,usedMinutes:t=0}){const r=Ie(e),n=Ie(t),a=Math.max(0,r-n),o=At(a)||"0m",l=r>0?Math.min(100,n/r*100):0;return s.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${o} left`,children:[s.jsxs("div",{className:"ca-tat-progress__row",children:[s.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),s.jsxs("span",{className:"ca-tat-progress__remaining",children:[o," left"]})]}),s.jsx("div",{className:"ca-tat-progress__track",children:s.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${l}%`}})})]})}function pi(e){return e?.data??e?.id??e}function hi(e){const t=e&&typeof e=="object"?e.id??e.roleId??e.role_id??e.value:e;return t==null||t===""?null:String(t)}function mi(e){return String(e??"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Pm(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles,e?.userRoles].flatMap(r=>Array.isArray(r)?r:[r]).flatMap(r=>[hi(r),hi(r?.role)]).filter(Boolean)}function Um(e){const t=[e?.role,e?.roles,e?.assignedRoles,e?.userRoles].flatMap(n=>Array.isArray(n)?n:[n]);return[e?.roleName,e?.role_name,...t.flatMap(n=>typeof n=="string"?[n]:[n?.name,n?.roleName,n?.label,n?.role?.name,n?.role?.roleName])].filter(Boolean).map(mi).filter(Boolean)}function $m({onNext:e,stepMeta:t,stepperProps:r,selectedTableCard:n,roleList:a=[],userList:o=[]}){const{state:l,updateWorkflow:i}=dn(),{workflow:c}=l,d=l.categoryRoleIds,u=y.useMemo(()=>{const x=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));return x.size?a.filter(C=>!x.has(String(C.id??C.roleId??C.value))):a},[d,a]),f=y.useMemo(()=>{const x=new Set((Array.isArray(d)?d:[]).filter(F=>F!=null&&F!=="").map(String));if(!x.size)return o;const C=new Set(a.filter(F=>x.has(String(F.id??F.roleId??F.value))).map(F=>mi(F.name??F.roleName??F.label)).filter(Boolean));return o.filter(F=>!Pm(F).some(O=>x.has(O))&&!Um(F).some(O=>C.has(O)))},[d,a,o]),[p,w]=y.useState(null),[b,g]=y.useState(""),[m,h]=y.useState(!1),[v,L]=y.useState(null),_=y.useRef(null),M=y.useCallback(x=>{w(x),g("")},[]),T=y.useCallback(x=>{_.current=x},[]),q=Q.useDispatch();let{id:R}=Q.useSelector(x=>x.appDetails||{});const J=Q.useSelector(x=>x.complaintType?.selected),V=pi(R),G=pi(J?.id??J?._id),$=Ie(J?.tatMinutes??l.tatMinutes);y.useEffect(()=>{V==null||V===""||G!=null&&String(G)===String(V)&&J?.tatMinutes!=null||q(Xe(V))},[q,J?.tatMinutes,G,V]);const Y=y.useMemo(()=>{const x=Array.isArray(p?.tables)?p.tables:[];return fp(x)},[p]),I=n??c.selectedTableCard??null,D=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((x,C)=>`L${C+1}`).join(" > "):"",j=x=>{q(Kr({id:x.id,tables:x,onSuccess:C=>{console.log("updateWorkflowSteps onSuccess:",C),g(""),r.onNext?.()},onFail:C=>{const F=C?.response?.data??C?.payload??C,O=[...new Set(Array.isArray(F?.errors)?F.errors.map(te=>te?.message).filter(Boolean):[])],W=(O.length?O.join(" "):null)??F?.message??F?.error??C?.message??"Failed to update workflow steps",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.");g(up(Z))}}))},H=async()=>{if(g(""),!p){g("Workflow steps are not ready to save.");return}const x=Array.isArray(p.tables)?p.tables:[];if(!x.length){g("Add at least one workflow level before continuing.");return}h(!0);const C=x.map((W,Z)=>Da(W,Z)),F=x.length-1;if(C.some((W,Z)=>Object.entries(W).some(([te,k])=>k&&!(Z===F&&te==="finalLevel")))){g("Please complete all required fields in every workflow level.");return}if(x[F].finalLevel!=="Yes"){L(F+1);return}j(p)},E=()=>{const x=_.current?.setLastLevelFinal?.();if(L(null),!x){g("Unable to update the final workflow level. Please try again.");return}h(!0),j(x)};return s.jsxs(s.Fragment,{children:[s.jsx(yr,{...r,steps:$e,onNext:H,showNextButton:!0}),b?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:b}):null,s.jsx(li,{variant:"finalLevelRequired",levelNo:v,open:v!=null,onConfirm:E,onClose:()=>L(null)}),s.jsx(mr,{title:t.title,description:D,showNext:!1,headerExtra:s.jsx(Mm,{totalMinutes:$,usedMinutes:Y}),children:s.jsx("div",{className:"ca-workflow__main",children:s.jsx(fi,{id:R,selectedTableId:I?.id,onSelect:x=>i({selectedTableCard:x}),setUpdatePayload:M,registerWorkflowActions:T,roleList:u,userList:f,onAddBlocked:g,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(b),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(b),showRequiredErrors:m,prefillSteps:l.prefillWorkflowSteps,tatTotalMinutes:$})})})]})}function gi({onAdd:e,disabled:t=!1}){return s.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const yi=y.createContext(null);function Ua(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function bi(e,t){const r=Ua(t);return String(e??"").replace(/\bstores?\b/gi,()=>r)}function tt(){const e=y.useContext(yi);return{storeName:Ua(e),label:t=>bi(t,e),fieldLabel:t=>{const r=String(t.fieldKey??t.key??"").toLowerCase();return r==="storeid"||r==="storeidcustom"?Ua(e):bi(t.fieldLabel??t.label??t.fieldName??"",e)}}}function Si({size:e=16,color:t="#9CA3AF",...r}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...r,children:[s.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}function $a(e,t){return!t||e.includes(t)?e:[t,...e]}function vi(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}const Bm="#9CA3AF";function wi({field:e,fieldOptions:t=[],fieldTypeOptions:r=[],fieldAccessOptions:n=[],hideForOptions:a=[],isSaving:o=!1,selected:l=!1,isDragging:i=!1,onSelect:c,onDragStartField:d,onDragEndField:u,onReorder:f,onChange:p,onDelete:w,onSave:b,cardRef:g,onOptionNotice:m,hasDuplicateIdentity:h=!1,hasMissingOptions:v=!1}){const[L,_]=y.useState(""),[M,T]=y.useState(null),q=y.useRef(!1),{label:R,fieldLabel:J}=tt(),V=vi(e),[G,$]=y.useState(()=>({id:e.id,signature:e.isNew?null:V}));G.id!==e.id&&$({id:e.id,signature:e.isNew?null:V});const Y=e.lockMode==="all",I=Ue(e),D=Y||e.lockMode==="options",j=Hl(e),H=Y||!j||I,E=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),x=G.signature!==V,C=!!o||!E,F=h||v?"ca-control--invalid":"",O=N=>p?.({...e,...N}),W=()=>{if(H)return;const N=L.trim();if(!N)return;if(ne(e)&&et(N)){const X=(e.options||[]).find(ae=>String(ae).trim().toLowerCase()===N.toLowerCase());if(X){m?.(`${X} already exists in options`),_("");return}}if(e.options?.includes(N))return;const z=ne(e)?{...e.optionColors||{},[N]:e.optionColors?.[N]||Bm}:e.optionColors;O({options:ne(e)?hr([...e.options||[],N]):[...e.options||[],N],...ne(e)?{optionColors:z}:{}}),_("")},Z=N=>{if(H||ne(e)&&et(N))return;const z={...e.optionColors||{}};delete z[N];const X={...e.parentMappings||{}};delete X[N],O({options:e.options.filter(ae=>ae!==N),parentMappings:X,...ne(e)?{optionColors:z}:{}})},te=N=>{H||ne(e)&&et(N)||(q.current=!1,T({original:N,draft:N}))},k=()=>{q.current=!0,T(null)},A=()=>{if(q.current){q.current=!1;return}if(!M)return;const{original:N,draft:z}=M,X=z.trim();if(T(null),!X||X===N)return;if((e.options||[]).some(he=>he!==N&&(he===X||ne(e)&&String(he).trim().toLowerCase()===X.toLowerCase()))){m?.(`${X} already exists in options`);return}const ue=(e.options||[]).map(he=>he===N?X:he),fe={...e.parentMappings||{}};Object.prototype.hasOwnProperty.call(fe,N)&&(fe[X]=fe[N],delete fe[N]);const pe={...e.optionColors||{}};Object.prototype.hasOwnProperty.call(pe,N)&&(pe[X]=pe[N],delete pe[N]),O({options:ne(e)?hr(ue):ue,parentMappings:fe,optionColors:pe})};return s.jsxs("article",{ref:g,className:`ca-form-card${l?" ca-form-card--selected":""}${i?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver:N=>{I||(N.preventDefault(),N.dataTransfer.dropEffect="move")},onDrop:N=>{if(I){u?.();return}N.preventDefault();const z=N.dataTransfer.getData("text/plain");f?.(z,e.id),u?.()},children:[s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--order",children:[I?s.jsx("span",{"aria-hidden":"true",style:{display:"inline-block",width:15,height:15}}):s.jsx("span",{className:"ca-form-card__drag",draggable:!0,"aria-label":"Reorder field",onClick:N=>N.stopPropagation(),onDragStart:N=>{N.dataTransfer.setData("text/plain",String(e.id)),N.dataTransfer.effectAllowed="move",d?.()},onDragEnd:()=>u?.(),children:s.jsx(Si,{size:15,color:"currentColor"})}),s.jsxs("div",{className:"ca-form-card__actions",children:[s.jsx("button",{type:"button",className:"ca-form-card__save","aria-label":"Save form field",disabled:C||Y||!x,onClick:async N=>{if(N.stopPropagation(),C||Y||!x)return;const z=await b?.(e);z&&$({id:e.id,signature:vi(z)})},children:"Save"}),Ue(e)?null:s.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:N=>{N.stopPropagation(),w?.(e.id)},children:s.jsx(Rr,{size:15,color:"currentColor"})})]})]}),s.jsx("div",{className:"ca-form-card__row",children:D?s.jsx("span",{className:"ca-form-card__static",children:J(e)||"—"}):s.jsx(Ot,{value:Y?J(e):e.fieldLabel,placeholder:"Enter field label",disabled:D,className:F,onChange:N=>O({fieldLabel:N.target.value})})}),s.jsx("div",{className:"ca-form-card__row",children:D?s.jsx("span",{className:"ca-form-card__static",children:e.fieldType||"—"}):s.jsx(Ke,{value:e.fieldType,options:$a(r,e.fieldType),placeholder:"Select type",maxVisible:5,disabled:D,className:F,onChange:N=>{const z=N.target.value;if(Hl({...e,fieldType:z})){O({fieldType:z,dependsOn:"",parentMappings:{}});return}O({fieldType:z,dependsOn:"",options:[],parentMappings:{},optionColors:{}})}})}),s.jsx("div",{className:"ca-form-card__row ca-form-card__row--toggle",children:s.jsx(Qr,{checked:!!e.required,disabled:D,onChange:N=>O({required:N}),"aria-label":"Required"})}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.fieldAccess,options:$a(n,e.fieldAccess),placeholder:"Select access",disabled:D,allowClear:!0,onChange:N=>O({fieldAccess:N.target.value})})}),s.jsxs("div",{className:"ca-form-card__row",children:[s.jsx(Ke,{value:"",options:a.filter(N=>!e.hideFor?.includes(N)),placeholder:"Select level",disabled:D,onChange:N=>O({hideFor:[...e.hideFor||[],N.target.value]})}),e.hideFor?.length?s.jsx("div",{className:"ca-form-card__chips",children:e.hideFor.map(N=>s.jsxs("span",{className:"ca-form-card__chip",children:[N,s.jsx("button",{type:"button","aria-label":`Remove ${N}`,disabled:D,onClick:()=>O({hideFor:e.hideFor.filter(z=>z!==N)}),children:"×"})]},N))}):null]}),s.jsx("div",{className:"ca-form-card__row",children:s.jsx(Ke,{value:e.dependsOn,options:$a(t,e.dependsOn).map(N=>({value:N,label:R(N)})),placeholder:"Select field label",disabled:D||!j,allowClear:!0,onChange:N=>{const z=N.target.value;if(!z){O({dependsOn:"",parentMappings:{}});return}O({dependsOn:z})}})}),s.jsxs("div",{className:"ca-form-card__row ca-form-card__row--options",children:[s.jsxs("div",{className:"ca-form-card__option-entry",children:[s.jsx(Ot,{value:L,placeholder:"Enter option",disabled:H,className:v?"ca-control--invalid":"",onChange:N=>_(N.target.value),onKeyDown:N=>{N.key==="Enter"&&(N.preventDefault(),W())}}),s.jsx("button",{type:"button",className:"ca-form-card__add-option","aria-label":"Add option",disabled:H,onClick:W,children:"+"})]}),s.jsx("div",{className:"ca-form-card__chips",children:(j?ne(e)?hr(e.options||[]):e.options||[]:[]).map(N=>{const z=ne(e)&&et(N),X=M?.original===N;return s.jsxs("span",{className:`ca-form-card__chip${z?" ca-form-card__chip--locked":""}`,children:[X?s.jsx("input",{autoFocus:!0,value:M.draft,onChange:ae=>T({original:N,draft:ae.target.value}),onBlur:A,onClick:ae=>ae.stopPropagation(),onKeyDown:ae=>{ae.key==="Enter"?(ae.preventDefault(),A()):ae.key==="Escape"&&(ae.preventDefault(),k())},"aria-label":`Edit ${N}`,style:{width:`${Math.max(M.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):s.jsx("span",{role:z||H?void 0:"button",tabIndex:z||H?void 0:0,title:z||H?void 0:"Click to edit",style:z||H?void 0:{cursor:"text"},onClick:()=>te(N),onKeyDown:ae=>{ae.key==="Enter"&&te(N)},children:ne(e)?sn(N):N}),z?null:s.jsx("button",{type:"button","aria-label":`Remove ${N}`,disabled:H,onClick:()=>Z(N),children:"×"})]},N)})})]})]})}function Ba({option:e,onDelete:t,locked:r=!1}){return s.jsx("td",{children:r?null:s.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:s.jsx(om,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function jm(e){const t=String(e||"").trim();return/^#[0-9A-Fa-f]{6}$/.test(t)?t.toUpperCase():/^#[0-9A-Fa-f]{3}$/.test(t)?`#${t[1]}${t[1]}${t[2]}${t[2]}${t[3]}${t[3]}`.toUpperCase():"#000000"}function qm({formFields:e=[],selectedField:t=null,onChange:r}){const n=t,{fieldLabel:a}=tt(),o=_=>ne(n)?sn(_):_,l=ne(n)?n:null,i=y.useMemo(()=>{const _=String(n?.dependsOn||"").trim();if(!_)return null;const M=e.filter(T=>String(T.fieldLabel||"").trim()===_);return M.find(T=>(T.options||[]).some(q=>String(q||"").trim()))||M[0]||null},[n?.dependsOn,e]),c=i?.options||[],d=!!n?.dependsOn,[u,f]=y.useState(!1),p=(_,M)=>{if(!l)return;const T=/^#[0-9A-Fa-f]{6}$/.test(M)?M.toUpperCase():M;r?.(e.map(q=>q.id===l.id?{...q,optionColors:{...q.optionColors,[_]:T}}:q))},w=(_,M)=>{n&&r?.(e.map(T=>T.id===n.id?{...T,parentMappings:{...T.parentMappings||{},[_]:M}}:T))},b=_=>{if(!n||ne(n)&&et(_))return;const M={...n.optionColors||{}};delete M[_];const T={...n.parentMappings||{}};delete T[_],r?.(e.map(q=>q.id===n.id?{...q,options:(q.options||[]).filter(R=>R!==_),parentMappings:T,...ne(q)?{optionColors:M}:{}}:q))},g=n&&a(n)||"Select field",m=gm(n,d),h=ne(n)?hr(n?.options||[]):n?.options||[],v=(_,M)=>s.jsx("div",{className:"field-options-panel__table-wrap",children:s.jsxs("table",{className:"field-options-panel__table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[_.map(T=>s.jsx("th",{scope:"col",children:T},T)),s.jsx("th",{scope:"col","aria-label":"Delete"})]})}),s.jsx("tbody",{children:M})]})});let L=s.jsx("p",{className:"field-options-panel__empty",children:n?"No options added.":"Select a field to edit."});return d?L=h.length?v(["Option label",i?a(i):"Parent"],h.map(_=>s.jsxs("tr",{children:[s.jsx("td",{children:o(_)}),s.jsx("td",{children:s.jsxs("select",{"aria-label":`Parent for ${_}`,value:n.parentMappings?.[_]||"",disabled:!c.length,onChange:M=>w(_,M.target.value),children:[s.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(n.dependsOn||"parent").toLowerCase()} options`}),c.map(M=>s.jsx("option",{value:M,children:M},M))]})}),s.jsx(Ba,{option:_,onDelete:b,locked:ne(n)&&et(_)})]},_))):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):l?L=h.length?v([ne(l)?"Status":"Option","Colors"],h.map(_=>{const M=jm(l.optionColors?.[_]);return s.jsxs("tr",{children:[s.jsx("td",{children:o(_)}),s.jsx("td",{children:s.jsxs("div",{className:"field-options-panel__color",children:[s.jsx("input",{className:"field-options-panel__hex","aria-label":`Color for ${_}`,value:l.optionColors?.[_]||M,onChange:T=>p(_,T.target.value)}),s.jsx("label",{className:"field-options-panel__swatch",style:{background:M},title:M,children:s.jsx("input",{type:"color","aria-label":`Pick color for ${_}`,value:M,onChange:T=>p(_,T.target.value)})})]})}),s.jsx(Ba,{option:_,onDelete:b,locked:ne(l)&&et(_)})]},_)})):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):h.length&&(L=v([mm(n)],h.map(_=>s.jsxs("tr",{children:[s.jsx("td",{children:o(_)}),s.jsx(Ba,{option:_,onDelete:b,locked:ne(n)&&et(_)})]},_)))),s.jsxs("aside",{className:`field-options-panel${u?" is-open":""}${n?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${g}`,children:[s.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":u,"aria-controls":"field-options-panel-body",onClick:()=>f(_=>!_),children:[s.jsxs("span",{className:"field-options-panel__summary-text",children:[s.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",g]}),m?s.jsx("span",{className:"field-options-panel__description",children:m}):null]}),s.jsx(fr,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:L})]})}function Vm(e,t=[]){const r=new Set,n=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||ne(a))return;const o=String(a.fieldLabel||a.label||"").trim();if(!o)return;const l=o.toLowerCase();r.has(l)||!(a?.options||[]).some(c=>String(c||"").trim())||(r.add(l),n.push(o))}),n}const Wm=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function zm(e,t){return{...e,id:e.id??`${Date.now()}-${t}`,order:t+1,fieldLabel:e.fieldLabel??e.name??"",fieldType:e.fieldType??e.typeLabel??"Custom",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:e.hideFor??[],dependsOn:e.dependsOn??"",options:e.options??[],parentMappings:e.parentMappings??{},optionColors:e.optionColors??{},lockMode:e.lockMode,isNew:!!e.isNew}}function Pt(e=[]){const t=e.map(zm);return t.map(r=>cn(r,t))}function Ci({initialFields:e,onChange:t,addExternalFieldRef:r,fieldTypeOptions:n=[],fieldAccessOptions:a=[],hideForOptions:o=[],onSave:l,onDelete:i}){const[c,d]=y.useState(()=>Pt(e??[])),[u,f]=y.useState(null),[p,w]=y.useState(null),[b,g]=y.useState(""),m=y.useRef(""),h=y.useRef(null),v=y.useRef({}),L=D=>{const j=Pt(D);d(j),t?.(j)},_=(e??[]).map(D=>D.id).join(",");y.useEffect(()=>{if(!b)return;const D=window.setTimeout(()=>g(""),3200);return()=>window.clearTimeout(D)},[b]),y.useEffect(()=>{!_||_===m.current||(m.current=_,d(Pt(e)))},[_,e]),y.useEffect(()=>{if(r)return r.current=D=>{D&&d(j=>{const H=j.find(C=>on(D,[C]));if(ln(j)||H)return H&&f(H.id),j;if(Dt(j))return j;const E=Pt([...j,{...D,id:`${D.id}-${Date.now()}`,isNew:!0}]),x=E[E.length-1];return f(x.id),t?.(E),E})},()=>{r.current=null}},[r,t]),y.useEffect(()=>{if(u==null)return;const D=h.current,j=v.current[u];if(!D||!j)return;const H=requestAnimationFrame(()=>{const E=D.getBoundingClientRect(),x=j.getBoundingClientRect(),C=12;x.left>=E.left+C&&x.right<=E.right-C||D.scrollTo({left:D.scrollLeft+x.left-E.left-(E.width-x.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(H)},[u,c]);const M=(D,j)=>{if(D==null||j==null||String(D)===String(j))return;const H=c.findIndex(O=>String(O.id)===String(D)),E=c.findIndex(O=>String(O.id)===String(j));if(H<0||E<0||Ue(c[H])||Ue(c[E]))return;const x=c.findIndex(Ue),C=[...c],[F]=C.splice(H,1);if(C.splice(E,0,F),x>=0){const O=C.findIndex(Ue);if(O!==x){const[W]=C.splice(O,1);C.splice(x,0,W)}}L(C.map((O,W)=>({...O,order:W+1})))},T=D=>{const j=c.find(Z=>Z.id===D.id),H=j&&j.fieldType!==D.fieldType;D.dependsOn&&D.dependsOn!==j?.dependsOn&&f(D.id);const E=String(j?.fieldLabel||"").trim(),x=j?.options||[],C=D.options||[],F=x.filter(Z=>!C.includes(Z)),O=C.filter(Z=>!x.includes(Z)),W=x.length===C.length&&F.length===1&&O.length===1?{from:F[0],to:O[0]}:null;L(c.map(Z=>{if(Z.id===D.id)return D;if(H&&E&&String(Z.dependsOn||"").trim()===E)return{...Z,dependsOn:"",parentMappings:{}};if(W&&E&&String(Z.dependsOn||"").trim()===E){const te=Object.fromEntries(Object.entries(Z.parentMappings||{}).map(([k,A])=>[k,A===W.from?W.to:A]));return{...Z,parentMappings:te}}return Z}))},q=async D=>{const j=c.find(H=>H.id===D);if(!(!j||Ue(j)))try{if(await i?.(j)===!1)return;const E=String(j.fieldLabel||"").trim();L(c.filter(x=>x.id!==D).map((x,C)=>E&&String(x.dependsOn||"").trim()===E?{...x,dependsOn:"",parentMappings:{},order:C+1}:{...x,order:C+1}))}catch{}},R=()=>{ln(c)||Dt(c)||L(Pt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:n[0]??"",options:[],isNew:!0}]))},J=async D=>{if(on(D,c))return null;try{const j=await l?.(D);return j?(d(H=>{const E=Pt(H.map(x=>x.id===D.id?{...j,isNew:!1,order:x.order||1}:x));return t?.(E),E}),j):null}catch{return null}},V=ln(c),G=Dt(c),$=V?"A field with this label and type already exists":"",Y=Kl(c),I=c.find(D=>D.id===u)||null;return s.jsxs(s.Fragment,{children:[$||Y||b?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:$||Y||b}):null,s.jsxs("div",{className:"ca-form-card-grid__container ",children:[s.jsxs("div",{className:"ca-form-card-grid",children:[s.jsx("div",{className:"ca-form-card-grid__labels",children:Wm.map(D=>s.jsx("div",{className:"ca-form-card-grid__label",children:D},D))}),s.jsxs("div",{className:"ca-form-card-grid__cards",ref:h,children:[c.map(D=>s.jsx(wi,{field:D,fieldOptions:Vm(D,c),fieldTypeOptions:n,fieldAccessOptions:a,hideForOptions:o,selected:I?.id===D.id,isDragging:String(p)===String(D.id),cardRef:j=>{j?v.current[D.id]=j:delete v.current[D.id]},onSelect:()=>f(D.id),onDragStartField:()=>w(D.id),onDragEndField:()=>w(null),onReorder:M,onChange:T,onDelete:q,onSave:J,onOptionNotice:g,hasDuplicateIdentity:on(D,c),hasMissingOptions:Ca(D)},D.id)),s.jsx(gi,{onAdd:R,disabled:V||G})]})]}),s.jsx(qm,{formFields:c,selectedField:I,onChange:L})]})]})}const _i={department:jl,priorities:nm,status:rn,statuses:rn,statusCustom:rn,Status:rn,storeId:Vl,storeIdCustom:Vl};function Hm({fields:e=[],onAddField:t,disableAdd:r=!1,disableAddHint:n="Resolve duplicate field first"}){const[a,o]=y.useState(!1),{fieldLabel:l}=tt();return s.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[s.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>o(i=>!i),children:[s.jsxs("span",{className:"custom-field-table__summary-text",children:[s.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),s.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),s.jsx(fr,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(i=>{const c=l(i),d=_i[i.fieldKey]||_i[i.id]||jl;return s.jsxs("div",{className:"custom-field-table__row",children:[s.jsx(d,{className:"custom-field-table__field-icon",size:14,strokeWidth:1.5,"aria-hidden":"true"}),s.jsx("span",{className:"custom-field-table__label",children:c}),s.jsx("button",{className:"custom-field-table__add",type:"button","aria-label":`Add ${c}`,title:r?n:`Add ${c}`,disabled:r,onClick:()=>{r||t?.(i)},children:s.jsx(ql,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},i.fieldKey??i.id)})}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const Ni={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},Ai={BOTH:"Both",USER:"User",ADMIN:"Admin"},Km={...Object.fromEntries(Object.entries(Ni).map(([e,t])=>[t,e])),Select:"SELECT",Dropdown:"SELECT",Radio:"RADIO",Images:"FILE",Time:"DATETIME","Text Area":"TEXTAREA","Date Time":"DATETIME"},Ym={...Object.fromEntries(Object.entries(Ai).map(([e,t])=>[t,e])),Both:"BOTH",User:"USER",Admin:"ADMIN"};function Ut(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(r=>r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join(""):""}function Gm(e,t){const r=Ut(e),n=Ut(t);return r?n?r+n.charAt(0).toUpperCase()+n.slice(1):r:""}function pn(e,t){return ne({...e,fieldLabel:t})?Ut(t)||"status":Re({...e,fieldLabel:t})?"storeIdCustom":Gm(t,e.fieldType)}function br(e){const t=e?.data??e?.id??e;if(t==null||t==="")return null;const r=String(t).trim();return!r||r==="null"||r==="undefined"?null:r}function Jm(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function ja(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function Zm(e=[]){const t=ne(e)?hr(e.options||[]):e.options||[];if(!t.length)return null;const r=e.parentMappings||{},n=e.optionColors||{},a=!!e.dependsOn||t.some(o=>r[o]);return ne(e)?{values:t.map((o,l)=>{const i={name:o,displayOrder:l+1,isActive:!0,isDefault:pm(o)};return n[o]&&(i.color=n[o]),i})}:a?{values:t.map(o=>{const l={label:o};return r[o]&&(l.dependsOnValue=r[o]),l})}:{values:t}}function Xm(e,t=[],r=[]){const n=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&n===String(e.originalFieldName).trim(),o=t.find(w=>String(w.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),l=pn(e,n)||(a?e.fieldKey:""),i=o?pn(o,o.fieldLabel)||o.fieldKey:"",c=eg(e,r),d=Zm(e),u=Km[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=Ym[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:n,fieldKey:l,fieldType:u,required:!!e.required,displayOrder:Number(e.order)||1,fieldAccess:f,isActive:e.isActive!==!1};return c!=null&&c!==""&&(p.hideForWorkflowStepId=c),d?.values?.length&&(p.options=d),i&&i!==l&&(p.dependsOnFieldKey=i),p}function Ei(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}function Li(e,t){return Ei(e)!==Ei(t)}function Qm(e=[],t=e,r=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,o)=>Xm({...a,order:a.order||o+1},t,r))}}function Rm(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function hn(e){return e==null?null:typeof e=="string"?e:e.levelNo!=null&&e.levelNo!==""?`Level ${e.levelNo}`:e.name??e.label??e.title??null}function Ti(e,t=[]){if(!e)return null;const r=hn(e);if(r)return r;const n=typeof e=="object"?e.id??e.workflowStepId:null;if(n==null)return null;const a=t.find(o=>String(o.id)===String(n));return hn(a)}function eg(e,t=[]){const r=Array.isArray(e.hideFor)?e.hideFor:[];if(!r.length)return null;for(const o of r){const l=t.find(i=>hn(i)===o||String(i.id)===String(o));if(l?.id!=null)return l.id}const n=e.hideForWorkflowStepId;return n==null||n===""?null:t.some(o=>String(o.id)===String(n))?n:null}function Ii(e){return[...new Set(e.filter(Boolean))]}function mn(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function tg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function rg(e,t=[]){if(!e)return"";const r=t.map(mn).filter(Boolean),n=r.find(o=>o===e);return n||r.find(o=>Ut(o)===e||Ut(o)===Ut(e))||e}function ng(e){return e&&typeof e=="object"&&e.color?e.color:""}function it(e=[],t=[]){const r=[...e].sort((n,a)=>(n.displayOrder??0)-(a.displayOrder??0));return xt(r.map(n=>{const a=n?.options?.values??[],o=r.find(i=>i.id===n.dependsOnFieldId||n.dependsOnFieldKey&&i.fieldKey===n.dependsOnFieldKey),l=t.find(i=>String(i.id)===String(n.hideForWorkflowStepId));return{id:n.id,order:n.displayOrder,fieldLabel:n.fieldName??n.fieldLabel??"",fieldType:_a(n.fieldType,Ni,n.fieldKey),required:!!n.required,fieldAccess:Ai[n.fieldAccess]??n.fieldAccess??"",hideFor:Ii([...Array.isArray(n.hideFor)?n.hideFor:[],Ti(n.hideForWorkflowStep,t),Ti(l,t)]),dependsOn:n.dependsOnField?.fieldName??o?.fieldName??n.dependsOn??"",options:a.map(mn).filter(Boolean),parentMappings:Object.fromEntries(a.map(i=>{const c=mn(i),d=tg(i);return!c||!d?null:[c,rg(d,o?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(i=>[mn(i),ng(i)]).filter(([i,c])=>i&&c)),fieldKey:n.fieldKey,originalFieldName:n.fieldName??n.fieldLabel??"",dependsOnFieldId:n.dependsOnFieldId??null,hideForWorkflowStepId:n.hideForWorkflowStepId??null,isActive:n.isActive!==!1,label:n.fieldName??n.fieldLabel??""}}))}function ag({stepMeta:e,stepperProps:t}){const r=Q.useDispatch(),{systemId:n}=mt(),a=Q.useSelector(O=>O.appDetails?.id),o=br(a)??br(n),{state:l,update:i}=dn(),{formFields:c,prefillFormFields:d=[]}=l,u=y.useRef(null),f=y.useCallback(O=>i({formFields:O}),[i]),p=y.useCallback(async O=>{const W=String(O.fieldLabel||"").trim();return W?{...O,fieldLabel:W,fieldKey:pn(O,W),originalFieldName:W,isNew:!1}:null},[]),w=y.useCallback(async O=>Ue(O)?!1:(ja(O)&&await r(rr({complaintTypeId:o,fieldId:O.id})).unwrap(),!0),[o,r]),b=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.data),g=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.isLoading),m=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.error),h=Q.useSelector(O=>O.workflow?.workflowSteps),v=y.useMemo(()=>Rm(h),[h]),L=y.useRef(v),[_,M]=y.useState(!1);y.useEffect(()=>{L.current=v},[v]),y.useEffect(()=>{const O=br(o);O!=null&&r(We(O))},[o,r]),y.useEffect(()=>{const O=br(o);if(O==null)return;let W=!1;return r(De(O)).unwrap().then(Z=>{if(W)return;const te=Array.isArray(Z)?Z:Z?.data;if(!(Array.isArray(te)&&te.length>0)&&d.length){const A=it(d,L.current).map((N,z)=>({...N,id:`prefill-${z}`,isNew:!1}));i({formFields:xt(A)})}else{const A=xt(it(Array.isArray(te)?te:[],L.current));i({formFields:A})}M(!0)}).catch(()=>{if(!W){if(d.length){const Z=it(d,L.current).map((te,k)=>({...te,id:`prefill-${k}`,isNew:!1}));i({formFields:xt(Z)})}M(!0)}}),()=>{W=!0}},[o,r,d,i]);const T=y.useMemo(()=>xt(it(b,v)),[b,v]),R=br(o)==null||_,J=R?c:T,V=y.useMemo(()=>um.filter(O=>!J.some(W=>O.fieldKey&&W.fieldKey===O.fieldKey||ne(O)&&ne(W)||an(O)&&an(W)||Re(O)&&Re(W))),[J]),G=y.useMemo(()=>ln(J),[J]),$=y.useMemo(()=>Dt(J),[J]),Y=Jm(m),I=im,D=cm,j=y.useMemo(()=>{const O=[...v].sort((Z,te)=>(Z.levelNo??0)-(te.levelNo??0)).map(Z=>hn(Z)).filter(Boolean),W=T.flatMap(Z=>Z.hideFor);return Ii([...O,...W])},[T,v]),H=y.useMemo(()=>{const O=new Map(it(b,v).map(W=>[Number(W.id),W]));return J.filter(W=>{if(W.isNew&&String(W.fieldLabel||"").trim())return!0;if(!ja(W))return!1;const Z=O.get(Number(W.id));return!Z||Li(W,Z)})},[b,J,v]),[E,x]=y.useState(!1),C=y.useCallback(async O=>{if(!Dt(J)&&o)try{const Z=J.map(X=>{if(!O||!X.isNew)return X;const ae=String(X.fieldLabel||"").trim();return ae?{...X,fieldLabel:ae,fieldKey:pn(X,ae),originalFieldName:ae,isNew:!1}:X}).filter(X=>!X.isNew&&String(X.fieldLabel||"").trim()),te=new Map(it(b,v).map(X=>[Number(X.id),X]));if(!Z.some(X=>{if(!ja(X))return!0;const ae=te.get(Number(X.id));return!ae||Li(X,ae)})){t.onNext?.();return}const A=[...Z].sort((X,ae)=>+!!X.dependsOn-+!!ae.dependsOn);await r(tr({complaintTypeId:o,data:Qm(A,A,v)})).unwrap();const N=await r(De(o)).unwrap(),z=Array.isArray(N)?N:N?.data;i({formFields:xt(it(Array.isArray(z)?z:[],v))}),t.onNext?.()}catch{}},[b,o,r,J,t,i,v]),F=y.useCallback(()=>{if(!Dt(J)){if(H.length){x(!0);return}C(!1)}},[J,H.length,C]);return s.jsxs(s.Fragment,{children:[s.jsx(yr,{...t,steps:$e,onNext:F}),E?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[s.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:()=>{x(!1),C(!1)},children:"OK"}),s.jsx(ye,{onClick:()=>{x(!1),C(!0)},children:"Save"})]})]})}):null,s.jsx(mr,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!R||g?s.jsx(ze,{text:"Loading form fields"}):Y&&!J.length?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:Y}):s.jsxs("div",{className:"ca-form-fields",children:[Y?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:Y}):null,s.jsx(Hm,{fields:V,disableAdd:G||$,disableAddHint:G?"Resolve duplicate field first":$?Kl(J):void 0,onAddField:O=>u.current?.({...O})}),s.jsx("div",{className:"ca-settings-card__divider"}),s.jsx(Ci,{initialFields:J,addExternalFieldRef:u,onChange:f,fieldTypeOptions:I,fieldAccessOptions:D,hideForOptions:j,onSave:p,onDelete:w})]})})]})}function Fi({label:e="Active",checked:t,onChange:r,disabled:n=!1,className:a=""}){return s.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[s.jsx(il,{children:e}),s.jsx(Qr,{checked:t,onChange:r,disabled:n,"aria-label":e})]})}function ki({storeList:e=[],value:t,onChange:r,...n}){const{label:a}=tt();return s.jsxs("select",{...n,className:"review-control",value:t??"",onChange:o=>r(o.target.value),children:[s.jsx("option",{value:"",children:a("Select Store")}),e.map(o=>s.jsx("option",{value:o.id,children:o.name??o.label??String(o.id)},o.id))]})}const sg=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function qa(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function og(e){return e?e.type&&e.type.startsWith("image/")?!0:sg.test(e.name||""):!1}function lg(e){return`${e.name}-${e.size}-${e.lastModified}`}function gn({id:e,name:t,value:r,onChange:n,multiple:a=!1,required:o=!1,disabled:l=!1,accept:i}){const c=qa(r,a),d=y.useMemo(()=>qa(r,a).map((u,f)=>{const p=og(u);return{key:`${lg(u)}-${f}`,name:u.name,isImage:p,url:p?URL.createObjectURL(u):""}}),[r,a]);return y.useEffect(()=>()=>{d.forEach(u=>{u.url&&URL.revokeObjectURL(u.url)})},[d]),s.jsxs("div",{className:"review-file-field",children:[s.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:i,multiple:a,required:!!o&&c.length===0,disabled:l,onChange:u=>{const f=Array.from(u.target.files||[]);if(!a){n(f[0]||"");return}const p=qa(r,!0);n([...p,...f]),u.target.value=""}}),d.length?s.jsx("div",{className:"review-file-preview",children:s.jsx("div",{className:"review-file-preview__images",children:d.map((u,f)=>s.jsxs("div",{className:"review-file-preview__item",children:[u.isImage?s.jsx("img",{className:"review-file-preview__thumb",src:u.url,alt:u.name,title:u.name}):s.jsx("span",{className:"review-file-preview__name",children:u.name}),s.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${u.name}`,onClick:()=>{n(a?c.filter((p,w)=>w!==f):"")},children:"×"})]},u.key))})}):null]})}const ig=new Set(["select","radio","checkbox"]);function Oi(e){return String(e||"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"")}function ct(e){return String(e.label||e.fieldLabel||e.fieldName||e.name||"").trim()}function Va(e){return`review-${e.id??e.fieldKey??(Oi(ct(e))||"field")}`}function Di(e,t,r){return r===0?e:`${e}-${Oi(t)||r}`}function Wa(e){const t=String(e.fieldType||"").toLowerCase(),r=String(e.fieldKey||ct(e)||"").toLowerCase();return t==="file"?"file":t==="images"?"images":t==="email"||r.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 xi(e){return ig.has(e)}function cg(e){return e==="textarea"||e==="radio"||e==="checkbox"}function dg(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function Mi(e){return String(e||"").replace(/\d/g,"")}function Pi(e){return String(e||"").replace(/[^\d]/g,"")}function Sr(e,t){const r=String(ct(e)||"value").toLowerCase();return t==="date"?"mm/dd/yyyy":t==="select"?`Select ${r}`:t==="email"?"Enter email":`Enter ${r}`}function vr(e){return String(e.fieldKey||e.id||ct(e)||Va(e))}function Ui(e,t=[]){const r=String(e.dependsOn||"").trim();return r&&t.find(n=>{const a=ct(n),o=String(n.fieldKey||"");return a===r||o===r})||null}function $i(e,t=[],r={}){const n=e.options||[],a=Ui(e,t);if(!a)return n;const o=e.parentMappings||{};if(!n.some(c=>!!o[c]))return n;const i=String(r[vr(a)]||"").trim();return i?n.filter(c=>String(o[c]||"")===i):n}function Bi(e){return e==="checkbox"||e==="images"?[]:""}function ug({question:e,options:t,value:r,onChange:n,storeList:a}){const o=Va(e),l=Wa(e),i=r??Bi(l),c={id:o,name:String(e.fieldKey||ct(e)||o),required:!!e.required};if(Re(e)&&Array.isArray(a))return s.jsx(ki,{...c,storeList:a,value:i,onChange:n});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:t.map((d,u)=>{const f=Di(o,d,u);return s.jsxs("label",{className:"review-option",htmlFor:f,children:[s.jsx("input",{...c,id:f,type:"radio",value:d,checked:i===d,onChange:p=>n(p.target.value)}),s.jsx("span",{children:d})]},d)})});if(l==="checkbox"){const d=Array.isArray(i)?i:[];return s.jsx("div",{className:"review-options review-options--inline",children:t.map((u,f)=>{const p=Di(o,u,f);return s.jsxs("label",{className:"review-option",htmlFor:p,children:[s.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:u,checked:d.includes(u),required:!1,onChange:w=>n(w.target.checked?[...d,u]:d.filter(b=>b!==u))}),s.jsx("span",{children:u})]},u)})})}return l==="textarea"?s.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:Sr(e,l),value:i,onChange:d=>n(d.target.value)}):l==="select"?s.jsxs("select",{...c,className:"review-control",value:i,onChange:d=>n(d.target.value),children:[s.jsx("option",{value:"",children:Sr(e,l)}),t.map(d=>s.jsx("option",{value:d,children:d},d))]}):l==="file"?s.jsx(gn,{...c,value:i,onChange:n,multiple:!0}):l==="images"?s.jsx(gn,{...c,value:i,onChange:n,multiple:!0}):l==="number"?s.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:Sr(e,l),value:i,onChange:d=>n(Pi(d.target.value)),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault(),d.key.length===1&&!/\d/.test(d.key)&&!d.ctrlKey&&!d.metaKey&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/^\d*$/.test(u)||(d.preventDefault(),n(Pi(u)))}}):dg(e)?s.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:Sr(e,l),value:i,onChange:d=>n(Mi(d.target.value)),onKeyDown:d=>{/^\d$/.test(d.key)&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/\d/.test(u)&&(d.preventDefault(),n(Mi(u)))}}):s.jsx("input",{...c,className:"review-control",type:l,placeholder:Sr(e,l),value:i,onChange:d=>n(d.target.value)})}function fg({fields:e=[],storeList:t}){const{fieldLabel:r}=tt(),[n,a]=y.useState({}),o=(l,i)=>{const c=vr(l);a(d=>{const u={...d,[c]:i};return e.forEach(f=>{const p=Ui(f,e);if(!p||vr(p)!==c)return;const w=Wa(f);if(!xi(w))return;const b=$i(f,e,u),g=vr(f),m=u[g];Array.isArray(m)?u[g]=m.filter(h=>b.includes(h)):m&&!b.includes(m)&&(u[g]="")}),u})};return e.length?s.jsx("div",{className:"review-form-card",children:s.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:l=>l.preventDefault(),children:s.jsx("div",{className:"review-form-grid",children:e.map(l=>{const i=Wa(l),c=Va(l),d=xi(i)?$i(l,e,n):[];return s.jsxs("div",{className:`review-question${cg(i)?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:c,children:[r(l)||"Untitled field",l.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(ug,{storeList:t,question:l,options:d,value:n[vr(l)]??Bi(i),onChange:u=>o(l,u)})]},l.id??l.fieldKey??ct(l))})})})}):s.jsx("p",{className:"review-empty",children:"No form fields added"})}const pg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},hg={BOTH:"Both",USER:"User",ADMIN:"Admin"};function mg(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function gg(e){return[...new Set(e.filter(Boolean))]}function za(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ha(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(r=>r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join(""):""}function yg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function bg(e,t=[]){if(!e)return"";const r=t.map(za).filter(Boolean),n=r.find(o=>o===e);return n||r.find(o=>Ha(o)===e||Ha(o)===Ha(e))||e}function Sg(e=[]){const t=[...e].sort((r,n)=>(r.displayOrder??0)-(n.displayOrder??0));return t.map(r=>{const n=r?.options?.values??[],a=t.find(o=>o.id===r.dependsOnFieldId||r.dependsOnFieldKey&&o.fieldKey===r.dependsOnFieldKey);return{id:r.id,label:r.fieldName??r.fieldLabel??r.label??"",fieldLabel:r.fieldName??r.fieldLabel??r.label??"",fieldKey:r.fieldKey,fieldType:_a(r.fieldType,pg,r.fieldKey),required:!!r.required,fieldAccess:hg[r.fieldAccess]??r.fieldAccess??"",hideFor:gg([...Array.isArray(r.hideFor)?r.hideFor:[],mg(r.hideForWorkflowStep)]),dependsOn:r.dependsOnField?.fieldName??a?.fieldName??r.dependsOn??"",options:n.map(za).filter(Boolean),parentMappings:Object.fromEntries(n.map(o=>{const l=za(o),i=yg(o);return!l||!i?null:[l,bg(i,a?.options?.values??[])]}).filter(Boolean))}})}function vg({onPublish:e,stepMeta:t,stepperProps:r,storeList:n}){const a=Q.useDispatch(),o=Q.useSelector(T=>T.appDetails?.id),l=Q.useSelector(T=>T.complaintAppComplaint.formFields.data),i=Q.useSelector(T=>T.complaintAppComplaint.formFields.isLoading),c=Q.useSelector(T=>T.complaintAppComplaint.formFields.error),d=Q.useSelector(T=>T.createComplaint?.isActive),u=Q.useSelector(T=>T.createComplaint?.activeComplaintTypeId),f=Q.useSelector(T=>T.createComplaint?.isUpdatingActive),p=Q.useSelector(T=>T.createComplaint?.activeError),w=Q.useSelector(T=>T.complaintType?.selected),b=Q.useSelector(T=>T.complaintType?.complaintList??[]),g=Q.useSelector(T=>T.appDetails?.details?.currentUser),m=y.useMemo(()=>Sg(l),[l]),h=y.useMemo(()=>o==null?null:w&&String(w.id??w._id)===String(o)?w:b.find(T=>String(T?.id??T?._id)===String(o))??null,[b,o,w]),v=h!=null&&(h.isActive!=null||h.active!=null)?!!(h.isActive??h.active):null,L=String(u)===String(o)?!!d:v??!0,_=ep(h,g);y.useEffect(()=>{o&&a(De(o))},[o,a]);const M=T=>{!o||f||!_||a(ir({id:o,isActive:T}))};return s.jsxs(s.Fragment,{children:[s.jsx(yr,{...r,steps:$e,showSaveButton:!1,nextLabel:"Publish",extraActions:s.jsx(Fi,{label:"Active",checked:L,disabled:!o||f||!_,onChange:M}),onNext:()=>{e?.(),r.onNext?.()}}),p?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,s.jsx(mr,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:s.jsx("div",{className:"ca-review",children:s.jsx("section",{className:"ca-review__block ca-review__block--last",children:i?s.jsx(ze,{text:"Loading form fields"}):c&&!m.length?s.jsx("p",{className:"ca-body",children:c}):s.jsx(fg,{fields:m,storeList:n})})})})]})}function wg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>$e.length?$e.length:Math.floor(t)}function Cg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function ji({title:e="Complaint Management Settings",onPublish:t,onStepChange:r,onSaveDraft:n,roleList:a=[],userList:o=[],storeList:l,showSaveButton:i=!0,showNextButton:c=!0}){const d=Pe(),u=Q.useDispatch(),{systemId:f}=mt(),[p,w]=Es(),b=wg(p.get("step")||1),g=Cg(p.get("substep")||1),m=!!f&&f!=="new",[h,v]=y.useState(!1);y.useEffect(()=>{if(!m)return;let V=!1;const G=$=>{const Y=$?.data??$;return Array.isArray(Y)?Y:Array.isArray(Y?.data)?Y.data:[]};return Promise.all([u(We(f)).unwrap(),u(De(f)).unwrap()]).then(([$,Y])=>{V||v(G($).length>0&&G(Y).length>0)}).catch(()=>{V||v(!1)}),()=>{V=!0}},[u,m,f]);const L=m&&h;y.useEffect(()=>{f&&u(lt(f)),u(Nt({data:m}))},[u,m,f]),y.useEffect(()=>{if(!p.get("step")){const V=new URLSearchParams(p);V.set("step","1"),w(V,{replace:!0})}},[p,w]);const _=y.useMemo(()=>$e.find(V=>V.id===b)||$e[0],[b]),M=y.useCallback((V,G)=>{const $=new URLSearchParams(p);$.set("step",String(V)),V===4?$.set("substep",String(G??(V===b?g:1))):$.delete("substep"),w($,{replace:!1}),r?.({systemId:f,step:V,substep:G})},[p,w,r,f,b,g]),T=()=>{if(b<$e.length){M(b+1,1);return}d("/")},q=V=>{M(4,V)},R=()=>{t?.({systemId:f,step:b})},J={currentStep:b,allStepsUnlocked:L,onStepClick:V=>M(V,V===4?1:void 0),showSaveButton:i,showNextButton:c,onSaveDraft:()=>n?.({systemId:f,step:b}),onNext:T,className:"ca-settings-page__stepper"};return s.jsx(Xl,{children:s.jsxs("div",{className:"ca-settings-page",children:[s.jsxs("div",{className:"ca-settings-page__header",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx(fa,{children:e})]}),b===1?s.jsx(Im,{stepMeta:_,stepperProps:J,roleList:a,userList:o}):null,b===2?s.jsx($m,{onNext:T,stepMeta:_,roleList:a,userList:o,substep:g,onSubstepChange:q,stepperProps:J}):null,b===3?s.jsx(ag,{stepMeta:_,stepperProps:J}):null,b===4?s.jsx(vg,{storeList:l,onPublish:R,stepMeta:_,stepperProps:J}):null]})},f||"new")}function _g(){const e=Pe(),r=Q.useSelector(c=>c.status?.complaintSummary??null)?.totalComplaints??0,n=Q.useSelector(c=>c.appDetails?.id),a=Q.useSelector(c=>c.complaintType?.selected??null),o=a?.id??a?._id,i=o==null||n==null||String(o)===String(n)?a?.name??a?.complaintTypeName??a?.title??"":"";return s.jsx("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:i||"Complaint Management"})]}),s.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",r??0]})]})})}function qi({currentPage:e,totalItems:t,itemsPerPage:r,onPageChange:n,onItemsPerPageChange:a,selectOptions:o=["5","10","15","20","25"],totalPages:l,disabled:i=!1}){if(t<=0)return null;const c=(e-1)*r+1,d=Math.min(e*r,t),u=e<=1,f=e>=l;return s.jsxs("div",{className:`ca-custom-pagination${i?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[s.jsxs("label",{className:"ca-custom-pagination__page-size",children:[s.jsx("span",{children:"Results per page:"}),s.jsx("select",{className:"ca-custom-pagination__select",value:String(r),onChange:p=>a?.(Number(p.target.value)),disabled:i,"aria-label":"Results per page",children:o.map(p=>s.jsx("option",{value:p,children:p},p))})]}),s.jsxs("div",{className:"ca-custom-pagination__navigation",children:[s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>n?.(1),disabled:i||u,"aria-label":"First page",children:s.jsx(em,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>n?.(e-1),disabled:i||u,"aria-label":"Previous page",children:s.jsx(Rh,{size:16,"aria-hidden":"true"})}),s.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>n?.(e+1),disabled:i||f,"aria-label":"Next page",children:s.jsx(tn,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>n?.(l),disabled:i||f,"aria-label":"Last page",children:s.jsx(tm,{size:16,"aria-hidden":"true"})})]})]})}function Ng({type:e}){return e==="error"?s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M12 7.5v5.5M12 16.2v.1",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})]}):s.jsxs("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:[s.jsx("circle",{cx:"12",cy:"12",r:"9",stroke:"currentColor",strokeWidth:"2"}),s.jsx("path",{d:"M8 12.5l2.8 2.8L16.2 9.5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})]})}function Ag({id:e,message:t,type:r="success",onDismiss:n}){return y.useEffect(()=>{const a=setTimeout(()=>n(e),3500);return()=>clearTimeout(a)},[e,n]),s.jsxs("div",{className:`ca-toast ca-toast--${r}`,role:"status",children:[s.jsx("span",{className:"ca-toast__icon",children:s.jsx(Ng,{type:r})}),s.jsxs("div",{className:"ca-toast__content",children:[s.jsx("div",{className:"ca-toast__title",children:r==="error"?"Error":"Success"}),s.jsx("div",{className:"ca-toast__message",children:t})]}),s.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>n(e),children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Eg({toasts:e=[],onDismiss:t}){return e.length?s.jsx("div",{className:"ca-toast-container",children:e.map(r=>s.jsx(Ag,{...r,onDismiss:t},r.id))}):null}const Lg=["Open","Cancelled","Closed"];function Vi({selectedStatus:e,statusNames:t=[],selectedCreatedAtSort:r,selectedLevel:n,selectedAssignment:a,workflowLevels:o=[],onStatusChange:l,onCreatedAtSortChange:i,onLevelChange:c,onAssignmentChange:d,onOpenDateFilter:u,hasDateFilter:f=!1,onDownloadReport:p,isDownloadingReport:w=!1,complaintTypeId:b}){return s.jsxs("div",{className:"ca-complaint-table__toolbar",children:[s.jsxs("div",{className:"ca-complaint-table__filters",children:[s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx(am,{size:14,"aria-hidden":"true"}),s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),s.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:g=>l?.(g.target.value),children:[s.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:Lg).map(g=>s.jsx("option",{value:g,children:sn(g)},g))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Sort by created date"}),s.jsxs("select",{value:r,"aria-label":"Sort by created date",onChange:g=>i?.(g.target.value),children:[s.jsx("option",{value:"desc",children:"Created: Newest first"}),s.jsx("option",{value:"asc",children:"Created: Oldest first"})]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by workflow level"}),s.jsxs("select",{value:n,"aria-label":"Filter by workflow level",onChange:g=>c?.(g.target.value),children:[s.jsx("option",{value:"all",children:"All Levels"}),o.map(g=>s.jsxs("option",{value:g,children:["Level ",g]},g))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by assignment"}),s.jsxs("select",{value:a,"aria-label":"Filter by assignment",onChange:g=>d?.(g.target.value),children:[s.jsx("option",{value:"all",children:"All"}),s.jsx("option",{value:"mine",children:"Assign to Me"}),s.jsx("option",{value:"unassigned",children:"Unassigned"})]})]}),s.jsx("button",{type:"button",className:`ca-complaint-table__sort${f?" ca-complaint-table__sort--active":""}`,"aria-label":"Filter by date",title:"Filter by date",onClick:u,children:s.jsx(sm,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),s.jsx("div",{className:"ca-complaint-table__actions",children:s.jsx(ye,{variant:"outline",size:"sm",startIcon:s.jsx(rm,{size:14}),onClick:p,disabled:w||!b,children:"Download Report"})})]})}const Tg=[{value:"today",label:"Today"},{value:"yesterday",label:"Yesterday"},{value:"lastWeek",label:"Last Week"},{value:"wtd",label:"WTD"},{value:"mtd",label:"MTD"},{value:"ytd",label:"YTD"},{value:"custom",label:"Custom"}],Wi=e=>String(e).padStart(2,"0"),Fe=e=>`${e.getFullYear()}-${Wi(e.getMonth()+1)}-${Wi(e.getDate())}`,wr=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function Ig(e,t="",r="",n=new Date){const a=new Date(n.getFullYear(),n.getMonth(),n.getDate()),o=(a.getDay()+6)%7,l=wr(a,-o);switch(e){case"today":return{fromDate:Fe(a),toDate:Fe(a)};case"yesterday":return{fromDate:Fe(wr(a,-1)),toDate:Fe(wr(a,-1))};case"lastWeek":return{fromDate:Fe(wr(l,-7)),toDate:Fe(wr(l,-1))};case"wtd":return{fromDate:Fe(l),toDate:Fe(a)};case"mtd":return{fromDate:Fe(new Date(a.getFullYear(),a.getMonth(),1)),toDate:Fe(a)};case"ytd":return{fromDate:Fe(new Date(a.getFullYear(),0,1)),toDate:Fe(a)};case"custom":return t&&r?{fromDate:t,toDate:r}:null;default:return null}}function Fg(e){if(!e?.preset)return{};const t=Ig(e.preset,e.from,e.to);return t?{...t}:{}}const kg=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function Og({initial:e,onApply:t,onReset:r,onClose:n}){const[a,o]=y.useState(e?.field||"updated"),[l,i]=y.useState(e?.preset||""),[c,d]=y.useState(e?.from||""),[u,f]=y.useState(e?.to||""),p=l==="custom"&&(!c||!u||c>u),w=!!l&&!p;return s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:s.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[s.jsxs("div",{className:"ca-date-filter__header",children:[s.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),s.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:n,children:s.jsx(lm,{size:18})})]}),s.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:kg.map(b=>s.jsx("button",{type:"button",className:`ca-date-filter__tab${a===b.value?" ca-date-filter__tab--active":""}`,onClick:()=>o(b.value),children:b.label},b.value))}),s.jsx("div",{className:"ca-date-filter__list",children:Tg.map(b=>s.jsxs("label",{className:`ca-date-filter__option${l===b.value?" ca-date-filter__option--active":""}`,children:[s.jsx("input",{type:"radio",name:"complaint-date-preset",checked:l===b.value,onChange:()=>i(b.value)}),s.jsx("span",{children:b.label})]},b.value))}),l==="custom"?s.jsxs("div",{className:"ca-date-filter__custom",children:[s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),s.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:u||void 0,onChange:b=>d(b.target.value)}),s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),s.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:u,min:c||void 0,onChange:b=>f(b.target.value)})]}):null,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:r,children:"Reset"}),s.jsx(ye,{onClick:()=>t({field:a,preset:l,from:c,to:u}),disabled:!w,children:"Apply"})]})]})})}function Dg({open:e,initial:t,onApply:r,onReset:n,onClose:a}){return e?s.jsx(Og,{initial:t,onApply:r,onReset:n,onClose:a}):null}function Ka({text:e="No data"}){return s.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const xg=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function dt(e){const t=String(e??""),r=t.indexOf("::");return r>=0?t.slice(0,r):t}function Cr(e){const t=String(e??""),r=t.indexOf("::");return r>=0?t.slice(r+2):t}const Mg=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function $t(e){return(Array.isArray(e)?e:[e]).filter(r=>r!=null&&r!==""&&r!=="-").flatMap(r=>typeof r=="string"?r.split(Mg).map(n=>n.trim()).filter(Boolean):[r])}function Pg(e){const t=$t(e);return t.length>0&&t.every(r=>typeof r=="string"&&xg.test(r))}function _r(e,t){const r=String(e?.fieldType||"").toLowerCase();return r==="file"||r==="images"||r==="image"||Pg(t)}function Ug(e,t){const r=new Set;return t.forEach(n=>{e.forEach(a=>{const o=n[a.key]??"-";_r(a,o)&&$t(o).forEach(l=>{typeof l=="string"&&r.add(dt(l))})})}),Array.from(r)}const zi=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function Ya(e,t=7){const r=String(e||""),n=r.lastIndexOf("."),a=n>0?r.slice(0,n):r,o=n>0?r.slice(n):"";return a.length>t?`${a.slice(0,t)}...${o}`:r}function $g({value:e,urlMap:t={}}){const r=y.useMemo(()=>$t(e),[e]),[n,a]=y.useState(null);if(!r.length)return"-";const o=r.filter(p=>typeof p=="string"&&zi.test(dt(p))),l=r.filter(p=>typeof p=="string"&&!zi.test(dt(p))).map(p=>({name:Cr(p),url:t[dt(p)]})),i=o.map(p=>({name:Cr(p),url:t[dt(p)]})).filter(p=>p.url),c=i[0],d=()=>a(null),u=()=>a(p=>p>0?p-1:i.length-1),f=()=>a(p=>p<i.length-1?p+1:0);return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?s.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:s.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,l.length?l.map(p=>{const w=String(p.name).split("/").pop();return p.url?s.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",title:w,children:Ya(w)},p.name):s.jsx("span",{className:"ca-complaint-table__attachment-name",title:w,children:Ya(w)},p.name)}):null,!c&&!l.length?r.map(p=>s.jsx("span",{className:"ca-complaint-table__attachment-name",title:Cr(p),children:Ya(Cr(p))},String(p))):null,i.length>1?s.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${i.length-1} more images`,children:["+",i.length-1]}):null]}),n!=null&&i.length?s.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[s.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:u,"aria-label":"Previous image",children:"‹"}),s.jsx("img",{className:"ca-complaint-table__preview-image",src:i[n].url,alt:i[n].name}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:f,"aria-label":"Next image",children:"›"}),s.jsxs("span",{className:"ca-complaint-table__preview-count",children:[n+1," / ",i.length]})]}):null]})}function yn(e,t=!1){const r=[];return!t&&e==="description"&&r.push("ca-complaint-table__desc"),e==="actions"&&r.push("ca-complaint-table__sticky","ca-complaint-table__sticky--actions"),r.length?r.join(" "):void 0}function Bg({row:e,ctx:t,isOpen:r,onToggle:n}){const a=t.roleUsers??[],o=y.useRef(null),l=y.useRef(null),[i,c]=y.useState(null),d=a.find(h=>String(h.id)===String(e.assignedToUserId)),f=(d?[d.firstName,d.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",p=e.assignedToUserId,w=p!=null&&p!==""&&String(p)===String(t.currentUserId),b=w?"Assign to Me":f||"Assign",g=a.filter(h=>String(h.id)!==String(t.currentUserId)),m=!!e.isClosed||t.canAssign===!1;return y.useLayoutEffect(()=>{if(!r)return;const h=()=>{const v=o.current,L=l.current;if(!v||!L)return;const _=v.getBoundingClientRect(),M=L.getBoundingClientRect(),T=6,q=12,J=_.bottom+T+M.height>window.innerHeight-q&&_.top-T-M.height>=q?_.top-M.height-T:Math.min(_.bottom+T,window.innerHeight-M.height-q),V=Math.max(q,Math.min(_.right-M.width,window.innerWidth-M.width-q));c({top:J,left:V,visibility:"visible"})};return h(),window.addEventListener("resize",h),window.addEventListener("scroll",h,!0),()=>{window.removeEventListener("resize",h),window.removeEventListener("scroll",h,!0)}},[t.assignmentError,t.assignmentLoading,t.assignmentSaving,r,a.length]),s.jsxs("div",{className:"ca-complaint-table__assignment",children:[s.jsxs("button",{ref:o,type:"button",className:"ca-complaint-table__assignment-trigger","data-assignment-trigger":"true",disabled:m,onClick:h=>{h.stopPropagation(),!m&&n(e.id)},"aria-expanded":r&&!m,"aria-label":`Assign complaint ${e.title||e.id}`,children:[s.jsx("span",{className:"ca-complaint-table__assignment-label",children:b}),s.jsx(fr,{size:14,"aria-hidden":"true"})]}),r&&!m&&typeof document<"u"?hc.createPortal(s.jsxs("div",{ref:l,className:"ca-complaint-table__assignment-menu","data-assignment-menu":"true",role:"menu",style:i||{visibility:"hidden"},onClick:h=>h.stopPropagation(),children:[s.jsx("button",{type:"button",className:"ca-complaint-table__assignment-self",role:"menuitem",disabled:w||t.assignmentLoading||t.assignmentSaving,onClick:h=>{h.stopPropagation(),n(null),t.onAssign?.(e,t.currentUserId)},children:s.jsx("strong",{children:"Assign to me"})}),t.assignmentLoading?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Loading users…"}):null,t.assignmentSaving?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Saving assignment…"}):null,t.assignmentError?s.jsxs("div",{className:"ca-complaint-table__assignment-error",children:[s.jsx("span",{children:t.assignmentError}),s.jsx("button",{type:"button",onClick:h=>{h.stopPropagation(),t.onRetryUsers?.(e.roleId)},children:"Retry"})]}):null,g.length>0?s.jsx("div",{className:"ca-complaint-table__assignment-others","aria-hidden":"true",children:"Others"}):null,g.map(h=>{const v=[h.firstName,h.lastName].filter(Boolean).join(" ").trim()||h.email;return s.jsxs("button",{type:"button",role:"menuitem",disabled:String(p)===String(h.id)||t.assignmentLoading||t.assignmentSaving,onClick:L=>{L.stopPropagation(),n(null),t.onAssign?.(e,h.id)},children:[s.jsx("strong",{children:v}),h.email?s.jsx("span",{children:h.email}):null]},h.id)})]}),document.body):null]})}function Hi(e,t,r={},n={}){const a=t[e.key]??"-";return e.key==="status"||e.key==="escalationTo"?a:e.key==="actions"?s.jsxs("div",{className:"ca-complaint-table__action-cell",children:[s.jsx(Bg,{row:t,ctx:r,...n}),s.jsx("button",{type:"button",className:"ca-complaint-table__open-button","aria-label":`Open complaint ${t.title||t.id}`,onClick:o=>{o.stopPropagation(),r.onOpenComplaint?.(t)},children:s.jsx(tn,{size:16,"aria-hidden":"true"})})]}):_r(e,a)&&$t(a).some(o=>typeof o=="string")?s.jsx($g,{value:a,urlMap:r.attachmentUrlMap}):a}function Ki({scrollFields:e,stickyFields:t,tableRows:r,fieldLabel:n,getCellContext:a,onOpenComplaint:o,page:l,itemsPerPage:i}){const[c,d]=y.useState(null);y.useEffect(()=>{if(c==null)return;const f=p=>{p.target.closest?.("[data-assignment-trigger], [data-assignment-menu]")||d(null)};return document.addEventListener("pointerdown",f),()=>document.removeEventListener("pointerdown",f)},[c]);const u=f=>{d(p=>String(p)===String(f)?null:f)};return s.jsxs("div",{className:"ca-complaint-table__scroll",children:[s.jsxs("table",{children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:"#"}),e.map(f=>s.jsx("th",{scope:"col",className:yn(f.key,!0),children:n(f)},f.id)),s.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(f=>s.jsx("th",{scope:"col",className:yn(f.key,!0),children:n(f)},f.id))]})}),s.jsx("tbody",{children:r.map((f,p)=>{const w=a(f);w.onOpenComplaint=o;const b=f.assignedToUserId,g=b==null||b===""?"ca-complaint-table__row--unassigned":String(b)===String(w.currentUserId)?"ca-complaint-table__row--assigned-self":"ca-complaint-table__row--assigned-other";return s.jsxs("tr",{className:`${g}${o?" ca-complaint-table__clickable-row":""}`,role:o?"link":void 0,tabIndex:o?0:void 0,"aria-label":o?`Open complaint ${f.title||f.id}`:void 0,onClick:m=>{m.target.closest("button, a, select, input, textarea")||o?.(f)},onKeyDown:m=>{!o||m.key!=="Enter"&&m.key!==" "||m.target===m.currentTarget&&(m.preventDefault(),o(f))},children:[s.jsx("td",{children:(l-1)*i+p+1}),e.map(m=>s.jsx("td",{className:yn(m.key),children:Hi(m,f,w)},`${f.id??p}-${m.id}`)),s.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(m=>s.jsx("td",{className:yn(m.key),children:Hi(m,f,w,{isOpen:String(c)===String(f.id),onToggle:u})},`${f.id??p}-${m.id}`))]},f.id??p)})})]}),r.length?null:s.jsx("div",{className:"ca-complaint-table__empty-overlay",children:s.jsx(Ka,{text:"No Complaint"})})]})}const jg={id:"actions",label:"Actions",key:"actions"};function Yi(e,t,r=!0){return e==="mine"?t==null?{}:{assignedToUserId:t}:e==="unassigned"?{unassigned:!0}:r?{showAllComplaints:!0}:{}}async function qg({complaintTypeId:e,status:t,dateParams:r={},sort:n,assignmentParams:a={},escalationTo:o}){const l=await le.get(ca,{params:{...r,complaintTypeId:e,page:1,limit:wh,sort:n,...a,...o!=null&&o!==""&&o!=="all"?{escalationTo:o}:{},...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return Nl(l.data)}function Vg(e){return(Array.isArray(e?.roles)?e.roles:[]).map(r=>Number(r?.id??r?.roleId??r?.role_id??r)).filter(r=>Number.isFinite(r))}function Gi(e,t=[],r=[],n=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const o=t.find(l=>String(l.id)===String(a));return!o||!Ji(o,r,n)}function Wg(e){return([e?.userAssignments,e?.users,e?.userIds,e?.assignedUsers].find(Array.isArray)??[]).map(r=>Number(r&&typeof r=="object"?r.userId??r.id??r.user?.id:r)).filter(Number.isFinite)}function Ji(e,t=[],r=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:r!=null&&Wg(e).includes(Number(r))}function zg(){const{fieldLabel:e}=tt(),t=Q.useDispatch(),r=Pe(),n=Me(),{complaintTypeId:a}=mt(),[o]=Es(),l=Q.useSelector(U=>U.appDetails?.id),i=Eh(a,o.get("complaintTypeId"),l,Ah()),{list:c=[],isLoading:d=!1,error:u=null,hasLoaded:f=!1,requestedComplaintTypeId:p=null,meta:w=null}=Q.useSelector(U=>U.complaintManagement??{}),b=Q.useSelector(U=>U.status?.list??[]),g=Q.useSelector(U=>U.changeStatus?.updatingId??null),m=Q.useSelector(U=>U.roleUsers??{}),h=Q.useSelector(U=>U.workflow?.workflowSteps),v=Q.useSelector(U=>U.appDetails?.details?.currentUser),L=Q.useSelector(U=>U.appDetails?.details?.storeList),_=y.useMemo(()=>Bh(L),[L]),M=y.useMemo(()=>b.map(U=>U.name).filter(Boolean),[b]),T=y.useMemo(()=>Array.isArray(h)?h:Array.isArray(h?.steps)?h.steps:[],[h]),q=y.useMemo(()=>Vg(v),[v]),R=v?.id??v?.userId??null,J=Q.useSelector(U=>{const ee=U.complaintType?.selected,ce=Array.isArray(ee?.accesses)?ee.accesses.map(Ce=>Ce?.role?.id??Ce?.role?.roleId??Ce?.roleId).map(Number).filter(Number.isFinite):[];return ce.length?ce:(Array.isArray(ee?.roleIds)?ee.roleIds:Array.isArray(ee?.roles)?ee.roles:[]).map(Ce=>Number(Ce?.id??Ce?.roleId??Ce?.role_id??Ce)).filter(Ce=>Number.isFinite(Ce))}),V=Q.useSelector(U=>{const ee=U.complaintType?.selected;return ee?.isActive!=null?!!ee.isActive:ee?.active!=null?!!ee.active:!0}),[G,$]=y.useState({complaintTypeId:null,status:"all"}),[Y,I]=y.useState({complaintTypeId:null,direction:gl}),[D,j]=y.useState({complaintTypeId:null,level:"all"}),[H,E]=y.useState({complaintTypeId:null,value:"all",explicitlySelected:!1}),[x,C]=y.useState(1),[F,O]=y.useState(Sh),[W,Z]=y.useState([]),[te,k]=y.useState({}),[A,N]=y.useState(!1),[z,X]=y.useState(null),[ae,ue]=y.useState([]),[fe,pe]=y.useState(!1),[he,re]=y.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),me=String(he.complaintTypeId)===String(i)&&he.preset?he:null,ke=y.useMemo(()=>Fg(me),[me]),Ae=String(G.complaintTypeId)===String(i)?G.status:"all",ut=String(Y.complaintTypeId)===String(i)?Y.direction:gl,Ye=String(D.complaintTypeId)===String(i)?D.level:"all",je=String(H.complaintTypeId)===String(i)?H.value:"all",_0=String(H.complaintTypeId)===String(i)&&H.explicitlySelected,vn=(U,ee="success")=>{const ce=`${Date.now()}-${Math.random()}`;ue(Ee=>[...Ee,{id:ce,message:U,type:ee}])},N0=U=>ue(ee=>ee.filter(ce=>ce.id!==U));y.useEffect(()=>{!i||a||(wl(i),r(`/complaintmanagement/${i}`,{replace:!0}))},[i,r,a]),y.useEffect(()=>{if(!i||!a)return;wl(i),t(lt(i)),t(Vo()),t(Ko()),t($p());const U=t(Tt(i)),ee=t(Gr(i)),ce=t(We(i)),Ee=t(De(i)),Ce=t(Xe(i));return Ee.unwrap().then(rs=>Z(_h(rs))).catch(()=>Z([])),()=>{U.abort?.(),ee.abort?.(),ce.abort?.(),Ee.abort?.(),Ce.abort?.()}},[i,t,a]),y.useEffect(()=>{if(!i||!a)return;const U=t(Yr({complaintTypeId:i,page:x,limit:F,status:Ae==="all"?void 0:Ae,sort:ut===yl?"createdAt":"-createdAt",...Yi(je,R),escalationTo:Ye==="all"?void 0:Ye,...ke}));return()=>U.abort?.()},[i,R,ke,t,F,x,a,je,ut,Ye,Ae]);const A0=J.some(U=>q.includes(U)),ft=y.useMemo(()=>p!=null&&i!=null&&String(p)!==String(i)?[]:c.map(ee=>({...Ol(Cl(ee,b,T),_),_fields:ee?.formField||[]})),[i,c,p,b,T,_]),lc=y.useMemo(()=>[...new Set(ft.map(U=>U.roleId).filter(U=>U!=null).map(String))],[ft]);y.useEffect(()=>{lc.forEach(U=>{!m.usersByRoleId?.[U]&&!m.loadingByRoleId?.[U]&&!m.errorByRoleId?.[U]&&t(dr(U))})},[t,lc,m.errorByRoleId,m.loadingByRoleId,m.usersByRoleId]);const E0=y.useMemo(()=>[...new Set(T.map((U,ee)=>Number(U.levelNo??ee+1)))].sort((U,ee)=>U-ee),[T]),es=y.useMemo(()=>_l(ft,W).filter(U=>Gi(U,T,q,R)),[ft,W,T,q,R]),L0=Sl(es),ic=U=>{const ee=U.assignedToUserId;return ee==null||ee===""?0:String(ee)===String(R)?1:2},Nr=ft.map(({_fields:U,...ee})=>ee).sort((U,ee)=>ic(U)-ic(ee)),ts=y.useMemo(()=>Ug(es,ft),[es,ft]),T0=ts.every(U=>Object.prototype.hasOwnProperty.call(te,U));y.useEffect(()=>{const U=ts.filter(ce=>!Object.prototype.hasOwnProperty.call(te,ce));if(!U.length)return;let ee=!1;return Promise.all(U.map(async ce=>{try{const Ee=await t(cr({params:{path:ce}})).unwrap();return[ce,Ee]}catch{return[ce,""]}})).then(ce=>{ee||k(Ee=>({...Ee,...Object.fromEntries(ce)}))}),()=>{ee=!0}},[ts,te,t]);const wn=Nh(w,x,F,Nr.length),cc=!!(i&&!u&&(!Nr.length&&(d||!f)||Nr.length>0&&!T0)),I0=U=>{C(1),$({complaintTypeId:i,status:U})},F0=U=>{U>=1&&U<=wn.totalPages&&U!==x&&C(U)},k0=U=>{const ee=Number(U);!Number.isFinite(ee)||ee<=0||ee===F||(O(ee),C(1))},O0=U=>{C(1),I({complaintTypeId:i,direction:U})},D0=U=>{C(1),j({complaintTypeId:i,level:U})},x0=U=>{C(1),E({complaintTypeId:i,value:U,explicitlySelected:!0})},M0=U=>{C(1),re({complaintTypeId:i,...U}),pe(!1)},P0=()=>{C(1),re({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),pe(!1)},U0=()=>{i&&r(`/complaintmanagement/new/${i}`)},$0=U=>{if(U?.id==null||!i)return;const ee=n.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement";r(`/${ee}/${i}/details/${U.id}`)},dc=U=>{const ee=T.find(ce=>String(ce.id)===String(U?.currentStepId));return!ee||Ji(ee,q,R)},B0=async(U,ee)=>{if(U?.id==null||ee==null||g!=null||U.isClosed||String(U.assignedToUserId)===String(ee))return;if(!dc(U)){vn("Only users in the current level can assign this complaint.","error");return}if(!(U.assignedToUserId!=null&&U.assignedToUserId!==""&&String(U.assignedToUserId)===String(R))&&String(ee)!==String(R)){vn("Please assign this complaint to yourself first. Then you can assign it to others.","error");return}try{await t(Lt({id:U.id,assignedToUserId:ee})).unwrap(),vn("Complaint assigned successfully","success")}catch(Ee){vn(Ee?.message??"Failed to assign complaint","error")}},j0=U=>({roleUsers:m.usersByRoleId?.[String(U.roleId)]??[],assignmentLoading:!!m.loadingByRoleId?.[String(U.roleId)],assignmentError:m.errorByRoleId?.[String(U.roleId)]??null,assignmentSaving:g!=null,currentUserId:R,canAssign:dc(U),onAssign:B0,onRetryUsers:ee=>t(dr(ee)),attachmentUrlMap:te});return{complaintTypeId:i,canCreateComplaint:A0,isComplaintTypeActive:V,statusNames:M,selectedStatus:Ae,selectedCreatedAtSort:ut,selectedLevel:Ye,selectedAssignment:je,workflowLevels:E0,isDownloadingReport:A,onStatusChange:I0,onCreatedAtSortChange:O0,onLevelChange:D0,onAssignmentChange:x0,dateFilter:me,hasDateFilter:!!me,isDateFilterOpen:fe,onOpenDateFilter:()=>pe(!0),onCloseDateFilter:()=>pe(!1),onApplyDateFilter:M0,onResetDateFilter:P0,onNewComplaint:U0,onDownloadReport:async()=>{if(!(!i||A)){N(!0),X(null);try{const U=Yi(je,R,_0),ce=(await qg({complaintTypeId:i,status:Ae,dateParams:ke,sort:ut===yl?"createdAt":"-createdAt",assignmentParams:U,escalationTo:Ye})).map(Ge=>({...Ol(Cl(Ge,b,T),_),_fields:Ge?.formField||[]})).filter(Ge=>Ye==="all"||String(T.find(q0=>String(q0.id)===String(Ge.currentStepId))?.levelNo??Ge.level)===String(Ye)),Ee=_l(ce,W).filter(Ge=>Gi(Ge,T,q,R)),Ce=Sl(Ee).filter(Ge=>!Oh(Ge,ce,_r)),rs=new Blob([Dh(Ce,ce)],{type:"text/csv;charset=utf-8;"}),uc=URL.createObjectURL(rs),Ar=document.createElement("a");Ar.href=uc,Ar.download=`complaints-report-${i}-${Date.now()}.csv`,document.body.appendChild(Ar),Ar.click(),document.body.removeChild(Ar),URL.revokeObjectURL(uc)}catch(U){X(U?.response?.data?.message??U?.message??"Failed to download report")}finally{N(!1)}}},error:u,downloadError:z,showLoading:cc,toasts:ae,onDismissToast:N0,tableProps:{scrollFields:L0.filter(U=>U.key!=="actions"),stickyFields:[jg],tableRows:Nr,fieldLabel:e,getCellContext:j0,onOpenComplaint:$0,page:x,itemsPerPage:F},paginationProps:{currentPage:x,totalItems:wn.totalItems,itemsPerPage:F,onPageChange:F0,onItemsPerPageChange:k0,selectOptions:vh,totalPages:wn.totalPages,disabled:cc,hasRows:!!(wn.totalItems>0||Nr.length||x>1)}}}function Hg(){const e=zg();return s.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[s.jsx(Vi,{selectedStatus:e.selectedStatus,statusNames:e.statusNames,selectedCreatedAtSort:e.selectedCreatedAtSort,selectedLevel:e.selectedLevel,selectedAssignment:e.selectedAssignment,workflowLevels:e.workflowLevels,onStatusChange:e.onStatusChange,onCreatedAtSortChange:e.onCreatedAtSortChange,onLevelChange:e.onLevelChange,onAssignmentChange:e.onAssignmentChange,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?s.jsx("p",{className:"ca-body",children:e.error}):null,e.downloadError?s.jsx("p",{className:"ca-body",children:e.downloadError}):null,e.showLoading?s.jsx(ze,{text:"Loading complaints"}):s.jsx(Ki,{...e.tableProps}),e.paginationProps.hasRows?s.jsx(qi,{...e.paginationProps}):null,s.jsx(Dg,{open:e.isDateFilterOpen,initial:e.dateFilter,onApply:e.onApplyDateFilter,onReset:e.onResetDateFilter,onClose:e.onCloseDateFilter}),s.jsx(Eg,{toasts:e.toasts,onDismiss:e.onDismissToast})]})}const bn=()=>s.jsxs("main",{className:"ca-query-management-page",children:[s.jsx(_g,{}),s.jsx(Hg,{})]}),Kg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"};function Ga(e){return typeof e=="string"?e:e?.label??""}function Yg(e=[]){const t=[...e].sort((r,n)=>(r.displayOrder??0)-(n.displayOrder??0));return t.map(r=>{const n=r.fieldName??r.fieldLabel??r.label??"",a=r.fieldKey??String(r.id),o=r?.options?.values??[],l=t.find(i=>i.id===r.dependsOnFieldId||r.dependsOnFieldKey&&i.fieldKey===r.dependsOnFieldKey);return{id:r.id,label:n,fieldKey:ne({fieldKey:a,label:n})?"status":a,fieldType:_a(r.fieldType,Kg,r.fieldKey),required:!!r.required,dependsOn:r.dependsOnField?.fieldName??l?.fieldName??r.dependsOn??"",options:o.map(Ga).filter(Boolean),parentMappings:Object.fromEntries(o.map(i=>{const c=Ga(i),d=Jg(i);return!c||!d?null:[c,Zg(d,l?.options?.values??[])]}).filter(Boolean))}})}function Sn(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(r=>r.charAt(0).toUpperCase()+r.slice(1).toLowerCase()).join(""):""}function Gg(e){if(ne(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:Sn(e.label||t)}function Jg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Zg(e,t=[]){if(!e)return"";const r=t.map(Ga).filter(Boolean),n=r.find(o=>o===e);return n||r.find(o=>Sn(o)===e||Sn(o)===Sn(e))||e}function Xg(e,t=[],r={}){const n=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return n;const o=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!o)return n;const l=e.parentMappings||{};if(!n.some(d=>!!l[d]))return n;const c=String(r[ie(o)]||"").trim();return c?n.filter(d=>String(l[d]||"")===c):n}function Ja(e){return Bt(e)==="checkbox"}function Qg(e,t){const r=String(t||"").trim();return r&&e.find(n=>String(n.label||"").trim()===r||String(n.fieldKey||"").trim()===r)||null}function Zi(e,t){const r=String(t?.label||"").trim();return r&&e.find(n=>String(n.dependsOn||"").trim()===r)||null}function Rg(e,t,r){const n={},a=Array.isArray(t)?t[0]:t;if(!a)return n;let o=e,l=a;for(;o?.dependsOn;){const i=Qg(r,o.dependsOn);if(!i)break;const c=(o.parentMappings||{})[l];if(!c)break;n[ie(i)]=Ja(i)?[c]:c,o=i,l=c}for(o=e,l=a;o;){const i=Zi(r,o);if(!i)break;const c=i.parentMappings||{},d=Object.keys(c).find(u=>c[u]===l);if(!d)break;n[ie(i)]=Ja(i)?[d]:d,o=i,l=d}return n}function Za(e){return Array.isArray(e)?e.filter(t=>t!=null&&t!==""):e==null||e===""?[]:[e]}function e0(e,t,r,n,a){const o={},l=Za(r);let i=Za(t).filter(d=>!l.includes(d)),c=e;for(;c&&i.length;){const d=Zi(n,c);if(!d)break;const u=d.parentMappings||{},f=ie(d),p=Za(o[f]??a[f]),w=p.filter(g=>i.includes(u[g]));if(!w.length)break;const b=p.filter(g=>!w.includes(g));o[f]=Ja(d)?b:b[0]??"",i=w,c=d}return o}function ie(e){return String(e.fieldKey||e.id||e.label)}function Bt(e){const t=String(e.fieldType||"").toLowerCase();return t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="email"?"email":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":t==="file"?"file":t==="images"?"images":(t==="dropdown"||t==="select"||t==="custom")&&e.options.length?"select":"text"}function Xi(e){return`new-query-${e.id??ie(e)}`}function Qi(e){if(ne(e))return(e.options||[]).find(n=>String(n).trim().toLowerCase()==="open")||"Open";const t=Bt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function Ri(e){return Array.isArray(e)?e.map(t=>typeof File<"u"&&t instanceof File?t.name:t):typeof File<"u"&&e instanceof File?e.name:e??""}function Xa(e,t){if(e==null)return t?.name||"";if(typeof e=="string"||typeof e=="number")return String(e);const r=e.file&&typeof e.file=="object"?e.file:e,n=r.path||r.id||t?.name||"",a=r.originalName||t?.name||"";return a&&n&&String(n)!==a?`${n}::${a}`:n}async function t0(e,t,r){const n=Bt(t);if(n==="file"&&typeof File<"u"&&r instanceof File){const a=await e(It({file:r,folder:"complaints"})).unwrap();return Xa(a,r)}return n==="file"&&Array.isArray(r)?Promise.all(r.map(async a=>{if(typeof File<"u"&&a instanceof File){const o=await e(It({file:a,folder:"complaints"})).unwrap();return Xa(o,a)}return a})):n==="images"&&Array.isArray(r)?await Promise.all(r.map(async o=>{if(typeof File<"u"&&o instanceof File){const l=await e(It({file:o,folder:"complaints"})).unwrap();return Xa(l,o)}return o})):Ri(r)}async function r0(e=[],t={},r){const n={};for(const a of e){const o=Gg(a);o&&(n[o]=await t0(r,a,t[ie(a)]))}return n}function ec(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function n0(e){return/^\d+$/.test(String(e).trim())}function a0(e=[],t={}){for(const r of e){const n=Bt(r),a=t[ie(r)],o=r.label||"This field";if(r.required&&ec(a))return`${o} is required.`;if(!ec(a)&&n==="number"&&!n0(a))return`${o} must be a valid number.`}return""}function s0({field:e,value:t,onChange:r,storeList:n,options:a=e.options}){const{fieldLabel:o}=tt(),l=Bt(e),i=Xi(e),c=ne(e);if(Re(e)&&Array.isArray(n))return s.jsx(ki,{id:i,name:ie(e),required:e.required,storeList:n,value:t,onChange:r});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${d}`,children:[s.jsx("input",{id:`${i}-${d}`,name:ie(e),type:"radio",value:d,checked:t===d,onChange:u=>r(u.target.value),required:e.required,disabled:c}),s.jsx("span",{children:d})]},d))});if(l==="checkbox"){const d=Array.isArray(t)?t:[];return s.jsx("div",{className:"review-options review-options--inline",children:a.map(u=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${u}`,children:[s.jsx("input",{id:`${i}-${u}`,name:`${ie(e)}[]`,type:"checkbox",value:u,checked:d.includes(u),onChange:f=>r(f.target.checked?[...d,u]:d.filter(p=>p!==u))}),s.jsx("span",{children:u})]},u))})}if(l==="textarea")return s.jsx("textarea",{id:i,name:ie(e),className:"review-control review-control--textarea",value:t,onChange:d=>r(d.target.value),required:e.required,disabled:c});if(l==="file")return s.jsx(gn,{id:i,name:ie(e),value:t,onChange:r,multiple:!0,required:e.required,disabled:c});if(l==="images")return s.jsx(gn,{id:i,name:ie(e),value:t,onChange:r,multiple:!0,required:e.required,disabled:c});if(l==="number")return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:"number",inputMode:"numeric",value:t,onChange:d=>r(String(d.target.value).replace(/[^\d]/g,"")),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault()},required:e.required,disabled:c});if(l==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return s.jsxs("select",{id:i,name:ie(e),className:"review-control",value:t,onChange:u=>r(u.target.value),required:e.required,disabled:c,children:[c?null:s.jsxs("option",{value:"",children:["Select ",o(e)]}),d.map(u=>s.jsx("option",{value:u,children:u},u))]})}return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:l,value:t,onChange:d=>r(d.target.value),required:e.required,disabled:c})}function tc({storeList:e}={}){const{fieldLabel:t}=tt(),r=Q.useDispatch(),n=Pe(),{complaintTypeId:a}=mt(),o=Number(a),l=Number.isFinite(o)&&o>0,[i,c]=y.useState([]),[d,u]=y.useState({}),[f,p]=y.useState(!0),[w,b]=y.useState(!1),[g,m]=y.useState(""),[h,v]=y.useState(""),[L,_]=y.useState(""),[M,T]=y.useState(""),q=Q.useSelector($=>{const Y=$.complaintType??{},D=(Array.isArray(Y.complaintList)?Y.complaintList:[]).find(j=>String(j?.id??j?._id)===String(a))??(String(Y.selected?.id??Y.selected?._id)===String(a)?Y.selected:null);return String(D?.name??D?.code??"").trim()}),R=q||M;y.useEffect(()=>{if(!l||q)return;let $=!1;return r(Xe(o)).unwrap().then(Y=>{if($)return;const I=Y?.data??Y;T(String(I?.name??I?.code??"").trim())}).catch(()=>{}),()=>{$=!0}},[o,q,r,l]),y.useEffect(()=>{if(!l)return;let $=!1;return r(De(o)).unwrap().then(Y=>{if($)return;const I=Yg(Array.isArray(Y?.data)?Y.data:Y);c(I),u(Object.fromEntries(I.map(D=>[ie(D),Qi(D)])))}).catch(Y=>{$||m(typeof Y=="string"?Y:Y?.message||"Failed to load form fields.")}).finally(()=>{$||p(!1)}),()=>{$=!0}},[o,r,l]);const J=y.useMemo(()=>i.length>0,[i]),V=async $=>{if($.preventDefault(),!l){m("A valid complaint type is required.");return}m(""),v(""),b(!0);const Y=a0(i,d);if(Y){m(Y),b(!1);return}try{const I=await r0(i,d,r),D=i.findIndex(ne),j=i[D+1],E=(j?[].concat(Ri(d[ie(j)])).join(", ").trim():"")||R;if(!E){m("Title is required. Please fill the first field.");return}await r(Zr({complaintTypeId:o,title:E,fieldValues:I})).unwrap(),v("Query submitted successfully."),n(`/complaintmanagement/${o}/all`)}catch(I){m(typeof I=="string"?I:I?.message||"Failed to submit query.")}finally{b(!1)}},G=$=>{const Y=Xg($,i,d);return s.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Bt($))?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:Xi($),children:[t($)||"Untitled field",$.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(s0,{storeList:e,field:$,options:Y,value:d[ie($)]??Qi($),onChange:I=>{ne($)||u(D=>{const j=e0($,D[ie($)],I,i,D),H=Rg($,I,i);return{...D,[ie($)]:I,...j,...H}})}})]},$.id??ie($))};return s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[s.jsx("div",{className:"ca-query-details__heading",children:s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>n(-1),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),g||!l?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:g||"A valid complaint type is required."}):null,f&&l?s.jsx(ze,{text:"Loading form fields"}):null,l&&!f&&J?s.jsxs("form",{className:"review-form-card",onSubmit:V,children:[s.jsx("div",{className:"review-form-grid",children:i.map($=>s.jsx(y.Fragment,{children:ne($)?null:G($)},$.id??ie($)))}),s.jsx("div",{className:"ca-new-query__actions",children:s.jsx(ye,{type:"submit",disabled:w,children:w?"Submitting...":"Submit Complaint"})}),h?s.jsx("p",{className:"ca-body",children:h}):null]}):null]})})}const Qa=[];function o0(e,t=200,r=null){const n=Q.useDispatch(),a=Q.useSelector(b=>b.appDetails?.details?.userList)??Qa,o=Q.useSelector(b=>b.status?.list)??Qa,[l,i]=y.useState({key:null,complaints:[],error:null}),c=e==null||e===""?null:`${e}:${t}`;y.useEffect(()=>{if(e==null||e==="")return;const b=n(Tt(e));return()=>b.abort?.()},[e,n]),y.useEffect(()=>{if(e==null||e==="")return;let b=!1;const g=`${e}:${t}`;return le.get(ca,{params:{complaintTypeId:e,page:1,limit:t}}).then(m=>{b||i({key:g,complaints:Nl(m.data),error:null})}).catch(m=>{b||i({key:g,complaints:[],error:m?.response?.data?.message??m?.message??"Failed to load complaints"})}),()=>{b=!0}},[e,t]);const d=l.key===c,u=d?l.complaints:Qa,f=d?l.error:null,p=c!==null&&!d;return{rows:y.useMemo(()=>{const b={tatMinutes:Number(r)||0},g=h=>{const v=new Date(h?.createdAt??h?.submittedAt??h?.date??0).getTime();return Number.isNaN(v)?0:v},m=h=>Number(h?.complaintId??h?.id)||0;return[...u].sort((h,v)=>g(v)-g(h)||m(v)-m(h)).map(h=>kl(h,o,a,b))},[u,o,a,r]),isLoading:p,error:f}}function l0(){const e=Q.useDispatch(),t=Pe(),r=Me(),{complaintTypeId:n}=mt(),a=Q.useSelector(d=>{const u=d.complaintType??{};return(Array.isArray(u.complaintList)?u.complaintList:[]).find(p=>String(p?.id??p?._id)===String(n))??(String(u.selected?.id??u.selected?._id)===String(n)?u.selected:null)}),{rows:o,isLoading:l,error:i}=o0(n,void 0,a?.tatMinutes),c=y.useCallback(d=>{t(`/complaintmanagement/${n}/details/${d.id}`,{state:{from:r.pathname}})},[n,r.pathname,t]);return y.useEffect(()=>{!a&&n&&e(Xe(n))},[n,e,a]),s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-filler-list",children:[s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>t("/"),"aria-label":"Back to Complaints",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsxs("div",{children:[s.jsxs("h1",{className:"ca-query-details__title",children:[a?.name??a?.title??"Complaints",o.length?` (${o.length})`:""]}),s.jsx("p",{className:"ca-filler-card__desc",children:a?.description||"Description of the form"})]})]}),s.jsx(ye,{startIcon:s.jsx(ql,{size:14}),onClick:()=>t(`/complaintmanagement/new/${n}`),disabled:a?.isActive===!1||a?.active===!1,children:"Add Complaint"})]}),i?s.jsx("p",{className:"ca-body",children:i}):null,l?s.jsx(ze,{text:"Loading complaints"}):null,!l&&!i&&!o.length?s.jsx(Ka,{text:"No Complaint"}):null,l?null:o.map(d=>s.jsx(Yl,{row:d,onClick:c},d.id))]})})}function Ra(e,t={}){if(!e)return"—";const r=new Date(e);return Number.isNaN(r.getTime())?"—":new Intl.DateTimeFormat(void 0,{day:"numeric",month:"short",year:"numeric",...t}).format(r)}function rc(e){return e==null||e===""?"—":Array.isArray(e)?e.map(rc).join(", "):typeof e=="object"?e.name??e.label??JSON.stringify(e):String(e)}function nc({label:e,value:t,fieldType:r,attachmentUrls:n}){const o=_r({fieldType:r},t)?$t(t):[];return s.jsxs("div",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:e||"Field"}),o.length?s.jsx("div",{className:"ca-complaint-details__attachments",children:o.map((l,i)=>{const c=dt(l),d=n[c]||(typeof l=="string"&&/^https?:\/\//i.test(c)?c:""),u=Cr(l).split("/").pop();return d&&/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i.test(u)?s.jsx("a",{className:"ca-complaint-details__image-link",href:d,target:"_blank",rel:"noreferrer","aria-label":`View ${u}`,children:s.jsx("img",{src:d,alt:u})},`${c}-${i}`):d?s.jsx("a",{className:"ca-complaint-details__file",href:d,target:"_blank",rel:"noreferrer",children:u||"View attachment"},`${c}-${i}`):s.jsx("span",{className:"ca-complaint-details__file",children:u||"Attachment"},`${c}-${i}`)})}):s.jsx("span",{className:"ca-complaint-details__field-value",children:rc(t)})]})}function i0({activities:e=[],fallbackRemarks:t=[],localRemarks:r=[],createdAt:n,isLoading:a,error:o,onRetry:l}){const i=y.useMemo(()=>{const d=[...e.length?e.map((f,p)=>{const w=f.action??f.activityType??f.type??"",b=f.description??f.remarks??f.remark??f.message??f.title??(typeof w=="string"?w:"")??"Complaint updated",g=/submit|created/i.test(`${w} ${b}`)?"created":"remark",m=[f.createdByFirstName,f.createdByLastName].filter(h=>h!=null&&String(h).trim()!=="").join(" ").trim();return{id:f.id??`${f.createdAt??f.timestamp??"activity"}-${p}`,type:g,text:b||"Complaint updated",author:f.createdByUserName||m||f.userName||f.actorName||f.createdBy?.name||f.user?.name,createdAt:f.createdAt??f.timestamp??f.occurredAt,fromLevelNo:f.fromLevelNo??f.oldLevelNo??f.fromLevel?.levelNo,toLevelNo:f.toLevelNo??f.newLevelNo??f.toLevel?.levelNo}}):[...t.map((f,p)=>({id:`${f.createdAt||"remark"}-${p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],...r.map((f,p)=>({id:f.id??`local-${f.createdAt??p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],u=d.some(f=>f.type==="created"||/complaint submitted/i.test(f.text));return n&&!u&&d.push({id:`created-${n}`,type:"created",text:"Complaint submitted",createdAt:n}),d.sort((f,p)=>new Date(p.createdAt||0)-new Date(f.createdAt||0))},[e,n,t,r]);return s.jsxs("aside",{className:"ca-complaint-details__activity","aria-label":"Activity log",children:[s.jsxs("div",{className:"ca-complaint-details__activity-heading",children:[s.jsx("h2",{children:"Activity log"}),s.jsx("span",{children:i.length})]}),a?s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"Loading activity…"}):null,o?s.jsxs("div",{className:"ca-complaint-details__activity-empty",role:"alert",children:[s.jsx("p",{children:o}),s.jsx("button",{type:"button",onClick:l,children:"Retry"})]}):null,i.length?s.jsx("ol",{className:"ca-complaint-details__activity-list",children:i.map((c,d)=>s.jsxs("li",{className:"ca-complaint-details__activity-item",children:[s.jsx("span",{className:`ca-complaint-details__activity-icon ca-complaint-details__activity-icon--${c.type}`,"aria-hidden":"true",children:d===0?s.jsx(Qh,{size:14,strokeWidth:1.8}):s.jsx(Xh,{size:14,strokeWidth:1.8})}),s.jsxs("div",{className:"ca-complaint-details__activity-content",children:[s.jsx("p",{children:c.text}),c.type==="remark"||c.author?s.jsxs(s.Fragment,{children:[c.fromLevelNo!=null||c.toLevelNo!=null?s.jsxs("span",{className:"ca-complaint-details__activity-levels",children:[c.fromLevelNo!=null?`L${c.fromLevelNo}`:"—"," → ",c.toLevelNo!=null?`L${c.toLevelNo}`:"—"]}):null,c.author?s.jsx("span",{className:"ca-complaint-details__activity-author",children:c.author}):null]}):null,s.jsx("time",{dateTime:c.createdAt,children:Ra(c.createdAt,{hour:"numeric",minute:"2-digit"})})]})]},c.id))}):s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"No activity yet"})]})}function c0({complaintId:e,complaintTypeId:t}){const r=Q.useDispatch(),n=Pe(),a=Me(),o=a.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement",{data:l,isLoading:i,error:c}=Q.useSelector(A=>A.complaintsGetOne??{}),d=Q.useSelector(A=>A.activityLog??{}),u=Q.useSelector(A=>A.status?.list??[]),f=Q.useSelector(A=>A.workflow?.workflowSteps),p=Q.useSelector(A=>A.appDetails?.details?.currentUser),w=p?.id??p?.userId??null,{isLoading:b}=Q.useSelector(A=>A.changeStatus??{}),[g,m]=y.useState({}),[h,v]=y.useState(null),[L,_]=y.useState(null),[M,T]=y.useState(""),[q,R]=y.useState(""),J=y.useMemo(()=>Array.isArray(f)?f:Array.isArray(f?.steps)?f.steps:[],[f]);y.useEffect(()=>{r(Jp()),r(rh());const A=r(Ft(e)),N=r(kt(e));return()=>{A.abort?.(),N.abort?.()}},[e,r]),y.useEffect(()=>{if(!t)return;const A=r(Tt(t)),N=r(We(t));return()=>{A.abort?.(),N.abort?.()}},[t,r]);const V=Array.isArray(l?.fieldValues)?l.fieldValues:[],G=y.useMemo(()=>{const A=new Set;return(Array.isArray(l?.fieldValues)?l.fieldValues:[]).forEach(N=>{_r(N?.formField,N?.value)&&$t(N.value).forEach(z=>{typeof z=="string"&&A.add(dt(z))})}),[...A]},[l]);y.useEffect(()=>{const A=G.filter(z=>!Object.prototype.hasOwnProperty.call(g,z));if(!A.length)return;let N=!1;return Promise.all(A.map(async z=>{try{const X=await r(cr({params:{path:z}})).unwrap();return[z,X]}catch{return[z,""]}})).then(z=>{N||m(X=>({...X,...Object.fromEntries(z)}))}),()=>{N=!0}},[G,g,r]);const $=()=>n(a.state?.from||`/${o}/${t}`),Y=h??(l?.statusId==null?"":String(l.statusId)),I=L??(l?.currentStepId==null?"":String(l.currentStepId)),D=y.useMemo(()=>J.find(A=>String(A.id)===String(l?.currentStepId)),[l?.currentStepId,J]),j=D??l?.currentWorkflowStep,H=(Array.isArray(p?.roles)?p.roles:[]).map(A=>Number(A?.id??A?.roleId??A?.role_id??A)).filter(Number.isFinite),E=y.useMemo(()=>{if(!j)return!1;const A=Array.isArray(j.roleIds)&&j.roleIds.some(X=>H.includes(Number(X))),N=Number(p?.id??p?.userId),z=[j.userAssignments,j.users,j.userIds,j.assignedUsers].filter(Array.isArray).flat().some(X=>Number(X?.userId??X?.id??X?.user?.id??X)===N);return A||z},[j,p?.id,p?.userId,H]),x=!ba(l?.status?.name)&&w!=null&&String(l?.assignedToUserId)===String(w)&&(!D||E),C=y.useMemo(()=>[...J].sort((A,N)=>Number(A.levelNo??0)-Number(N.levelNo??0)),[J]),F=y.useMemo(()=>C.find(A=>String(A.id)===String(I))??(String(l?.currentStepId)===String(I)?l?.currentWorkflowStep:null),[l?.currentStepId,l?.currentWorkflowStep,I,C]),O=Number(F?.levelNo??0),W=y.useMemo(()=>new Set(C.filter((A,N)=>{const z=Number(A.levelNo??N+1);return z===O||z===O+1||z===O-1&&O>1&&en(F?.canReassign)}).map(A=>String(A.id))),[O,F?.canReassign,C]),Z=l?.remarks,te=y.useMemo(()=>[...Array.isArray(Z)?Z:[]],[Z]),k=async()=>{if(!l?.id||b)return;R("");const A=M.trim();try{await r(Lt({id:l.id,statusId:Y,currentStepId:I,assignedToUserId:w,remark:A})).unwrap(),v(null),_(null),T(""),await r(Ft(e)).unwrap(),await r(kt(e))}catch(N){R(N?.message??"Failed to update complaint")}};return s.jsxs("main",{className:"ca-complaint-details-page",children:[s.jsxs("header",{className:"ca-complaint-details__header",children:[s.jsx("button",{className:"ca-complaint-details__back",type:"button",onClick:$,"aria-label":"Back to complaints",children:s.jsx("span",{"aria-hidden":"true",children:"‹"})}),s.jsxs("div",{className:"ca-complaint-details__heading",children:[s.jsx("h1",{children:l?.complaintType?.name||"Complaint Details"}),l?.title?s.jsx("p",{children:l.title}):null,l?.complaintType?.description?s.jsx("span",{children:l.complaintType.description}):null]}),l?s.jsx("button",{className:"ca-complaint-details__update",type:"button",onClick:k,disabled:b||!x,children:b?"Updating…":"Update"}):null]}),i?s.jsx(ze,{text:"Loading complaint details"}):null,!i&&c?s.jsxs("div",{className:"ca-complaint-details__error",role:"alert",children:[s.jsx("p",{children:c}),s.jsx("button",{type:"button",onClick:()=>r(Ft(e)),children:"Try again"})]}):null,!i&&!c&&l?s.jsxs("div",{className:"ca-complaint-details__layout",children:[s.jsxs("section",{className:"ca-complaint-details__main","aria-label":"Complaint information",children:[s.jsxs("div",{className:"ca-complaint-details__summary",children:[s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Status"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:Y,disabled:!x,onChange:A=>v(A.target.value),children:[u.map(A=>{const z=!(String(A.id)===String(l.statusId))&&Ih(A.name)&&!en(j?.canResolve??l.currentWorkflowStep?.canResolve);return s.jsx("option",{value:A.id,disabled:z,children:A.name},A.id)}),u.some(A=>String(A.id)===String(Y))?null:s.jsx("option",{value:Y,children:l.status?.name||"—"})]}),s.jsx(fr,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]})]}),s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Escalation to"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:I,disabled:!x,onChange:A=>_(A.target.value),children:[C.filter(A=>W.has(String(A.id))).map(A=>s.jsxs("option",{value:A.id,children:["Level ",A.levelNo]},A.id)),C.some(A=>String(A.id)===String(I))?null:s.jsx("option",{value:I,children:l.currentWorkflowStep?.levelNo!=null?`Level ${l.currentWorkflowStep.levelNo}`:"—"})]}),s.jsx(fr,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]})]}),V.map((A,N)=>s.jsx(nc,{label:A.formField?.fieldName??A.formField?.fieldKey??"Field",value:A.value,fieldType:A.formField?.fieldType,attachmentUrls:g},A.id??`${A.formField?.id??"field"}-${N}`)),s.jsx(nc,{label:"Created at",value:Ra(l.createdAt)})]}),s.jsxs("section",{className:"ca-complaint-details__remarks","aria-label":"Remarks",children:[s.jsx("h2",{children:"Remark"}),s.jsx("form",{className:"ca-complaint-details__remark-form",onSubmit:A=>{A.preventDefault()},children:s.jsx("input",{"aria-label":"Enter remark",value:M,onChange:A=>T(A.target.value),placeholder:"Enter remark"})}),q?s.jsx("p",{className:"ca-complaint-details__update-error",role:"alert",children:q}):null,te.length?s.jsx("ol",{className:"ca-complaint-details__remark-list",children:te.map((A,N)=>s.jsxs("li",{children:[s.jsxs("div",{className:"ca-complaint-details__remark-meta",children:[s.jsxs("span",{children:[A.fromLevelNo!=null||A.toLevelNo!=null?`L${A.fromLevelNo??"—"} - L${A.toLevelNo??"—"}`:"",A.createdByUserName?` | ${A.createdByUserName}`:""]}),s.jsx("time",{dateTime:A.createdAt,children:Ra(A.createdAt,{hour:"numeric",minute:"2-digit"})})]}),s.jsx("p",{children:A.remark})]},A.id??`${A.createdAt??"remark"}-${N}`))}):null]})]}),s.jsx(i0,{activities:d.activities,fallbackRemarks:te,createdAt:l.createdAt,isLoading:d.isLoading,error:d.error,onRetry:()=>r(kt(e))})]}):null]})}function ac(){const{complaintId:e,complaintTypeId:t}=mt();return s.jsx(c0,{complaintId:e,complaintTypeId:t},e)}function d0({pageProps:e={},onPublish:t,onStepChange:r,children:n}){const a=n??s.jsx(Gl,{...e});return s.jsxs(ld,{children:[s.jsx(_e,{path:"/",element:a}),s.jsx(_e,{path:"/settings/:systemId",element:s.jsx(ji,{onPublish:t,onStepChange:r,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),s.jsx(_e,{path:"complaintmanagement",element:s.jsx(bn,{company:e.company})}),s.jsx(_e,{path:"complaintmanagement/new/:complaintTypeId",element:s.jsx(tc,{company:e.company,storeList:e.storeList})}),s.jsx(_e,{path:"complaintmanagement/:complaintTypeId/details/:complaintId",element:s.jsx(ac,{})}),s.jsx(_e,{path:"complaintmanagement/:complaintTypeId",element:s.jsx(bn,{company:e.company})}),s.jsx(_e,{path:"complaintmanagement/:complaintTypeId/all",element:s.jsx(l0,{})}),s.jsx(_e,{path:"querymanagement",element:s.jsx(bn,{company:e.company})}),s.jsx(_e,{path:"querymanagement/new/:complaintTypeId",element:s.jsx(tc,{company:e.company,storeList:e.storeList})}),s.jsx(_e,{path:"querymanagement/:complaintTypeId/details/:complaintId",element:s.jsx(ac,{})}),s.jsx(_e,{path:"querymanagement/:complaintTypeId",element:s.jsx(bn,{company:e.company})}),s.jsx(_e,{path:"*",element:a})]})}function u0({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:r=a=>console.log(a),children:n}){return s.jsx(d0,{pageProps:e,onPublish:t,onStepChange:r,children:n})}function f0({children:e}){const{cssVars:t,darkMode:r,mode:n}=Eo();return s.jsx("div",{className:`ca-root ${r?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":n,style:t,children:e})}function p0({basePath:e,children:t}){return ht()?t:s.jsx(Cd,{basename:e,children:t})}function h0({store:e,children:t}){return s.jsx(Q.Provider,{store:e||sl,children:t})}function m0({details:e,children:t}){const r=Q.useDispatch();return y.useEffect(()=>{r(Do(e))},[r,e]),t}const sc=[],oc=({apiUrl:e,authToken:t,store:r,basePath:n="/",theme:a,darkMode:o=!1,title:l,description:i,rolelist:c,roleList:d=c??sc,userList:u=sc,storeList:f,currentUser:p,company:w=p?.company,featureActions:b=ph,useDemoData:g=!0,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:L,onTitleClick:_,onDescriptionClick:M,onSearch:T,onPublish:q,onSaveDraft:R,showSaveButton:J,showNextButton:V,onStepChange:G,children:$})=>{const Y={title:l,description:i,useDemoData:g,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:L,roleList:d,userList:u,storeList:f,company:w,onTitleClick:_,onDescriptionClick:M,onSearch:T,onSaveDraft:R,showSaveButton:J,showNextButton:V},I=y.useMemo(()=>({featureActions:b,apiUrl:e,authToken:t,basePath:n,theme:a,darkMode:o,title:l,description:i,roleList:d,userList:u,storeList:f,currentUser:p,company:w,useDemoData:g,createLabel:m,onCreateForm:h,onConfigure:v,onOpen:L,onTitleClick:_,onDescriptionClick:M,onSearch:T,onPublish:q,onSaveDraft:R,showSaveButton:J,showNextButton:V,onStepChange:G}),[b,e,t,n,a,o,l,i,d,u,f,p,w,g,m,h,v,L,_,M,T,q,R,J,V,G]);return s.jsx(yi.Provider,{value:w,children:s.jsx(Ao,{theme:a,darkMode:o,children:s.jsx(h0,{store:r,children:s.jsx(m0,{details:I,children:s.jsx(f0,{children:s.jsx(So,{apiUrl:e,authToken:t,children:s.jsx(p0,{basePath:n,children:s.jsx(u0,{pageProps:Y,onPublish:q,onStepChange:G,children:$})})})})})})})})};function g0({children:e,onClick:t,className:r="",active:n=!1}){return s.jsx("button",{type:"button",className:`ca-chip ${n?"ca-chip--active":""} ${r}`.trim(),onClick:t,children:e})}function y0({checked:e=!1,onChange:t,name:r,value:n,"aria-label":a,className:o=""}){return s.jsxs("label",{className:`ca-radio ${o}`.trim(),children:[s.jsx("input",{type:"radio",className:"ca-radio__input",name:r,value:n,checked:e,onChange:t,"aria-label":a}),s.jsx("span",{className:"ca-radio__mark"})]})}function b0({status:e="inactive",label:t,className:r=""}){const a=String(e).toLowerCase()==="active",o=t??(a?"Active":"Inactive");return s.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${r}`.trim(),children:o})}const S0=Ve.colors,v0=Ve.radii,w0=Ve.spacing,C0=Ve.typography;P.AddFormButton=gi,P.AddTableCard=ai,P.ApiProvider=So,P.BodyText=Xr,P.Button=ye,P.COMPLAINT_ENDPOINTS=Vr,P.CardFooter=ul,P.CardHeader=dl,P.ChevronDownIcon=Aa,P.ChevronRightIcon=ur,P.Chip=g0,P.CloseIcon=ei,P.ComplaintApp=oc,P.ComplaintManagementPage=Gl,P.ComplaintSettingsPage=ji,P.ComplaintTableGrid=Ki,P.ComplaintTableToolbar=Vi,P.CustomPagination=qi,P.DEFAULT_PAGE_DESCRIPTION=Ul,P.DEMO_SYSTEMS=zh,P.DataPoint=fl,P.Divider=pl,P.DragHandleIcon=Si,P.EmptyState=Ka,P.FieldLabel=Na,P.FormCard=wi,P.FormCardGrid=Ci,P.FormField=Be,P.FormInput=gr,P.FormSelect=Ta,P.FormTextarea=wm,P.Heading1=fa,P.Heading2=pa,P.Input=Ot,P.LabelText=il,P.LayersIcon=vm,P.LinkText=oh,P.Loading=ze,P.PageHeader=ha,P.PlusIcon=ol,P.Radio=y0,P.RoleMultiSelect=un,P.SETTINGS_STEPS=$e,P.SearchBar=Pl,P.SearchIcon=Ml,P.Select=Ke,P.SettingsCard=mr,P.SettingsCardHeader=Ql,P.SettingsWizardProvider=Xl,P.StatusBadge=b0,P.Stepper=yr,P.SystemCard=Dl,P.SystemCardGrid=xl,P.TableCard=si,P.TableCardGrid=fi,P.Tag=ti,P.Textarea=Rl,P.ThemeProvider=Ao,P.Toggle=Qr,P.ToggleField=Fi,P.TrashIcon=Rr,P.Typography=Qe,P.ValueText=cl,P.WORKFLOW_SUBSTEPS=Sm,P.api=le,P.appDetailsReducer=xo,P.clearAppDetails=op,P.clearComplaintError=Xf,P.clearId=lp,P.clearSelectedComplaintResource=Qf,P.colors=S0,P.complaintReducer=Io,P.createComplaintStore=al,P.darkTheme=er,P.deepMerge=_t,P.default=oc,P.defaultThemeFile=vo,P.deleteFormField=rr,P.getFormFields=De,P.lightTheme=Ve,P.normalizeThemeFile=wo,P.radii=v0,P.resetComplaintState=Rf,P.resolveActiveTheme=Co,P.saveFormFields=tr,P.setAppDetails=Do,P.setAuthToken=Qn,P.setBaseUrl=bo,P.setId=lt,P.setIsEdit=Nt,P.spacing=w0,P.store=sl,P.themeToCssVars=_o,P.typography=C0,P.useSettingsWizard=dn,P.useTheme=Eo,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
13
13
|
//# sourceMappingURL=complaint-app.umd.js.map
|