@attabot/complaint-app 1.0.39 → 1.0.40
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 +2921 -2898
- package/dist/complaint-app.js.map +1 -1
- package/dist/complaint-app.umd.js +11 -10
- package/dist/complaint-app.umd.js.map +1 -1
- package/dist/index.d.ts +25 -0
- package/dist/style.css +1 -1
- package/package.json +1 -1
|
@@ -1,13 +1,14 @@
|
|
|
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.
|
|
1
|
+
(function(P,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("react-dom"),require("react-redux"),require("@reduxjs/toolkit")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","react-dom","react-redux","@reduxjs/toolkit"],s):(P=typeof globalThis<"u"?globalThis:P||self,s(P.ComplaintApp={},P["react/jsx-runtime"],P.React,P.ReactDOM,P.ReactRedux,P.RTK))})(this,(function(P,s,y,hc,Q,oe){"use strict";var Cr=typeof document<"u"?document.currentScript:null;function mc(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const r=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,r.get?r:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const B=mc(y);function jt(){return jt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jt.apply(null,arguments)}var Je;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(Je||(Je={}));const as="popstate";function gc(e){e===void 0&&(e={});function t(r,a){let{pathname:o,search:l,hash:i}=r.location;return _r("",{pathname:o,search:l,hash:i},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:qt(a)}return bc(t,n,null,e)}function se(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Le(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function yc(){return Math.random().toString(36).substr(2,8)}function ss(e,t){return{usr:e.state,key:e.key,idx:t}}function _r(e,t,n,r){return n===void 0&&(n=null),jt({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?pt(t):t,{state:n,key:t&&t.key||r||yc()})}function qt(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function pt(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function bc(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:o=!1}=r,l=a.history,i=Je.Pop,c=null,d=u();d==null&&(d=0,l.replaceState(jt({},l.state,{idx:d}),""));function u(){return(l.state||{idx:null}).idx}function f(){i=Je.Pop;let h=u(),g=h==null?null:h-d;d=h,c&&c({action:i,location:m.location,delta:g})}function p(h,g){i=Je.Push;let b=_r(m.location,h,g);d=u()+1;let L=ss(b,d),_=m.createHref(b);try{l.pushState(L,"",_)}catch(x){if(x instanceof DOMException&&x.name==="DataCloneError")throw x;a.location.assign(_)}o&&c&&c({action:i,location:m.location,delta:1})}function w(h,g){i=Je.Replace;let b=_r(m.location,h,g);d=u();let L=ss(b,d),_=m.createHref(b);l.replaceState(L,"",_),o&&c&&c({action:i,location:m.location,delta:0})}function S(h){let g=a.location.origin!=="null"?a.location.origin:a.location.href,b=typeof h=="string"?h:qt(h);return b=b.replace(/ $/,"%20"),se(g,"No window.location.(origin|href) available to create URL for href: "+b),new URL(b,g)}let m={get action(){return i},get location(){return e(a,l)},listen(h){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(as,f),c=h,()=>{a.removeEventListener(as,f),c=null}},createHref(h){return t(a,h)},createURL:S,encodeLocation(h){let g=S(h);return{pathname:g.pathname,search:g.search,hash:g.hash}},push:p,replace:w,go(h){return l.go(h)}};return m}var os;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(os||(os={}));function Sc(e,t,n){return n===void 0&&(n="/"),vc(e,t,n)}function vc(e,t,n,r){let a=typeof t=="string"?pt(t):t,o=Ze(a.pathname||"/",n);if(o==null)return null;let l=ls(e);wc(l);let i=null,c=Oc(o);for(let d=0;i==null&&d<l.length;++d)i=Fc(l[d],c);return i}function ls(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(o,l,i)=>{let c={relativePath:i===void 0?o.path||"":i,caseSensitive:o.caseSensitive===!0,childrenIndex:l,route:o};c.relativePath.startsWith("/")&&(se(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let d=qe([r,c.relativePath]),u=n.concat(c);o.children&&o.children.length>0&&(se(o.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),ls(o.children,t,u,d)),!(o.path==null&&!o.index)&&t.push({path:d,score:Tc(d,o.index),routesMeta:u})};return e.forEach((o,l)=>{var i;if(o.path===""||!((i=o.path)!=null&&i.includes("?")))a(o,l);else for(let c of is(o.path))a(o,l,c)}),t}function is(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),o=n.replace(/\?$/,"");if(r.length===0)return a?[o,""]:[o];let l=is(r.join("/")),i=[];return i.push(...l.map(c=>c===""?o:[o,c].join("/"))),a&&i.push(...l),i.map(c=>e.startsWith("/")&&c===""?"/":c)}function wc(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:Ic(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const Cc=/^:[\w-]+$/,_c=3,Nc=2,Ac=1,Ec=10,Lc=-2,cs=e=>e==="*";function Tc(e,t){let n=e.split("/"),r=n.length;return n.some(cs)&&(r+=Lc),t&&(r+=Nc),n.filter(a=>!cs(a)).reduce((a,o)=>a+(Cc.test(o)?_c:o===""?Ac:Ec),r)}function Ic(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function Fc(e,t,n){let{routesMeta:r}=e,a={},o="/",l=[];for(let i=0;i<r.length;++i){let c=r[i],d=i===r.length-1,u=o==="/"?t:t.slice(o.length)||"/",f=Nr({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 Nr(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=kc(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let o=a[0],l=o.replace(/(.)\/+$/,"$1"),i=a.slice(1);return{params:r.reduce((d,u,f)=>{let{paramName:p,isOptional:w}=u;if(p==="*"){let m=i[f]||"";l=o.slice(0,o.length-m.length).replace(/(.)\/+$/,"$1")}const S=i[f];return w&&!S?d[p]=void 0:d[p]=(S||"").replace(/%2F/g,"/"),d},{}),pathname:o,pathnameBase:l,pattern:e}}function kc(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Le(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(l,i,c)=>(r.push({paramName:i,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function Oc(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Le(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Ze(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}const Dc=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Mc=e=>Dc.test(e);function xc(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?pt(e):e,o;if(n)if(Mc(n))o=n;else{if(n.includes("//")){let l=n;n=ps(n),Le(!1,"Pathnames cannot have embedded double slashes - normalizing "+(l+" -> "+n))}n.startsWith("/")?o=ds(n.substring(1),"/"):o=ds(n,t)}else o=t;return{pathname:o,search:$c(r),hash:Bc(a)}}function ds(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function Ar(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function Pc(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function us(e,t){let n=Pc(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function fs(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=pt(e):(a=jt({},e),se(!a.pathname||!a.pathname.includes("?"),Ar("?","pathname","search",a)),se(!a.pathname||!a.pathname.includes("#"),Ar("#","pathname","hash",a)),se(!a.search||!a.search.includes("#"),Ar("#","search","hash",a)));let o=e===""||a.pathname==="",l=o?"/":a.pathname,i;if(l==null)i=n;else{let f=t.length-1;if(!r&&l.startsWith("..")){let p=l.split("/");for(;p[0]==="..";)p.shift(),f-=1;a.pathname=p.join("/")}i=f>=0?t[f]:"/"}let c=xc(a,i),d=l&&l!=="/"&&l.endsWith("/"),u=(o||l===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(d||u)&&(c.pathname+="/"),c}const ps=e=>e.replace(/\/\/+/g,"/"),qe=e=>ps(e.join("/")),Uc=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),$c=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,Bc=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function jc(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const hs=["post","put","patch","delete"];new Set(hs);const qc=["get",...hs];new Set(qc);function Vt(){return Vt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Vt.apply(null,arguments)}const Wt=B.createContext(null);process.env.NODE_ENV!=="production"&&(Wt.displayName="DataRouter");const Er=B.createContext(null);process.env.NODE_ENV!=="production"&&(Er.displayName="DataRouterState");const Vc=B.createContext(null);process.env.NODE_ENV!=="production"&&(Vc.displayName="Await");const Oe=B.createContext(null);process.env.NODE_ENV!=="production"&&(Oe.displayName="Navigation");const zt=B.createContext(null);process.env.NODE_ENV!=="production"&&(zt.displayName="Location");const Me=B.createContext({outlet:null,matches:[],isDataRoute:!1});process.env.NODE_ENV!=="production"&&(Me.displayName="Route");const Lr=B.createContext(null);process.env.NODE_ENV!=="production"&&(Lr.displayName="RouteError");function Wc(e,t){let{relative:n}=t===void 0?{}:t;ht()||(process.env.NODE_ENV!=="production"?se(!1,"useHref() may be used only in the context of a <Router> component."):se(!1));let{basename:r,navigator:a}=B.useContext(Oe),{hash:o,pathname:l,search:i}=Ht(e,{relative:n}),c=l;return r!=="/"&&(c=l==="/"?r:qe([r,l])),a.createHref({pathname:c,search:i,hash:o})}function ht(){return B.useContext(zt)!=null}function xe(){return ht()||(process.env.NODE_ENV!=="production"?se(!1,"useLocation() may be used only in the context of a <Router> component."):se(!1)),B.useContext(zt).location}const ms="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function gs(e){B.useContext(Oe).static||B.useLayoutEffect(e)}function Pe(){let{isDataRoute:e}=B.useContext(Me);return e?rd():zc()}function zc(){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useNavigate() may be used only in the context of a <Router> component."):se(!1));let e=B.useContext(Wt),{basename:t,future:n,navigator:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=xe(),l=JSON.stringify(us(a,n.v7_relativeSplatPath)),i=B.useRef(!1);return gs(()=>{i.current=!0}),B.useCallback(function(d,u){if(u===void 0&&(u={}),process.env.NODE_ENV!=="production"&&Le(i.current,ms),!i.current)return;if(typeof d=="number"){r.go(d);return}let f=fs(d,JSON.parse(l),o,u.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:qe([t,f.pathname])),(u.replace?r.replace:r.push)(f,u.state,u)},[t,r,l,o,e])}function mt(){let{matches:e}=B.useContext(Me),t=e[e.length-1];return t?t.params:{}}function Ht(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=B.useContext(Oe),{matches:a}=B.useContext(Me),{pathname:o}=xe(),l=JSON.stringify(us(a,r.v7_relativeSplatPath));return B.useMemo(()=>fs(e,JSON.parse(l),o,n==="path"),[e,l,o,n])}function Hc(e,t){return Kc(e,t)}function Kc(e,t,n,r){ht()||(process.env.NODE_ENV!=="production"?se(!1,"useRoutes() may be used only in the context of a <Router> component."):se(!1));let{navigator:a}=B.useContext(Oe),{matches:o}=B.useContext(Me),l=o[o.length-1],i=l?l.params:{},c=l?l.pathname:"/",d=l?l.pathnameBase:"/",u=l&&l.route;if(process.env.NODE_ENV!=="production"){let b=u&&u.path||"";Ss(c,!u||b.endsWith("*"),"You rendered descendant <Routes> (or called `useRoutes()`) at "+('"'+c+'" (under <Route path="'+b+'">) but the ')+`parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
2
2
|
|
|
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(":"),
|
|
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(
|
|
7
|
-
`):" "+
|
|
8
|
-
`);return l===-1?"":a.stack.slice(l+1)})();try{if(!
|
|
3
|
+
`+('Please change the parent <Route path="'+b+'"> to <Route ')+('path="'+(b==="/"?"*":b+"/*")+'">.'))}let f=xe(),p;if(t){var w;let b=typeof t=="string"?pt(t):t;d==="/"||(w=b.pathname)!=null&&w.startsWith(d)||(process.env.NODE_ENV!=="production"?se(!1,"When overriding the location using `<Routes location>` or `useRoutes(routes, location)`, the location pathname must begin with the portion of the URL pathname that was "+('matched by all parent routes. The current pathname base is "'+d+'" ')+('but pathname "'+b.pathname+'" was given in the `location` prop.')):se(!1)),p=b}else p=f;let S=p.pathname||"/",m=S;if(d!=="/"){let b=d.replace(/^\//,"").split("/");m="/"+S.replace(/^\//,"").split("/").slice(b.length).join("/")}let h=Sc(e,{pathname:m});process.env.NODE_ENV!=="production"&&(process.env.NODE_ENV!=="production"&&Le(u||h!=null,'No routes matched location "'+p.pathname+p.search+p.hash+'" '),process.env.NODE_ENV!=="production"&&Le(h==null||h[h.length-1].route.element!==void 0||h[h.length-1].route.Component!==void 0||h[h.length-1].route.lazy!==void 0,'Matched leaf route at location "'+p.pathname+p.search+p.hash+'" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.'));let g=Xc(h&&h.map(b=>Object.assign({},b,{params:Object.assign({},i,b.params),pathname:qe([d,a.encodeLocation?a.encodeLocation(b.pathname).pathname:b.pathname]),pathnameBase:b.pathnameBase==="/"?d:qe([d,a.encodeLocation?a.encodeLocation(b.pathnameBase).pathname:b.pathnameBase])})),o,n,r);return t&&g?B.createElement(zt.Provider,{value:{location:Vt({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:Je.Pop}},g):g}function Yc(){let e=nd(),t=jc(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,r="rgba(200,200,200, 0.5)",a={padding:"0.5rem",backgroundColor:r},o={padding:"2px 4px",backgroundColor:r},l=null;return process.env.NODE_ENV!=="production"&&(console.error("Error handled by React Router default ErrorBoundary:",e),l=B.createElement(B.Fragment,null,B.createElement("p",null,"💿 Hey developer 👋"),B.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",B.createElement("code",{style:o},"ErrorBoundary")," or"," ",B.createElement("code",{style:o},"errorElement")," prop on your route."))),B.createElement(B.Fragment,null,B.createElement("h2",null,"Unexpected Application Error!"),B.createElement("h3",{style:{fontStyle:"italic"}},t),n?B.createElement("pre",{style:a},n):null,l)}const Gc=B.createElement(Yc,null);class Jc extends B.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?B.createElement(Me.Provider,{value:this.props.routeContext},B.createElement(Lr.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function Zc(e){let{routeContext:t,match:n,children:r}=e,a=B.useContext(Wt);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),B.createElement(Me.Provider,{value:t},r)}function Xc(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var o;if(!n)return null;if(n.errors)e=n.matches;else if((o=r)!=null&&o.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let l=e,i=(a=n)==null?void 0:a.errors;if(i!=null){let u=l.findIndex(f=>f.route.id&&i?.[f.route.id]!==void 0);u>=0||(process.env.NODE_ENV!=="production"?se(!1,"Could not find a matching route for errors on route IDs: "+Object.keys(i).join(",")):se(!1)),l=l.slice(0,Math.min(l.length,u+1))}let c=!1,d=-1;if(n&&r&&r.v7_partialHydration)for(let u=0;u<l.length;u++){let f=l[u];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(d=u),f.route.id){let{loaderData:p,errors:w}=n,S=f.route.loader&&p[f.route.id]===void 0&&(!w||w[f.route.id]===void 0);if(f.route.lazy||S){c=!0,d>=0?l=l.slice(0,d+1):l=[l[0]];break}}}return l.reduceRight((u,f,p)=>{let w,S=!1,m=null,h=null;n&&(w=i&&f.route.id?i[f.route.id]:void 0,m=f.route.errorElement||Gc,c&&(d<0&&p===0?(Ss("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),S=!0,h=null):d===p&&(S=!0,h=f.route.hydrateFallbackElement||null)));let g=t.concat(l.slice(0,p+1)),b=()=>{let L;return w?L=m:S?L=h:f.route.Component?L=B.createElement(f.route.Component,null):f.route.element?L=f.route.element:L=u,B.createElement(Zc,{match:f,routeContext:{outlet:u,matches:g,isDataRoute:n!=null},children:L})};return n&&(f.route.ErrorBoundary||f.route.errorElement||p===0)?B.createElement(Jc,{location:n.location,revalidation:n.revalidation,component:m,error:w,children:b(),routeContext:{outlet:null,matches:g,isDataRoute:!0}}):b()},null)}var ys=(function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e})(ys||{}),Kt=(function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e})(Kt||{});function Tr(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Qc(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function Rc(e){let t=B.useContext(Er);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function ed(e){let t=B.useContext(Me);return t||(process.env.NODE_ENV!=="production"?se(!1,Tr(e)):se(!1)),t}function Ir(e){let t=ed(e),n=t.matches[t.matches.length-1];return n.route.id||(process.env.NODE_ENV!=="production"?se(!1,e+' can only be used on routes that contain a unique "id"'):se(!1)),n.route.id}function td(){return Ir(Kt.UseRouteId)}function nd(){var e;let t=B.useContext(Lr),n=Rc(Kt.UseRouteError),r=Ir(Kt.UseRouteError);return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function rd(){let{router:e}=Qc(ys.UseNavigateStable),t=Ir(Kt.UseNavigateStable),n=B.useRef(!1);return gs(()=>{n.current=!0}),B.useCallback(function(a,o){o===void 0&&(o={}),process.env.NODE_ENV!=="production"&&Le(n.current,ms),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,Vt({fromRouteId:t},o)))},[e,t])}const bs={};function Ss(e,t,n){!t&&!bs[e]&&(bs[e]=!0,process.env.NODE_ENV!=="production"&&Le(!1,n))}const vs={};function ad(e,t){process.env.NODE_ENV!=="production"&&!vs[t]&&(vs[t]=!0,console.warn(t))}const ws=(e,t,n)=>ad(e,"⚠️ React Router Future Flag Warning: "+t+". "+("You can use the `"+e+"` future flag to opt-in early. ")+("For more information, see "+n+"."));function sd(e,t){e?.v7_startTransition===void 0&&ws("v7_startTransition","React Router will begin wrapping state updates in `React.startTransition` in v7","https://reactrouter.com/v6/upgrading/future#v7_starttransition"),e?.v7_relativeSplatPath===void 0&&ws("v7_relativeSplatPath","Relative route resolution within Splat routes is changing in v7","https://reactrouter.com/v6/upgrading/future#v7_relativesplatpath")}function _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:n=null,location:r,navigationType:a=Je.Pop,navigator:o,static:l=!1,future:i}=e;ht()&&(process.env.NODE_ENV!=="production"?se(!1,"You cannot render a <Router> inside another <Router>. You should never have more than one in your app."):se(!1));let c=t.replace(/^\/*/,"/"),d=B.useMemo(()=>({basename:c,navigator:o,static:l,future:Vt({v7_relativeSplatPath:!1},i)}),[c,i,o,l]);typeof r=="string"&&(r=pt(r));let{pathname:u="/",search:f="",hash:p="",state:w=null,key:S="default"}=r,m=B.useMemo(()=>{let h=Ze(u,c);return h==null?null:{location:{pathname:h,search:f,hash:p,state:w,key:S},navigationType:a}},[c,u,f,p,w,S,a]);return process.env.NODE_ENV!=="production"&&Le(m!=null,'<Router basename="'+c+'"> is not able to match the URL '+('"'+u+f+p+'" because it does not start with the ')+"basename, so the <Router> won't render anything."),m==null?null:B.createElement(Oe.Provider,{value:d},B.createElement(zt.Provider,{children:n,value:m}))}function ld(e){let{children:t,location:n}=e;return Hc(Fr(t),n)}new Promise(()=>{});function Fr(e,t){t===void 0&&(t=[]);let n=[];return B.Children.forEach(e,(r,a)=>{if(!B.isValidElement(r))return;let o=[...t,a];if(r.type===B.Fragment){n.push.apply(n,Fr(r.props.children,o));return}r.type!==_e&&(process.env.NODE_ENV!=="production"?se(!1,"["+(typeof r.type=="string"?r.type:r.type.name)+"] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>"):se(!1)),!r.props.index||!r.props.children||(process.env.NODE_ENV!=="production"?se(!1,"An index route cannot have child routes."):se(!1));let l={id:r.props.id||o.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(l.children=Fr(r.props.children,o)),n.push(l)}),n}function gt(){return gt=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gt.apply(null,arguments)}function kr(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}const Ln="get",Tn="application/x-www-form-urlencoded";function In(e){return e!=null&&typeof e.tagName=="string"}function id(e){return In(e)&&e.tagName.toLowerCase()==="button"}function cd(e){return In(e)&&e.tagName.toLowerCase()==="form"}function dd(e){return In(e)&&e.tagName.toLowerCase()==="input"}function ud(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function fd(e,t){return e.button===0&&(!t||t==="_self")&&!ud(e)}function Or(e){return e===void 0&&(e=""),new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,n)=>{let r=e[n];return t.concat(Array.isArray(r)?r.map(a=>[n,a]):[[n,r]])},[]))}function pd(e,t){let n=Or(e);return t&&t.forEach((r,a)=>{n.has(a)||t.getAll(a).forEach(o=>{n.append(a,o)})}),n}let Fn=null;function hd(){if(Fn===null)try{new FormData(document.createElement("form"),0),Fn=!1}catch{Fn=!0}return Fn}const md=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function Dr(e){return e!=null&&!md.has(e)?(process.env.NODE_ENV!=="production"&&Le(!1,'"'+e+'" is not a valid `encType` for `<Form>`/`<fetcher.Form>` '+('and will default to "'+Tn+'"')),null):e}function gd(e,t){let n,r,a,o,l;if(cd(e)){let i=e.getAttribute("action");r=i?Ze(i,t):null,n=e.getAttribute("method")||Ln,a=Dr(e.getAttribute("enctype"))||Tn,o=new FormData(e)}else if(id(e)||dd(e)&&(e.type==="submit"||e.type==="image")){let i=e.form;if(i==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||i.getAttribute("action");if(r=c?Ze(c,t):null,n=e.getAttribute("formmethod")||i.getAttribute("method")||Ln,a=Dr(e.getAttribute("formenctype"))||Dr(i.getAttribute("enctype"))||Tn,o=new FormData(i,e),!hd()){let{name:d,type:u,value:f}=e;if(u==="image"){let p=d?d+".":"";o.append(p+"x","0"),o.append(p+"y","0")}else d&&o.append(d,f)}}else{if(In(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');n=Ln,r=null,a=Tn,l=e}return o&&a==="text/plain"&&(l=o,o=void 0),{action:r,method:n.toLowerCase(),encType:a,formData:o,body:l}}const yd=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],bd=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],Sd=["fetcherKey","navigate","reloadDocument","replace","state","method","action","onSubmit","relative","preventScrollReset","viewTransition"],vd="6";try{window.__reactRouterVersion=vd}catch{}const Cs=B.createContext({isTransitioning:!1});process.env.NODE_ENV!=="production"&&(Cs.displayName="ViewTransition");const wd=B.createContext(new Map);process.env.NODE_ENV!=="production"&&(wd.displayName="Fetchers");const _s=B["startTransition"];function Cd(e){let{basename:t,children:n,future:r,window:a}=e,o=B.useRef();o.current==null&&(o.current=gc({window:a,v5Compat:!0}));let l=o.current,[i,c]=B.useState({action:l.action,location:l.location}),{v7_startTransition:d}=r||{},u=B.useCallback(f=>{d&&_s?_s(()=>c(f)):c(f)},[c,d]);return B.useLayoutEffect(()=>l.listen(u),[l,u]),B.useEffect(()=>sd(r),[r]),B.createElement(od,{basename:t,children:n,location:i.location,navigationType:i.action,navigator:l,future:r})}process.env.NODE_ENV;const _d=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",Nd=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ns=B.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:o,replace:l,state:i,target:c,to:d,preventScrollReset:u,viewTransition:f}=t,p=kr(t,yd),{basename:w}=B.useContext(Oe),S,m=!1;if(typeof d=="string"&&Nd.test(d)&&(S=d,_d))try{let L=new URL(window.location.href),_=d.startsWith("//")?new URL(L.protocol+d):new URL(d),x=Ze(_.pathname,w);_.origin===L.origin&&x!=null?d=x+_.search+_.hash:m=!0}catch{process.env.NODE_ENV!=="production"&&Le(!1,'<Link to="'+d+'"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.')}let h=Wc(d,{relative:a}),g=Td(d,{replace:l,state:i,target:c,preventScrollReset:u,relative:a,viewTransition:f});function b(L){r&&r(L),L.defaultPrevented||g(L)}return B.createElement("a",gt({},p,{href:S||h,onClick:m||o?r:b,ref:n,target:c}))});process.env.NODE_ENV!=="production"&&(Ns.displayName="Link");const Ad=B.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:o="",end:l=!1,style:i,to:c,viewTransition:d,children:u}=t,f=kr(t,bd),p=Ht(c,{relative:f.relative}),w=xe(),S=B.useContext(Er),{navigator:m,basename:h}=B.useContext(Oe),g=S!=null&&Md(p)&&d===!0,b=m.encodeLocation?m.encodeLocation(p).pathname:p.pathname,L=w.pathname,_=S&&S.navigation&&S.navigation.location?S.navigation.location.pathname:null;a||(L=L.toLowerCase(),_=_?_.toLowerCase():null,b=b.toLowerCase()),_&&h&&(_=Ze(_,h)||_);const x=b!=="/"&&b.endsWith("/")?b.length-1:b.length;let T=L===b||!l&&L.startsWith(b)&&L.charAt(x)==="/",V=_!=null&&(_===b||!l&&_.startsWith(b)&&_.charAt(b.length)==="/"),R={isActive:T,isPending:V,isTransitioning:g},Z=T?r:void 0,q;typeof o=="function"?q=o(R):q=[o,T?"active":null,V?"pending":null,g?"transitioning":null].filter(Boolean).join(" ");let K=typeof i=="function"?i(R):i;return B.createElement(Ns,gt({},f,{"aria-current":Z,className:q,ref:n,style:K,to:c,viewTransition:d}),typeof u=="function"?u(R):u)});process.env.NODE_ENV!=="production"&&(Ad.displayName="NavLink");const Ed=B.forwardRef((e,t)=>{let{fetcherKey:n,navigate:r,reloadDocument:a,replace:o,state:l,method:i=Ln,action:c,onSubmit:d,relative:u,preventScrollReset:f,viewTransition:p}=e,w=kr(e,Sd),S=Od(),m=Dd(c,{relative:u}),h=i.toLowerCase()==="get"?"get":"post",g=b=>{if(d&&d(b),b.defaultPrevented)return;b.preventDefault();let L=b.nativeEvent.submitter,_=L?.getAttribute("formmethod")||i;S(L||b.currentTarget,{fetcherKey:n,method:_,navigate:r,replace:o,state:l,relative:u,preventScrollReset:f,viewTransition:p})};return B.createElement("form",gt({ref:t,method:h,action:m,onSubmit:a?d:g},w))});process.env.NODE_ENV!=="production"&&(Ed.displayName="Form"),process.env.NODE_ENV;var kn;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(kn||(kn={}));var As;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(As||(As={}));function Ld(e){return e+" must be used within a data router. See https://reactrouter.com/v6/routers/picking-a-router."}function Es(e){let t=B.useContext(Wt);return t||(process.env.NODE_ENV!=="production"?se(!1,Ld(e)):se(!1)),t}function Td(e,t){let{target:n,replace:r,state:a,preventScrollReset:o,relative:l,viewTransition:i}=t===void 0?{}:t,c=Pe(),d=xe(),u=Ht(e,{relative:l});return B.useCallback(f=>{if(fd(f,n)){f.preventDefault();let p=r!==void 0?r:qt(d)===qt(u);c(e,{replace:p,state:a,preventScrollReset:o,relative:l,viewTransition:i})}},[d,c,u,r,a,n,e,o,l,i])}function Ls(e){process.env.NODE_ENV!=="production"&&Le(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=B.useRef(Or(e)),n=B.useRef(!1),r=xe(),a=B.useMemo(()=>pd(r.search,n.current?null:t.current),[r.search]),o=Pe(),l=B.useCallback((i,c)=>{const d=Or(typeof i=="function"?i(a):i);n.current=!0,o("?"+d,c)},[o,a]);return[a,l]}function Id(){if(typeof document>"u")throw new Error("You are calling submit during the server render. Try calling submit within a `useEffect` or callback instead.")}let Fd=0,kd=()=>"__"+String(++Fd)+"__";function Od(){let{router:e}=Es(kn.UseSubmit),{basename:t}=B.useContext(Oe),n=td();return B.useCallback(function(r,a){a===void 0&&(a={}),Id();let{action:o,method:l,encType:i,formData:c,body:d}=gd(r,t);if(a.navigate===!1){let u=a.fetcherKey||kd();e.fetch(u,n,a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,flushSync:a.flushSync})}else e.navigate(a.action||o,{preventScrollReset:a.preventScrollReset,formData:c,body:d,formMethod:a.method||l,formEncType:a.encType||i,replace:a.replace,state:a.state,fromRouteId:n,flushSync:a.flushSync,viewTransition:a.viewTransition})},[e,t,n])}function Dd(e,t){let{relative:n}=t===void 0?{}:t,{basename:r}=B.useContext(Oe),a=B.useContext(Me);a||(process.env.NODE_ENV!=="production"?se(!1,"useFormAction must be used inside a RouteContext"):se(!1));let[o]=a.matches.slice(-1),l=gt({},Ht(e||".",{relative:n})),i=xe();if(e==null){l.search=i.search;let c=new URLSearchParams(l.search),d=c.getAll("index");if(d.some(f=>f==="")){c.delete("index"),d.filter(p=>p).forEach(p=>c.append("index",p));let f=c.toString();l.search=f?"?"+f:""}}return(!e||e===".")&&o.route.index&&(l.search=l.search?l.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(l.pathname=l.pathname==="/"?r:qe([r,l.pathname])),qt(l)}function Md(e,t){t===void 0&&(t={});let n=B.useContext(Cs);n==null&&(process.env.NODE_ENV!=="production"?se(!1,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?"):se(!1));let{basename:r}=Es(kn.useViewTransitionState),a=Ht(e,{relative:t.relative});if(!n.isTransitioning)return!1;let o=Ze(n.currentLocation.pathname,r)||n.currentLocation.pathname,l=Ze(n.nextLocation.pathname,r)||n.nextLocation.pathname;return Nr(a.pathname,l)!=null||Nr(a.pathname,o)!=null}function Ts(e,t){return function(){return e.apply(t,arguments)}}const{toString:xd}=Object.prototype,{getPrototypeOf:yt}=Object,{iterator:Yt,toStringTag:Is}=Symbol,On=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),Gt=(e,t)=>{let n=e;const r=[];for(;n!=null&&n!==Object.prototype;){if(r.indexOf(n)!==-1)return!1;if(r.push(n),On(n,t))return!0;n=yt(n)}return!1},Pd=(e,t)=>e!=null&&Gt(e,t)?e[t]:void 0,Mr=(e=>t=>{const n=xd.call(t);return e[n]||(e[n]=n.slice(8,-1).toLowerCase())})(Object.create(null)),Te=e=>(e=e.toLowerCase(),t=>Mr(t)===e),Dn=e=>t=>typeof t===e,{isArray:nt}=Array,rt=Dn("undefined");function bt(e){return e!==null&&!rt(e)&&e.constructor!==null&&!rt(e.constructor)&&we(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const Fs=Te("ArrayBuffer");function Ud(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Fs(e.buffer),t}const $d=Dn("string"),we=Dn("function"),ks=Dn("number"),St=e=>e!==null&&typeof e=="object",Bd=e=>e===!0||e===!1,Mn=e=>{if(!St(e))return!1;const t=yt(e);return(t===null||t===Object.prototype||yt(t)===null)&&!Gt(e,Is)&&!Gt(e,Yt)},jd=e=>{if(!St(e)||bt(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},qd=Te("Date"),Vd=Te("File"),Wd=e=>!!(e&&typeof e.uri<"u"),zd=e=>e&&typeof e.getParts<"u",Hd=Te("Blob"),Kd=Te("FileList"),Yd=Te("Set"),Gd=e=>St(e)&&we(e.pipe);function Jd(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}const Os=Jd(),Ds=typeof Os.FormData<"u"?Os.FormData:void 0,Zd=e=>{if(!e)return!1;if(Ds&&e instanceof Ds)return!0;const t=yt(e);if(!t||t===Object.prototype||!we(e.append))return!1;const n=Mr(e);return n==="formdata"||n==="object"&&we(e.toString)&&e.toString()==="[object FormData]"},Xd=Te("URLSearchParams"),[Qd,Rd,eu,tu]=["ReadableStream","Request","Response","Headers"].map(Te),nu=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Jt(e,t,{allOwnKeys:n=!1}={}){if(e===null||typeof e>"u")return;let r,a;if(typeof e!="object"&&(e=[e]),nt(e))for(r=0,a=e.length;r<a;r++)t.call(null,e[r],r,e);else{if(bt(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),l=o.length;let i;for(r=0;r<l;r++)i=o[r],t.call(null,e[i],i,e)}}function Ms(e,t){if(bt(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r=n.length,a;for(;r-- >0;)if(a=n[r],t===a.toLowerCase())return a;return null}const at=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,xs=e=>!rt(e)&&e!==at;function xr(...e){const{caseless:t,skipUndefined:n}=xs(this)&&this||{},r={},a=(o,l)=>{if(l==="__proto__"||l==="constructor"||l==="prototype")return;const i=t&&typeof l=="string"&&Ms(r,l)||l,c=On(r,i)?r[i]:void 0;Mn(c)&&Mn(o)?r[i]=xr(c,o):Mn(o)?r[i]=xr({},o):nt(o)?r[i]=o.slice():(!n||!rt(o))&&(r[i]=o)};for(let o=0,l=e.length;o<l;o++){const i=e[o];if(!i||bt(i)||(Jt(i,a),typeof i!="object"||nt(i)))continue;const c=Object.getOwnPropertySymbols(i);for(let d=0;d<c.length;d++){const u=c[d];hu.call(i,u)&&a(i[u],u)}}return r}const ru=(e,t,n,{allOwnKeys:r}={})=>(Jt(t,(a,o)=>{n&&we(a)?Object.defineProperty(e,o,{__proto__:null,value:Ts(a,n),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{__proto__:null,value:a,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),au=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),su=(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),n&&Object.assign(e.prototype,n)},ou=(e,t,n,r)=>{let a,o,l;const i={};if(t=t||{},e==null)return t;do{for(a=Object.getOwnPropertyNames(e),o=a.length;o-- >0;)l=a[o],(!r||r(l,e,t))&&!i[l]&&(t[l]=e[l],i[l]=!0);e=n!==!1&&yt(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},lu=(e,t,n)=>{e=String(e),(n===void 0||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return r!==-1&&r===n},iu=e=>{if(!e)return null;if(nt(e))return e;let t=e.length;if(!ks(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},cu=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&yt(Uint8Array)),du=(e,t)=>{const r=(e&&e[Yt]).call(e);let a;for(;(a=r.next())&&!a.done;){const o=a.value;t.call(e,o[0],o[1])}},uu=(e,t)=>{let n;const r=[];for(;(n=e.exec(t))!==null;)r.push(n);return r},fu=Te("HTMLFormElement"),pu=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(n,r,a){return r.toUpperCase()+a}),{propertyIsEnumerable:hu}=Object.prototype,mu=Te("RegExp"),Ps=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};Jt(n,(a,o)=>{let l;(l=t(a,o,e))!==!1&&(r[o]=l||a)}),Object.defineProperties(e,r)},gu=e=>{Ps(e,(t,n)=>{if(we(e)&&["arguments","caller","callee"].includes(n))return!1;const r=e[n];if(we(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")})}})},yu=(e,t)=>{const n={},r=a=>{a.forEach(o=>{n[o]=!0})};return nt(e)?r(e):r(String(e).split(t)),n},bu=()=>{},Su=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function vu(e){return!!(e&&we(e.append)&&e[Is]==="FormData"&&e[Yt])}const wu=e=>{const t=new WeakSet,n=r=>{if(St(r)){if(t.has(r))return;if(bt(r))return r;if(!("toJSON"in r)){t.add(r);let a;if(Yd(r)){a=[];for(const o of r){const l=n(o);!rt(l)&&a.push(l)}}else a=nt(r)?[]:{},Jt(r,(o,l)=>{const i=n(o);!rt(i)&&(a[l]=i)});return t.delete(r),a}}return r};return n(e)},Cu=Te("AsyncFunction"),_u=e=>e&&(St(e)||we(e))&&we(e.then)&&we(e.catch),Us=((e,t)=>e?setImmediate:t?((n,r)=>(at.addEventListener("message",({source:a,data:o})=>{a===at&&o===n&&r.length&&r.shift()()},!1),a=>{r.push(a),at.postMessage(n,"*")}))(`axios@${Math.random()}`,[]):n=>setTimeout(n))(typeof setImmediate=="function",we(at.postMessage)),Nu=typeof queueMicrotask<"u"?queueMicrotask.bind(at):typeof process<"u"&&process.nextTick||Us,$s=e=>e!=null&&we(e[Yt]),v={isArray:nt,isArrayBuffer:Fs,isBuffer:bt,isFormData:Zd,isArrayBufferView:Ud,isString:$d,isNumber:ks,isBoolean:Bd,isObject:St,isPlainObject:Mn,isEmptyObject:jd,isReadableStream:Qd,isRequest:Rd,isResponse:eu,isHeaders:tu,isUndefined:rt,isDate:qd,isFile:Vd,isReactNativeBlob:Wd,isReactNative:zd,isBlob:Hd,isRegExp:mu,isFunction:we,isStream:Gd,isURLSearchParams:Xd,isTypedArray:cu,isFileList:Kd,forEach:Jt,merge:xr,extend:ru,trim:nu,stripBOM:au,inherits:su,toFlatObject:ou,kindOf:Mr,kindOfTest:Te,endsWith:lu,toArray:iu,forEachEntry:du,matchAll:uu,isHTMLForm:fu,hasOwnProperty:On,hasOwnProp:On,hasOwnInPrototypeChain:Gt,getSafeProp:Pd,reduceDescriptors:Ps,freezeMethods:gu,toObjectSet:yu,toCamelCase:pu,noop:bu,toFiniteNumber:Su,findKey:Ms,global:at,isContextDefined:xs,isSpecCompliantForm:vu,toJSONObject:wu,isAsyncFn:Cu,isThenable:_u,setImmediate:Us,asap:Nu,isIterable:$s,isSafeIterable:e=>e!=null&&Gt(e,Yt)&&$s(e)},Au=v.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Eu=e=>{const t={};let n,r,a;return e&&e.split(`
|
|
4
|
+
`).forEach(function(l){a=l.indexOf(":"),n=l.substring(0,a).trim().toLowerCase(),r=l.substring(a+1).trim();const i=v.hasOwnProp(t,n);!n||i&&v.hasOwnProp(Au,n)||(n==="set-cookie"?i?t[n].push(r):t[n]=[r]:t[n]=i?t[n]+", "+r:r)}),t};function Lu(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}const Tu=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),Iu=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function Pr(e,t){return v.isArray(e)?e.map(n=>Pr(n,t)):Lu(String(e).replace(t,""))}const Fu=e=>Pr(e,Tu),ku=e=>Pr(e,Iu);function Bs(e){const t=Object.create(null);return v.forEach(e.toJSON(),(n,r)=>{t[r]=ku(n)}),t}const js=Symbol("internals");function Zt(e){return e&&String(e).trim().toLowerCase()}function xn(e){return e===!1||e==null?e:v.isArray(e)?e.map(xn):Fu(String(e))}function Ou(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}const Du=/^[!#$%&'*+\-.^_`|~0-9A-Za-z]+$/;function Ur(e){let t=0,n=e.length;for(;t<n;){const r=e.charCodeAt(t);if(r!==9&&r!==32)break;t+=1}for(;n>t;){const r=e.charCodeAt(n-1);if(r!==9&&r!==32)break;n-=1}return t===0&&n===e.length?e:e.slice(t,n)}function Mu(e){const t=e.length-1;if(t<1||e.charCodeAt(0)!==34||e.charCodeAt(t)!==34)return e;let n="";for(let r=1;r<t;r++){const a=e.charCodeAt(r);if(a===34||a===92&&(r+=1,r>=t))return e;n+=e[r]}return n}function xu(e){const t=Object.create(null),n=String(e);let r=0,a=!1,o=!1;function l(i){const c=Ur(n.slice(r,i)),d=c.indexOf("=");if(d<1)return;const u=Ur(c.slice(0,d));if(!Du.test(u))return;const f=u.toLowerCase();if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=Ur(c.slice(d+1));t[f]=Mu(p)}for(let i=0;i<n.length;i++){const c=n.charCodeAt(i);a?o?o=!1:c===92?o=!0:c===34&&(a=!1):c===34?a=!0:(c===44||c===59)&&(l(i),r=i+1)}return l(n.length),t}const Pu=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function $r(e,t,n,r,a){if(v.isFunction(r))return r.call(this,t,n);if(a&&(t=n),!!v.isString(t)){if(v.isString(r))return t.indexOf(r)!==-1;if(v.isRegExp(r))return r.test(t)}}function Uu(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,n,r)=>n.toUpperCase()+r)}function $u(e,t){const n=v.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+n,{__proto__:null,value:function(a,o,l){return this[r].call(this,t,a,o,l)},configurable:!0})})}let Se=class{constructor(t){t&&this.set(t)}set(t,n,r){const a=this;function o(i,c,d){const u=Zt(c);if(!u)return;const f=v.findKey(a,u);(!f||a[f]===void 0||d===!0||d===void 0&&a[f]!==!1)&&(a[f||c]=xn(i))}const l=(i,c)=>v.forEach(i,(d,u)=>o(d,u,c));if(v.isPlainObject(t)||t instanceof this.constructor)l(t,n);else if(v.isString(t)&&(t=t.trim())&&!Pu(t))l(Eu(t),n);else if(v.isObject(t)&&v.isSafeIterable(t)){let i=Object.create(null),c,d;for(const u of t){if(!v.isArray(u))throw new TypeError("Object iterator must return a key-value pair");d=u[0],v.hasOwnProp(i,d)?(c=i[d],i[d]=v.isArray(c)?[...c,u[1]]:[c,u[1]]):i[d]=u[1]}l(i,n)}else t!=null&&o(n,t,r);return this}get(t,n){if(t=Zt(t),t){const r=v.findKey(this,t);if(r){const a=this[r];if(!n)return a;if(n===!0)return Ou(a);if(v.isFunction(n))return n.call(this,a,r);if(v.isRegExp(n))return n.exec(a);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,n){if(t=Zt(t),t){const r=v.findKey(this,t);return!!(r&&this[r]!==void 0&&(!n||$r(this,this[r],r,n)))}return!1}delete(t,n){const r=this;let a=!1;function o(l){if(l=Zt(l),l){const i=v.findKey(r,l);i&&(!n||$r(r,r[i],i,n))&&(delete r[i],a=!0)}}return v.isArray(t)?t.forEach(o):o(t),a}clear(t){const n=Object.keys(this);let r=n.length,a=!1;for(;r--;){const o=n[r];(!t||$r(this,this[o],o,t,!0))&&(delete this[o],a=!0)}return a}normalize(t){const n=this,r={};return v.forEach(this,(a,o)=>{const l=v.findKey(r,o);if(l){n[l]=xn(a),delete n[o];return}const i=t?Uu(o):String(o).trim();i!==o&&delete n[o],n[i]=xn(a),r[i]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const n=Object.create(null);return v.forEach(this,(r,a)=>{r!=null&&r!==!1&&(n[a]=t&&v.isArray(r)?r.join(", "):r)}),n}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,n])=>t+": "+n).join(`
|
|
5
|
+
`)}getSetCookie(){const t=this.get("set-cookie");return v.isArray(t)?t:t==null||t===!1?[]:[t]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static parseParameters(t){return xu(t)}static concat(t,...n){const r=new this(t);return n.forEach(a=>r.set(a)),r}static accessor(t){const r=(this[js]=this[js]={accessors:{}}).accessors,a=this.prototype;function o(l){const i=Zt(l);r[i]||($u(a,l),r[i]=!0)}return v.isArray(t)?t.forEach(o):o(t),this}};Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),v.reduceDescriptors(Se.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}}),v.freezeMethods(Se);const Pn="[REDACTED ****]";function Bu(e){if(v.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(v.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function ju(e,t){const n=new Set(t.map(o=>String(o).toLowerCase())),r=[],a=o=>{if(o===null||typeof o!="object"||v.isBuffer(o))return o;if(r.indexOf(o)!==-1)return;o instanceof Se&&(o=o.toJSON()),r.push(o);let l;if(v.isArray(o))l=[],o.forEach((i,c)=>{const d=a(i);v.isUndefined(d)||(l[c]=d)});else{if(!v.isPlainObject(o)&&Bu(o))return r.pop(),o;l=Object.create(null);for(const[i,c]of Object.entries(o)){const d=n.has(i.toLowerCase())?Pn:a(c);v.isUndefined(d)||(l[i]=d)}}return r.pop(),l};return a(e)}function qs(e){try{return String(e)}catch{return""}}function qu(e){return e.errors.map(n=>{try{return n&&n.message?qs(n.message):qs(n)}catch{return""}}).filter(Boolean).join("; ")||e.name||"AggregateError"}let Y=class fc extends Error{static from(t,n,r,a,o,l){let i=t.message;!i&&v.isArray(t.errors)&&t.errors.length&&(i=qu(t));const c=new fc(i,n||t.code,r,a,o);return Object.defineProperty(c,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),c.name=t.name,t.status!=null&&c.status==null&&(c.status=t.status),l&&Object.assign(c,l),c}constructor(t,n,r,a,o){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,n&&(this.code=n),r&&(this.config=r),a&&(this.request=a),o&&(this.response=o,this.status=o.status)}toJSON(){const t=this.config,n=t&&v.hasOwnProp(t,"redact")?t.redact:void 0,r=v.isArray(n)&&n.length>0?ju(t,n):v.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};Y.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE",Y.ERR_BAD_OPTION="ERR_BAD_OPTION",Y.ECONNABORTED="ECONNABORTED",Y.ETIMEDOUT="ETIMEDOUT",Y.ECONNREFUSED="ECONNREFUSED",Y.ERR_NETWORK="ERR_NETWORK",Y.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS",Y.ERR_DEPRECATED="ERR_DEPRECATED",Y.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE",Y.ERR_BAD_REQUEST="ERR_BAD_REQUEST",Y.ERR_CANCELED="ERR_CANCELED",Y.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT",Y.ERR_INVALID_URL="ERR_INVALID_URL",Y.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";const Vu=null,Vs=100;function Br(e){return v.isPlainObject(e)||v.isArray(e)}function Ws(e){return v.endsWith(e,"[]")?e.slice(0,-2):e}function jr(e,t,n){return e?e.concat(t).map(function(a,o){return a=Ws(a),!n&&o?"["+a+"]":a}).join(n?".":""):t}function Wu(e){return v.isArray(e)&&!e.some(Br)}const zu=v.toFlatObject(v,{},null,function(t){return/^is[A-Z]/.test(t)});function Un(e,t,n){if(!v.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,n=v.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,function(b,L){return!v.isUndefined(L[b])});const r=n.metaTokens,a=n.visitor||S,o=n.dots,l=n.indexes,i=n.Blob||typeof Blob<"u"&&Blob,c=n.maxDepth===void 0?Vs:n.maxDepth,d=i&&v.isSpecCompliantForm(t),u=[];if(!v.isFunction(a))throw new TypeError("visitor must be a function");function f(g){if(g===null)return"";if(v.isDate(g))return g.toISOString();if(v.isBoolean(g))return g.toString();if(!d&&v.isBlob(g))throw new Y("Blob is not supported. Use a Buffer instead.");if(v.isArrayBuffer(g)||v.isTypedArray(g)){if(d&&typeof i=="function")return new i([g]);throw new Y("Blob is not supported. Use a Buffer instead.",Y.ERR_NOT_SUPPORT)}return g}function p(g){if(g>c)throw new Y("Object is too deeply nested ("+g+" levels). Max depth: "+c,Y.ERR_FORM_DATA_DEPTH_EXCEEDED)}function w(g,b){if(c===1/0)return JSON.stringify(g);const L=[];return JSON.stringify(g,function(x,T){if(!v.isObject(T))return T;for(;L.length&&L[L.length-1]!==this;)L.pop();return L.push(T),p(b+L.length-1),T})}function S(g,b,L){let _=g;if(v.isReactNative(t)&&v.isReactNativeBlob(g))return t.append(jr(L,b,o),f(g)),!1;if(g&&!L&&typeof g=="object"){if(v.endsWith(b,"{}"))b=r?b:b.slice(0,-2),g=w(g,1);else if(v.isArray(g)&&Wu(g)||(v.isFileList(g)||v.endsWith(b,"[]"))&&(_=v.toArray(g)))return b=Ws(b),_.forEach(function(T,V){!(v.isUndefined(T)||T===null)&&t.append(l===!0?jr([b],V,o):l===null?b:b+"[]",f(T))}),!1}return Br(g)?!0:(t.append(jr(L,b,o),f(g)),!1)}const m=Object.assign(zu,{defaultVisitor:S,convertValue:f,isVisitable:Br});function h(g,b,L=0){if(!v.isUndefined(g)){if(p(L),u.indexOf(g)!==-1)throw new Error("Circular reference detected in "+b.join("."));u.push(g),v.forEach(g,function(x,T){(!(v.isUndefined(x)||x===null)&&a.call(t,x,v.isString(T)?T.trim():T,b,m))===!0&&h(x,b?b.concat(T):[T],L+1)}),u.pop()}}if(!v.isObject(e))throw new TypeError("data must be an object");return h(e),t}function zs(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function qr(e,t){this._pairs=[],e&&Un(e,this,t)}const Hs=qr.prototype;Hs.append=function(t,n){this._pairs.push([t,n])},Hs.toString=function(t){const n=t?r=>t.call(this,r,zs):zs;return this._pairs.map(function(a){return n(a[0])+"="+n(a[1])},"").join("&")};function Hu(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Ks(e,t,n){if(!t)return e;e=e||"";const r=v.isFunction(n)?{serialize:n}:n,a=v.getSafeProp(r,"encode")||Hu,o=v.getSafeProp(r,"serialize");let l;if(o?l=o(t,r):l=v.isURLSearchParams(t)?t.toString():new qr(t,r).toString(a),l){const i=e.indexOf("#");i!==-1&&(e=e.slice(0,i)),e+=(e.indexOf("?")===-1?"?":"&")+l}return e}class Ys{constructor(){this.handlers=[]}use(t,n,r){return this.handlers.push({fulfilled:t,rejected:n,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){v.forEach(this.handlers,function(r){r!==null&&t(r)})}}const Vr={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0},Ku={isBrowser:!0,classes:{URLSearchParams:typeof URLSearchParams<"u"?URLSearchParams:qr,FormData:typeof FormData<"u"?FormData:null,Blob:typeof Blob<"u"?Blob:null},protocols:["http","https","file","blob","url","data"]},Wr=typeof window<"u"&&typeof document<"u",zr=typeof navigator=="object"&&navigator||void 0,Yu=Wr&&(!zr||["ReactNative","NativeScript","NS"].indexOf(zr.product)<0),Gu=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Ju=Wr&&window.location.href||"http://localhost",ge={...Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Wr,hasStandardBrowserEnv:Yu,hasStandardBrowserWebWorkerEnv:Gu,navigator:zr,origin:Ju},Symbol.toStringTag,{value:"Module"})),...Ku};function Zu(e,t){return Un(e,new ge.classes.URLSearchParams,{visitor:function(n,r,a,o){return ge.isNode&&v.isBuffer(n)?(this.append(r,n.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}const Gs=Vs;function Js(e){if(e>Gs)throw new Y("FormData field is too deeply nested ("+e+" levels). Max depth: "+Gs,Y.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Xu(e){const t=[],n=/[^.[\]]+|\[([^.[\]]*)]/g;let r;for(;(r=n.exec(e))!==null;)Js(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function Qu(e){const t={},n=Object.keys(e);let r;const a=n.length;let o;for(r=0;r<a;r++)o=n[r],t[o]=e[o];return t}function Zs(e){function t(n,r,a,o){Js(o);let l=n[o++];if(l==="__proto__")return!0;const i=Number.isFinite(+l),c=o>=n.length;return l=!l&&v.isArray(a)?a.length:l,c?(v.hasOwnProp(a,l)?a[l]=v.isArray(a[l])?a[l].concat(r):[a[l],r]:a[l]=r,!i):((!v.hasOwnProp(a,l)||!v.isObject(a[l]))&&(a[l]=[]),t(n,r,a[l],o)&&v.isArray(a[l])&&(a[l]=Qu(a[l])),!i)}if(v.isFormData(e)&&v.isFunction(e.entries)){const n={};return v.forEachEntry(e,(r,a)=>{t(Xu(r),a,n,0)}),n}return null}const vt=(e,t)=>e!=null&&v.hasOwnProp(e,t)?e[t]:void 0;function Ru(e,t,n){if(v.isString(e))try{return(t||JSON.parse)(e),v.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(n||JSON.stringify)(e)}const Xt={transitional:Vr,adapter:["xhr","http","fetch"],transformRequest:[function(t,n){const r=n.getContentType()||"",a=r.indexOf("application/json")>-1,o=v.isObject(t);if(o&&v.isHTMLForm(t)&&(t=new FormData(t)),v.isFormData(t))return a?JSON.stringify(Zs(t)):t;if(v.isArrayBuffer(t)||v.isBuffer(t)||v.isStream(t)||v.isFile(t)||v.isBlob(t)||v.isReadableStream(t))return t;if(v.isArrayBufferView(t))return t.buffer;if(v.isURLSearchParams(t))return n.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let i;if(o){const c=vt(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return Zu(t,c).toString();if((i=v.isFileList(t))||r.indexOf("multipart/form-data")>-1){const d=vt(this,"env"),u=d&&d.FormData;return Un(i?{"files[]":t}:t,u&&new u,c)}}return o||a?(n.setContentType("application/json",!1),Ru(t)):t}],transformResponse:[function(t){const n=vt(this,"transitional")||Xt.transitional,r=n&&n.forcedJSONParsing,a=vt(this,"responseType"),o=a==="json";if(v.isResponse(t)||v.isReadableStream(t))return t;if(t&&v.isString(t)&&(r&&!a||o)){const i=!(n&&n.silentJSONParsing)&&o;try{return JSON.parse(t,vt(this,"parseReviver"))}catch(c){if(i)throw c.name==="SyntaxError"?Y.from(c,Y.ERR_BAD_RESPONSE,this,null,vt(this,"response")):c}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ge.classes.FormData,Blob:ge.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};v.forEach(["delete","get","head","post","put","patch","query"],e=>{Xt.headers[e]={}});function Hr(e,t){const n=this||Xt,r=t||n,a=Se.from(r.headers);let o=r.data;return v.forEach(e,function(i){o=i.call(n,o,a.normalize(),t?t.status:void 0)}),a.normalize(),o}function Xs(e){return!!(e&&e.__CANCEL__)}let Qt=class extends Y{constructor(t,n,r){super(t??"canceled",Y.ERR_CANCELED,n,r),this.name="CanceledError",this.__CANCEL__=!0}};function Qs(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new Y("Request failed with status code "+n.status,n.status>=400&&n.status<500?Y.ERR_BAD_REQUEST:Y.ERR_BAD_RESPONSE,n.config,n.request,n))}function ef(e){const t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function tf(e,t){e=e||10;const n=new Array(e),r=new Array(e);let a=0,o=0,l;return t=t!==void 0?t:1e3,function(c){const d=Date.now(),u=r[o];l||(l=d),n[a]=c,r[a]=d;let f=o,p=0;for(;f!==a;)p+=n[f++],f=f%e;if(a=(a+1)%e,a===o&&(o=(o+1)%e),d-l<t)return;const w=u&&d-u;return w?Math.round(p*1e3/w):void 0}}function nf(e,t){let n=0,r=1e3/t,a,o;const l=(d,u=Date.now())=>{n=u,a=null,o&&(clearTimeout(o),o=null),e(...d)};return[(...d)=>{const u=Date.now(),f=u-n;f>=r?l(d,u):(a=d,o||(o=setTimeout(()=>{o=null,l(a)},r-f)))},()=>a&&l(a)]}const $n=(e,t,n=3)=>{let r=0;const a=tf(50,250);return nf(o=>{if(!o||typeof o.loaded!="number")return;const l=o.loaded,i=o.lengthComputable?o.total:void 0,c=Math.max(0,i!=null?Math.min(l,i):l),d=Math.max(0,c-r),u=a(d);r=Math.max(r,c);const f={loaded:c,total:i,progress:i?c/i:void 0,bytes:d,rate:u||void 0,estimated:u&&i?(i-c)/u:void 0,event:o,lengthComputable:i!=null,[t?"download":"upload"]:!0};e(f)},n)},Rs=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},eo=(e,t=v.asap)=>(...n)=>t(()=>e(...n)),rf=ge.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ge.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ge.origin),ge.navigator&&/(msie|trident)/i.test(ge.navigator.userAgent)):()=>!0,af=ge.hasStandardBrowserEnv?{write(e,t,n,r,a,o,l){if(typeof document>"u")return;const i=[`${e}=${encodeURIComponent(t)}`];v.isNumber(n)&&i.push(`expires=${new Date(n).toUTCString()}`),v.isString(r)&&i.push(`path=${r}`),v.isString(a)&&i.push(`domain=${a}`),o===!0&&i.push("secure"),v.isString(l)&&i.push(`SameSite=${l}`),document.cookie=i.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.split(";");for(let n=0;n<t.length;n++){const r=t[n].replace(/^\s+/,""),a=r.indexOf("=");if(a!==-1&&r.slice(0,a)===e)try{return decodeURIComponent(r.slice(a+1))}catch{return r.slice(a+1)}}return null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function sf(e){return typeof e!="string"?!1:/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function of(e,t){if(!t)return e;let n=e.length;for(;n>0&&e.charCodeAt(n-1)===47;)n--;return e.slice(0,n)+"/"+t.replace(/^\/+/,"")}const lf=/^https?:(?!\/\/)/i,cf=/[\t\n\r]/g;function df(e){let t=0;for(;t<e.length&&e.charCodeAt(t)<=32;)t++;return e.slice(t)}function uf(e){return df(e).replace(cf,"")}function ff(e){return e&&e.replace(/(^|&)([^=&]*=)?[^&]+/g,(t,n,r="")=>`${n}${r}${Pn}`)}function pf(e){const t=e.replace(/^(https?:\/{0,2})[^/?#]*@/i,`$1${Pn}@`),n=t.indexOf("#"),a=(n===-1?t:t.slice(0,n)).replace(/([?&][^=&#]*=)[^&#]*/g,`$1${Pn}`);return n===-1?a:`${a}#${ff(t.slice(n+1))}`}function to(e,t){if(typeof e=="string"){const n=uf(e);if(lf.test(n))throw new Y(`Invalid URL ${JSON.stringify(pf(n))}: missing "//" after protocol`,Y.ERR_INVALID_URL,t)}}function no(e,t,n,r){to(t,r);let a=!sf(t);return e&&(a||n===!1)?(to(e,r),of(e,t)):t}const ro=e=>e instanceof Se?{...e}:e,hf=e=>Object.getOwnPropertySymbols&&Object.getOwnPropertyDescriptor?Object.keys(e).concat(Object.getOwnPropertySymbols(e).filter(t=>Object.getOwnPropertyDescriptor(e,t).enumerable)):Object.keys(e);function st(e,t){e=e||{},t=t||{};const n=Object.create(null);Object.defineProperty(n,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(u,f,p,w){return v.isPlainObject(u)&&v.isPlainObject(f)?v.merge.call({caseless:w},u,f):v.isPlainObject(f)?v.merge({},f):v.isArray(f)?f.slice():f}function a(u,f,p,w){if(v.isUndefined(f)){if(!v.isUndefined(u))return r(void 0,u,p,w)}else return r(u,f,p,w)}function o(u,f){if(!v.isUndefined(f))return r(void 0,f)}function l(u,f){if(v.isUndefined(f)){if(!v.isUndefined(u))return r(void 0,u)}else return r(void 0,f)}function i(u){const f=v.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!v.isUndefined(f))if(v.isPlainObject(f)){if(v.hasOwnProp(f,u))return f[u]}else return;const p=v.hasOwnProp(e,"transitional")?e.transitional:void 0;if(v.isPlainObject(p)&&v.hasOwnProp(p,u))return p[u]}function c(u,f,p){if(v.hasOwnProp(t,p))return r(u,f);if(v.hasOwnProp(e,p))return r(void 0,u)}const d={url:o,method:o,data:o,baseURL:l,transformRequest:l,transformResponse:l,paramsSerializer:l,timeout:l,timeoutMessage:l,withCredentials:l,withXSRFToken:l,adapter:l,responseType:l,xsrfCookieName:l,xsrfHeaderName:l,onUploadProgress:l,onDownloadProgress:l,decompress:l,maxContentLength:l,maxBodyLength:l,beforeRedirect:l,transport:l,httpAgent:l,httpsAgent:l,cancelToken:l,socketPath:l,allowedSocketPaths:l,responseEncoding:l,validateStatus:c,headers:(u,f,p)=>a(ro(u),ro(f),p,!0)};return v.forEach(hf({...e,...t}),function(f){if(f==="__proto__"||f==="constructor"||f==="prototype")return;const p=v.hasOwnProp(d,f)?d[f]:a,w=v.hasOwnProp(e,f)?e[f]:void 0,S=v.hasOwnProp(t,f)?t[f]:void 0,m=p(w,S,f);v.isUndefined(m)&&p!==c||(n[f]=m)}),v.hasOwnProp(t,"validateStatus")&&v.isUndefined(t.validateStatus)&&i("validateStatusUndefinedResolves")===!1&&(v.hasOwnProp(e,"validateStatus")?n.validateStatus=r(void 0,e.validateStatus):delete n.validateStatus),n}const mf=["content-type","content-length"];function gf(e,t,n){if(n!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,a])=>{mf.includes(r.toLowerCase())&&e.set(r,a)})}const yf=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16)));function ao(e){const t=st({},e),n=p=>v.hasOwnProp(t,p)?t[p]:void 0,r=n("data");let a=n("withXSRFToken");const o=n("xsrfHeaderName"),l=n("xsrfCookieName");let i=n("headers");const c=n("auth"),d=n("baseURL"),u=n("allowAbsoluteUrls"),f=n("url");if(t.headers=i=Se.from(i),t.url=Ks(no(d,f,u,t),n("params"),n("paramsSerializer")),c){const p=v.getSafeProp(c,"username")||"",w=v.getSafeProp(c,"password")||"";try{i.set("Authorization","Basic "+btoa(p+":"+(w?yf(w):"")))}catch(S){throw Y.from(S,Y.ERR_BAD_OPTION_VALUE,e)}}if(v.isFormData(r)&&(ge.hasStandardBrowserEnv||ge.hasStandardBrowserWebWorkerEnv||v.isReactNative(r)?i.setContentType(void 0):v.isFunction(r.getHeaders)&&gf(i,r.getHeaders(),n("formDataHeaderPolicy"))),ge.hasStandardBrowserEnv&&(v.isFunction(a)&&(a=a(t)),a===!0||a==null&&rf(t.url))){const w=o&&l&&af.read(l);w&&i.set(o,w)}return t}const bf=typeof XMLHttpRequest<"u"&&function(e){return new Promise(function(n,r){const a=ao(e);let o=a.data;const l=Se.from(a.headers).normalize();let{responseType:i,onUploadProgress:c,onDownloadProgress:d}=a,u,f,p,w,S;function m(){w&&w(),S&&S(),a.cancelToken&&a.cancelToken.unsubscribe(u),a.signal&&a.signal.removeEventListener("abort",u)}let h=new XMLHttpRequest;h.open(a.method.toUpperCase(),a.url,!0),h.timeout=a.timeout;function g(){if(!h)return;const L=Se.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),x={data:!i||i==="text"||i==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:L,config:e,request:h};Qs(function(V){n(V),m()},function(V){r(V),m()},x),h=null}"onloadend"in h?h.onloadend=g:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.startsWith("file:"))||setTimeout(g)},h.onabort=function(){h&&(r(new Y("Request aborted",Y.ECONNABORTED,e,h)),m(),h=null)},h.onerror=function(_){const x=_&&_.message?_.message:"Network Error",T=new Y(x,Y.ERR_NETWORK,e,h);T.event=_||null,r(T),m(),h=null},h.ontimeout=function(){let _=a.timeout?"timeout of "+a.timeout+"ms exceeded":"timeout exceeded";const x=a.transitional||Vr;a.timeoutErrorMessage&&(_=a.timeoutErrorMessage),r(new Y(_,x.clarifyTimeoutError?Y.ETIMEDOUT:Y.ECONNABORTED,e,h)),m(),h=null},o===void 0&&l.setContentType(null),"setRequestHeader"in h&&v.forEach(Bs(l),function(_,x){h.setRequestHeader(x,_)}),v.isUndefined(a.withCredentials)||(h.withCredentials=!!a.withCredentials),i&&i!=="json"&&(h.responseType=a.responseType),d&&([p,S]=$n(d,!0),h.addEventListener("progress",p)),c&&h.upload&&([f,w]=$n(c),h.upload.addEventListener("progress",f),h.upload.addEventListener("loadend",w)),(a.cancelToken||a.signal)&&(u=L=>{h&&(r(!L||L.type?new Qt(null,e,h):L),h.abort(),m(),h=null)},a.cancelToken&&a.cancelToken.subscribe(u),a.signal&&(a.signal.aborted?u():a.signal.addEventListener("abort",u)));const b=ef(a.url);if(b&&!ge.protocols.includes(b)){r(new Y("Unsupported protocol "+b+":",Y.ERR_BAD_REQUEST,e)),m();return}h.send(o||null)})},Sf=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;const n=new AbortController;let r=!1;const a=function(c){if(!r){r=!0,l();const d=c instanceof Error?c:this.reason;n.abort(d instanceof Y?d:new Qt(d instanceof Error?d.message:d))}};let o=t&&setTimeout(()=>{o=null,a(new Y(`timeout of ${t}ms exceeded`,Y.ETIMEDOUT))},t);const l=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(a):c.removeEventListener("abort",a)}),e=null)};e.forEach(c=>{if(!r){if(c.aborted){a.call(c);return}c.addEventListener("abort",a,{once:!0})}});const{signal:i}=n;return i.unsubscribe=()=>v.asap(l),i},vf=function*(e,t){let n=e.byteLength;if(n<t){yield e;return}let r=0,a;for(;r<n;)a=r+t,yield e.slice(r,a),r=a},wf=async function*(e,t){for await(const n of Cf(e))yield*vf(n,t)},Cf=async function*(e){if(e[Symbol.asyncIterator]){yield*e;return}const t=e.getReader();try{for(;;){const{done:n,value:r}=await t.read();if(n)break;yield r}}finally{await t.cancel()}},so=(e,t,n,r)=>{const a=wf(e,t);let o=0,l,i=c=>{l||(l=!0,r&&r(c))};return new ReadableStream({async pull(c){try{const{done:d,value:u}=await a.next();if(d){i(),c.close();return}let f=u.byteLength;if(n){let p=o+=f;n(p)}c.enqueue(new Uint8Array(u))}catch(d){throw i(d),d}},cancel(c){return i(c),a.return()}},{highWaterMark:2})},oo=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,lo=(e,t,n)=>t+2<n&&oo(e.charCodeAt(t+1))&&oo(e.charCodeAt(t+2)),io=e=>e<=57?e-48:(e&223)-55,_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),n=e%4;return t*3+(n===2?1:n===3?2:0)},Ef=e=>{const t=e.length;let n=0;return t>0&&e.charCodeAt(t-1)===61&&(n++,t>1&&e.charCodeAt(t-2)===61&&n++),Math.floor((t-n)*3/4)},Lf=e=>{const t=e.length;let n=0,r=0,a=!1;for(let o=0;o<t;o++){let l=e.charCodeAt(o);if(l===37&&lo(e,o,t)&&(l=io(e.charCodeAt(o+1))*16+io(e.charCodeAt(o+2)),o+=2),!Nf(l)){if(l===61){r++;continue}if(!_f(l)||r>0){a=!0;continue}n++}}return a||r>2||r>0&&(n+r)%4!==0||n%4===1?Ef(e):Af(n)},Tf=(e,t)=>{if(!e||typeof e!="string"||!e.startsWith("data:"))return 0;const n=e.indexOf(",");if(n<0)return 0;const r=e.slice(5,n),a=e.slice(n+1);if(/;base64/i.test(r))return t(a);let l=0;for(let i=0,c=a.length;i<c;i++){const d=a.charCodeAt(i);if(d===37&&lo(a,i,c))l+=1,i+=2;else if(d<128)l+=1;else if(d<2048)l+=2;else if(d>=55296&&d<=56319&&i+1<c){const u=a.charCodeAt(i+1);u>=56320&&u<=57343?(l+=4,i++):l+=3}else l+=3}return l};function If(e){const t=typeof e=="string"?e.indexOf("#"):-1;return Tf(t===-1?e:e.slice(0,t),Lf)}const Kr="1.19.0",co=64*1024,{isFunction:Bn}=v,Ff=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,n)=>String.fromCharCode(parseInt(n,16))),uo=e=>{if(!v.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},fo=(e,...t)=>{try{return!!e(...t)}catch{return!1}},kf=e=>{const t=e.indexOf("://");let n=e;return t!==-1&&(n=n.slice(t+3)),n.includes("@")||n.includes(":")},Of=e=>{const t=v.global!==void 0&&v.global!==null?v.global:globalThis,{ReadableStream:n,TextEncoder:r}=t;e=v.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);const{fetch:a,Request:o,Response:l}=e,i=a?Bn(a):typeof fetch=="function",c=Bn(o),d=Bn(l);if(!i)return!1;const u=i&&Bn(n),f=i&&(typeof r=="function"?(g=>b=>g.encode(b))(new r):async g=>new Uint8Array(await new o(g).arrayBuffer())),p=c&&u&&fo(()=>{let g=!1;const b=new o(ge.origin,{body:new n,method:"POST",get duplex(){return g=!0,"half"}}),L=b.headers.has("Content-Type");return b.body!=null&&b.body.cancel(),g&&!L}),w=d&&u&&fo(()=>v.isReadableStream(new l("").body)),S={stream:w&&(g=>g.body)};i&&["text","arrayBuffer","blob","formData","stream"].forEach(g=>{!S[g]&&(S[g]=(b,L)=>{let _=b&&b[g];if(_)return _.call(b);throw new Y(`Response type '${g}' is not supported`,Y.ERR_NOT_SUPPORT,L)})});const m=async g=>{if(g==null)return 0;if(v.isBlob(g))return g.size;if(v.isSpecCompliantForm(g))return(await new o(ge.origin,{method:"POST",body:g}).arrayBuffer()).byteLength;if(v.isArrayBufferView(g)||v.isArrayBuffer(g))return g.byteLength;if(v.isURLSearchParams(g)&&(g=g+""),v.isString(g))return(await f(g)).byteLength},h=async(g,b)=>{const L=v.toFiniteNumber(g.getContentLength());return L??m(b)};return async g=>{let{url:b,method:L,data:_,signal:x,cancelToken:T,timeout:V,onDownloadProgress:R,onUploadProgress:Z,responseType:q,headers:K,withCredentials:$="same-origin",fetchOptions:G,maxContentLength:I,maxBodyLength:D}=ao(g);const j=v.isNumber(I)&&I>-1,H=v.isNumber(D)&&D>-1,E=k=>v.hasOwnProp(g,k)?g[k]:void 0;let M=a||fetch;q=q?(q+"").toLowerCase():"text";let C=Sf([x,T&&T.toAbortSignal()],V),F=null;const O=C&&C.unsubscribe&&(()=>{C.unsubscribe()});let W,J=null;const te=()=>new Y("Request body larger than maxBodyLength limit",Y.ERR_BAD_REQUEST,g,F);try{let k;const A=E("auth");if(A){const ne=v.getSafeProp(A,"username")||"",me=v.getSafeProp(A,"password")||"";k={username:ne,password:me}}if(kf(b)){const ne=new URL(b,ge.origin);if(!k&&(ne.username||ne.password)){const me=uo(ne.username),ke=uo(ne.password);k={username:me,password:ke}}(ne.username||ne.password)&&(ne.username="",ne.password="",b=ne.href)}if(k&&(K.delete("authorization"),K.set("Authorization","Basic "+btoa(Ff((k.username||"")+":"+(k.password||""))))),j&&typeof b=="string"&&b.startsWith("data:")&&If(b)>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F);if(H&&L!=="get"&&L!=="head"){const ne=await m(_);if(typeof ne=="number"&&isFinite(ne)&&(W=ne,ne>D))throw te()}const N=H&&(v.isReadableStream(_)||v.isStream(_)),z=(ne,me,ke)=>so(ne,co,Ae=>{if(H&&Ae>D)throw J=te();me&&me(Ae)},ke);if(p&&L!=="get"&&L!=="head"&&(Z||N)){if(W=W??await h(K,_),W!==0||N){let ne=new o(b,{method:"POST",body:_,duplex:"half"}),me;if(v.isFormData(_)&&(me=ne.headers.get("content-type"))&&K.setContentType(me),ne.body){const[ke,Ae]=Z&&Rs(W,$n(eo(Z)))||[];_=z(ne.body,ke,Ae)}}}else if(N&&!c&&u&&L!=="get"&&L!=="head")_=z(_);else if(N&&c&&!p&&L!=="get"&&L!=="head")throw new Y("Stream request bodies are not supported by the current fetch implementation",Y.ERR_NOT_SUPPORT,g,F);v.isString($)||($=$?"include":"omit");const X=c&&"credentials"in o.prototype;if(v.isFormData(_)){const ne=K.getContentType();ne&&/^multipart\/form-data/i.test(ne)&&!/boundary=/i.test(ne)&&K.delete("content-type")}K.set("User-Agent","axios/"+Kr,!1);const ae={...G,signal:C,method:L.toUpperCase(),headers:Bs(K.normalize()),body:_,duplex:"half",credentials:X?$:void 0};F=c&&new o(b,ae);let ue=await(c?M(F,G):M(b,ae));const fe=Se.from(ue.headers);if(j){const ne=v.toFiniteNumber(fe.getContentLength());if(ne!=null&&ne>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F)}const pe=w&&(q==="stream"||q==="response");if(w&&ue.body&&(R||j||pe&&O)){const ne={};["status","statusText","headers"].forEach(je=>{ne[je]=ue[je]});const me=v.toFiniteNumber(fe.getContentLength()),[ke,Ae]=R&&Rs(me,$n(eo(R),!0))||[];let ut=0;const Ye=je=>{if(j&&(ut=je,ut>I))throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F);ke&&ke(je)};ue=new l(so(ue.body,co,Ye,()=>{Ae&&Ae(),O&&O()}),ne)}q=q||"text";let he=await S[v.findKey(S,q)||"text"](ue,g);if(j&&!w&&!pe){let ne;if(he!=null&&(typeof he.byteLength=="number"?ne=he.byteLength:typeof he.size=="number"?ne=he.size:typeof he=="string"&&(ne=typeof r=="function"?new r().encode(he).byteLength:he.length)),typeof ne=="number"&&ne>I)throw new Y("maxContentLength size of "+I+" exceeded",Y.ERR_BAD_RESPONSE,g,F)}return!pe&&O&&O(),await new Promise((ne,me)=>{Qs(ne,me,{data:he,headers:Se.from(ue.headers),status:ue.status,statusText:ue.statusText,config:g,request:F})})}catch(k){if(O&&O(),C&&C.aborted&&C.reason instanceof Y){const A=C.reason;throw A.config=g,F&&(A.request=F),k!==A&&Object.defineProperty(A,"cause",{__proto__:null,value:k,writable:!0,enumerable:!1,configurable:!0}),A}if(J)throw F&&!J.request&&(J.request=F),J;if(k instanceof Y)throw F&&!k.request&&(k.request=F),k;if(k&&k.name==="TypeError"&&/Load failed|fetch/i.test(k.message)){const A=new Y("Network Error",Y.ERR_NETWORK,g,F,k&&k.response);throw Object.defineProperty(A,"cause",{__proto__:null,value:k.cause||k,writable:!0,enumerable:!1,configurable:!0}),A}throw Y.from(k,k&&k.code,g,F,k&&k.response)}}},Df=new Map,po=e=>{let t=e&&e.env||{};const{fetch:n,Request:r,Response:a}=t,o=[r,a,n];let l=o.length,i=l,c,d,u=Df;for(;i--;)c=o[i],d=u.get(c),d===void 0&&u.set(c,d=i?new Map:Of(t)),u=d;return d};po();const Yr={http:Vu,xhr:bf,fetch:{get:po}};v.forEach(Yr,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});const ho=e=>`- ${e}`,Mf=e=>v.isFunction(e)||e===null||e===!1;function xf(e,t){e=v.isArray(e)?e:[e];const{length:n}=e;let r,a;const o={};for(let l=0;l<n;l++){r=e[l];let i;if(a=r,!Mf(r)&&(a=Yr[(i=String(r)).toLowerCase()],a===void 0))throw new Y(`Unknown adapter '${i}'`);if(a&&(v.isFunction(a)||(a=a.get(t))))break;o[i||"#"+l]=a}if(!a){const l=Object.entries(o).map(([c,d])=>`adapter ${c} `+(d===!1?"is not supported by the environment":"is not available in the build"));let i=n?l.length>1?`since :
|
|
6
|
+
`+l.map(ho).join(`
|
|
7
|
+
`):" "+ho(l[0]):"as no adapter specified";throw new Y("There is no suitable adapter to dispatch the request "+i,Y.ERR_NOT_SUPPORT)}return a}const mo={getAdapter:xf,adapters:Yr};function Gr(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Qt(null,e)}function Jr(e){return Gr(e),e.headers=Se.from(e.headers),e.data=Hr.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),mo.getAdapter(e.adapter||Xt.adapter,e)(e).then(function(r){Gr(e),e.response=r;try{r.data=Hr.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=Se.from(r.headers),r},function(r){if(!Xs(r)&&(Gr(e),r&&r.response)){e.response=r.response;try{r.response.data=Hr.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=Se.from(r.response.headers)}return Promise.reject(r)})}const jn={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{jn[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const go={};jn.transitional=function(t,n,r){function a(o,l){return"[Axios v"+Kr+"] Transitional option '"+o+"'"+l+(r?". "+r:"")}return(o,l,i)=>{if(t===!1)throw new Y(a(l," has been removed"+(n?" in "+n:"")),Y.ERR_DEPRECATED);return n&&!go[l]&&(go[l]=!0,console.warn(a(l," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(o,l,i):!0}},jn.spelling=function(t){return(n,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function Pf(e,t,n){if(typeof e!="object"||e===null)throw new Y("options must be an object",Y.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let a=r.length;for(;a-- >0;){const o=r[a],l=Object.prototype.hasOwnProperty.call(t,o)?t[o]:void 0;if(l){const i=e[o],c=i===void 0||l(i,o,e);if(c!==!0)throw new Y("option "+o+" must be "+c,Y.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new Y("Unknown option "+o,Y.ERR_BAD_OPTION)}}const qn={assertOptions:Pf,validators:jn},ve=qn.validators;let ot=class{constructor(t){this.defaults=t||{},this.interceptors={request:new Ys,response:new Ys}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let a={};Error.captureStackTrace?Error.captureStackTrace(a):a=new Error;const o=(()=>{if(!a.stack)return"";const l=a.stack.indexOf(`
|
|
8
|
+
`);return l===-1?"":a.stack.slice(l+1)})();try{if(!r.stack)r.stack=o;else if(o){const l=o.indexOf(`
|
|
9
9
|
`),i=l===-1?-1:o.indexOf(`
|
|
10
|
-
`,l+1),c=i===-1?"":o.slice(i+1);String(
|
|
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"}})}));
|
|
10
|
+
`,l+1),c=i===-1?"":o.slice(i+1);String(r.stack).endsWith(c)||(r.stack+=`
|
|
11
|
+
`+o)}}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=st(this.defaults,n);const{transitional:r,paramsSerializer:a,headers:o}=n;r!==void 0&&qn.assertOptions(r,{silentJSONParsing:ve.transitional(ve.boolean),forcedJSONParsing:ve.transitional(ve.boolean),clarifyTimeoutError:ve.transitional(ve.boolean),legacyInterceptorReqResOrdering:ve.transitional(ve.boolean),advertiseZstdAcceptEncoding:ve.transitional(ve.boolean),validateStatusUndefinedResolves:ve.transitional(ve.boolean)},!1),a!=null&&(v.isFunction(a)?n.paramsSerializer={serialize:a}:qn.assertOptions(a,{encode:ve.function,serialize:ve.function},!0)),n.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?n.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:n.allowAbsoluteUrls=!0),qn.assertOptions(n,{baseUrl:ve.spelling("baseURL"),withXsrfToken:ve.spelling("withXSRFToken")},!0),n.method=(n.method||this.defaults.method||"get").toLowerCase();let l=o&&v.merge(o.common,o[n.method]);o&&v.forEach(["delete","get","head","post","put","patch","query","common"],S=>{delete o[S]}),n.headers=Se.concat(l,o);const i=[];let c=!0;this.interceptors.request.forEach(function(m){if(typeof m.runWhen=="function"&&m.runWhen(n)===!1)return;c=c&&m.synchronous;const h=n.transitional||Vr;h&&h.legacyInterceptorReqResOrdering?i.unshift(m.fulfilled,m.rejected):i.push(m.fulfilled,m.rejected)});const d=[];this.interceptors.response.forEach(function(m){d.push(m.fulfilled,m.rejected)});let u,f=0,p;if(!c){const S=[Jr.bind(this),void 0];for(S.unshift(...i),S.push(...d),p=S.length,u=Promise.resolve(n);f<p;)u=u.then(S[f++],S[f++]);return u}p=i.length;let w=n;for(;f<p;){const S=i[f++],m=i[f++];try{w=S?S(w):w}catch(h){if(!m){u=Promise.reject(h);break}try{const g=m.call(this,h);v.isThenable(g)&&(u=Promise.resolve(g).then(()=>Jr.call(this,w)))}catch(g){u=Promise.reject(g)}break}}if(!u)try{u=Jr.call(this,w)}catch(S){u=Promise.reject(S)}for(f=0,p=d.length;f<p;)u=u.then(d[f++],d[f++]);return u}getUri(t){t=st(this.defaults,t);const n=no(t.baseURL,t.url,t.allowAbsoluteUrls,t);return Ks(n,t.params,t.paramsSerializer)}};v.forEach(["delete","get","head","options"],function(t){ot.prototype[t]=function(n,r){return this.request(st(r||{},{method:t,url:n,data:r&&v.hasOwnProp(r,"data")?r.data:void 0}))}}),v.forEach(["post","put","patch","query"],function(t){function n(r){return function(o,l,i){return this.request(st(i||{},{method:t,headers:r?{"Content-Type":"multipart/form-data"}:{},url:o,data:l}))}}ot.prototype[t]=n(),t!=="query"&&(ot.prototype[t+"Form"]=n(!0))});let Uf=class pc{constructor(t){if(typeof t!="function")throw new TypeError("executor must be a function.");let n;this.promise=new Promise(function(o){n=o});const r=this;this.promise.then(a=>{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](a);r._listeners=null}),this.promise.then=a=>{let o;const l=new Promise(i=>{r.subscribe(i),o=i}).then(a);return l.cancel=function(){r.unsubscribe(o)},l},t(function(o,l,i){r.reason||(r.reason=new Qt(o,l,i),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new pc(function(a){t=a}),cancel:t}}};function $f(e){return function(n){return e.apply(null,n)}}function Bf(e){return v.isObject(e)&&e.isAxiosError===!0}const Zr={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerReturnsAnUnknownError:520,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(Zr).forEach(([e,t])=>{Zr[t]=e});function yo(e){const t=new ot(e),n=Ts(ot.prototype.request,t);return v.extend(n,ot.prototype,t,{allOwnKeys:!0}),v.extend(n,t,null,{allOwnKeys:!0}),n.create=function(a){return yo(st(e,a))},n}const de=yo(Xt);de.Axios=ot,de.CanceledError=Qt,de.CancelToken=Uf,de.isCancel=Xs,de.VERSION=Kr,de.toFormData=Un,de.AxiosError=Y,de.Cancel=de.CanceledError,de.all=function(t){return Promise.all(t)},de.spread=$f,de.isAxiosError=Bf,de.mergeConfig=st,de.AxiosHeaders=Se,de.formToJSON=e=>Zs(v.isHTMLForm(e)?new FormData(e):e),de.getAdapter=mo.getAdapter,de.HttpStatusCode=Zr,de.default=de;const{Axios:Z0,AxiosError:X0,CanceledError:Q0,isCancel:R0,CancelToken:ey,VERSION:ty,all:ny,Cancel:ry,isAxiosError:ay,spread:sy,toFormData:oy,AxiosHeaders:ly,HttpStatusCode:iy,formToJSON:cy,getAdapter:dy,mergeConfig:uy,create:fy}=de;function Vn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)r!=="__proto__"&&(e[r]=n[r])}return e}var jf={read:function(e){return e[0]==='"'&&(e=e.slice(1,-1)),e.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(e){return encodeURIComponent(e).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function Xr(e,t){function n(a,o,l){if(!(typeof document>"u")){l=Vn({},t,l),typeof l.expires=="number"&&(l.expires=new Date(Date.now()+l.expires*864e5)),l.expires&&(l.expires=l.expires.toUTCString()),a=encodeURIComponent(a).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var i="";for(var c in l)l[c]&&(i+="; "+c,l[c]!==!0&&(i+="="+l[c].split(";")[0]));return document.cookie=a+"="+e.write(o,a)+i}}function r(a){if(!(typeof document>"u"||arguments.length&&!a)){for(var o=document.cookie?document.cookie.split("; "):[],l={},i=0;i<o.length;i++){var c=o[i].split("="),d=c.slice(1).join("=");try{var u=decodeURIComponent(c[0]);if(u in l||(l[u]=e.read(d,u)),a===u)break}catch{}}return a?l[a]:l}}return Object.create({set:n,get:r,remove:function(a,o){n(a,"",Vn({},o,{expires:-1}))},withAttributes:function(a){return Xr(this.converter,Vn({},this.attributes,a))},withConverter:function(a){return Xr(Vn({},this.converter,a),this.attributes)}},{attributes:{value:Object.freeze(t)},converter:{value:Object.freeze(e)}})}var Rt=Xr(jf,{path:"/"});const qf={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1};let wt="https://api-grievance.airaops.com",bo=null;try{if(typeof{url:typeof document>"u"&&typeof location>"u"?require("url").pathToFileURL(__filename).href:typeof document>"u"?location.href:Cr&&Cr.tagName.toUpperCase()==="SCRIPT"&&Cr.src||new URL("complaint-app.umd.js",document.baseURI).href}<"u"&&qf?.VITE_API_URL)wt=void 0;else{const e=typeof process<"u"?process:null;e?.env?.VITE_API_URL&&(wt=e.env.VITE_API_URL)}}catch{}const So=e=>{wt=e||"",le.defaults.baseURL=wt},Qr=e=>{bo=e||null},Vf=()=>bo||Rt.get("token")||null,le=de.create({baseURL:wt,headers:{Accept:"application/json","Content-Type":"application/json"}});le.interceptors.request.use(e=>{const t=Vf();return e.headers=e.headers||{},t?e.headers.Authorization=`Bearer ${t}`:delete e.headers.Authorization,e});let Rr=!1,ea=null;le.interceptors.response.use(e=>e,async e=>{const t=e.config,n=e.response;if(n&&(n.status===401||n.status===402)){const r=Rt.get("refreshToken");if(r)try{Rr||(Rr=!0,ea=de.post(`${wt}/api/v1/auth/refresh`,{},{headers:{Authorization:`Bearer ${r}`}}));const a=await ea,{token:o,refreshToken:l}=a.data;return Qr(o),l&&Rt.set("refreshToken",l),t.headers.Authorization=`Bearer ${o}`,le(t)}catch{Rt.remove("token"),Rt.remove("refreshToken")}finally{Rr=!1,ea=null}}return Promise.reject(e)});const Wf=y.createContext(null),vo=({children:e,apiUrl:t,authToken:n})=>(t&&So(t),Qr(n||null),s.jsx(Wf.Provider,{value:{apiUrl:t,authToken:n},children:e})),Ve={mode:"light",colors:{primary:"#2D64B8",primaryHover:"#2557A3",text:"#111827",textSecondary:"#6B7280",textMuted:"#9CA3AF",border:"#E5E7EB",borderLight:"#F3F4F6",background:"#FFFFFF",surface:"#FFFFFF",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#ECFDF5",activeBorder:"#A7F3D0",activeText:"#059669",inactiveBg:"#F3F4F6",inactiveBorder:"#D1D5DB",inactiveText:"#6B7280",link:"#2D64B8",divider:"#E5E7EB",accentBorder:"#C5D7F0",accentBg:"#EEF4FB",stepDone:"#D6E4F7",success:"#22C55E",danger:"#EF4444",secondaryBtn:"#D1D5DB",secondaryBtnHover:"#C4C9D1",inputBg:"#FFFFFF",tableHeadBg:"#EEF4FB",sidebarBg:"#FAFBFD",overlay:"rgba(16, 24, 40, 0.06)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(16, 24, 40, 0.04)",settings:"0 1px 3px rgba(16, 24, 40, 0.06)"}},en={mode:"dark",colors:{primary:"#5B8DEF",primaryHover:"#7BA3F3",text:"#F3F4F6",textSecondary:"#A1A1AA",textMuted:"#71717A",border:"#3F3F46",borderLight:"#27272A",background:"#0F1115",surface:"#18181B",white:"#FFFFFF",onPrimary:"#FFFFFF",activeBg:"#052E1C",activeBorder:"#166534",activeText:"#4ADE80",inactiveBg:"#27272A",inactiveBorder:"#3F3F46",inactiveText:"#A1A1AA",link:"#7BA3F3",divider:"#3F3F46",accentBorder:"#2A3A55",accentBg:"#1A2333",stepDone:"#1E3A5F",success:"#22C55E",danger:"#F87171",secondaryBtn:"#3F3F46",secondaryBtnHover:"#52525B",inputBg:"#18181B",tableHeadBg:"#1A2333",sidebarBg:"#12141A",overlay:"rgba(0, 0, 0, 0.35)"},radii:{sm:"6px",md:"8px",lg:"12px",xl:"16px",pill:"999px"},spacing:{xs:"4px",sm:"8px",md:"12px",lg:"16px",xl:"24px",xxl:"32px"},typography:{fontFamily:'-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif',h1Size:"28px",h2Size:"16px",bodySize:"14px",labelSize:"13px",valueSize:"22px",smallSize:"13px"},shadow:{card:"0 1px 2px rgba(0, 0, 0, 0.35)",settings:"0 1px 3px rgba(0, 0, 0, 0.4)"}},wo={light:Ve,dark:en};function Ct(e){return e!=null&&typeof e=="object"&&!Array.isArray(e)}function _t(e,t){if(!Ct(t))return e;const n={...e};return Object.keys(t).forEach(r=>{const a=t[r];Ct(a)&&Ct(e[r])?n[r]=_t(e[r],a):a!==void 0&&(n[r]=a)}),n}function Co(e){return!e||!Ct(e)?{light:Ve,dark:en}:Ct(e.light)||Ct(e.dark)?{light:_t(Ve,e.light||{}),dark:_t(en,e.dark||{})}:{light:_t(Ve,e),dark:_t(en,e)}}function _o(e,t=!1){const n=Co(e);return{...t?n.dark:n.light,mode:t?"dark":"light",__pack:n}}const zf={primary:"--ca-primary",primaryHover:"--ca-primary-hover",text:"--ca-text",textSecondary:"--ca-text-secondary",textMuted:"--ca-text-muted",border:"--ca-border",borderLight:"--ca-border-light",background:"--ca-bg",surface:"--ca-surface",white:"--ca-white",onPrimary:"--ca-on-primary",activeBg:"--ca-active-bg",activeBorder:"--ca-active-border",activeText:"--ca-active-text",inactiveBg:"--ca-inactive-bg",inactiveBorder:"--ca-inactive-border",inactiveText:"--ca-inactive-text",link:"--ca-link",divider:"--ca-divider",accentBorder:"--ca-accent-border",accentBg:"--ca-accent-bg",stepDone:"--ca-step-done",success:"--ca-success",danger:"--ca-danger",secondaryBtn:"--ca-secondary-btn",secondaryBtnHover:"--ca-secondary-btn-hover",inputBg:"--ca-input-bg",tableHeadBg:"--ca-table-head-bg",sidebarBg:"--ca-sidebar-bg",overlay:"--ca-overlay"},Hf={sm:"--ca-radius-sm",md:"--ca-radius-md",lg:"--ca-radius-lg",xl:"--ca-radius-xl",pill:"--ca-radius-pill"},Kf={fontFamily:"--ca-font",h1Size:"--ca-h1-size",h2Size:"--ca-h2-size",bodySize:"--ca-body-size",labelSize:"--ca-label-size",valueSize:"--ca-value-size",smallSize:"--ca-small-size"},Yf={card:"--ca-shadow-card",settings:"--ca-shadow-settings"};function No(e){const t={};return e?.colors&&Object.entries(zf).forEach(([n,r])=>{e.colors[n]!=null&&(t[r]=e.colors[n])}),e?.radii&&Object.entries(Hf).forEach(([n,r])=>{e.radii[n]!=null&&(t[r]=e.radii[n])}),e?.typography&&Object.entries(Kf).forEach(([n,r])=>{e.typography[n]!=null&&(t[r]=e.typography[n])}),e?.shadow&&Object.entries(Yf).forEach(([n,r])=>{e.shadow[n]!=null&&(t[r]=e.shadow[n])}),t["--ca-on-primary"]&&!t["--ca-white"]&&(t["--ca-white"]=t["--ca-on-primary"]),t}const Ao=y.createContext({darkMode:!1,theme:null,themeFile:wo,cssVars:{}});function Eo({theme:e,darkMode:t=!1,children:n}){const r=y.useMemo(()=>{const a=_o(e,!!t),o=No(a);return{darkMode:!!t,theme:a,themeFile:a.__pack,cssVars:o,mode:a.mode}},[e,t]);return s.jsx(Ao.Provider,{value:r,children:n})}function Lo(){return y.useContext(Ao)}const Wn=Object.freeze({formFields:e=>`/api/v1/complaint-types/${e}/form-fields`}),Gf=e=>{const t=e?.response?.data,n=Array.isArray(t?.errors)?t.errors.map(a=>a?.message).filter(Boolean):[];if(n.length)return n.join(" ");const r=t?.message??t?.error??e?.message;return Array.isArray(r)?r.filter(Boolean).join(", "):r&&typeof r=="object"?r.message??JSON.stringify(r):r||"Something went wrong"},Jf=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:Gf(e)}),ta=(e,t)=>oe.createAsyncThunk(e,async(n,r)=>{try{return(await t(n,r)).data}catch(a){return Jf(a,r)}}),De=ta("complaint/types/getFormFields",(e,{signal:t})=>le.get(Wn.formFields(e),{signal:t})),tn=ta("complaint/types/saveFormFields",({complaintTypeId:e,data:t})=>le.put(Wn.formFields(e),t)),nn=ta("complaint/types/deleteFormField",({complaintTypeId:e,fieldId:t})=>le.delete(`${Wn.formFields(e)}/${t}`)),To={formFields:{data:[],selected:null,pagination:null,isLoading:!1,isMutating:!1,error:null},error:null},Zf=e=>{if(Array.isArray(e))return{data:e,pagination:null};const t=e?.data??e;return Array.isArray(t)?{data:t,pagination:e?.pagination??null}:{data:t?.results??t?.items??[],pagination:t?.pagination??e?.pagination??null}},na=e=>e.payload?.message??e.error?.message??"Something went wrong",Io=oe.createSlice({name:"complaintAppComplaint",initialState:To,reducers:{clearComplaintError(e,t){const n=t.payload;n&&e[n]?.error!==void 0?e[n].error=null:e.error=null},clearSelectedComplaintResource(e,t){const n=t.payload;n&&e[n]?.selected!==void 0&&(e[n].selected=null)},resetComplaintState(){return To}},extraReducers:e=>{e.addCase(De.pending,t=>{t.formFields.isLoading=!0,t.formFields.error=null}).addCase(De.fulfilled,(t,n)=>{const r=Zf(n.payload);t.formFields.isLoading=!1,t.formFields.data=r.data}).addCase(De.rejected,(t,n)=>{t.formFields.isLoading=!1,t.formFields.error=na(n)}).addCase(tn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(tn.fulfilled,t=>{t.formFields.isMutating=!1}).addCase(tn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)}).addCase(nn.pending,t=>{t.formFields.isMutating=!0,t.formFields.error=null}).addCase(nn.fulfilled,(t,n)=>{const r=n.meta.arg?.fieldId;t.formFields.isMutating=!1,t.formFields.data=t.formFields.data.filter(a=>a.id!==r)}).addCase(nn.rejected,(t,n)=>{t.formFields.isMutating=!1,t.formFields.error=na(n)})}}),{clearComplaintError:Xf,clearSelectedComplaintResource:Qf,resetComplaintState:Rf}=Io.actions,Fo=Io.reducer,rn="/api/v1/complaint-types",an=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(n?.message==="Complaint type code already exists"?"A category with this name already exists. Please use a different name.":null)??(r.includes("code must be shorter than or equal to 50 characters")?"Category name cannot exceed 50 characters. Please enter a shorter name.":null)??(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},sn=oe.createAsyncThunk("complaintType/fetchAll",async(e,t)=>{try{return(await le.get(rn,{params:e??{}})).data}catch(n){return an(n,t)}}),Xe=oe.createAsyncThunk("complaintType/fetchById",async(e,t)=>{try{const n=e;return(await le.get(`${rn}/${n}`)).data}catch(n){return an(n,t)}}),on=oe.createAsyncThunk("complaintType/create",async({payload:e,onSuccess:t,onFail:n},r)=>{try{const a={code:e.categoryName,name:e.categoryName,description:e.description,tatMinutes:e.tatMinutes,accessType:e.visibilityType,roleIds:e.roles.map(l=>parseInt(l,10)),userIds:(e.userIds??[]).map(l=>parseInt(l,10))},o=await le.post(rn,a);return t&&typeof t=="function"&&t(o.data),o.data}catch(a){return console.log("createComplaintType error:",a),n&&typeof n=="function"&&n(a),an(a,r)}}),ln=oe.createAsyncThunk("complaintType/update",async({id:e,data:t,onSuccess:n,onFail:r},a)=>{try{const o=await le.patch(`${rn}/${e}`,t);return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return console.log("updateComplaintType error:",o),r&&typeof r=="function"&&r(o),an(o,a)}}),zn=oe.createAsyncThunk("complaintType/delete",async(e,t)=>{try{const n=await le.delete(`${rn}/${e}`);return{id:e,data:n.data}}catch(n){return an(n,t)}}),ra=["userId","id","_id","userID","user_id","value"];function Hn(e,t=ra){if(typeof e=="string"||typeof e=="number")return String(e).trim()||null;if(!e||typeof e!="object")return null;for(const n of t){const r=e[n];if(r!=null&&r!==e){const a=Hn(r,ra);if(a!==null)return a}}return Hn(e.user,ra)}function aa(e){const t=Hn(e?.createdByUserId??e?.createdBy??e?.createdByUser);return t===null?null:[t]}function ep(e,t){const n=aa(e),r=Hn(t);return r!==null&&n?.includes(r)===!0}const tp={complaintList:[],selected:null,loading:!1,saving:!1,error:null},np=["data","items","results","content","records","list","payload","response","result"],ko=e=>{if(Array.isArray(e))return e;if(!e||typeof e!="object")return[];for(const t of np)if(e[t]!==void 0){const n=ko(e[t]);if(n.length||Array.isArray(e[t]))return n}return[]},Ne=e=>e?.id??e?._id,sa=(e,t)=>{if(!t)return e;const n=aa(e),r=aa(t);return n?.length||!r?.length?e:{...e,userIds:r}},Oo=oe.createSlice({name:"complaintType",initialState:tp,reducers:{setComplaintTypeActive(e,t){const{id:n,isActive:r}=t.payload??{};n!=null&&(e.complaintList=e.complaintList.map(a=>String(Ne(a))===String(n)?{...a,isActive:r}:a),String(Ne(e.selected))===String(n)&&(e.selected={...e.selected,isActive:r}))}},extraReducers:e=>{e.addCase(sn.pending,t=>{t.loading=!0,t.error=null}).addCase(sn.fulfilled,(t,n)=>{t.loading=!1;const r=new Map(t.complaintList.map(a=>[String(Ne(a)),a]));t.complaintList=ko(n.payload).map(a=>sa(a,r.get(String(Ne(a)))))}).addCase(sn.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint types"}).addCase(Xe.pending,t=>{t.loading=!0,t.error=null}).addCase(Xe.fulfilled,(t,n)=>{t.loading=!1;const r=n.payload?.data??n.payload,a=t.complaintList.find(o=>String(Ne(o))===String(Ne(r)));t.selected=sa(r,a)}).addCase(Xe.rejected,(t,n)=>{t.loading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint type"}).addCase(on.pending,t=>{t.saving=!0,t.error=null}).addCase(on.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=n.meta?.arg?.payload?.userIds,o=Array.isArray(a)?{...r,userIds:a}:r;t.complaintList=[o,...t.complaintList.filter(l=>String(Ne(l))!==String(Ne(o)))],t.selected=o}).addCase(on.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to create complaint type"}).addCase(ln.pending,t=>{t.saving=!0,t.error=null}).addCase(ln.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.data??n.payload,a=Ne(r)??n.meta?.arg?.id,o=t.complaintList.find(c=>String(Ne(c))===String(a)),l=n.meta?.arg?.data?.userIds,i=Array.isArray(l)?{...r,userIds:l}:sa(r,o);t.complaintList=t.complaintList.map(c=>String(Ne(c))===String(a)?i:c),t.selected=i}).addCase(ln.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update complaint type"}).addCase(zn.pending,t=>{t.saving=!0,t.error=null}).addCase(zn.fulfilled,(t,n)=>{t.saving=!1;const r=n.payload?.id??n.meta?.arg;t.complaintList=t.complaintList.filter(a=>String(Ne(a))!==String(r)),String(Ne(t.selected))===String(r)&&(t.selected=null)}).addCase(zn.rejected,(t,n)=>{t.saving=!1,t.error=n.payload?.message??n.error?.message??"Failed to delete complaint type"})}}),{setComplaintTypeActive:rp}=Oo.actions,ap=Oo.reducer,sp={details:{},id:null,isEdit:!1},Do=oe.createSlice({name:"appDetails",initialState:sp,reducers:{setAppDetails(e,t){e.details=t.payload??{}},clearAppDetails(e){e.details={}},setId(e,t){e.id=t.payload},setIsEdit(e,t){e.isEdit=t.payload.data},clearId(e){e.id=null}}}),{setAppDetails:Mo,clearAppDetails:op,setId:lt,setIsEdit:Nt,clearId:lp}=Do.actions,xo=Do.reducer,ip={list:[],pagination:null,isLoading:!1,error:null},Po=oe.createSlice({name:"roles",initialState:ip,reducers:{}});Po.reducer;const Kn=60,oa=24*Kn,cp={d:oa,h:Kn,m:1};function la(e){const t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Uo(e=[],t=!0){const n=Array.isArray(e)?e:[];return(t?n:n.slice(0,-1)).reduce((a,o)=>a+Ie(o?.escalateAfterMinutes),0)}function Ie(e){if(e==null||e==="")return 0;if(typeof e=="number")return la(e);const t=String(e).trim().toLowerCase().replace(/minutes?/g,"").trim();if(!t)return 0;if(/^\d+(\.\d+)?$/.test(t))return la(t);const n=/(\d+(?:\.\d+)?)\s*(d|h|m)/g;let r=0,a=!1,o;for(;(o=n.exec(t))!==null;)a=!0,r+=(cp[o[2]]||0)*Number(o[1]);return a?la(r):0}function At(e){const t=Math.round(typeof e=="number"?e:Ie(e));if(!Number.isFinite(t)||t<=0)return"";const n=Math.floor(t/oa),r=Math.floor(t%oa/Kn),a=t%Kn,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&o.push(`${a}m`),o.join("")}function dp(e){const t=String(e??"").trim().toLowerCase().replace(/minutes?/g,"").replace(/\s+/g,"");return!t||!/^(\d+(?:\.\d+)?[dhm])+$/.test(t)?!1:Ie(e)>0}function up(e){return String(e??"").replace(/(\d+)\s*minutes?/gi,(t,n)=>At(Number(n))||"0m")}function fp(e=[]){return Uo(e,!0)}function Et(e=[],t=0){if(!Array.isArray(e)||e.length===0)return e;const n=Math.max(0,Ie(t)-Uo(e,!1)),r=At(n),a=e.length-1;return String(e[a]?.escalateAfterMinutes??"")===r?e:e.map((o,l)=>l===a?{...o,escalateAfterMinutes:r}:o)}function pp(e=[]){if(!Array.isArray(e)||e.length===0)return e;const t=e.length-1;return e.map((n,r)=>r===t?{...n,escalateAfterMinutes:""}:n)}const $o=e=>`/api/v1/complaint-types/${e}/workflow-steps`;function hp(e){const t=e?.response?.data??e?.payload??e,n=Array.isArray(t?.errors)?t.errors.map(r=>r?.message).filter(Boolean):[];return n.length?n.join(" "):t?.message??t?.error??e?.message??"Something went wrong"}function ia(e){return e===!0||e==="Yes"||e==="yes"||e==="true"||e===1||e==="1"}const Bo=(e,t)=>t.rejectWithValue({status:e?.response?.status??e?.status,message:hp(e)}),We=oe.createAsyncThunk("workflow/fetchSteps",async(e,t)=>{try{return(await le.get($o(e))).data}catch(n){return Bo(n,t)}}),Yn=oe.createAsyncThunk("workflow/updateSteps",async({id:e,tables:t,onSuccess:n,onFail:r},a)=>{try{if(!Array.isArray(t.tables))throw new Error("tables must be an array");const o=t.tables.map((i,c)=>{const d=Array.isArray(i.role)?i.role.map(S=>Number(S)):[],u=Array.isArray(i.users)?i.users.map(S=>Number(S)):[],f=d.length>0,p=u.length>0,w=!f&&(p||i.workflowType==="user");return{levelNo:c+1,workflowType:w?"Users Based":"Role Based",...f||!w?{roleIds:d}:{},...p||w?{userAssignments:u.map(S=>({userId:S}))}:{},escalateAfterMinutes:Ie(i.escalateAfterMinutes),canResolve:ia(i.canResolve),canReassign:ia(i.canReassign),isFinalLevel:ia(i.finalLevel),isActive:!0}}),l=await le.put($o(e),{steps:o});return typeof n=="function"&&n(l.data),l.data}catch(o){return typeof r=="function"&&r(o),Bo(o,a)}}),mp={workflowSteps:null,workflowStepsLoading:!1,workflowStepsSaving:!1,error:null},gp=oe.createSlice({name:"workflow",initialState:mp,reducers:{},extraReducers:e=>{e.addCase(We.pending,t=>{t.workflowStepsLoading=!0,t.error=null,t.workflowSteps=null}).addCase(We.fulfilled,(t,n)=>{t.workflowStepsLoading=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(We.rejected,(t,n)=>{n.meta.aborted||(t.workflowStepsLoading=!1,t.error=n.payload?.message??n.error?.message??"Failed to fetch workflow steps")}).addCase(Yn.pending,t=>{t.workflowStepsSaving=!0,t.error=null}).addCase(Yn.fulfilled,(t,n)=>{t.workflowStepsSaving=!1,t.workflowSteps=n.payload?.data??n.payload}).addCase(Yn.rejected,(t,n)=>{t.workflowStepsSaving=!1,t.error=n.payload?.message??n.error?.message??"Failed to update workflow steps"})}}).reducer,ca="/api/v1/complaints",yp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Gn=oe.createAsyncThunk("complaintManagement/fetchQueries",async(e,t)=>{try{const{complaintTypeId:n,page:r=1,limit:a=10,status:o,sort:l="-createdAt",fromDate:i,toDate:c,assignedToUserId:d,unassigned:u,showAllComplaints:f,escalationTo:p}=e||{},w={page:r,limit:a,complaintTypeId:n,sort:l};return o!=null&&o!==""&&o!=="all"&&(w.status=o),i&&c&&(w.fromDate=i,w.toDate=c),d!=null&&d!==""&&(w.assignedToUserId=d),u!=null&&u!==""&&(w.unassigned=u),f!=null&&f!==""&&(w.showAllComplaints=f),p!=null&&p!==""&&p!=="all"&&(w.escalationTo=p),(await le.get(ca,{params:w,signal:t.signal})).data}catch(n){return yp(n,t)}}),bp=e=>`/api/v1/complaints/${e}`,Sp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})};function da(e){if(e==null||e==="")return;const t=Number(e);return Number.isNaN(t)?void 0:t}const Lt=oe.createAsyncThunk("changeStatus/update",async({id:e,statusId:t,currentStepId:n,assignedToUserId:r,remark:a,onSuccess:o,onFail:l},i)=>{try{const c={},d=da(t),u=da(n),f=da(r);d!=null&&(c.statusId=d),u!=null&&(c.currentStepId=u),f!=null&&(c.assignedToUserId=f),a!=null&&String(a).trim()!==""&&(c.remarks=String(a).trim());const p=await le.patch(bp(e),c,{signal:i.signal});return o&&typeof o=="function"&&o(p.data),p.data}catch(c){return l&&typeof l=="function"&&l(c),Sp(c,i)}}),jo={list:[],meta:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null},vp=e=>{const t=e?.data??e;if(Array.isArray(t))return{list:t,meta:e?.meta??e?.pagination??null};const n=t?.data??t?.results??t?.items??[];return{list:Array.isArray(n)?n:[],meta:t?.meta??t?.pagination??e?.meta??e?.pagination??null}},wp=e=>e.payload?.message??e.error?.message??"Failed to fetch queries",qo=e=>e?.complaintId??e?.id,Cp=(e,t)=>{const n=t.meta?.arg??{},r=t.payload?.data??t.payload,a=n.id??qo(r);return a==null?e:e.map(o=>{if(String(qo(o))!==String(a))return o;const l={...o};return r&&typeof r=="object"&&!Array.isArray(r)&&["status","statusId","level","levelNo","currentStepId","currentWorkflowStepId","workflowStepId","assignedToUserId"].forEach(i=>{r[i]!==void 0&&(l[i]=r[i])}),n.statusId!=null&&(l.statusId=n.statusId),n.status&&(l.status=n.status),n.currentStepId!=null&&(l.currentStepId=n.currentStepId,l.currentWorkflowStepId=n.currentStepId,l.workflowStepId=n.currentStepId),n.level!=null&&(l.level=n.level,l.levelNo=n.level),n.assignedToUserId!=null&&(l.assignedToUserId=n.assignedToUserId),l})},Vo=oe.createSlice({name:"complaintManagement",initialState:jo,reducers:{resetComplaintManagementState:()=>jo},extraReducers:e=>{e.addCase(Gn.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg?.complaintTypeId??null}).addCase(Gn.fulfilled,(t,n)=>{const r=n.meta.arg?.complaintTypeId;if(t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r))return;const a=vp(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=a.list,t.meta=a.meta}).addCase(Gn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg?.complaintTypeId;t.requestedComplaintTypeId!=null&&r!=null&&String(t.requestedComplaintTypeId)!==String(r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=wp(n))}).addCase(Lt.fulfilled,(t,n)=>{t.list=Cp(t.list,n)})}}),{resetComplaintManagementState:Wo}=Vo.actions,_p=Vo.reducer,Np=e=>`/api/v1/complaint-types/${e}/statuses`,Ap="/api/v1/complaints/summary",zo=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Tt=oe.createAsyncThunk("status/fetchStatuses",async(e,t)=>{try{return(await le.get(Np(e),{signal:t.signal})).data}catch(n){return zo(n,t)}}),Jn=oe.createAsyncThunk("status/fetchComplaintSummary",async(e,t)=>{try{return(await le.get(Ap,{params:{complaintTypeId:e},signal:t.signal})).data}catch(n){return zo(n,t)}}),Ho={list:[],isLoading:!1,error:null,hasLoaded:!1,requestedComplaintTypeId:null,complaintSummary:null,isComplaintSummaryLoading:!1,complaintSummaryError:null,hasComplaintSummaryLoaded:!1,requestedComplaintSummaryTypeId:null},Ep=e=>{const t=e?.data??e?.results??e?.items??e;return Array.isArray(t)?t:[]},Lp=e=>{const t=e?.data??e;return!t||typeof t!="object"||Array.isArray(t)?null:t},Tp=e=>e.payload?.message??e.error?.message??"Failed to fetch statuses",Ip=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint summary",Zn=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),Ko=oe.createSlice({name:"status",initialState:Ho,reducers:{resetStatusState:()=>Ho},extraReducers:e=>{e.addCase(Tt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.list=[],t.requestedComplaintTypeId=n.meta.arg??null}).addCase(Tt.fulfilled,(t,n)=>{const r=n.meta.arg;if(Zn(t.requestedComplaintTypeId,r))return;const a=Ep(n.payload);t.isLoading=!1,t.hasLoaded=!0,t.list=[...a].sort((o,l)=>(o.displayOrder??0)-(l.displayOrder??0))}).addCase(Tt.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Zn(t.requestedComplaintTypeId,r)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Tp(n))}).addCase(Jn.pending,(t,n)=>{t.isComplaintSummaryLoading=!0,t.complaintSummaryError=null,t.hasComplaintSummaryLoaded=!1,t.complaintSummary=null,t.requestedComplaintSummaryTypeId=n.meta.arg??null}).addCase(Jn.fulfilled,(t,n)=>{const r=n.meta.arg;Zn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummary=Lp(n.payload))}).addCase(Jn.rejected,(t,n)=>{if(n.meta.aborted)return;const r=n.meta.arg;Zn(t.requestedComplaintSummaryTypeId,r)||(t.isComplaintSummaryLoading=!1,t.hasComplaintSummaryLoaded=!0,t.complaintSummaryError=Ip(n))})}}),{resetStatusState:Yo}=Ko.actions,Fp=Ko.reducer,kp="/api/v1/complaints",Op="/api/v1/complaint-types",Go=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Something went wrong"})},Xn=oe.createAsyncThunk("createComplaint/create",async(e,t)=>{try{return(await le.post(kp,e,{signal:t.signal})).data}catch(n){return Go(n,t)}}),cn=oe.createAsyncThunk("createComplaint/updateActive",async({id:e,isActive:t,onSuccess:n,onFail:r},a)=>{try{const o=await le.patch(`${Op}/${e}`,{isActive:t},{signal:a.signal});return n&&typeof n=="function"&&n(o.data),o.data}catch(o){return r&&typeof r=="function"&&r(o),Go(o,a)}}),Dp={data:null,isLoading:!1,error:null,hasLoaded:!1,isActive:!0,activeComplaintTypeId:null,isUpdatingActive:!1,activeError:null},Mp=e=>e.payload?.message??e.error?.message??"Failed to create complaint",xp=e=>e.payload?.message??e.error?.message??"Failed to update complaint type",Pp=oe.createSlice({name:"createComplaint",initialState:Dp,reducers:{},extraReducers:e=>{e.addCase(Xn.pending,t=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1}).addCase(Xn.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.data=n.payload?.data??n.payload}).addCase(Xn.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.error=Mp(n))}).addCase(cn.pending,t=>{t.isUpdatingActive=!0,t.activeError=null}).addCase(cn.fulfilled,(t,n)=>{t.isUpdatingActive=!1;const r=n.payload?.data??n.payload;t.activeComplaintTypeId=r?.id??n.meta?.arg?.id??null,t.isActive=!!(r?.isActive??r?.active??n.meta?.arg?.isActive)}).addCase(cn.rejected,(t,n)=>{n.meta.aborted||(t.isUpdatingActive=!1,t.activeError=xp(n))})}}).reducer,Jo={data:null,isLoading:!1,error:null,hasLoaded:!1,updatingId:null},Up=e=>e.payload?.message??e.error?.message??"Failed to update complaint status",Zo=oe.createSlice({name:"changeStatus",initialState:Jo,reducers:{resetChangeStatusState:()=>Jo},extraReducers:e=>{e.addCase(Lt.pending,(t,n)=>{t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.updatingId=n.meta.arg?.id??null}).addCase(Lt.fulfilled,(t,n)=>{t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.data=n.payload?.data??n.payload}).addCase(Lt.rejected,(t,n)=>{n.meta.aborted||(t.isLoading=!1,t.hasLoaded=!0,t.updatingId=null,t.error=Up(n))})}}),{resetChangeStatusState:$p}=Zo.actions,Bp=Zo.reducer,jp={BASE_URL:"/",DEV:!1,MODE:"production",PROD:!0,SSR:!1},ua=(e,t)=>{try{return jp?.[e]||t}catch{return t}},qp=ua("VITE_S3_API_URL","https://api.airaops.com").replace(/\/$/,""),Xo=ua("VITE_S3_UPLOAD_ENDPOINT","/api/v1/files/upload"),Vp=ua("VITE_S3_SIGNED_URL_ENDPOINT","/api/v1/files/signed-url"),Qo=e=>/^https?:\/\//i.test(e)?e:`${qp}${e}`,Wp=e=>(String(e?.name||e?.fileName||"file").split(/[/\\]/).pop()||"file").replace(/[^\w.-]+/g,"_")||"file",Ro=(e,t)=>{const n=e?.response?.data,r=n?.error?.details?.errors?.file;if(r)return r;const a=n?.message;return a||(e?.response?.status===404?`S3 upload endpoint was not found: ${Xo}`:e?.response?.data?.error??e?.message??t)},It=oe.createAsyncThunk("s3/fileUpload",async({file:e,folder:t},{rejectWithValue:n})=>{try{const r={fileSize:e.size,subDirectory:t,fileName:Wp(e)},a=await le.post(Qo(Xo),r),o=a.data.uploadSignedUrl;return(await fetch(o,{method:"PUT",headers:{"Content-Type":e.type||"application/octet-stream"},body:e})).ok?a.data:n("Error uploading file")}catch(r){return n(Ro(r,"Error uploading file"))}}),dn=oe.createAsyncThunk("s3/getSignedUrl",async({params:e},{rejectWithValue:t})=>{try{const r=(await le.get(Qo(Vp),{params:e})).data??{},a=r.data??r;return a.signedUrl||a.uploadSignedUrl||""}catch(n){return t(Ro(n,"Error getting file signedUrl"))}}),zp={isUploading:!1,uploadedFile:null,uploadedFiles:[],uploadError:null,isGettingSignedUrl:!1,signedUrl:"",signedUrlError:null},Hp=oe.createSlice({name:"s3",initialState:zp,reducers:{},extraReducers:e=>{e.addCase(It.pending,t=>{t.isUploading=!0,t.uploadError=null}).addCase(It.fulfilled,(t,n)=>{t.isUploading=!1,t.uploadedFile=n.payload,t.uploadedFiles.push(n.payload)}).addCase(It.rejected,(t,n)=>{n.meta.aborted||(t.isUploading=!1,t.uploadError=n.payload||"Error uploading file")}).addCase(dn.pending,t=>{t.isGettingSignedUrl=!0,t.signedUrl="",t.signedUrlError=null}).addCase(dn.fulfilled,(t,n)=>{t.isGettingSignedUrl=!1,t.signedUrl=n.payload}).addCase(dn.rejected,(t,n)=>{n.meta.aborted||(t.isGettingSignedUrl=!1,t.signedUrl="",t.signedUrlError=n.payload||"Error getting file signedUrl")})}}).reducer,Kp=e=>`/api/v1/complaints/${encodeURIComponent(e)}`,Yp=(e,t)=>{const n=e?.response?.data,r=Array.isArray(n?.errors)?n.errors.map(a=>a?.message).filter(Boolean):[];return t.rejectWithValue({status:e?.response?.status??e?.status,message:(r.length?r.join(" "):null)??n?.message??n?.error??e?.message??"Failed to fetch complaint details"})},Ft=oe.createAsyncThunk("complaintsGetOne/fetchById",async(e,t)=>{try{return(await le.get(Kp(e),{signal:t.signal})).data}catch(n){return Yp(n,t)}}),el={data:null,isLoading:!1,error:null,hasLoaded:!1,requestedComplaintId:null},Gp=e=>e.payload?.message??e.error?.message??"Failed to fetch complaint details",tl=(e,t)=>e!=null&&t!=null&&String(e)!==String(t),nl=oe.createSlice({name:"complaintsGetOne",initialState:el,reducers:{resetComplaintDetails:()=>el},extraReducers:e=>{e.addCase(Ft.pending,(t,n)=>{t.data=null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.requestedComplaintId=n.meta.arg??null}).addCase(Ft.fulfilled,(t,n)=>{tl(t.requestedComplaintId,n.meta.arg)||(t.data=n.payload?.data??n.payload,t.isLoading=!1,t.hasLoaded=!0)}).addCase(Ft.rejected,(t,n)=>{n.meta.aborted||tl(t.requestedComplaintId,n.meta.arg)||(t.isLoading=!1,t.hasLoaded=!0,t.error=Gp(n))})}}),{resetComplaintDetails:Jp}=nl.actions,Zp=nl.reducer,Xp=e=>`/api/v1/users/role/${e}`,un=oe.createAsyncThunk("roleUsers/fetchByRole",async(e,t)=>{try{const n=await le.get(Xp(encodeURIComponent(e)),{signal:t.signal});return{roleId:e,response:n.data}}catch(n){return t.rejectWithValue({roleId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch users for role"})}}),Qp={usersByRoleId:{},loadingByRoleId:{},errorByRoleId:{}},Rp=oe.createSlice({name:"roleUsers",initialState:Qp,reducers:{},extraReducers:e=>{e.addCase(un.pending,(t,n)=>{const r=String(n.meta.arg);t.loadingByRoleId[r]=!0,delete t.errorByRoleId[r]}).addCase(un.fulfilled,(t,n)=>{const r=String(n.payload.roleId),a=n.payload.response?.data??n.payload.response;t.usersByRoleId[r]=Array.isArray(a)?a:[],t.loadingByRoleId[r]=!1}).addCase(un.rejected,(t,n)=>{if(n.meta.aborted)return;const r=String(n.payload?.roleId??n.meta.arg);t.loadingByRoleId[r]=!1,t.errorByRoleId[r]=n.payload?.message??n.error?.message??"Failed to fetch users for role"})}}).reducer,eh=e=>`/api/v1/complaints/${encodeURIComponent(e)}/activities`,kt=oe.createAsyncThunk("activityLog/fetchByComplaint",async(e,t)=>{try{const n=await le.get(eh(e),{signal:t.signal});return{complaintId:e,response:n.data}}catch(n){return t.rejectWithValue({complaintId:e,message:n?.response?.data?.message??n?.response?.data?.error??n?.message??"Failed to fetch complaint activity"})}}),rl={activities:[],complaintId:null,isLoading:!1,error:null,hasLoaded:!1,currentRequestId:null};function th(e){const t=e?.data??e;return Array.isArray(t)?t:Array.isArray(t?.activities)?t.activities:Array.isArray(t?.items)?t.items:Array.isArray(t?.results)?t.results:[]}const al=oe.createSlice({name:"activityLog",initialState:rl,reducers:{resetActivityLog:()=>rl},extraReducers:e=>{e.addCase(kt.pending,(t,n)=>{t.activities=[],t.complaintId=n.meta.arg??null,t.isLoading=!0,t.error=null,t.hasLoaded=!1,t.currentRequestId=n.meta.requestId}).addCase(kt.fulfilled,(t,n)=>{t.currentRequestId===n.meta.requestId&&(t.activities=th(n.payload?.response),t.complaintId=n.payload?.complaintId??n.meta.arg,t.isLoading=!1,t.hasLoaded=!0,t.currentRequestId=null)}).addCase(kt.rejected,(t,n)=>{n.meta.aborted||t.currentRequestId!==n.meta.requestId||(t.isLoading=!1,t.hasLoaded=!0,t.error=n.payload?.message??n.error?.message??"Failed to fetch complaint activity",t.currentRequestId=null)})}}),{resetActivityLog:nh}=al.actions,rh=al.reducer,ah=oe.combineReducers({complaintAppComplaint:Fo,complaintType:ap,appDetails:xo,workflow:gp,roles:Po.reducer,complaintManagement:_p,status:Fp,createComplaint:Pp,changeStatus:Bp,s3:Hp,complaintsGetOne:Zp,roleUsers:Rp,activityLog:rh}),sl=e=>oe.configureStore({reducer:ah,preloadedState:e,middleware:t=>t({immutableCheck:!1,serializableCheck:!1})}),ol=sl();function ye({children:e,variant:t="primary",size:n="md",startIcon:r,endIcon:a,className:o="",type:l="button",disabled:i=!1,onClick:c,...d}){const u=["ca-btn",`ca-btn--${t}`,n==="sm"?"ca-btn--sm":"",n==="lg"?"ca-btn--lg":"",o].filter(Boolean).join(" ");return s.jsxs("button",{type:l,className:u,disabled:i,onClick:c,...d,children:[r?s.jsx("span",{className:"ca-btn__icon",children:r}):null,e,a?s.jsx("span",{className:"ca-btn__icon",children:a}):null]})}function ll({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M12 5v14M5 12h14",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}const il={h1:"ca-h1",h2:"ca-h2",body:"ca-body",label:"ca-label",value:"ca-value",small:"ca-small",link:"ca-link"},sh={h1:"h1",h2:"h2",body:"p",label:"span",value:"span",small:"span",link:"button"};function Qe({variant:e="body",as:t,className:n="",children:r,...a}){const o=t||sh[e]||"p",l=il[e]||il.body;return s.jsx(o,{className:`${l} ${n}`.trim(),...a,children:r})}function fa(e){return s.jsx(Qe,{variant:"h1",...e})}function pa(e){return s.jsx(Qe,{variant:"h2",...e})}function Qn(e){return s.jsx(Qe,{variant:"body",...e})}function cl(e){return s.jsx(Qe,{variant:"label",...e})}function dl(e){return s.jsx(Qe,{variant:"value",...e})}function oh(e){return s.jsx(Qe,{variant:"link",type:"button",...e})}function ha({title:e="Complaint Management",description:t,actionLabel:n="Create New Form",onAction:r,showAction:a=!0,className:o=""}){return s.jsxs("header",{className:`ca-page-header ${o}`.trim(),children:[s.jsxs("div",{className:"ca-page-header__text",children:[s.jsx(fa,{children:e}),t?s.jsx(Qn,{children:t}):null]}),a?s.jsx("div",{className:"ca-page-header__actions",children:s.jsx(ye,{startIcon:s.jsx(ll,{}),onClick:r,children:n})}):null]})}function Rn({checked:e=!1,onChange:t,disabled:n=!1,"aria-label":r="Toggle",className:a=""}){return s.jsx("button",{type:"button",role:"switch","aria-checked":e,"aria-label":r,disabled:n,className:`ca-toggle ${e?"ca-toggle--on":""} ${a}`.trim(),onClick:()=>t?.(!e),children:s.jsx("span",{className:"ca-toggle__thumb"})})}function er({size:e=16,color:t="#9CA3AF",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M4 7h16M9 7V5a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2m2 0v12a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2V7h12Z",stroke:t,strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round"})})}function ul({title:e,titleAsLink:t=!1,onTitleClick:n,isActive:r=!1,canManage:a=!1,canDelete:o=!1,activeDisabled:l=!1,onActiveChange:i,onDelete:c,className:d=""}){return s.jsxs("div",{className:`ca-system-card__header ${d}`.trim(),children:[s.jsx("div",{className:"ca-system-card__title-wrap",children:t?s.jsx("button",{type:"button",className:"ca-h2 ca-h2--link",onClick:n,children:e}):s.jsx(pa,{children:e})}),s.jsxs("div",{className:"ca-system-card__header-actions",children:[s.jsx("span",{className:"ca-system-card__active-label",children:r?"Active":"Inactive"}),a?s.jsx(Rn,{checked:r,disabled:l,"aria-label":`${r?"Deactivate":"Activate"} ${e}`,onChange:i}):null,s.jsx("button",{type:"button",className:"ca-system-card__delete","aria-label":`Delete ${e}`,title:o?`Delete ${e}`:"You do not have permission to delete this form",disabled:!o,onClick:c,children:s.jsx(er,{size:40,color:"currentColor"})})]})]})}function fn({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:s.jsx("path",{d:"M9 6l6 6-6 6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}const lh="aira-query-complaintTypeId";function fl({updatedOn:e,openLabel:t="Open",configureLabel:n="Configure",onOpen:r,className:a="",id:o,canConfigure:l=!1,canOpen:i=!1,canAddComplaint:c=!1}){const d=Pe(),u=Q.useDispatch(),f=o?.data??o?.id??o?._id??o,p=()=>{const w=o?.data??o?.id??o?._id??o;if(w!=null&&w!==""){const S=String(w);try{sessionStorage.setItem(lh,S)}catch{}u(lt(S)),u(Wo()),u(Yo()),d(`/complaintmanagement/${S}`);return}d("/complaintmanagement")};return s.jsxs("div",{className:`ca-system-card__footer ${a}`.trim(),children:[s.jsx(Qe,{variant:"small",as:"span",children:e?`Updated on ${e}`:""}),s.jsxs("div",{className:"ca-system-card__footer-actions",children:[i?s.jsxs(ye,{size:"sm",onClick:p,children:[t,s.jsx(fn,{size:14,color:"currentColor"})]}):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(fn,{size:14,color:"currentColor"}),children:n}):null,c?s.jsx(ye,{size:"sm",onClick:()=>{f==null||f===""||d(`/complaintmanagement/new/${String(f)}`)},endIcon:s.jsx(fn,{size:14,color:"currentColor"}),children:"Add complaint"}):null]})]})}function pl({label:e,value:t,icon:n,className:r=""}){const a=t==null?"—":typeof t=="number"?String(t).padStart(2,"0"):t;return s.jsxs("div",{className:`ca-data-point ${r}`.trim(),children:[n?s.jsx("span",{className:"ca-data-point__icon","aria-hidden":"true",children:n}):null,s.jsx(dl,{children:a}),s.jsx("span",{className:"ca-data-point__label",children:e})]})}function hl({className:e=""}){return s.jsx("div",{className:`ca-divider ${e}`.trim(),role:"separator","aria-orientation":"vertical"})}const ih="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_617_15259)'%3e%3cpath%20d='M9.99992%2011.9997H6.66658M11.9999%209.33301H6.66658M2.66659%2014.6663H13.3333C13.6869%2014.6663%2014.026%2014.5259%2014.2761%2014.2758C14.5261%2014.0258%2014.6666%2013.6866%2014.6666%2013.333V2.66634C14.6666%202.31272%2014.5261%201.97358%2014.2761%201.72353C14.026%201.47348%2013.6869%201.33301%2013.3333%201.33301H5.33325C4.97963%201.33301%204.64049%201.47348%204.39044%201.72353C4.14039%201.97358%203.99992%202.31272%203.99992%202.66634V5.99967M2.66659%2014.6663C3.02021%2014.6663%203.35935%2014.5259%203.60939%2014.2758C3.85944%2014.0258%203.99992%2013.6866%203.99992%2013.333V5.99967M2.66659%2014.6663C2.31296%2014.6663%201.97382%2014.5259%201.72378%2014.2758C1.47373%2014.0258%201.33325%2013.6866%201.33325%2013.333V7.33301C1.33325%206.97939%201.47373%206.64025%201.72378%206.3902C1.97382%206.14015%202.31296%205.99967%202.66659%205.99967H3.99992M7.33325%203.99967H11.3333C11.7014%203.99967%2011.9999%204.29815%2011.9999%204.66634V5.99967C11.9999%206.36786%2011.7014%206.66634%2011.3333%206.66634H7.33325C6.96506%206.66634%206.66658%206.36786%206.66658%205.99967V4.66634C6.66658%204.29815%206.96506%203.99967%207.33325%203.99967Z'%20stroke='%232D64B8'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_617_15259'%3e%3crect%20width='16'%20height='16'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",ch="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.44729%202.75711C6.48402%202.37067%206.66351%202.01181%206.95069%201.75063C7.23787%201.48945%207.61211%201.34473%208.00029%201.34473C8.38847%201.34473%208.76271%201.48945%209.04989%201.75063C9.33707%202.01181%209.51656%202.37067%209.55329%202.75711C9.57537%203.00675%209.65727%203.24739%209.79205%203.45867C9.92683%203.66995%2010.1105%203.84565%2010.3276%203.97089C10.5447%204.09614%2010.7887%204.16724%2011.0391%204.17819C11.2895%204.18913%2011.5388%204.1396%2011.766%204.03378C12.1187%203.87363%2012.5184%203.85045%2012.8873%203.96877C13.2562%204.08708%2013.5678%204.33841%2013.7616%204.67385C13.9554%205.00928%2014.0175%205.40482%2013.9357%205.78349C13.854%206.16215%2013.6342%206.49685%2013.3193%206.72244C13.1142%206.86634%2012.9468%207.05751%2012.8312%207.27979C12.7157%207.50207%2012.6553%207.74891%2012.6553%207.99944C12.6553%208.24997%2012.7157%208.49681%2012.8312%208.71909C12.9468%208.94137%2013.1142%209.13254%2013.3193%209.27644C13.6342%209.50203%2013.854%209.83673%2013.9357%2010.2154C14.0175%2010.5941%2013.9554%2010.9896%2013.7616%2011.325C13.5678%2011.6605%2013.2562%2011.9118%2012.8873%2012.0301C12.5184%2012.1484%2012.1187%2012.1253%2011.766%2011.9651C11.5388%2011.8593%2011.2895%2011.8097%2011.0391%2011.8207C10.7887%2011.8316%2010.5447%2011.9027%2010.3276%2012.028C10.1105%2012.1532%209.92683%2012.3289%209.79205%2012.5402C9.65727%2012.7515%209.57537%2012.9921%209.55329%2013.2418C9.51656%2013.6282%209.33707%2013.9871%209.04989%2014.2483C8.76271%2014.5094%208.38847%2014.6542%208.00029%2014.6542C7.61211%2014.6542%207.23787%2014.5094%206.95069%2014.2483C6.66351%2013.9871%206.48402%2013.6282%206.44729%2013.2418C6.42525%2012.992%206.34336%2012.7513%206.20854%2012.54C6.07371%2012.3286%205.88994%2012.1528%205.67278%2012.0276C5.45562%2011.9023%205.21147%2011.8313%204.96101%2011.8204C4.71055%2011.8095%204.46116%2011.8591%204.23396%2011.9651C3.88122%2012.1253%203.48151%2012.1484%203.11263%2012.0301C2.74374%2011.9118%202.43207%2011.6605%202.23828%2011.325C2.04449%2010.9896%201.98244%2010.5941%202.0642%2010.2154C2.14596%209.83673%202.36569%209.50203%202.68063%209.27644C2.88571%209.13254%203.05311%208.94137%203.16868%208.71909C3.28426%208.49681%203.34459%208.24997%203.34459%207.99944C3.34459%207.74891%203.28426%207.50207%203.16868%207.27979C3.05311%207.05751%202.88571%206.86634%202.68063%206.72244C2.36614%206.49674%202.14679%206.16217%202.06523%205.78376C1.98366%205.40535%202.0457%205.01014%202.23928%204.67492C2.43287%204.3397%202.74417%204.08843%203.11269%203.96994C3.4812%203.85144%203.88061%203.8742%204.23329%204.03378C4.46046%204.1396%204.70979%204.18913%204.96016%204.17819C5.21053%204.16724%205.45458%204.09614%205.67165%203.97089C5.88872%203.84565%206.07242%203.66995%206.2072%203.45867C6.34198%203.24739%206.42388%203.00675%206.44596%202.75711M9.99996%207.99978C9.99996%209.10434%209.10453%209.99978%207.99996%209.99978C6.89539%209.99978%205.99996%209.10434%205.99996%207.99978C5.99996%206.89521%206.89539%205.99978%207.99996%205.99978C9.10453%205.99978%209.99996%206.89521%209.99996%207.99978Z'%20stroke='%23745EBF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",dh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.99992%208H6.66659M9.99992%205.33333H6.66659M12.6666%2011.3333V3.33333C12.6666%202.97971%2012.5261%202.64057%2012.2761%202.39052C12.026%202.14048%2011.6869%202%2011.3333%202H2.66659M2.66659%202C3.02021%202%203.35935%202.14048%203.60939%202.39052C3.85944%202.64057%203.99992%202.97971%203.99992%203.33333V5.33333M2.66659%202C2.31296%202%201.97382%202.14048%201.72378%202.39052C1.47373%202.64057%201.33325%202.97971%201.33325%203.33333V4.66667C1.33325%204.84348%201.40349%205.01305%201.52851%205.13807C1.65354%205.2631%201.82311%205.33333%201.99992%205.33333H3.99992M5.33325%2014H13.3333C13.6869%2014%2014.026%2013.8595%2014.2761%2013.6095C14.5261%2013.3594%2014.6666%2013.0203%2014.6666%2012.6667V12C14.6666%2011.8232%2014.5963%2011.6536%2014.4713%2011.5286C14.3463%2011.4036%2014.1767%2011.3333%2013.9999%2011.3333H7.33325C7.15644%2011.3333%206.98687%2011.4036%206.86185%2011.5286C6.73682%2011.6536%206.66659%2011.8232%206.66659%2012V12.6667C6.66659%2013.0203%206.52611%2013.3594%206.27606%2013.6095C6.02601%2013.8595%205.68687%2014%205.33325%2014ZM5.33325%2014C4.97963%2014%204.64049%2013.8595%204.39044%2013.6095C4.14039%2013.3594%203.99992%2013.0203%203.99992%2012.6667V5.33333'%20stroke='%2300B692'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",uh="data:image/svg+xml,%3csvg%20width='16'%20height='16'%20viewBox='0%200%2016%2016'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M2.66675%209.33301H6.66675M2.66675%201.33301H9.33341M3.33341%2011.9997H12.6667C13.0349%2011.9997%2013.3334%2012.2982%2013.3334%2012.6663V13.9997C13.3334%2014.3679%2013.0349%2014.6663%2012.6667%2014.6663H3.33341C2.96522%2014.6663%202.66675%2014.3679%202.66675%2013.9997V12.6663C2.66675%2012.2982%202.96522%2011.9997%203.33341%2011.9997ZM3.33341%203.99967H12.6667C13.0349%203.99967%2013.3334%204.29815%2013.3334%204.66634V5.99967C13.3334%206.36786%2013.0349%206.66634%2012.6667%206.66634H3.33341C2.96522%206.66634%202.66675%206.36786%202.66675%205.99967V4.66634C2.66675%204.29815%202.96522%203.99967%203.33341%203.99967Z'%20stroke='%23FF6F00'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e",fh="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 ml(e){const t=Array.isArray(e)?e:[],n=new Set(t.filter(c=>c?.featureModule?.name===fh&&c?.featureModule?.isActive!==!1).map(c=>String(c?.actionName||"").trim().toUpperCase())),r=n.has("FULL_ACCESS"),a=n.has("READ")||r,o=n.has("CREATE")||r,l=n.has("DELETE")||r,i=n.has("FULL_DATA_ACCESS");return{canViewCards:a,canCreateForm:o,canDelete:l,canOpen:i,hasAnyAccess:a||o||l||i}}const gl="aira-query-complaintTypeId",hh={id:"status",label:"Status",key:"status"},mh={id:"escalationTo",label:"Escalation To",key:"escalationTo"},gh={id:"submittedByUserName",label:"Submitted By",key:"submittedByUserName"},yh={id:"assignedToUserName",label:"Assigned To",key:"assignedToUserName"},bh={id:"complaintId",label:"Complaint Id",key:"complaintId"},Sh={id:"createdAt",label:"Created At",key:"createdAt"},vh={id:"updatedAt",label:"Updated At",key:"updatedAt"},yl="desc",bl="asc",wh=10,Ch=["5","10","15","20","25"],_h=999999,ma=new Set(["status","escalationTo","id","submittedByUserName","assignedToUserName","complaintId","createdAt","updatedAt"]),Nh=["January","Feb","Mar","Apr","May","June","July","Aug","Sept","Oct","Nov","Dec"];function Sl(e){if(!e)return"";const t=new Date(e);if(Number.isNaN(t.getTime()))return"";const n=String(t.getHours()).padStart(2,"0"),r=String(t.getMinutes()).padStart(2,"0");return`${t.getDate()} ${Nh[t.getMonth()]} ${t.getFullYear()}, ${n}:${r}`}function vl(e){return[gh,yh,bh,Sh,vh,hh,mh,...e]}function Ah(e){const t=e?.data??e,n=Array.isArray(t)?t:t?.data??t?.results??t?.items??[];return[...Array.isArray(n)?n:[]].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0)).map(r=>{const a=r.fieldKey||r.fieldName||r.fieldLabel;return{id:a,label:r.fieldName||r.fieldLabel||r.label||a,key:a,fieldType:r.fieldType,hideForWorkflowStepId:r.hideForWorkflowStepId??null}}).filter(r=>r.key&&!ma.has(r.key))}function Eh(e,t,n,r){const a=e?.data??e??{},o=Number(a.total??a.totalItems??a.totalCount??a.count),l=Number(a.totalPages??a.pages??a.pageCount);return Number.isFinite(l)&&l>0?{totalPages:l,totalItems:Number.isFinite(o)&&o>=0?o:Math.max(r,l*n),hasNext:t<l}:Number.isFinite(o)&&o>=0?{totalPages:Math.max(1,Math.ceil(o/n)),totalItems:o,hasNext:t*n<o}:{totalPages:t+(r>=n?1:0),totalItems:Math.max(r,t*n),hasNext:r>=n}}function wl(e){return e==null||e===""?null:typeof e=="object"?e.data??e.id??e._id??null:e}function Lh(){try{return sessionStorage.getItem(gl)}catch{return null}}function Cl(e){const t=wl(e);if(t==null||t==="")return null;const n=String(t);try{sessionStorage.setItem(gl,n)}catch{}return n}function Th(...e){for(const t of e){const n=wl(t);if(n!=null&&n!=="")return String(n)}return null}function ga(e,t=[]){const n=e?.status;if(typeof n=="string"&&n.trim())return n.trim();if(n&&typeof n=="object"){const a=n.name??n.label??n.status;if(a)return String(a).trim();const o=n.id??n.statusId;if(o!=null){const l=t.find(i=>String(i.id)===String(o));if(l?.name)return l.name}}const r=e?.statusId??e?.complaintStatusId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.name)return a.name}return""}function Ih(e,t=[]){const n=e?.statusId??e?.complaintStatusId;if(n!=null&&n!=="")return n;const r=e?.status;if(r&&typeof r=="object"){const a=r.id??r.statusId;if(a!=null&&a!=="")return a}if(typeof r=="string"&&r.trim()){const a=t.find(o=>String(o.name).trim()===r.trim());if(a?.id!=null)return a.id}return null}function tr(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"}const Fh=new Set(["closed","cancelled","canceled"]);function ya(e){return Fh.has(String(e||"").trim().toLowerCase())}function kh(e){return ya(e)}function ba(e){return ya(e)}function Oh(e,t=[]){const n=e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId;if(n!=null&&n!==""){const a=t.find(o=>String(o.id)===String(n));if(a)return a}const r=e?.level??e?.levelNo;return r!=null&&r!==""?t.find(a=>String(a.levelNo)===String(r))??null:null}function Dh(e,t=[]){const n=e?.level??e?.levelNo;if(n!=null&&n!=="")return`Level ${n}`;const r=e?.workflowStepId??e?.currentWorkflowStepId??e?.currentStepId;if(r!=null){const a=t.find(o=>String(o.id)===String(r));if(a?.levelNo!=null)return`Level ${a.levelNo}`}return""}function _l(e,t=[],n=[]){const r=Oh(e,n),a=r?.levelNo??e?.level??e?.levelNo??e?.currentLevel,o=Array.isArray(e?.workflowLevels)?e.workflowLevels.find(f=>String(f?.levelNo)===String(a)):null,l=r?.roleIds?.[0]??r?.roles?.[0]?.id??r?.roleId??o?.roleIds?.[0]??e?.roleId??e?.assignedRoleId??null,i=e?.assignedTo??e?.assignedUser??e?.assignee,d=(i&&typeof i=="object"?i.userId??i.id:i!=null&&i!==""&&Number.isFinite(Number(i))?i:null)??e?.assignedToUser?.userId??e?.assignedToUser?.id??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId??null,u={id:e?.complaintId??e?.id,status:ga(e,t),isClosed:ba(ga(e,t)),statusId:Ih(e,t),escalationTo:Dh(e,n),level:a??null,currentStepId:r?.id??e?.currentStepId??e?.workflowStepId??e?.currentWorkflowStepId??null,canResolve:tr(e?.canResolve??r?.canResolve),isFinalLevel:tr(e?.isFinalLevel??r?.isFinalLevel??r?.finalLevel),roleId:l,assignedToUserId:d,assignedToUserName:Fl(e),submittedByUserName:e?.submittedByUserName||"-",complaintId:e?.complaintId??e?.id??"-",createdAt:Sl(e?.createdAt)||"-",updatedAt:Sl(e?.updatedAt)||"-",updatedAtValue:e?.updatedAt??""};return(e?.formField||[]).forEach(f=>{const p=f.fieldKey||f.fieldName;p&&!ma.has(p)&&(u[p]=f.value)}),u}function Nl(e,t){const n=new Set,r=t.map(a=>{if(n.add(a.key),a.fieldType)return a;const o=e.flatMap(l=>l._fields||[]).find(l=>(l.fieldKey||l.fieldName)===a.key);return o?.fieldType?{...a,fieldType:o.fieldType}:a});return e.forEach(a=>{(a._fields||[]).forEach(o=>{const l=o.fieldKey||o.fieldName;!l||ma.has(l)||n.has(l)||(n.add(l),r.push({id:l,label:o.fieldName||l,key:l,fieldType:o.fieldType}))})}),r}function Mh(e,t,n){const r=String(e?.fieldType||"").toLowerCase();return r==="file"||r==="images"||r==="image"?!0:t.some(a=>n(e,a[e.key]??"-"))}function Al(e){const t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.results??t?.items??[]}function El(e){const t=e==null?"":String(e);return/[",\n]/.test(t)?`"${t.replace(/"/g,'""')}"`:t}function xh(e,t){const n=e.map(a=>El(a.label)).join(","),r=t.map(a=>e.map(o=>El(a[o.key]??"-")).join(","));return[n,...r].join(`\r
|
|
12
|
+
`)}const Ph=["January","February","March","April","May","June","July","August","September","October","November","December"];function Ll(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":`${t.getDate()} ${Ph[t.getMonth()]} ${t.getFullYear()}`}function Tl(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Uh(e){const t=Array.isArray(e?.accesses)?e.accesses.map(r=>r?.role?.id??r?.role?.roleId??r?.roleId).map(Number).filter(Number.isFinite):[];return t.length?t:(Array.isArray(e?.roleIds)?e.roleIds:Array.isArray(e?.roles)?e.roles:[]).map(r=>Number(r?.id??r?.roleId??r?.role_id??r)).filter(r=>Number.isFinite(r))}function Sa(e,t=[]){return Uh(e).some(n=>t.includes(n))}function Il(e){if(!e)return"";if(typeof e=="string")return e.trim();if(typeof e!="object")return"";const t=[e.firstName,e.lastName].filter(Boolean).join(" ");return String(e.name||e.userName||e.fullName||t||"").trim()}function Fl(e,t=[]){const n=e?.assignedToUserName??e?.assignedToName??e?.assignedUserName;if(n&&String(n).trim())return String(n).trim();const r=e?.assignedTo??e?.assignedUser??e?.assignee,a=Il(r);if(a)return a;const o=(r&&typeof r=="object"?r.id??r.userId:r)??e?.assignedToUserId??e?.assignedToId??e?.assignedUserId;if(o!=null&&o!==""){const l=t.find(i=>String(i?.id??i?.userId)===String(o));return Il(l)}return""}function kl(e,t=[],n=[],r=null){const a=ga(e,t),o=e?.level??e?.levelNo??e?.currentLevel;return{id:e?.complaintId??e?.id,title:String(e?.complaintId??e?.id??"-"),status:a||"-",isClosed:ba(a),level:o!=null&&o!==""?o:"-",assignedTo:Fl(e,n)||"Unassigned",date:Ll(e?.createdAt??e?.date),tat:r?Vh(e,r.tatMinutes,a):null}}function $h(e,t=[]){const n=e?.userComplaintSummary??{},r=Number(n.totalComplaints)||0,a=Number(n.openComplaints)||0,o=Number(n.closedComplaints)||0,l=Number(n.cancelledComplaints)||0,i=(Array.isArray(e?.recentOpenComplaints)?e.recentOpenComplaints:[]).slice(0,2).map(c=>kl(c,[],t));return{total:r,open:a,closed:o,cancelled:l,previewRows:i}}function Bh(e=[]){const t={};return(Array.isArray(e)?e:[]).forEach(n=>{const r=n?.id??n?._id,a=n?.name??n?.storeName;r!=null&&a&&(t[String(r)]=String(a))}),t}function Ol(e,t={}){if(!Object.keys(t).length)return e;const n={...e};return Object.keys(n).forEach(r=>{const a=n[r];typeof a=="string"&&t[a.trim()]&&(n[r]=t[a.trim()])}),n}function jh(e,t=[],n=null){const r=e?.workflowComplaintSummary,a=[r?.levels,r?.steps,e?.workflowLevels,e?.workflowSteps].filter(Array.isArray).flat(),o=i=>Number(i&&typeof i=="object"?i.userId??i.id??i.roleId??i.role_id??i.user?.id??i.role?.id:i),l=(...i)=>i.filter(Array.isArray).flat().map(o).filter(Number.isFinite);return a.some(i=>{const c=l(i?.roleIds,i?.roles,i?.roleId!=null?[i.roleId]:null),d=l(i?.userIds,i?.users,i?.userAssignments,i?.assignedUsers);return c.some(u=>t.includes(u))||n!=null&&d.includes(Number(n))})}function va(e){const t=Math.max(Math.floor(Math.abs(e)/60),0),n=Math.floor(t/1440),r=Math.floor(t%1440/60),a=t%60,o=[];return n&&o.push(`${n}d`),r&&o.push(`${r}h`),a&&!n&&o.push(`${a}m`),o.join(" ")||"0m"}function qh(e){if(e%1440===0){const t=e/1440;return`${t} ${t===1?"day":"days"}`}return va(e*60)}function Vh(e,t,n=""){if(ya(n))return null;const r=Number(e?.escalationTimeRemainingSeconds);if(e?.escalationTimeRemainingSeconds==null||!Number.isFinite(r))return null;const a=Number(t)>0?Number(t)*60:0,o=r<0,l=a?Math.min(Math.max(Math.round((1-r/a)*100),0),100):0;return{percent:o?100:l,state:o?"overdue":l>=75?"warn":"ok",remainingLabel:o?`Overdue by ${va(r)}`:`${va(r)} remaining`,totalLabel:a?`of ${qh(Number(t))}`:""}}function Wh(e){if(!e)return"";const t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric"})}function Dl({id:e,title:t,item:n,status:r="inactive",description:a,descriptionHref:o,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u,titleAsLink:f=!1,onTitleClick:p,onDescriptionClick:w,onConfigure:S,onOpen:m,onDelete:h,onToggleActive:g,isTogglingActive:b=!1,className:L=""}){const _=Q.useSelector(E=>E.appDetails?.details?.currentUser),x=Q.useSelector(E=>E.appDetails?.details?.featureActions),{canCreateForm:T,canDelete:V,canOpen:R}=ml(x),Z=T,q=Tl(_),K=_?.id??_?.userId??null,$=R||jh(n,q,K)||Sa(n,q),G=Sa(n,q)&&n?.isActive!==!1,I=()=>{S?.({id:e,title:t,status:r,departments:l,workflows:i,fields:c,formsFilled:d,updatedOn:u})},D=()=>{if(w){w({id:e,title:t,descriptionHref:o});return}o&&typeof window<"u"&&window.open(o,"_blank","noopener,noreferrer")},j=[{label:"Total entries",value:n?.totalEntries??0,icon:s.jsx("img",{src:ih,alt:""})},{label:"Open entries",value:n?.openEntries??0,icon:s.jsx("img",{src:ch,alt:""})},{label:"Closed entries",value:n?.closedEntries??0,icon:s.jsx("img",{src:dh,alt:""})},{label:"Escalated entries",value:n?.escalatedEntries??0,icon:s.jsx("img",{src:uh,alt:""})}],H=e??n?.id??n?._id;return s.jsxs("article",{className:`ca-system-card ${L}`.trim(),children:[s.jsx(ul,{title:n?.name,titleAsLink:f,onTitleClick:()=>p?.({id:e,title:t}),isActive:!!n?.isActive,canManage:Z,canDelete:V,activeDisabled:b,onActiveChange:E=>g?.({id:H,isActive:E,item:n}),onDelete:()=>h?.({id:H,title:t,item:n})}),a?s.jsx("p",{className:"ca-system-card__description",onClick:D,children:a}):null,s.jsx("div",{className:"ca-system-card__stats",children:j.map((E,M)=>s.jsxs(y.Fragment,{children:[M>0?s.jsx(hl,{}):s.jsx("div",{className:"ca-system-card__stats-spacer"}),s.jsx(pl,{label:E.label,value:E.value,icon:E.icon})]},E.label))}),s.jsx(fl,{updatedOn:u??Wh(n?.updatedAt??n?.createdAt),onOpen:()=>m?.({id:e,title:t}),id:e??n?.id??n?._id,title:t,canOpen:$,canConfigure:Z,canAddComplaint:G,onConfigure:I})]})}function Ml({systems:e=[],onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,togglingActiveId:o=null,onTitleClick:l,onDescriptionClick:i,emptyMessage:c="No systems found.",className:d=""}){return e.length?s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:e.map(u=>s.jsx(Dl,{item:u,...u,onConfigure:t,onOpen:n,onDelete:r,onToggleActive:a,isTogglingActive:String(o)===String(u.id??u._id),onTitleClick:l,onDescriptionClick:i},u.id??u.title))}):s.jsx("div",{className:`ca-system-grid ${d}`.trim(),children:s.jsx("div",{className:"ca-empty",children:s.jsx(Qn,{children:c})})})}function Ot({value:e,onChange:t,placeholder:n,type:r="text",icon:a,className:o="",inputClassName:l="",...i}){return s.jsxs("div",{className:`ca-input-wrap ${o}`.trim(),children:[a?s.jsx("span",{className:"ca-input-wrap__icon",children:a}):null,s.jsx("input",{type:r,className:`ca-input ${a?"ca-input--with-icon":""} ${l}`.trim(),value:e,onChange:t,placeholder:n,...i})]})}function xl({size:e=18,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:[s.jsx("path",{d:"M10.5 18a7.5 7.5 0 1 1 0-15 7.5 7.5 0 0 1 0 15Z",stroke:t,strokeWidth:"1.75"}),s.jsx("path",{d:"M16.5 16.5 21 21",stroke:t,strokeWidth:"1.75",strokeLinecap:"round"})]})}function Pl({value:e,onChange:t,onSearch:n,placeholder:r="Search",className:a=""}){const o=l=>{l.key==="Enter"&&n&&n(e)};return s.jsx("div",{className:`ca-search ${a}`.trim(),children:s.jsx(Ot,{value:e,onChange:t,onKeyDown:o,placeholder:r,icon:s.jsx(xl,{}),"aria-label":r})})}function ze({text:e="Loading",fullScreen:t=!1}){return s.jsxs("div",{className:"ca-loading",style:t?{minHeight:"calc(100vh - 80px)"}:void 0,role:"status","aria-live":"polite",children:[s.jsx("span",{className:"ca-loading__spinner"}),s.jsxs("span",{children:[e,"…"]})]})}const zh=[{id:"qms",title:"QMS - Query Management System",status:"active",description:"Description of the template",departments:3,workflows:12,fields:55,formsFilled:234,updatedOn:"12 Mar 2024",titleAsLink:!1},{id:"cms",title:"CX- Pulse-360 ",status:"active",description:"Description of the template",departments:5,workflows:8,fields:42,formsFilled:189,updatedOn:"08 Mar 2024"},{id:"fms",title:"ENE - TRACKER",status:"inactive",description:"Description of the template",departments:2,workflows:4,fields:28,formsFilled:56,updatedOn:"01 Feb 2024"},{id:"rms",title:"RTV - Return to Vendor ",status:"active",description:"Description of the template",departments:4,workflows:10,fields:61,formsFilled:312,updatedOn:"20 Mar 2024"}],Ul="Create, manage and track complaint forms, workflows and responses across departments.";const $l=(...e)=>e.filter((t,n,r)=>!!t&&t.trim()!==""&&r.indexOf(t)===n).join(" ").trim();const Hh=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const Kh=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(t,n,r)=>r?r.toUpperCase():n.toLowerCase());const Bl=e=>{const t=Kh(e);return t.charAt(0).toUpperCase()+t.slice(1)};var wa={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const Yh=e=>{for(const t in e)if(t.startsWith("aria-")||t==="role"||t==="title")return!0;return!1},Gh=y.createContext({}),Jh=()=>y.useContext(Gh),Zh=y.forwardRef(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:r,className:a="",children:o,iconNode:l,...i},c)=>{const{size:d=24,strokeWidth:u=2,absoluteStrokeWidth:f=!1,color:p="currentColor",className:w=""}=Jh()??{},S=r??f?Number(n??u)*24/Number(t??d):n??u;return y.createElement("svg",{ref:c,...wa,width:t??d??wa.width,height:t??d??wa.height,stroke:e??p,strokeWidth:S,className:$l("lucide",w,a),...!o&&!Yh(i)&&{"aria-hidden":"true"},...i},[...l.map(([m,h])=>y.createElement(m,h)),...Array.isArray(o)?o:[o]])});const be=(e,t)=>{const n=y.forwardRef(({className:r,...a},o)=>y.createElement(Zh,{ref:o,iconNode:t,className:$l(`lucide-${Hh(Bl(e))}`,`lucide-${e}`,r),...a}));return n.displayName=Bl(e),n};const Xh=be("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]]);const jl=be("building-2",[["path",{d:"M10 12h4",key:"a56b0p"}],["path",{d:"M10 8h4",key:"1sr2af"}],["path",{d:"M14 21v-3a2 2 0 0 0-4 0v3",key:"1rgiei"}],["path",{d:"M6 10H4a2 2 0 0 0-2 2v7a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2V9a2 2 0 0 0-2-2h-2",key:"secmi2"}],["path",{d:"M6 21V5a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v16",key:"16ra0t"}]]);const Qh=be("calendar-days",[["path",{d:"M8 2v3",key:"1ioesn"}],["path",{d:"M16 2v3",key:"otl347"}],["rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",key:"h1oib"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M8 13h.01",key:"1sbv64"}],["path",{d:"M12 13h.01",key:"y0uutt"}],["path",{d:"M16 13h.01",key:"wip0gl"}],["path",{d:"M8 17h.01",key:"p3bg7i"}],["path",{d:"M12 17h.01",key:"p32p05"}],["path",{d:"M16 17h.01",key:"ql8jdd"}]]);const pn=be("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);const Rh=be("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);const nr=be("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);const em=be("chevrons-left",[["path",{d:"m11 17-5-5 5-5",key:"13zhaf"}],["path",{d:"m18 17-5-5 5-5",key:"h8a8et"}]]);const tm=be("chevrons-right",[["path",{d:"m6 17 5-5-5-5",key:"xnjwq"}],["path",{d:"m13 17 5-5-5-5",key:"17xmmf"}]]);const rr=be("circle-dot",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]]);const nm=be("download",[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]]);const rm=be("flag",[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]]);const am=be("funnel",[["path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",key:"sc7q7i"}]]);const sm=be("list-filter",[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]]);const ql=be("plus",[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]]);const Vl=be("store",[["path",{d:"M15 21v-5a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v5",key:"slp6dd"}],["path",{d:"M17.774 10.31a1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.451 0 1.12 1.12 0 0 0-1.548 0 2.5 2.5 0 0 1-3.452 0 1.12 1.12 0 0 0-1.549 0 2.5 2.5 0 0 1-3.77-3.248l2.889-4.184A2 2 0 0 1 7 2h10a2 2 0 0 1 1.653.873l2.895 4.192a2.5 2.5 0 0 1-3.774 3.244",key:"o0xfot"}],["path",{d:"M4 10.95V19a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8.05",key:"wn3emo"}]]);const om=be("trash-2",[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]]);const lm=be("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]),im=["Text","Dropdown","Radio","Number","Email","Date","Text Area","Checkbox","File","Images","Time"],Wl=new Set(["Select","Dropdown","Radio","Checkbox"]),cm=["Both","User","Admin"],dm={Open:"#FF0000",Cancelled:"#FF6F00",Closed:"#00D82F"},Ca=["Open","Cancelled","Closed"],He={id:"default-status",fieldKey:"status",fieldLabel:"Status",originalFieldName:"Status",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[...Ca],optionColors:{...dm},parentMappings:{},lockMode:"options",isNew:!1},ar={id:"custom-priorities",fieldKey:"priorities",fieldLabel:"Priorities",originalFieldName:"Priorities",fieldType:"Dropdown",required:!1,fieldAccess:"",hideFor:[],dependsOn:"",options:["Urgent","High","Medium","Low"],parentMappings:{},lockMode:"options",isNew:!1},hn={id:"custom-store-id",fieldKey:"storeIdCustom",fieldLabel:"Store ID",originalFieldName:"Store ID",fieldType:"Custom",required:!0,fieldAccess:"",hideFor:[],dependsOn:"",options:[],optionColors:{},parentMappings:{},lockMode:"all",isNew:!1},um=[{...He,label:He.fieldLabel},{...hn,label:hn.fieldLabel}];function zl(e){return String(e||"").trim().toLowerCase()}function re(e){const t=zl(e?.fieldKey),n=zl(e?.fieldLabel||e?.label);return t==="status"||t==="statuses"||t==="statuscustom"||n==="status"||n==="statuses"}function Ue(e){return re(e)&&(e?.lockMode==="options"||e?.lockMode==="all")}function fm(e,t=[]){if(!re(e))return!1;const n=t.length?t:[e],r=n.filter(l=>!l?.isNew&&re(l)),a=n.filter(Ue),o=r[0]||a[0]||n.find(l=>re(l)&&!l?.isNew);return o?String(o.id)===String(e.id):!e?.isNew}function sr(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="priorities"||n==="priorities"}function Re(e){const t=String(e?.fieldKey||"").toLowerCase(),n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase();return t==="storeid"||t==="storeidcustom"||n==="store id"}function et(e){const t=String(e||"").trim().toLowerCase();return t==="open"||t==="cancelled"||t==="canceled"||t==="closed"}function pm(e){return String(e||"").trim().toLowerCase()==="open"}function or(e){return String(e||"").trim().toLowerCase()==="done"?"Closed":e}function mn(e=[]){const t=(e||[]).filter(a=>a!=null&&String(a).trim()!==""),n=new Set,r=[];return Ca.forEach(a=>{const o=t.find(l=>String(l).trim().toLowerCase()===a.toLowerCase());o==null||n.has(o)||(r.push(o),n.add(o))}),t.forEach(a=>{n.has(a)||(r.push(a),n.add(a))}),r}function Hl(e){return Wl.has(e?.fieldType)||Ue(e)}function _a(e){return!e||re(e)||Re(e)||!Wl.has(e.fieldType)?!1:!(e.options||[]).some(t=>String(t||"").trim())}function Dt(e=[]){return e.some(_a)}function Kl(e=[]){const t=[],n=new Set;return e.forEach(r=>{if(!_a(r))return;const a=String(r.fieldType||"").trim();!a||n.has(a)||(n.add(a),t.push(a))}),t.length?t.length===1?`Add options for ${t[0]} field.`:t.length===2?`Add options for ${t[0]} and ${t[1]} fields.`:`Add options for ${t.slice(0,-1).join(", ")}, and ${t[t.length-1]} fields.`:""}function hm(e,t){const n=String(e?.fieldLabel||e?.label||"").trim().toLowerCase(),r=String(t?.fieldLabel||t?.label||"").trim().toLowerCase(),a=String(e?.fieldType||"").trim().toLowerCase(),o=String(t?.fieldType||"").trim().toLowerCase();return!!(n&&r&&a&&o&&n===r&&a===o)}function lr(e,t=[]){return e?t.some(n=>String(n.id)===String(e.id)?!1:hm(e,n)):!1}function ir(e=[]){return e.some(t=>lr(t,e))}function Na(e,t={},n=""){const r=String(n||"");if(re({fieldKey:r})||Re({fieldKey:r}))return t.CUSTOM??"Custom";if(e==="MULTI_SELECT"||e==="MULTISELECT")return t.CHECKBOX??"Checkbox";if(e==="PHONE"||e==="MOBILE")return t.NUMBER??"Number";if(e==="FILE"&&r.endsWith("Images"))return t.IMAGES??"Images";if(e==="DATETIME"&&r.endsWith("Time")&&!r.endsWith("DateTime"))return t.TIME??"Time";if(e==="SELECT"||e==="DROPDOWN"){const a=r.toLowerCase();if(a.endsWith("dropdown"))return t.DROPDOWN??"Dropdown";if(a.endsWith("select"))return t.SELECT??"Select"}return t[e]??e??"Custom"}function mm(e){return sr(e)?"Priorities":"Option"}function gm(e,t=!1){return e?t?"Define options and set parent.":re(e)?"Manage the status":"Manage your fields.":""}function cr(e,t=[]){if(String(e?.fieldType||"")==="MultiSelect")return cr({...e,fieldType:"Checkbox"},t);if(re(e)){if(e?.isNew||!fm(e,t))return{...e,lockMode:e?.lockMode==="all"?e.lockMode:void 0};const n=String(e.fieldLabel||e.label||"").trim(),r=!n||n.toLowerCase()==="statuses";return{...He,...e,fieldKey:He.fieldKey,fieldLabel:r?He.fieldLabel:n,originalFieldName:r?He.originalFieldName:e.originalFieldName??n,fieldType:He.fieldType,required:!0,options:[...Ca],optionColors:{...He.optionColors},lockMode:"options"}}return sr(e)?{...ar,...e,fieldKey:e.fieldKey||ar.fieldKey,fieldType:ar.fieldType,options:e.options?.length?e.options:ar.options,lockMode:"options"}:Re(e)?{...hn,...e,fieldKey:hn.fieldKey,fieldType:hn.fieldType,required:!0,lockMode:"all"}:e}function Mt(e=[]){const t=e.map(r=>cr(r,e));if(t.some(re))return t;const n={...He};return[cr(n,[n,...t]),...t]}function Yl({row:e,onClick:t}){return s.jsxs("div",{className:"ca-filler-row ca-filler-row--clickable",role:"button",tabIndex:0,onClick:()=>t?.(e),onKeyDown:n=>{n.key!=="Enter"&&n.key!==" "||(n.preventDefault(),t?.(e))},"aria-label":`Open complaint ${e.title||e.id}`,children:[s.jsxs("div",{className:"ca-filler-row__top",children:[s.jsxs("span",{className:"ca-filler-row__title",children:[s.jsx("span",{className:"ca-filler-row__prefix",children:"Complaint ID:"})," ",e.title]}),s.jsxs("span",{className:"ca-filler-row__right",children:[e.tat?s.jsxs("span",{className:"ca-filler-row__tat",children:[s.jsx("span",{className:"ca-filler-row__tat-label",children:"TAT"}),s.jsx("span",{className:"ca-filler-row__tat-track",children:s.jsx("span",{className:`ca-filler-row__tat-fill ca-filler-row__tat-fill--${e.tat.state}`,style:{width:`${e.tat.percent}%`}})}),s.jsxs("span",{className:"ca-filler-row__tat-text",children:[s.jsx("strong",{children:e.tat.remainingLabel})," ",e.tat.totalLabel]})]}):null,s.jsx(nr,{size:16,"aria-hidden":"true"})]})]}),s.jsxs("div",{className:"ca-filler-row__meta",children:[s.jsxs("span",{children:["Status: ",s.jsx("strong",{children:or(e.status)})]}),s.jsxs("span",{children:["Level: ",s.jsx("strong",{children:e.level})]}),s.jsx("span",{children:e.assignedTo==="Unassigned"?e.assignedTo:s.jsxs(s.Fragment,{children:["Assigned to: ",s.jsx("strong",{children:e.assignedTo})]})}),s.jsx("span",{children:e.date})]})]})}const ym=[];function bm({form:e,onAddComplaint:t,onViewAll:n}){const r=Q.useSelector(u=>u.appDetails?.details?.userList)??ym,{total:a,open:o,closed:l,cancelled:i,previewRows:c}=$h(e,r),d=e.isActive!==!1&&e.active!==!1;return s.jsxs("article",{className:"ca-filler-card",children:[s.jsxs("div",{className:"ca-filler-card__head",children:[s.jsxs("div",{className:"ca-filler-card__heading",children:[s.jsxs("h3",{className:"ca-filler-card__title",children:[e.name??e.title,a?` (${a})`:""]}),o?s.jsxs("span",{className:"ca-filler-card__count",children:[o," open"]}):null,l?s.jsxs("span",{className:"ca-filler-card__count",children:[l," closed"]}):null,i?s.jsxs("span",{className:"ca-filler-card__count",children:[i," cancelled"]}):null]}),s.jsxs("button",{type:"button",className:"ca-filler-card__add",onClick:()=>t?.(e),disabled:!d,children:["Add complaint ",s.jsx(nr,{size:14,"aria-hidden":"true"})]})]}),s.jsx("p",{className:"ca-filler-card__desc",children:e.description||" "}),c.map(u=>s.jsx(Yl,{row:u},u.id)),s.jsxs("div",{className:"ca-filler-card__foot",children:[a?s.jsx("button",{type:"button",className:"ca-filler-card__link",onClick:()=>n?.(e),children:"View all >"}):s.jsx("span",{}),s.jsx("span",{className:"ca-filler-card__date",children:Ll(e.createdAt)})]})]})}function Gl({title:e="Complaint Management",description:t=Ul,createLabel:n="Create New Form",onCreateForm:r,onConfigure:a,onOpen:o,onTitleClick:l,onDescriptionClick:i,onSearch:c}){const d=Pe(),u=Q.useDispatch(),[f,p]=y.useState(""),[w,S]=y.useState(null),[m,h]=y.useState(""),{complaintList:g=[],loading:b=!1,error:L=null}=Q.useSelector(F=>F.complaintType??{}),_=Q.useSelector(F=>F.appDetails?.details?.currentUser),x=Q.useSelector(F=>F.appDetails?.details?.featureActions),{canViewCards:T,canCreateForm:V,canDelete:R,canOpen:Z,hasAnyAccess:q}=y.useMemo(()=>ml(x),[x]),K=y.useMemo(()=>Tl(_),[_]),$=y.useMemo(()=>g.filter(F=>Sa(F,K)),[g,K]),G=T||V||R||Z,I=!G&&$.length>0;y.useEffect(()=>{u(Nt({data:!1}))},[u]),y.useEffect(()=>{const F=setTimeout(()=>h(f.trim()),400);return()=>clearTimeout(F)},[f]),y.useEffect(()=>{u(sn(m?{search:m}:void 0))},[u,m]);const D=g;y.useEffect(()=>{c&&c(f)},[f,c]);const j=F=>{p(F.target.value)},H=F=>{a?.(F),d(`/settings/${F.id??"new"}?step=1`)},E=()=>{u(Nt({data:!1})),r?.(),d("/settings/new?step=1")},M=({id:F})=>{R&&F!=null&&u(zn(F))},C=({id:F,isActive:O})=>{V&&F!=null&&(S(F),u(cn({id:F,isActive:O})).unwrap().then(()=>u(rp({id:F,isActive:O}))).finally(()=>S(null)))};return!G&&(b||!g.length)&&!L?s.jsx(ze,{text:"Loading"}):I?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:"Complaints",description:"Create, manage and track complaint forms, workflows and responses across departments.",showAction:!1}),s.jsx("div",{className:"ca-filler-card-list",children:$.map(F=>s.jsx(bm,{form:F,onAddComplaint:O=>d(`/complaintmanagement/new/${O.id}`),onViewAll:O=>d(`/complaintmanagement/${O.id}/all`)},F.id))})]}):q?s.jsxs("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",children:[s.jsx(ha,{title:e,description:t,actionLabel:n,onAction:E,showAction:V}),G?s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-search-container",children:s.jsx(Pl,{value:f,onChange:j,placeholder:"Search"})}),b?s.jsx(ze,{text:"Loading systems"}):L?s.jsx("div",{className:"ca-empty",children:s.jsx("p",{className:"ca-body",children:typeof L=="string"?L:"Failed to load complaint types."})}):s.jsx(Ml,{systems:D,onConfigure:H,onOpen:o,onDelete:M,onToggleActive:C,togglingActiveId:w,onTitleClick:l,onDescriptionClick:i,emptyMessage:f?"No systems match your search.":"No systems found."})]}):null]}):s.jsx("div",{className:"ca-complaint-management-page","data-testid":"complaint-management-page",style:{minHeight:"80vh",display:"flex",alignItems:"center",justifyContent:"center"},children:s.jsx("h5",{className:"ca-body",style:{fontSize:24,color:"#808080",lineHeight:1.3,fontWeight:400,fontFamily:'Inter, "system-ui", arial, sans-serif'},children:"You do not have access rights for this page."})})}const Jl=y.createContext(null),Zl=()=>({categoryName:"",categoryType:"",tatMinutes:"",template:"",visibilityType:"",urlLink:"",active:!1,description:"",roles:[],categoryRoleIds:[],categoryFormData:null,departmentRows:[{id:"1",department:"",subDepartment:"",roles:""}],priorityDraft:"",priorities:[],defaultPriorityId:null,selectedDeptNode:null,workflow:{name:"",tatMinutes:"",description:"",status:[],steps:[],selectedTableCard:null},fieldDraft:{name:"",type:""},formFields:[],templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]});function Xl({children:e,initialValues:t}){const[n,r]=y.useState(()=>({...Zl(),...t,workflow:{...Zl().workflow,...t?.workflow}})),a=y.useCallback(i=>{r(c=>({...c,...i}))},[]),o=y.useCallback(i=>{r(c=>({...c,workflow:{...c.workflow,...i}}))},[]),l=y.useMemo(()=>({state:n,setState:r,update:a,updateWorkflow:o}),[n,a,o]);return s.jsx(Jl.Provider,{value:l,children:e})}function dr(){const e=y.useContext(Jl);if(!e)throw new Error("useSettingsWizard must be used within SettingsWizardProvider");return e}const $e=[{id:1,key:"category",label:"Category Type",title:"Category Type",description:"Define the type and basic details for this category type."},{id:2,key:"workflow",label:"Workflow",title:"Workflow",description:"L1 > L2 > L3"},{id:3,key:"formFields",label:"Form Fields"},{id:4,key:"review",label:"Review & Publish",title:"Review & Publish",description:"Review your configuration and publish."}],Sm=[{id:1,label:"Create Workflow"},{id:2,label:"Status"},{id:3,label:"Workflow Steps"}];function vm({size:e=28,color:t="currentColor",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{color:"var(--ca-primary)"},...n,children:[s.jsx("path",{d:"M12 3 3 8l9 5 9-5-9-5Z",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round"}),s.jsx("path",{d:"M3 12.5 12 17.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"}),s.jsx("path",{d:"M3 16.5 12 21.5l9-5",stroke:t,strokeWidth:"1.6",strokeLinejoin:"round",strokeLinecap:"round"})]})}function Ql({title:e,description:t,nextLabel:n="Next",onNext:r,showNext:a=!0,nextDisabled:o=!1,nextVariant:l="primary",extra:i=null,className:c=""}){return s.jsxs("div",{className:`ca-settings-card__header ${c}`.trim(),children:[s.jsx("div",{className:"ca-settings-card__heading",children:s.jsxs("div",{children:[s.jsx(pa,{children:e}),t?s.jsx(Qn,{className:"ca-settings-card__desc",children:t}):null]})}),i,a?s.jsx(ye,{variant:l,disabled:o,onClick:r,endIcon:s.jsx(fn,{size:14,color:"currentColor"}),children:n}):null]})}function gn({title:e,description:t,onNext:n,nextLabel:r,showNext:a=!0,nextDisabled:o,nextVariant:l,headerExtra:i,children:c,footer:d,className:u=""}){return s.jsxs("section",{className:`ca-settings-card ${u}`.trim(),children:[s.jsx(Ql,{title:e,description:t,onNext:n,nextLabel:r,showNext:a,nextDisabled:o,nextVariant:l,extra:i}),s.jsx("div",{className:"ca-settings-card__body",children:c}),d?s.jsx("div",{className:"ca-settings-card__footer",children:d}):null]})}function Aa({children:e,hint:t,htmlFor:n,className:r=""}){return s.jsxs("div",{className:`ca-field-label ${r}`.trim(),children:[s.jsx("label",{className:"ca-label",htmlFor:n,children:e}),t!=null?s.jsx("span",{className:"ca-field-label__hint",children:t}):null]})}function Ea({size:e=16,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:t,strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})}function La(e){return typeof e=="string"?e:e.value}function Ta(e){return typeof e=="string"?e:e.label}function Ke({value:e,onChange:t,options:n=[],placeholder:r="Select",className:a="",disabled:o=!1,maxVisible:l,allowClear:i=!1,...c}){const[d,u]=y.useState(!1),f=y.useRef(null),p=e??"",w=n.find(h=>String(La(h))===String(p)),S=w?Ta(w):"";y.useEffect(()=>{if(!d)return;const h=g=>{f.current?.contains(g.target)||u(!1)};return document.addEventListener("mousedown",h),()=>document.removeEventListener("mousedown",h)},[d]);const m=h=>{t?.({target:{value:h}})};return l?s.jsxs("div",{className:`ca-select ca-select--menu ${a}`.trim(),ref:f,children:[s.jsx("button",{type:"button",id:c.id,className:`ca-select__control${S?"":" ca-select__control--placeholder"}`,disabled:o,"aria-haspopup":"listbox","aria-expanded":d,onClick:()=>u(h=>!h),children:S||r}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})}),d?s.jsx("ul",{className:"ca-select__menu",role:"listbox",style:{"--ca-select-max-visible":l},children:n.map(h=>{const g=La(h),b=String(g)===String(p);return s.jsx("li",{role:"none",children:s.jsx("button",{type:"button",role:"option","aria-selected":b,className:`ca-select__option${b?" is-selected":""}`,onClick:()=>{m(g),u(!1)},children:Ta(h)})},g)})}):null]}):s.jsxs("div",{className:`ca-select ${a}`.trim(),children:[s.jsxs("select",{className:"ca-select__control",value:p,onChange:t,disabled:o,...c,children:[s.jsx("option",{value:"",disabled:!i,children:r}),n.map(h=>{const g=La(h);return s.jsx("option",{value:g,disabled:!!(h&&typeof h=="object"&&h.disabled),children:Ta(h)},g)})]}),s.jsx("span",{className:"ca-select__chevron",children:s.jsx(Ea,{size:16})})]})}function Rl({value:e,onChange:t,placeholder:n,maxLength:r,rows:a=4,className:o="",...l}){return s.jsx("textarea",{className:`ca-textarea ${o}`.trim(),value:e,onChange:t,placeholder:n,maxLength:r,rows:a,...l})}function Be({label:e,hint:t,children:n,className:r="",htmlFor:a}){return s.jsxs("div",{className:`ca-form-field ${r}`.trim(),children:[e!=null?s.jsx(Aa,{htmlFor:a,hint:t,children:e}):null,n]})}function yn({label:e,hint:t,helperText:n,...r}){return s.jsxs(Be,{label:e,hint:t,htmlFor:r.id,children:[s.jsx(Ot,{...r}),n?s.jsx("p",{className:"ca-form-field__helper",children:n}):null]})}function Ia({label:e,hint:t,...n}){return s.jsx(Be,{label:e,hint:t,htmlFor:n.id,children:s.jsx(Ke,{...n})})}function wm({label:e,hint:t,maxLength:n,value:r="",...a}){const o=t??(n!=null?`${String(r).length}/${n}`:void 0);return s.jsx(Be,{label:e,hint:o,htmlFor:a.id,children:s.jsx(Rl,{value:r,maxLength:n,...a})})}function ei({size:e=12,color:t="currentColor",...n}){return s.jsx("svg",{width:e,height:e,viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",...n,children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:t,strokeWidth:"2",strokeLinecap:"round"})})}function ti({label:e,onRemove:t,className:n="",title:r}){return s.jsxs("span",{className:`ca-tag ${n}`.trim(),title:r,children:[e,t?s.jsx("button",{type:"button",className:"ca-tag__remove",onClick:t,"aria-label":`Remove ${e}`,children:s.jsx(ei,{size:10})}):null]})}function ur({label:e="",options:t=[],value:n=[],onChange:r,placeholder:a="Select roles",className:o="",hasError:l=!1,required:i=!1,emptyText:c="No roles available",openDirection:d="up",showAll:u=!0,maxVisible:f=null,searchable:p=!1,searchPlaceholder:w="Search",lockedValues:S=[],rotateChevron:m=!1}){const[h,g]=y.useState(!1),[b,L]=y.useState(""),_=Array.isArray(n)?n.filter(E=>E!=null&&E!==""):[],x=new Set(S.map(E=>String(E))),T=y.useRef(null),V=y.useRef(null),R=t.map(E=>typeof E=="string"?{value:E,label:E,sublabel:"",searchText:E}:{value:E.value,label:E.label,sublabel:E.sublabel??"",title:E.title??"",searchText:E.searchText??`${E.label??""} ${E.sublabel??""}`}).filter(E=>E.value!==null&&E.value!==void 0&&E.value!==""),Z=new Map(R.map(E=>[String(E.value),E.label])),q=E=>_.some(M=>String(M)===String(E)),K=R.filter(E=>`${E.label} ${E.sublabel} ${E.searchText}`.toLowerCase().includes(b.trim().toLowerCase())),$=K.map(E=>E.value),G=$.length>0&&$.every(E=>q(E)),I=()=>{if(G)r?.(_.filter(E=>x.has(String(E))||!$.some(M=>String(M)===String(E))));else{const E=_.filter(M=>!$.some(C=>String(C)===String(M)));r?.([...E,...$])}};y.useEffect(()=>{h&&V.current&&(V.current.scrollTop=0)},[h]),y.useEffect(()=>{if(!h)return;const E=C=>{T.current&&!T.current.contains(C.target)&&(g(!1),L(""))},M=C=>{C.key==="Escape"&&(g(!1),L(""))};return document.addEventListener("mousedown",E),document.addEventListener("touchstart",E),document.addEventListener("keydown",M),()=>{document.removeEventListener("mousedown",E),document.removeEventListener("touchstart",E),document.removeEventListener("keydown",M)}},[h]);const D=E=>{x.has(String(E))||(q(E)?r?.(_.filter(M=>String(M)!==String(E))):r?.([..._,E]),L(""))},j=E=>{x.has(String(E))||r?.(_.filter(M=>String(M)!==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(Aa,{children:[e,i?s.jsx("span",{style:{color:"#dc2626",marginLeft:2},"aria-hidden":"true",children:"*"}):null]}),s.jsxs("div",{className:"ca-multi-select",ref:T,style:{position:"relative",width:"100%"},children:[p?s.jsxs("div",{className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},role:"combobox","aria-haspopup":"listbox","aria-expanded":h,onClick:()=>g(!0),children:[s.jsx("input",{type:"search",className:"ca-multi-select__search ca-multi-select__search--trigger",value:b,placeholder:w,"aria-label":w,onFocus:()=>g(!0),onChange:E=>{L(E.target.value),g(!0)},onKeyDown:E=>{E.key==="Escape"&&(E.stopPropagation(),g(!1),L(""))}}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m&&h?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}):s.jsxs("button",{type:"button",className:`ca-multi-select__trigger ${l?"ca-control--invalid":""}`.trim(),style:{width:"100%",border:l?"1px solid #dc2626":void 0,boxShadow:l?"0 0 0 3px rgba(220, 38, 38, 0.12)":void 0},onClick:()=>g(E=>!E),"aria-haspopup":"listbox","aria-expanded":h,children:[s.jsx("span",{className:_.length?"":"ca-multi-select__placeholder",children:H}),s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",style:{transform:m&&h?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s ease"},children:s.jsx("path",{d:"M6 9l6 6 6-6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})]}),h?s.jsxs("ul",{ref:V,className:"ca-multi-select__menu",role:"listbox","aria-multiselectable":"true",style:{position:"absolute",top:d==="down"?"calc(100% + 4px)":"auto",bottom:d==="down"?"auto":"calc(100% + 4px)",left:0,right:0,zIndex:20,maxHeight:f?f*38+8:d==="down"?220:260,overflowY:"auto"},children:[u&&K.length>1?s.jsx("li",{role:"option","aria-selected":G,style:{position:"sticky",top:0,zIndex:1,background:"var(--ca-surface, #fff)",borderBottom:"1px solid var(--ca-border, #e5e7eb)"},children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:G,onChange:I}),s.jsx("span",{children:"All"})]})}):null,K.length?K.map(E=>s.jsx("li",{role:"option","aria-selected":q(E.value),children:s.jsxs("label",{className:"ca-multi-select__option",children:[s.jsx("input",{type:"checkbox",checked:q(E.value),disabled:x.has(String(E.value)),onChange:()=>D(E.value)}),s.jsxs("span",{className:"ca-multi-select__option-text",children:[s.jsx("span",{className:"ca-multi-select__option-label",children:E.label}),E.sublabel?s.jsx("span",{className:"ca-multi-select__option-sublabel",children:E.sublabel}):null]})]})},String(E.value))):s.jsx("li",{className:"ca-multi-select__empty",children:b?"No matching options":c})]}):null]}),_.length>0?s.jsx("div",{className:"ca-tag-list",children:[...new Set(_)].map(E=>s.jsx(ti,{label:Z.get(String(E))||String(E),title:R.find(M=>String(M.value)===String(E))?.title,onRemove:x.has(String(E))?void 0:()=>j(E)},String(E)))}):null]})}function bn({steps:e=[],currentStep:t=1,allStepsUnlocked:n=!1,onStepClick:r,className:a="",size:o="md",showSaveButton:l=!1,showNextButton:i=!1,onNext:c,nextLabel:d="Next >",extraActions:u=null}){const f=y.useRef({}),p=Q.useDispatch();return y.useEffect(()=>{const w=f.current[t];if(!w)return;const S=requestAnimationFrame(()=>{let m=w.parentElement;for(;m&&m!==document.body;){const{overflowX:x}=getComputedStyle(m);if(m.scrollWidth>m.clientWidth+1&&(x==="auto"||x==="scroll"))break;m=m.parentElement}if(!m||m===document.body)return;const h=m.getBoundingClientRect(),g=w.getBoundingClientRect(),b=12;if(g.left>=h.left+b&&g.right<=h.right-b)return;const _=g.left-h.left-(h.width-g.width)/2;m.scrollTo({left:m.scrollLeft+_,behavior:"smooth"})});return()=>cancelAnimationFrame(S)},[t]),s.jsxs("div",{className:`ca-stepper-wrap ca-stepper-wrap--${o} ${a}`.trim(),children:[s.jsx("nav",{className:`ca-stepper ca-stepper--${o}`,"aria-label":"Progress",children:e.map((w,S)=>{const m=w.id??S+1,h=m===t,g=m<t,b=!!r&&(n||g||h);return s.jsxs("button",{type:"button",ref:L=>{f.current[m]=L},className:["ca-stepper__item",h?"ca-stepper__item--active":"",g?"ca-stepper__item--done":""].filter(Boolean).join(" "),style:{zIndex:e.length-S},onClick:()=>{p(Nt({data:!0})),b&&r?.(m)},disabled:!b,"aria-current":h?"step":void 0,children:[s.jsxs("span",{className:"ca-stepper__circle",children:[m,"."]}),s.jsx("span",{className:"ca-stepper__label",children:w.label})]},m)})}),l||i||u?s.jsxs("div",{className:"ca-stepper__actions",children:[u,i?s.jsx(ye,{onClick:c,children:d}):null]}):null]})}const Cm={categoryName:"",tatMinutes:"",template:"",categoryType:"",description:"",visibilityType:"INTERNAL_LOGIN",urlLink:"",active:!0,roles:[],userIds:[]},_m=[{value:"INTERNAL_LOGIN",label:"Internal Login"},{value:"PRIVATE_LINK",label:"Private Link"},{value:"PUBLIC_LINK",label:"Public Link"}],Nm={value:"",label:"Select Template"},Fa=e=>String(e?.id??e?.code??e?.name??"");function Am(e){return Array.isArray(e)?[...new Set(e.map(t=>!t||typeof t!="object"?t:t.userId??t.user_id??t.id??t.value??t.user?.userId??t.user?.id).filter(t=>t!=null&&t!==""))]:[]}function ka(e){const t=[e?.userIds,e?.users,Array.isArray(e?.accesses)?e.accesses.map(n=>n?.userId??n?.user?.id):null];for(const n of t){const r=Am(n);if(r.length)return r}return[]}function fr(e){return e==null||e===""?null:String(e).trim()||null}function ni(e){return fr(e?.userId??e?.user_id??e?.id??e?.value)}function Em(e,t=[]){const n=e?.createdByUser??e?.createdBy??e?.creator,r=fr(e?.createdByUserId??e?.createdById??n?.userId??n?.id??n?.user?.id??(typeof n=="number"||/^\d+$/.test(String(n??"").trim())?n:null));if(r)return r;const a=typeof n=="string"?n.trim().toLowerCase():String(n?.name??n?.userName??"").trim().toLowerCase();if(!a)return null;const o=t.find(l=>{const i=String(l?.name??l?.userName??[l?.firstName,l?.lastName].filter(Boolean).join(" ")).trim().toLowerCase(),c=String(l?.email??l?.userEmail??"").trim().toLowerCase();return a===i||a===c});return ni(o)}function Oa(...e){const t=new Map;return e.flat().forEach(n=>{const r=fr(n);r!==null&&!t.has(r)&&t.set(r,n)}),[...t.values()]}const ri=e=>{const t=Array.isArray(e?.accesses)?e.accesses.map(l=>l?.role?.id??l?.roleId):[],n=Array.isArray(e?.roleIds)?e.roleIds:[],r=l=>l.map(i=>i&&typeof i=="object"?i.id??i.roleId??i.role_id??i.value:i).filter(i=>i!=null&&i!==""),a=r(t),o=r(n);return{categoryName:e?.name??e?.code??"",tatMinutes:At(e?.tatMinutes)||"",template:Fa(e),categoryType:e?.categoryType??Fa(e),description:e?.description??"",visibilityType:e?.visibilityType??e?.accessType??"INTERNAL_LOGIN",urlLink:e?.urlLink??"",active:e?.isActive??e?.active??!0,roles:[...new Set(a.length?a:o)],userIds:ka(e)}};function Lm(e){return[Nm,...e]}function Tm(e,t){const n=[];if(e.categoryName&&n.push("Please enter a category name."),e.tatMinutes){const r=String(t.tatMinutes??"").trim();n.push(r?"TAT must include a unit (m, h, or d). Example: 30m, 2h, 1d.":"Please enter TAT . Use Minutes for m, Hours for h, or Days for d.")}return e.visibilityType&&n.push("Please select a visibility type."),e.urlLink&&n.push("Please enter a URL link."),e.roles&&n.push("Please select roles for complaint filling."),n.join(" ")}function Im({stepMeta:e,stepperProps:t,roleList:n=[],userList:r=[]}){const{state:a,update:o}=dr(),[l,i]=y.useState(()=>a.categoryFormData??Cm),c=y.useRef(a.categoryFormData),[d,u]=y.useState({}),f=Q.useDispatch(),{id:p}=Q.useSelector(C=>C.appDetails||{}),{isEdit:w}=Q.useSelector(C=>C.appDetails||{}),S=Q.useSelector(C=>C.complaintType||{}),m=Q.useSelector(C=>C.appDetails?.details?.currentUser),{complaintList:h=[],saving:g,loading:b,error:L}=S,_=h.find(C=>String(C?.id??C?._id)===String(p))??(String(S.selected?.id??S.selected?._id)===String(p)?S.selected:null),x=y.useRef(_),T=y.useRef(!1);y.useEffect(()=>{x.current=_},[_]);const V=(C,F={})=>{i(C),c.current=C,o({categoryFormData:C,...F})};y.useEffect(()=>{a.categoryFormData||o({categoryFormData:l,categoryRoleIds:l.roles})},[l,o,a.categoryFormData]),y.useEffect(()=>{!h.length&&!b&&!T.current&&(T.current=!0,f(sn()))},[h.length,f,b]),y.useEffect(()=>{!w||p===null||p===void 0||c.current||f(Xe(p)).unwrap().then(C=>{const F=C?.data??C;if(!F||c.current)return;const O=x.current,W=ka(F),J=ka(O),te={...F,roleIds:F.roleIds??O?.roleIds,userIds:W.length?W:J},k=ri(te);i(k),c.current=k,o({categoryFormData:k,categoryRoleIds:k.roles})}).catch(C=>{console.log(" Fetch error:",C)})},[f,p,w,o]);const R=n.map(C=>({value:C.id??C.roleId??C.value,label:C.name??C.roleName??C.label})).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),Z=r.map(C=>{const F=String(C?.name??C?.userName??C?.label??[C?.firstName,C?.lastName].filter(Boolean).join(" ")??"").trim(),O=String(C?.email??C?.userEmail??"").trim();return{value:C.id??C.userId??C.user_id??C.value,label:F,sublabel:O,title:O?`Email: ${O}`:""}}).filter(C=>C.value!==null&&C.value!==void 0&&C.value!==""),q=w?Em(_,r):ni(m),K=[];Oa(l.userIds,K);const $=w?_?.createdByUser??_?.createdBy:m;if(q&&!Z.some(C=>fr(C.value)===q)){const C=typeof $=="object"?String($.name??$.userName??[$.firstName,$.lastName].filter(Boolean).join(" ")??"Created by user").trim():"Created by user";Z.push({value:q,label:C||"Created by user",sublabel:typeof $=="object"?String($.email??"").trim():""})}const G=h.map(C=>({value:Fa(C),label:C?.name??C?.code??"",complaintType:C})).filter(C=>C.value&&C.label),I=async C=>{const F=C?.id??C?._id??null,O={...l,...ri(C),categoryName:"",roles:[],userIds:K};if(V(O,{categoryRoleIds:[]}),o({templateId:F,tatMinutes:Ie(C?.tatMinutes)}),F==null||F===""){o({prefillWorkflowSteps:[],prefillFormFields:[]});return}try{const[W,J]=await Promise.all([f(We(F)).unwrap(),f(De(F)).unwrap()]),te=(Array.isArray(W?.data)?W.data:Array.isArray(W)?W:[]).map(A=>({...A,roleIds:[],role:[],roleId:null})),k=Array.isArray(J?.data)?J.data:Array.isArray(J)?J:[];o({templateId:F,tatMinutes:Ie(C?.tatMinutes),prefillWorkflowSteps:te,prefillFormFields:k})}catch(W){console.log("Failed to load template details:",W),o({templateId:F,prefillWorkflowSteps:[],prefillFormFields:[]})}},D=()=>{const C={...l,template:"",categoryType:"",tatMinutes:"",description:""};V(C),o({templateId:null,prefillWorkflowSteps:[],prefillFormFields:[]})},j=C=>{const F=C.target.value;if(!F){D();return}const O=G.find(W=>W.value===F)?.complaintType;if(O){I(O);return}H("template",F),H("categoryType",F)},H=(C,F)=>{const O=Array.isArray(F)?C==="userIds"?Oa(F,K):[...new Set(F.filter(J=>J!=null&&J!==""))]:F,W={...l,[C]:O};V(W,C==="roles"?{categoryRoleIds:O}:{}),u(J=>{if(!J[C])return J;const te={...J};return delete te[C],te})},E=l.visibilityType==="PRIVATE_LINK"||l.visibilityType==="PUBLIC_LINK",M=async()=>{const C={};if(l.categoryName.trim()||(C.categoryName=!0),dp(l.tatMinutes)||(C.tatMinutes=!0),l.visibilityType||(C.visibilityType=!0),l.roles.length||(C.roles=!0),E&&!l.urlLink.trim()&&(C.urlLink=!0),Object.keys(C).length>0){u(C);return}u({});const F=Ie(l.tatMinutes),O={...l,userIds:Oa(l.userIds,K)};V(O,{tatMinutes:F,categoryRoleIds:O.roles});const W={categoryName:l.categoryName,categoryType:l.categoryType||l.template,tatMinutes:F,description:l.description,visibilityType:l.visibilityType,urlLink:E?l.urlLink:"",active:l.active,roles:O.roles},J=w?ln({id:p,data:{code:W.categoryName,name:W.categoryName,description:W.description,tatMinutes:W.tatMinutes,accessType:W.visibilityType,roleIds:W.roles.map(k=>parseInt(k,10))},onFail:k=>{console.log("updateComplaintType onFail:",k)}}):on({payload:W,onSuccess:k=>{f(lt(k?.data?.id??k?.id??null))},onFail:k=>{console.log("createComplaintType onFail:",k)}}),te=await f(J);if(w&&ln.fulfilled.match(te)||!w&&on.fulfilled.match(te)){if(!w){const k=te.payload?.data?.id??te.payload?.id;k!=null&&f(lt(k))}t.onNext?.()}};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:$e,showNextButton:!!t.showNextButton,onNext:M}),L||Object.keys(d).length>0?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:L||Tm(d,l)}):null,s.jsxs(gn,{className:"ca-settings-card--category-type",title:e.title,description:e.description,showNext:!1,headerExtra:s.jsx("div",{className:"ca-category-type__header-tools",children:s.jsx("div",{className:"ca-category-type__template",children:s.jsx(Ia,{label:"Select Template (Optional)",value:l.template||l.categoryType,onChange:j,options:Lm(G),placeholder:"Select Template",maxVisible:5,disabled:w,className:w?"ca-select--disabled":""})})}),children:[s.jsxs("div",{className:"ca-step-section",children:[s.jsxs("div",{className:"ca-step-row ca-step-row--category-fields",children:[s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["Category Name ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),className:"ca-step-row__grow",inputClassName:d.categoryName?"ca-control--invalid":"",value:l.categoryName,onChange:C=>H("categoryName",C.target.value),placeholder:"Enter category name"}),s.jsx(yn,{label:s.jsxs(s.Fragment,{children:["TAT ",s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:"*"})]}),type:"text",className:"ca-step-row__grow",inputClassName:d.tatMinutes?"ca-control--invalid":"",value:l.tatMinutes,onChange:C=>H("tatMinutes",C.target.value),placeholder:"Enter here",helperText:"Eg: 30m, 2h, 1d, 3d7h16m"})]}),s.jsx("div",{className:"ca-step-row ca-step-row--category-fields",children:s.jsx(yn,{label:"Description",className:"ca-step-row__grow",maxLength:500,value:l.description,onChange:C=>H("description",C.target.value),placeholder:"Enter description"})}),s.jsxs("div",{className:"ca-step-row",children:[s.jsx(Ia,{label:"Select Visibility Type",className:`ca-step-row__grow ${d.visibilityType?"ca-control--invalid":""}`,value:l.visibilityType,onChange:C=>H("visibilityType",C.target.value),options:_m,placeholder:"Select visibility type"}),E?s.jsx(yn,{label:null,className:"ca-step-row__grow ca-category-type__url-link",inputClassName:d.urlLink?"ca-control--invalid":"",value:l.urlLink,onChange:C=>H("urlLink",C.target.value),placeholder:"urllink"}):null]})]}),s.jsx("div",{className:"ca-step-section ca-step-section--last ca-category-type__access-selects",children:s.jsx(ur,{label:"Select Roles for Complaint Filling",required:!0,hasError:!!d.roles,rotateChevron:!0,options:R,value:l.roles,maxVisible:4,onChange:C=>H("roles",C)})}),b?s.jsx("div",{className:"ca-form-loading",children:"Loading category..."}):null,g?s.jsx("div",{className:"ca-form-loading",children:"Saving category..."}):null]})]})}function ai({level:e,onAdd:t,disabled:n=!1}){const r=`Level ${e}`,a=e===1?"Initial Handler":e===2?"Escalation if L1 TAT exceeded":"Escalation workflow";return s.jsxs("div",{className:"ca-add-table-card",children:[s.jsxs("header",{className:"ca-add-table-card__header",children:[s.jsxs("span",{className:"ca-add-table-card__level",children:["L",e]}),s.jsxs("div",{className:"ca-add-table-card__header-text",children:[s.jsx("h3",{className:"ca-add-table-card__title",children:r}),s.jsx("p",{className:"ca-add-table-card__subtitle",children:a})]})]}),s.jsx("div",{className:"ca-add-table-card__action",children:s.jsxs(ye,{type:"button",className:"ca-add-table-card__button",disabled:n,onClick:()=>t?.(r),children:["+ Add L",e]})})]})}const Da=["Yes","No"],xt=()=>s.jsx("span",{style:{color:"#dc2626"},"aria-hidden":"true",children:" *"});function si({name:e,level:t,value:n,initialFormValues:r,setFormValues:a,onChange:o,selected:l=!1,onSelect:i,onDelete:c,subtitle:d,roleList:u=[],showRoleError:f=!1,showEscalationError:p=!1,userList:w=[],fieldErrors:S={}}){const m=n??r??{},h=Array.isArray(m.role)?m.role:[],g=Array.isArray(m.users)?m.users:[],b=m.workflowType==="user"?"user":"role",L=u.map(I=>({value:I.id??I.roleId??I.value,label:I.name??I.roleName??I.label})).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),_=I=>{const D=[I?.firstName,I?.lastName].map(E=>String(E??"").trim()).filter(Boolean).join(" "),j=String(I?.name??I?.userName??I?.label??"").trim()||D,H=[I?.roleName,I?.role?.name,typeof I?.role=="string"?I.role:"",...Array.isArray(I?.roles)?I.roles.map(E=>typeof E=="string"?E:E?.name):[]].map(E=>String(E??"").trim()).filter(Boolean).filter((E,M,C)=>C.indexOf(E)===M).join(", ");return{userName:j,roleName:H,email:String(I?.email??I?.userEmail??"").trim()}},x=w.map(I=>{const{userName:D,roleName:j,email:H}=_(I);return{value:I.id??I.userId??I.user_id??I.value,label:D,sublabel:H,title:H?`Email: ${H}`:"",searchText:j}}).filter(I=>I.value!==null&&I.value!==void 0&&I.value!==""),T=(I,D)=>{const j={...m,[I]:D};a?a(j):o?.(j)},V=h.length===0&&g.length===0,R=(f||!!S.role)&&V,Z=I=>I?"ca-control--invalid":"",q=t===1?"green":t===2?"orange":"blue",K=I=>`workflow-level-${t}-${I}`,$=d||(t===1?"Initial Handler":t===2?"Escalation if L1 TAT exceeded":"Escalation workflow"),G=[{value:"role",label:"Role",count:h.length},{value:"user",label:"User",count:g.length}];return s.jsxs("article",{className:`ca-table-card ca-table-card--${q}${l?" ca-table-card--selected":""}`,onClick:i,children:[s.jsxs("header",{className:"ca-table-card__header",children:[s.jsxs("span",{className:"ca-table-card__level",children:["L",t]}),s.jsxs("div",{className:"ca-table-card__header-text",children:[s.jsx("h3",{className:"ca-table-card__title",children:e}),s.jsx("p",{className:"ca-table-card__subtitle",children:$})]}),s.jsx("button",{type:"button",className:"ca-table-card__delete","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:I=>{I.stopPropagation(),c?.()},children:s.jsx(er,{size:15,color:"currentColor"})})]}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsxs("div",{className:"ca-table-card__fields",children:[s.jsx("div",{className:"ca-type-toggle",role:"group","aria-label":"Workflow type",children:G.map(I=>s.jsxs("button",{type:"button",className:`ca-type-toggle__btn${b===I.value?" ca-type-toggle__btn--active":""}`,onClick:D=>{D.stopPropagation(),b!==I.value&&T("workflowType",I.value)},children:[I.label,I.count?` (${I.count})`:""]},I.value))}),b==="role"?s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Roles",s.jsx(xt,{})]}),htmlFor:K("roleIds"),children:s.jsx(ur,{id:K("role"),value:h,options:L,placeholder:"Select role",emptyText:"No roles available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search Role",hasError:R,onChange:I=>T("role",I)},"role")}):s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Select Users",s.jsx(xt,{})]}),htmlFor:K("userIds"),children:s.jsx(ur,{id:K("user"),value:g,options:x,placeholder:"Select user",emptyText:"No users available",openDirection:"down",showAll:!1,maxVisible:3,searchable:!0,searchPlaceholder:"Search User",hasError:R,onChange:I=>T("users",I)},"user")}),s.jsx("div",{className:"ca-table-card__divider"}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Resolve ",s.jsx(s.Fragment,{children:"(Change the Status)"}),s.jsx(xt,{})]}),htmlFor:K("canResolve"),children:s.jsx(Ke,{id:K("canResolve"),className:Z(S.canResolve),value:m.canResolve,options:Da,onChange:I=>T("canResolve",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Can Reassign ",s.jsx(s.Fragment,{children:"(Change the Level)"}),s.jsx(xt,{})]}),htmlFor:K("canReassign"),children:s.jsx(Ke,{id:K("canReassign"),className:Z(S.canReassign),value:t===1?"No":m.canReassign,options:t===1?["No"]:Da,disabled:t===1,onChange:I=>T("canReassign",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Final Level",s.jsx(s.Fragment,{children:"(can be resolved or closed the complaint)"}),s.jsx(xt,{})]}),htmlFor:K("finalLevel"),children:s.jsx(Ke,{id:K("finalLevel"),className:Z(S.finalLevel),value:m.finalLevel,options:Da,onChange:I=>T("finalLevel",I.target.value)})}),s.jsx(Be,{label:s.jsxs(s.Fragment,{children:["Escalation time",s.jsx(xt,{})]}),htmlFor:K("escalationTime"),children:s.jsx("div",{className:"ca-table-card__time-input",children:s.jsx(Ot,{id:K("escalationTime"),type:"text",className:Z(p||S.escalation),value:m.escalateAfterMinutes??"",placeholder:"--",onChange:I=>T("escalateAfterMinutes",I.target.value)})})})]})]})}function oi({open:e,title:t,children:n,primaryLabel:r="Save",onPrimary:a,secondaryLabel:o="Cancel",onSecondary:l,primaryDisabled:i=!1}){return e?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"ca-modal-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[t?s.jsx("p",{id:"ca-modal-title",className:"ca-confirm-modal__message",children:t}):null,n,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[o?s.jsx(ye,{variant:"outline",onClick:l,children:o}):null,s.jsx(ye,{onClick:a,disabled:i,children:r})]})]})}):null}function li({variant:e,levelNo:t,open:n,onConfirm:r,onClose:a}){return n?e==="finalLevelDelete"?s.jsx(oi,{open:!0,title:`Final Level is set to Yes at Level ${t}. You can't create a next level here, and every level after Level ${t} will be deleted. Do you want to continue?`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:"Cancel",onSecondary:a}):e==="finalLevelRequired"?s.jsx(oi,{open:!0,title:`Level ${t} is the last level. "Final Level" must be Yes. Click Ok to set it to Yes.`,primaryLabel:"Ok",onPrimary:r,secondaryLabel:null}):null:null}function Ma(e,t=0){const n=o=>!String(o??"").trim(),r=!(Array.isArray(e?.role)&&e.role.length),a=!(Array.isArray(e?.users)&&e.users.length);return{role:r&&a,canResolve:n(e?.canResolve),canReassign:t>0&&n(e?.canReassign),finalLevel:n(e?.finalLevel),escalation:n(e?.escalateAfterMinutes)}}const Fm="data:image/svg+xml,%3csvg%20width='31'%20height='57'%20viewBox='0%200%2031%2057'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M0.50001%200.000227733C0.223869%200.000226605%209.85899e-06%200.224084%208.79418e-06%200.500226C7.72665e-06%200.776369%200.223865%201.00023%200.500009%201.00023L0.50001%200.500227L0.50001%200.000227733ZM15%200.500275L15%201.00028L15%200.500275ZM27%2012.5003L27.5%2012.5003L27%2012.5003ZM26.6464%2056.8527C26.8417%2057.048%2027.1582%2057.048%2027.3535%2056.8527L30.5355%2053.6707C30.7307%2053.4755%2030.7307%2053.1589%2030.5355%2052.9636C30.3402%2052.7683%2030.0236%2052.7683%2029.8284%2052.9636L26.9999%2055.792L24.1715%2052.9636C23.9763%2052.7683%2023.6597%2052.7683%2023.4644%2052.9636C23.2692%2053.1589%2023.2692%2053.4754%2023.4644%2053.6707L26.6464%2056.8527ZM0.50001%200.500227L0.500009%201.00023L15%201.00028L15%200.500275L15%200.000275583L0.50001%200.000227733L0.50001%200.500227ZM27%2012.5003L26.5%2012.5003L26.4999%2056.4991L26.9999%2056.4991L27.4999%2056.4991L27.5%2012.5003L27%2012.5003ZM15%200.500275L15%201.00028C21.3513%201.0003%2026.5%206.14903%2026.5%2012.5003L27%2012.5003L27.5%2012.5003C27.5%205.59674%2021.9036%200.000298399%2015%200.000275583L15%200.500275Z'%20fill='%2300BF87'/%3e%3c/svg%3e",km="data:image/svg+xml,%3csvg%20width='28'%20height='61'%20viewBox='0%200%2028%2061'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M27.0053%2057.2042C27.2006%2057.009%2027.2006%2056.6924%2027.0053%2056.4971L23.8233%2053.3152C23.6281%2053.1199%2023.3115%2053.1199%2023.1162%2053.3152C22.921%2053.5104%2022.921%2053.827%2023.1162%2054.0223L25.9447%2056.8507L23.1163%2059.6791C22.921%2059.8744%2022.921%2060.191%2023.1163%2060.3862C23.3115%2060.5815%2023.6281%2060.5815%2023.8234%2060.3862L27.0053%2057.2042ZM12.5001%2056.8508L12.5001%2057.3508V57.3508L12.5001%2056.8508ZM0.500014%2044.8508L1.33317e-05%2044.8508V44.8508L0.500014%2044.8508ZM26.6518%2056.8507L26.6518%2056.3507L12.5001%2056.3508L12.5001%2056.8508L12.5001%2057.3508L26.6518%2057.3507L26.6518%2056.8507ZM0.500014%2044.8508L1.00001%2044.8508L1.00001%20-0.000388027L0.50001%20-0.000388722L9.54624e-06%20-0.000389416L1.33317e-05%2044.8508L0.500014%2044.8508ZM12.5001%2056.8508L12.5001%2056.3508C6.14877%2056.3508%201.00001%2051.2021%201.00001%2044.8508L0.500014%2044.8508L1.33317e-05%2044.8508C1.43871e-05%2051.7544%205.59649%2057.3508%2012.5001%2057.3508L12.5001%2056.8508Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",Om="data:image/svg+xml,%3csvg%20width='57'%20height='31'%20viewBox='0%200%2057%2031'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M56.9989%200.500133C56.9989%200.223991%2056.7751%200.000131942%2056.4989%200.00013087C56.2228%200.000129795%2055.9989%200.223987%2055.9989%200.500131L56.4989%200.500132L56.9989%200.500133ZM56.4989%2015.0002L55.9989%2015.0002L56.4989%2015.0002ZM44.4989%2027.0001L44.4988%2027.5001L44.4989%2027.0001ZM0.146456%2026.6465C-0.0488074%2026.8418%20-0.0488086%2027.1584%200.146455%2027.3536L3.32843%2030.5356C3.52369%2030.7309%203.84027%2030.7309%204.03554%2030.5356C4.2308%2030.3403%204.2308%2030.0238%204.03554%2029.8285L1.20712%2027.0001L4.03555%2024.1716C4.23081%2023.9764%204.23081%2023.6598%204.03555%2023.4645C3.84029%2023.2693%203.5237%2023.2693%203.32844%2023.4645L0.146456%2026.6465ZM56.4989%200.500132L55.9989%200.500131L55.9989%2015.0002L56.4989%2015.0002L56.9989%2015.0002L56.9989%200.500133L56.4989%200.500132ZM44.4989%2027.0001L44.4989%2026.5001L0.500009%2026.5001L0.500008%2027.0001L0.500007%2027.5001L44.4988%2027.5001L44.4989%2027.0001ZM56.4989%2015.0002L55.9989%2015.0002C55.9988%2021.3514%2050.8501%2026.5001%2044.4989%2026.5001L44.4989%2027.0001L44.4988%2027.5001C51.4024%2027.5001%2056.9988%2021.9037%2056.9989%2015.0002L56.4989%2015.0002Z'%20fill='%2300BF87'/%3e%3c/svg%3e",Dm="data:image/svg+xml,%3csvg%20width='61'%20height='28'%20viewBox='0%200%2061%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.32848%2027.0049C3.52374%2027.2002%203.84032%2027.2002%204.03559%2027.0049L7.21755%2023.8229C7.41281%2023.6277%207.4128%2023.3111%207.21754%2023.1158C7.02228%2022.9206%206.70569%2022.9206%206.51043%2023.1158L3.68203%2025.9443L0.85358%2023.1159C0.658316%2022.9206%200.341733%2022.9206%200.146472%2023.1159C-0.0487878%2023.3111%20-0.0487864%2023.6277%200.146478%2023.823L3.32848%2027.0049ZM3.68194%2012.4997L3.18194%2012.4997V12.4997L3.68194%2012.4997ZM15.6819%200.499617L15.6819%20-0.000382774V-0.000382774L15.6819%200.499617ZM3.68203%2026.6514L4.18203%2026.6514L4.18194%2012.4997L3.68194%2012.4997L3.18194%2012.4997L3.18203%2026.6514L3.68203%2026.6514ZM15.6819%200.499617L15.6819%200.999618L60.5331%200.999616L60.5331%200.499615L60.5331%20-0.000385315L15.6819%20-0.000382774L15.6819%200.499617ZM3.68194%2012.4997L4.18194%2012.4997C4.1819%206.14838%209.33063%200.999618%2015.6819%200.999618L15.6819%200.499617L15.6819%20-0.000382774C8.77834%20-0.00038191%203.18189%205.5961%203.18194%2012.4997L3.68194%2012.4997Z'%20fill='%23FF9E32'/%3e%3c/svg%3e",xa=(e,t,n={})=>({id:e,name:t,role:Array.isArray(n.role)?n.role:n.roleId!==void 0&&n.roleId!==null?[n.roleId]:[],users:Array.isArray(n.users)?n.users:[],workflowType:n.workflowType??"role",canResolve:n.canResolve??"",canReassign:n.canReassign??(Number(e)===1?"No":""),finalLevel:n.finalLevel??"",escalateAfterMinutes:At(n.escalateAfterMinutes)||""});function Pa(e){return e===!0||e==="Yes"||e==="true"||e===1||e==="1"?"Yes":e===!1||e==="No"||e==="false"||e===0||e==="0"?"No":e??""}function Mm(e,t){const n=[e.role,e.roleIds,e.roles].filter(Array.isArray),a=(n.find(i=>i.length)??n[0]??[]).map(i=>i&&typeof i=="object"?i.id??i.roleId:i).filter(i=>i!=null),o=(Array.isArray(e.userAssignments)?e.userAssignments:Array.isArray(e.users)?e.users:[]).map(i=>i&&typeof i=="object"?i.userId??i.id:i).filter(i=>i!=null),l=a.length>0?"role":o.length>0||/user/i.test(String(e.workflowType??""))?"user":"role";return xa(e.levelNo??t+1,e.name??`Level ${e.levelNo??t+1}`,{role:a,users:o,workflowType:l,canResolve:Pa(e.canResolve),canReassign:t===0?"No":Pa(e.canReassign),finalLevel:Pa(e.isFinalLevel??e.finalLevel),escalateAfterMinutes:At(e.escalateAfterMinutes)||""})}function ii(e=[]){return(Array.isArray(e)?e:[]).map(Mm)}function ci(e=[]){return e.flatMap(t=>Array.isArray(t?.roles)?t.roles:Array.isArray(t?.role)?t.role.filter(n=>n&&typeof n=="object"):[])}const Ua=[xa(1,"Level 1")];function di({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--desktop ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Fm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:km,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function ui({accent:e}){return s.jsxs("div",{className:`ca-escalation-connector ca-escalation-connector--mobile ca-escalation-connector--${e}`,"aria-hidden":"true",children:[s.jsx("img",{src:Om,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--first"}),s.jsx("span",{children:"Escalates to"}),s.jsx("img",{src:Dm,alt:"",className:"ca-escalation-connector__arrow ca-escalation-connector__arrow--second"})]})}function fi({id:e,selectedTableId:t,onSelect:n,setUpdatePayload:r,registerWorkflowActions:a,roleList:o=[],prefillSteps:l=[],tatTotalMinutes:i=0,showRoleError:c=!1,showEscalationError:d=!1,showRequiredErrors:u=!1,userList:f=[],onAddBlocked:p}){const w=e!=null,[,S]=y.useState(Ua),[m,h]=y.useState(Ua),[g,b]=y.useState([]),[L,_]=y.useState(w),[x,T]=y.useState(null),[V,R]=y.useState(i),Z=y.useRef(null),q=y.useRef(i),K=y.useRef(new Set),[$,G]=y.useState([]),[I,D]=y.useState(null),j=Q.useDispatch(),H=y.useMemo(()=>{const k=ii(l);return k.length?k:Ua},[l]),E=(()=>{const k=new Set;return[...o,...g,...ci(l)].filter(A=>{const N=String(A?.id??A?.roleId??A?.value);return k.has(N)?!1:(k.add(N),!0)})})();if(!w&&x!==H){const k=Et(H,i);T(H),h(k),S(k)}if(!L&&V!==i){R(i);const k=Et(m,i);k!==m&&h(k)}y.useEffect(()=>{q.current=i},[i]),y.useEffect(()=>{if(!w){const N=Et(H,q.current);r({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:[];b(ci(z));const X=ii(z),ae=Et(X.length?X:H,q.current);k||(S(ae),h(ae),r({id:e,tables:ae}))}catch(N){if(!k){const z=Et(H,q.current);S(z),h(z),r({id:e,tables:z}),console.error("Failed to load workflow steps:",N)}}finally{k||_(!1)}})(),()=>{k=!0}},[j,H,w,e,r]),y.useEffect(()=>{L||r?.({id:e,tables:m})},[e,L,r,m]);const M=y.useCallback((k,{preserveLastLevel:A}={})=>{const N=k.map((ae,ue)=>ue===0?{...ae,canReassign:"No"}:ae),z=A?N:Et(N,i),X={id:e,tables:z};return h(z),console.log("[TableCardGrid] updated form values:",z),console.log("[TableCardGrid] PUT payload:",X),r?.(X),X},[e,r,i]);y.useEffect(()=>{if(a)return a({setLastLevelFinal:()=>{if(!m.length)return null;const k=m.length-1,A=m.map((N,z)=>z===k?{...N,finalLevel:"Yes"}:N);return M(A,{preserveLastLevel:!0})}}),()=>a(null)},[e,a,r,m,i,M]);const C=k=>{const A=m[m.length-1];return A!=null&&A.id===k},F=(k,A)=>{Object.prototype.hasOwnProperty.call(A,"escalateAfterMinutes")&&K.current.add(k),M(m.map(N=>N.id===k?{...N,...A}:N),{preserveLastLevel:C(k)})},O=(k,A)=>{const N=m.findIndex(ae=>ae.id===k);if(N<0)return;const z=m[N],X=typeof A=="function"?A(z):A;if(X.escalateAfterMinutes!==z.escalateAfterMinutes&&K.current.add(k),N<m.length-1&&z.finalLevel!=="Yes"&&X.finalLevel==="Yes"){D({tableId:k,value:X});return}M(m.map((ae,ue)=>ue===N?X:ae),{preserveLastLevel:C(k)})},W=()=>{if(!I)return;const k=m.findIndex(N=>N.id===I.tableId);if(k<0){D(null);return}const A=m.slice(0,k+1).map((N,z)=>z===k?I.value:N);G(N=>N.filter(z=>A.some(X=>X.id===z))),M(A),D(null)},J=k=>{if(m.some(fe=>fe.finalLevel==="Yes"))return;const A=m[m.length-1];if(A){const fe=Ma(A,m.length-1);if(Object.values(fe).some(Boolean)){G(pe=>pe.includes(A.id)?pe:[...pe,A.id]),p?.(`Please fill all required fields of Level ${m.length} before adding a new level.`);return}}p?.("");const N=m.reduce((fe,pe)=>Math.max(fe,Number(pe.id)||0),0)+1,z=m.length+1,X=m[m.length-1],ue=X!=null&&K.current.has(X.id)&&Ie(X.escalateAfterMinutes)>0?m:pp(m);K.current.delete(N),M([...ue,xa(N,k||`Level ${z}`)]),requestAnimationFrame(()=>{requestAnimationFrame(()=>{const fe=Z.current;fe&&fe.scrollTo({left:fe.scrollWidth,behavior:"smooth"})})})},te=k=>{K.current.delete(k),M(m.filter(A=>A.id!==k))};return L&&!m.length?null:s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"ca-table-card-grid","aria-label":"Escalation levels",ref:Z,children:s.jsxs("div",{className:"ca-table-card-grid__track",children:[m.map((k,A)=>s.jsxs(y.Fragment,{children:[s.jsx(si,{name:k.name,roleList:E,showRoleError:c||u,showEscalationError:d,userList:f,level:A+1,value:k,initialFormValues:k,setFormValues:N=>O(k.id,N),selected:k.id===t,onSelect:()=>n?.(k),onDelete:()=>te(k.id),onChange:N=>F(k.id,N),fieldErrors:u||$.includes(k.id)?Ma(k,A):{}}),A<m.length-1?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:A===0?"green":A===1?"orange":"purple"}),s.jsx(ui,{accent:A===0?"green":A===1?"orange":"purple"})]}):null]},k.id)),m.length?s.jsxs(s.Fragment,{children:[s.jsx(di,{accent:m.length===1?"green":m.length===2?"orange":"purple"}),s.jsx(ui,{accent:m.length===1?"green":m.length===2?"orange":"purple"})]}):null,s.jsx(ai,{level:m.length+1,onAdd:J,disabled:m.some(k=>k.finalLevel==="Yes")})]})}),s.jsx(li,{variant:"finalLevelDelete",levelNo:I?m.findIndex(k=>k.id===I.tableId)+1:null,open:!!I,onConfirm:W,onClose:()=>D(null)})]})}function xm({totalMinutes:e=0,usedMinutes:t=0}){const n=Ie(e),r=Ie(t),a=Math.max(0,n-r),o=At(a)||"0m",l=n>0?Math.min(100,r/n*100):0;return s.jsxs("div",{className:"ca-tat-progress","aria-label":`TAT minutes, ${o} left`,children:[s.jsxs("div",{className:"ca-tat-progress__row",children:[s.jsx("span",{className:"ca-tat-progress__label",children:"TAT minutes"}),s.jsxs("span",{className:"ca-tat-progress__remaining",children:[o," left"]})]}),s.jsx("div",{className:"ca-tat-progress__track",children:s.jsx("div",{className:"ca-tat-progress__fill",style:{width:`${l}%`}})})]})}function pi(e){return e?.data??e?.id??e}function hi(e){const t=e&&typeof e=="object"?e.id??e.roleId??e.role_id??e.value:e;return t==null||t===""?null:String(t)}function mi(e){return String(e??"").toLowerCase().replace(/[^a-z0-9]/g,"")}function Pm(e){return[e?.roleId,e?.role_id,e?.role,e?.roles,e?.roleIds,e?.assignedRoles,e?.userRoles].flatMap(n=>Array.isArray(n)?n:[n]).flatMap(n=>[hi(n),hi(n?.role)]).filter(Boolean)}function Um(e){const t=[e?.role,e?.roles,e?.assignedRoles,e?.userRoles].flatMap(r=>Array.isArray(r)?r:[r]);return[e?.roleName,e?.role_name,...t.flatMap(r=>typeof r=="string"?[r]:[r?.name,r?.roleName,r?.label,r?.role?.name,r?.role?.roleName])].filter(Boolean).map(mi).filter(Boolean)}function $m({onNext:e,stepMeta:t,stepperProps:n,selectedTableCard:r,roleList:a=[],userList:o=[]}){const{state:l,updateWorkflow:i}=dr(),{workflow:c}=l,d=l.categoryRoleIds,u=y.useMemo(()=>{const M=new Set((Array.isArray(d)?d:[]).filter(C=>C!=null&&C!=="").map(String));return M.size?a.filter(C=>!M.has(String(C.id??C.roleId??C.value))):a},[d,a]),f=y.useMemo(()=>{const M=new Set((Array.isArray(d)?d:[]).filter(F=>F!=null&&F!=="").map(String));if(!M.size)return o;const C=new Set(a.filter(F=>M.has(String(F.id??F.roleId??F.value))).map(F=>mi(F.name??F.roleName??F.label)).filter(Boolean));return o.filter(F=>!Pm(F).some(O=>M.has(O))&&!Um(F).some(O=>C.has(O)))},[d,a,o]),[p,w]=y.useState(null),[S,m]=y.useState(""),[h,g]=y.useState(!1),[b,L]=y.useState(null),_=y.useRef(null),x=y.useCallback(M=>{w(M),m("")},[]),T=y.useCallback(M=>{_.current=M},[]),V=Q.useDispatch();let{id:R}=Q.useSelector(M=>M.appDetails||{});const Z=Q.useSelector(M=>M.complaintType?.selected),q=pi(R),K=pi(Z?.id??Z?._id),$=Ie(Z?.tatMinutes??l.tatMinutes);y.useEffect(()=>{q==null||q===""||K!=null&&String(K)===String(q)&&Z?.tatMinutes!=null||V(Xe(q))},[V,Z?.tatMinutes,K,q]);const G=y.useMemo(()=>{const M=Array.isArray(p?.tables)?p.tables:[];return fp(M)},[p]),I=r??c.selectedTableCard??null,D=Array.isArray(p?.tables)&&p.tables.length?p.tables.map((M,C)=>`L${C+1}`).join(" > "):"",j=M=>{V(Yn({id:M.id,tables:M,onSuccess:C=>{console.log("updateWorkflowSteps onSuccess:",C),m(""),n.onNext?.()},onFail:C=>{const F=C?.response?.data??C?.payload??C,O=[...new Set(Array.isArray(F?.errors)?F.errors.map(te=>te?.message).filter(Boolean):[])],W=(O.length?O.join(" "):null)??F?.message??F?.error??C?.message??"Failed to update workflow steps",J=String(W).replace(/roleIds must contain at least 1 elements?/gi,"Please select at least one role or user in every level.").replace(/userAssignments must contain at least 1 elements?/gi,"Please select at least one role or user in every level.");m(up(J))}}))},H=async()=>{if(m(""),!p){m("Workflow steps are not ready to save.");return}const M=Array.isArray(p.tables)?p.tables:[];if(!M.length){m("Add at least one workflow level before continuing.");return}g(!0);const C=M.map((W,J)=>Ma(W,J)),F=M.length-1;if(C.some((W,J)=>Object.entries(W).some(([te,k])=>k&&!(J===F&&te==="finalLevel")))){m("Please complete all required fields in every workflow level.");return}if(M[F].finalLevel!=="Yes"){L(F+1);return}j(p)},E=()=>{const M=_.current?.setLastLevelFinal?.();if(L(null),!M){m("Unable to update the final workflow level. Please try again.");return}g(!0),j(M)};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:$e,onNext:H,showNextButton:!0}),S?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:S}):null,s.jsx(li,{variant:"finalLevelRequired",levelNo:b,open:b!=null,onConfirm:E,onClose:()=>L(null)}),s.jsx(gn,{title:t.title,description:D,showNext:!1,headerExtra:s.jsx(xm,{totalMinutes:$,usedMinutes:G}),children:s.jsx("div",{className:"ca-workflow__main",children:s.jsx(fi,{id:R,selectedTableId:I?.id,onSelect:M=>i({selectedTableCard:M}),setUpdatePayload:x,registerWorkflowActions:T,roleList:u,userList:f,onAddBlocked:m,showRoleError:/roleIds|userAssignments|select\s*at\s*least\s*one|role\s*must contain|roles?\s*must contain|users?\s*must/i.test(S),showEscalationError:/escalation\s*time|must\s*equal.*TAT/i.test(S),showRequiredErrors:h,prefillSteps:l.prefillWorkflowSteps,tatTotalMinutes:$})})})]})}function gi({onAdd:e,disabled:t=!1}){return s.jsx("button",{type:"button",className:"ca-add-form-button",onClick:e,disabled:t,children:"+ Add Form Fields"})}const yi=y.createContext(null);function $a(e){return typeof e?.level4=="string"&&e.level4.trim()?e.level4.trim():"Office"}function bi(e,t){const n=$a(t);return String(e??"").replace(/\bstores?\b/gi,()=>n)}function tt(){const e=y.useContext(yi);return{storeName:$a(e),label:t=>bi(t,e),fieldLabel:t=>{const n=String(t.fieldKey??t.key??"").toLowerCase();return n==="storeid"||n==="storeidcustom"?$a(e):bi(t.fieldLabel??t.label??t.fieldName??"",e)}}}function Si({size:e=16,color:t="#9CA3AF",...n}){return s.jsxs("svg",{width:e,height:e,viewBox:"0 0 16 16",fill:"none","aria-hidden":"true",...n,children:[s.jsx("circle",{cx:"5",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"4",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"8",r:"1.2",fill:t}),s.jsx("circle",{cx:"5",cy:"12",r:"1.2",fill:t}),s.jsx("circle",{cx:"11",cy:"12",r:"1.2",fill:t})]})}function Ba(e,t){return!t||e.includes(t)?e:[t,...e]}function vi(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}const Bm="#9CA3AF";function wi({field:e,fieldOptions:t=[],fieldTypeOptions:n=[],fieldAccessOptions:r=[],hideForOptions:a=[],isSaving:o=!1,selected:l=!1,isDragging:i=!1,onSelect:c,onDragStartField:d,onDragEndField:u,onReorder:f,onChange:p,onDelete:w,onSave:S,cardRef:m,onOptionNotice:h,hasDuplicateIdentity:g=!1,hasMissingOptions:b=!1}){const[L,_]=y.useState(""),[x,T]=y.useState(null),V=y.useRef(!1),{label:R,fieldLabel:Z}=tt(),q=vi(e),[K,$]=y.useState(()=>({id:e.id,signature:e.isNew?null:q}));K.id!==e.id&&$({id:e.id,signature:e.isNew?null:q});const G=e.lockMode==="all",I=Ue(e),D=G||e.lockMode==="options",j=Hl(e),H=G||!j||I,E=!!(String(e.fieldLabel||"").trim()&&String(e.fieldType||"").trim()),M=K.signature!==q,C=!!o||!E,F=g||b?"ca-control--invalid":"",O=N=>p?.({...e,...N}),W=()=>{if(H)return;const N=L.trim();if(!N)return;if(re(e)&&et(N)){const X=(e.options||[]).find(ae=>String(ae).trim().toLowerCase()===N.toLowerCase());if(X){h?.(`${X} already exists in options`),_("");return}}if(e.options?.includes(N))return;const z=re(e)?{...e.optionColors||{},[N]:e.optionColors?.[N]||Bm}:e.optionColors;O({options:re(e)?mn([...e.options||[],N]):[...e.options||[],N],...re(e)?{optionColors:z}:{}}),_("")},J=N=>{if(H||re(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,...re(e)?{optionColors:z}:{}})},te=N=>{H||re(e)&&et(N)||(V.current=!1,T({original:N,draft:N}))},k=()=>{V.current=!0,T(null)},A=()=>{if(V.current){V.current=!1;return}if(!x)return;const{original:N,draft:z}=x,X=z.trim();if(T(null),!X||X===N)return;if((e.options||[]).some(he=>he!==N&&(he===X||re(e)&&String(he).trim().toLowerCase()===X.toLowerCase()))){h?.(`${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:re(e)?mn(ue):ue,parentMappings:fe,optionColors:pe})};return s.jsxs("article",{ref:m,className:`ca-form-card${l?" ca-form-card--selected":""}${i?" ca-form-card--dragging":""}`,onClick:()=>c?.(e),onDragOver: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||G||!M,onClick:async N=>{if(N.stopPropagation(),C||G||!M)return;const z=await S?.(e);z&&$({id:e.id,signature:vi(z)})},children:"Save"}),Ue(e)?null:s.jsx("button",{type:"button",className:"ca-icon-btn ca-form-card__delete","aria-label":"Delete form field",onClick:N=>{N.stopPropagation(),w?.(e.id)},children:s.jsx(er,{size:15,color:"currentColor"})})]})]}),s.jsx("div",{className:"ca-form-card__row",children:D?s.jsx("span",{className:"ca-form-card__static",children:Z(e)||"—"}):s.jsx(Ot,{value:G?Z(e):e.fieldLabel,placeholder:"Enter field label",disabled:D,className:F,onChange: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:Ba(n,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(Rn,{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:Ba(r,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:Ba(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:b?"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?re(e)?mn(e.options||[]):e.options||[]:[]).map(N=>{const z=re(e)&&et(N),X=x?.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:x.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(x.draft.length,3)+1}ch`,minWidth:40,padding:0,border:0,outline:"none",background:"transparent",color:"inherit",font:"inherit"}}):s.jsx("span",{role:z||H?void 0:"button",tabIndex:z||H?void 0:0,title:z||H?void 0:"Click to edit",style:z||H?void 0:{cursor:"text"},onClick:()=>te(N),onKeyDown:ae=>{ae.key==="Enter"&&te(N)},children:re(e)?or(N):N}),z?null:s.jsx("button",{type:"button","aria-label":`Remove ${N}`,disabled:H,onClick:()=>J(N),children:"×"})]},N)})})]})]})}function ja({option:e,onDelete:t,locked:n=!1}){return s.jsx("td",{children:n?null:s.jsx("button",{className:"field-options-panel__delete",type:"button","aria-label":`Delete ${e}`,title:`Delete ${e}`,onClick:()=>t(e),children:s.jsx(om,{size:14,strokeWidth:1.5,color:"currentColor","aria-hidden":"true"})})})}function jm(e){const t=String(e||"").trim();return/^#[0-9A-Fa-f]{6}$/.test(t)?t.toUpperCase():/^#[0-9A-Fa-f]{3}$/.test(t)?`#${t[1]}${t[1]}${t[2]}${t[2]}${t[3]}${t[3]}`.toUpperCase():"#000000"}function qm({formFields:e=[],selectedField:t=null,onChange:n}){const r=t,{fieldLabel:a}=tt(),o=_=>re(r)?or(_):_,l=re(r)?r:null,i=y.useMemo(()=>{const _=String(r?.dependsOn||"").trim();if(!_)return null;const x=e.filter(T=>String(T.fieldLabel||"").trim()===_);return x.find(T=>(T.options||[]).some(V=>String(V||"").trim()))||x[0]||null},[r?.dependsOn,e]),c=i?.options||[],d=!!r?.dependsOn,[u,f]=y.useState(!1),p=(_,x)=>{if(!l)return;const T=/^#[0-9A-Fa-f]{6}$/.test(x)?x.toUpperCase():x;n?.(e.map(V=>V.id===l.id?{...V,optionColors:{...V.optionColors,[_]:T}}:V))},w=(_,x)=>{r&&n?.(e.map(T=>T.id===r.id?{...T,parentMappings:{...T.parentMappings||{},[_]:x}}:T))},S=_=>{if(!r||re(r)&&et(_))return;const x={...r.optionColors||{}};delete x[_];const T={...r.parentMappings||{}};delete T[_],n?.(e.map(V=>V.id===r.id?{...V,options:(V.options||[]).filter(R=>R!==_),parentMappings:T,...re(V)?{optionColors:x}:{}}:V))},m=r&&a(r)||"Select field",h=gm(r,d),g=re(r)?mn(r?.options||[]):r?.options||[],b=(_,x)=>s.jsx("div",{className:"field-options-panel__table-wrap",children:s.jsxs("table",{className:"field-options-panel__table",children:[s.jsx("thead",{children:s.jsxs("tr",{children:[_.map(T=>s.jsx("th",{scope:"col",children:T},T)),s.jsx("th",{scope:"col","aria-label":"Delete"})]})}),s.jsx("tbody",{children:x})]})});let L=s.jsx("p",{className:"field-options-panel__empty",children:r?"No options added.":"Select a field to edit."});return d?L=g.length?b(["Option label",i?a(i):"Parent"],g.map(_=>s.jsxs("tr",{children:[s.jsx("td",{children:o(_)}),s.jsx("td",{children:s.jsxs("select",{"aria-label":`Parent for ${_}`,value:r.parentMappings?.[_]||"",disabled:!c.length,onChange:x=>w(_,x.target.value),children:[s.jsx("option",{value:"",children:c.length?"Select parent":`No ${String(r.dependsOn||"parent").toLowerCase()} options`}),c.map(x=>s.jsx("option",{value:x,children:x},x))]})}),s.jsx(ja,{option:_,onDelete:S,locked:re(r)&&et(_)})]},_))):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):l?L=g.length?b([re(l)?"Status":"Option","Colors"],g.map(_=>{const x=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?.[_]||x,onChange:T=>p(_,T.target.value)}),s.jsx("label",{className:"field-options-panel__swatch",style:{background:x},title:x,children:s.jsx("input",{type:"color","aria-label":`Pick color for ${_}`,value:x,onChange:T=>p(_,T.target.value)})})]})}),s.jsx(ja,{option:_,onDelete:S,locked:re(l)&&et(_)})]},_)})):s.jsx("p",{className:"field-options-panel__empty",children:"No options added."}):g.length&&(L=b([mm(r)],g.map(_=>s.jsxs("tr",{children:[s.jsx("td",{children:o(_)}),s.jsx(ja,{option:_,onDelete:S,locked:re(r)&&et(_)})]},_)))),s.jsxs("aside",{className:`field-options-panel${u?" is-open":""}${r?"":" field-options-panel--empty"}`,"aria-label":`Options for: ${m}`,children:[s.jsxs("button",{type:"button",className:"field-options-panel__summary","aria-expanded":u,"aria-controls":"field-options-panel-body",onClick:()=>f(_=>!_),children:[s.jsxs("span",{className:"field-options-panel__summary-text",children:[s.jsxs("span",{className:"field-options-panel__title",children:["Options for: ",m]}),h?s.jsx("span",{className:"field-options-panel__description",children:h}):null]}),s.jsx(pn,{className:"field-options-panel__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"field-options-panel-body",className:"field-options-panel__body",children:L})]})}function Vm(e,t=[]){const n=new Set,r=[];return t.forEach(a=>{if(String(a.id)===String(e?.id)||re(a))return;const o=String(a.fieldLabel||a.label||"").trim();if(!o)return;const l=o.toLowerCase();n.has(l)||!(a?.options||[]).some(c=>String(c||"").trim())||(n.add(l),r.push(o))}),r}const Wm=["Actions","Field Label","Field Type","Required","Field Access","Hide for","DependsOn","Options"];function zm(e,t){return{...e,id:e.id??`${Date.now()}-${t}`,order:t+1,fieldLabel:e.fieldLabel??e.name??"",fieldType:e.fieldType??e.typeLabel??"Custom",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:e.hideFor??[],dependsOn:e.dependsOn??"",options:e.options??[],parentMappings:e.parentMappings??{},optionColors:e.optionColors??{},lockMode:e.lockMode,isNew:!!e.isNew}}function Pt(e=[]){const t=e.map(zm);return t.map(n=>cr(n,t))}function Ci({initialFields:e,onChange:t,addExternalFieldRef:n,fieldTypeOptions:r=[],fieldAccessOptions:a=[],hideForOptions:o=[],onSave:l,onDelete:i}){const[c,d]=y.useState(()=>Pt(e??[])),[u,f]=y.useState(null),[p,w]=y.useState(null),[S,m]=y.useState(""),h=y.useRef(""),g=y.useRef(null),b=y.useRef({}),L=D=>{const j=Pt(D);d(j),t?.(j)},_=(e??[]).map(D=>D.id).join(",");y.useEffect(()=>{if(!S)return;const D=window.setTimeout(()=>m(""),3200);return()=>window.clearTimeout(D)},[S]),y.useEffect(()=>{!_||_===h.current||(h.current=_,d(Pt(e)))},[_,e]),y.useEffect(()=>{if(n)return n.current=D=>{D&&d(j=>{const H=j.find(C=>lr(D,[C]));if(ir(j)||H)return H&&f(H.id),j;if(Dt(j))return j;const E=Pt([...j,{...D,id:`${D.id}-${Date.now()}`,isNew:!0}]),M=E[E.length-1];return f(M.id),t?.(E),E})},()=>{n.current=null}},[n,t]),y.useEffect(()=>{if(u==null)return;const D=g.current,j=b.current[u];if(!D||!j)return;const H=requestAnimationFrame(()=>{const E=D.getBoundingClientRect(),M=j.getBoundingClientRect(),C=12;M.left>=E.left+C&&M.right<=E.right-C||D.scrollTo({left:D.scrollLeft+M.left-E.left-(E.width-M.width)/2,behavior:"smooth"})});return()=>cancelAnimationFrame(H)},[u,c]);const x=(D,j)=>{if(D==null||j==null||String(D)===String(j))return;const H=c.findIndex(O=>String(O.id)===String(D)),E=c.findIndex(O=>String(O.id)===String(j));if(H<0||E<0||Ue(c[H])||Ue(c[E]))return;const M=c.findIndex(Ue),C=[...c],[F]=C.splice(H,1);if(C.splice(E,0,F),M>=0){const O=C.findIndex(Ue);if(O!==M){const[W]=C.splice(O,1);C.splice(M,0,W)}}L(C.map((O,W)=>({...O,order:W+1})))},T=D=>{const j=c.find(J=>J.id===D.id),H=j&&j.fieldType!==D.fieldType;D.dependsOn&&D.dependsOn!==j?.dependsOn&&f(D.id);const E=String(j?.fieldLabel||"").trim(),M=j?.options||[],C=D.options||[],F=M.filter(J=>!C.includes(J)),O=C.filter(J=>!M.includes(J)),W=M.length===C.length&&F.length===1&&O.length===1?{from:F[0],to:O[0]}:null;L(c.map(J=>{if(J.id===D.id)return D;if(H&&E&&String(J.dependsOn||"").trim()===E)return{...J,dependsOn:"",parentMappings:{}};if(W&&E&&String(J.dependsOn||"").trim()===E){const te=Object.fromEntries(Object.entries(J.parentMappings||{}).map(([k,A])=>[k,A===W.from?W.to:A]));return{...J,parentMappings:te}}return J}))},V=async D=>{const j=c.find(H=>H.id===D);if(!(!j||Ue(j)))try{if(await i?.(j)===!1)return;const E=String(j.fieldLabel||"").trim();L(c.filter(M=>M.id!==D).map((M,C)=>E&&String(M.dependsOn||"").trim()===E?{...M,dependsOn:"",parentMappings:{},order:C+1}:{...M,order:C+1}))}catch{}},R=()=>{ir(c)||Dt(c)||L(Pt([...c,{id:`${Date.now()}-${c.length}`,fieldLabel:"",fieldType:r[0]??"",options:[],isNew:!0}]))},Z=async D=>{if(lr(D,c))return null;try{const j=await l?.(D);return j?(d(H=>{const E=Pt(H.map(M=>M.id===D.id?{...j,isNew:!1,order:M.order||1}:M));return t?.(E),E}),j):null}catch{return null}},q=ir(c),K=Dt(c),$=q?"A field with this label and type already exists":"",G=Kl(c),I=c.find(D=>D.id===u)||null;return s.jsxs(s.Fragment,{children:[$||G||S?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:$||G||S}):null,s.jsxs("div",{className:"ca-form-card-grid__container ",children:[s.jsxs("div",{className:"ca-form-card-grid",children:[s.jsx("div",{className:"ca-form-card-grid__labels",children:Wm.map(D=>s.jsx("div",{className:"ca-form-card-grid__label",children:D},D))}),s.jsxs("div",{className:"ca-form-card-grid__cards",ref:g,children:[c.map(D=>s.jsx(wi,{field:D,fieldOptions:Vm(D,c),fieldTypeOptions:r,fieldAccessOptions:a,hideForOptions:o,selected:I?.id===D.id,isDragging:String(p)===String(D.id),cardRef:j=>{j?b.current[D.id]=j:delete b.current[D.id]},onSelect:()=>f(D.id),onDragStartField:()=>w(D.id),onDragEndField:()=>w(null),onReorder:x,onChange:T,onDelete:V,onSave:Z,onOptionNotice:m,hasDuplicateIdentity:lr(D,c),hasMissingOptions:_a(D)},D.id)),s.jsx(gi,{onAdd:R,disabled:q||K})]})]}),s.jsx(qm,{formFields:c,selectedField:I,onChange:L})]})]})}const _i={department:jl,priorities:rm,status:rr,statuses:rr,statusCustom:rr,Status:rr,storeId:Vl,storeIdCustom:Vl};function Hm({fields:e=[],onAddField:t,disableAdd:n=!1,disableAddHint:r="Resolve duplicate field first"}){const[a,o]=y.useState(!1),{fieldLabel:l}=tt();return s.jsxs("aside",{className:`custom-field-table${a?" is-open":""}`,"aria-labelledby":"custom-field-table-title",style:{flexWrap:"wrap"},children:[s.jsxs("button",{type:"button",className:"custom-field-table__summary","aria-expanded":a,"aria-controls":"custom-field-table-list",onClick:()=>o(i=>!i),children:[s.jsxs("span",{className:"custom-field-table__summary-text",children:[s.jsx("span",{id:"custom-field-table-title",className:"custom-field-table__title",children:"Custom Fields"}),s.jsx("span",{className:"custom-field-table__description",children:"Use these fields to show options from database table."})]}),s.jsx(pn,{className:"custom-field-table__chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"})]}),s.jsx("div",{id:"custom-field-table-list",className:"custom-field-table__list",children:e.map(i=>{const c=l(i),d=_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:n?r:`Add ${c}`,disabled:n,onClick:()=>{n||t?.(i)},children:s.jsx(ql,{size:14,strokeWidth:2,"aria-hidden":"true"})})]},i.fieldKey??i.id)})}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," Submitted By, Updated At and Created By are set automatically."]}),s.jsxs("span",{className:"custom-field-table__title",style:{flexBasis:"100%",width:"100%",gridColumn:"1 / -1"},children:[s.jsx("span",{style:{color:"red"},children:"*"})," The First Column input will be considered the Title column."]})]})}const 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(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Gm(e,t){const n=Ut(e),r=Ut(t);return n?r?n+r.charAt(0).toUpperCase()+r.slice(1):n:""}function pr(e,t){return re({...e,fieldLabel:t})?Ut(t)||"status":Re({...e,fieldLabel:t})?"storeIdCustom":Gm(t,e.fieldType)}function Sn(e){const t=e?.data??e?.id??e;if(t==null||t==="")return null;const n=String(t).trim();return!n||n==="null"||n==="undefined"?null:n}function Jm(e){return e?typeof e=="string"?e:e.message||e.error||"":""}function qa(e){return e?typeof e.id=="number"||/^\d+$/.test(String(e.id)):!1}function Zm(e=[]){const t=re(e)?mn(e.options||[]):e.options||[];if(!t.length)return null;const n=e.parentMappings||{},r=e.optionColors||{},a=!!e.dependsOn||t.some(o=>n[o]);return re(e)?{values:t.map((o,l)=>{const i={name:o,displayOrder:l+1,isActive:!0,isDefault:pm(o)};return r[o]&&(i.color=r[o]),i})}:a?{values:t.map(o=>{const l={label:o};return n[o]&&(l.dependsOnValue=n[o]),l})}:{values:t}}function Xm(e,t=[],n=[]){const r=String(e.fieldLabel||"").trim(),a=e.originalFieldName!=null&&r===String(e.originalFieldName).trim(),o=t.find(w=>String(w.fieldLabel||"").trim()===e.dependsOn&&e.dependsOn),l=pr(e,r)||(a?e.fieldKey:""),i=o?pr(o,o.fieldLabel)||o.fieldKey:"",c=eg(e,n),d=Zm(e),u=Km[e.fieldType]??String(e.fieldType||"TEXT").toUpperCase(),f=Ym[e.fieldAccess]??(e.fieldAccess?String(e.fieldAccess).toUpperCase():"USER"),p={fieldName:r,fieldKey:l,fieldType:u,required:!!e.required,displayOrder:Number(e.order)||1,fieldAccess:f,isActive:e.isActive!==!1};return c!=null&&c!==""&&(p.hideForWorkflowStepId=c),d?.values?.length&&(p.options=d),i&&i!==l&&(p.dependsOnFieldKey=i),p}function Ei(e){return JSON.stringify({fieldLabel:String(e.fieldLabel||"").trim(),fieldType:e.fieldType??"",required:!!e.required,fieldAccess:e.fieldAccess??"",hideFor:[...e.hideFor||[]].sort(),dependsOn:e.dependsOn||"",options:e.options||[],parentMappings:e.parentMappings||{},optionColors:e.optionColors||{},order:Number(e.order)||1})}function Li(e,t){return Ei(e)!==Ei(t)}function Qm(e=[],t=e,n=[]){return{fields:e.filter(a=>!a.isNew&&String(a.fieldLabel||"").trim()).map((a,o)=>Xm({...a,order:a.order||o+1},t,n))}}function Rm(e){return Array.isArray(e)?e:Array.isArray(e?.data)?e.data:[]}function hr(e){return e==null?null:typeof e=="string"?e:e.levelNo!=null&&e.levelNo!==""?`Level ${e.levelNo}`:e.name??e.label??e.title??null}function Ti(e,t=[]){if(!e)return null;const n=hr(e);if(n)return n;const r=typeof e=="object"?e.id??e.workflowStepId:null;if(r==null)return null;const a=t.find(o=>String(o.id)===String(r));return hr(a)}function eg(e,t=[]){const n=Array.isArray(e.hideFor)?e.hideFor:[];if(!n.length)return null;for(const o of n){const l=t.find(i=>hr(i)===o||String(i.id)===String(o));if(l?.id!=null)return l.id}const r=e.hideForWorkflowStepId;return r==null||r===""?null:t.some(o=>String(o.id)===String(r))?r:null}function Ii(e){return[...new Set(e.filter(Boolean))]}function mr(e){return typeof e=="string"?e:e?.label??e?.name??e?.value??""}function tg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function ng(e,t=[]){if(!e)return"";const n=t.map(mr).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Ut(o)===e||Ut(o)===Ut(e))||e}function rg(e){return e&&typeof e=="object"&&e.color?e.color:""}function it(e=[],t=[]){const n=[...e].sort((r,a)=>(r.displayOrder??0)-(a.displayOrder??0));return Mt(n.map(r=>{const a=r?.options?.values??[],o=n.find(i=>i.id===r.dependsOnFieldId||r.dependsOnFieldKey&&i.fieldKey===r.dependsOnFieldKey),l=t.find(i=>String(i.id)===String(r.hideForWorkflowStepId));return{id:r.id,order:r.displayOrder,fieldLabel:r.fieldName??r.fieldLabel??"",fieldType:Na(r.fieldType,Ni,r.fieldKey),required:!!r.required,fieldAccess:Ai[r.fieldAccess]??r.fieldAccess??"",hideFor:Ii([...Array.isArray(r.hideFor)?r.hideFor:[],Ti(r.hideForWorkflowStep,t),Ti(l,t)]),dependsOn:r.dependsOnField?.fieldName??o?.fieldName??r.dependsOn??"",options:a.map(mr).filter(Boolean),parentMappings:Object.fromEntries(a.map(i=>{const c=mr(i),d=tg(i);return!c||!d?null:[c,ng(d,o?.options?.values??[])]}).filter(Boolean)),optionColors:Object.fromEntries(a.map(i=>[mr(i),rg(i)]).filter(([i,c])=>i&&c)),fieldKey:r.fieldKey,originalFieldName:r.fieldName??r.fieldLabel??"",dependsOnFieldId:r.dependsOnFieldId??null,hideForWorkflowStepId:r.hideForWorkflowStepId??null,isActive:r.isActive!==!1,label:r.fieldName??r.fieldLabel??""}}))}function ag({stepMeta:e,stepperProps:t}){const n=Q.useDispatch(),{systemId:r}=mt(),a=Q.useSelector(O=>O.appDetails?.id),o=Sn(a)??Sn(r),{state:l,update:i}=dr(),{formFields:c,prefillFormFields:d=[]}=l,u=y.useRef(null),f=y.useCallback(O=>i({formFields:O}),[i]),p=y.useCallback(async O=>{const W=String(O.fieldLabel||"").trim();return W?{...O,fieldLabel:W,fieldKey:pr(O,W),originalFieldName:W,isNew:!1}:null},[]),w=y.useCallback(async O=>Ue(O)?!1:(qa(O)&&await n(nn({complaintTypeId:o,fieldId:O.id})).unwrap(),!0),[o,n]),S=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.data),m=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.isLoading),h=Q.useSelector(O=>O.complaintAppComplaint?.formFields?.error),g=Q.useSelector(O=>O.workflow?.workflowSteps),b=y.useMemo(()=>Rm(g),[g]),L=y.useRef(b),[_,x]=y.useState(!1);y.useEffect(()=>{L.current=b},[b]),y.useEffect(()=>{const O=Sn(o);O!=null&&n(We(O))},[o,n]),y.useEffect(()=>{const O=Sn(o);if(O==null)return;let W=!1;return n(De(O)).unwrap().then(J=>{if(W)return;const te=Array.isArray(J)?J:J?.data;if(!(Array.isArray(te)&&te.length>0)&&d.length){const A=it(d,L.current).map((N,z)=>({...N,id:`prefill-${z}`,isNew:!1}));i({formFields:Mt(A)})}else{const A=Mt(it(Array.isArray(te)?te:[],L.current));i({formFields:A})}x(!0)}).catch(()=>{if(!W){if(d.length){const J=it(d,L.current).map((te,k)=>({...te,id:`prefill-${k}`,isNew:!1}));i({formFields:Mt(J)})}x(!0)}}),()=>{W=!0}},[o,n,d,i]);const T=y.useMemo(()=>Mt(it(S,b)),[S,b]),R=Sn(o)==null||_,Z=R?c:T,q=y.useMemo(()=>um.filter(O=>!Z.some(W=>O.fieldKey&&W.fieldKey===O.fieldKey||re(O)&&re(W)||sr(O)&&sr(W)||Re(O)&&Re(W))),[Z]),K=y.useMemo(()=>ir(Z),[Z]),$=y.useMemo(()=>Dt(Z),[Z]),G=Jm(h),I=im,D=cm,j=y.useMemo(()=>{const O=[...b].sort((J,te)=>(J.levelNo??0)-(te.levelNo??0)).map(J=>hr(J)).filter(Boolean),W=T.flatMap(J=>J.hideFor);return Ii([...O,...W])},[T,b]),H=y.useMemo(()=>{const O=new Map(it(S,b).map(W=>[Number(W.id),W]));return Z.filter(W=>{if(W.isNew&&String(W.fieldLabel||"").trim())return!0;if(!qa(W))return!1;const J=O.get(Number(W.id));return!J||Li(W,J)})},[S,Z,b]),[E,M]=y.useState(!1),C=y.useCallback(async O=>{if(!Dt(Z)&&o)try{const J=Z.map(X=>{if(!O||!X.isNew)return X;const ae=String(X.fieldLabel||"").trim();return ae?{...X,fieldLabel:ae,fieldKey:pr(X,ae),originalFieldName:ae,isNew:!1}:X}).filter(X=>!X.isNew&&String(X.fieldLabel||"").trim()),te=new Map(it(S,b).map(X=>[Number(X.id),X]));if(!J.some(X=>{if(!qa(X))return!0;const ae=te.get(Number(X.id));return!ae||Li(X,ae)})){t.onNext?.();return}const A=[...J].sort((X,ae)=>+!!X.dependsOn-+!!ae.dependsOn);await n(tn({complaintTypeId:o,data:Qm(A,A,b)})).unwrap();const N=await n(De(o)).unwrap(),z=Array.isArray(N)?N:N?.data;i({formFields:Mt(it(Array.isArray(z)?z:[],b))}),t.onNext?.()}catch{}},[S,o,n,Z,t,i,b]),F=y.useCallback(()=>{if(!Dt(Z)){if(H.length){M(!0);return}C(!1)}},[Z,H.length,C]);return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...t,steps:$e,onNext:F}),E?s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-labelledby":"form-fields-pending-save-title",children:s.jsxs("div",{className:"ca-confirm-modal__dialog",children:[s.jsx("p",{id:"form-fields-pending-save-title",className:"ca-confirm-modal__message",children:"Some fields are pending to save."}),s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:()=>{M(!1),C(!1)},children:"OK"}),s.jsx(ye,{onClick:()=>{M(!1),C(!0)},children:"Save"})]})]})}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:e.title,description:e.description,showNext:!1,children:!R||m?s.jsx(ze,{text:"Loading form fields"}):G&&!Z.length?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:G}):s.jsxs("div",{className:"ca-form-fields",children:[G?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:G}):null,s.jsx(Hm,{fields:q,disableAdd:K||$,disableAddHint:K?"Resolve duplicate field first":$?Kl(Z):void 0,onAddField:O=>u.current?.({...O})}),s.jsx("div",{className:"ca-settings-card__divider"}),s.jsx(Ci,{initialFields:Z,addExternalFieldRef:u,onChange:f,fieldTypeOptions:I,fieldAccessOptions:D,hideForOptions:j,onSave:p,onDelete:w})]})})]})}function Fi({label:e="Active",checked:t,onChange:n,disabled:r=!1,className:a=""}){return s.jsxs("div",{className:`ca-toggle-field ${a}`.trim(),children:[s.jsx(cl,{children:e}),s.jsx(Rn,{checked:t,onChange:n,disabled:r,"aria-label":e})]})}function ki({storeList:e=[],value:t,onChange:n,...r}){const{label:a}=tt();return s.jsxs("select",{...r,className:"review-control",value:t??"",onChange:o=>n(o.target.value),children:[s.jsx("option",{value:"",children:a("Select Store")}),e.map(o=>s.jsx("option",{value:o.id,children:o.name??o.label??String(o.id)},o.id))]})}const sg=/\.(png|jpe?g|gif|webp|bmp|svg)$/i;function Va(e,t){return t?Array.isArray(e)?e.filter(Boolean):[]:e instanceof File?[e]:[]}function og(e){return e?e.type&&e.type.startsWith("image/")?!0:sg.test(e.name||""):!1}function lg(e){return`${e.name}-${e.size}-${e.lastModified}`}function gr({id:e,name:t,value:n,onChange:r,multiple:a=!1,required:o=!1,disabled:l=!1,accept:i}){const c=Va(n,a),d=y.useMemo(()=>Va(n,a).map((u,f)=>{const p=og(u);return{key:`${lg(u)}-${f}`,name:u.name,isImage:p,url:p?URL.createObjectURL(u):""}}),[n,a]);return y.useEffect(()=>()=>{d.forEach(u=>{u.url&&URL.revokeObjectURL(u.url)})},[d]),s.jsxs("div",{className:"review-file-field",children:[s.jsx("input",{id:e,name:t,className:"review-control",type:"file",accept:i,multiple:a,required:!!o&&c.length===0,disabled:l,onChange:u=>{const f=Array.from(u.target.files||[]);if(!a){r(f[0]||"");return}const p=Va(n,!0);r([...p,...f]),u.target.value=""}}),d.length?s.jsx("div",{className:"review-file-preview",children:s.jsx("div",{className:"review-file-preview__images",children:d.map((u,f)=>s.jsxs("div",{className:"review-file-preview__item",children:[u.isImage?s.jsx("img",{className:"review-file-preview__thumb",src:u.url,alt:u.name,title:u.name}):s.jsx("span",{className:"review-file-preview__name",children:u.name}),s.jsx("button",{type:"button",className:"review-file-preview__remove","aria-label":`Remove ${u.name}`,onClick:()=>{r(a?c.filter((p,w)=>w!==f):"")},children:"×"})]},u.key))})}):null]})}const ig=new Set(["select","radio","checkbox"]);function Oi(e){return String(e||"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"")}function ct(e){return String(e.label||e.fieldLabel||e.fieldName||e.name||"").trim()}function Wa(e){return`review-${e.id??e.fieldKey??(Oi(ct(e))||"field")}`}function Di(e,t,n){return n===0?e:`${e}-${Oi(t)||n}`}function za(e){const t=String(e.fieldType||"").toLowerCase(),n=String(e.fieldKey||ct(e)||"").toLowerCase();return t==="file"?"file":t==="images"?"images":t==="email"||n.includes("email")?"email":t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":(t==="dropdown"||t==="select"||t==="custom")&&e.options?.length?"select":"text"}function Mi(e){return ig.has(e)}function cg(e){return e==="textarea"||e==="radio"||e==="checkbox"}function dg(e){const t=String(e.fieldType||"").toLowerCase();return t==="text"||t==="textfield"}function xi(e){return String(e||"").replace(/\d/g,"")}function Pi(e){return String(e||"").replace(/[^\d]/g,"")}function vn(e,t){const n=String(ct(e)||"value").toLowerCase();return t==="date"?"mm/dd/yyyy":t==="select"?`Select ${n}`:t==="email"?"Enter email":`Enter ${n}`}function wn(e){return String(e.fieldKey||e.id||ct(e)||Wa(e))}function Ui(e,t=[]){const n=String(e.dependsOn||"").trim();return n&&t.find(r=>{const a=ct(r),o=String(r.fieldKey||"");return a===n||o===n})||null}function $i(e,t=[],n={}){const r=e.options||[],a=Ui(e,t);if(!a)return r;const o=e.parentMappings||{};if(!r.some(c=>!!o[c]))return r;const i=String(n[wn(a)]||"").trim();return i?r.filter(c=>String(o[c]||"")===i):r}function Bi(e){return e==="checkbox"||e==="images"?[]:""}function ug({question:e,options:t,value:n,onChange:r,storeList:a}){const o=Wa(e),l=za(e),i=n??Bi(l),c={id:o,name:String(e.fieldKey||ct(e)||o),required:!!e.required};if(Re(e)&&Array.isArray(a))return s.jsx(ki,{...c,storeList:a,value:i,onChange:r});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:t.map((d,u)=>{const f=Di(o,d,u);return s.jsxs("label",{className:"review-option",htmlFor:f,children:[s.jsx("input",{...c,id:f,type:"radio",value:d,checked:i===d,onChange:p=>r(p.target.value)}),s.jsx("span",{children:d})]},d)})});if(l==="checkbox"){const d=Array.isArray(i)?i:[];return s.jsx("div",{className:"review-options review-options--inline",children:t.map((u,f)=>{const p=Di(o,u,f);return s.jsxs("label",{className:"review-option",htmlFor:p,children:[s.jsx("input",{id:p,name:`${c.name}[]`,type:"checkbox",value:u,checked:d.includes(u),required:!1,onChange:w=>r(w.target.checked?[...d,u]:d.filter(S=>S!==u))}),s.jsx("span",{children:u})]},u)})})}return l==="textarea"?s.jsx("textarea",{...c,className:"review-control review-control--textarea",placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)}):l==="select"?s.jsxs("select",{...c,className:"review-control",value:i,onChange:d=>r(d.target.value),children:[s.jsx("option",{value:"",children:vn(e,l)}),t.map(d=>s.jsx("option",{value:d,children:d},d))]}):l==="file"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="images"?s.jsx(gr,{...c,value:i,onChange:r,multiple:!0}):l==="number"?s.jsx("input",{...c,className:"review-control",type:"number",inputMode:"numeric",placeholder:vn(e,l),value:i,onChange:d=>r(Pi(d.target.value)),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault(),d.key.length===1&&!/\d/.test(d.key)&&!d.ctrlKey&&!d.metaKey&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/^\d*$/.test(u)||(d.preventDefault(),r(Pi(u)))}}):dg(e)?s.jsx("input",{...c,className:"review-control",type:"text",inputMode:"text",placeholder:vn(e,l),value:i,onChange:d=>r(xi(d.target.value)),onKeyDown:d=>{/^\d$/.test(d.key)&&d.preventDefault()},onPaste:d=>{const u=d.clipboardData.getData("text");/\d/.test(u)&&(d.preventDefault(),r(xi(u)))}}):s.jsx("input",{...c,className:"review-control",type:l,placeholder:vn(e,l),value:i,onChange:d=>r(d.target.value)})}function fg({fields:e=[],storeList:t}){const{fieldLabel:n}=tt(),[r,a]=y.useState({}),o=(l,i)=>{const c=wn(l);a(d=>{const u={...d,[c]:i};return e.forEach(f=>{const p=Ui(f,e);if(!p||wn(p)!==c)return;const w=za(f);if(!Mi(w))return;const S=$i(f,e,u),m=wn(f),h=u[m];Array.isArray(h)?u[m]=h.filter(g=>S.includes(g)):h&&!S.includes(h)&&(u[m]="")}),u})};return e.length?s.jsx("div",{className:"review-form-card",children:s.jsx("form",{className:"review-form","aria-label":"Form fields preview",onSubmit:l=>l.preventDefault(),children:s.jsx("div",{className:"review-form-grid",children:e.map(l=>{const i=za(l),c=Wa(l),d=Mi(i)?$i(l,e,r):[];return s.jsxs("div",{className:`review-question${cg(i)?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:c,children:[n(l)||"Untitled field",l.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(ug,{storeList:t,question:l,options:d,value:r[wn(l)]??Bi(i),onChange:u=>o(l,u)})]},l.id??l.fieldKey??ct(l))})})})}):s.jsx("p",{className:"review-empty",children:"No form fields added"})}const pg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"},hg={BOTH:"Both",USER:"User",ADMIN:"Admin"};function mg(e){return e?typeof e=="string"?e:e.name??e.label??e.title??null:null}function gg(e){return[...new Set(e.filter(Boolean))]}function Ha(e){return typeof e=="string"?e:e?.label??e?.name??""}function Ka(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function yg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function bg(e,t=[]){if(!e)return"";const n=t.map(Ha).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Ka(o)===e||Ka(o)===Ka(e))||e}function Sg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n?.options?.values??[],a=t.find(o=>o.id===n.dependsOnFieldId||n.dependsOnFieldKey&&o.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:n.fieldName??n.fieldLabel??n.label??"",fieldLabel:n.fieldName??n.fieldLabel??n.label??"",fieldKey:n.fieldKey,fieldType:Na(n.fieldType,pg,n.fieldKey),required:!!n.required,fieldAccess:hg[n.fieldAccess]??n.fieldAccess??"",hideFor:gg([...Array.isArray(n.hideFor)?n.hideFor:[],mg(n.hideForWorkflowStep)]),dependsOn:n.dependsOnField?.fieldName??a?.fieldName??n.dependsOn??"",options:r.map(Ha).filter(Boolean),parentMappings:Object.fromEntries(r.map(o=>{const l=Ha(o),i=yg(o);return!l||!i?null:[l,bg(i,a?.options?.values??[])]}).filter(Boolean))}})}function vg({onPublish:e,stepMeta:t,stepperProps:n,storeList:r}){const a=Q.useDispatch(),o=Q.useSelector(T=>T.appDetails?.id),l=Q.useSelector(T=>T.complaintAppComplaint.formFields.data),i=Q.useSelector(T=>T.complaintAppComplaint.formFields.isLoading),c=Q.useSelector(T=>T.complaintAppComplaint.formFields.error),d=Q.useSelector(T=>T.createComplaint?.isActive),u=Q.useSelector(T=>T.createComplaint?.activeComplaintTypeId),f=Q.useSelector(T=>T.createComplaint?.isUpdatingActive),p=Q.useSelector(T=>T.createComplaint?.activeError),w=Q.useSelector(T=>T.complaintType?.selected),S=Q.useSelector(T=>T.complaintType?.complaintList??[]),m=Q.useSelector(T=>T.appDetails?.details?.currentUser),h=y.useMemo(()=>Sg(l),[l]),g=y.useMemo(()=>o==null?null:w&&String(w.id??w._id)===String(o)?w:S.find(T=>String(T?.id??T?._id)===String(o))??null,[S,o,w]),b=g!=null&&(g.isActive!=null||g.active!=null)?!!(g.isActive??g.active):null,L=String(u)===String(o)?!!d:b??!0,_=ep(g,m);y.useEffect(()=>{o&&a(De(o))},[o,a]);const x=T=>{!o||f||!_||a(cn({id:o,isActive:T}))};return s.jsxs(s.Fragment,{children:[s.jsx(bn,{...n,steps:$e,showSaveButton:!1,nextLabel:"Publish",extraActions:s.jsx(Fi,{label:"Active",checked:L,disabled:!o||f||!_,onChange:x}),onNext:()=>{e?.(),n.onNext?.()}}),p?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:p}):null,s.jsx(gn,{className:"ca-settings-card--plain",title:t.title,description:t.description,showNext:!1,children:s.jsx("div",{className:"ca-review",children:s.jsx("section",{className:"ca-review__block ca-review__block--last",children:i?s.jsx(ze,{text:"Loading form fields"}):c&&!h.length?s.jsx("p",{className:"ca-body",children:c}):s.jsx(fg,{fields:h,storeList:r})})})})]})}function wg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>$e.length?$e.length:Math.floor(t)}function Cg(e){const t=Number(e);return!Number.isFinite(t)||t<1?1:t>3?3:Math.floor(t)}function ji({title:e="Complaint Management Settings",onPublish:t,onStepChange:n,onSaveDraft:r,roleList:a=[],userList:o=[],storeList:l,showSaveButton:i=!0,showNextButton:c=!0}){const d=Pe(),u=Q.useDispatch(),{systemId:f}=mt(),[p,w]=Ls(),S=wg(p.get("step")||1),m=Cg(p.get("substep")||1),h=!!f&&f!=="new",[g,b]=y.useState(!1);y.useEffect(()=>{if(!h)return;let q=!1;const K=$=>{const G=$?.data??$;return Array.isArray(G)?G:Array.isArray(G?.data)?G.data:[]};return Promise.all([u(We(f)).unwrap(),u(De(f)).unwrap()]).then(([$,G])=>{q||b(K($).length>0&&K(G).length>0)}).catch(()=>{q||b(!1)}),()=>{q=!0}},[u,h,f]);const L=h&&g;y.useEffect(()=>{f&&u(lt(f)),u(Nt({data:h}))},[u,h,f]),y.useEffect(()=>{if(!p.get("step")){const q=new URLSearchParams(p);q.set("step","1"),w(q,{replace:!0})}},[p,w]);const _=y.useMemo(()=>$e.find(q=>q.id===S)||$e[0],[S]),x=y.useCallback((q,K)=>{const $=new URLSearchParams(p);$.set("step",String(q)),q===4?$.set("substep",String(K??(q===S?m:1))):$.delete("substep"),w($,{replace:!1}),n?.({systemId:f,step:q,substep:K})},[p,w,n,f,S,m]),T=()=>{if(S<$e.length){x(S+1,1);return}d("/")},V=q=>{x(4,q)},R=()=>{t?.({systemId:f,step:S})},Z={currentStep:S,allStepsUnlocked:L,onStepClick:q=>x(q,q===4?1:void 0),showSaveButton:i,showNextButton:c,onSaveDraft:()=>r?.({systemId:f,step:S}),onNext:T,className:"ca-settings-page__stepper"};return s.jsx(Xl,{children:s.jsxs("div",{className:"ca-settings-page",children:[s.jsxs("div",{className:"ca-settings-page__header",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>d("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx(fa,{children:e})]}),S===1?s.jsx(Im,{stepMeta:_,stepperProps:Z,roleList:a,userList:o}):null,S===2?s.jsx($m,{onNext:T,stepMeta:_,roleList:a,userList:o,substep:m,onSubstepChange:V,stepperProps:Z}):null,S===3?s.jsx(ag,{stepMeta:_,stepperProps:Z}):null,S===4?s.jsx(vg,{storeList:l,onPublish:R,stepMeta:_,stepperProps:Z}):null]})},f||"new")}function _g(){const e=Pe(),n=Q.useSelector(c=>c.status?.complaintSummary??null)?.totalComplaints??0,r=Q.useSelector(c=>c.appDetails?.id),a=Q.useSelector(c=>c.complaintType?.selected??null),o=a?.id??a?._id,i=o==null||r==null||String(o)===String(r)?a?.name??a?.complaintTypeName??a?.title??"":"";return s.jsx("section",{className:"ca-query-details","aria-labelledby":"query-management-title",children:s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>e("/"),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"query-management-title",className:"ca-query-details__title",children:i||"Complaint Management"})]}),s.jsxs("span",{className:"ca-query-details__count",children:["Total Count: ",n??0]})]})})}function qi({currentPage:e,totalItems:t,itemsPerPage:n,onPageChange:r,onItemsPerPageChange:a,selectOptions:o=["5","10","15","20","25"],totalPages:l,disabled:i=!1}){if(t<=0)return null;const c=(e-1)*n+1,d=Math.min(e*n,t),u=e<=1,f=e>=l;return s.jsxs("div",{className:`ca-custom-pagination${i?" ca-custom-pagination--disabled":""}`,"aria-label":"Complaint table pagination",children:[s.jsxs("label",{className:"ca-custom-pagination__page-size",children:[s.jsx("span",{children:"Results per page:"}),s.jsx("select",{className:"ca-custom-pagination__select",value:String(n),onChange:p=>a?.(Number(p.target.value)),disabled:i,"aria-label":"Results per page",children:o.map(p=>s.jsx("option",{value:p,children:p},p))})]}),s.jsxs("div",{className:"ca-custom-pagination__navigation",children:[s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(1),disabled:i||u,"aria-label":"First page",children:s.jsx(em,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e-1),disabled:i||u,"aria-label":"Previous page",children:s.jsx(Rh,{size:16,"aria-hidden":"true"})}),s.jsxs("span",{className:"ca-custom-pagination__range",children:[c," - ",d," of ",t]}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(e+1),disabled:i||f,"aria-label":"Next page",children:s.jsx(nr,{size:16,"aria-hidden":"true"})}),s.jsx("button",{type:"button",className:"ca-custom-pagination__button",onClick:()=>r?.(l),disabled:i||f,"aria-label":"Last page",children:s.jsx(tm,{size:16,"aria-hidden":"true"})})]})]})}function 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:n="success",onDismiss:r}){return y.useEffect(()=>{const a=setTimeout(()=>r(e),3500);return()=>clearTimeout(a)},[e,r]),s.jsxs("div",{className:`ca-toast ca-toast--${n}`,role:"status",children:[s.jsx("span",{className:"ca-toast__icon",children:s.jsx(Ng,{type:n})}),s.jsxs("div",{className:"ca-toast__content",children:[s.jsx("div",{className:"ca-toast__title",children:n==="error"?"Error":"Success"}),s.jsx("div",{className:"ca-toast__message",children:t})]}),s.jsx("button",{type:"button",className:"ca-toast__close","aria-label":"Dismiss notification",onClick:()=>r(e),children:s.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round"})})})]})}function Eg({toasts:e=[],onDismiss:t}){return e.length?s.jsx("div",{className:"ca-toast-container",children:e.map(n=>s.jsx(Ag,{...n,onDismiss:t},n.id))}):null}const Lg=[{value:"today",label:"Today"},{value:"yesterday",label:"Yesterday"},{value:"lastWeek",label:"Last Week"},{value:"wtd",label:"WTD"},{value:"mtd",label:"MTD"},{value:"ytd",label:"YTD"},{value:"custom",label:"Custom"}],Vi=e=>String(e).padStart(2,"0"),Fe=e=>`${e.getFullYear()}-${Vi(e.getMonth()+1)}-${Vi(e.getDate())}`,Cn=(e,t)=>new Date(e.getFullYear(),e.getMonth(),e.getDate()+t);function Tg(e,t="",n="",r=new Date){const a=new Date(r.getFullYear(),r.getMonth(),r.getDate()),o=(a.getDay()+6)%7,l=Cn(a,-o);switch(e){case"today":return{fromDate:Fe(a),toDate:Fe(a)};case"yesterday":return{fromDate:Fe(Cn(a,-1)),toDate:Fe(Cn(a,-1))};case"lastWeek":return{fromDate:Fe(Cn(l,-7)),toDate:Fe(Cn(l,-1))};case"wtd":return{fromDate:Fe(l),toDate:Fe(a)};case"mtd":return{fromDate:Fe(new Date(a.getFullYear(),a.getMonth(),1)),toDate:Fe(a)};case"ytd":return{fromDate:Fe(new Date(a.getFullYear(),0,1)),toDate:Fe(a)};case"custom":return t&&n?{fromDate:t,toDate:n}:null;default:return null}}function Ig(e){if(!e?.preset)return{};const t=Tg(e.preset,e.from,e.to);return t?{...t}:{}}const Fg=[{value:"created",label:"Created"},{value:"updated",label:"Updated"}];function kg({initial:e,onApply:t,onReset:n,onClose:r}){const[a,o]=y.useState(e?.field||"updated"),[l,i]=y.useState(e?.preset||""),[c,d]=y.useState(e?.from||""),[u,f]=y.useState(e?.to||""),p=l==="custom"&&(!c||!u||c>u),w=!!l&&!p;return s.jsx("div",{className:"ca-confirm-modal",role:"dialog","aria-modal":"true","aria-label":"Filters",children:s.jsxs("div",{className:"ca-confirm-modal__dialog ca-date-filter",children:[s.jsxs("div",{className:"ca-date-filter__header",children:[s.jsx("span",{className:"ca-date-filter__title",children:"Filters"}),s.jsx("button",{type:"button",className:"ca-date-filter__close","aria-label":"Close",onClick:r,children:s.jsx(lm,{size:18})})]}),s.jsx("div",{className:"ca-date-filter__tabs",role:"group","aria-label":"Date field",children:Fg.map(S=>s.jsx("button",{type:"button",className:`ca-date-filter__tab${a===S.value?" ca-date-filter__tab--active":""}`,onClick:()=>o(S.value),children:S.label},S.value))}),s.jsx("div",{className:"ca-date-filter__list",children:Lg.map(S=>s.jsxs("label",{className:`ca-date-filter__option${l===S.value?" ca-date-filter__option--active":""}`,children:[s.jsx("input",{type:"radio",name:"complaint-date-preset",checked:l===S.value,onChange:()=>i(S.value)}),s.jsx("span",{children:S.label})]},S.value))}),l==="custom"?s.jsxs("div",{className:"ca-date-filter__custom",children:[s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-from",children:"From Date"}),s.jsx("input",{id:"ca-date-from",type:"date",className:"ca-date-filter__date",value:c,max:u||void 0,onChange:S=>d(S.target.value)}),s.jsx("label",{className:"ca-confirm-modal__label",htmlFor:"ca-date-to",children:"To Date"}),s.jsx("input",{id:"ca-date-to",type:"date",className:"ca-date-filter__date",value:u,min:c||void 0,onChange:S=>f(S.target.value)})]}):null,s.jsxs("div",{className:"ca-confirm-modal__actions",children:[s.jsx(ye,{variant:"outline",onClick:n,children:"Reset"}),s.jsx(ye,{onClick:()=>t({field:a,preset:l,from:c,to:u}),disabled:!w,children:"Apply"})]})]})})}function Og({open:e,initial:t,onApply:n,onReset:r,onClose:a}){return e?s.jsx(kg,{initial:t,onApply:n,onReset:r,onClose:a}):null}function Ya({text:e="No data"}){return s.jsx("div",{className:"ca-empty-state",role:"status",children:e})}const Dg=/^[^\s]+\/[^\s]+\.[A-Za-z0-9]{2,5}(?:\?.*)?(?:::.+)?$/;function dt(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(0,n):t}function _n(e){const t=String(e??""),n=t.indexOf("::");return n>=0?t.slice(n+2):t}const Mg=new RegExp("(?<=\\.[A-Za-z0-9]{2,5})(?=[A-Za-z0-9_-]+\\/)|[,\\n;]+");function $t(e){return(Array.isArray(e)?e:[e]).filter(n=>n!=null&&n!==""&&n!=="-").flatMap(n=>typeof n=="string"?n.split(Mg).map(r=>r.trim()).filter(Boolean):[n])}function xg(e){const t=$t(e);return t.length>0&&t.every(n=>typeof n=="string"&&Dg.test(n))}function Nn(e,t){const n=String(e?.fieldType||"").toLowerCase();return n==="file"||n==="images"||n==="image"||xg(t)}function Pg(e,t){const n=new Set;return t.forEach(r=>{e.forEach(a=>{const o=r[a.key]??"-";Nn(a,o)&&$t(o).forEach(l=>{typeof l=="string"&&n.add(dt(l))})})}),Array.from(n)}const Wi=/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i;function Ga(e,t=7){const n=String(e||""),r=n.lastIndexOf("."),a=r>0?n.slice(0,r):n,o=r>0?n.slice(r):"";return a.length>t?`${a.slice(0,t)}...${o}`:n}function Ug({value:e,urlMap:t={}}){const n=y.useMemo(()=>$t(e),[e]),[r,a]=y.useState(null);if(!n.length)return"-";const o=n.filter(p=>typeof p=="string"&&Wi.test(dt(p))),l=n.filter(p=>typeof p=="string"&&!Wi.test(dt(p))).map(p=>({name:_n(p),url:t[dt(p)]})),i=o.map(p=>({name:_n(p),url:t[dt(p)]})).filter(p=>p.url),c=i[0],d=()=>a(null),u=()=>a(p=>p>0?p-1:i.length-1),f=()=>a(p=>p<i.length-1?p+1:0);return s.jsxs(s.Fragment,{children:[s.jsxs("div",{className:"ca-complaint-table__attachments",children:[c?s.jsx("button",{type:"button",className:"ca-complaint-table__attachment-trigger",onClick:()=>a(0),"aria-label":`Preview ${c.name}`,children:s.jsx("img",{className:"ca-complaint-table__attachment-image",src:c.url,alt:c.name,title:c.name})}):null,l.length?l.map(p=>{const w=String(p.name).split("/").pop();return p.url?s.jsx("a",{className:"ca-complaint-table__attachment-link",href:p.url,target:"_blank",rel:"noreferrer",title:w,children:Ga(w)},p.name):s.jsx("span",{className:"ca-complaint-table__attachment-name",title:w,children:Ga(w)},p.name)}):null,!c&&!l.length?n.map(p=>s.jsx("span",{className:"ca-complaint-table__attachment-name",title:_n(p),children:Ga(_n(p))},String(p))):null,i.length>1?s.jsxs("button",{type:"button",className:"ca-complaint-table__attachment-count",onClick:()=>a(1),"aria-label":`Preview ${i.length-1} more images`,children:["+",i.length-1]}):null]}),r!=null&&i.length?s.jsxs("div",{className:"ca-complaint-table__preview",role:"dialog","aria-modal":"true","aria-label":"Image preview",children:[s.jsx("button",{type:"button",className:"ca-complaint-table__preview-close",onClick:d,"aria-label":"Close image preview",children:"×"}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--previous",onClick:u,"aria-label":"Previous image",children:"‹"}),s.jsx("img",{className:"ca-complaint-table__preview-image",src:i[r].url,alt:i[r].name}),s.jsx("button",{type:"button",className:"ca-complaint-table__preview-nav ca-complaint-table__preview-nav--next",onClick:f,"aria-label":"Next image",children:"›"}),s.jsxs("span",{className:"ca-complaint-table__preview-count",children:[r+1," / ",i.length]})]}):null]})}function yr(e,t=!1){const n=[];return!t&&e==="description"&&n.push("ca-complaint-table__desc"),e==="actions"&&n.push("ca-complaint-table__sticky","ca-complaint-table__sticky--actions"),n.length?n.join(" "):void 0}function zi(e,t=[]){const n=t.find(l=>String(l.id)===String(e.assignedToUserId)),a=(n?[n.firstName,n.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",o=n?.email||"";return{name:a,email:o,tooltip:[a,o].filter(Boolean).join(`
|
|
13
|
+
`)}}function $g({row:e,ctx:t,isOpen:n,onToggle:r}){const a=t.roleUsers??[],o=y.useRef(null),l=y.useRef(null),[i,c]=y.useState(null),d=a.find(b=>String(b.id)===String(e.assignedToUserId)),f=(d?[d.firstName,d.lastName].filter(Boolean).join(" ").trim():"")||e.assignedToUserName||"",p=e.assignedToUserId,w=p!=null&&p!==""&&String(p)===String(t.currentUserId),S=w?"Assign to Me":f||"Assign",m=a.filter(b=>String(b.id)!==String(t.currentUserId)),h=!!e.isClosed||t.canAssign===!1,g=zi(e,a);return y.useLayoutEffect(()=>{if(!n)return;const b=()=>{const L=o.current,_=l.current;if(!L||!_)return;const x=L.getBoundingClientRect(),T=_.getBoundingClientRect(),V=6,R=12,q=x.bottom+V+T.height>window.innerHeight-R&&x.top-V-T.height>=R?x.top-T.height-V:Math.min(x.bottom+V,window.innerHeight-T.height-R),K=Math.max(R,Math.min(x.right-T.width,window.innerWidth-T.width-R));c({top:q,left:K,visibility:"visible"})};return b(),window.addEventListener("resize",b),window.addEventListener("scroll",b,!0),()=>{window.removeEventListener("resize",b),window.removeEventListener("scroll",b,!0)}},[t.assignmentError,t.assignmentLoading,t.assignmentSaving,n,a.length]),s.jsxs("div",{className:"ca-complaint-table__assignment",title:g.tooltip||void 0,children:[s.jsxs("button",{ref:o,type:"button",className:"ca-complaint-table__assignment-trigger","data-assignment-trigger":"true",disabled:h,onClick:b=>{b.stopPropagation(),!h&&r(e.id)},"aria-expanded":n&&!h,"aria-label":`Assign complaint ${e.title||e.id}`,children:[s.jsx("span",{className:"ca-complaint-table__assignment-label",children:S}),s.jsx(pn,{size:14,"aria-hidden":"true"})]}),n&&!h&&typeof document<"u"?hc.createPortal(s.jsxs("div",{ref:l,className:"ca-complaint-table__assignment-menu","data-assignment-menu":"true",role:"menu",style:i||{visibility:"hidden"},onClick:b=>b.stopPropagation(),children:[s.jsx("button",{type:"button",className:"ca-complaint-table__assignment-self",role:"menuitem",disabled:w||t.assignmentLoading||t.assignmentSaving,onClick:b=>{b.stopPropagation(),r(null),t.onAssign?.(e,t.currentUserId)},children:s.jsx("strong",{children:"Assign to me"})}),t.assignmentLoading?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Loading users…"}):null,t.assignmentSaving?s.jsx("span",{className:"ca-complaint-table__assignment-state",children:"Saving assignment…"}):null,t.assignmentError?s.jsxs("div",{className:"ca-complaint-table__assignment-error",children:[s.jsx("span",{children:t.assignmentError}),s.jsx("button",{type:"button",onClick:b=>{b.stopPropagation(),t.onRetryUsers?.(e.roleId)},children:"Retry"})]}):null,m.length>0?s.jsx("div",{className:"ca-complaint-table__assignment-others","aria-hidden":"true",children:"Others"}):null,m.map(b=>{const L=[b.firstName,b.lastName].filter(Boolean).join(" ").trim()||b.email;return s.jsxs("button",{type:"button",role:"menuitem",disabled:String(p)===String(b.id)||t.assignmentLoading||t.assignmentSaving,onClick:_=>{_.stopPropagation(),r(null),t.onAssign?.(e,b.id)},children:[s.jsx("strong",{children:L}),b.email?s.jsx("span",{children:b.email}):null]},b.id)})]}),document.body):null]})}function Hi(e,t,n={},r={}){const a=t[e.key]??"-";if(e.key==="status"||e.key==="escalationTo")return a;if(e.key==="assignedToUserName"){const o=zi(t,n.roleUsers??[]);return o.name?s.jsx("span",{className:"ca-complaint-table__ellipsis",title:o.tooltip,children:o.name}):"-"}return e.key==="actions"?s.jsxs("div",{className:"ca-complaint-table__action-cell",children:[s.jsx($g,{row:t,ctx:n,...r}),s.jsx("button",{type:"button",className:"ca-complaint-table__open-button","aria-label":`Open complaint ${t.title||t.id}`,onClick:o=>{o.stopPropagation(),n.onOpenComplaint?.(t)},children:s.jsx(nr,{size:16,"aria-hidden":"true"})})]}):Nn(e,a)&&$t(a).some(o=>typeof o=="string")?s.jsx(Ug,{value:a,urlMap:n.attachmentUrlMap}):a}function Ki({scrollFields:e,stickyFields:t,tableRows:n,fieldLabel:r,getCellContext:a,onOpenComplaint:o,page:l,itemsPerPage:i}){const[c,d]=y.useState(null);y.useEffect(()=>{if(c==null)return;const f=p=>{p.target.closest?.("[data-assignment-trigger], [data-assignment-menu]")||d(null)};return document.addEventListener("pointerdown",f),()=>document.removeEventListener("pointerdown",f)},[c]);const u=f=>{d(p=>String(p)===String(f)?null:f)};return s.jsxs("div",{className:"ca-complaint-table__scroll",children:[s.jsxs("table",{children:[s.jsx("thead",{children:s.jsxs("tr",{children:[s.jsx("th",{scope:"col",children:"#"}),e.map(f=>s.jsx("th",{scope:"col",className:yr(f.key,!0),children:r(f)},f.id)),s.jsx("th",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(f=>s.jsx("th",{scope:"col",className:yr(f.key,!0),children:r(f)},f.id))]})}),s.jsx("tbody",{children:n.map((f,p)=>{const w=a(f);w.onOpenComplaint=o;const S=f.assignedToUserId,m=S==null||S===""?"ca-complaint-table__row--unassigned":String(S)===String(w.currentUserId)?"ca-complaint-table__row--assigned-self":"ca-complaint-table__row--assigned-other";return s.jsxs("tr",{className:`${m}${o?" ca-complaint-table__clickable-row":""}`,role:o?"link":void 0,tabIndex:o?0:void 0,"aria-label":o?`Open complaint ${f.title||f.id}`:void 0,onClick:h=>{h.target.closest("button, a, select, input, textarea")||o?.(f)},onKeyDown:h=>{!o||h.key!=="Enter"&&h.key!==" "||h.target===h.currentTarget&&(h.preventDefault(),o(f))},children:[s.jsx("td",{children:(l-1)*i+p+1}),e.map(h=>s.jsx("td",{className:yr(h.key),children:Hi(h,f,w)},`${f.id??p}-${h.id}`)),s.jsx("td",{className:"ca-complaint-table__spacer","aria-hidden":"true"}),t.map(h=>s.jsx("td",{className:yr(h.key),children:Hi(h,f,w,{isOpen:String(c)===String(f.id),onToggle:u})},`${f.id??p}-${h.id}`))]},f.id??p)})})]}),n.length?null:s.jsx("div",{className:"ca-complaint-table__empty-overlay",children:s.jsx(Ya,{text:"No Complaint"})})]})}const Bg={id:"actions",label:"Actions",key:"actions"};function Yi(e,t,n=!0){return e==="mine"?t==null?{}:{assignedToUserId:t}:e==="unassigned"?{unassigned:!0}:n?{showAllComplaints:!0}:{}}async function jg({complaintTypeId:e,status:t,dateParams:n={},sort:r,assignmentParams:a={},escalationTo:o}){const l=await le.get(ca,{params:{...n,complaintTypeId:e,page:1,limit:_h,sort:r,...a,...o!=null&&o!==""&&o!=="all"?{escalationTo:o}:{},...t!=null&&t!==""&&t!=="all"?{status:t}:{}}});return Al(l.data)}function qg(e){return(Array.isArray(e?.roles)?e.roles:[]).map(n=>Number(n?.id??n?.roleId??n?.role_id??n)).filter(n=>Number.isFinite(n))}function Gi(e,t=[],n=[],r=null){const a=e?.hideForWorkflowStepId;if(a==null||a==="")return!0;const o=t.find(l=>String(l.id)===String(a));return!o||!Ji(o,n,r)}function Vg(e){return([e?.userAssignments,e?.users,e?.userIds,e?.assignedUsers].find(Array.isArray)??[]).map(n=>Number(n&&typeof n=="object"?n.userId??n.id??n.user?.id:n)).filter(Number.isFinite)}function Ji(e,t=[],n=null){return(Array.isArray(e?.roleIds)?e.roleIds.map(Number):[]).some(a=>t.includes(a))?!0:n!=null&&Vg(e).includes(Number(n))}function Wg(){const{fieldLabel:e}=tt(),t=Q.useDispatch(),n=Pe(),r=xe(),{complaintTypeId:a}=mt(),[o]=Ls(),l=Q.useSelector(U=>U.appDetails?.id),i=Th(a,o.get("complaintTypeId"),l,Lh()),{list:c=[],isLoading:d=!1,error:u=null,hasLoaded:f=!1,requestedComplaintTypeId:p=null,meta:w=null}=Q.useSelector(U=>U.complaintManagement??{}),S=Q.useSelector(U=>U.status?.list??[]),m=Q.useSelector(U=>U.changeStatus?.updatingId??null),h=Q.useSelector(U=>U.roleUsers??{}),g=Q.useSelector(U=>U.workflow?.workflowSteps),b=Q.useSelector(U=>U.appDetails?.details?.currentUser),L=Q.useSelector(U=>U.appDetails?.details?.storeList),_=y.useMemo(()=>Bh(L),[L]),x=y.useMemo(()=>S.map(U=>U.name).filter(Boolean),[S]),T=y.useMemo(()=>Array.isArray(g)?g:Array.isArray(g?.steps)?g.steps:[],[g]),V=y.useMemo(()=>qg(b),[b]),R=b?.id??b?.userId??null,Z=Q.useSelector(U=>{const ee=U.complaintType?.selected,ce=Array.isArray(ee?.accesses)?ee.accesses.map(Ce=>Ce?.role?.id??Ce?.role?.roleId??Ce?.roleId).map(Number).filter(Number.isFinite):[];return ce.length?ce:(Array.isArray(ee?.roleIds)?ee.roleIds:Array.isArray(ee?.roles)?ee.roles:[]).map(Ce=>Number(Ce?.id??Ce?.roleId??Ce?.role_id??Ce)).filter(Ce=>Number.isFinite(Ce))}),q=Q.useSelector(U=>{const ee=U.complaintType?.selected;return ee?.isActive!=null?!!ee.isActive:ee?.active!=null?!!ee.active:!0}),[K,$]=y.useState({complaintTypeId:null,status:"all"}),[G,I]=y.useState({complaintTypeId:null,direction:yl}),[D,j]=y.useState({complaintTypeId:null,level:"all"}),[H,E]=y.useState({complaintTypeId:null,value:"all",explicitlySelected:!1}),[M,C]=y.useState(1),[F,O]=y.useState(wh),[W,J]=y.useState([]),[te,k]=y.useState({}),[A,N]=y.useState(!1),[z,X]=y.useState(null),[ae,ue]=y.useState([]),[fe,pe]=y.useState(!1),[he,ne]=y.useState({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),me=String(he.complaintTypeId)===String(i)&&he.preset?he:null,ke=y.useMemo(()=>Ig(me),[me]),Ae=String(K.complaintTypeId)===String(i)?K.status:"all",ut=String(G.complaintTypeId)===String(i)?G.direction:yl,Ye=String(D.complaintTypeId)===String(i)?D.level:"all",je=String(H.complaintTypeId)===String(i)?H.value:"all",N0=String(H.complaintTypeId)===String(i)&&H.explicitlySelected,vr=(U,ee="success")=>{const ce=`${Date.now()}-${Math.random()}`;ue(Ee=>[...Ee,{id:ce,message:U,type:ee}])},A0=U=>ue(ee=>ee.filter(ce=>ce.id!==U));y.useEffect(()=>{!i||a||(Cl(i),n(`/complaintmanagement/${i}`,{replace:!0}))},[i,n,a]),y.useEffect(()=>{if(!i||!a)return;Cl(i),t(lt(i)),t(Wo()),t(Yo()),t($p());const U=t(Tt(i)),ee=t(Jn(i)),ce=t(We(i)),Ee=t(De(i)),Ce=t(Xe(i));return Ee.unwrap().then(rs=>J(Ah(rs))).catch(()=>J([])),()=>{U.abort?.(),ee.abort?.(),ce.abort?.(),Ee.abort?.(),Ce.abort?.()}},[i,t,a]),y.useEffect(()=>{if(!i||!a)return;const U=t(Gn({complaintTypeId:i,page:M,limit:F,status:Ae==="all"?void 0:Ae,sort:ut===bl?"createdAt":"-createdAt",...Yi(je,R),escalationTo:Ye==="all"?void 0:Ye,...ke}));return()=>U.abort?.()},[i,R,ke,t,F,M,a,je,ut,Ye,Ae]);const E0=Z.some(U=>V.includes(U)),ft=y.useMemo(()=>p!=null&&i!=null&&String(p)!==String(i)?[]:c.map(ee=>({...Ol(_l(ee,S,T),_),_fields:ee?.formField||[]})),[i,c,p,S,T,_]),lc=y.useMemo(()=>[...new Set(ft.map(U=>U.roleId).filter(U=>U!=null).map(String))],[ft]);y.useEffect(()=>{lc.forEach(U=>{!h.usersByRoleId?.[U]&&!h.loadingByRoleId?.[U]&&!h.errorByRoleId?.[U]&&t(un(U))})},[t,lc,h.errorByRoleId,h.loadingByRoleId,h.usersByRoleId]);const L0=y.useMemo(()=>[...new Set(T.map((U,ee)=>Number(U.levelNo??ee+1)))].sort((U,ee)=>U-ee),[T]),ts=y.useMemo(()=>Nl(ft,W).filter(U=>Gi(U,T,V,R)),[ft,W,T,V,R]),T0=vl(ts),ic=U=>{const ee=U.assignedToUserId;return ee==null||ee===""?0:String(ee)===String(R)?1:2},An=ft.map(({_fields:U,...ee})=>ee).sort((U,ee)=>ic(U)-ic(ee)),ns=y.useMemo(()=>Pg(ts,ft),[ts,ft]),I0=ns.every(U=>Object.prototype.hasOwnProperty.call(te,U));y.useEffect(()=>{const U=ns.filter(ce=>!Object.prototype.hasOwnProperty.call(te,ce));if(!U.length)return;let ee=!1;return Promise.all(U.map(async ce=>{try{const Ee=await t(dn({params:{path:ce}})).unwrap();return[ce,Ee]}catch{return[ce,""]}})).then(ce=>{ee||k(Ee=>({...Ee,...Object.fromEntries(ce)}))}),()=>{ee=!0}},[ns,te,t]);const wr=Eh(w,M,F,An.length),cc=!!(i&&!u&&(!An.length&&(d||!f)||An.length>0&&!I0)),F0=U=>{C(1),$({complaintTypeId:i,status:U})},k0=U=>{U>=1&&U<=wr.totalPages&&U!==M&&C(U)},O0=U=>{const ee=Number(U);!Number.isFinite(ee)||ee<=0||ee===F||(O(ee),C(1))},D0=U=>{C(1),I({complaintTypeId:i,direction:U})},M0=U=>{C(1),j({complaintTypeId:i,level:U})},x0=U=>{C(1),E({complaintTypeId:i,value:U,explicitlySelected:!0})},P0=U=>{C(1),ne({complaintTypeId:i,...U}),pe(!1)},U0=()=>{C(1),ne({complaintTypeId:null,field:"updated",preset:"",from:"",to:""}),pe(!1)},$0=()=>{i&&n(`/complaintmanagement/new/${i}`)},B0=U=>{if(U?.id==null||!i)return;const ee=r.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement";n(`/${ee}/${i}/details/${U.id}`)},dc=U=>{const ee=T.find(ce=>String(ce.id)===String(U?.currentStepId));return!ee||Ji(ee,V,R)},j0=async(U,ee)=>{if(U?.id==null||ee==null||m!=null||U.isClosed||String(U.assignedToUserId)===String(ee))return;if(!dc(U)){vr("Only users in the current level can assign this complaint.","error");return}if(!(U.assignedToUserId!=null&&U.assignedToUserId!==""&&String(U.assignedToUserId)===String(R))&&String(ee)!==String(R)){vr("Please assign this complaint to yourself first. Then you can assign it to others.","error");return}try{await t(Lt({id:U.id,assignedToUserId:ee})).unwrap(),vr("Complaint assigned successfully","success")}catch(Ee){vr(Ee?.message??"Failed to assign complaint","error")}},q0=U=>({roleUsers:h.usersByRoleId?.[String(U.roleId)]??[],assignmentLoading:!!h.loadingByRoleId?.[String(U.roleId)],assignmentError:h.errorByRoleId?.[String(U.roleId)]??null,assignmentSaving:m!=null,currentUserId:R,canAssign:dc(U),onAssign:j0,onRetryUsers:ee=>t(un(ee)),attachmentUrlMap:te});return{complaintTypeId:i,canCreateComplaint:E0,isComplaintTypeActive:q,statusNames:x,selectedStatus:Ae,selectedCreatedAtSort:ut,selectedLevel:Ye,selectedAssignment:je,workflowLevels:L0,isDownloadingReport:A,onStatusChange:F0,onCreatedAtSortChange:D0,onLevelChange:M0,onAssignmentChange:x0,dateFilter:me,hasDateFilter:!!me,isDateFilterOpen:fe,onOpenDateFilter:()=>pe(!0),onCloseDateFilter:()=>pe(!1),onApplyDateFilter:P0,onResetDateFilter:U0,onNewComplaint:$0,onDownloadReport:async()=>{if(!(!i||A)){N(!0),X(null);try{const U=Yi(je,R,N0),ce=(await jg({complaintTypeId:i,status:Ae,dateParams:ke,sort:ut===bl?"createdAt":"-createdAt",assignmentParams:U,escalationTo:Ye})).map(Ge=>({...Ol(_l(Ge,S,T),_),_fields:Ge?.formField||[]})).filter(Ge=>Ye==="all"||String(T.find(V0=>String(V0.id)===String(Ge.currentStepId))?.levelNo??Ge.level)===String(Ye)),Ee=Nl(ce,W).filter(Ge=>Gi(Ge,T,V,R)),Ce=vl(Ee).filter(Ge=>!Mh(Ge,ce,Nn)),rs=new Blob([xh(Ce,ce)],{type:"text/csv;charset=utf-8;"}),uc=URL.createObjectURL(rs),En=document.createElement("a");En.href=uc,En.download=`complaints-report-${i}-${Date.now()}.csv`,document.body.appendChild(En),En.click(),document.body.removeChild(En),URL.revokeObjectURL(uc)}catch(U){X(U?.response?.data?.message??U?.message??"Failed to download report")}finally{N(!1)}}},error:u,downloadError:z,showLoading:cc,toasts:ae,onDismissToast:A0,tableProps:{scrollFields:T0.filter(U=>U.key!=="actions"),stickyFields:[Bg],tableRows:An,fieldLabel:e,getCellContext:q0,onOpenComplaint:B0,page:M,itemsPerPage:F},paginationProps:{currentPage:M,totalItems:wr.totalItems,itemsPerPage:F,onPageChange:k0,onItemsPerPageChange:O0,selectOptions:Ch,totalPages:wr.totalPages,disabled:cc,hasRows:!!(wr.totalItems>0||An.length||M>1)}}}function zg({onHeaderActionsChange:e}){const t=Wg(),[n,r]=y.useState(""),a=y.useMemo(()=>{const o=n.trim().toLowerCase();return o?t.tableProps.tableRows.filter(l=>Object.values(l).some(i=>String(i??"").toLowerCase().includes(o))):t.tableProps.tableRows},[t.tableProps.tableRows,n]);return y.useEffect(()=>{e?.({search:n,onSearchChange:r,selectedStatus:t.selectedStatus,statusNames:t.statusNames,selectedCreatedAtSort:t.selectedCreatedAtSort,selectedLevel:t.selectedLevel,selectedAssignment:t.selectedAssignment,workflowLevels:t.workflowLevels,onStatusChange:t.onStatusChange,onCreatedAtSortChange:t.onCreatedAtSortChange,onLevelChange:t.onLevelChange,onAssignmentChange:t.onAssignmentChange,onNewComplaint:t.onNewComplaint,onOpenDateFilter:t.onOpenDateFilter,hasDateFilter:t.hasDateFilter,onDownloadReport:t.onDownloadReport,isDownloadingReport:t.isDownloadingReport,complaintTypeId:t.complaintTypeId,canCreateComplaint:t.canCreateComplaint,isComplaintTypeActive:t.isComplaintTypeActive})},[e,n,t.selectedStatus,t.statusNames,t.selectedCreatedAtSort,t.selectedLevel,t.selectedAssignment,t.workflowLevels,t.hasDateFilter,t.isDownloadingReport,t.complaintTypeId,t.canCreateComplaint,t.isComplaintTypeActive]),y.useEffect(()=>()=>e?.(null),[e]),s.jsxs("section",{className:"ca-complaint-table","aria-label":"Complaint records",children:[t.error?s.jsx("p",{className:"ca-body",children:t.error}):null,t.downloadError?s.jsx("p",{className:"ca-body",children:t.downloadError}):null,t.showLoading?s.jsx(ze,{text:"Loading complaints"}):s.jsx(Ki,{...t.tableProps,tableRows:a}),t.paginationProps.hasRows?s.jsx(qi,{...t.paginationProps}):null,s.jsx(Og,{open:t.isDateFilterOpen,initial:t.dateFilter,onApply:t.onApplyDateFilter,onReset:t.onResetDateFilter,onClose:t.onCloseDateFilter}),s.jsx(Eg,{toasts:t.toasts,onDismiss:t.onDismissToast})]})}const br=({onHeaderActionsChange:e})=>s.jsxs("main",{className:"ca-query-management-page",children:[s.jsx(_g,{}),s.jsx(zg,{onHeaderActionsChange:e})]}),Hg={CUSTOM:"Custom",TEXT:"Text",TEXTAREA:"Text Area",SELECT:"Select",DROPDOWN:"Dropdown",NUMBER:"Number",DATE:"Date",DATETIME:"Date Time",EMAIL:"Email",CHECKBOX:"Checkbox",RADIO:"Radio",FILE:"File",IMAGES:"Images",TIME:"Time"};function Ja(e){return typeof e=="string"?e:e?.label??""}function Kg(e=[]){const t=[...e].sort((n,r)=>(n.displayOrder??0)-(r.displayOrder??0));return t.map(n=>{const r=n.fieldName??n.fieldLabel??n.label??"",a=n.fieldKey??String(n.id),o=n?.options?.values??[],l=t.find(i=>i.id===n.dependsOnFieldId||n.dependsOnFieldKey&&i.fieldKey===n.dependsOnFieldKey);return{id:n.id,label:r,fieldKey:re({fieldKey:a,label:r})?"status":a,fieldType:Na(n.fieldType,Hg,n.fieldKey),required:!!n.required,dependsOn:n.dependsOnField?.fieldName??l?.fieldName??n.dependsOn??"",options:o.map(Ja).filter(Boolean),parentMappings:Object.fromEntries(o.map(i=>{const c=Ja(i),d=Gg(i);return!c||!d?null:[c,Jg(d,l?.options?.values??[])]}).filter(Boolean))}})}function Sr(e){const t=String(e||"").trim().split(/[^A-Za-z0-9]+/).filter(Boolean);return t.length?t[0].toLowerCase()+t.slice(1).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(""):""}function Yg(e){if(re(e))return"status";const t=String(e.fieldKey||"").trim();return t&&!/\s/.test(t)?t:Sr(e.label||t)}function Gg(e){return!e||typeof e!="object"?"":e.dependsOnValue??e.parent??""}function Jg(e,t=[]){if(!e)return"";const n=t.map(Ja).filter(Boolean),r=n.find(o=>o===e);return r||n.find(o=>Sr(o)===e||Sr(o)===Sr(e))||e}function Zg(e,t=[],n={}){const r=e.options||[],a=String(e.dependsOn||"").trim();if(!a)return r;const o=t.find(d=>String(d.label||"").trim()===a||String(d.fieldKey||"").trim()===a);if(!o)return r;const l=e.parentMappings||{};if(!r.some(d=>!!l[d]))return r;const c=String(n[ie(o)]||"").trim();return c?r.filter(d=>String(l[d]||"")===c):r}function Za(e){return Bt(e)==="checkbox"}function Xg(e,t){const n=String(t||"").trim();return n&&e.find(r=>String(r.label||"").trim()===n||String(r.fieldKey||"").trim()===n)||null}function Zi(e,t){const n=String(t?.label||"").trim();return n&&e.find(r=>String(r.dependsOn||"").trim()===n)||null}function Qg(e,t,n){const r={},a=Array.isArray(t)?t[0]:t;if(!a)return r;let o=e,l=a;for(;o?.dependsOn;){const i=Xg(n,o.dependsOn);if(!i)break;const c=(o.parentMappings||{})[l];if(!c)break;r[ie(i)]=Za(i)?[c]:c,o=i,l=c}for(o=e,l=a;o;){const i=Zi(n,o);if(!i)break;const c=i.parentMappings||{},d=Object.keys(c).find(u=>c[u]===l);if(!d)break;r[ie(i)]=Za(i)?[d]:d,o=i,l=d}return r}function Xa(e){return Array.isArray(e)?e.filter(t=>t!=null&&t!==""):e==null||e===""?[]:[e]}function Rg(e,t,n,r,a){const o={},l=Xa(n);let i=Xa(t).filter(d=>!l.includes(d)),c=e;for(;c&&i.length;){const d=Zi(r,c);if(!d)break;const u=d.parentMappings||{},f=ie(d),p=Xa(o[f]??a[f]),w=p.filter(m=>i.includes(u[m]));if(!w.length)break;const S=p.filter(m=>!w.includes(m));o[f]=Za(d)?S:S[0]??"",i=w,c=d}return o}function ie(e){return String(e.fieldKey||e.id||e.label)}function Bt(e){const t=String(e.fieldType||"").toLowerCase();return t==="textarea"||t==="text area"?"textarea":t==="date"?"date":t==="date time"||t==="datetime"||t==="datetime-local"?"datetime-local":t==="time"?"time":t==="email"?"email":t==="number"||t==="mobile"?"number":t==="radio"?"radio":t==="checkbox"||t==="multiselect"?"checkbox":t==="file"?"file":t==="images"?"images":(t==="dropdown"||t==="select"||t==="custom")&&e.options.length?"select":"text"}function Xi(e){return`new-query-${e.id??ie(e)}`}function Qi(e){if(re(e))return(e.options||[]).find(r=>String(r).trim().toLowerCase()==="open")||"Open";const t=Bt(e);return t==="checkbox"||t==="file"||t==="images"?[]:""}function Ri(e){return Array.isArray(e)?e.map(t=>typeof File<"u"&&t instanceof File?t.name:t):typeof File<"u"&&e instanceof File?e.name:e??""}function Qa(e,t){if(e==null)return t?.name||"";if(typeof e=="string"||typeof e=="number")return String(e);const n=e.file&&typeof e.file=="object"?e.file:e,r=n.path||n.id||t?.name||"",a=n.originalName||t?.name||"";return a&&r&&String(r)!==a?`${r}::${a}`:r}async function e0(e,t,n){const r=Bt(t);if(r==="file"&&typeof File<"u"&&n instanceof File){const a=await e(It({file:n,folder:"complaints"})).unwrap();return Qa(a,n)}return r==="file"&&Array.isArray(n)?Promise.all(n.map(async a=>{if(typeof File<"u"&&a instanceof File){const o=await e(It({file:a,folder:"complaints"})).unwrap();return Qa(o,a)}return a})):r==="images"&&Array.isArray(n)?await Promise.all(n.map(async o=>{if(typeof File<"u"&&o instanceof File){const l=await e(It({file:o,folder:"complaints"})).unwrap();return Qa(l,o)}return o})):Ri(n)}async function t0(e=[],t={},n){const r={};for(const a of e){const o=Yg(a);o&&(r[o]=await e0(n,a,t[ie(a)]))}return r}function ec(e){return Array.isArray(e)?e.length===0:typeof File<"u"&&e instanceof File?!1:e==null||String(e).trim()===""}function n0(e){return/^\d+$/.test(String(e).trim())}function r0(e=[],t={}){for(const n of e){const r=Bt(n),a=t[ie(n)],o=n.label||"This field";if(n.required&&ec(a))return`${o} is required.`;if(!ec(a)&&r==="number"&&!n0(a))return`${o} must be a valid number.`}return""}function a0({field:e,value:t,onChange:n,storeList:r,options:a=e.options}){const{fieldLabel:o}=tt(),l=Bt(e),i=Xi(e),c=re(e);if(Re(e)&&Array.isArray(r))return s.jsx(ki,{id:i,name:ie(e),required:e.required,storeList:r,value:t,onChange:n});if(l==="radio")return s.jsx("div",{className:"review-options review-options--inline",children:a.map(d=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${d}`,children:[s.jsx("input",{id:`${i}-${d}`,name:ie(e),type:"radio",value:d,checked:t===d,onChange:u=>n(u.target.value),required:e.required,disabled:c}),s.jsx("span",{children:d})]},d))});if(l==="checkbox"){const d=Array.isArray(t)?t:[];return s.jsx("div",{className:"review-options review-options--inline",children:a.map(u=>s.jsxs("label",{className:"review-option",htmlFor:`${i}-${u}`,children:[s.jsx("input",{id:`${i}-${u}`,name:`${ie(e)}[]`,type:"checkbox",value:u,checked:d.includes(u),onChange:f=>n(f.target.checked?[...d,u]:d.filter(p=>p!==u))}),s.jsx("span",{children:u})]},u))})}if(l==="textarea")return s.jsx("textarea",{id:i,name:ie(e),className:"review-control review-control--textarea",value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c});if(l==="file")return s.jsx(gr,{id:i,name:ie(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="images")return s.jsx(gr,{id:i,name:ie(e),value:t,onChange:n,multiple:!0,required:e.required,disabled:c});if(l==="number")return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:"number",inputMode:"numeric",value:t,onChange:d=>n(String(d.target.value).replace(/[^\d]/g,"")),onKeyDown:d=>{(d.key==="e"||d.key==="E"||d.key==="+"||d.key==="-"||d.key===".")&&d.preventDefault()},required:e.required,disabled:c});if(l==="select"){const d=(a||[]).includes(t)||!c||!t?a:[t,...a];return s.jsxs("select",{id:i,name:ie(e),className:"review-control",value:t,onChange:u=>n(u.target.value),required:e.required,disabled:c,children:[c?null:s.jsxs("option",{value:"",children:["Select ",o(e)]}),d.map(u=>s.jsx("option",{value:u,children:u},u))]})}return s.jsx("input",{id:i,name:ie(e),className:"review-control",type:l,value:t,onChange:d=>n(d.target.value),required:e.required,disabled:c})}function tc({storeList:e}={}){const{fieldLabel:t}=tt(),n=Q.useDispatch(),r=Pe(),{complaintTypeId:a}=mt(),o=Number(a),l=Number.isFinite(o)&&o>0,[i,c]=y.useState([]),[d,u]=y.useState({}),[f,p]=y.useState(!0),[w,S]=y.useState(!1),[m,h]=y.useState(""),[g,b]=y.useState(""),[L,_]=y.useState(""),[x,T]=y.useState(""),V=Q.useSelector($=>{const G=$.complaintType??{},D=(Array.isArray(G.complaintList)?G.complaintList:[]).find(j=>String(j?.id??j?._id)===String(a))??(String(G.selected?.id??G.selected?._id)===String(a)?G.selected:null);return String(D?.name??D?.code??"").trim()}),R=V||x;y.useEffect(()=>{if(!l||V)return;let $=!1;return n(Xe(o)).unwrap().then(G=>{if($)return;const I=G?.data??G;T(String(I?.name??I?.code??"").trim())}).catch(()=>{}),()=>{$=!0}},[o,V,n,l]),y.useEffect(()=>{if(!l)return;let $=!1;return n(De(o)).unwrap().then(G=>{if($)return;const I=Kg(Array.isArray(G?.data)?G.data:G);c(I),u(Object.fromEntries(I.map(D=>[ie(D),Qi(D)])))}).catch(G=>{$||h(typeof G=="string"?G:G?.message||"Failed to load form fields.")}).finally(()=>{$||p(!1)}),()=>{$=!0}},[o,n,l]);const Z=y.useMemo(()=>i.length>0,[i]),q=async $=>{if($.preventDefault(),!l){h("A valid complaint type is required.");return}h(""),b(""),S(!0);const G=r0(i,d);if(G){h(G),S(!1);return}try{const I=await t0(i,d,n),D=i.findIndex(re),j=i[D+1],E=(j?[].concat(Ri(d[ie(j)])).join(", ").trim():"")||R;if(!E){h("Title is required. Please fill the first field.");return}await n(Xn({complaintTypeId:o,title:E,fieldValues:I})).unwrap(),b("Query submitted successfully."),r(`/complaintmanagement/${o}/all`)}catch(I){h(typeof I=="string"?I:I?.message||"Failed to submit query.")}finally{S(!1)}},K=$=>{const G=Zg($,i,d);return s.jsxs("div",{className:`review-question${["textarea","radio","checkbox"].includes(Bt($))?" review-question--wide":""}`,children:[s.jsxs("label",{className:"review-label",htmlFor:Xi($),children:[t($)||"Untitled field",$.required?s.jsx("span",{className:"review-required",children:"*"}):null]}),s.jsx(a0,{storeList:e,field:$,options:G,value:d[ie($)]??Qi($),onChange:I=>{re($)||u(D=>{const j=Rg($,D[ie($)],I,i,D),H=Qg($,I,i);return{...D,[ie($)]:I,...j,...H}})}})]},$.id??ie($))};return s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-query-details","aria-labelledby":"new-query-title",children:[s.jsx("div",{className:"ca-query-details__heading",children:s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>r(-1),"aria-label":"Back to Complaint Management",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsx("h1",{id:"new-query-title",className:"ca-query-details__title",children:"New Complaint"})]})}),m||!l?s.jsx("div",{className:"ca-validation-toast",role:"alert",children:m||"A valid complaint type is required."}):null,f&&l?s.jsx(ze,{text:"Loading form fields"}):null,l&&!f&&Z?s.jsxs("form",{className:"review-form-card",onSubmit:q,children:[s.jsx("div",{className:"review-form-grid",children:i.map($=>s.jsx(y.Fragment,{children:re($)?null:K($)},$.id??ie($)))}),s.jsx("div",{className:"ca-new-query__actions",children:s.jsx(ye,{type:"submit",disabled:w,children:w?"Submitting...":"Submit Complaint"})}),g?s.jsx("p",{className:"ca-body",children:g}):null]}):null]})})}const Ra=[];function s0(e,t=200,n=null){const r=Q.useDispatch(),a=Q.useSelector(S=>S.appDetails?.details?.userList)??Ra,o=Q.useSelector(S=>S.status?.list)??Ra,[l,i]=y.useState({key:null,complaints:[],error:null}),c=e==null||e===""?null:`${e}:${t}`;y.useEffect(()=>{if(e==null||e==="")return;const S=r(Tt(e));return()=>S.abort?.()},[e,r]),y.useEffect(()=>{if(e==null||e==="")return;let S=!1;const m=`${e}:${t}`;return le.get(ca,{params:{complaintTypeId:e,page:1,limit:t}}).then(h=>{S||i({key:m,complaints:Al(h.data),error:null})}).catch(h=>{S||i({key:m,complaints:[],error:h?.response?.data?.message??h?.message??"Failed to load complaints"})}),()=>{S=!0}},[e,t]);const d=l.key===c,u=d?l.complaints:Ra,f=d?l.error:null,p=c!==null&&!d;return{rows:y.useMemo(()=>{const S={tatMinutes:Number(n)||0},m=g=>{const b=new Date(g?.createdAt??g?.submittedAt??g?.date??0).getTime();return Number.isNaN(b)?0:b},h=g=>Number(g?.complaintId??g?.id)||0;return[...u].sort((g,b)=>m(b)-m(g)||h(b)-h(g)).map(g=>kl(g,o,a,S))},[u,o,a,n]),isLoading:p,error:f}}function o0(){const e=Q.useDispatch(),t=Pe(),n=xe(),{complaintTypeId:r}=mt(),a=Q.useSelector(d=>{const u=d.complaintType??{};return(Array.isArray(u.complaintList)?u.complaintList:[]).find(p=>String(p?.id??p?._id)===String(r))??(String(u.selected?.id??u.selected?._id)===String(r)?u.selected:null)}),{rows:o,isLoading:l,error:i}=s0(r,void 0,a?.tatMinutes),c=y.useCallback(d=>{t(`/complaintmanagement/${r}/details/${d.id}`,{state:{from:n.pathname}})},[r,n.pathname,t]);return y.useEffect(()=>{!a&&r&&e(Xe(r))},[r,e,a]),s.jsx("main",{className:"ca-query-management-page",children:s.jsxs("section",{className:"ca-filler-list",children:[s.jsxs("div",{className:"ca-query-details__heading",children:[s.jsxs("div",{className:"ca-query-details__title-row",children:[s.jsx("button",{type:"button",className:"ca-settings-page__back",onClick:()=>t("/"),"aria-label":"Back to Complaints",children:s.jsx("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none","aria-hidden":"true",children:s.jsx("path",{d:"M15 6l-6 6 6 6",stroke:"currentColor",strokeWidth:"2.2",strokeLinecap:"round",strokeLinejoin:"round"})})}),s.jsxs("div",{children:[s.jsxs("h1",{className:"ca-query-details__title",children:[a?.name??a?.title??"Complaints",o.length?` (${o.length})`:""]}),s.jsx("p",{className:"ca-filler-card__desc",children:a?.description||" "})]})]}),s.jsx(ye,{startIcon:s.jsx(ql,{size:14}),onClick:()=>t(`/complaintmanagement/new/${r}`),disabled:a?.isActive===!1||a?.active===!1,children:"Add Complaint"})]}),i?s.jsx("p",{className:"ca-body",children:i}):null,l?s.jsx(ze,{text:"Loading complaints"}):null,!l&&!i&&!o.length?s.jsx(Ya,{text:"No Complaint"}):null,l?null:o.map(d=>s.jsx(Yl,{row:d,onClick:c},d.id))]})})}function es(e,t={}){if(!e)return"—";const n=new Date(e);return Number.isNaN(n.getTime())?"—":new Intl.DateTimeFormat(void 0,{day:"numeric",month:"short",year:"numeric",...t}).format(n)}function nc(e){return e==null||e===""?"—":Array.isArray(e)?e.map(nc).join(", "):typeof e=="object"?e.name??e.label??JSON.stringify(e):String(e)}function rc({label:e,value:t,fieldType:n,attachmentUrls:r}){const o=Nn({fieldType:n},t)?$t(t):[];return s.jsxs("div",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:e||"Field"}),o.length?s.jsx("div",{className:"ca-complaint-details__attachments",children:o.map((l,i)=>{const c=dt(l),d=r[c]||(typeof l=="string"&&/^https?:\/\//i.test(c)?c:""),u=_n(l).split("/").pop();return d&&/\.(png|jpe?g|gif|webp|bmp|svg)(?:\?.*)?$/i.test(u)?s.jsx("a",{className:"ca-complaint-details__image-link",href:d,target:"_blank",rel:"noreferrer","aria-label":`View ${u}`,children:s.jsx("img",{src:d,alt:u})},`${c}-${i}`):d?s.jsx("a",{className:"ca-complaint-details__file",href:d,target:"_blank",rel:"noreferrer",children:u||"View attachment"},`${c}-${i}`):s.jsx("span",{className:"ca-complaint-details__file",children:u||"Attachment"},`${c}-${i}`)})}):s.jsx("span",{className:"ca-complaint-details__field-value",children:nc(t)})]})}function l0({activities:e=[],fallbackRemarks:t=[],localRemarks:n=[],createdAt:r,isLoading:a,error:o,onRetry:l}){const i=y.useMemo(()=>{const d=[...e.length?e.map((f,p)=>{const w=f.action??f.activityType??f.type??"",S=f.description??f.remarks??f.remark??f.message??f.title??(typeof w=="string"?w:"")??"Complaint updated",m=/submit|created/i.test(`${w} ${S}`)?"created":"remark",h=[f.createdByFirstName,f.createdByLastName].filter(g=>g!=null&&String(g).trim()!=="").join(" ").trim();return{id:f.id??`${f.createdAt??f.timestamp??"activity"}-${p}`,type:m,text:S||"Complaint updated",author:f.createdByUserName||h||f.userName||f.actorName||f.createdBy?.name||f.user?.name,createdAt:f.createdAt??f.timestamp??f.occurredAt,fromLevelNo:f.fromLevelNo??f.oldLevelNo??f.fromLevel?.levelNo,toLevelNo:f.toLevelNo??f.newLevelNo??f.toLevel?.levelNo}}):[...t.map((f,p)=>({id:`${f.createdAt||"remark"}-${p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],...n.map((f,p)=>({id:f.id??`local-${f.createdAt??p}`,type:"remark",text:f.remark||"Complaint updated",author:f.createdByUserName,createdAt:f.createdAt,fromLevelNo:f.fromLevelNo,toLevelNo:f.toLevelNo}))],u=d.some(f=>f.type==="created"||/complaint submitted/i.test(f.text));return r&&!u&&d.push({id:`created-${r}`,type:"created",text:"Complaint submitted",createdAt:r}),d.sort((f,p)=>new Date(p.createdAt||0)-new Date(f.createdAt||0))},[e,r,t,n]);return s.jsxs("aside",{className:"ca-complaint-details__activity","aria-label":"Activity log",children:[s.jsxs("div",{className:"ca-complaint-details__activity-heading",children:[s.jsx("h2",{children:"Activity log"}),s.jsx("span",{children:i.length})]}),a?s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"Loading activity…"}):null,o?s.jsxs("div",{className:"ca-complaint-details__activity-empty",role:"alert",children:[s.jsx("p",{children:o}),s.jsx("button",{type:"button",onClick:l,children:"Retry"})]}):null,i.length?s.jsx("ol",{className:"ca-complaint-details__activity-list",children:i.map((c,d)=>s.jsxs("li",{className:"ca-complaint-details__activity-item",children:[s.jsx("span",{className:`ca-complaint-details__activity-icon ca-complaint-details__activity-icon--${c.type}`,"aria-hidden":"true",children:d===0?s.jsx(Qh,{size:14,strokeWidth:1.8}):s.jsx(Xh,{size:14,strokeWidth:1.8})}),s.jsxs("div",{className:"ca-complaint-details__activity-content",children:[s.jsx("p",{children:c.text}),c.type==="remark"||c.author?s.jsxs(s.Fragment,{children:[c.fromLevelNo!=null||c.toLevelNo!=null?s.jsxs("span",{className:"ca-complaint-details__activity-levels",children:[c.fromLevelNo!=null?`L${c.fromLevelNo}`:"—"," → ",c.toLevelNo!=null?`L${c.toLevelNo}`:"—"]}):null,c.author?s.jsx("span",{className:"ca-complaint-details__activity-author",children:c.author}):null]}):null,s.jsx("time",{dateTime:c.createdAt,children:es(c.createdAt,{hour:"numeric",minute:"2-digit"})})]})]},c.id))}):s.jsx("p",{className:"ca-complaint-details__activity-empty",children:"No activity yet"})]})}function i0({complaintId:e,complaintTypeId:t}){const n=Q.useDispatch(),r=Pe(),a=xe(),o=a.pathname.startsWith("/querymanagement")?"querymanagement":"complaintmanagement",{data:l,isLoading:i,error:c}=Q.useSelector(A=>A.complaintsGetOne??{}),d=Q.useSelector(A=>A.activityLog??{}),u=Q.useSelector(A=>A.status?.list??[]),f=Q.useSelector(A=>A.workflow?.workflowSteps),p=Q.useSelector(A=>A.appDetails?.details?.currentUser),w=p?.id??p?.userId??null,{isLoading:S}=Q.useSelector(A=>A.changeStatus??{}),[m,h]=y.useState({}),[g,b]=y.useState(null),[L,_]=y.useState(null),[x,T]=y.useState(""),[V,R]=y.useState(""),Z=y.useMemo(()=>Array.isArray(f)?f:Array.isArray(f?.steps)?f.steps:[],[f]);y.useEffect(()=>{n(Jp()),n(nh());const A=n(Ft(e)),N=n(kt(e));return()=>{A.abort?.(),N.abort?.()}},[e,n]),y.useEffect(()=>{if(!t)return;const A=n(Tt(t)),N=n(We(t));return()=>{A.abort?.(),N.abort?.()}},[t,n]);const q=Array.isArray(l?.fieldValues)?l.fieldValues:[],K=y.useMemo(()=>{const A=new Set;return(Array.isArray(l?.fieldValues)?l.fieldValues:[]).forEach(N=>{Nn(N?.formField,N?.value)&&$t(N.value).forEach(z=>{typeof z=="string"&&A.add(dt(z))})}),[...A]},[l]);y.useEffect(()=>{const A=K.filter(z=>!Object.prototype.hasOwnProperty.call(m,z));if(!A.length)return;let N=!1;return Promise.all(A.map(async z=>{try{const X=await n(dn({params:{path:z}})).unwrap();return[z,X]}catch{return[z,""]}})).then(z=>{N||h(X=>({...X,...Object.fromEntries(z)}))}),()=>{N=!0}},[K,m,n]);const $=()=>r(a.state?.from||`/${o}/${t}`),G=g??(l?.statusId==null?"":String(l.statusId)),I=L??(l?.currentStepId==null?"":String(l.currentStepId)),D=y.useMemo(()=>Z.find(A=>String(A.id)===String(l?.currentStepId)),[l?.currentStepId,Z]),j=D??l?.currentWorkflowStep,H=(Array.isArray(p?.roles)?p.roles:[]).map(A=>Number(A?.id??A?.roleId??A?.role_id??A)).filter(Number.isFinite),E=y.useMemo(()=>{if(!j)return!1;const A=Array.isArray(j.roleIds)&&j.roleIds.some(X=>H.includes(Number(X))),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]),M=!ba(l?.status?.name)&&w!=null&&String(l?.assignedToUserId)===String(w)&&(!D||E),C=y.useMemo(()=>[...Z].sort((A,N)=>Number(A.levelNo??0)-Number(N.levelNo??0)),[Z]),F=y.useMemo(()=>C.find(A=>String(A.id)===String(I))??(String(l?.currentStepId)===String(I)?l?.currentWorkflowStep:null),[l?.currentStepId,l?.currentWorkflowStep,I,C]),O=Number(F?.levelNo??0),W=y.useMemo(()=>new Set(C.filter((A,N)=>{const z=Number(A.levelNo??N+1);return z===O||z===O+1||z===O-1&&O>1&&tr(F?.canReassign)}).map(A=>String(A.id))),[O,F?.canReassign,C]),J=l?.remarks,te=y.useMemo(()=>[...Array.isArray(J)?J:[]],[J]),k=async()=>{if(!l?.id||S)return;R("");const A=x.trim();try{await n(Lt({id:l.id,statusId:G,currentStepId:I,assignedToUserId:w,remark:A})).unwrap(),b(null),_(null),T(""),await n(Ft(e)).unwrap(),await n(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?.complaintType?.description?s.jsx("span",{children:l.complaintType.description}):null]}),l?s.jsx("button",{className:"ca-complaint-details__update",type:"button",onClick:k,disabled:S||!M,children:S?"Updating…":"Update"}):null]}),i?s.jsx(ze,{text:"Loading complaint details"}):null,!i&&c?s.jsxs("div",{className:"ca-complaint-details__error",role:"alert",children:[s.jsx("p",{children:c}),s.jsx("button",{type:"button",onClick:()=>n(Ft(e)),children:"Try again"})]}):null,!i&&!c&&l?s.jsxs("div",{className:"ca-complaint-details__layout",children:[s.jsxs("section",{className:"ca-complaint-details__main","aria-label":"Complaint information",children:[s.jsxs("div",{className:"ca-complaint-details__summary",children:[s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Status"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:G,disabled:!M,onChange:A=>b(A.target.value),children:[u.map(A=>{const z=!(String(A.id)===String(l.statusId))&&kh(A.name)&&!tr(j?.canResolve??l.currentWorkflowStep?.canResolve);return s.jsx("option",{value:A.id,disabled:z,children:A.name},A.id)}),u.some(A=>String(A.id)===String(G))?null:s.jsx("option",{value:G,children:l.status?.name||"—"})]}),M?s.jsx(pn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),s.jsxs("label",{className:"ca-complaint-details__field",children:[s.jsx("span",{className:"ca-complaint-details__field-label",children:"Escalation to"}),s.jsxs("span",{className:"ca-complaint-details__select-wrap",children:[s.jsxs("select",{className:"ca-complaint-details__control",value:I,disabled:!M,onChange:A=>_(A.target.value),children:[C.filter(A=>W.has(String(A.id))).map(A=>s.jsxs("option",{value:A.id,children:["Level ",A.levelNo]},A.id)),C.some(A=>String(A.id)===String(I))?null:s.jsx("option",{value:I,children:l.currentWorkflowStep?.levelNo!=null?`Level ${l.currentWorkflowStep.levelNo}`:"—"})]}),M?s.jsx(pn,{className:"ca-complaint-details__select-chevron",size:16,strokeWidth:1.8,"aria-hidden":"true"}):null]})]}),q.map((A,N)=>s.jsx(rc,{label:A.formField?.fieldName??A.formField?.fieldKey??"Field",value:A.value,fieldType:A.formField?.fieldType,attachmentUrls:m},A.id??`${A.formField?.id??"field"}-${N}`)),s.jsx(rc,{label:"Created at",value:es(l.createdAt)})]}),s.jsxs("section",{className:"ca-complaint-details__remarks","aria-label":"Remarks",children:[s.jsx("h2",{children:"Remark"}),s.jsx("form",{className:"ca-complaint-details__remark-form",onSubmit:A=>{A.preventDefault()},children:s.jsx("input",{"aria-label":"Enter remark",value:x,onChange:A=>T(A.target.value),placeholder:"Enter remark"})}),V?s.jsx("p",{className:"ca-complaint-details__update-error",role:"alert",children:V}):null,te.length?s.jsx("ol",{className:"ca-complaint-details__remark-list",children:te.map((A,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:es(A.createdAt,{hour:"numeric",minute:"2-digit"})})]}),s.jsx("p",{children:A.remark})]},A.id??`${A.createdAt??"remark"}-${N}`))}):null]})]}),s.jsx(l0,{activities:d.activities,fallbackRemarks:te,createdAt:l.createdAt,isLoading:d.isLoading,error:d.error,onRetry:()=>n(kt(e))})]}):null]})}function ac(){const{complaintId:e,complaintTypeId:t}=mt();return s.jsx(i0,{complaintId:e,complaintTypeId:t},e)}function c0({pageProps:e={},onPublish:t,onStepChange:n,children:r}){const a=r??s.jsx(Gl,{...e});return s.jsxs(ld,{children:[s.jsx(_e,{path:"/",element:a}),s.jsx(_e,{path:"/settings/:systemId",element:s.jsx(ji,{onPublish:t,onStepChange:n,company:e.company,roleList:e.roleList,userList:e.userList,storeList:e.storeList})}),s.jsx(_e,{path:"complaintmanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),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(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(_e,{path:"complaintmanagement/:complaintTypeId/all",element:s.jsx(o0,{})}),s.jsx(_e,{path:"querymanagement",element:s.jsx(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),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(br,{onHeaderActionsChange:e.onHeaderActionsChange})}),s.jsx(_e,{path:"*",element:a})]})}function d0({pageProps:e,onPublish:t=a=>console.log(a),onStepChange:n=a=>console.log(a),children:r}){return s.jsx(c0,{pageProps:e,onPublish:t,onStepChange:n,children:r})}function u0({children:e}){const{cssVars:t,darkMode:n,mode:r}=Lo();return s.jsx("div",{className:`ca-root ${n?"ca-root--dark":"ca-root--light"}`,"data-ca-theme":r,style:t,children:e})}function f0({basePath:e,children:t}){return ht()?t:s.jsx(Cd,{basename:e,children:t})}function p0({store:e,children:t}){return s.jsx(Q.Provider,{store:e||ol,children:t})}function h0({details:e,children:t}){const n=Q.useDispatch();return y.useEffect(()=>{n(Mo(e))},[n,e]),t}const sc=[],oc=({apiUrl:e,authToken:t,store:n,basePath:r="/",theme:a,darkMode:o=!1,title:l,description:i,rolelist:c,roleList:d=c??sc,userList:u=sc,storeList:f,currentUser:p,company:w=p?.company,featureActions:S=ph,useDemoData:m=!0,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,onTitleClick:_,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onPublish:R,onSaveDraft:Z,showSaveButton:q,showNextButton:K,onStepChange:$,children:G})=>{const I={title:l,description:i,useDemoData:m,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,roleList:d,userList:u,storeList:f,company:w,onTitleClick:_,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onSaveDraft:Z,showSaveButton:q,showNextButton:K},D=y.useMemo(()=>({featureActions:S,apiUrl:e,authToken:t,basePath:r,theme:a,darkMode:o,title:l,description:i,roleList:d,userList:u,storeList:f,currentUser:p,company:w,useDemoData:m,createLabel:h,onCreateForm:g,onConfigure:b,onOpen:L,onTitleClick:_,onDescriptionClick:x,onSearch:T,onHeaderActionsChange:V,onPublish:R,onSaveDraft:Z,showSaveButton:q,showNextButton:K,onStepChange:$}),[S,e,t,r,a,o,l,i,d,u,f,p,w,m,h,g,b,L,_,x,T,V,R,Z,q,K,$]);return s.jsx(yi.Provider,{value:w,children:s.jsx(Eo,{theme:a,darkMode:o,children:s.jsx(p0,{store:n,children:s.jsx(h0,{details:D,children:s.jsx(u0,{children:s.jsx(vo,{apiUrl:e,authToken:t,children:s.jsx(f0,{basePath:r,children:s.jsx(d0,{pageProps:I,onPublish:R,onStepChange:$,children:G})})})})})})})})};function m0({children:e,onClick:t,className:n="",active:r=!1}){return s.jsx("button",{type:"button",className:`ca-chip ${r?"ca-chip--active":""} ${n}`.trim(),onClick:t,children:e})}function g0({checked:e=!1,onChange:t,name:n,value:r,"aria-label":a,className:o=""}){return s.jsxs("label",{className:`ca-radio ${o}`.trim(),children:[s.jsx("input",{type:"radio",className:"ca-radio__input",name:n,value:r,checked:e,onChange:t,"aria-label":a}),s.jsx("span",{className:"ca-radio__mark"})]})}function y0({status:e="inactive",label:t,className:n=""}){const a=String(e).toLowerCase()==="active",o=t??(a?"Active":"Inactive");return s.jsx("span",{className:`ca-badge rounded ca-badge--${a?"active":"inactive"} ${n}`.trim(),children:o})}const b0=["Open","Cancelled","Closed"];function S0({selectedStatus:e,statusNames:t=[],selectedCreatedAtSort:n,selectedLevel:r,selectedAssignment:a,workflowLevels:o=[],onStatusChange:l,onCreatedAtSortChange:i,onLevelChange:c,onAssignmentChange:d,onOpenDateFilter:u,hasDateFilter:f=!1,onDownloadReport:p,isDownloadingReport:w=!1,complaintTypeId:S}){return s.jsxs("div",{className:"ca-complaint-table__toolbar",children:[s.jsxs("div",{className:"ca-complaint-table__filters",children:[s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx(am,{size:14,"aria-hidden":"true"}),s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by status"}),s.jsxs("select",{value:e,"aria-label":"Filter by status",onChange:m=>l?.(m.target.value),children:[s.jsx("option",{value:"all",children:"Select Status"}),(t.length?t:b0).map(m=>s.jsx("option",{value:m,children:or(m)},m))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Sort by created date"}),s.jsxs("select",{value:n,"aria-label":"Sort by created date",onChange:m=>i?.(m.target.value),children:[s.jsx("option",{value:"desc",children:"Created: Newest first"}),s.jsx("option",{value:"asc",children:"Created: Oldest first"})]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by workflow level"}),s.jsxs("select",{value:r,"aria-label":"Filter by workflow level",onChange:m=>c?.(m.target.value),children:[s.jsx("option",{value:"all",children:"All Levels"}),o.map(m=>s.jsxs("option",{value:m,children:["Level ",m]},m))]})]}),s.jsxs("label",{className:"ca-complaint-table__filter",children:[s.jsx("span",{className:"ca-complaint-table__sr-only",children:"Filter by assignment"}),s.jsxs("select",{value:a,"aria-label":"Filter by assignment",onChange:m=>d?.(m.target.value),children:[s.jsx("option",{value:"all",children:"All"}),s.jsx("option",{value:"mine",children:"Assign to Me"}),s.jsx("option",{value:"unassigned",children:"Unassigned"})]})]}),s.jsx("button",{type:"button",className:`ca-complaint-table__sort${f?" ca-complaint-table__sort--active":""}`,"aria-label":"Filter by date",title:"Filter by date",onClick:u,children:s.jsx(sm,{className:"ca-complaint-table__sort-icon",size:14,"aria-hidden":"true"})})]}),s.jsx("div",{className:"ca-complaint-table__actions",children:s.jsx(ye,{variant:"outline",size:"sm",startIcon:s.jsx(nm,{size:14}),onClick:p,disabled:w||!S,children:"Download Report"})})]})}const v0=Ve.colors,w0=Ve.radii,C0=Ve.spacing,_0=Ve.typography;P.AddFormButton=gi,P.AddTableCard=ai,P.ApiProvider=vo,P.BodyText=Qn,P.Button=ye,P.COMPLAINT_ENDPOINTS=Wn,P.CardFooter=fl,P.CardHeader=ul,P.ChevronDownIcon=Ea,P.ChevronRightIcon=fn,P.Chip=m0,P.CloseIcon=ei,P.ComplaintApp=oc,P.ComplaintManagementPage=Gl,P.ComplaintSettingsPage=ji,P.ComplaintTableGrid=Ki,P.ComplaintTableToolbar=S0,P.CustomPagination=qi,P.DEFAULT_PAGE_DESCRIPTION=Ul,P.DEMO_SYSTEMS=zh,P.DataPoint=pl,P.Divider=hl,P.DragHandleIcon=Si,P.EmptyState=Ya,P.FieldLabel=Aa,P.FormCard=wi,P.FormCardGrid=Ci,P.FormField=Be,P.FormInput=yn,P.FormSelect=Ia,P.FormTextarea=wm,P.Heading1=fa,P.Heading2=pa,P.Input=Ot,P.LabelText=cl,P.LayersIcon=vm,P.LinkText=oh,P.Loading=ze,P.PageHeader=ha,P.PlusIcon=ll,P.Radio=g0,P.RoleMultiSelect=ur,P.SETTINGS_STEPS=$e,P.SearchBar=Pl,P.SearchIcon=xl,P.Select=Ke,P.SettingsCard=gn,P.SettingsCardHeader=Ql,P.SettingsWizardProvider=Xl,P.StatusBadge=y0,P.Stepper=bn,P.SystemCard=Dl,P.SystemCardGrid=Ml,P.TableCard=si,P.TableCardGrid=fi,P.Tag=ti,P.Textarea=Rl,P.ThemeProvider=Eo,P.Toggle=Rn,P.ToggleField=Fi,P.TrashIcon=er,P.Typography=Qe,P.ValueText=dl,P.WORKFLOW_SUBSTEPS=Sm,P.api=le,P.appDetailsReducer=xo,P.clearAppDetails=op,P.clearComplaintError=Xf,P.clearId=lp,P.clearSelectedComplaintResource=Qf,P.colors=v0,P.complaintReducer=Fo,P.createComplaintStore=sl,P.darkTheme=en,P.deepMerge=_t,P.default=oc,P.defaultThemeFile=wo,P.deleteFormField=nn,P.getFormFields=De,P.lightTheme=Ve,P.normalizeThemeFile=Co,P.radii=w0,P.resetComplaintState=Rf,P.resolveActiveTheme=_o,P.saveFormFields=tn,P.setAppDetails=Mo,P.setAuthToken=Qr,P.setBaseUrl=So,P.setId=lt,P.setIsEdit=Nt,P.spacing=C0,P.store=ol,P.themeToCssVars=No,P.typography=_0,P.useSettingsWizard=dr,P.useTheme=Lo,Object.defineProperties(P,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})}));
|
|
13
14
|
//# sourceMappingURL=complaint-app.umd.js.map
|