@realtek/core-theme 0.0.366 → 0.0.367
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-lib/{AddFormV1-CI0IyNmL.cjs → AddFormV1-C8L2lNYb.cjs} +2 -2
- package/dist-lib/{AddFormV1-CI0IyNmL.cjs.map → AddFormV1-C8L2lNYb.cjs.map} +1 -1
- package/dist-lib/{AddFormV1-CRP2dpGK.js → AddFormV1-Crwu7zyB.js} +2 -2
- package/dist-lib/{AddFormV1-CRP2dpGK.js.map → AddFormV1-Crwu7zyB.js.map} +1 -1
- package/dist-lib/{conditionalFieldLabel-DOZto4Ei.cjs → conditionalFieldLabel-080sIUgv.cjs} +4 -4
- package/dist-lib/{conditionalFieldLabel-DOZto4Ei.cjs.map → conditionalFieldLabel-080sIUgv.cjs.map} +1 -1
- package/dist-lib/{conditionalFieldLabel-CLs7ls8w.js → conditionalFieldLabel-UV6rY1kI.js} +41 -41
- package/dist-lib/{conditionalFieldLabel-CLs7ls8w.js.map → conditionalFieldLabel-UV6rY1kI.js.map} +1 -1
- package/dist-lib/index.cjs +3 -3
- package/dist-lib/index.cjs.map +1 -1
- package/dist-lib/index.js +412 -408
- package/dist-lib/index.js.map +1 -1
- package/package.json +1 -1
package/dist-lib/index.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-Chgba0Kb.cjs"),t=require("./authApi-D0LZjLV6.cjs"),n=require("./conditionalFieldLabel-DOZto4Ei.cjs"),r=require("./DocumentViewer-Dv2kBoJ2.cjs"),i=require("./AddFormV1-CI0IyNmL.cjs"),a=require("./diceCandidateMapper-BjMhHno3.cjs"),o=require("./formGroupsCache-Bbz-28ws.cjs"),s=require("./addFormApi-C99DyZ1z.cjs"),c=require("./FacebookCourseMappingsSection-C7qyexlU.cjs"),l=require("./verifyLockState-BvGJELfZ.cjs");let u=require("react");u=e.n(u,1);let d=require("antd"),f=require("@ant-design/icons"),p=require("react/jsx-runtime"),m=require("dayjs");m=e.n(m,1);let h=require("react-router-dom"),g=require("prop-types");g=e.n(g,1);let _=require("react-dom");var{Title:v,Text:y}=d.Typography,b=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],x=[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],S=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],C={green:`#22c55e`,red:`#ef4444`,orange:`#f97316`,blue:`#3b82f6`};function w(e){return C[e]||e||`#586888`}function T(e){return String(e).padStart(2,`0`)}function E(e,t,n=`Sun`){let r=new Date(e,t,1).getDay(),i=n===`Mon`?r===0?6:r-1:r,a=new Date(e,t+1,0).getDate(),o=[];for(let e=0;e<i;e++)o.push({day:null,cur:!1});for(let e=1;e<=a;e++)o.push({day:e,cur:!0});for(;o.length%7!=0;)o.push({day:null,cur:!1});return o}function D(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function O(e){if(!e)return{text:``,author:null};let t=e.match(/\n\s*-\s*([^\n]+)\s*$/);return t?{text:e.slice(0,t.index).trim(),author:t[1].trim()}:{text:e.trim(),author:null}}function k(e=[]){let t={};return e.forEach(e=>{t[e.date]=(e.events||[]).map(e=>{let{text:t,author:n}=O(e.description);return{color:e.color,label:e.label,title:e.title,text:t,author:n}})}),t}function A({events:e}){return(0,p.jsx)(`div`,{style:{maxWidth:280,maxHeight:260,overflowY:`auto`},children:e.map((t,n)=>(0,p.jsxs)(`div`,{style:{display:`flex`,gap:8,padding:`6px 0`,borderBottom:n<e.length-1?`1px solid #f0f0f0`:`none`},children:[(0,p.jsx)(`span`,{className:`calendar-dot`,style:{background:w(t.color),marginTop:6,flexShrink:0}}),(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(y,{strong:!0,style:{fontSize:13,display:`block`},children:t.title||t.label}),t.text&&(0,p.jsx)(y,{style:{fontSize:12,color:`#555`,whiteSpace:`pre-line`,wordBreak:`break-word`},children:t.text}),t.author&&(0,p.jsxs)(y,{style:{fontSize:11,color:`#999`,display:`block`,marginTop:2},children:[`— `,t.author]})]})]},n))})}function j({userIds:e=[],days:t=void 0,startDay:r=`Sun`,renderDayContent:i=void 0,onDayClick:a=void 0,headerExtra:o=void 0,legend:s=void 0,readonly:c=!1,className:l=``,monthLabel:m=void 0,year:h=void 0,month:g=void 0,onPrevMonth:_=void 0,onNextMonth:C=void 0,prevDisabled:O=!1,nextDisabled:j=!1}){let M=t!==void 0||i!==void 0||a!==void 0,N=new Date,[P,F]=(0,u.useState)({year:N.getFullYear(),month:N.getMonth()}),I=h!=null&&g!=null?{year:Number(h),month:Number(g)-1}:P,[L,R]=(0,u.useState)({}),[z,B]=(0,u.useState)([]),[V,H]=(0,u.useState)(!1),[U,W]=(0,u.useState)(null),G=JSON.stringify(e),ee=r===`Mon`?x:b,te=(0,u.useCallback)(async()=>{H(!0);try{let t=await n.so({userIds:e});t?.status&&t?.data?(B(t.data.legend||[]),R(k(t.data.days||[]))):(B([]),R({}))}catch(e){console.error(`CalendarCard fetch error:`,e)}finally{H(!1)}},[G]);(0,u.useEffect)(()=>{M||te()},[M,te]),(0,u.useEffect)(()=>(window.addEventListener(`dashboard-calendar:refresh`,te),()=>window.removeEventListener(`dashboard-calendar:refresh`,te)),[te]);let ne=_??(()=>F(e=>e.month===0?{year:e.year-1,month:11}:{...e,month:e.month-1})),re=C??(()=>F(e=>e.month===11?{year:e.year+1,month:0}:{...e,month:e.month+1})),ie=D(E(I.year,I.month,r),7),ae={};t!==void 0&&(t||[]).forEach(e=>{e?.date&&(ae[e.date]=e)});let oe=s??z,se=m??`${S[I.month]} ${I.year}`;return(0,p.jsx)(d.Card,{className:`calendar-card${l?` ${l}`:``}`,title:(0,p.jsxs)(`div`,{className:`calendar-header-title`,children:[(0,p.jsx)(f.CalendarOutlined,{}),(0,p.jsx)(v,{level:5,style:{margin:0},children:se}),o]}),extra:(0,p.jsxs)(`div`,{className:`calendar-nav`,style:{display:`flex`,alignItems:`center`,gap:6},children:[(0,p.jsx)(d.Tooltip,{title:`Previous month`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.LeftOutlined,{}),size:`small`,onClick:ne,disabled:O})}),(0,p.jsx)(d.Tooltip,{title:`Next month`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.RightOutlined,{}),size:`small`,onClick:re,disabled:j})})]}),children:(0,p.jsxs)(d.Spin,{spinning:V,children:[(0,p.jsx)(d.Row,{gutter:[6,0],className:`calendar-day-names`,children:ee.map(e=>(0,p.jsx)(d.Col,{flex:`1`,className:`calendar-day-name`,children:e},e))}),(0,p.jsx)(`div`,{className:`calendar-weeks`,children:ie.map((e,t)=>(0,p.jsx)(d.Row,{gutter:[6,6],align:`top`,className:`calendar-week-row`,children:e.map((e,t)=>{if(!e.cur||e.day===null)return(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:`calendar-cell calendar-cell--filler`})},t);let n=`${I.year}-${T(I.month+1)}-${T(e.day)}`,r=e.day===N.getDate()&&I.month===N.getMonth()&&I.year===N.getFullYear();if(M){let o=ae[n]??null;return i?(0,p.jsx)(d.Col,{flex:`1`,children:i(n,o,{isToday:r,readonly:c})},t):(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:[`calendar-cell`,r?`today`:``,c?`calendar-cell--readonly`:``].filter(Boolean).join(` `),onClick:()=>!c&&a?.(n,o),style:{cursor:c?`default`:`pointer`},children:(0,p.jsx)(`div`,{className:`calendar-cell-inner`,children:(0,p.jsx)(y,{className:`calendar-cell-number`,children:e.day})})})},t)}let o=L[n]||[],s=[...new Set(o.map(e=>e.color))].slice(0,3);return(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:`calendar-cell${r?` today`:``}`,children:(0,p.jsxs)(`div`,{className:`calendar-cell-inner`,children:[(0,p.jsx)(y,{className:`calendar-cell-number`,children:e.day}),o.length>0&&(0,p.jsx)(d.Popover,{open:U===n,trigger:`click`,content:(0,p.jsx)(A,{events:o}),placement:`topRight`,destroyTooltipOnHide:!0,onOpenChange:e=>W(e?n:null),children:(0,p.jsx)(`div`,{className:`calendar-cell-dots`,children:s.map((e,t)=>(0,p.jsx)(`span`,{className:`calendar-dot`,style:{background:w(e)}},t))})})]})})},t)})},t))}),oe.length>0&&(0,p.jsx)(`div`,{className:`calendar-legend`,children:oe.map(({label:e,color:t,icon:n})=>(0,p.jsxs)(`div`,{className:`calendar-legend-item`,children:[n?(0,p.jsx)(`span`,{className:`calendar-legend-badge`,style:{background:w(t)},children:n}):(0,p.jsx)(`span`,{className:`calendar-legend-dot`,style:{background:w(t)}}),(0,p.jsx)(y,{children:e})]},e))})]})})}function M(){return{tenantId:localStorage.getItem(`tenantId`)||``,businessId:localStorage.getItem(`businessId`)||``,businessUnitId:localStorage.getItem(`businessUnitId`)||``}}function N(){return Number(localStorage.getItem(`userId`))||0}var P=e=>e?.data??e,F=new Map;function I(e){return e?.recruiterId??e?.legacyUserId??e?.user_id??e?.userId??e?.USER_ID??e?.id??e?._id}function L(e){return!e||typeof e!=`object`?``:[e.first_name??e.firstName??e.FIRST_NAME,e.last_name??e.lastName??e.LAST_NAME].filter(Boolean).join(` `).trim()||e.recruiterName||e.name||e.user_name||e.userName||e.USER_NAME||e.email||``}async function R(e){let n=String(e??``).trim();return n?(F.has(n)||F.set(n,t.o(t.S,`/get-detailed-view?userId=${encodeURIComponent(n)}`).then(e=>L(e?.data??e??null)).catch(()=>``)),F.get(n)):``}var z=null;function B(e){let t=new Map;return(Array.isArray(e)?e:[]).forEach(e=>{let n={name:L(e),role_name:e?.roleName??e?.role_name??``,reporting_name:e?.reportingName??e?.reporting_name??``};[e?.userId,e?.user_id,e?.legacyUserId,e?.id,e?._id].forEach(e=>{let r=String(e??``).trim();r&&t.set(r,n)})}),t}function V(){return z||=t.o(t.S,`/get-all-users?limit=500&offset=0`).then(e=>{let t=e?.data??e??{};return B(t.users??t??[])}).catch(()=>new Map),z}async function H(e){let t=I(e),n=(await V()).get(String(t??``).trim())??{},r=n.name||await R(t)||L(e);return{...e,name:r,role_name:n.role_name||e?.role_name||e?.roleName||``,reporting_name:n.reporting_name||e?.reporting_name||e?.reportingName||``}}async function U(e,n,r){return P(await t.o(t.S,`/module-data-update`,{method:`PUT`,body:JSON.stringify({module:e,ids:n,updates:{status:r}})}))}async function W(e,n){let r=Array.isArray(n)?n:[n],i=await Promise.all(r.filter(Boolean).map(n=>t.o(t.S,`/module/delete/${encodeURIComponent(n)}?module=${encodeURIComponent(e)}`,{method:`DELETE`})));return i[i.length-1]??{}}async function G(e){return P(await t.o(t.w,`/joblist`,{method:`POST`,body:JSON.stringify({...M(),searchQuery:e,userId:N()})}))}async function ee(e=``){let n=e?`?search=${encodeURIComponent(e)}`:``;return t.t(t.w,`/users/any${n}`)}async function te({relatedIds:e,module:n,title:r,targetDate:i,notes:a}){return t.o(t.w,`/notes`,{method:`POST`,body:JSON.stringify({schemaVersion:1,...M(),title:r,notes:a,notesFor:n||`general`,notesRelatedId:Array.isArray(e)&&e.length?e:null,reminder:i?{type:`single`,time:i,interval:``}:null,targetDate:i||null})})}async function ne(e,{title:n,targetDate:r,notes:i}){return t.o(t.w,`/notes/${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify({title:n,notes:i,reminder:r?{type:`single`,time:r,interval:``}:null,targetDate:r||null})})}async function re(e){return t.o(t.w,`/notes/${encodeURIComponent(e)}/resolve`,{method:`PUT`})}async function ie({jobId:e,candidateIds:n,hiringStage:r}){return t.o(t.w,`/source/hiringStgUpdate`,{method:`PUT`,body:JSON.stringify({...M(),multiJobId:Array.isArray(e)?e:[e],applicantId:Array.isArray(n)?n:[n],updateStatus:String(r??``).toLowerCase(),updateStatusType:`call`,responseType:`responded`,hiriringStatusChangeType:`tagToJobs`,comments:``,userId:N()})})}async function ae(){return P(await t.o(t.S,`/masters/dropdown?masterName=candidateGroups&offset=0&limit=50`))}async function oe({candidateIds:e,groupId:n,groupName:r}){return P(await t.o(t.C,`/actions/update-group`,{method:`PUT`,body:JSON.stringify({candidateIds:e,groupId:n,groupName:r})}))}async function se({jobIds:e,rate:n,priority:r}){return t.o(t.w,`/assign?type=self`,{method:`PUT`,body:JSON.stringify({multiJobId:Array.isArray(e)?e:[e],userId:N(),schemaVersion:1,...M(),priority:r==null?`false`:String(r),priorityFrom:null,recruitersData:[]})})}async function ce(e){if(!e)return{assignedUsers:[],totalSubmissions:0,targetSubmissions:0,message:``};let n=await t.o(t.w,`/self-assign?jobId=${encodeURIComponent(e)}`),r=n?.data,i=n?.message??``;return Array.isArray(r)?{assignedUsers:await Promise.all(r.map(H)),totalSubmissions:0,targetSubmissions:0,message:i}:!r||typeof r!=`object`?{assignedUsers:[],totalSubmissions:0,targetSubmissions:0,message:i}:{assignedUsers:await Promise.all((Array.isArray(r.assignedUsers)?r.assignedUsers:[]).map(H)),totalSubmissions:r.totalSubmissions??0,targetSubmissions:r.targetSubmissions??0,message:i}}function K(e){let t=e?.user_id??e?.userId??e?.USER_ID??e?.legacyUserId??e?.id??e?._id,n=t==null?``:String(t).trim();if(!n)return null;let r=[e?.first_name??e?.firstName,e?.last_name??e?.lastName].filter(Boolean).join(` `).trim(),i=e?.name||e?.user_name||e?.userName||e?.USER_NAME||r||e?.email||n;return{...e,label:String(i),value:n}}async function le(){let e=await t.t(t.w,`/users/manager`);return(Array.isArray(e)?e:e?[e]:[]).map(K).filter(Boolean)}async function ue(e){if(!e)return{recruitersData:[]};let n=await t.t(t.w,`/pay-details/${encodeURIComponent(e)}`),r=n&&typeof n==`object`&&Array.isArray(n.recruiters)?n.recruiters:[],i=(await Promise.all(r.map(async e=>{let t=e?.recruiterId??e?.user_id??e?.userId??e?.id;if(t==null||t===``)return null;let n=await H({...e,recruiterId:t});return{recruiterId:t,id:t,user_id:t,name:n.name,role_name:n.role_name??n.roleName??``,reporting_name:n.reporting_name??n.reportingName??``}}))).filter(Boolean);return{...n&&typeof n==`object`?n:{},recruitersData:i}}function de(e){let t=typeof e==`object`?e?.recruiterId??e?.user_id??e?.userId??e?.id:e,n=Number(t);return Number.isInteger(n)&&n>0?n:null}function fe({jobIds:e,userId:t,rate:n,priority:r,removedIds:i,existingRecruiters:a}){let o=new Set((i??[]).map(String)),s=(a??[]).map(de).filter(e=>e!==null&&!o.has(String(e))),c=(Array.isArray(t)?t:[t]).map(de).filter(e=>e!==null);if(c.length===0)throw Error(`A valid user must be selected before assigning the job`);let l=Array.from(new Set([...s,...c]));return{multiJobId:Array.isArray(e)?e:[e],userId:c[0],schemaVersion:1,...M(),priority:String(r??!1),priorityFrom:``,recruitersData:l}}async function pe(e,n){let r=new Set((n??[]).map(String));r.size&&await Promise.all((e??[]).map(async e=>{let n=await t.o(t.S,`/module/list?module=jobs&id=${encodeURIComponent(e)}`),i=n?.data?.data??n?.data??n,a=Array.isArray(i)?i[0]:i,o=Array.isArray(a?.recruiters)?a.recruiters:[],s=o.filter(e=>!r.has(String(de(e)??``)));s.length!==o.length&&await t.o(t.S,`/module/update/${encodeURIComponent(e)}?module=jobs`,{method:`PATCH`,body:JSON.stringify({recruiters:s})})}))}async function me(e){let n=Array.isArray(e?.jobIds)?e.jobIds:[e?.jobIds].filter(Boolean),r=e?.removedIds??[],i=(Array.isArray(e?.userId)?e.userId:[e?.userId]).map(de).filter(e=>e!==null),a;return i.length>0&&(a=await t.o(t.w,`/assign?type=other`,{method:`PUT`,body:JSON.stringify(fe(e))})),await pe(n,r),a}async function he({submissionId:e,isMail:n=!1}){return P(await t.o(t.S,`/submissions/move-to-onboarding`,{method:`POST`,body:JSON.stringify({submissionId:e,isMail:!!n})}))}async function q(e,n){return P(await t.o(t.S,`/submissions/approve`,{method:`POST`,body:JSON.stringify({submissionId:e,...n})}))}async function ge(e){return P(await t.o(t.S,`/submissions/vms-approve?submissionId=${encodeURIComponent(e)}`))}async function _e(e,{submissionId:n=``,billRate:r,payRate:i,currency:a=`$`,rateUnit:o=`hr`,referralId:s,referralRate:c,referralType:l,referralEnabled:u,vmsPercent:d=0,documentIds:f=[],remarks:p=null}={}){let m=e?`/workforce-engagements/${encodeURIComponent(e)}/cfo-approval/send`:`/submissions/${encodeURIComponent(n)}/cfo-approval/send`;if(!e&&!n)throw Error(`Submission is required to send for approval.`);let h=typeof window<`u`?window.location.origin:``,g=e||n;return P(await t.o(t.E,m,{method:`POST`,body:JSON.stringify({proposedRate:{candidateProposedRate:Number(r)||0,candidateProposedRateCurrency:a,candidateProposedRateCurrencySymbol:``,candidateProposedRateUnit:o},candidateRate:{candidateAcceptedRate:Number(i)||0,candidateAcceptedCurrency:a,candidateAcceptedCurrencySymbol:``,candidateAcceptedPayUnit:o,candidateAcceptedRateNegotiable:!1},...s!=null&&s!==``?{referralId:s}:{},...c==null?{}:{referralRate:Number(c)||0},...l!=null&&l!==``?{referralType:l}:{},...u==null?{}:{referralEnabled:!!u},vmsPercent:Number(d)||0,documentIds:f,remarks:p,approvalUrl:`${h}/cfo-approval/${encodeURIComponent(g)}`})}))}async function ve({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i}){return P(await t.o(t.S,`/submissions/reject`,{method:`POST`,body:JSON.stringify({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i})}))}async function ye({jobId:e,applicantId:n}){let r=new URLSearchParams({jobId:String(e??``),applicantId:String(n??``)});return P(await t.o(t.S,`/submissions/exists?${r.toString()}`))??{exists:!1}}async function J({searchQuery:e,candidateId:n}){let r=P(await t.o(t.S,`/quick-submit/job-search`,{method:`POST`,body:JSON.stringify({searchQuery:e??``,candidateId:n?String(n):``})}));return Array.isArray(r)?r:[]}async function be({search:e,jobId:n}){let r=P(await t.o(t.S,`/quick-submit/candidate-search`,{method:`POST`,body:JSON.stringify({search:e??``,jobId:n?String(n):``})}));return Array.isArray(r)?r:[]}async function xe({jobId:e,applicantId:n,jobIds:r,applicantIds:i}){let a=!!e,o={};if(e&&(o.jobId=String(e)),n&&(o.applicantId=String(n)),Array.isArray(r)&&(o.jobIds=r.filter(Boolean).map(String)),Array.isArray(i)&&(o.applicantIds=i.filter(Boolean).map(String)),!(a?o.applicantIds:o.jobIds)?.length)return new Map;let s=P(await t.o(t.S,`/submissions/exists-bulk`,{method:`POST`,body:JSON.stringify(o)}))?.pairs??[];return new Map(s.map(e=>[String(a?e.applicantId:e.jobId),{submissionId:e.submissionId??``,submittedAt:e.submittedAt??null}]))}async function Se({jobId:e,candidateIds:n}){return t.o(t.w,`/source/hiringStgUpdate`,{method:`PUT`,body:JSON.stringify({...M(),multiJobId:Array.isArray(e)?e:[e],applicantId:Array.isArray(n)?n:[n],updateStatus:`pipeline`,updateStatusType:`call`,responseType:`responded`,hiriringStatusChangeType:`tagToJobs`,comments:``,userId:N()})})}function Ce(e){if(e?.status===!1)throw Error(e.error||e.message||`Request failed. Please try again.`)}var we=e=>(Array.isArray(e)?e:[e]).filter(Boolean).map(String);async function Te({module:e,documentIds:n,reason:r}){let i=await t.o(t.S,`/document-request/create`,{method:`POST`,body:JSON.stringify({module:e,documentIds:we(n),reason:r})});return Ce(i),P(i)}async function Ee({ids:e,rejectionReason:n}){let r=await t.o(t.S,`/document-request/reject`,{method:`POST`,body:JSON.stringify({ids:we(e),rejectionReason:n})});return Ce(r),P(r)}var De={jobsCount:[`total`,`Total Jobs`,`active`,`Active Jobs`,`myAssignedCount`,`My Jobs`],submissionCount:[`Selected`,`Submitted to client`,`Submitted to Client`,`Not Submitted`,`Approved`]};function Oe(e){return De[e]??null}var ke={stickyNotes:{title:`Sticky Notes`,variant:`sticky`,request:{method:`GET`,params:{limit:20,offset:0}},listPath:`data.data`,maxCount:4,viewAllUrl:`/viewall-sticky`,refreshEvent:`sticky-notes:refresh`,pillKey:`status`,headingKey:`title`,bodyKey:`notes`,bodyLines:3,footerLeftKey:`createdByName`,footerRightKey:`createdAt`,dateKey:`reminder.time`,colorBy:`status`,colorMap:{Note:`green`,Tagged:`red`},color:`auto`},jobsCount:{variant:`counts`,dynamicCommonCount:{module:`jobs`,keys:[`jobRecruitmentStatus`,`jobStatus`]},listPath:``,layout:`4x2`,groupSeparator:``,labelMap:{total:`Total Jobs`,active:`Active Jobs`,myAssignedCount:`My Jobs`},color:`#f1f3f8`,show:Oe(`jobsCount`),hide:[`inactive`,`submitted`,`noSubmissions`]},submissionCount:{title:`Total Client Submission`,tooltipText:`Includes all submissions that are pending and submitted to the client.`,variant:`submission`,dynamicCommonCount:{module:`submissions`,keys:[`clientSubmissionStatus.clientSubmissionStatusText`]},listPath:``,totalKey:`total`,labelMap:{Selected:`Selected`,"Submitted to client":`Submitted to Client`,"Not Submitted":`Not Submitted`,Approved:`Approved`},colorMap:{Selected:`rgb(234, 175, 12)`,"Submitted to client":`green`,"Not Submitted":`red`,Approved:`#1d4ed8`},show:Oe(`submissionCount`)},leadAptitude:{title:`Aptitude Test Results`,variant:`assessment`,request:{method:`GET`,params:{}},listPath:`data`,totalKey:`totalScore`,maxKey:`maximumScore`,statusKey:`status`,attemptDateKey:`attemptDate`,timeTakenKey:`timeTaken`,rankKey:`rank`,labelMap:{logicalReasoning:`Logical Reasoning`,quantitativeAptitude:`Quantitative Aptitude`,verbalAbility:`Verbal Ability`},colorMap:{logicalReasoning:`#7c3aed`,quantitativeAptitude:`#0891b2`,verbalAbility:`#16a34a`},hide:[`status`,`attemptDate`,`timeTaken`,`rank`,`maximumScore`]},onboardingCount:{variant:`counts`,dynamicCommonCount:{module:`onboarding`,keys:[`onboardingObStage`]},listPath:``,frame:!0,frameTitle:`Onboarding`,frameClassName:`onboarding-card`,viewAll:!0,footer:!0,columns:4,valueMap:{inProgress:`Under Review`,hired:`Onboarded`,projectCompleted:`Project cycle closed`,archive:`No longer active`},labelMap:{inProgress:`In Progress`,hired:`Hired`,projectCompleted:`Project Completed`,archive:`Archive`},aggregateMap:{inProgress:[`inProgress`,`In Progress`],hired:[`hired`,`Hired`,`Active`],projectCompleted:[`projectCompleted`,`Project Completed`,`Completed`],archive:[`archive`,`Archive`,`Not Hired`,`Candidate Backout`]},show:Oe(`onboardingCount`),hide:[`total`,`totalGrossMargin`,`totalNetMargin`]},timesheetMonthlySummary:{variant:`metrics`,title:`Monthly Summary`,valueSuffix:` hrs`,rows:[{key:`unapprovedPayableHours`,label:`Unapproved Payable hours`,sublabel:`(S + O)`},{key:`nonPayableHours`,label:`Non-payable hours`,sublabel:`(Leave/Holidays)`},{key:`approvedPayableHours`,label:`Approved Payable hours`,valueColor:`#15803d`}]},timesheetWeeklyTotals:{variant:`metrics`,title:`Weekly Totals (S + O)`,plainHeader:!0,valueSuffix:` hrs`,listRows:{itemValueKey:`weeklyTotals.payable`,itemLabel:(e,t)=>{let n=e.weekStart?(0,m.default)(e.weekStart).format(`MMM D`):``,r=e.weekEnd?(0,m.default)(e.weekEnd).format(`MMM D`):``,i=`Week ${e.weekNumber??t+1}`;return n&&r?`${i} (${n} - ${r})`:i}}},timesheetHourBreakdown:{variant:`bars`,valueSuffix:` hrs`,rows:[{key:`totalSTHours`,label:`Standard`,color:`#1d4ed8`,bg:`#D0E6FF`},{key:`totalOTHours`,label:`Overtime`,color:`#15803d`,bg:`#d9f7e3`},{key:`leaveHours`,label:`Leaves`,color:`#b45309`,bg:`#FFECBA`},{key:`holidayHours`,label:`Holidays`,color:`#6d28d9`,bg:`#ede9fe`,fallback:0}]},financeKpiRow:{variant:`kpi`}},Ae=[`blue`,`green`,`purple`,`peach`,`red`,`gray`],je=[`purple`,`peach`,`green`],Me=[`#1d4ed8`,`#ef4444`,`#16a34a`,`#9333ea`,`#f59e0b`,`#0891b2`],Ne={blue:`#1d4ed8`,green:`#16a34a`,purple:`#9333ea`,peach:`#f97316`,red:`#ef4444`,gray:`#6b7280`};function Pe(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.cardConfig)??{};return{...ke,...e}}var Fe={timesheet:{currentLabel:`Standard`,currentColor:`blue`,pastLabel:`Supplementary`,pastColor:`gold`,thresholdMonths:0}};function Ie(e){let t=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.periodBadgeConfig)??{};return{...Fe[e],...t[e]}}var{Title:Le,Text:Re}=d.Typography;function ze(e,t){return Array.isArray(t)?t.map(t=>ze(e,t)).filter(Be).join(` `):typeof t==`string`&&t.includes(`.`)?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e[t]}var Be=e=>e!=null&&e!==``;function Ve(e,t,n={}){return{...n,...e.styles?.[t]||{}}}function He(e){return Be(e.title)?(0,p.jsx)(Le,{level:5,style:Ve(e,`headerTitle`),children:e.title}):void 0}function Ue(e,t){return Be(e.title)?t:void 0}function We(e){return[`blue`,`green`,`purple`,`peach`,`red`,`gray`].includes(it(e))}function Ge(e,t){let n=t||``,r=Ve(e,`card`);return Be(n)?We(n)?{className:n,style:r}:{className:``,style:{...r,background:n,borderColor:e.styles?.card?.borderColor||n}}:{className:``,style:r}}function Ke(e,t){return t?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e}function qe(e){return String(e).replace(/([a-z0-9])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).trim().replace(/\b\w/g,e=>e.toUpperCase())}function Je(e){if(!Be(e))return null;let t=new Date(e);return isNaN(t)||t.getFullYear()<=1?null:n.fi(t,n.Si().dateFormat)}function Ye(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:null}function Xe(e){return String(e??``).replace(/(?:\s*\(\d+[\d,]*\))+\s*$/,``).trim()}function Ze(e,t){let n=[e?.data?.total,e?.data?.count,e?.data?.totalCount,e?.data?.pagination?.total,e?.data?.data?.total,e?.data?.data?.count,e?.data?.data?.totalCount,e?.total,e?.count,e?.totalCount,e?.pagination?.total],r=[e?.data?.todoCount,e?.data?.toDoCount,e?.data?.pendingCount,e?.data?.data?.todoCount,e?.data?.data?.toDoCount,e?.todoCount,e?.toDoCount,e?.pendingCount],i=[e?.data?.resolvedCount,e?.data?.data?.resolvedCount,e?.resolvedCount],a=r.map(Ye).find(e=>e!==null),o=i.map(Ye).find(e=>e!==null),s=n.map(Ye).find(e=>e!==null),c=a!==null&&o!==null?a+o:null,l=Array.isArray(t)?t.length:null;return{totalCount:s??c??l,todoCount:a,resolvedCount:o}}function Qe(e,t){let n=RegExp(`^${t}\\d+$`);return Object.keys(e).filter(e=>e===t||n.test(e)).map(n=>({field:e[n],n:n===t?1:Number(n.slice(t.length))})).sort((e,t)=>t.n-e.n).map(e=>e.field)}function $e(e){return Math.max(1,Math.floor(24/(e||4)))}function et(e){if(typeof e!=`string`)return{};let t=e.toLowerCase().replace(/\s/g,``).match(/^(\d+)x(\d+)$/);if(!t)return{};let n=Number(t[1]);return{columns:n,maxCount:n*Number(t[2])}}function tt(e,t){let n=et(e.layout),r=e.columns??n.columns??t,i=e.maxCount??n.maxCount;return{columns:r,span:$e(r),maxCount:i}}function nt(e,t){return t?e.slice(0,t):e}function rt(e,t){return e.color?e.color===`auto`?Ae[t%Ae.length]:e.color:``}var it=e=>String(e??``).trim().toLowerCase();function at(e,t){return(Array.isArray(t)?t:[t]).some(t=>Be(t)&&it(t)===it(e))}function ot(e,t){if(!e.colorMap)return null;let n=Object.keys(e.colorMap).find(e=>at(e,t));return n?e.colorMap[n]:null}function st(e,t,n){if(!e.labelMap)return n;let r=Object.keys(e.labelMap).find(e=>at(e,t));return r?e.labelMap[r]:n}function ct(e,t){if(!e.valueMap)return null;let n=Object.keys(e.valueMap).find(e=>at(e,t));return n?e.valueMap[n]:null}function lt(e,t){return!Array.isArray(e.show)||e.show.length===0||e.show.some(e=>at(e,t))}function ut(e,t,n){return lt(e,t)?Array.isArray(e.hide)?e.hide.some(e=>typeof e==`number`?e===n:at(e,t)):!1:!0}function dt(e,t){for(let n of Qe(e,`titleKey`)){let e=ze(t,n);if(Be(e))return e}return null}function ft(e){return!e||typeof e!=`object`||Array.isArray(e)?[]:Object.entries(e).filter(([,e])=>typeof e==`number`||typeof e==`string`&&e!==``&&!isNaN(e)).map(([e,t])=>({key:e,label:qe(e),value:Number(t)}))}function pt(e,t){let n=e?.data??e,r=Array.isArray(n?.fields)?n.fields:null,i=t.dynamicCommonCount?.keys?.[0],a=r?[...r.find(e=>e.key===i)?[r.find(e=>e.key===i)]:[],...r.filter(e=>e.key!==i)]:[n];return a.some(e=>Array.isArray(e?.counts))?a.reduce((e,t)=>!t||!Array.isArray(t.counts)?e:(e.total=Math.max(Number(e.total)||0,Number(t.total)||0),t.counts.forEach(({key:t,count:n})=>{e[t]=Number(n)||0}),e),{total:0}):n}function mt(e,t){let n=ft(e),r=t.totalKey,i=r?ze(e||{},r):void 0,a=r&&Be(i)&&!isNaN(i),o=n.map((e,t)=>({...e,_i:t})).filter(e=>!(a&&at(r,[e.key,e.label]))).filter(e=>!ut(t,[e.key,e.label],e._i)).map((e,n)=>{let r=ot(t,[e.key,e.label]),i=r?Ne[it(r)]||r:Me[e._i%Me.length];return{label:st(t,[e.key,e.label],e.label),value:e.value,barColor:i,accentColor:n===0?`#f97316`:null,showInfo:n===0}});return{total:a?Number(i):o.reduce((e,t)=>e+t.value,0),rows:nt(o,tt(t,1).maxCount)}}function ht({item:e,group:t,color:n}){let r=n=>Qe(t,n).map(t=>ze(e,t)).filter(Be),i=r(`titleKey`),a=r(`countKey`),o=r(`nameKey`),s=r(`valueKey`),c=Ge(t,n);return(0,p.jsxs)(d.Card,{className:`dyn-card-item ${c.className}`.trim(),style:c.style,bordered:!0,children:[i.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-title`,style:Ve(t,`cardTitle`),children:e},`t${n}`)),a.map((e,n)=>(0,p.jsx)(d.Statistic,{value:e,className:`dyn-card-stat`,valueStyle:Ve(t,`cardValue`)},`c${n}`)),o.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-name`,style:Ve(t,`cardName`),children:e},`n${n}`)),s.length>0&&(0,p.jsx)(`div`,{className:`dyn-card-footer`,style:Ve(t,`cardFooter`),children:s.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-sub`,style:Ve(t,`cardSub`),children:e},`v${n}`))})]})}function gt({group:e}){let{span:t,maxCount:n}=tt(e,4),r=nt((Array.isArray(e.list)?e.list:[]).map((t,n)=>({item:t,name:dt(e,t),_i:n})).filter(t=>!ut(e,t.name,t._i)),n);return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(Re,{type:`secondary`,style:Ve(e,`headerExtra`),children:[r.length,` cards`]})),children:(0,p.jsx)(d.Row,{gutter:[16,16],children:r.map(n=>{let r=ot(e,n.name)||rt(e,n._i);return(0,p.jsx)(d.Col,{xs:24,sm:12,md:t>=12?12:t*2,lg:t,xl:t,children:(0,p.jsx)(ht,{item:n.item,group:e,color:r})},n._i)})})})}function _t({group:e,items:t}){let{span:n,maxCount:r}=tt(e,4),i=nt(t.map((e,t)=>({...e,_i:t})).filter(t=>!ut(e,[t.key,t.label],t._i)),r);return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(Re,{type:`secondary`,style:Ve(e,`headerExtra`),children:[i.length,` cards`]})),children:(0,p.jsx)(d.Row,{gutter:[16,16],children:i.map(t=>{let r=Ge(e,ot(e,[t.key,t.label])||rt(e,t._i));return(0,p.jsx)(d.Col,{xs:24,sm:12,md:n>=12?12:n*2,lg:n,xl:n,children:(0,p.jsxs)(d.Card,{className:`dyn-card-item ${r.className}`.trim(),style:r.style,bordered:!0,children:[(0,p.jsx)(Re,{className:`dyn-card-title`,style:Ve(e,`cardTitle`),children:st(e,[t.key,t.label],t.label)}),(0,p.jsx)(d.Statistic,{value:t.value,groupSeparator:e.groupSeparator??`,`,className:`dyn-card-stat`,valueStyle:Ve(e,`cardValue`)}),Be(ct(e,[t.key,t.label]))&&(0,p.jsx)(Re,{className:`dyn-card-sub`,style:Ve(e,`cardSub`),children:ct(e,[t.key,t.label])})]})},t._i)})})})}function vt({group:e,data:t}){let{total:n,rows:r}=mt(t,e),i=e.tooltipText;return(0,p.jsxs)(d.Card,{className:`submission-card`,style:Ve(e,`card`),children:[Be(e.title)&&(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-header`,style:Ve(e,`submissionHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(Re,{className:`submission-title`,style:Ve(e,`submissionTitle`),children:[e.title,` `,i&&(0,p.jsx)(d.Tooltip,{title:i,children:(0,p.jsx)(f.InfoCircleOutlined,{className:`submission-info-icon`,style:Ve(e,`infoIcon`)})})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-total`,style:Ve(e,`submissionTotal`),children:Number(n||0).toLocaleString()})})]}),(0,p.jsx)(`div`,{className:`submission-rows`,style:Ve(e,`submissionRows`),children:r.map((t,r)=>(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:Ve(e,`submissionRowHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Row,{align:`middle`,gutter:6,children:(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-label`,style:Ve(e,`submissionRowLabel`),children:t.label})})})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-value`,style:Ve(e,`submissionRowValue`),children:t.value})})]}),(0,p.jsx)(`div`,{className:`submission-bar-track`,style:Ve(e,`submissionBarTrack`),children:(0,p.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${t.value/(n||1)*100}%`,background:t.barColor}})})]},`${t.label}-${r}`))})]})}function yt(e){if(!Be(e))return`-`;let t=new Date(e);return!Number.isNaN(t.getTime())&&/date|time/i.test(String(e))?n.pi(t):String(e)}function bt({group:e,data:t}){let n=e.totalKey??`totalScore`,r=e.maxKey??`maximumScore`,i=e.statusKey??`status`,a=e.attemptDateKey??`attemptDate`,o=e.timeTakenKey??`timeTaken`,s=e.rankKey??`rank`,c=Number(ze(t||{},n)??0),l=Number(ze(t||{},r)??100)||100,u=Math.max(0,Math.min(100,Math.round(c/l*100))),f=mt(t,{...e,totalKey:n,hide:[...Array.isArray(e.hide)?e.hide:[],r,i,a,o,s]}).rows,m=[{key:i,label:e.statusLabel??`Status`},{key:a,label:e.attemptDateLabel??`Attempt Date`},{key:o,label:e.timeTakenLabel??`Time Taken`},{key:s,label:e.rankLabel??`Rank`}].filter(e=>Be(ze(t||{},e.key)));return(0,p.jsxs)(d.Card,{className:`assessment-card`,style:Ve(e,`card`),title:He(e),children:[(0,p.jsxs)(`div`,{className:`assessment-card__top`,children:[(0,p.jsx)(d.Progress,{type:`circle`,percent:u,format:()=>`${Number(c||0).toLocaleString()}/${l.toLocaleString()}`,strokeColor:e.scoreColor??`#6d4aff`,trailColor:e.trailColor??`#edf0f5`}),(0,p.jsx)(`dl`,{className:`assessment-card__meta`,children:m.map(e=>(0,p.jsxs)(`div`,{className:`assessment-card__meta-row`,children:[(0,p.jsx)(`dt`,{children:e.label}),(0,p.jsx)(`dd`,{children:yt(ze(t||{},e.key))})]},e.key))})]}),(0,p.jsx)(`div`,{className:`submission-rows assessment-card__rows`,style:Ve(e,`submissionRows`),children:f.map(t=>(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:Ve(e,`submissionRowHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-label`,style:Ve(e,`submissionRowLabel`),children:t.label})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-value`,style:Ve(e,`submissionRowValue`),children:t.value})})]}),(0,p.jsx)(`div`,{className:`submission-bar-track`,style:Ve(e,`submissionBarTrack`),children:(0,p.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${Math.max(0,Math.min(100,Number(t.value)/l*100))}%`,background:t.barColor}})})]},t.label))})]})}function xt(e,t={},n={}){let r=Be(e)?e:t.fallback;if(!Be(r))return`-`;let i=Number(r);if(!Number.isFinite(i))return String(r);let a=t.suffix??n.valueSuffix??``;return`${i.toFixed(1).replace(/\.0$/,``)}${a}`}function St({group:e,data:t}){let n=Array.isArray(t);return(0,p.jsxs)(d.Card,{className:`timesheet-summary-card`,size:`small`,children:[Be(e.title)&&(e.plainHeader?(0,p.jsx)(Re,{type:`secondary`,style:{fontSize:12,fontWeight:600},children:e.title}):(0,p.jsxs)(`div`,{className:`timesheet-summary-card__head`,children:[(0,p.jsx)(Le,{level:5,style:{margin:0},children:e.title}),e.headerExtra]})),!n&&(0,p.jsx)(`div`,{className:`timesheet-summary-card__metrics`,children:(e.rows??[]).map(n=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__metric-row`,children:[(0,p.jsxs)(Re,{type:`secondary`,style:{fontSize:12},children:[n.label,` `,n.sublabel&&(0,p.jsx)(`span`,{style:{fontSize:11},children:n.sublabel})]}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:13,whiteSpace:`nowrap`,color:n.valueColor},children:xt(ze(t??{},n.key),n,e)})]},n.key))}),n&&t.length>0&&(0,p.jsx)(`div`,{className:`timesheet-summary-card__weekly`,children:t.map((t,n)=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__week-row`,children:[(0,p.jsx)(Re,{type:`secondary`,style:{fontSize:12},children:e.listRows?.itemLabel?e.listRows.itemLabel(t,n):`Row ${n+1}`}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:12},children:xt(ze(t,e.listRows?.itemValueKey),e.listRows,e)})]},n))})]})}function Ct({group:e,data:t}){return(0,p.jsxs)(d.Card,{className:`timesheet-summary-card`,size:`small`,children:[(Be(e.title)||e.headerExtra)&&(0,p.jsxs)(`div`,{className:`timesheet-summary-card__head`,children:[Be(e.title)&&(0,p.jsx)(Le,{level:5,style:{margin:0},children:e.title}),e.headerExtra]}),(0,p.jsx)(`div`,{className:`timesheet-summary-card__bars`,children:(e.rows??[]).map(n=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__bar`,style:{background:n.bg},children:[(0,p.jsx)(Re,{style:{fontSize:12,color:n.color,fontWeight:500},children:n.label}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:13,color:n.color},children:xt(ze(t??{},n.key),n,e)})]},n.key))})]})}function wt({group:e,data:t}){let n=Array.isArray(t)?t:[],r=`finance-kpi-row${e.compact?` finance-kpi-row--compact`:``}`;if(e.loading){let e=n.length||4;return(0,p.jsx)(`div`,{className:r,children:Array.from({length:e},(e,t)=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--skeleton`,children:[(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--label`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--value`})]},t))})}return(0,p.jsx)(`div`,{className:r,children:n.map(e=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--${e.tone??`neutral`}`,children:[e.icon?(0,p.jsx)(`span`,{className:`fin-kpi__icon`,children:e.icon}):null,(0,p.jsxs)(`span`,{className:`fin-kpi__body`,children:[(0,p.jsx)(`span`,{className:`finance-kpi__label`,children:e.label}),(0,p.jsx)(`strong`,{className:`finance-kpi__value`,children:e.value}),e.sub??e.hint?(0,p.jsx)(`span`,{className:`finance-kpi__hint`,children:e.sub??e.hint}):null]})]},e.key??e.label))})}function Tt(e,t){return it(ze(t,e.pillKey||`status`))===`resolved`}function Et(e,t){return Be(e.dateKey?Je(ze(t,e.dateKey)):null)}function Dt(e,t){let n=it(ze(t,e.pillKey||`status`));if(n===`tagged`||n===`tag user`||n===`tagged user`)return!0;let r=t?.receiver??t?.receivers??t?.receiverId??t?.receiverName??t?.taggedUser;if(Array.isArray(r))return r.length>0;if(r&&typeof r==`object`)return Object.keys(r).length>0;if(Be(r))return!0;let i=`${ze(t,e.headingKey||`title`)??``} ${ze(t,e.bodyKey||`notes`)??``}`;return/(^|\s)@[^\s]+/.test(i)}function Ot(e,t,n){return Tt(e,t)?`gray`:Dt(e,t)?`blue`:Et(e,t)?`peach`:ot(e,e.colorBy?ze(t,e.colorBy):null)||(e.color&&e.color!==`auto`?e.color:je[n%je.length])}function kt(e,t){let{start:n,end:r}=e.dateRange||{};if(!n||!r)return!0;let i=ze(t,e.footerRightKey||`createdAt`);if(!Be(i))return!0;let a=new Date(i);return isNaN(a)?!0:a>=n&&a<=r}function At(e,t,n){let r=t.dateKey?Je(ze(e,t.dateKey)):null;return{type:Ot(t,e,n),pill:t.pillKey?ze(e,t.pillKey):null,heading:t.headingKey?ze(e,t.headingKey):null,body:t.bodyKey?ze(e,t.bodyKey):null,footerLeft:t.footerLeftKey?ze(e,t.footerLeftKey):null,footerRight:t.footerRightKey?Je(ze(e,t.footerRightKey)):null,dot:r?`#f97316`:null,date:r}}function jt({text:e,lines:t,style:n}){let r=(0,u.useRef)(null),[i,a]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=r.current;if(!e)return;let t=0,n=()=>{t=requestAnimationFrame(()=>{let t=e.scrollHeight-e.clientHeight>1;a(e=>e===t?e:t)})};n();let i=new ResizeObserver(n);return i.observe(e),()=>{cancelAnimationFrame(t),i.disconnect()}},[e,t]);let o=`sticky-note-body${t?` clamp-${t}`:``}`;return(0,p.jsx)(d.Popover,{trigger:`hover`,placement:`topLeft`,overlayClassName:`sticky-note-popover`,content:i?(0,p.jsx)(`div`,{className:`sticky-note-popover-content`,children:e}):null,open:i?void 0:!1,children:(0,p.jsx)(`div`,{ref:r,className:o,style:n,children:e})})}function Mt({group:e}){let t=(0,h.useNavigate)(),r=(0,h.useLocation)(),i=()=>t(`/popup/sticky-notes`,{state:{background:r,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{}}}),a=e=>t(`/popup/sticky-notes`,{state:{background:r,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{editingNoteId:e._id??e.id,editingHeading:e.title,editingComments:e.notes,editingTargetDate:e.reminder?.time||void 0}}}),[o,s]=(0,u.useState)(new Set),c=async e=>{let t=e._id??e.id;s(e=>new Set(e).add(t));try{await re(t),d.message.success(`Note resolved`)}catch{d.message.error(`Failed to resolve note`),s(e=>{let n=new Set(e);return n.delete(t),n})}},{span:l,maxCount:m}=tt(e,2),g=t=>e.colorBy?ze(t,e.colorBy):e.headingKey?ze(t,e.headingKey):null,_=(Array.isArray(e.list)?e.list:[]).filter(e=>!o.has(e._id??e.id)).map((e,t)=>({item:e,_i:t})).filter(({item:t,_i:n})=>!ut(e,g(t),n)).filter(({item:t})=>kt(e,t)),[v,y]=(0,u.useState)(`todo`),b=_.filter(({item:t})=>!Tt(e,t)),x=_.filter(({item:t})=>Tt(e,t)),S=e.showTabs,C=S?v===`resolved`?x:b:_,[w,T]=(0,u.useState)(e.pageSize||12),[E,D]=(0,u.useState)(1);(0,u.useEffect)(()=>{D(1)},[v,e.dateRange]);let O=Math.max(1,Math.ceil(C.length/w));(0,u.useEffect)(()=>{D(e=>Math.min(e,O))},[O]);let k=S?C.slice((E-1)*w,E*w):nt(_,m);return(0,p.jsxs)(d.Card,{className:`sticky-card`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(`div`,{className:`sticky-card-actions`,children:[e.headerExtra,(0,p.jsx)(d.Tooltip,{title:`Add note`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.PlusOutlined,{}),size:`small`,onClick:i})}),Be(e.viewAllUrl)&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:()=>t(e.viewAllUrl,{state:{moduleName:e.moduleName,title:e.title,request:e.request}}),children:`View all`})]})),children:[S&&(0,p.jsx)(n.ui,{activeKey:v,onChange:y,tabs:[{key:`todo`,title:`To-do`,count:b.length},{key:`resolved`,title:`Resolved Notes`,count:x.length}]}),k.length===0?(0,p.jsx)(d.Empty,{description:`No notes found`}):(0,p.jsx)(`div`,{className:S?`sticky-notes-scroll`:void 0,children:(0,p.jsx)(d.Row,{gutter:[12,12],children:k.map(({item:t,_i:n})=>{let r=At(t,e,n),i=Ge(e,r.type);return(0,p.jsx)(d.Col,{xs:24,sm:24,md:l>=12?12:l*2,lg:l,xl:l,children:(0,p.jsxs)(`div`,{className:`sticky-note ${i.className}`.trim(),style:i.style,children:[(0,p.jsxs)(d.Space,{size:4,className:`sticky-note-hover-actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Edit`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>a(t)})}),(0,p.jsx)(d.Tooltip,{title:`Resolve`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),onClick:()=>c(t)})})]}),(0,p.jsxs)(d.Space,{size:8,align:`center`,className:`sticky-note-pill-row`,children:[Be(r.pill)&&(0,p.jsxs)(d.Tag,{style:Ve(e,`stickyPill`),children:[r.dot&&(0,p.jsx)(`span`,{className:`sticky-note-dot`,style:{background:r.dot}}),r.pill]}),r.date&&(0,p.jsx)(Re,{className:`sticky-note-date`,style:Ve(e,`stickyDate`),children:r.date})]}),Be(r.heading)&&(0,p.jsx)(Re,{strong:!0,className:`sticky-note-heading`,style:Ve(e,`stickyHeading`),children:r.heading}),Be(r.body)&&(0,p.jsx)(jt,{text:r.body,lines:e.bodyLines,style:Ve(e,`stickyBody`)}),(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`sticky-note-footer`,style:Ve(e,`stickyFooter`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{style:Ve(e,`stickyFooterText`),children:r.footerLeft})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{style:Ve(e,`stickyFooterText`),children:r.footerRight})})]})]})},n)})})}),S&&C.length>0&&(0,p.jsx)(`div`,{className:`sticky-notes-pagination`,children:(0,p.jsx)(n.si,{current:E,pageSize:w,total:C.length,onChange:D,onPageSizeChange:T})})]})}function Nt({group:e,children:t}){let n=e.frameClassName||`dyn-frame`,r=e.viewAll?(0,p.jsx)(`a`,{className:`dyn-frame-view-all`,children:typeof e.viewAll==`string`?e.viewAll:`View all`}):void 0;return(0,p.jsxs)(d.Card,{className:n,title:e.frameTitle,extra:r,children:[t,e.footer&&(0,p.jsx)(`div`,{className:`${n}-footer`})]})}function Pt({group:e,data:t}){let n=e.variant===`sticky`?Xe(e.title):e.title,r=e.variant===`sticky`&&Be(e.totalCount)?`${n} (${Number(e.totalCount).toLocaleString()})`:n,i=r===e.title?e:{...e,title:r},a=i.frame?{...i,title:void 0}:i,o=a.variant===`sticky`?(0,p.jsx)(Mt,{group:{...a,list:Array.isArray(t)?t:[]}}):a.variant===`counts`?(0,p.jsx)(_t,{group:a,items:ft(t)}):a.variant===`submission`?(0,p.jsx)(vt,{group:a,data:t}):a.variant===`assessment`?(0,p.jsx)(bt,{group:a,data:t}):a.variant===`metrics`?(0,p.jsx)(St,{group:a,data:t}):a.variant===`bars`?(0,p.jsx)(Ct,{group:a,data:t}):a.variant===`kpi`?(0,p.jsx)(wt,{group:a,data:t}):(0,p.jsx)(gt,{group:{...a,list:Array.isArray(t)?t:[]}});return i.frame?(0,p.jsx)(Nt,{group:i,children:o}):o}function Ft({moduleName:e,title:t,maxCount:r,layout:i,columns:a,request:o,viewAll:s=!0,staticData:c,showTabs:l,dateRange:f,headerExtra:m,rows:h,loading:g}){let _=Pe()[e],v=o?JSON.stringify(o):``,y=h?JSON.stringify(h):``,b=(0,u.useMemo)(()=>{if(!_)return _;let n={title:t,maxCount:r,layout:i,columns:a,showTabs:l,dateRange:f,headerExtra:m,rows:h,loading:g},c={..._,moduleName:e};for(let e in n)Be(n[e])&&(c[e]=n[e]);return o&&(c.request={..._.request,...o,params:{..._.request?.params,...o.params},body:{..._.request?.body,...o.body}}),s||(c.viewAllUrl=void 0),c},[_,t,r,i,a,v,s,l,f,m,y,g]),[x,S]=(0,u.useState)({moduleName:null,resp:null,error:null}),[C,w]=(0,u.useState)(0);(0,u.useEffect)(()=>{if(!b?.refreshEvent)return;let e=()=>w(e=>e+1);return window.addEventListener(b.refreshEvent,e),()=>window.removeEventListener(b.refreshEvent,e)},[b?.refreshEvent]),(0,u.useEffect)(()=>{if(!b)return;if(c!==void 0){let t=pt(c,b);S({moduleName:e,resp:t,error:null});return}if(b.dynamicCommonCount){let t=!0;return n.lo(b.dynamicCommonCount).then(n=>{t&&S({moduleName:e,resp:pt(n,b),error:null})}).catch(n=>{t&&S({moduleName:e,resp:null,error:n})}),()=>{t=!1}}if(!b.request)return;let t=!0;return n.co(e,b.request).then(n=>{t&&S({moduleName:e,resp:n,error:null})}).catch(n=>{t&&S({moduleName:e,resp:null,error:n})}),()=>{t=!1}},[e,b,c,C]);let T=x.moduleName!==e,E=T?null:x.error,D=T?null:x.resp;if(!b)return(0,p.jsx)(d.Empty,{description:`Unknown dashboard module: ${e}`});if(T)return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(b,`section`),title:He(b),children:(0,p.jsx)(`div`,{style:{textAlign:`center`,padding:24},children:(0,p.jsx)(d.Spin,{})})});if(E)return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(b,`section`),title:He(b),children:(0,p.jsx)(d.Empty,{description:`Failed to load: ${E.message}`})});let O=Ke(D,b.listPath),k=b.variant===`sticky`?Ze(D,O):null,A=b.variant===`sticky`?{...b,...k}:b;return(0,p.jsx)(Pt,{group:A,data:O})}function It({moduleName:e,title:t,layout:n,columns:r,maxCount:i,request:a,viewAll:o,staticData:s,showTabs:c,dateRange:l,headerExtra:u,rows:f,loading:m}){return e?(0,p.jsx)(`div`,{className:`dyn-cards`,children:(0,p.jsx)(Ft,{moduleName:e,title:t,layout:n,columns:r,maxCount:i,request:a,viewAll:o,staticData:s,showTabs:c,dateRange:l,headerExtra:u,rows:f,loading:m})}):(0,p.jsx)(d.Empty,{description:`DynamicCards: a moduleName prop is required`})}var{Text:Lt}=d.Typography;function Rt(e){return(e??[]).map(e=>({key:e.userId,title:e.isSelf?`${e.name} (You)`:e.name,searchText:`${e.name} ${e.email??``}`.toLowerCase(),children:Rt(e.children)}))}function zt(e,t){let n=[];for(let r of e){let e=zt(r.children??[],t);(r.searchText.includes(t)||e.length>0)&&n.push({...r,children:e})}return n}function Bt(e,t=[]){for(let n of e)t.push(n.key),Bt(n.children??[],t);return t}function Vt({value:e=[],onChange:t}){let[r,i]=(0,u.useState)(null),[a,o]=(0,u.useState)(!0),[s,c]=(0,u.useState)(null),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=!0;return n.uo().then(t=>{e&&i(Rt(t?.users))}).catch(t=>{e&&c(t)}).finally(()=>{e&&o(!1)}),()=>{e=!1}},[]);let _=l.trim().toLowerCase(),v=(0,u.useMemo)(()=>_&&r?zt(r,_):r,[r,_]),y=_?{expandedKeys:Bt(v??[])}:{},b=(0,p.jsxs)(`div`,{style:{width:280},children:[(0,p.jsx)(d.Input.Search,{placeholder:`Search users`,allowClear:!0,value:l,onChange:e=>m(e.target.value),style:{marginBottom:8}}),a&&(0,p.jsx)(`div`,{style:{padding:24,textAlign:`center`},children:(0,p.jsx)(d.Spin,{size:`small`})}),s&&(0,p.jsx)(d.Empty,{description:`Could not load users`}),!a&&!s&&(v?.length?(0,p.jsx)(`div`,{style:{maxHeight:280,overflow:`auto`},children:(0,p.jsx)(d.Tree,{checkable:!0,selectable:!1,defaultExpandAll:!0,treeData:v,checkedKeys:e,onCheck:(e,n)=>t(n.checkedNodes.map(e=>e.key)),...y})}):(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No users`})),e.length>0&&(0,p.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginTop:8,paddingTop:8,borderTop:`1px solid #f0f0f0`},children:[(0,p.jsxs)(Lt,{type:`secondary`,children:[e.length,` selected`]}),(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:()=>t([]),children:`Clear`})]})]});return(0,p.jsx)(d.Popover,{content:b,trigger:`click`,placement:`bottomRight`,open:h,onOpenChange:g,children:(0,p.jsx)(d.Badge,{count:e.length,size:`small`,offset:[-4,4],children:(0,p.jsxs)(d.Button,{icon:(0,p.jsx)(f.FilterOutlined,{}),children:[`Filter by `,(0,p.jsx)(f.DownOutlined,{style:{fontSize:10}})]})})})}function Ht(e){let t=n.di().startOf(`day`).diff(n.gi(e).startOf(`day`),`day`);return t<=0?`Today`:t===1?`1 Day ago`:`${t} Days ago`}function Ut(e=[],t){let r=new Map;return e.forEach(e=>{let i=t(e),a=n.gi(i);if(!a.isValid())return;let o=a.format(`YYYY-MM-DD`);r.has(o)||r.set(o,{date:new Date(a.valueOf()),items:[]}),r.get(o).items.push(e)}),[...r.values()].sort((e,t)=>t.date-e.date)}function Wt(e){let t=e?.dateTimeFormat||`MMM DD, YYYY | hh:mm A`,[n]=t.split(`|`);return(n??t).trim()||t}function Gt(e){let t=n.Si();return n.fi(e,Wt(t),t)}function Kt(e){return Gt(e)}function qt(e){return n.pi(e,n.Si())}function Jt({row:e,last:t,getTime:n,getAuthor:r,getMeta:i,renderBody:a}){let o=n(e),s=r?.(e),c=i?.(e);return(0,p.jsxs)(`div`,{className:`znx-an-item`,children:[(0,p.jsxs)(`div`,{className:`znx-an-rail`,children:[c?(0,p.jsx)(`span`,{className:`znx-an-icon-dot znx-an-icon-dot--${c.tone}`,title:c.label,children:c.icon}):(0,p.jsx)(`span`,{className:`znx-an-dot`}),!t&&(0,p.jsx)(`span`,{className:`znx-an-line`})]}),(0,p.jsxs)(`div`,{className:`znx-an-content`,children:[a(e),(0,p.jsxs)(`div`,{className:`znx-an-meta`,children:[s&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`span`,{className:`znx-an-author`,children:s}),(0,p.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`})]}),(0,p.jsx)(`span`,{className:`znx-an-stamp`,children:qt(o)})]})]})]})}function Yt({rows:e=[],getTime:t,getKey:n,getAuthor:r,getMeta:i,renderBody:a,emptyText:o=`Nothing here yet.`,grouped:s=!0}){if(!s)return e.length?(0,p.jsx)(`div`,{className:`znx-an-flat`,children:e.map((o,s)=>(0,p.jsx)(Jt,{row:o,last:s===e.length-1,getTime:t,getAuthor:r,getMeta:i,renderBody:a},n(o,s)))}):(0,p.jsx)(`div`,{className:`znx-an-empty`,children:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})});let c=Ut(e,t);if(!c.length)return(0,p.jsx)(`div`,{className:`znx-an-empty`,children:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})});let l=c.map((e,o)=>({key:String(o),label:(0,p.jsxs)(`span`,{className:`znx-an-group`,children:[(0,p.jsx)(`span`,{className:`znx-an-group-day`,children:Ht(e.date)}),(0,p.jsx)(`span`,{className:`znx-an-group-date`,children:Kt(e.date)}),(0,p.jsx)(`span`,{className:`znx-an-group-count`,children:e.items.length})]}),children:e.items.map((o,s)=>(0,p.jsx)(Jt,{row:o,last:s===e.items.length-1,getTime:t,getAuthor:r,getMeta:i,renderBody:a},n(o,s)))}));return(0,p.jsx)(d.Collapse,{className:`znx-an-collapse`,defaultActiveKey:[`0`],ghost:!0,items:l})}var Xt={add:`created`,create:`created`,created:`created`,update:`updated`,updated:`updated`,edit:`updated`,edited:`updated`,update_log:`updated`,update_proof:`updated`,notes:`note`,note:`note`,comment:`note`,assign:`assigned`,assigned:`assigned`,assignment:`assigned`,reassign:`assigned`,reassigned:`assigned`,submit:`submitted`,submitted:`submitted`,submission:`submitted`,"internal submission":`submitted`,send_for_approval:`sendForApproval`,"send for approval":`sendForApproval`,sendforapproval:`sendForApproval`,resubmit:`resubmitted`,resubmitted:`resubmitted`,resent_for_approval:`resent`,reject:`rejected`,rejected:`rejected`,reject_days:`rejected`,declined:`rejected`,decline:`rejected`,approve:`approved`,approved:`approved`,approve_days:`approved`,reopen:`reopened`,reopened:`reopened`,delete:`deleted`,deleted:`deleted`,remove:`deleted`,removed:`deleted`,status:`status`,"status change":`status`,statuschange:`status`,document:`document`,documents:`document`,upload:`document`,uploaded:`document`,attachment:`document`},Zt={created:{tone:`success`,icon:(0,p.jsx)(f.PlusOutlined,{}),label:`Created`},updated:{tone:`info`,icon:(0,p.jsx)(f.EditOutlined,{}),label:`Updated`},note:{tone:`neutral`,icon:(0,p.jsx)(f.MessageOutlined,{}),label:`Note`},assigned:{tone:`purple`,icon:(0,p.jsx)(f.UserSwitchOutlined,{}),label:`Assigned`},submitted:{tone:`info`,icon:(0,p.jsx)(f.SendOutlined,{}),label:`Submitted`},sendForApproval:{tone:`info`,icon:(0,p.jsx)(f.SendOutlined,{}),label:`Send for Approval`},resubmitted:{tone:`purple`,icon:(0,p.jsx)(f.RedoOutlined,{}),label:`Re-submitted`},resent:{tone:`purple`,icon:(0,p.jsx)(f.RedoOutlined,{}),label:`Resend for Approval`},approved:{tone:`success`,icon:(0,p.jsx)(f.CheckOutlined,{}),label:`Approved`},rejected:{tone:`danger`,icon:(0,p.jsx)(f.CloseOutlined,{}),label:`Rejected`},reopened:{tone:`neutral`,icon:(0,p.jsx)(f.UndoOutlined,{}),label:`Reopened`},deleted:{tone:`danger`,icon:(0,p.jsx)(f.DeleteOutlined,{}),label:`Deleted`},status:{tone:`warning`,icon:(0,p.jsx)(f.SwapOutlined,{}),label:`Status changed`},document:{tone:`info`,icon:(0,p.jsx)(f.PaperClipOutlined,{}),label:`Document`},scheduled:{tone:`warning`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),label:`Scheduled`},default:{tone:`neutral`,icon:(0,p.jsx)(f.HistoryOutlined,{}),label:`Activity`}},Qt=[[/\b(?:submitted|sent|send)\b[\s\S]*\b(?:cfo|finance)\b[\s\S]*\bfor approval\b/i,`sendForApproval`],[/\bsend(?:ing)?\s+for\s+approval\b/i,`sendForApproval`],[/\breject/i,`rejected`],[/\bresent\b/i,`resent`],[/\bresubmit/i,`resubmitted`],[/\bapprov/i,`approved`],[/\bsubmit/i,`submitted`],[/\breassign|\bassign/i,`assigned`],[/\bdelete|\bremov/i,`deleted`],[/\breopen/i,`reopened`],[/\bstatus/i,`status`],[/\bdocument|\battach|\bupload/i,`document`],[/\bnote/i,`note`],[/\bupdat|\bchang|\bedit/i,`updated`],[/\bcreat|\badded\b/i,`created`]];function $t(e,t){let n=String(e||``).trim().toLowerCase();if(n&&Xt[n])return Xt[n];let r=String(t||``);for(let[e,t]of Qt)if(e.test(r))return t;return`default`}function en(e={},t=``){return Zt[$t(e.activityType??e.activity_type??e.type??e.action,t||e.activityComments)]??Zt.default}function tn(e=``){if(typeof document>`u`)return String(e);let t=document.createElement(`div`);return t.innerHTML=e,t.textContent||t.innerText||``}var nn=[{id:`a1`,activityTime:new Date().toISOString(),activityComments:`Job <b>created</b> and assigned to the recruitment team.`},{id:`a2`,activityTime:new Date(Date.now()-1728e5).toISOString(),activityComments:`Status changed to <b>Active</b>.`}];function rn({activity:e,grouped:t=!0}){let n=(0,u.useMemo)(()=>[...Array.isArray(e)?e:nn].sort((e,t)=>{let n=new Date(e?.activityTime??e?.activityDateTime??e?.performedAt??e?.createdAt??e?.updatedAt??0).getTime(),r=new Date(t?.activityTime??t?.activityDateTime??t?.performedAt??t?.createdAt??t?.updatedAt??0).getTime();return(Number.isNaN(r)?0:r)-(Number.isNaN(n)?0:n)}),[e]);return(0,p.jsx)(`div`,{className:`znx-an-body`,children:(0,p.jsx)(`div`,{className:`znx-an-scroll`,children:(0,p.jsx)(Yt,{rows:n,grouped:t,getTime:e=>e.activityTime??e.createdAt,getKey:(e,t)=>e.id??e._id??t,emptyText:`No activity here.`,getMeta:e=>en(e,e.activityComments),renderBody:e=>{let t=en(e,e.activityComments);return(0,p.jsxs)(`div`,{className:`znx-an-comment`,children:[(0,p.jsx)(`span`,{className:`znx-an-tag znx-an-tag--${t.tone}`,children:t.label}),tn(e.activityComments)]})}})})})}function an(e){let t=e?.user_name??e?.userName??e?.username,n=`${e?.first_name??e?.firstName??``} ${e?.last_name??e?.lastName??``}`.trim(),r=e?.email??``,i=t??n.replace(/\s+/g,``)??r??String(e?.user_id??e?.id??``),a=[t,n,r].filter(Boolean).join(` - `)||String(i);return{value:String(i),label:a}}var on=[{id:`n1`,createdAt:new Date().toISOString(),author:`You`,notes:`Shortlisted 3 candidates, sharing profiles with @Hiring Manager today.`}];function sn(e=``){return e.split(/(\s+)/).map((e,t)=>e.startsWith(`@`)&&e.length>1?(0,p.jsx)(`span`,{className:`znx-an-mention`,children:e},t):(0,p.jsx)(`span`,{children:e},t))}function cn({notes:e,users:t=[],onAddNote:r,allowAddNote:i=!0}){let[a]=d.Form.useForm(),[o,s]=(0,u.useState)(()=>Array.isArray(e)?e:on),[c,l]=(0,u.useState)(!1),[f,m]=(0,u.useState)(null),[h,g]=(0,u.useState)(!1),_=(0,u.useRef)(null),v=Array.isArray(e)?e:o,y=(0,u.useMemo)(()=>t.map(e=>({value:e.display??e.value,label:e.display??e.label})),[t]),b=f??y;return(0,p.jsxs)(`div`,{className:`znx-an-body`,children:[i&&(0,p.jsxs)(d.Form,{form:a,onFinish:async({note:e})=>{let t=(e??``).trim();if(t){l(!0);try{r?await r(t):s(e=>[{id:`local-${Date.now()}`,createdAt:new Date().toISOString(),author:`You`,notes:t},...e]),a.resetFields(),d.message.success(`Notes added successfully`)}catch{d.message.error(`Something went wrong, please try again.`)}finally{l(!1)}}},className:`znx-an-composer`,children:[(0,p.jsx)(d.Form.Item,{name:`note`,rules:[{required:!0,message:`Notes is required`}],style:{marginBottom:0},children:(0,p.jsx)(d.Mentions,{rows:3,prefix:`@`,options:b,loading:h,filterOption:!1,onSearch:e=>{clearTimeout(_.current),g(!0),_.current=setTimeout(()=>{n.Zt(e).then(e=>{let t=Array.isArray(e)?e:e?.items??e?.list??e?.data??[];m(t.map(an))}).catch(()=>m([])).finally(()=>g(!1))},300)},placeholder:`Add your notes on the job, use '@' to mention`})}),(0,p.jsx)(`div`,{className:`znx-an-composer-actions`,children:(0,p.jsx)(d.Button,{type:`primary`,size:`small`,htmlType:`submit`,loading:c,children:`Post`})})]}),(0,p.jsx)(`div`,{className:`znx-an-scroll`,children:(0,p.jsx)(Yt,{rows:v,getTime:e=>e.createdAt??e.activityTime,getKey:(e,t)=>e.id??e._id??t,getAuthor:e=>e.createdByName||e.author||``,emptyText:`No notes here.`,renderBody:e=>(0,p.jsx)(`div`,{className:`znx-an-comment`,children:sn(e.notes)})})})]})}function ln({moduleName:e,id:t,users:r=[],showActivity:i=!0,showNotes:a=!0,allowAddNote:o=!0,defaultActiveKey:s=`activity`,refreshKey:c=0,className:l=``}){let[f,m]=(0,u.useState)(null),[h,g]=(0,u.useState)(null);(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;async function o(){let[o,s]=await Promise.all([i?n.Yr(e,t).catch(()=>[]):Promise.resolve(null),a?n.Qr(t).catch(()=>[]):Promise.resolve(null)]);r||(m(o),g(s))}return o(),()=>{r=!0}},[e,t,i,a,c]);let _=(0,u.useCallback)(async r=>{if(!t)return;await n.Jr({relatedId:t,notes:r,notesFor:e});let[a,o]=await Promise.all([n.Qr(t).catch(()=>[]),i?n.Yr(e,t).catch(()=>[]):Promise.resolve(f)]);g(a),i&&m(o)},[t,e,i,f]),v=[i&&{key:`activity`,title:`Activity`,count:Array.isArray(f)?f.length:void 0,children:(0,p.jsx)(rn,{activity:f})},a&&{key:`notes`,title:`Notes`,count:Array.isArray(h)?h.length:void 0,children:(0,p.jsx)(cn,{notes:h,users:r,allowAddNote:o,onAddNote:t?_:void 0})}].filter(Boolean),y=v.some(e=>e.key===s)?s:v[0]?.key,[b,x]=(0,u.useState)(y);return(0,p.jsx)(d.Card,{className:[`znx-an-card`,l].filter(Boolean).join(` `),styles:{body:{padding:0}},children:(0,p.jsx)(n.ui,{className:`znx-an-tabs`,tabs:v,activeKey:b,onChange:x})})}ln.propTypes={moduleName:g.default.string,id:g.default.string,users:g.default.array,showActivity:g.default.bool,showNotes:g.default.bool,allowAddNote:g.default.bool,defaultActiveKey:g.default.string,refreshKey:g.default.oneOfType([g.default.number,g.default.string]),className:g.default.string};function un({assignees:e,extraAssignees:t}){return(0,p.jsxs)(d.Avatar.Group,{maxCount:3,size:`small`,children:[e.map((e,t)=>(0,p.jsx)(d.Tooltip,{title:e.initials,children:(0,p.jsx)(d.Avatar,{size:`small`,style:{backgroundColor:e.color,fontSize:10,fontWeight:600,cursor:`default`},children:e.initials})},t)),t>0&&(0,p.jsxs)(d.Avatar,{size:`small`,style:{backgroundColor:`#d9d9d9`,color:`#555`,fontSize:10},children:[`+`,t]})]})}var dn=[`.xlsx`,`.xls`,`.csv`],fn=10,pn={".xlsx":[`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],".xls":[`application/vnd.ms-excel`],".csv":[`text/csv`,`application/csv`,`text/plain`]},mn=[{test:(e,t)=>e===`.pdf`||t===`application/pdf`,label:`PDF`},{test:(e,t)=>t.startsWith(`image/`)||[`.jpg`,`.jpeg`,`.png`,`.gif`,`.webp`,`.heic`,`.bmp`,`.svg`].includes(e),label:`Image`},{test:e=>[`.doc`,`.docx`].includes(e),label:`Word document`},{test:e=>[`.zip`,`.rar`,`.7z`].includes(e),label:`Archive`},{test:e=>[`.txt`,`.json`,`.xml`].includes(e),label:`Plain text`}];function hn(e=``){let t=e.lastIndexOf(`.`);return t===-1?``:e.slice(t).toLowerCase()}function gn(e=0){return e<1024?`${e} B`:e<1048576?`${Math.ceil(e/1024)} KB`:`${(e/1048576).toFixed(1)} MB`}function _n(e=dn){let t=e.map(e=>e.toLowerCase());return t.concat(t.flatMap(e=>pn[e]??[])).join(`,`)}function vn(e,{accept:t=dn,maxSizeMB:n=10}={}){if(!e)return`No file selected.`;let r=hn(e.name),i=(e.type||``).toLowerCase(),a=t.map(e=>e.toLowerCase()),o=a.join(`, `);if(!r)return`"${e.name}" has no file extension. Only ${o} files are allowed.`;if(!a.includes(r)){let e=mn.find(e=>e.test(r,i));return e?`${e.label} files are not supported. Only ${o} files are allowed.`:`"${r}" files are not supported. Only ${o} files are allowed.`}let s=pn[r];return i&&s&&!s.includes(i)?`"${e.name}" is not a real ${r} file (detected ${i}). Re-save it from Excel and try again.`:e.size===0?`"${e.name}" is empty. Fill in at least one row before uploading.`:e.size>n*1024*1024?`File is ${gn(e.size)}. The limit is ${n} MB.`:null}function yn(){return(0,p.jsxs)(`svg`,{className:`bulk-upload-art`,viewBox:`0 0 72 72`,focusable:`false`,"aria-hidden":`true`,children:[(0,p.jsx)(`rect`,{x:`12`,y:`6`,width:`36`,height:`48`,rx:`5`,className:`bulk-upload-art__sheet`}),(0,p.jsx)(`path`,{d:`M20 20h20M20 28h20M20 36h12`,className:`bulk-upload-art__lines`}),(0,p.jsx)(`circle`,{cx:`50`,cy:`48`,r:`15`,className:`bulk-upload-art__badge`}),(0,p.jsx)(`path`,{d:`M50 55V41m0 0-6 6m6-6 6 6`,className:`bulk-upload-art__arrow`})]})}function bn({title:e,description:t,breadcrumbItems:r,backTo:i,backLabel:a=`Back`,templateLabel:o=`Download Sample Template`,templateTitle:s=`Sample template`,templateHint:c=`Pre-filled with the exact column names the importer expects. Do not rename or reorder the columns.`,instructions:l=[],accept:m=dn,maxSizeMB:g=10,onDownloadTemplate:_,onUpload:v,renderResult:y,extraSidebar:b}){let x=(0,u.useRef)(null),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(!1),[E,D]=(0,u.useState)(!1),[O,k]=(0,u.useState)(null),[A,j]=(0,u.useState)(null),[M,N]=(0,u.useState)(null),[P,F]=(0,u.useState)(0),I=(0,u.useMemo)(()=>m.map(e=>e.toLowerCase()),[m]),L=(0,u.useMemo)(()=>_n(I),[I]),R=(0,u.useCallback)(()=>{k(null),j(null),N(null),C(!1),F(e=>e+1)},[]),z=(0,u.useCallback)(async()=>{if(_){T(!0);try{await _(),d.message.success(`Sample template downloaded.`)}catch(e){d.message.error(e?.message||`Could not download the template.`)}finally{T(!1)}}},[_]),B=(0,u.useCallback)(async e=>{if(!e||E)return;F(e=>e+1);let t=vn(e,{accept:I,maxSizeMB:g});if(t){k(null),N(null),j(t);return}j(null),N(null),k({name:e.name,size:e.size}),D(!0);try{let t=await v(e);N(t)}catch(e){j(e?.message||`Upload failed. Please try again.`)}finally{D(!1)}},[I,g,v,E]),V=()=>{E||x.current?.click()},H=[`bulk-upload-dropzone`,S?`is-dragging`:``,E?`is-busy`:``,A?`is-error`:``,M&&!A?`is-done`:``].filter(Boolean).join(` `);return(0,p.jsxs)(`div`,{className:`bulk-upload-panel`,children:[r?.length?(0,p.jsx)(`div`,{className:`bulk-upload-breadcrumb`,children:(0,p.jsx)(n.Dt,{items:r})}):null,(0,p.jsxs)(`div`,{className:`bulk-upload-frame`,children:[(0,p.jsxs)(`header`,{className:`bulk-upload-header`,children:[(0,p.jsx)(`div`,{className:`bulk-upload-header__icon`,"aria-hidden":`true`,children:(0,p.jsx)(f.FileExcelOutlined,{})}),(0,p.jsxs)(`div`,{className:`bulk-upload-header__text`,children:[(0,p.jsx)(`h1`,{className:`bulk-upload-header__title`,children:e}),t?(0,p.jsx)(`p`,{className:`bulk-upload-header__desc`,children:t}):null]}),i?(0,p.jsx)(h.Link,{className:`bulk-upload-header__back`,to:i,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.ArrowLeftOutlined,{}),children:a})}):null]}),(0,p.jsxs)(`div`,{className:`bulk-upload-grid`,children:[(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--drop`,children:[(0,p.jsxs)(`div`,{className:`bulk-upload-card__head`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-step`,children:`Step 2`}),(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:`Upload the filled file`})]}),(0,p.jsxs)(`div`,{role:`button`,tabIndex:E?-1:0,"aria-disabled":E,"aria-label":`Upload the filled file — click to browse, or drop a file here`,className:H,onClick:V,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),V())},onDragOver:e=>{e.preventDefault(),E||C(!0)},onDragLeave:()=>C(!1),onDrop:e=>{e.preventDefault(),C(!1),B(e.dataTransfer.files?.[0])},children:[(0,p.jsx)(yn,{}),(0,p.jsx)(`p`,{className:`bulk-upload-dropzone__title`,children:S?`Drop the file to start uploading`:`Drag & drop your file here`}),(0,p.jsxs)(`p`,{className:`bulk-upload-dropzone__sub`,children:[`or `,(0,p.jsx)(`span`,{className:`bulk-upload-dropzone__link`,children:`browse from your computer`})]}),(0,p.jsxs)(`div`,{className:`bulk-upload-chips`,children:[I.map(e=>(0,p.jsx)(d.Tag,{className:`bulk-upload-chip bulk-upload-chip--ok`,children:e},e)),(0,p.jsx)(d.Tooltip,{title:`These file types are rejected before upload`,children:(0,p.jsx)(d.Tag,{className:`bulk-upload-chip bulk-upload-chip--no`,children:`.pdf .jpg .png not allowed`})})]}),(0,p.jsxs)(`p`,{className:`bulk-upload-dropzone__limit`,children:[`Maximum size `,g,` MB`]})]}),(0,p.jsx)(`input`,{ref:x,hidden:!0,type:`file`,accept:L,onChange:e=>B(e.target.files?.[0])},P),O?(0,p.jsxs)(`div`,{className:`bulk-upload-file ${A?`is-error`:``}`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-file__icon`,children:E?(0,p.jsx)(f.FileExcelOutlined,{}):A?(0,p.jsx)(f.CloseCircleFilled,{}):(0,p.jsx)(f.CheckCircleFilled,{})}),(0,p.jsxs)(`span`,{className:`bulk-upload-file__meta`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-file__name`,title:O.name,children:O.name}),(0,p.jsxs)(`span`,{className:`bulk-upload-file__size`,children:[gn(O.size),E?` · uploading…`:A?` · failed`:` · processed`]})]}),E?null:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:M?(0,p.jsx)(f.ReloadOutlined,{}):(0,p.jsx)(f.DeleteOutlined,{}),onClick:R,children:M?`Upload another`:`Remove`})]}):null,E?(0,p.jsx)(d.Progress,{percent:99,status:`active`,showInfo:!1,size:`small`,className:`bulk-upload-progress`}):null,A?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,className:`bulk-upload-alert`,title:`File not accepted`,description:A}):null]}),(0,p.jsxs)(`aside`,{className:`bulk-upload-side`,children:[(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--template`,children:[(0,p.jsxs)(`div`,{className:`bulk-upload-card__head`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-step`,children:`Step 1`}),(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:s})]}),(0,p.jsx)(`p`,{className:`bulk-upload-side__hint`,children:c}),(0,p.jsx)(d.Button,{block:!0,icon:(0,p.jsx)(f.DownloadOutlined,{}),loading:w,onClick:z,className:`bulk-upload-template-btn`,children:o})]}),l.length?(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--rules`,children:[(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:`Before you upload`}),(0,p.jsx)(`ul`,{className:`bulk-upload-rules`,children:l.map(e=>(0,p.jsx)(`li`,{children:e},e))})]}):null,b]})]}),M&&y?(0,p.jsx)(`div`,{className:`bulk-upload-result`,children:y(M,{reset:R})}):null]})]})}var xn=e.t({getJobById:()=>kn,getJobDetailView:()=>Sn,updateJobDescription:()=>An});async function Sn(e){let n=await t.a(),r=new URLSearchParams({jobId:String(e)}),i=await fetch(`${t.w}/jobs?${r}`,{method:`GET`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(!i.ok)throw Error(`API ${i.status}: ${i.statusText}`);let a=await i.json();return a.data??a}var Cn={email:`zinnext@realtekconsulting.net`,user_pwd:`Admin@123*`},wn=null;async function Tn(){return wn||(wn=fetch(`${t.S}/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(Cn)}).then(async e=>{if(!e.ok)throw Error(`Login failed: ${e.status}`);let t=await e.json(),n=t.token??t.access_token??t.data?.token??t.data?.access_token;if(!n)throw Error(`No token in login response`);return localStorage.setItem(`authToken`,n),n}).finally(()=>{wn=null}),wn)}async function En(){return(t.u()??localStorage.getItem(`authToken`))||Tn()}async function Dn(e){let n=await En(),r=await fetch(`${t.S}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(r.status===401&&(localStorage.removeItem(`authToken`),n=await Tn(),r=await fetch(`${t.S}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}})),!r.ok)throw Error(`API ${r.status}: ${r.statusText}`);let i=await r.json();return i.data??i}async function On(e,n){let r=await En(),i=await fetch(`${t.S}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)});if(i.status===401&&(localStorage.removeItem(`authToken`),r=await Tn(),i=await fetch(`${t.S}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)})),!i.ok)throw Error(`API ${i.status}: ${i.statusText}`);return i.json()}async function kn(e){return Dn(`/jobs/${e}`)}async function An(e,t){return On(`/jobs/${e}`,{rawDescription:t})}var{Text:jn}=d.Typography,Mn=2;function Nn({jobId:e,sections:t=[],meta:n=[],rawDescription:r=``,onSaved:i}){let[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1),_=[...t].sort((e,t)=>(e.displayOrder??0)-(t.displayOrder??0)),v=a?_:_.slice(0,Mn),y=_.length>Mn;function b(){m(r),c(!0)}function x(){c(!1),m(``)}async function S(){if(!l.trim()){d.message.warning(`Please enter a job description`);return}g(!0);try{await An(e,l.trim());let t=await kn(e);i?.(t),c(!1),m(``),d.message.success(`Description updated successfully`)}catch{d.message.error(`Failed to update description`)}finally{g(!1)}}return s?(0,p.jsxs)(d.Space,{direction:`vertical`,style:{width:`100%`},size:8,children:[(0,p.jsx)(d.Input.TextArea,{rows:10,value:l,onChange:e=>m(e.target.value),placeholder:`Paste raw job description here...`}),(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,loading:h,onClick:S,children:`Save & Parse`}),(0,p.jsx)(d.Button,{onClick:x,children:`Cancel`})]})]}):(0,p.jsxs)(`div`,{className:`desc-block`,children:[(0,p.jsx)(`div`,{className:`desc-block-toolbar`,children:(0,p.jsx)(f.EditOutlined,{className:`desc-edit-icon`,onClick:b})}),!t.length&&!n.length?(0,p.jsx)(jn,{type:`secondary`,children:`No description available.`}):(0,p.jsxs)(`div`,{className:`jdv-ats-desc`,children:[n.length>0&&(0,p.jsx)(`div`,{className:`jdv-ats-meta-grid`,children:n.map(({fieldKey:e,fieldLabel:t,value:n})=>(0,p.jsxs)(`div`,{className:`jdv-ats-meta-row`,children:[(0,p.jsx)(`span`,{className:`jdv-ats-meta-key`,children:t}),(0,p.jsx)(`span`,{className:`jdv-ats-meta-val`,children:n})]},e))}),(0,p.jsx)(`div`,{className:`jdv-ats-sections`,children:v.map(({sectionKey:e,sectionTitle:t,renderType:n,content:r=[]})=>n===`education`?(0,p.jsxs)(`div`,{className:`education-block`,children:[(0,p.jsxs)(`div`,{className:`education-header`,children:[(0,p.jsx)(`span`,{children:`🎓`}),(0,p.jsx)(`span`,{children:t})]}),(0,p.jsx)(`ul`,{className:`education-list`,children:r.map((e,t)=>(0,p.jsx)(`li`,{className:`education-list-item`,children:e},t))})]},e):(0,p.jsxs)(`div`,{className:`jdv-ats-section`,children:[(0,p.jsx)(`div`,{className:`jdv-ats-section-hd`,children:(0,p.jsx)(`span`,{children:t})}),n===`chips`?(0,p.jsx)(d.Space,{size:[6,6],wrap:!0,style:{marginTop:8},children:r.map((e,t)=>(0,p.jsx)(d.Tag,{className:`jdv-skill-tag`,children:e},t))}):(0,p.jsx)(`ul`,{className:`jdv-ats-bullets`,children:r.map((e,t)=>(0,p.jsx)(`li`,{className:`jdv-ats-bullet-item`,children:e},t))})]},e))}),y&&(0,p.jsx)(`span`,{className:`jdv-desc-toggle`,onClick:()=>o(e=>!e),children:a?`Show less`:`Show more (${t.length-Mn} more sections)`})]})]})}function Pn(){return Number(localStorage.getItem(`userId`))||0}function Fn(e,{id:t,moduleName:n,record:r}={}){let i=(0,u.useMemo)(()=>Array.isArray(e)?e:[],[e]),a=(0,u.useMemo)(()=>i.filter(e=>typeof e?.visibleWhen==`function`),[i]),[o,s]=(0,u.useState)({});return(0,u.useEffect)(()=>{if(!a.length)return;let e=!1,i={id:t,moduleName:n,record:r,currentUserId:Pn()};return a.forEach(n=>{let r=`${t}:${n.key}`;Promise.resolve().then(()=>n.visibleWhen(i)).then(t=>{e||s(e=>({...e,[r]:t!==!1}))}).catch(()=>{e||s(e=>({...e,[r]:!0}))})}),()=>{e=!0}},[a,t,n,r]),(0,u.useMemo)(()=>i.filter(e=>typeof e?.visibleWhen!=`function`||o[`${t}:${e.key}`]===!0),[i,o,t])}var In=[{field:`baId`,label:`BA`,icon:`idcard`},{field:`clientName`,icon:`bank`,tooltip:`Client`},{field:`employerName`,icon:`team`,badgeField:`engagementType`,tooltip:`Employer`},{field:`projectName`,icon:`project`,tooltip:`Project`},{field:`batchPriority`,icon:`idcard`,tooltip:`Priority`},{field:`paymentTermsLabel`,icon:`cycle`,tooltip:`Payment Terms`},{field:`paymentDeadlineLabel`,icon:`period`,tooltip:`Payment Deadline`},{field:`batchName`,icon:`project`,tooltip:`Payment Batch`},{field:`period.label`,icon:`period`,tooltip:`Period`}],Ln=e.t({billingConfig:()=>Rn,default:()=>Rn}),Rn={module:`billing`,tabs:[],header:{variant:`finance`,title:`candidateName`,eyebrow:`designation`,statusField:`billing.status`,chips:In}},zn={USD:`$`,INR:`₹`,EUR:`€`,GBP:`£`,AUD:`$`,CAD:`$`},Bn=e=>e==null||e===``||Array.isArray(e)&&e.length===0,Vn=e=>!Bn(e);function Hn(e){let t=Wn(e);return t.charAt(0).toUpperCase()+t.slice(1)}function Un(e){return e&&typeof e==`object`&&!Array.isArray(e)&&`id`in e&&`value`in e?e.id??e.value:e}function Wn(e){return Array.isArray(e)?e.filter(e=>!Bn(e)).map(e=>Wn(e)).filter(Boolean).join(`, `):e&&typeof e==`object`&&`id`in e&&`value`in e?String(e.value??e.id??``):String(e??``)}function Gn(e){return Bn(e)?``:zn[String(e).toUpperCase()]??String(e)}function Kn(e){return Bn(e)?``:n.pi(e)}function qn({start:e,end:t,sym:n=``,unit:r}={}){return Bn(e)||Number(e)<=0?``:`${n}${!Bn(t)&&Number(t)>0?`${e} - ${t}`:`${e}`}${Bn(r)?``:`/${r}`}`}function Jn(e){let t=Wn(e).toLowerCase();return[`active`,`open`,`hired`,`approved`,`fulfilled`,`submitted`].includes(t)?`success`:[`inactive`,`closed`,`rejected`,`high`].includes(t)?`error`:[`hold`,`on hold`,`pending`,`unread`,`medium`].includes(t)?`warning`:`default`}var Yn=e.t({candidateConfig:()=>Xn,default:()=>Xn}),Xn={module:`candidate`,tabs:[{key:`details`,label:`Details`},{key:`jobs`,label:`Jobs`},{key:`emails`,label:`Emails`},{key:`attachments`,label:`Attachments`}],header:{title:[`firstName`,`middleName`,`lastName`],eyebrow:`source`,status:({val:e,has:t})=>t(e(`status`))?{label:Hn(e(`status`)),color:Jn(e(`status`))}:e(`applicantPlacedStatus`)===!0?{label:`Placed`,color:`success`}:null,ids:[{label:`Candidate ID`,field:[`applicantRefrenceId`,`applicantReferenceId`,`candidateReferenceId`]}],meta:[{icon:`designation`,field:`designation`},{icon:`location`,field:[`currentLocation`,`preferredLocation`]},{icon:`experience`,compute:Zn},{icon:`employment`,field:`workAuthorisation`},{icon:`rate`,prefix:`Expected: `,compute:Qn}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}};function Zn({val:e,has:t}){let n=t(e(`yearOfExperience`))?e(`yearOfExperience`):e(`experience`);if(!t(n))return``;let r=e(`monthOfExperience`);return`${n} yrs${t(r)&&Number(r)>0?` ${r} mo`:``}`}function Qn({val:e}){let t=e(`expectedPayDetails`)??{};return qn({start:t.expectedPay??e(`expectedPay`),sym:t.expectedPayCurrencySymbol??Gn(t.expectedPayCurrency),unit:t.expectedPayUnit})}var $n=e.t({default:()=>er,employerConfig:()=>er}),er={module:`employer`,header:{title:`empCompanyName`,eyebrow:`empWebsite`,status:({val:e,has:t})=>t(e(`status`))?{label:Hn(e(`status`)),color:Jn(e(`status`))}:null,ids:[{label:`Federal Tax ID`,field:`empFederalTaxId`},{label:`State of Incorporation`,field:`empStateOfIncorporation`}],meta:[{icon:`location`,field:`empCompanyLocation`}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}},tr=e=>e===!0||e===1||e===`1`;function nr(e){return e==null||e===``?!0:Array.isArray(e)?e.length===0:typeof e==`object`&&Object.values(e).every(e=>nr(e))}function rr(e){return n.Sr(e).filter(e=>e?.location||e?.url)}function ir(e){return rr(e).length>0}function ar(e){return tr(e?.hideWhenEmpty)||tr(e?.hideWhenEmptyInDetail)||tr(e?.renderOptions?.hideWhenEmpty)||tr(e?.renderOptions?.hideWhenEmptyInDetail)}function or(e){return tr(e?.hideWhenZero)||tr(e?.renderOptions?.hideWhenZero)}function sr(e){if(typeof e==`number`)return e===0;if(typeof e==`string`){let t=e.trim();return t!==``&&Number.isFinite(Number(t))&&Number(t)===0}return!1}function cr(e,t){let n=or(e);return!ar(e)&&!n?!1:e?.type===`file`||e?.type===`document`||e?.renderType===`document`?!ir(t):nr(t)||n&&sr(t)}var lr=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/,ur=new Set([`time`]),dr=new Set([`date`]),fr=new Set([`datetime`,`date-time`,`datetime-local`]),pr=new Set([`select`,`radio`,`multiselect`,`checkbox-group`,`checkboxgroup`]),mr=new Set([`text-editor`,`richtext`,`rich-text`,`html`,`editor`]),hr=e=>e===!0||e===1||e===`1`||e===`true`,gr=e=>e==null||typeof e==`string`&&e.trim()===``;function _r(e){return e?.renderOptions?.formatRows===!0&&Array.isArray(e?.subFields)&&e.subFields.length>0}function vr(e,t){let n=(Array.isArray(e?.options)?e.options:[]).find(e=>String(e?.value??``)===String(t));return n?.label!=null&&String(n.label).trim()!==``?String(n.label).trim():String(t)}function yr(e,t,r){let i=e?.$date??e;return n.fi(i,t,r)||String(i)}function br(e){return String(e).replace(/<[^>]*>/g,` `).replace(/\s+/g,` `).trim()}function xr(e,t,n={},r={}){if(gr(t))return``;let i=e?.field,a=String(e?.type??``).trim().toLowerCase(),o=typeof n?.subFieldFormats?.[i]==`string`&&n.subFieldFormats[i].trim()!==``?n.subFieldFormats[i]:``;return ur.has(a)?yr(t,o||r.timeFormat||`hh:mm A`,r):dr.has(a)?yr(t,o||r.dateFormat||`DD MMM YYYY`,r):fr.has(a)?yr(t,o||r.dateTimeFormat||`DD MMM YYYY hh:mm A`,r):t&&typeof t==`object`&&!Array.isArray(t)&&`value`in t?xr(e,t.value,n,r):Array.isArray(t)?t.map(t=>xr(e,t,n,r)).filter(e=>e!==``).join(`, `):t&&typeof t==`object`?``:typeof t==`boolean`?t?r.booleanTrueLabel||`Yes`:r.booleanFalseLabel||`No`:pr.has(a)?vr(e,t):mr.has(a)?br(t):o&&typeof t==`string`&&lr.test(t.trim())?yr(t,o,r):String(t)}function Sr(e,t,n={},r={}){if(!e||typeof e!=`object`||Array.isArray(e))return``;let i=typeof r.separator==`string`&&r.separator!==``?r.separator:` - `;return(t??[]).filter(e=>e?.field&&(e.show===void 0||hr(e.show))).map(t=>xr(t,e[t.field]===void 0?t.payloadKey?e[t.payloadKey]:void 0:e[t.field],n,r)).filter(e=>e!==``).join(i)}function Cr(e,t,n={}){return!_r(e)||!Array.isArray(t)||!t.every(e=>e&&typeof e==`object`&&!Array.isArray(e))?null:t.map(t=>Sr(t,e.subFields,e.renderOptions,n)).filter(e=>e!==``)}var wr=e=>e===!0||e===1||e===`1`;function Tr(e=[]){let t={};for(let n of e??[])for(let e of n?.fields??[]){if(!e?.field||e.value===void 0)continue;let n=e.value,r=n&&typeof n==`object`&&!Array.isArray(n)&&`value`in n?n.value:n;t[e.field]=r,e.payloadKey&&t[e.payloadKey]===void 0&&(t[e.payloadKey]=r)}return t}function Er(e,t){let r=n.s(e?.showIf);return!r.length||wr(e?.ignoreShowIfInDetail)||!r.every(e=>Object.prototype.hasOwnProperty.call(t??{},e.field))?!0:n.a(e.showIf,e=>t[e])}function Dr(e){let t=e?.detailLabelWhen;if(Array.isArray(t)&&t.length)return t;let n=e?.labelWhen;return n?[n]:[]}function Or(e,t){let r=e?.label;if(wr(e?.ignoreLabelWhenInDetail))return r;for(let r of Dr(e))if(!(!r?.field||!r?.label)&&Object.prototype.hasOwnProperty.call(t??{},r.field)&&n.r(r,t[r.field]))return r.label;return r}var kr=/(currency|symbol|unit|type)/i,Ar=/(rate|budget|amount)/i,jr=e=>typeof e==`number`||typeof e==`string`&&e.trim()!==``&&!Number.isNaN(Number(e)),Mr=e=>e===!0||e===1||e===`1`;function Nr(e,t){return!e||!t||!Mr(e.appendHistory)?!1:[e.historyField,...e.historyFields??[]].includes(t)}function Pr(e,t){let n=String(t??``).trim();if(!n)return``;let r=`${e}.`;return n.startsWith(r)?n.slice(r.length):n}function Fr(e,t=[]){let n=`${e}.`,r=[];return(t??[]).forEach(t=>{Nr(t,e)&&(t.fields??[]).forEach(e=>{let t=String(e?.field??``);if(!t.startsWith(n))return;let i=t.slice(n.length);i&&!r.includes(i)&&r.push(i)})}),r}function Ir(e,t=[],n){for(let r of t??[]){if(!Nr(r,e))continue;let t=Pr(e,r?.[n]?.[e]);if(t)return t}return``}var Lr=(e,t)=>!!t&&e!=null&&Object.prototype.hasOwnProperty.call(e,t)&&e[t]!==void 0;function Rr(e){let t=Object.entries(e??{}).find(([e,t])=>Ar.test(e)&&!kr.test(e)&&jr(t));return t?t[0]:``}function zr(e){let t=Object.keys(e??{});return t.find(t=>/currencysymbol/i.test(t)&&String(e[t]??``).trim()!==``)||t.find(t=>/currency/i.test(t)&&String(e[t]??``).trim()!==``)||t.find(t=>/symbol/i.test(t)&&String(e[t]??``).trim()!==``)||``}function Br(e){return Object.keys(e??{}).find(e=>/unit/i.test(e))||``}function Vr(e,t,n=[]){let r=Fr(t,n),i=Ir(t,n,`historyAmountFields`),a=r.find(e=>!kr.test(e)),o=Lr(e,i)&&i||Lr(e,a)&&a||Rr(e),s=Ir(t,n,`historyCurrencyFields`),c=r.find(t=>/symbol/i.test(t)&&Lr(e,t)&&String(e[t]??``).trim()!==``),l=r.find(e=>/currency/i.test(e)&&!/symbol/i.test(e)),u=Lr(e,s)&&s||c||Lr(e,l)&&l||zr(e),d=Ir(t,n,`historyUnitFields`),f=r.find(e=>/unit/i.test(e)),p=Lr(e,d)&&d||Lr(e,f)&&f||Br(e);return{amountKey:o||``,currencyKey:u||``,unitKey:p||``}}function Hr(e,t,n=[]){let{amountKey:r,currencyKey:i,unitKey:a}=Vr(e,t,n);return{amountKey:r,currencyKey:i,unitKey:a,amount:r?e?.[r]:void 0,currency:i?e?.[i]:``,unit:a?e?.[a]:``}}var Ur={USD:`$`,INR:`₹`,GBP:`£`,EUR:`€`,CAD:`C$`,AUD:`A$`,SGD:`S$`,JPY:`¥`};function Wr(e,t=`$`){let n=String(e??``).trim();return n?Ur[n.toUpperCase()]||(/^[A-Za-z]{2,}$/.test(n)?t:n):t}var Gr={hr:`Hourly`,hour:`Hourly`,hours:`Hourly`,hourly:`Hourly`,day:`Daily`,daily:`Daily`,week:`Weekly`,weekly:`Weekly`,month:`Monthly`,monthly:`Monthly`,year:`Yearly`,yearly:`Yearly`,annual:`Yearly`,annually:`Yearly`};function Kr(e,t=``){let n=String(e??``).trim();return n?Gr[n.toLowerCase()]??n.charAt(0).toUpperCase()+n.slice(1):t}var qr={Hourly:`hr`,Daily:`day`,Weekly:`wk`,Monthly:`mo`,Yearly:`yr`};function Jr(e,t=``){let n=Kr(e,``);return n?qr[n]??n.toLowerCase():t}function Yr(e){if(typeof e==`number`)return Number.isFinite(e)?e:NaN;let t=String(e??``).trim().replace(/[,\s]/g,``).replace(/[^0-9eE+.\-]/g,``);if(!t)return NaN;let n=Number(t);return Number.isFinite(n)?n:NaN}function Xr(e,{decimals:t}={}){let n=Yr(e);return Number.isNaN(n)?String(e??``):n.toLocaleString(void 0,{minimumFractionDigits:t??0,maximumFractionDigits:t??2})}function Zr(e,t=`$`,n={}){let r=Yr(e);if(Number.isNaN(r))return String(e??``);let i=Wr(t);return`${r<0?`−`:``}${i}${Xr(Math.abs(r),n)}`}function Qr(e,t=`$`,n,r={}){let i=Zr(e,t,r),a=Kr(n,``);return a?`${i} / ${a}`:i}var $r=Object.freeze({document:`No document uploaded`,documents:`No documents uploaded`,date:`Not provided`,phone:`No contact number added`,email:`No email address added`,link:`No link added`,url:`No link added`,tags:`None added`,multitag:`None added`,skills:`No skills added`,currency:`Not provided`,money:`Not provided`,number:`Not provided`,boolean:`Not specified`,default:`Not provided`}),ei=e=>{let t=e==null?``:String(e).trim();return t===``?null:t};function ti(e,t,r=n.Si()){let i=ei(e?.emptyText??e?.renderOptions?.emptyText);if(i)return i;let a=String(t??e?.renderType??e?.type??`default`).toLowerCase(),o=r?.emptyTexts??{};return ei(o[a])??ei($r[a])??ei(o.default)??ei($r.default)??ei(r?.emptyPlaceholder)??`—`}function ni(e,t=n.Si()){let r=ei(e?.emptyText);if(r)return r;let i=t?.emptyTexts??{};if(ei(i.group))return ei(i.group);let a=ei(e?.label??e?.name);return a?`No ${a.toLowerCase()} added`:ei($r.default)??`—`}var ri=(0,u.lazy)(()=>Promise.resolve().then(()=>require("./PdfFirstPage-TjJ82SQp.cjs")));function ii(){let e=(0,u.useRef)(null),[t,n]=(0,u.useState)(()=>typeof IntersectionObserver>`u`);return(0,u.useEffect)(()=>{if(t)return;let r=e.current;if(!r)return;let i=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&(n(!0),i.disconnect())},{rootMargin:`200px`});return i.observe(r),()=>i.disconnect()},[t]),[e,t]}function ai({doc:e,renderIcon:t}){return(0,p.jsxs)(`div`,{className:`v1-doc-preview__card`,children:[t?t(e.name):null,(0,p.jsx)(`span`,{className:`v1-doc-preview__card-name`,children:e.name})]})}function oi({doc:e,index:t,onOpen:n,renderIcon:i}){let[a,o]=ii(),[s,c]=(0,u.useState)(!1),l=r.r(e),f=()=>n(t),m=null;return o&&(m=l===`image`&&!s?(0,p.jsx)(`img`,{src:e.url,alt:e.name,loading:`lazy`,className:`v1-doc-preview__img`,onError:()=>c(!0)}):l===`pdf`?(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Spin,{size:`small`}),children:(0,p.jsx)(ri,{url:e.url,name:e.name})}):(0,p.jsx)(ai,{doc:e,renderIcon:i})),(0,p.jsxs)(`div`,{ref:a,role:`button`,tabIndex:0,className:`v1-doc-preview`,title:`Preview ${e.name}`,"aria-label":`Open preview of ${e.name}`,onClick:f,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),f())},children:[m,(0,p.jsx)(`span`,{className:`v1-doc-preview__caption`,children:e.name})]})}function si({docs:e,onOpen:t,renderIcon:n}){return!Array.isArray(e)||e.length===0?null:(0,p.jsx)(`div`,{className:`v1-doc-preview-grid`,children:e.map((e,r)=>(0,p.jsx)(oi,{doc:e,index:r,onOpen:t,renderIcon:n},e.key??`${e.url}-${r}`))})}si.propTypes={docs:g.default.arrayOf(g.default.shape({name:g.default.string,url:g.default.string,type:g.default.string})),onOpen:g.default.func.isRequired,renderIcon:g.default.func},oi.propTypes={doc:g.default.object.isRequired,index:g.default.number.isRequired,onOpen:g.default.func.isRequired,renderIcon:g.default.func},ai.propTypes={doc:g.default.object.isRequired,renderIcon:g.default.func};var{Text:ci}=d.Typography,li=e=>e==null||e===``,ui=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/;function di(e){return String(e).replace(/\w\S*/g,e=>e.length>1&&e===e.toUpperCase()?e:e.charAt(0).toUpperCase()+e.slice(1).toLowerCase())}function fi(e){return!(typeof e!=`string`||!e.trim()||!/[a-z]/i.test(e)||e.includes(`@`)||/^https?:\/\//i.test(e)||/^[a-f0-9]{24}$/i.test(e)||/<[a-z][\s\S]*>/i.test(e))}function pi(e,t){if(li(e))return``;let n=String(e);return t===!1?n:fi(n)?di(n):n}function mi(e,t,n){return Object.values(e).filter(e=>!li(e)&&typeof e!=`object`).map(e=>pi(e,t)).join(n)}function hi(e,t){if(!e)return e;switch(t){case`upper`:return String(e).toUpperCase();case`lower`:return String(e).toLowerCase();case`title`:return di(e);default:return e}}var gi=e=>e&&typeof e==`object`&&!Array.isArray(e)&&`value`in e&&`id`in e;function _i(e,t,n){return li(e)?``:gi(e)?pi(e.value??e.id,t):Array.isArray(e)?e.map(e=>gi(e)?pi(e.value??e.id,t):e&&typeof e==`object`?mi(e,t,n):pi(e,t)).filter(Boolean).join(n):typeof e==`boolean`?e?`Yes`:`No`:typeof e==`object`?mi(e,t,n):pi(e,t)}function vi(e,t,n){if(Array.isArray(e))return e.map(e=>gi(e)?pi(e.value??e.id,t):e&&typeof e==`object`?mi(e,t,n):pi(e,t)).filter(e=>e!==``);if(typeof e==`string`)return e.split(`,`).map(e=>pi(e.trim(),t)).filter(Boolean);let r=_i(e,t,n);return r?[r]:[]}function yi({name:e}){let t=String(e||``).split(`.`).pop().toLowerCase();return t===`pdf`?(0,p.jsx)(f.FilePdfOutlined,{className:`v1-file-chip__icon`}):t===`doc`||t===`docx`?(0,p.jsx)(f.FileWordOutlined,{className:`v1-file-chip__icon`}):[`png`,`jpg`,`jpeg`,`gif`,`webp`,`bmp`,`svg`].includes(t)?(0,p.jsx)(f.FileImageOutlined,{className:`v1-file-chip__icon`}):[`txt`,`csv`,`json`,`md`].includes(t)?(0,p.jsx)(f.FileTextOutlined,{className:`v1-file-chip__icon`}):(0,p.jsx)(f.FileOutlined,{className:`v1-file-chip__icon`})}yi.propTypes={name:g.default.string};function bi(e){return e?.renderType&&e.renderType!==`auto`?e.renderType:e?.documentPreview===!0?`document`:e?.formatter===`phone`||e?.type===`phone`?`phone`:e?.displayAs===`tag`?`tag`:e?.displayAs===`text`?`text`:`auto`}function xi({value:e,mode:t,empty:i,style:a,openByDefault:o=!1}){let[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(0),h=n.Sr(e);if(!h.length)return(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:a,children:i});let g=h.filter(e=>e.url);return t===`text`?(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:a,children:h.map(e=>e.name).join(`, `)}):t===`tag`?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:h.map((e,t)=>(0,p.jsx)(d.Tag,{icon:(0,p.jsx)(f.PaperClipOutlined,{}),children:e.name},t))}):t===`link`||t===`download`?(0,p.jsx)(`span`,{className:`v1-detail-value v1-doc-list`,children:(0,p.jsx)(`span`,{className:`v1-file-list`,children:h.map((e,n)=>e.url?(0,p.jsxs)(`a`,{className:`v1-file-chip`,href:e.url,target:`_blank`,rel:`noopener noreferrer`,download:t===`download`?e.name||``:void 0,title:e.name,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),t===`download`?(0,p.jsx)(f.DownloadOutlined,{className:`v1-file-chip__action`}):(0,p.jsx)(f.LinkOutlined,{className:`v1-file-chip__action`})]},n):(0,p.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No file location`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},n))})}):(0,p.jsxs)(`div`,{className:`v1-detail-value v1-doc-list`,children:[(0,p.jsx)(`div`,{className:`v1-file-list`,children:h.map((e,t)=>e.url?(0,p.jsxs)(`button`,{type:`button`,className:`v1-file-chip`,onClick:()=>{m(g.indexOf(e)),c(!0)},title:`Preview ${e.name}`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),(0,p.jsx)(f.EyeOutlined,{className:`v1-file-chip__action`})]},t):(0,p.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No preview available for this file`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))}),o&&g.length>0&&(0,p.jsx)(si,{docs:g,onOpen:e=>{m(e),c(!0)},renderIcon:e=>(0,p.jsx)(yi,{name:e})}),(0,p.jsx)(r.t,{documents:g,open:s,onClose:()=>c(!1),initialIndex:l})]})}xi.propTypes={value:g.default.any,mode:g.default.string,empty:g.default.string,style:g.default.object,openByDefault:g.default.bool};function Si(e,t={}){return Number.isNaN(Yr(e))?String(e??``):`${t.currencySymbol?Wr(t.currencySymbol,``):``}${Xr(e,{decimals:t.decimals})}`}function Ci({field:e,record:t}){let{value:r,type:i,prefix:a=``,suffix:o=``,color:s=``,capitalize:c}=e??{},l=e?.renderOptions??{},u=n.Si(),h=u.separator||`, `,g=s?{color:s}:void 0,_=l.tagColor||s||void 0,v=l.textTransform&&l.textTransform!==`none`?l.textTransform:null,y=e=>`${a?`${a} `:``}${e}${o?` ${o}`:``}`,b=e=>v?hi(e,v):e,x=e=>(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:g,children:b(e)}),S=e=>(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value v1-detail-token`,style:g,children:b(e)}),C=e=>(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:(0,p.jsx)(d.Tag,{color:_,children:b(e)})}),w=bi(e),T=ti(e,w,u);if(w!==`document`&&li(r)&&!l.showEmpty)return x(T);switch(w){case`document`:return(0,p.jsx)(xi,{value:r,mode:l.documentMode||`preview`,empty:T,style:g,openByDefault:l.previewOpenByDefault===!0});case`text`:return x(y(_i(r,c,h)));case`tag`:case`chip`:return C(y(_i(r,c,h)));case`badge`:{let e=b(_i(r,c,h));return(0,p.jsx)(`span`,{className:`v1-detail-value`,children:(0,p.jsx)(d.Badge,{color:_||`blue`,text:e})})}case`tags`:case`multitag`:case`skills`:{let t=Cr(e,r,u)??vi(r,c,h);return t.length?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:t.map((e,t)=>(0,p.jsx)(d.Tag,{color:_,children:b(e)},t))}):x(T)}case`link`:{let e=_i(r,!1,h),t=/^https?:\/\//i.test(e)?e:n.xr(e)||e;return(0,p.jsx)(`a`,{className:`v1-detail-value v1-doc-link`,href:t,target:`_blank`,rel:`noopener noreferrer`,children:b(y(e))})}case`email`:{let e=_i(r,!1,h);return(0,p.jsxs)(`a`,{className:`v1-detail-value`,href:`mailto:${e}`,children:[(0,p.jsx)(f.MailOutlined,{}),` `,e]})}case`phone`:{let i=_i(r,!1,h),a=n.wr(e,i,t),o=a.replace(/[^0-9+]/g,``);return(0,p.jsxs)(`a`,{className:`v1-detail-value v1-detail-token v1-detail-call`,href:`tel:${o}`,"aria-label":`Call ${a}`,title:`Call ${a}`,children:[(0,p.jsx)(f.PhoneOutlined,{}),` `,b(y(a))]})}case`date`:case`datetime`:{if(w===`datetime`||l.withTime===!0)return S(y((l.dateFormat?n.fi(r,l.dateFormat,u):n.pi(r,u))||_i(r,c,h)));let e=l.dateFormat||u.dateFormat;return S(y(n.fi(r,e,u)||_i(r,c,h)))}case`currency`:return S(y(Si(r,l)));case`budget`:{let e=Si(r,l),t=l.unit?String(l.unit):``,n=t&&l.budgetUnitMap?l.budgetUnitMap[t]??t:t;return S(`${e}${n?`/${n}`:``}`)}case`html`:return(0,p.jsx)(`span`,{className:`v1-detail-value`,style:g,dangerouslySetInnerHTML:{__html:String(r??``)}})}if(li(r))return x(T);let E=i===`date`,D=typeof r==`string`&&ui.test(r.trim());if(E||D){let e=(0,m.default)(r);if(e.isValid())return x(y(e.format(u.dateFormat)))}if(gi(r))return x(y(pi(r.value??r.id,c)));if(Array.isArray(r)){let t=Cr(e,r,u)??vi(r,c,h);return t.length?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:t.map((e,t)=>(0,p.jsx)(d.Tag,{color:_,children:e},t))}):x(T)}return x(typeof r==`boolean`?r?u.booleanTrueLabel:u.booleanFalseLabel:typeof r==`object`?mi(r,c,h)||T:y(pi(r,c)))}Ci.propTypes={field:g.default.object,record:g.default.object};var wi=[`fields`,`metrics`,`list`,`checklist`,`steps`,`chips`,`text`],Ti={full:12,twoThirds:8,half:6,third:4};function Ei(e){return Ti[e?.detailWidth]??null}function Di(e=[]){return e.some(e=>Ei(e)!==null)}function Oi(e){let t=String(e?.detailStyle??``).trim();return wi.includes(t)&&t!==`fields`?t:``}var ki=e=>e!=null&&(typeof e!=`string`||e.trim()!==``)&&!(Array.isArray(e)&&e.filter(ki).length===0);function Ai(e){return ki(e)?(Array.isArray(e)?e:[e]).map(e=>e&&typeof e==`object`?e.name??e.label??e.title??e.value??``:e).filter(ki).map(e=>String(e).trim()):[]}function ji(e){if(e===!0)return!0;if(e===!1||!ki(e))return!1;let t=String(e).trim().toLowerCase();return t!==`false`&&t!==`0`&&t!==`no`}function Mi(e){let t=Oi(e);return(e?.fields??[]).map((e,t)=>({key:e.field??String(t),label:e.label??e.field??``,field:e,value:e.value,texts:Ai(e.value)})).filter(e=>t===`steps`||e.texts.length>0)}function Ni(e){let t=!1;return e.map(e=>ji(e.value)?{...e,state:`done`}:t?{...e,state:`todo`}:(t=!0,{...e,state:`current`}))}function Pi(e){return Number(e?.detailOrder??e?.order??0)}function Fi({group:e,record:t}){let n=Oi(e);if(!n)return null;let r=Mi(e);if(!r.length)return(0,p.jsx)(`span`,{className:`v1-dg-empty`,"data-empty":`true`});if(n===`metrics`)return(0,p.jsx)(`div`,{className:`v1-dg-metrics`,children:r.map(e=>(0,p.jsxs)(`div`,{className:`v1-dg-metric`,children:[(0,p.jsx)(`div`,{className:`v1-dg-metric__value`,children:e.texts.length>1?e.texts.join(`, `):(0,p.jsx)(Ci,{field:e.field,record:t})}),(0,p.jsx)(`div`,{className:`v1-dg-metric__label`,children:e.label})]},e.key))});if(n===`chips`){let e=r.flatMap(e=>e.texts.map((t,n)=>({key:`${e.key}-${n}`,text:t})));return(0,p.jsx)(`div`,{className:`v1-dg-chips`,children:e.map(e=>(0,p.jsx)(d.Tag,{className:`v1-dg-chip`,children:e.text},e.key))})}if(n===`text`)return(0,p.jsx)(`div`,{className:`v1-dg-text`,children:r.map(e=>(0,p.jsx)(d.Typography.Paragraph,{className:`v1-dg-text__p`,ellipsis:{rows:3,expandable:!0,symbol:`Show more`},children:e.texts.join(`
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./rolldown-runtime-Chgba0Kb.cjs"),t=require("./authApi-D0LZjLV6.cjs"),n=require("./conditionalFieldLabel-080sIUgv.cjs"),r=require("./DocumentViewer-Dv2kBoJ2.cjs"),i=require("./AddFormV1-C8L2lNYb.cjs"),a=require("./diceCandidateMapper-BjMhHno3.cjs"),o=require("./formGroupsCache-Bbz-28ws.cjs"),s=require("./addFormApi-C99DyZ1z.cjs"),c=require("./FacebookCourseMappingsSection-C7qyexlU.cjs"),l=require("./verifyLockState-BvGJELfZ.cjs");let u=require("react");u=e.n(u,1);let d=require("antd"),f=require("@ant-design/icons"),p=require("react/jsx-runtime"),m=require("dayjs");m=e.n(m,1);let h=require("react-router-dom"),g=require("prop-types");g=e.n(g,1);let _=require("react-dom");var{Title:v,Text:y}=d.Typography,b=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],x=[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],S=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],C={green:`#22c55e`,red:`#ef4444`,orange:`#f97316`,blue:`#3b82f6`};function w(e){return C[e]||e||`#586888`}function T(e){return String(e).padStart(2,`0`)}function E(e,t,n=`Sun`){let r=new Date(e,t,1).getDay(),i=n===`Mon`?r===0?6:r-1:r,a=new Date(e,t+1,0).getDate(),o=[];for(let e=0;e<i;e++)o.push({day:null,cur:!1});for(let e=1;e<=a;e++)o.push({day:e,cur:!0});for(;o.length%7!=0;)o.push({day:null,cur:!1});return o}function D(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function O(e){if(!e)return{text:``,author:null};let t=e.match(/\n\s*-\s*([^\n]+)\s*$/);return t?{text:e.slice(0,t.index).trim(),author:t[1].trim()}:{text:e.trim(),author:null}}function k(e=[]){let t={};return e.forEach(e=>{t[e.date]=(e.events||[]).map(e=>{let{text:t,author:n}=O(e.description);return{color:e.color,label:e.label,title:e.title,text:t,author:n}})}),t}function A({events:e}){return(0,p.jsx)(`div`,{style:{maxWidth:280,maxHeight:260,overflowY:`auto`},children:e.map((t,n)=>(0,p.jsxs)(`div`,{style:{display:`flex`,gap:8,padding:`6px 0`,borderBottom:n<e.length-1?`1px solid #f0f0f0`:`none`},children:[(0,p.jsx)(`span`,{className:`calendar-dot`,style:{background:w(t.color),marginTop:6,flexShrink:0}}),(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(y,{strong:!0,style:{fontSize:13,display:`block`},children:t.title||t.label}),t.text&&(0,p.jsx)(y,{style:{fontSize:12,color:`#555`,whiteSpace:`pre-line`,wordBreak:`break-word`},children:t.text}),t.author&&(0,p.jsxs)(y,{style:{fontSize:11,color:`#999`,display:`block`,marginTop:2},children:[`— `,t.author]})]})]},n))})}function j({userIds:e=[],days:t=void 0,startDay:r=`Sun`,renderDayContent:i=void 0,onDayClick:a=void 0,headerExtra:o=void 0,legend:s=void 0,readonly:c=!1,className:l=``,monthLabel:m=void 0,year:h=void 0,month:g=void 0,onPrevMonth:_=void 0,onNextMonth:C=void 0,prevDisabled:O=!1,nextDisabled:j=!1}){let M=t!==void 0||i!==void 0||a!==void 0,N=new Date,[P,F]=(0,u.useState)({year:N.getFullYear(),month:N.getMonth()}),I=h!=null&&g!=null?{year:Number(h),month:Number(g)-1}:P,[L,R]=(0,u.useState)({}),[z,B]=(0,u.useState)([]),[V,H]=(0,u.useState)(!1),[U,W]=(0,u.useState)(null),G=JSON.stringify(e),ee=r===`Mon`?x:b,te=(0,u.useCallback)(async()=>{H(!0);try{let t=await n.so({userIds:e});t?.status&&t?.data?(B(t.data.legend||[]),R(k(t.data.days||[]))):(B([]),R({}))}catch(e){console.error(`CalendarCard fetch error:`,e)}finally{H(!1)}},[G]);(0,u.useEffect)(()=>{M||te()},[M,te]),(0,u.useEffect)(()=>(window.addEventListener(`dashboard-calendar:refresh`,te),()=>window.removeEventListener(`dashboard-calendar:refresh`,te)),[te]);let ne=_??(()=>F(e=>e.month===0?{year:e.year-1,month:11}:{...e,month:e.month-1})),re=C??(()=>F(e=>e.month===11?{year:e.year+1,month:0}:{...e,month:e.month+1})),ie=D(E(I.year,I.month,r),7),ae={};t!==void 0&&(t||[]).forEach(e=>{e?.date&&(ae[e.date]=e)});let oe=s??z,se=m??`${S[I.month]} ${I.year}`;return(0,p.jsx)(d.Card,{className:`calendar-card${l?` ${l}`:``}`,title:(0,p.jsxs)(`div`,{className:`calendar-header-title`,children:[(0,p.jsx)(f.CalendarOutlined,{}),(0,p.jsx)(v,{level:5,style:{margin:0},children:se}),o]}),extra:(0,p.jsxs)(`div`,{className:`calendar-nav`,style:{display:`flex`,alignItems:`center`,gap:6},children:[(0,p.jsx)(d.Tooltip,{title:`Previous month`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.LeftOutlined,{}),size:`small`,onClick:ne,disabled:O})}),(0,p.jsx)(d.Tooltip,{title:`Next month`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.RightOutlined,{}),size:`small`,onClick:re,disabled:j})})]}),children:(0,p.jsxs)(d.Spin,{spinning:V,children:[(0,p.jsx)(d.Row,{gutter:[6,0],className:`calendar-day-names`,children:ee.map(e=>(0,p.jsx)(d.Col,{flex:`1`,className:`calendar-day-name`,children:e},e))}),(0,p.jsx)(`div`,{className:`calendar-weeks`,children:ie.map((e,t)=>(0,p.jsx)(d.Row,{gutter:[6,6],align:`top`,className:`calendar-week-row`,children:e.map((e,t)=>{if(!e.cur||e.day===null)return(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:`calendar-cell calendar-cell--filler`})},t);let n=`${I.year}-${T(I.month+1)}-${T(e.day)}`,r=e.day===N.getDate()&&I.month===N.getMonth()&&I.year===N.getFullYear();if(M){let o=ae[n]??null;return i?(0,p.jsx)(d.Col,{flex:`1`,children:i(n,o,{isToday:r,readonly:c})},t):(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:[`calendar-cell`,r?`today`:``,c?`calendar-cell--readonly`:``].filter(Boolean).join(` `),onClick:()=>!c&&a?.(n,o),style:{cursor:c?`default`:`pointer`},children:(0,p.jsx)(`div`,{className:`calendar-cell-inner`,children:(0,p.jsx)(y,{className:`calendar-cell-number`,children:e.day})})})},t)}let o=L[n]||[],s=[...new Set(o.map(e=>e.color))].slice(0,3);return(0,p.jsx)(d.Col,{flex:`1`,children:(0,p.jsx)(`div`,{className:`calendar-cell${r?` today`:``}`,children:(0,p.jsxs)(`div`,{className:`calendar-cell-inner`,children:[(0,p.jsx)(y,{className:`calendar-cell-number`,children:e.day}),o.length>0&&(0,p.jsx)(d.Popover,{open:U===n,trigger:`click`,content:(0,p.jsx)(A,{events:o}),placement:`topRight`,destroyTooltipOnHide:!0,onOpenChange:e=>W(e?n:null),children:(0,p.jsx)(`div`,{className:`calendar-cell-dots`,children:s.map((e,t)=>(0,p.jsx)(`span`,{className:`calendar-dot`,style:{background:w(e)}},t))})})]})})},t)})},t))}),oe.length>0&&(0,p.jsx)(`div`,{className:`calendar-legend`,children:oe.map(({label:e,color:t,icon:n})=>(0,p.jsxs)(`div`,{className:`calendar-legend-item`,children:[n?(0,p.jsx)(`span`,{className:`calendar-legend-badge`,style:{background:w(t)},children:n}):(0,p.jsx)(`span`,{className:`calendar-legend-dot`,style:{background:w(t)}}),(0,p.jsx)(y,{children:e})]},e))})]})})}function M(){return{tenantId:localStorage.getItem(`tenantId`)||``,businessId:localStorage.getItem(`businessId`)||``,businessUnitId:localStorage.getItem(`businessUnitId`)||``}}function N(){return Number(localStorage.getItem(`userId`))||0}var P=e=>e?.data??e,F=new Map;function I(e){return e?.recruiterId??e?.legacyUserId??e?.user_id??e?.userId??e?.USER_ID??e?.id??e?._id}function L(e){return!e||typeof e!=`object`?``:[e.first_name??e.firstName??e.FIRST_NAME,e.last_name??e.lastName??e.LAST_NAME].filter(Boolean).join(` `).trim()||e.recruiterName||e.name||e.user_name||e.userName||e.USER_NAME||e.email||``}async function R(e){let n=String(e??``).trim();return n?(F.has(n)||F.set(n,t.o(t.S,`/get-detailed-view?userId=${encodeURIComponent(n)}`).then(e=>L(e?.data??e??null)).catch(()=>``)),F.get(n)):``}var z=null;function B(e){let t=new Map;return(Array.isArray(e)?e:[]).forEach(e=>{let n={name:L(e),role_name:e?.roleName??e?.role_name??``,reporting_name:e?.reportingName??e?.reporting_name??``};[e?.userId,e?.user_id,e?.legacyUserId,e?.id,e?._id].forEach(e=>{let r=String(e??``).trim();r&&t.set(r,n)})}),t}function V(){return z||=t.o(t.S,`/get-all-users?limit=500&offset=0`).then(e=>{let t=e?.data??e??{};return B(t.users??t??[])}).catch(()=>new Map),z}async function H(e){let t=I(e),n=(await V()).get(String(t??``).trim())??{},r=n.name||await R(t)||L(e);return{...e,name:r,role_name:n.role_name||e?.role_name||e?.roleName||``,reporting_name:n.reporting_name||e?.reporting_name||e?.reportingName||``}}async function U(e,n,r){return P(await t.o(t.S,`/module-data-update`,{method:`PUT`,body:JSON.stringify({module:e,ids:n,updates:{status:r}})}))}async function W(e,n){let r=Array.isArray(n)?n:[n],i=await Promise.all(r.filter(Boolean).map(n=>t.o(t.S,`/module/delete/${encodeURIComponent(n)}?module=${encodeURIComponent(e)}`,{method:`DELETE`})));return i[i.length-1]??{}}async function G(e){return P(await t.o(t.w,`/joblist`,{method:`POST`,body:JSON.stringify({...M(),searchQuery:e,userId:N()})}))}async function ee(e=``){let n=e?`?search=${encodeURIComponent(e)}`:``;return t.t(t.w,`/users/any${n}`)}async function te({relatedIds:e,module:n,title:r,targetDate:i,notes:a}){return t.o(t.w,`/notes`,{method:`POST`,body:JSON.stringify({schemaVersion:1,...M(),title:r,notes:a,notesFor:n||`general`,notesRelatedId:Array.isArray(e)&&e.length?e:null,reminder:i?{type:`single`,time:i,interval:``}:null,targetDate:i||null})})}async function ne(e,{title:n,targetDate:r,notes:i}){return t.o(t.w,`/notes/${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify({title:n,notes:i,reminder:r?{type:`single`,time:r,interval:``}:null,targetDate:r||null})})}async function re(e){return t.o(t.w,`/notes/${encodeURIComponent(e)}/resolve`,{method:`PUT`})}async function ie({jobId:e,candidateIds:n,hiringStage:r}){return t.o(t.w,`/source/hiringStgUpdate`,{method:`PUT`,body:JSON.stringify({...M(),multiJobId:Array.isArray(e)?e:[e],applicantId:Array.isArray(n)?n:[n],updateStatus:String(r??``).toLowerCase(),updateStatusType:`call`,responseType:`responded`,hiriringStatusChangeType:`tagToJobs`,comments:``,userId:N()})})}async function ae(){return P(await t.o(t.S,`/masters/dropdown?masterName=candidateGroups&offset=0&limit=50`))}async function oe({candidateIds:e,groupId:n,groupName:r}){return P(await t.o(t.C,`/actions/update-group`,{method:`PUT`,body:JSON.stringify({candidateIds:e,groupId:n,groupName:r})}))}async function se({jobIds:e,rate:n,priority:r}){return t.o(t.w,`/assign?type=self`,{method:`PUT`,body:JSON.stringify({multiJobId:Array.isArray(e)?e:[e],userId:N(),schemaVersion:1,...M(),priority:r==null?`false`:String(r),priorityFrom:null,recruitersData:[]})})}async function ce(e){if(!e)return{assignedUsers:[],totalSubmissions:0,targetSubmissions:0,message:``};let n=await t.o(t.w,`/self-assign?jobId=${encodeURIComponent(e)}`),r=n?.data,i=n?.message??``;return Array.isArray(r)?{assignedUsers:await Promise.all(r.map(H)),totalSubmissions:0,targetSubmissions:0,message:i}:!r||typeof r!=`object`?{assignedUsers:[],totalSubmissions:0,targetSubmissions:0,message:i}:{assignedUsers:await Promise.all((Array.isArray(r.assignedUsers)?r.assignedUsers:[]).map(H)),totalSubmissions:r.totalSubmissions??0,targetSubmissions:r.targetSubmissions??0,message:i}}function K(e){let t=e?.user_id??e?.userId??e?.USER_ID??e?.legacyUserId??e?.id??e?._id,n=t==null?``:String(t).trim();if(!n)return null;let r=[e?.first_name??e?.firstName,e?.last_name??e?.lastName].filter(Boolean).join(` `).trim(),i=e?.name||e?.user_name||e?.userName||e?.USER_NAME||r||e?.email||n;return{...e,label:String(i),value:n}}async function le(){let e=await t.t(t.w,`/users/manager`);return(Array.isArray(e)?e:e?[e]:[]).map(K).filter(Boolean)}async function ue(e){if(!e)return{recruitersData:[]};let n=await t.t(t.w,`/pay-details/${encodeURIComponent(e)}`),r=n&&typeof n==`object`&&Array.isArray(n.recruiters)?n.recruiters:[],i=(await Promise.all(r.map(async e=>{let t=e?.recruiterId??e?.user_id??e?.userId??e?.id;if(t==null||t===``)return null;let n=await H({...e,recruiterId:t});return{recruiterId:t,id:t,user_id:t,name:n.name,role_name:n.role_name??n.roleName??``,reporting_name:n.reporting_name??n.reportingName??``}}))).filter(Boolean);return{...n&&typeof n==`object`?n:{},recruitersData:i}}function de(e){let t=typeof e==`object`?e?.recruiterId??e?.user_id??e?.userId??e?.id:e,n=Number(t);return Number.isInteger(n)&&n>0?n:null}function fe({jobIds:e,userId:t,rate:n,priority:r,removedIds:i,existingRecruiters:a}){let o=new Set((i??[]).map(String)),s=(a??[]).map(de).filter(e=>e!==null&&!o.has(String(e))),c=(Array.isArray(t)?t:[t]).map(de).filter(e=>e!==null);if(c.length===0)throw Error(`A valid user must be selected before assigning the job`);let l=Array.from(new Set([...s,...c]));return{multiJobId:Array.isArray(e)?e:[e],userId:c[0],schemaVersion:1,...M(),priority:String(r??!1),priorityFrom:``,recruitersData:l}}async function pe(e,n){let r=new Set((n??[]).map(String));r.size&&await Promise.all((e??[]).map(async e=>{let n=await t.o(t.S,`/module/list?module=jobs&id=${encodeURIComponent(e)}`),i=n?.data?.data??n?.data??n,a=Array.isArray(i)?i[0]:i,o=Array.isArray(a?.recruiters)?a.recruiters:[],s=o.filter(e=>!r.has(String(de(e)??``)));s.length!==o.length&&await t.o(t.S,`/module/update/${encodeURIComponent(e)}?module=jobs`,{method:`PATCH`,body:JSON.stringify({recruiters:s})})}))}async function me(e){let n=Array.isArray(e?.jobIds)?e.jobIds:[e?.jobIds].filter(Boolean),r=e?.removedIds??[],i=(Array.isArray(e?.userId)?e.userId:[e?.userId]).map(de).filter(e=>e!==null),a;return i.length>0&&(a=await t.o(t.w,`/assign?type=other`,{method:`PUT`,body:JSON.stringify(fe(e))})),await pe(n,r),a}async function he({submissionId:e,isMail:n=!1}){return P(await t.o(t.S,`/submissions/move-to-onboarding`,{method:`POST`,body:JSON.stringify({submissionId:e,isMail:!!n})}))}async function q(e,n){return P(await t.o(t.S,`/submissions/approve`,{method:`POST`,body:JSON.stringify({submissionId:e,...n})}))}async function ge(e){return P(await t.o(t.S,`/submissions/vms-approve?submissionId=${encodeURIComponent(e)}`))}async function _e(e,{submissionId:n=``,billRate:r,payRate:i,currency:a=`$`,rateUnit:o=`hr`,referralId:s,referralRate:c,referralType:l,referralEnabled:u,vmsPercent:d=0,documentIds:f=[],remarks:p=null}={}){let m=e?`/workforce-engagements/${encodeURIComponent(e)}/cfo-approval/send`:`/submissions/${encodeURIComponent(n)}/cfo-approval/send`;if(!e&&!n)throw Error(`Submission is required to send for approval.`);let h=typeof window<`u`?window.location.origin:``,g=e||n;return P(await t.o(t.E,m,{method:`POST`,body:JSON.stringify({proposedRate:{candidateProposedRate:Number(r)||0,candidateProposedRateCurrency:a,candidateProposedRateCurrencySymbol:``,candidateProposedRateUnit:o},candidateRate:{candidateAcceptedRate:Number(i)||0,candidateAcceptedCurrency:a,candidateAcceptedCurrencySymbol:``,candidateAcceptedPayUnit:o,candidateAcceptedRateNegotiable:!1},...s!=null&&s!==``?{referralId:s}:{},...c==null?{}:{referralRate:Number(c)||0},...l!=null&&l!==``?{referralType:l}:{},...u==null?{}:{referralEnabled:!!u},vmsPercent:Number(d)||0,documentIds:f,remarks:p,approvalUrl:`${h}/cfo-approval/${encodeURIComponent(g)}`})}))}async function ve({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i}){return P(await t.o(t.S,`/submissions/reject`,{method:`POST`,body:JSON.stringify({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i})}))}async function ye({jobId:e,applicantId:n}){let r=new URLSearchParams({jobId:String(e??``),applicantId:String(n??``)});return P(await t.o(t.S,`/submissions/exists?${r.toString()}`))??{exists:!1}}async function J({searchQuery:e,candidateId:n}){let r=P(await t.o(t.S,`/quick-submit/job-search`,{method:`POST`,body:JSON.stringify({searchQuery:e??``,candidateId:n?String(n):``})}));return Array.isArray(r)?r:[]}async function be({search:e,jobId:n}){let r=P(await t.o(t.S,`/quick-submit/candidate-search`,{method:`POST`,body:JSON.stringify({search:e??``,jobId:n?String(n):``})}));return Array.isArray(r)?r:[]}async function xe({jobId:e,applicantId:n,jobIds:r,applicantIds:i}){let a=!!e,o={};if(e&&(o.jobId=String(e)),n&&(o.applicantId=String(n)),Array.isArray(r)&&(o.jobIds=r.filter(Boolean).map(String)),Array.isArray(i)&&(o.applicantIds=i.filter(Boolean).map(String)),!(a?o.applicantIds:o.jobIds)?.length)return new Map;let s=P(await t.o(t.S,`/submissions/exists-bulk`,{method:`POST`,body:JSON.stringify(o)}))?.pairs??[];return new Map(s.map(e=>[String(a?e.applicantId:e.jobId),{submissionId:e.submissionId??``,submittedAt:e.submittedAt??null}]))}async function Se({jobId:e,candidateIds:n}){return t.o(t.w,`/source/hiringStgUpdate`,{method:`PUT`,body:JSON.stringify({...M(),multiJobId:Array.isArray(e)?e:[e],applicantId:Array.isArray(n)?n:[n],updateStatus:`pipeline`,updateStatusType:`call`,responseType:`responded`,hiriringStatusChangeType:`tagToJobs`,comments:``,userId:N()})})}function Ce(e){if(e?.status===!1)throw Error(e.error||e.message||`Request failed. Please try again.`)}var we=e=>(Array.isArray(e)?e:[e]).filter(Boolean).map(String);async function Te({module:e,documentIds:n,reason:r}){let i=await t.o(t.S,`/document-request/create`,{method:`POST`,body:JSON.stringify({module:e,documentIds:we(n),reason:r})});return Ce(i),P(i)}async function Ee({ids:e,rejectionReason:n}){let r=await t.o(t.S,`/document-request/reject`,{method:`POST`,body:JSON.stringify({ids:we(e),rejectionReason:n})});return Ce(r),P(r)}var De={jobsCount:[`total`,`Total Jobs`,`active`,`Active Jobs`,`myAssignedCount`,`My Jobs`],submissionCount:[`Selected`,`Submitted to client`,`Submitted to Client`,`Not Submitted`,`Approved`]};function Oe(e){return De[e]??null}var ke={stickyNotes:{title:`Sticky Notes`,variant:`sticky`,request:{method:`GET`,params:{limit:20,offset:0}},listPath:`data.data`,maxCount:4,viewAllUrl:`/viewall-sticky`,refreshEvent:`sticky-notes:refresh`,pillKey:`status`,headingKey:`title`,bodyKey:`notes`,bodyLines:3,footerLeftKey:`createdByName`,footerRightKey:`createdAt`,dateKey:`reminder.time`,colorBy:`status`,colorMap:{Note:`green`,Tagged:`red`},color:`auto`},jobsCount:{variant:`counts`,dynamicCommonCount:{module:`jobs`,keys:[`jobRecruitmentStatus`,`jobStatus`]},listPath:``,layout:`4x2`,groupSeparator:``,labelMap:{total:`Total Jobs`,active:`Active Jobs`,myAssignedCount:`My Jobs`},color:`#f1f3f8`,show:Oe(`jobsCount`),hide:[`inactive`,`submitted`,`noSubmissions`]},submissionCount:{title:`Total Client Submission`,tooltipText:`Includes all submissions that are pending and submitted to the client.`,variant:`submission`,dynamicCommonCount:{module:`submissions`,keys:[`clientSubmissionStatus.clientSubmissionStatusText`]},listPath:``,totalKey:`total`,labelMap:{Selected:`Selected`,"Submitted to client":`Submitted to Client`,"Not Submitted":`Not Submitted`,Approved:`Approved`},colorMap:{Selected:`rgb(234, 175, 12)`,"Submitted to client":`green`,"Not Submitted":`red`,Approved:`#1d4ed8`},show:Oe(`submissionCount`)},leadAptitude:{title:`Aptitude Test Results`,variant:`assessment`,request:{method:`GET`,params:{}},listPath:`data`,totalKey:`totalScore`,maxKey:`maximumScore`,statusKey:`status`,attemptDateKey:`attemptDate`,timeTakenKey:`timeTaken`,rankKey:`rank`,labelMap:{logicalReasoning:`Logical Reasoning`,quantitativeAptitude:`Quantitative Aptitude`,verbalAbility:`Verbal Ability`},colorMap:{logicalReasoning:`#7c3aed`,quantitativeAptitude:`#0891b2`,verbalAbility:`#16a34a`},hide:[`status`,`attemptDate`,`timeTaken`,`rank`,`maximumScore`]},onboardingCount:{variant:`counts`,dynamicCommonCount:{module:`onboarding`,keys:[`onboardingObStage`]},listPath:``,frame:!0,frameTitle:`Onboarding`,frameClassName:`onboarding-card`,viewAll:!0,footer:!0,columns:4,valueMap:{inProgress:`Under Review`,hired:`Onboarded`,projectCompleted:`Project cycle closed`,archive:`No longer active`},labelMap:{inProgress:`In Progress`,hired:`Hired`,projectCompleted:`Project Completed`,archive:`Archive`},aggregateMap:{inProgress:[`inProgress`,`In Progress`],hired:[`hired`,`Hired`,`Active`],projectCompleted:[`projectCompleted`,`Project Completed`,`Completed`],archive:[`archive`,`Archive`,`Not Hired`,`Candidate Backout`]},show:Oe(`onboardingCount`),hide:[`total`,`totalGrossMargin`,`totalNetMargin`]},timesheetMonthlySummary:{variant:`metrics`,title:`Monthly Summary`,valueSuffix:` hrs`,rows:[{key:`unapprovedPayableHours`,label:`Unapproved Payable hours`,sublabel:`(S + O)`},{key:`nonPayableHours`,label:`Non-payable hours`,sublabel:`(Leave/Holidays)`},{key:`approvedPayableHours`,label:`Approved Payable hours`,valueColor:`#15803d`}]},timesheetWeeklyTotals:{variant:`metrics`,title:`Weekly Totals (S + O)`,plainHeader:!0,valueSuffix:` hrs`,listRows:{itemValueKey:`weeklyTotals.payable`,itemLabel:(e,t)=>{let n=e.weekStart?(0,m.default)(e.weekStart).format(`MMM D`):``,r=e.weekEnd?(0,m.default)(e.weekEnd).format(`MMM D`):``,i=`Week ${e.weekNumber??t+1}`;return n&&r?`${i} (${n} - ${r})`:i}}},timesheetHourBreakdown:{variant:`bars`,valueSuffix:` hrs`,rows:[{key:`totalSTHours`,label:`Standard`,color:`#1d4ed8`,bg:`#D0E6FF`},{key:`totalOTHours`,label:`Overtime`,color:`#15803d`,bg:`#d9f7e3`},{key:`leaveHours`,label:`Leaves`,color:`#b45309`,bg:`#FFECBA`},{key:`holidayHours`,label:`Holidays`,color:`#6d28d9`,bg:`#ede9fe`,fallback:0}]},financeKpiRow:{variant:`kpi`}},Ae=[`blue`,`green`,`purple`,`peach`,`red`,`gray`],je=[`purple`,`peach`,`green`],Me=[`#1d4ed8`,`#ef4444`,`#16a34a`,`#9333ea`,`#f59e0b`,`#0891b2`],Ne={blue:`#1d4ed8`,green:`#16a34a`,purple:`#9333ea`,peach:`#f97316`,red:`#ef4444`,gray:`#6b7280`};function Pe(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.cardConfig)??{};return{...ke,...e}}var Fe={timesheet:{currentLabel:`Standard`,currentColor:`blue`,pastLabel:`Supplementary`,pastColor:`gold`,thresholdMonths:0}};function Ie(e){let t=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.periodBadgeConfig)??{};return{...Fe[e],...t[e]}}var{Title:Le,Text:Re}=d.Typography;function ze(e,t){return Array.isArray(t)?t.map(t=>ze(e,t)).filter(Be).join(` `):typeof t==`string`&&t.includes(`.`)?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e[t]}var Be=e=>e!=null&&e!==``;function Ve(e,t,n={}){return{...n,...e.styles?.[t]||{}}}function He(e){return Be(e.title)?(0,p.jsx)(Le,{level:5,style:Ve(e,`headerTitle`),children:e.title}):void 0}function Ue(e,t){return Be(e.title)?t:void 0}function We(e){return[`blue`,`green`,`purple`,`peach`,`red`,`gray`].includes(it(e))}function Ge(e,t){let n=t||``,r=Ve(e,`card`);return Be(n)?We(n)?{className:n,style:r}:{className:``,style:{...r,background:n,borderColor:e.styles?.card?.borderColor||n}}:{className:``,style:r}}function Ke(e,t){return t?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e}function qe(e){return String(e).replace(/([a-z0-9])([A-Z])/g,`$1 $2`).replace(/[_-]+/g,` `).replace(/\s+/g,` `).trim().replace(/\b\w/g,e=>e.toUpperCase())}function Je(e){if(!Be(e))return null;let t=new Date(e);return isNaN(t)||t.getFullYear()<=1?null:n.fi(t,n.Si().dateFormat)}function Ye(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:null}function Xe(e){return String(e??``).replace(/(?:\s*\(\d+[\d,]*\))+\s*$/,``).trim()}function Ze(e,t){let n=[e?.data?.total,e?.data?.count,e?.data?.totalCount,e?.data?.pagination?.total,e?.data?.data?.total,e?.data?.data?.count,e?.data?.data?.totalCount,e?.total,e?.count,e?.totalCount,e?.pagination?.total],r=[e?.data?.todoCount,e?.data?.toDoCount,e?.data?.pendingCount,e?.data?.data?.todoCount,e?.data?.data?.toDoCount,e?.todoCount,e?.toDoCount,e?.pendingCount],i=[e?.data?.resolvedCount,e?.data?.data?.resolvedCount,e?.resolvedCount],a=r.map(Ye).find(e=>e!==null),o=i.map(Ye).find(e=>e!==null),s=n.map(Ye).find(e=>e!==null),c=a!==null&&o!==null?a+o:null,l=Array.isArray(t)?t.length:null;return{totalCount:s??c??l,todoCount:a,resolvedCount:o}}function Qe(e,t){let n=RegExp(`^${t}\\d+$`);return Object.keys(e).filter(e=>e===t||n.test(e)).map(n=>({field:e[n],n:n===t?1:Number(n.slice(t.length))})).sort((e,t)=>t.n-e.n).map(e=>e.field)}function $e(e){return Math.max(1,Math.floor(24/(e||4)))}function et(e){if(typeof e!=`string`)return{};let t=e.toLowerCase().replace(/\s/g,``).match(/^(\d+)x(\d+)$/);if(!t)return{};let n=Number(t[1]);return{columns:n,maxCount:n*Number(t[2])}}function tt(e,t){let n=et(e.layout),r=e.columns??n.columns??t,i=e.maxCount??n.maxCount;return{columns:r,span:$e(r),maxCount:i}}function nt(e,t){return t?e.slice(0,t):e}function rt(e,t){return e.color?e.color===`auto`?Ae[t%Ae.length]:e.color:``}var it=e=>String(e??``).trim().toLowerCase();function at(e,t){return(Array.isArray(t)?t:[t]).some(t=>Be(t)&&it(t)===it(e))}function ot(e,t){if(!e.colorMap)return null;let n=Object.keys(e.colorMap).find(e=>at(e,t));return n?e.colorMap[n]:null}function st(e,t,n){if(!e.labelMap)return n;let r=Object.keys(e.labelMap).find(e=>at(e,t));return r?e.labelMap[r]:n}function ct(e,t){if(!e.valueMap)return null;let n=Object.keys(e.valueMap).find(e=>at(e,t));return n?e.valueMap[n]:null}function lt(e,t){return!Array.isArray(e.show)||e.show.length===0||e.show.some(e=>at(e,t))}function ut(e,t,n){return lt(e,t)?Array.isArray(e.hide)?e.hide.some(e=>typeof e==`number`?e===n:at(e,t)):!1:!0}function dt(e,t){for(let n of Qe(e,`titleKey`)){let e=ze(t,n);if(Be(e))return e}return null}function ft(e){return!e||typeof e!=`object`||Array.isArray(e)?[]:Object.entries(e).filter(([,e])=>typeof e==`number`||typeof e==`string`&&e!==``&&!isNaN(e)).map(([e,t])=>({key:e,label:qe(e),value:Number(t)}))}function pt(e,t){let n=e?.data??e,r=Array.isArray(n?.fields)?n.fields:null,i=t.dynamicCommonCount?.keys?.[0],a=r?[...r.find(e=>e.key===i)?[r.find(e=>e.key===i)]:[],...r.filter(e=>e.key!==i)]:[n];return a.some(e=>Array.isArray(e?.counts))?a.reduce((e,t)=>!t||!Array.isArray(t.counts)?e:(e.total=Math.max(Number(e.total)||0,Number(t.total)||0),t.counts.forEach(({key:t,count:n})=>{e[t]=Number(n)||0}),e),{total:0}):n}function mt(e,t){let n=ft(e),r=t.totalKey,i=r?ze(e||{},r):void 0,a=r&&Be(i)&&!isNaN(i),o=n.map((e,t)=>({...e,_i:t})).filter(e=>!(a&&at(r,[e.key,e.label]))).filter(e=>!ut(t,[e.key,e.label],e._i)).map((e,n)=>{let r=ot(t,[e.key,e.label]),i=r?Ne[it(r)]||r:Me[e._i%Me.length];return{label:st(t,[e.key,e.label],e.label),value:e.value,barColor:i,accentColor:n===0?`#f97316`:null,showInfo:n===0}});return{total:a?Number(i):o.reduce((e,t)=>e+t.value,0),rows:nt(o,tt(t,1).maxCount)}}function ht({item:e,group:t,color:n}){let r=n=>Qe(t,n).map(t=>ze(e,t)).filter(Be),i=r(`titleKey`),a=r(`countKey`),o=r(`nameKey`),s=r(`valueKey`),c=Ge(t,n);return(0,p.jsxs)(d.Card,{className:`dyn-card-item ${c.className}`.trim(),style:c.style,bordered:!0,children:[i.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-title`,style:Ve(t,`cardTitle`),children:e},`t${n}`)),a.map((e,n)=>(0,p.jsx)(d.Statistic,{value:e,className:`dyn-card-stat`,valueStyle:Ve(t,`cardValue`)},`c${n}`)),o.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-name`,style:Ve(t,`cardName`),children:e},`n${n}`)),s.length>0&&(0,p.jsx)(`div`,{className:`dyn-card-footer`,style:Ve(t,`cardFooter`),children:s.map((e,n)=>(0,p.jsx)(Re,{className:`dyn-card-sub`,style:Ve(t,`cardSub`),children:e},`v${n}`))})]})}function gt({group:e}){let{span:t,maxCount:n}=tt(e,4),r=nt((Array.isArray(e.list)?e.list:[]).map((t,n)=>({item:t,name:dt(e,t),_i:n})).filter(t=>!ut(e,t.name,t._i)),n);return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(Re,{type:`secondary`,style:Ve(e,`headerExtra`),children:[r.length,` cards`]})),children:(0,p.jsx)(d.Row,{gutter:[16,16],children:r.map(n=>{let r=ot(e,n.name)||rt(e,n._i);return(0,p.jsx)(d.Col,{xs:24,sm:12,md:t>=12?12:t*2,lg:t,xl:t,children:(0,p.jsx)(ht,{item:n.item,group:e,color:r})},n._i)})})})}function _t({group:e,items:t}){let{span:n,maxCount:r}=tt(e,4),i=nt(t.map((e,t)=>({...e,_i:t})).filter(t=>!ut(e,[t.key,t.label],t._i)),r);return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(Re,{type:`secondary`,style:Ve(e,`headerExtra`),children:[i.length,` cards`]})),children:(0,p.jsx)(d.Row,{gutter:[16,16],children:i.map(t=>{let r=Ge(e,ot(e,[t.key,t.label])||rt(e,t._i));return(0,p.jsx)(d.Col,{xs:24,sm:12,md:n>=12?12:n*2,lg:n,xl:n,children:(0,p.jsxs)(d.Card,{className:`dyn-card-item ${r.className}`.trim(),style:r.style,bordered:!0,children:[(0,p.jsx)(Re,{className:`dyn-card-title`,style:Ve(e,`cardTitle`),children:st(e,[t.key,t.label],t.label)}),(0,p.jsx)(d.Statistic,{value:t.value,groupSeparator:e.groupSeparator??`,`,className:`dyn-card-stat`,valueStyle:Ve(e,`cardValue`)}),Be(ct(e,[t.key,t.label]))&&(0,p.jsx)(Re,{className:`dyn-card-sub`,style:Ve(e,`cardSub`),children:ct(e,[t.key,t.label])})]})},t._i)})})})}function vt({group:e,data:t}){let{total:n,rows:r}=mt(t,e),i=e.tooltipText;return(0,p.jsxs)(d.Card,{className:`submission-card`,style:Ve(e,`card`),children:[Be(e.title)&&(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-header`,style:Ve(e,`submissionHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(Re,{className:`submission-title`,style:Ve(e,`submissionTitle`),children:[e.title,` `,i&&(0,p.jsx)(d.Tooltip,{title:i,children:(0,p.jsx)(f.InfoCircleOutlined,{className:`submission-info-icon`,style:Ve(e,`infoIcon`)})})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-total`,style:Ve(e,`submissionTotal`),children:Number(n||0).toLocaleString()})})]}),(0,p.jsx)(`div`,{className:`submission-rows`,style:Ve(e,`submissionRows`),children:r.map((t,r)=>(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:Ve(e,`submissionRowHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Row,{align:`middle`,gutter:6,children:(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-label`,style:Ve(e,`submissionRowLabel`),children:t.label})})})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-value`,style:Ve(e,`submissionRowValue`),children:t.value})})]}),(0,p.jsx)(`div`,{className:`submission-bar-track`,style:Ve(e,`submissionBarTrack`),children:(0,p.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${t.value/(n||1)*100}%`,background:t.barColor}})})]},`${t.label}-${r}`))})]})}function yt(e){if(!Be(e))return`-`;let t=new Date(e);return!Number.isNaN(t.getTime())&&/date|time/i.test(String(e))?n.pi(t):String(e)}function bt({group:e,data:t}){let n=e.totalKey??`totalScore`,r=e.maxKey??`maximumScore`,i=e.statusKey??`status`,a=e.attemptDateKey??`attemptDate`,o=e.timeTakenKey??`timeTaken`,s=e.rankKey??`rank`,c=Number(ze(t||{},n)??0),l=Number(ze(t||{},r)??100)||100,u=Math.max(0,Math.min(100,Math.round(c/l*100))),f=mt(t,{...e,totalKey:n,hide:[...Array.isArray(e.hide)?e.hide:[],r,i,a,o,s]}).rows,m=[{key:i,label:e.statusLabel??`Status`},{key:a,label:e.attemptDateLabel??`Attempt Date`},{key:o,label:e.timeTakenLabel??`Time Taken`},{key:s,label:e.rankLabel??`Rank`}].filter(e=>Be(ze(t||{},e.key)));return(0,p.jsxs)(d.Card,{className:`assessment-card`,style:Ve(e,`card`),title:He(e),children:[(0,p.jsxs)(`div`,{className:`assessment-card__top`,children:[(0,p.jsx)(d.Progress,{type:`circle`,percent:u,format:()=>`${Number(c||0).toLocaleString()}/${l.toLocaleString()}`,strokeColor:e.scoreColor??`#6d4aff`,trailColor:e.trailColor??`#edf0f5`}),(0,p.jsx)(`dl`,{className:`assessment-card__meta`,children:m.map(e=>(0,p.jsxs)(`div`,{className:`assessment-card__meta-row`,children:[(0,p.jsx)(`dt`,{children:e.label}),(0,p.jsx)(`dd`,{children:yt(ze(t||{},e.key))})]},e.key))})]}),(0,p.jsx)(`div`,{className:`submission-rows assessment-card__rows`,style:Ve(e,`submissionRows`),children:f.map(t=>(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:Ve(e,`submissionRowHeader`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-label`,style:Ve(e,`submissionRowLabel`),children:t.label})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{className:`submission-row-value`,style:Ve(e,`submissionRowValue`),children:t.value})})]}),(0,p.jsx)(`div`,{className:`submission-bar-track`,style:Ve(e,`submissionBarTrack`),children:(0,p.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${Math.max(0,Math.min(100,Number(t.value)/l*100))}%`,background:t.barColor}})})]},t.label))})]})}function xt(e,t={},n={}){let r=Be(e)?e:t.fallback;if(!Be(r))return`-`;let i=Number(r);if(!Number.isFinite(i))return String(r);let a=t.suffix??n.valueSuffix??``;return`${i.toFixed(1).replace(/\.0$/,``)}${a}`}function St({group:e,data:t}){let n=Array.isArray(t);return(0,p.jsxs)(d.Card,{className:`timesheet-summary-card`,size:`small`,children:[Be(e.title)&&(e.plainHeader?(0,p.jsx)(Re,{type:`secondary`,style:{fontSize:12,fontWeight:600},children:e.title}):(0,p.jsxs)(`div`,{className:`timesheet-summary-card__head`,children:[(0,p.jsx)(Le,{level:5,style:{margin:0},children:e.title}),e.headerExtra]})),!n&&(0,p.jsx)(`div`,{className:`timesheet-summary-card__metrics`,children:(e.rows??[]).map(n=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__metric-row`,children:[(0,p.jsxs)(Re,{type:`secondary`,style:{fontSize:12},children:[n.label,` `,n.sublabel&&(0,p.jsx)(`span`,{style:{fontSize:11},children:n.sublabel})]}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:13,whiteSpace:`nowrap`,color:n.valueColor},children:xt(ze(t??{},n.key),n,e)})]},n.key))}),n&&t.length>0&&(0,p.jsx)(`div`,{className:`timesheet-summary-card__weekly`,children:t.map((t,n)=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__week-row`,children:[(0,p.jsx)(Re,{type:`secondary`,style:{fontSize:12},children:e.listRows?.itemLabel?e.listRows.itemLabel(t,n):`Row ${n+1}`}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:12},children:xt(ze(t,e.listRows?.itemValueKey),e.listRows,e)})]},n))})]})}function Ct({group:e,data:t}){return(0,p.jsxs)(d.Card,{className:`timesheet-summary-card`,size:`small`,children:[(Be(e.title)||e.headerExtra)&&(0,p.jsxs)(`div`,{className:`timesheet-summary-card__head`,children:[Be(e.title)&&(0,p.jsx)(Le,{level:5,style:{margin:0},children:e.title}),e.headerExtra]}),(0,p.jsx)(`div`,{className:`timesheet-summary-card__bars`,children:(e.rows??[]).map(n=>(0,p.jsxs)(`div`,{className:`timesheet-summary-card__bar`,style:{background:n.bg},children:[(0,p.jsx)(Re,{style:{fontSize:12,color:n.color,fontWeight:500},children:n.label}),(0,p.jsx)(Re,{strong:!0,style:{fontSize:13,color:n.color},children:xt(ze(t??{},n.key),n,e)})]},n.key))})]})}function wt({group:e,data:t}){let n=Array.isArray(t)?t:[],r=`finance-kpi-row${e.compact?` finance-kpi-row--compact`:``}`;if(e.loading){let e=n.length||4;return(0,p.jsx)(`div`,{className:r,children:Array.from({length:e},(e,t)=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--skeleton`,children:[(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--label`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--value`})]},t))})}return(0,p.jsx)(`div`,{className:r,children:n.map(e=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--${e.tone??`neutral`}`,children:[e.icon?(0,p.jsx)(`span`,{className:`fin-kpi__icon`,children:e.icon}):null,(0,p.jsxs)(`span`,{className:`fin-kpi__body`,children:[(0,p.jsx)(`span`,{className:`finance-kpi__label`,children:e.label}),(0,p.jsx)(`strong`,{className:`finance-kpi__value`,children:e.value}),e.sub??e.hint?(0,p.jsx)(`span`,{className:`finance-kpi__hint`,children:e.sub??e.hint}):null]})]},e.key??e.label))})}function Tt(e,t){return it(ze(t,e.pillKey||`status`))===`resolved`}function Et(e,t){return Be(e.dateKey?Je(ze(t,e.dateKey)):null)}function Dt(e,t){let n=it(ze(t,e.pillKey||`status`));if(n===`tagged`||n===`tag user`||n===`tagged user`)return!0;let r=t?.receiver??t?.receivers??t?.receiverId??t?.receiverName??t?.taggedUser;if(Array.isArray(r))return r.length>0;if(r&&typeof r==`object`)return Object.keys(r).length>0;if(Be(r))return!0;let i=`${ze(t,e.headingKey||`title`)??``} ${ze(t,e.bodyKey||`notes`)??``}`;return/(^|\s)@[^\s]+/.test(i)}function Ot(e,t,n){return Tt(e,t)?`gray`:Dt(e,t)?`blue`:Et(e,t)?`peach`:ot(e,e.colorBy?ze(t,e.colorBy):null)||(e.color&&e.color!==`auto`?e.color:je[n%je.length])}function kt(e,t){let{start:n,end:r}=e.dateRange||{};if(!n||!r)return!0;let i=ze(t,e.footerRightKey||`createdAt`);if(!Be(i))return!0;let a=new Date(i);return isNaN(a)?!0:a>=n&&a<=r}function At(e,t,n){let r=t.dateKey?Je(ze(e,t.dateKey)):null;return{type:Ot(t,e,n),pill:t.pillKey?ze(e,t.pillKey):null,heading:t.headingKey?ze(e,t.headingKey):null,body:t.bodyKey?ze(e,t.bodyKey):null,footerLeft:t.footerLeftKey?ze(e,t.footerLeftKey):null,footerRight:t.footerRightKey?Je(ze(e,t.footerRightKey)):null,dot:r?`#f97316`:null,date:r}}function jt({text:e,lines:t,style:n}){let r=(0,u.useRef)(null),[i,a]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=r.current;if(!e)return;let t=0,n=()=>{t=requestAnimationFrame(()=>{let t=e.scrollHeight-e.clientHeight>1;a(e=>e===t?e:t)})};n();let i=new ResizeObserver(n);return i.observe(e),()=>{cancelAnimationFrame(t),i.disconnect()}},[e,t]);let o=`sticky-note-body${t?` clamp-${t}`:``}`;return(0,p.jsx)(d.Popover,{trigger:`hover`,placement:`topLeft`,overlayClassName:`sticky-note-popover`,content:i?(0,p.jsx)(`div`,{className:`sticky-note-popover-content`,children:e}):null,open:i?void 0:!1,children:(0,p.jsx)(`div`,{ref:r,className:o,style:n,children:e})})}function Mt({group:e}){let t=(0,h.useNavigate)(),r=(0,h.useLocation)(),i=()=>t(`/popup/sticky-notes`,{state:{background:r,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{}}}),a=e=>t(`/popup/sticky-notes`,{state:{background:r,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{editingNoteId:e._id??e.id,editingHeading:e.title,editingComments:e.notes,editingTargetDate:e.reminder?.time||void 0}}}),[o,s]=(0,u.useState)(new Set),c=async e=>{let t=e._id??e.id;s(e=>new Set(e).add(t));try{await re(t),d.message.success(`Note resolved`)}catch{d.message.error(`Failed to resolve note`),s(e=>{let n=new Set(e);return n.delete(t),n})}},{span:l,maxCount:m}=tt(e,2),g=t=>e.colorBy?ze(t,e.colorBy):e.headingKey?ze(t,e.headingKey):null,_=(Array.isArray(e.list)?e.list:[]).filter(e=>!o.has(e._id??e.id)).map((e,t)=>({item:e,_i:t})).filter(({item:t,_i:n})=>!ut(e,g(t),n)).filter(({item:t})=>kt(e,t)),[v,y]=(0,u.useState)(`todo`),b=_.filter(({item:t})=>!Tt(e,t)),x=_.filter(({item:t})=>Tt(e,t)),S=e.showTabs,C=S?v===`resolved`?x:b:_,[w,T]=(0,u.useState)(e.pageSize||12),[E,D]=(0,u.useState)(1);(0,u.useEffect)(()=>{D(1)},[v,e.dateRange]);let O=Math.max(1,Math.ceil(C.length/w));(0,u.useEffect)(()=>{D(e=>Math.min(e,O))},[O]);let k=S?C.slice((E-1)*w,E*w):nt(_,m);return(0,p.jsxs)(d.Card,{className:`sticky-card`,style:Ve(e,`section`),title:He(e),extra:Ue(e,(0,p.jsxs)(`div`,{className:`sticky-card-actions`,children:[e.headerExtra,(0,p.jsx)(d.Tooltip,{title:`Add note`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.PlusOutlined,{}),size:`small`,onClick:i})}),Be(e.viewAllUrl)&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:()=>t(e.viewAllUrl,{state:{moduleName:e.moduleName,title:e.title,request:e.request}}),children:`View all`})]})),children:[S&&(0,p.jsx)(n.ui,{activeKey:v,onChange:y,tabs:[{key:`todo`,title:`To-do`,count:b.length},{key:`resolved`,title:`Resolved Notes`,count:x.length}]}),k.length===0?(0,p.jsx)(d.Empty,{description:`No notes found`}):(0,p.jsx)(`div`,{className:S?`sticky-notes-scroll`:void 0,children:(0,p.jsx)(d.Row,{gutter:[12,12],children:k.map(({item:t,_i:n})=>{let r=At(t,e,n),i=Ge(e,r.type);return(0,p.jsx)(d.Col,{xs:24,sm:24,md:l>=12?12:l*2,lg:l,xl:l,children:(0,p.jsxs)(`div`,{className:`sticky-note ${i.className}`.trim(),style:i.style,children:[(0,p.jsxs)(d.Space,{size:4,className:`sticky-note-hover-actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Edit`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>a(t)})}),(0,p.jsx)(d.Tooltip,{title:`Resolve`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),onClick:()=>c(t)})})]}),(0,p.jsxs)(d.Space,{size:8,align:`center`,className:`sticky-note-pill-row`,children:[Be(r.pill)&&(0,p.jsxs)(d.Tag,{style:Ve(e,`stickyPill`),children:[r.dot&&(0,p.jsx)(`span`,{className:`sticky-note-dot`,style:{background:r.dot}}),r.pill]}),r.date&&(0,p.jsx)(Re,{className:`sticky-note-date`,style:Ve(e,`stickyDate`),children:r.date})]}),Be(r.heading)&&(0,p.jsx)(Re,{strong:!0,className:`sticky-note-heading`,style:Ve(e,`stickyHeading`),children:r.heading}),Be(r.body)&&(0,p.jsx)(jt,{text:r.body,lines:e.bodyLines,style:Ve(e,`stickyBody`)}),(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,className:`sticky-note-footer`,style:Ve(e,`stickyFooter`),children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{style:Ve(e,`stickyFooterText`),children:r.footerLeft})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(Re,{style:Ve(e,`stickyFooterText`),children:r.footerRight})})]})]})},n)})})}),S&&C.length>0&&(0,p.jsx)(`div`,{className:`sticky-notes-pagination`,children:(0,p.jsx)(n.si,{current:E,pageSize:w,total:C.length,onChange:D,onPageSizeChange:T})})]})}function Nt({group:e,children:t}){let n=e.frameClassName||`dyn-frame`,r=e.viewAll?(0,p.jsx)(`a`,{className:`dyn-frame-view-all`,children:typeof e.viewAll==`string`?e.viewAll:`View all`}):void 0;return(0,p.jsxs)(d.Card,{className:n,title:e.frameTitle,extra:r,children:[t,e.footer&&(0,p.jsx)(`div`,{className:`${n}-footer`})]})}function Pt({group:e,data:t}){let n=e.variant===`sticky`?Xe(e.title):e.title,r=e.variant===`sticky`&&Be(e.totalCount)?`${n} (${Number(e.totalCount).toLocaleString()})`:n,i=r===e.title?e:{...e,title:r},a=i.frame?{...i,title:void 0}:i,o=a.variant===`sticky`?(0,p.jsx)(Mt,{group:{...a,list:Array.isArray(t)?t:[]}}):a.variant===`counts`?(0,p.jsx)(_t,{group:a,items:ft(t)}):a.variant===`submission`?(0,p.jsx)(vt,{group:a,data:t}):a.variant===`assessment`?(0,p.jsx)(bt,{group:a,data:t}):a.variant===`metrics`?(0,p.jsx)(St,{group:a,data:t}):a.variant===`bars`?(0,p.jsx)(Ct,{group:a,data:t}):a.variant===`kpi`?(0,p.jsx)(wt,{group:a,data:t}):(0,p.jsx)(gt,{group:{...a,list:Array.isArray(t)?t:[]}});return i.frame?(0,p.jsx)(Nt,{group:i,children:o}):o}function Ft({moduleName:e,title:t,maxCount:r,layout:i,columns:a,request:o,viewAll:s=!0,staticData:c,showTabs:l,dateRange:f,headerExtra:m,rows:h,loading:g}){let _=Pe()[e],v=o?JSON.stringify(o):``,y=h?JSON.stringify(h):``,b=(0,u.useMemo)(()=>{if(!_)return _;let n={title:t,maxCount:r,layout:i,columns:a,showTabs:l,dateRange:f,headerExtra:m,rows:h,loading:g},c={..._,moduleName:e};for(let e in n)Be(n[e])&&(c[e]=n[e]);return o&&(c.request={..._.request,...o,params:{..._.request?.params,...o.params},body:{..._.request?.body,...o.body}}),s||(c.viewAllUrl=void 0),c},[_,t,r,i,a,v,s,l,f,m,y,g]),[x,S]=(0,u.useState)({moduleName:null,resp:null,error:null}),[C,w]=(0,u.useState)(0);(0,u.useEffect)(()=>{if(!b?.refreshEvent)return;let e=()=>w(e=>e+1);return window.addEventListener(b.refreshEvent,e),()=>window.removeEventListener(b.refreshEvent,e)},[b?.refreshEvent]),(0,u.useEffect)(()=>{if(!b)return;if(c!==void 0){let t=pt(c,b);S({moduleName:e,resp:t,error:null});return}if(b.dynamicCommonCount){let t=!0;return n.lo(b.dynamicCommonCount).then(n=>{t&&S({moduleName:e,resp:pt(n,b),error:null})}).catch(n=>{t&&S({moduleName:e,resp:null,error:n})}),()=>{t=!1}}if(!b.request)return;let t=!0;return n.co(e,b.request).then(n=>{t&&S({moduleName:e,resp:n,error:null})}).catch(n=>{t&&S({moduleName:e,resp:null,error:n})}),()=>{t=!1}},[e,b,c,C]);let T=x.moduleName!==e,E=T?null:x.error,D=T?null:x.resp;if(!b)return(0,p.jsx)(d.Empty,{description:`Unknown dashboard module: ${e}`});if(T)return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(b,`section`),title:He(b),children:(0,p.jsx)(`div`,{style:{textAlign:`center`,padding:24},children:(0,p.jsx)(d.Spin,{})})});if(E)return(0,p.jsx)(d.Card,{className:`dyn-card-section`,style:Ve(b,`section`),title:He(b),children:(0,p.jsx)(d.Empty,{description:`Failed to load: ${E.message}`})});let O=Ke(D,b.listPath),k=b.variant===`sticky`?Ze(D,O):null,A=b.variant===`sticky`?{...b,...k}:b;return(0,p.jsx)(Pt,{group:A,data:O})}function It({moduleName:e,title:t,layout:n,columns:r,maxCount:i,request:a,viewAll:o,staticData:s,showTabs:c,dateRange:l,headerExtra:u,rows:f,loading:m}){return e?(0,p.jsx)(`div`,{className:`dyn-cards`,children:(0,p.jsx)(Ft,{moduleName:e,title:t,layout:n,columns:r,maxCount:i,request:a,viewAll:o,staticData:s,showTabs:c,dateRange:l,headerExtra:u,rows:f,loading:m})}):(0,p.jsx)(d.Empty,{description:`DynamicCards: a moduleName prop is required`})}var{Text:Lt}=d.Typography;function Rt(e){return(e??[]).map(e=>({key:e.userId,title:e.isSelf?`${e.name} (You)`:e.name,searchText:`${e.name} ${e.email??``}`.toLowerCase(),children:Rt(e.children)}))}function zt(e,t){let n=[];for(let r of e){let e=zt(r.children??[],t);(r.searchText.includes(t)||e.length>0)&&n.push({...r,children:e})}return n}function Bt(e,t=[]){for(let n of e)t.push(n.key),Bt(n.children??[],t);return t}function Vt({value:e=[],onChange:t}){let[r,i]=(0,u.useState)(null),[a,o]=(0,u.useState)(!0),[s,c]=(0,u.useState)(null),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=!0;return n.uo().then(t=>{e&&i(Rt(t?.users))}).catch(t=>{e&&c(t)}).finally(()=>{e&&o(!1)}),()=>{e=!1}},[]);let _=l.trim().toLowerCase(),v=(0,u.useMemo)(()=>_&&r?zt(r,_):r,[r,_]),y=_?{expandedKeys:Bt(v??[])}:{},b=(0,p.jsxs)(`div`,{style:{width:280},children:[(0,p.jsx)(d.Input.Search,{placeholder:`Search users`,allowClear:!0,value:l,onChange:e=>m(e.target.value),style:{marginBottom:8}}),a&&(0,p.jsx)(`div`,{style:{padding:24,textAlign:`center`},children:(0,p.jsx)(d.Spin,{size:`small`})}),s&&(0,p.jsx)(d.Empty,{description:`Could not load users`}),!a&&!s&&(v?.length?(0,p.jsx)(`div`,{style:{maxHeight:280,overflow:`auto`},children:(0,p.jsx)(d.Tree,{checkable:!0,selectable:!1,defaultExpandAll:!0,treeData:v,checkedKeys:e,onCheck:(e,n)=>t(n.checkedNodes.map(e=>e.key)),...y})}):(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No users`})),e.length>0&&(0,p.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginTop:8,paddingTop:8,borderTop:`1px solid #f0f0f0`},children:[(0,p.jsxs)(Lt,{type:`secondary`,children:[e.length,` selected`]}),(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:()=>t([]),children:`Clear`})]})]});return(0,p.jsx)(d.Popover,{content:b,trigger:`click`,placement:`bottomRight`,open:h,onOpenChange:g,children:(0,p.jsx)(d.Badge,{count:e.length,size:`small`,offset:[-4,4],children:(0,p.jsxs)(d.Button,{icon:(0,p.jsx)(f.FilterOutlined,{}),children:[`Filter by `,(0,p.jsx)(f.DownOutlined,{style:{fontSize:10}})]})})})}function Ht(e){let t=n.di().startOf(`day`).diff(n.gi(e).startOf(`day`),`day`);return t<=0?`Today`:t===1?`1 Day ago`:`${t} Days ago`}function Ut(e=[],t){let r=new Map;return e.forEach(e=>{let i=t(e),a=n.gi(i);if(!a.isValid())return;let o=a.format(`YYYY-MM-DD`);r.has(o)||r.set(o,{date:new Date(a.valueOf()),items:[]}),r.get(o).items.push(e)}),[...r.values()].sort((e,t)=>t.date-e.date)}function Wt(e){let t=e?.dateTimeFormat||`MMM DD, YYYY | hh:mm A`,[n]=t.split(`|`);return(n??t).trim()||t}function Gt(e){let t=n.Si();return n.fi(e,Wt(t),t)}function Kt(e){return Gt(e)}function qt(e){return n.pi(e,n.Si())}function Jt({row:e,last:t,getTime:n,getAuthor:r,getMeta:i,renderBody:a}){let o=n(e),s=r?.(e),c=i?.(e);return(0,p.jsxs)(`div`,{className:`znx-an-item`,children:[(0,p.jsxs)(`div`,{className:`znx-an-rail`,children:[c?(0,p.jsx)(`span`,{className:`znx-an-icon-dot znx-an-icon-dot--${c.tone}`,title:c.label,children:c.icon}):(0,p.jsx)(`span`,{className:`znx-an-dot`}),!t&&(0,p.jsx)(`span`,{className:`znx-an-line`})]}),(0,p.jsxs)(`div`,{className:`znx-an-content`,children:[a(e),(0,p.jsxs)(`div`,{className:`znx-an-meta`,children:[s&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`span`,{className:`znx-an-author`,children:s}),(0,p.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`})]}),(0,p.jsx)(`span`,{className:`znx-an-stamp`,children:qt(o)})]})]})]})}function Yt({rows:e=[],getTime:t,getKey:n,getAuthor:r,getMeta:i,renderBody:a,emptyText:o=`Nothing here yet.`,grouped:s=!0}){if(!s)return e.length?(0,p.jsx)(`div`,{className:`znx-an-flat`,children:e.map((o,s)=>(0,p.jsx)(Jt,{row:o,last:s===e.length-1,getTime:t,getAuthor:r,getMeta:i,renderBody:a},n(o,s)))}):(0,p.jsx)(`div`,{className:`znx-an-empty`,children:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})});let c=Ut(e,t);if(!c.length)return(0,p.jsx)(`div`,{className:`znx-an-empty`,children:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})});let l=c.map((e,o)=>({key:String(o),label:(0,p.jsxs)(`span`,{className:`znx-an-group`,children:[(0,p.jsx)(`span`,{className:`znx-an-group-day`,children:Ht(e.date)}),(0,p.jsx)(`span`,{className:`znx-an-group-date`,children:Kt(e.date)}),(0,p.jsx)(`span`,{className:`znx-an-group-count`,children:e.items.length})]}),children:e.items.map((o,s)=>(0,p.jsx)(Jt,{row:o,last:s===e.items.length-1,getTime:t,getAuthor:r,getMeta:i,renderBody:a},n(o,s)))}));return(0,p.jsx)(d.Collapse,{className:`znx-an-collapse`,defaultActiveKey:[`0`],ghost:!0,items:l})}var Xt={add:`created`,create:`created`,created:`created`,update:`updated`,updated:`updated`,edit:`updated`,edited:`updated`,update_log:`updated`,update_proof:`updated`,notes:`note`,note:`note`,comment:`note`,assign:`assigned`,assigned:`assigned`,assignment:`assigned`,reassign:`assigned`,reassigned:`assigned`,submit:`submitted`,submitted:`submitted`,submission:`submitted`,"internal submission":`submitted`,send_for_approval:`sendForApproval`,"send for approval":`sendForApproval`,sendforapproval:`sendForApproval`,resubmit:`resubmitted`,resubmitted:`resubmitted`,resent_for_approval:`resent`,reject:`rejected`,rejected:`rejected`,reject_days:`rejected`,declined:`rejected`,decline:`rejected`,approve:`approved`,approved:`approved`,approve_days:`approved`,reopen:`reopened`,reopened:`reopened`,delete:`deleted`,deleted:`deleted`,remove:`deleted`,removed:`deleted`,status:`status`,"status change":`status`,statuschange:`status`,document:`document`,documents:`document`,upload:`document`,uploaded:`document`,attachment:`document`},Zt={created:{tone:`success`,icon:(0,p.jsx)(f.PlusOutlined,{}),label:`Created`},updated:{tone:`info`,icon:(0,p.jsx)(f.EditOutlined,{}),label:`Updated`},note:{tone:`neutral`,icon:(0,p.jsx)(f.MessageOutlined,{}),label:`Note`},assigned:{tone:`purple`,icon:(0,p.jsx)(f.UserSwitchOutlined,{}),label:`Assigned`},submitted:{tone:`info`,icon:(0,p.jsx)(f.SendOutlined,{}),label:`Submitted`},sendForApproval:{tone:`info`,icon:(0,p.jsx)(f.SendOutlined,{}),label:`Send for Approval`},resubmitted:{tone:`purple`,icon:(0,p.jsx)(f.RedoOutlined,{}),label:`Re-submitted`},resent:{tone:`purple`,icon:(0,p.jsx)(f.RedoOutlined,{}),label:`Resend for Approval`},approved:{tone:`success`,icon:(0,p.jsx)(f.CheckOutlined,{}),label:`Approved`},rejected:{tone:`danger`,icon:(0,p.jsx)(f.CloseOutlined,{}),label:`Rejected`},reopened:{tone:`neutral`,icon:(0,p.jsx)(f.UndoOutlined,{}),label:`Reopened`},deleted:{tone:`danger`,icon:(0,p.jsx)(f.DeleteOutlined,{}),label:`Deleted`},status:{tone:`warning`,icon:(0,p.jsx)(f.SwapOutlined,{}),label:`Status changed`},document:{tone:`info`,icon:(0,p.jsx)(f.PaperClipOutlined,{}),label:`Document`},scheduled:{tone:`warning`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),label:`Scheduled`},default:{tone:`neutral`,icon:(0,p.jsx)(f.HistoryOutlined,{}),label:`Activity`}},Qt=[[/\b(?:submitted|sent|send)\b[\s\S]*\b(?:cfo|finance)\b[\s\S]*\bfor approval\b/i,`sendForApproval`],[/\bsend(?:ing)?\s+for\s+approval\b/i,`sendForApproval`],[/\breject/i,`rejected`],[/\bresent\b/i,`resent`],[/\bresubmit/i,`resubmitted`],[/\bapprov/i,`approved`],[/\bsubmit/i,`submitted`],[/\breassign|\bassign/i,`assigned`],[/\bdelete|\bremov/i,`deleted`],[/\breopen/i,`reopened`],[/\bstatus/i,`status`],[/\bdocument|\battach|\bupload/i,`document`],[/\bnote/i,`note`],[/\bupdat|\bchang|\bedit/i,`updated`],[/\bcreat|\badded\b/i,`created`]];function $t(e,t){let n=String(e||``).trim().toLowerCase();if(n&&Xt[n])return Xt[n];let r=String(t||``);for(let[e,t]of Qt)if(e.test(r))return t;return`default`}function en(e={},t=``){return Zt[$t(e.activityType??e.activity_type??e.type??e.action,t||e.activityComments)]??Zt.default}function tn(e=``){if(typeof document>`u`)return String(e);let t=document.createElement(`div`);return t.innerHTML=e,t.textContent||t.innerText||``}var nn=[{id:`a1`,activityTime:new Date().toISOString(),activityComments:`Job <b>created</b> and assigned to the recruitment team.`},{id:`a2`,activityTime:new Date(Date.now()-1728e5).toISOString(),activityComments:`Status changed to <b>Active</b>.`}];function rn({activity:e,grouped:t=!0}){let n=(0,u.useMemo)(()=>[...Array.isArray(e)?e:nn].sort((e,t)=>{let n=new Date(e?.activityTime??e?.activityDateTime??e?.performedAt??e?.createdAt??e?.updatedAt??0).getTime(),r=new Date(t?.activityTime??t?.activityDateTime??t?.performedAt??t?.createdAt??t?.updatedAt??0).getTime();return(Number.isNaN(r)?0:r)-(Number.isNaN(n)?0:n)}),[e]);return(0,p.jsx)(`div`,{className:`znx-an-body`,children:(0,p.jsx)(`div`,{className:`znx-an-scroll`,children:(0,p.jsx)(Yt,{rows:n,grouped:t,getTime:e=>e.activityTime??e.createdAt,getKey:(e,t)=>e.id??e._id??t,emptyText:`No activity here.`,getMeta:e=>en(e,e.activityComments),renderBody:e=>{let t=en(e,e.activityComments);return(0,p.jsxs)(`div`,{className:`znx-an-comment`,children:[(0,p.jsx)(`span`,{className:`znx-an-tag znx-an-tag--${t.tone}`,children:t.label}),tn(e.activityComments)]})}})})})}function an(e){let t=e?.user_name??e?.userName??e?.username,n=`${e?.first_name??e?.firstName??``} ${e?.last_name??e?.lastName??``}`.trim(),r=e?.email??``,i=t??n.replace(/\s+/g,``)??r??String(e?.user_id??e?.id??``),a=[t,n,r].filter(Boolean).join(` - `)||String(i);return{value:String(i),label:a}}var on=[{id:`n1`,createdAt:new Date().toISOString(),author:`You`,notes:`Shortlisted 3 candidates, sharing profiles with @Hiring Manager today.`}];function sn(e=``){return e.split(/(\s+)/).map((e,t)=>e.startsWith(`@`)&&e.length>1?(0,p.jsx)(`span`,{className:`znx-an-mention`,children:e},t):(0,p.jsx)(`span`,{children:e},t))}function cn({notes:e,users:t=[],onAddNote:r,allowAddNote:i=!0}){let[a]=d.Form.useForm(),[o,s]=(0,u.useState)(()=>Array.isArray(e)?e:on),[c,l]=(0,u.useState)(!1),[f,m]=(0,u.useState)(null),[h,g]=(0,u.useState)(!1),_=(0,u.useRef)(null),v=Array.isArray(e)?e:o,y=(0,u.useMemo)(()=>t.map(e=>({value:e.display??e.value,label:e.display??e.label})),[t]),b=f??y;return(0,p.jsxs)(`div`,{className:`znx-an-body`,children:[i&&(0,p.jsxs)(d.Form,{form:a,onFinish:async({note:e})=>{let t=(e??``).trim();if(t){l(!0);try{r?await r(t):s(e=>[{id:`local-${Date.now()}`,createdAt:new Date().toISOString(),author:`You`,notes:t},...e]),a.resetFields(),d.message.success(`Notes added successfully`)}catch{d.message.error(`Something went wrong, please try again.`)}finally{l(!1)}}},className:`znx-an-composer`,children:[(0,p.jsx)(d.Form.Item,{name:`note`,rules:[{required:!0,message:`Notes is required`}],style:{marginBottom:0},children:(0,p.jsx)(d.Mentions,{rows:3,prefix:`@`,options:b,loading:h,filterOption:!1,onSearch:e=>{clearTimeout(_.current),g(!0),_.current=setTimeout(()=>{n.Zt(e).then(e=>{let t=Array.isArray(e)?e:e?.items??e?.list??e?.data??[];m(t.map(an))}).catch(()=>m([])).finally(()=>g(!1))},300)},placeholder:`Add your notes on the job, use '@' to mention`})}),(0,p.jsx)(`div`,{className:`znx-an-composer-actions`,children:(0,p.jsx)(d.Button,{type:`primary`,size:`small`,htmlType:`submit`,loading:c,children:`Post`})})]}),(0,p.jsx)(`div`,{className:`znx-an-scroll`,children:(0,p.jsx)(Yt,{rows:v,getTime:e=>e.createdAt??e.activityTime,getKey:(e,t)=>e.id??e._id??t,getAuthor:e=>e.createdByName||e.author||``,emptyText:`No notes here.`,renderBody:e=>(0,p.jsx)(`div`,{className:`znx-an-comment`,children:sn(e.notes)})})})]})}function ln({moduleName:e,id:t,users:r=[],showActivity:i=!0,showNotes:a=!0,allowAddNote:o=!0,defaultActiveKey:s=`activity`,refreshKey:c=0,className:l=``}){let[f,m]=(0,u.useState)(null),[h,g]=(0,u.useState)(null);(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;async function o(){let[o,s]=await Promise.all([i?n.Yr(e,t).catch(()=>[]):Promise.resolve(null),a?n.Qr(t).catch(()=>[]):Promise.resolve(null)]);r||(m(o),g(s))}return o(),()=>{r=!0}},[e,t,i,a,c]);let _=(0,u.useCallback)(async r=>{if(!t)return;await n.Jr({relatedId:t,notes:r,notesFor:e});let[a,o]=await Promise.all([n.Qr(t).catch(()=>[]),i?n.Yr(e,t).catch(()=>[]):Promise.resolve(f)]);g(a),i&&m(o)},[t,e,i,f]),v=[i&&{key:`activity`,title:`Activity`,count:Array.isArray(f)?f.length:void 0,children:(0,p.jsx)(rn,{activity:f})},a&&{key:`notes`,title:`Notes`,count:Array.isArray(h)?h.length:void 0,children:(0,p.jsx)(cn,{notes:h,users:r,allowAddNote:o,onAddNote:t?_:void 0})}].filter(Boolean),y=v.some(e=>e.key===s)?s:v[0]?.key,[b,x]=(0,u.useState)(y);return(0,p.jsx)(d.Card,{className:[`znx-an-card`,l].filter(Boolean).join(` `),styles:{body:{padding:0}},children:(0,p.jsx)(n.ui,{className:`znx-an-tabs`,tabs:v,activeKey:b,onChange:x})})}ln.propTypes={moduleName:g.default.string,id:g.default.string,users:g.default.array,showActivity:g.default.bool,showNotes:g.default.bool,allowAddNote:g.default.bool,defaultActiveKey:g.default.string,refreshKey:g.default.oneOfType([g.default.number,g.default.string]),className:g.default.string};function un({assignees:e,extraAssignees:t}){return(0,p.jsxs)(d.Avatar.Group,{maxCount:3,size:`small`,children:[e.map((e,t)=>(0,p.jsx)(d.Tooltip,{title:e.initials,children:(0,p.jsx)(d.Avatar,{size:`small`,style:{backgroundColor:e.color,fontSize:10,fontWeight:600,cursor:`default`},children:e.initials})},t)),t>0&&(0,p.jsxs)(d.Avatar,{size:`small`,style:{backgroundColor:`#d9d9d9`,color:`#555`,fontSize:10},children:[`+`,t]})]})}var dn=[`.xlsx`,`.xls`,`.csv`],fn=10,pn={".xlsx":[`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`],".xls":[`application/vnd.ms-excel`],".csv":[`text/csv`,`application/csv`,`text/plain`]},mn=[{test:(e,t)=>e===`.pdf`||t===`application/pdf`,label:`PDF`},{test:(e,t)=>t.startsWith(`image/`)||[`.jpg`,`.jpeg`,`.png`,`.gif`,`.webp`,`.heic`,`.bmp`,`.svg`].includes(e),label:`Image`},{test:e=>[`.doc`,`.docx`].includes(e),label:`Word document`},{test:e=>[`.zip`,`.rar`,`.7z`].includes(e),label:`Archive`},{test:e=>[`.txt`,`.json`,`.xml`].includes(e),label:`Plain text`}];function hn(e=``){let t=e.lastIndexOf(`.`);return t===-1?``:e.slice(t).toLowerCase()}function gn(e=0){return e<1024?`${e} B`:e<1048576?`${Math.ceil(e/1024)} KB`:`${(e/1048576).toFixed(1)} MB`}function _n(e=dn){let t=e.map(e=>e.toLowerCase());return t.concat(t.flatMap(e=>pn[e]??[])).join(`,`)}function vn(e,{accept:t=dn,maxSizeMB:n=10}={}){if(!e)return`No file selected.`;let r=hn(e.name),i=(e.type||``).toLowerCase(),a=t.map(e=>e.toLowerCase()),o=a.join(`, `);if(!r)return`"${e.name}" has no file extension. Only ${o} files are allowed.`;if(!a.includes(r)){let e=mn.find(e=>e.test(r,i));return e?`${e.label} files are not supported. Only ${o} files are allowed.`:`"${r}" files are not supported. Only ${o} files are allowed.`}let s=pn[r];return i&&s&&!s.includes(i)?`"${e.name}" is not a real ${r} file (detected ${i}). Re-save it from Excel and try again.`:e.size===0?`"${e.name}" is empty. Fill in at least one row before uploading.`:e.size>n*1024*1024?`File is ${gn(e.size)}. The limit is ${n} MB.`:null}function yn(){return(0,p.jsxs)(`svg`,{className:`bulk-upload-art`,viewBox:`0 0 72 72`,focusable:`false`,"aria-hidden":`true`,children:[(0,p.jsx)(`rect`,{x:`12`,y:`6`,width:`36`,height:`48`,rx:`5`,className:`bulk-upload-art__sheet`}),(0,p.jsx)(`path`,{d:`M20 20h20M20 28h20M20 36h12`,className:`bulk-upload-art__lines`}),(0,p.jsx)(`circle`,{cx:`50`,cy:`48`,r:`15`,className:`bulk-upload-art__badge`}),(0,p.jsx)(`path`,{d:`M50 55V41m0 0-6 6m6-6 6 6`,className:`bulk-upload-art__arrow`})]})}function bn({title:e,description:t,breadcrumbItems:r,backTo:i,backLabel:a=`Back`,templateLabel:o=`Download Sample Template`,templateTitle:s=`Sample template`,templateHint:c=`Pre-filled with the exact column names the importer expects. Do not rename or reorder the columns.`,instructions:l=[],accept:m=dn,maxSizeMB:g=10,onDownloadTemplate:_,onUpload:v,renderResult:y,extraSidebar:b}){let x=(0,u.useRef)(null),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(!1),[E,D]=(0,u.useState)(!1),[O,k]=(0,u.useState)(null),[A,j]=(0,u.useState)(null),[M,N]=(0,u.useState)(null),[P,F]=(0,u.useState)(0),I=(0,u.useMemo)(()=>m.map(e=>e.toLowerCase()),[m]),L=(0,u.useMemo)(()=>_n(I),[I]),R=(0,u.useCallback)(()=>{k(null),j(null),N(null),C(!1),F(e=>e+1)},[]),z=(0,u.useCallback)(async()=>{if(_){T(!0);try{await _(),d.message.success(`Sample template downloaded.`)}catch(e){d.message.error(e?.message||`Could not download the template.`)}finally{T(!1)}}},[_]),B=(0,u.useCallback)(async e=>{if(!e||E)return;F(e=>e+1);let t=vn(e,{accept:I,maxSizeMB:g});if(t){k(null),N(null),j(t);return}j(null),N(null),k({name:e.name,size:e.size}),D(!0);try{let t=await v(e);N(t)}catch(e){j(e?.message||`Upload failed. Please try again.`)}finally{D(!1)}},[I,g,v,E]),V=()=>{E||x.current?.click()},H=[`bulk-upload-dropzone`,S?`is-dragging`:``,E?`is-busy`:``,A?`is-error`:``,M&&!A?`is-done`:``].filter(Boolean).join(` `);return(0,p.jsxs)(`div`,{className:`bulk-upload-panel`,children:[r?.length?(0,p.jsx)(`div`,{className:`bulk-upload-breadcrumb`,children:(0,p.jsx)(n.Dt,{items:r})}):null,(0,p.jsxs)(`div`,{className:`bulk-upload-frame`,children:[(0,p.jsxs)(`header`,{className:`bulk-upload-header`,children:[(0,p.jsx)(`div`,{className:`bulk-upload-header__icon`,"aria-hidden":`true`,children:(0,p.jsx)(f.FileExcelOutlined,{})}),(0,p.jsxs)(`div`,{className:`bulk-upload-header__text`,children:[(0,p.jsx)(`h1`,{className:`bulk-upload-header__title`,children:e}),t?(0,p.jsx)(`p`,{className:`bulk-upload-header__desc`,children:t}):null]}),i?(0,p.jsx)(h.Link,{className:`bulk-upload-header__back`,to:i,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.ArrowLeftOutlined,{}),children:a})}):null]}),(0,p.jsxs)(`div`,{className:`bulk-upload-grid`,children:[(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--drop`,children:[(0,p.jsxs)(`div`,{className:`bulk-upload-card__head`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-step`,children:`Step 2`}),(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:`Upload the filled file`})]}),(0,p.jsxs)(`div`,{role:`button`,tabIndex:E?-1:0,"aria-disabled":E,"aria-label":`Upload the filled file — click to browse, or drop a file here`,className:H,onClick:V,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),V())},onDragOver:e=>{e.preventDefault(),E||C(!0)},onDragLeave:()=>C(!1),onDrop:e=>{e.preventDefault(),C(!1),B(e.dataTransfer.files?.[0])},children:[(0,p.jsx)(yn,{}),(0,p.jsx)(`p`,{className:`bulk-upload-dropzone__title`,children:S?`Drop the file to start uploading`:`Drag & drop your file here`}),(0,p.jsxs)(`p`,{className:`bulk-upload-dropzone__sub`,children:[`or `,(0,p.jsx)(`span`,{className:`bulk-upload-dropzone__link`,children:`browse from your computer`})]}),(0,p.jsxs)(`div`,{className:`bulk-upload-chips`,children:[I.map(e=>(0,p.jsx)(d.Tag,{className:`bulk-upload-chip bulk-upload-chip--ok`,children:e},e)),(0,p.jsx)(d.Tooltip,{title:`These file types are rejected before upload`,children:(0,p.jsx)(d.Tag,{className:`bulk-upload-chip bulk-upload-chip--no`,children:`.pdf .jpg .png not allowed`})})]}),(0,p.jsxs)(`p`,{className:`bulk-upload-dropzone__limit`,children:[`Maximum size `,g,` MB`]})]}),(0,p.jsx)(`input`,{ref:x,hidden:!0,type:`file`,accept:L,onChange:e=>B(e.target.files?.[0])},P),O?(0,p.jsxs)(`div`,{className:`bulk-upload-file ${A?`is-error`:``}`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-file__icon`,children:E?(0,p.jsx)(f.FileExcelOutlined,{}):A?(0,p.jsx)(f.CloseCircleFilled,{}):(0,p.jsx)(f.CheckCircleFilled,{})}),(0,p.jsxs)(`span`,{className:`bulk-upload-file__meta`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-file__name`,title:O.name,children:O.name}),(0,p.jsxs)(`span`,{className:`bulk-upload-file__size`,children:[gn(O.size),E?` · uploading…`:A?` · failed`:` · processed`]})]}),E?null:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:M?(0,p.jsx)(f.ReloadOutlined,{}):(0,p.jsx)(f.DeleteOutlined,{}),onClick:R,children:M?`Upload another`:`Remove`})]}):null,E?(0,p.jsx)(d.Progress,{percent:99,status:`active`,showInfo:!1,size:`small`,className:`bulk-upload-progress`}):null,A?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,className:`bulk-upload-alert`,title:`File not accepted`,description:A}):null]}),(0,p.jsxs)(`aside`,{className:`bulk-upload-side`,children:[(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--template`,children:[(0,p.jsxs)(`div`,{className:`bulk-upload-card__head`,children:[(0,p.jsx)(`span`,{className:`bulk-upload-step`,children:`Step 1`}),(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:s})]}),(0,p.jsx)(`p`,{className:`bulk-upload-side__hint`,children:c}),(0,p.jsx)(d.Button,{block:!0,icon:(0,p.jsx)(f.DownloadOutlined,{}),loading:w,onClick:z,className:`bulk-upload-template-btn`,children:o})]}),l.length?(0,p.jsxs)(`section`,{className:`bulk-upload-card bulk-upload-card--rules`,children:[(0,p.jsx)(`h2`,{className:`bulk-upload-card__title`,children:`Before you upload`}),(0,p.jsx)(`ul`,{className:`bulk-upload-rules`,children:l.map(e=>(0,p.jsx)(`li`,{children:e},e))})]}):null,b]})]}),M&&y?(0,p.jsx)(`div`,{className:`bulk-upload-result`,children:y(M,{reset:R})}):null]})]})}var xn=e.t({getJobById:()=>kn,getJobDetailView:()=>Sn,updateJobDescription:()=>An});async function Sn(e){let n=await t.a(),r=new URLSearchParams({jobId:String(e)}),i=await fetch(`${t.w}/jobs?${r}`,{method:`GET`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(!i.ok)throw Error(`API ${i.status}: ${i.statusText}`);let a=await i.json();return a.data??a}var Cn={email:`zinnext@realtekconsulting.net`,user_pwd:`Admin@123*`},wn=null;async function Tn(){return wn||(wn=fetch(`${t.S}/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(Cn)}).then(async e=>{if(!e.ok)throw Error(`Login failed: ${e.status}`);let t=await e.json(),n=t.token??t.access_token??t.data?.token??t.data?.access_token;if(!n)throw Error(`No token in login response`);return localStorage.setItem(`authToken`,n),n}).finally(()=>{wn=null}),wn)}async function En(){return(t.u()??localStorage.getItem(`authToken`))||Tn()}async function Dn(e){let n=await En(),r=await fetch(`${t.S}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(r.status===401&&(localStorage.removeItem(`authToken`),n=await Tn(),r=await fetch(`${t.S}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}})),!r.ok)throw Error(`API ${r.status}: ${r.statusText}`);let i=await r.json();return i.data??i}async function On(e,n){let r=await En(),i=await fetch(`${t.S}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)});if(i.status===401&&(localStorage.removeItem(`authToken`),r=await Tn(),i=await fetch(`${t.S}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)})),!i.ok)throw Error(`API ${i.status}: ${i.statusText}`);return i.json()}async function kn(e){return Dn(`/jobs/${e}`)}async function An(e,t){return On(`/jobs/${e}`,{rawDescription:t})}var{Text:jn}=d.Typography,Mn=2;function Nn({jobId:e,sections:t=[],meta:n=[],rawDescription:r=``,onSaved:i}){let[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1),_=[...t].sort((e,t)=>(e.displayOrder??0)-(t.displayOrder??0)),v=a?_:_.slice(0,Mn),y=_.length>Mn;function b(){m(r),c(!0)}function x(){c(!1),m(``)}async function S(){if(!l.trim()){d.message.warning(`Please enter a job description`);return}g(!0);try{await An(e,l.trim());let t=await kn(e);i?.(t),c(!1),m(``),d.message.success(`Description updated successfully`)}catch{d.message.error(`Failed to update description`)}finally{g(!1)}}return s?(0,p.jsxs)(d.Space,{direction:`vertical`,style:{width:`100%`},size:8,children:[(0,p.jsx)(d.Input.TextArea,{rows:10,value:l,onChange:e=>m(e.target.value),placeholder:`Paste raw job description here...`}),(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,loading:h,onClick:S,children:`Save & Parse`}),(0,p.jsx)(d.Button,{onClick:x,children:`Cancel`})]})]}):(0,p.jsxs)(`div`,{className:`desc-block`,children:[(0,p.jsx)(`div`,{className:`desc-block-toolbar`,children:(0,p.jsx)(f.EditOutlined,{className:`desc-edit-icon`,onClick:b})}),!t.length&&!n.length?(0,p.jsx)(jn,{type:`secondary`,children:`No description available.`}):(0,p.jsxs)(`div`,{className:`jdv-ats-desc`,children:[n.length>0&&(0,p.jsx)(`div`,{className:`jdv-ats-meta-grid`,children:n.map(({fieldKey:e,fieldLabel:t,value:n})=>(0,p.jsxs)(`div`,{className:`jdv-ats-meta-row`,children:[(0,p.jsx)(`span`,{className:`jdv-ats-meta-key`,children:t}),(0,p.jsx)(`span`,{className:`jdv-ats-meta-val`,children:n})]},e))}),(0,p.jsx)(`div`,{className:`jdv-ats-sections`,children:v.map(({sectionKey:e,sectionTitle:t,renderType:n,content:r=[]})=>n===`education`?(0,p.jsxs)(`div`,{className:`education-block`,children:[(0,p.jsxs)(`div`,{className:`education-header`,children:[(0,p.jsx)(`span`,{children:`🎓`}),(0,p.jsx)(`span`,{children:t})]}),(0,p.jsx)(`ul`,{className:`education-list`,children:r.map((e,t)=>(0,p.jsx)(`li`,{className:`education-list-item`,children:e},t))})]},e):(0,p.jsxs)(`div`,{className:`jdv-ats-section`,children:[(0,p.jsx)(`div`,{className:`jdv-ats-section-hd`,children:(0,p.jsx)(`span`,{children:t})}),n===`chips`?(0,p.jsx)(d.Space,{size:[6,6],wrap:!0,style:{marginTop:8},children:r.map((e,t)=>(0,p.jsx)(d.Tag,{className:`jdv-skill-tag`,children:e},t))}):(0,p.jsx)(`ul`,{className:`jdv-ats-bullets`,children:r.map((e,t)=>(0,p.jsx)(`li`,{className:`jdv-ats-bullet-item`,children:e},t))})]},e))}),y&&(0,p.jsx)(`span`,{className:`jdv-desc-toggle`,onClick:()=>o(e=>!e),children:a?`Show less`:`Show more (${t.length-Mn} more sections)`})]})]})}function Pn(){return Number(localStorage.getItem(`userId`))||0}function Fn(e,{id:t,moduleName:n,record:r}={}){let i=(0,u.useMemo)(()=>Array.isArray(e)?e:[],[e]),a=(0,u.useMemo)(()=>i.filter(e=>typeof e?.visibleWhen==`function`),[i]),[o,s]=(0,u.useState)({});return(0,u.useEffect)(()=>{if(!a.length)return;let e=!1,i={id:t,moduleName:n,record:r,currentUserId:Pn()};return a.forEach(n=>{let r=`${t}:${n.key}`;Promise.resolve().then(()=>n.visibleWhen(i)).then(t=>{e||s(e=>({...e,[r]:t!==!1}))}).catch(()=>{e||s(e=>({...e,[r]:!0}))})}),()=>{e=!0}},[a,t,n,r]),(0,u.useMemo)(()=>i.filter(e=>typeof e?.visibleWhen!=`function`||o[`${t}:${e.key}`]===!0),[i,o,t])}var In=[{field:`baId`,label:`BA`,icon:`idcard`},{field:`clientName`,icon:`bank`,tooltip:`Client`},{field:`employerName`,icon:`team`,badgeField:`engagementType`,tooltip:`Employer`},{field:`projectName`,icon:`project`,tooltip:`Project`},{field:`batchPriority`,icon:`idcard`,tooltip:`Priority`},{field:`paymentTermsLabel`,icon:`cycle`,tooltip:`Payment Terms`},{field:`paymentDeadlineLabel`,icon:`period`,tooltip:`Payment Deadline`},{field:`batchName`,icon:`project`,tooltip:`Payment Batch`},{field:`period.label`,icon:`period`,tooltip:`Period`}],Ln=e.t({billingConfig:()=>Rn,default:()=>Rn}),Rn={module:`billing`,tabs:[],header:{variant:`finance`,title:`candidateName`,eyebrow:`designation`,statusField:`billing.status`,chips:In}},zn={USD:`$`,INR:`₹`,EUR:`€`,GBP:`£`,AUD:`$`,CAD:`$`},Bn=e=>e==null||e===``||Array.isArray(e)&&e.length===0,Vn=e=>!Bn(e);function Hn(e){let t=Wn(e);return t.charAt(0).toUpperCase()+t.slice(1)}function Un(e){return e&&typeof e==`object`&&!Array.isArray(e)&&`id`in e&&`value`in e?e.id??e.value:e}function Wn(e){return Array.isArray(e)?e.filter(e=>!Bn(e)).map(e=>Wn(e)).filter(Boolean).join(`, `):e&&typeof e==`object`&&`id`in e&&`value`in e?String(e.value??e.id??``):String(e??``)}function Gn(e){return Bn(e)?``:zn[String(e).toUpperCase()]??String(e)}function Kn(e){return Bn(e)?``:n.pi(e)}function qn({start:e,end:t,sym:n=``,unit:r}={}){return Bn(e)||Number(e)<=0?``:`${n}${!Bn(t)&&Number(t)>0?`${e} - ${t}`:`${e}`}${Bn(r)?``:`/${r}`}`}function Jn(e){let t=Wn(e).toLowerCase();return[`active`,`open`,`hired`,`approved`,`fulfilled`,`submitted`].includes(t)?`success`:[`inactive`,`closed`,`rejected`,`high`].includes(t)?`error`:[`hold`,`on hold`,`pending`,`unread`,`medium`].includes(t)?`warning`:`default`}var Yn=e.t({candidateConfig:()=>Xn,default:()=>Xn}),Xn={module:`candidate`,tabs:[{key:`details`,label:`Details`},{key:`jobs`,label:`Jobs`},{key:`emails`,label:`Emails`},{key:`attachments`,label:`Attachments`}],header:{title:[`firstName`,`middleName`,`lastName`],eyebrow:`source`,status:({val:e,has:t})=>t(e(`status`))?{label:Hn(e(`status`)),color:Jn(e(`status`))}:e(`applicantPlacedStatus`)===!0?{label:`Placed`,color:`success`}:null,ids:[{label:`Candidate ID`,field:[`applicantRefrenceId`,`applicantReferenceId`,`candidateReferenceId`]}],meta:[{icon:`designation`,field:`designation`},{icon:`location`,field:[`currentLocation`,`preferredLocation`]},{icon:`experience`,compute:Zn},{icon:`employment`,field:`workAuthorisation`},{icon:`rate`,prefix:`Expected: `,compute:Qn}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}};function Zn({val:e,has:t}){let n=t(e(`yearOfExperience`))?e(`yearOfExperience`):e(`experience`);if(!t(n))return``;let r=e(`monthOfExperience`);return`${n} yrs${t(r)&&Number(r)>0?` ${r} mo`:``}`}function Qn({val:e}){let t=e(`expectedPayDetails`)??{};return qn({start:t.expectedPay??e(`expectedPay`),sym:t.expectedPayCurrencySymbol??Gn(t.expectedPayCurrency),unit:t.expectedPayUnit})}var $n=e.t({default:()=>er,employerConfig:()=>er}),er={module:`employer`,header:{title:`empCompanyName`,eyebrow:`empWebsite`,status:({val:e,has:t})=>t(e(`status`))?{label:Hn(e(`status`)),color:Jn(e(`status`))}:null,ids:[{label:`Federal Tax ID`,field:`empFederalTaxId`},{label:`State of Incorporation`,field:`empStateOfIncorporation`}],meta:[{icon:`location`,field:`empCompanyLocation`}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}},tr=e=>e===!0||e===1||e===`1`;function nr(e){return e==null||e===``?!0:Array.isArray(e)?e.length===0:typeof e==`object`&&Object.values(e).every(e=>nr(e))}function rr(e){return n.Sr(e).filter(e=>e?.location||e?.url)}function ir(e){return rr(e).length>0}function ar(e){return tr(e?.hideWhenEmpty)||tr(e?.hideWhenEmptyInDetail)||tr(e?.renderOptions?.hideWhenEmpty)||tr(e?.renderOptions?.hideWhenEmptyInDetail)}function or(e){return tr(e?.hideWhenZero)||tr(e?.renderOptions?.hideWhenZero)}function sr(e){if(typeof e==`number`)return e===0;if(typeof e==`string`){let t=e.trim();return t!==``&&Number.isFinite(Number(t))&&Number(t)===0}return!1}function cr(e,t){let n=or(e);return!ar(e)&&!n?!1:e?.type===`file`||e?.type===`document`||e?.renderType===`document`?!ir(t):nr(t)||n&&sr(t)}var lr=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/,ur=new Set([`time`]),dr=new Set([`date`]),fr=new Set([`datetime`,`date-time`,`datetime-local`]),pr=new Set([`select`,`radio`,`multiselect`,`checkbox-group`,`checkboxgroup`]),mr=new Set([`text-editor`,`richtext`,`rich-text`,`html`,`editor`]),hr=e=>e===!0||e===1||e===`1`||e===`true`,gr=e=>e==null||typeof e==`string`&&e.trim()===``;function _r(e){return e?.renderOptions?.formatRows===!0&&Array.isArray(e?.subFields)&&e.subFields.length>0}function vr(e,t){let n=(Array.isArray(e?.options)?e.options:[]).find(e=>String(e?.value??``)===String(t));return n?.label!=null&&String(n.label).trim()!==``?String(n.label).trim():String(t)}function yr(e,t,r){let i=e?.$date??e;return n.fi(i,t,r)||String(i)}function br(e){return String(e).replace(/<[^>]*>/g,` `).replace(/\s+/g,` `).trim()}function xr(e,t,n={},r={}){if(gr(t))return``;let i=e?.field,a=String(e?.type??``).trim().toLowerCase(),o=typeof n?.subFieldFormats?.[i]==`string`&&n.subFieldFormats[i].trim()!==``?n.subFieldFormats[i]:``;return ur.has(a)?yr(t,o||r.timeFormat||`hh:mm A`,r):dr.has(a)?yr(t,o||r.dateFormat||`DD MMM YYYY`,r):fr.has(a)?yr(t,o||r.dateTimeFormat||`DD MMM YYYY hh:mm A`,r):t&&typeof t==`object`&&!Array.isArray(t)&&`value`in t?xr(e,t.value,n,r):Array.isArray(t)?t.map(t=>xr(e,t,n,r)).filter(e=>e!==``).join(`, `):t&&typeof t==`object`?``:typeof t==`boolean`?t?r.booleanTrueLabel||`Yes`:r.booleanFalseLabel||`No`:pr.has(a)?vr(e,t):mr.has(a)?br(t):o&&typeof t==`string`&&lr.test(t.trim())?yr(t,o,r):String(t)}function Sr(e,t,n={},r={}){if(!e||typeof e!=`object`||Array.isArray(e))return``;let i=typeof r.separator==`string`&&r.separator!==``?r.separator:` - `;return(t??[]).filter(e=>e?.field&&(e.show===void 0||hr(e.show))).map(t=>xr(t,e[t.field]===void 0?t.payloadKey?e[t.payloadKey]:void 0:e[t.field],n,r)).filter(e=>e!==``).join(i)}function Cr(e,t,n={}){return!_r(e)||!Array.isArray(t)||!t.every(e=>e&&typeof e==`object`&&!Array.isArray(e))?null:t.map(t=>Sr(t,e.subFields,e.renderOptions,n)).filter(e=>e!==``)}var wr=e=>e===!0||e===1||e===`1`;function Tr(e=[]){let t={};for(let n of e??[])for(let e of n?.fields??[]){if(!e?.field||e.value===void 0)continue;let n=e.value,r=n&&typeof n==`object`&&!Array.isArray(n)&&`value`in n?n.value:n;t[e.field]=r,e.payloadKey&&t[e.payloadKey]===void 0&&(t[e.payloadKey]=r)}return t}function Er(e,t){let r=n.s(e?.showIf);return!r.length||wr(e?.ignoreShowIfInDetail)||!r.every(e=>Object.prototype.hasOwnProperty.call(t??{},e.field))?!0:n.a(e.showIf,e=>t[e])}function Dr(e){let t=e?.detailLabelWhen;if(Array.isArray(t)&&t.length)return t;let n=e?.labelWhen;return n?[n]:[]}function Or(e,t){let r=e?.label;if(wr(e?.ignoreLabelWhenInDetail))return r;for(let r of Dr(e))if(!(!r?.field||!r?.label)&&Object.prototype.hasOwnProperty.call(t??{},r.field)&&n.r(r,t[r.field]))return r.label;return r}var kr=/(currency|symbol|unit|type)/i,Ar=/(rate|budget|amount)/i,jr=e=>typeof e==`number`||typeof e==`string`&&e.trim()!==``&&!Number.isNaN(Number(e)),Mr=e=>e===!0||e===1||e===`1`;function Nr(e,t){return!e||!t||!Mr(e.appendHistory)?!1:[e.historyField,...e.historyFields??[]].includes(t)}function Pr(e,t){let n=String(t??``).trim();if(!n)return``;let r=`${e}.`;return n.startsWith(r)?n.slice(r.length):n}function Fr(e,t=[]){let n=`${e}.`,r=[];return(t??[]).forEach(t=>{Nr(t,e)&&(t.fields??[]).forEach(e=>{let t=String(e?.field??``);if(!t.startsWith(n))return;let i=t.slice(n.length);i&&!r.includes(i)&&r.push(i)})}),r}function Ir(e,t=[],n){for(let r of t??[]){if(!Nr(r,e))continue;let t=Pr(e,r?.[n]?.[e]);if(t)return t}return``}var Lr=(e,t)=>!!t&&e!=null&&Object.prototype.hasOwnProperty.call(e,t)&&e[t]!==void 0;function Rr(e){let t=Object.entries(e??{}).find(([e,t])=>Ar.test(e)&&!kr.test(e)&&jr(t));return t?t[0]:``}function zr(e){let t=Object.keys(e??{});return t.find(t=>/currencysymbol/i.test(t)&&String(e[t]??``).trim()!==``)||t.find(t=>/currency/i.test(t)&&String(e[t]??``).trim()!==``)||t.find(t=>/symbol/i.test(t)&&String(e[t]??``).trim()!==``)||``}function Br(e){return Object.keys(e??{}).find(e=>/unit/i.test(e))||``}function Vr(e,t,n=[]){let r=Fr(t,n),i=Ir(t,n,`historyAmountFields`),a=r.find(e=>!kr.test(e)),o=Lr(e,i)&&i||Lr(e,a)&&a||Rr(e),s=Ir(t,n,`historyCurrencyFields`),c=r.find(t=>/symbol/i.test(t)&&Lr(e,t)&&String(e[t]??``).trim()!==``),l=r.find(e=>/currency/i.test(e)&&!/symbol/i.test(e)),u=Lr(e,s)&&s||c||Lr(e,l)&&l||zr(e),d=Ir(t,n,`historyUnitFields`),f=r.find(e=>/unit/i.test(e)),p=Lr(e,d)&&d||Lr(e,f)&&f||Br(e);return{amountKey:o||``,currencyKey:u||``,unitKey:p||``}}function Hr(e,t,n=[]){let{amountKey:r,currencyKey:i,unitKey:a}=Vr(e,t,n);return{amountKey:r,currencyKey:i,unitKey:a,amount:r?e?.[r]:void 0,currency:i?e?.[i]:``,unit:a?e?.[a]:``}}var Ur={USD:`$`,INR:`₹`,GBP:`£`,EUR:`€`,CAD:`C$`,AUD:`A$`,SGD:`S$`,JPY:`¥`};function Wr(e,t=`$`){let n=String(e??``).trim();return n?Ur[n.toUpperCase()]||(/^[A-Za-z]{2,}$/.test(n)?t:n):t}var Gr={hr:`Hourly`,hour:`Hourly`,hours:`Hourly`,hourly:`Hourly`,day:`Daily`,daily:`Daily`,week:`Weekly`,weekly:`Weekly`,month:`Monthly`,monthly:`Monthly`,year:`Yearly`,yearly:`Yearly`,annual:`Yearly`,annually:`Yearly`};function Kr(e,t=``){let n=String(e??``).trim();return n?Gr[n.toLowerCase()]??n.charAt(0).toUpperCase()+n.slice(1):t}var qr={Hourly:`hr`,Daily:`day`,Weekly:`wk`,Monthly:`mo`,Yearly:`yr`};function Jr(e,t=``){let n=Kr(e,``);return n?qr[n]??n.toLowerCase():t}function Yr(e){if(typeof e==`number`)return Number.isFinite(e)?e:NaN;let t=String(e??``).trim().replace(/[,\s]/g,``).replace(/[^0-9eE+.\-]/g,``);if(!t)return NaN;let n=Number(t);return Number.isFinite(n)?n:NaN}function Xr(e,{decimals:t}={}){let n=Yr(e);return Number.isNaN(n)?String(e??``):n.toLocaleString(void 0,{minimumFractionDigits:t??0,maximumFractionDigits:t??2})}function Zr(e,t=`$`,n={}){let r=Yr(e);if(Number.isNaN(r))return String(e??``);let i=Wr(t);return`${r<0?`−`:``}${i}${Xr(Math.abs(r),n)}`}function Qr(e,t=`$`,n,r={}){let i=Zr(e,t,r),a=Kr(n,``);return a?`${i} / ${a}`:i}var $r=Object.freeze({document:`No document uploaded`,documents:`No documents uploaded`,date:`Not provided`,phone:`No contact number added`,email:`No email address added`,link:`No link added`,url:`No link added`,tags:`None added`,multitag:`None added`,skills:`No skills added`,currency:`Not provided`,money:`Not provided`,number:`Not provided`,boolean:`Not specified`,default:`Not provided`}),ei=e=>{let t=e==null?``:String(e).trim();return t===``?null:t};function ti(e,t,r=n.Si()){let i=ei(e?.emptyText??e?.renderOptions?.emptyText);if(i)return i;let a=String(t??e?.renderType??e?.type??`default`).toLowerCase(),o=r?.emptyTexts??{};return ei(o[a])??ei($r[a])??ei(o.default)??ei($r.default)??ei(r?.emptyPlaceholder)??`—`}function ni(e,t=n.Si()){let r=ei(e?.emptyText);if(r)return r;let i=t?.emptyTexts??{};if(ei(i.group))return ei(i.group);let a=ei(e?.label??e?.name);return a?`No ${a.toLowerCase()} added`:ei($r.default)??`—`}var ri=(0,u.lazy)(()=>Promise.resolve().then(()=>require("./PdfFirstPage-TjJ82SQp.cjs")));function ii(){let e=(0,u.useRef)(null),[t,n]=(0,u.useState)(()=>typeof IntersectionObserver>`u`);return(0,u.useEffect)(()=>{if(t)return;let r=e.current;if(!r)return;let i=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&(n(!0),i.disconnect())},{rootMargin:`200px`});return i.observe(r),()=>i.disconnect()},[t]),[e,t]}function ai({doc:e,renderIcon:t}){return(0,p.jsxs)(`div`,{className:`v1-doc-preview__card`,children:[t?t(e.name):null,(0,p.jsx)(`span`,{className:`v1-doc-preview__card-name`,children:e.name})]})}function oi({doc:e,index:t,onOpen:n,renderIcon:i}){let[a,o]=ii(),[s,c]=(0,u.useState)(!1),l=r.r(e),f=()=>n(t),m=null;return o&&(m=l===`image`&&!s?(0,p.jsx)(`img`,{src:e.url,alt:e.name,loading:`lazy`,className:`v1-doc-preview__img`,onError:()=>c(!0)}):l===`pdf`?(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Spin,{size:`small`}),children:(0,p.jsx)(ri,{url:e.url,name:e.name})}):(0,p.jsx)(ai,{doc:e,renderIcon:i})),(0,p.jsxs)(`div`,{ref:a,role:`button`,tabIndex:0,className:`v1-doc-preview`,title:`Preview ${e.name}`,"aria-label":`Open preview of ${e.name}`,onClick:f,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),f())},children:[m,(0,p.jsx)(`span`,{className:`v1-doc-preview__caption`,children:e.name})]})}function si({docs:e,onOpen:t,renderIcon:n}){return!Array.isArray(e)||e.length===0?null:(0,p.jsx)(`div`,{className:`v1-doc-preview-grid`,children:e.map((e,r)=>(0,p.jsx)(oi,{doc:e,index:r,onOpen:t,renderIcon:n},e.key??`${e.url}-${r}`))})}si.propTypes={docs:g.default.arrayOf(g.default.shape({name:g.default.string,url:g.default.string,type:g.default.string})),onOpen:g.default.func.isRequired,renderIcon:g.default.func},oi.propTypes={doc:g.default.object.isRequired,index:g.default.number.isRequired,onOpen:g.default.func.isRequired,renderIcon:g.default.func},ai.propTypes={doc:g.default.object.isRequired,renderIcon:g.default.func};var{Text:ci}=d.Typography,li=e=>e==null||e===``,ui=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/;function di(e){return String(e).replace(/\w\S*/g,e=>e.length>1&&e===e.toUpperCase()?e:e.charAt(0).toUpperCase()+e.slice(1).toLowerCase())}function fi(e){return!(typeof e!=`string`||!e.trim()||!/[a-z]/i.test(e)||e.includes(`@`)||/^https?:\/\//i.test(e)||/^[a-f0-9]{24}$/i.test(e)||/<[a-z][\s\S]*>/i.test(e))}function pi(e,t){if(li(e))return``;let n=String(e);return t===!1?n:fi(n)?di(n):n}function mi(e,t,n){return Object.values(e).filter(e=>!li(e)&&typeof e!=`object`).map(e=>pi(e,t)).join(n)}function hi(e,t){if(!e)return e;switch(t){case`upper`:return String(e).toUpperCase();case`lower`:return String(e).toLowerCase();case`title`:return di(e);default:return e}}var gi=e=>e&&typeof e==`object`&&!Array.isArray(e)&&`value`in e&&`id`in e;function _i(e,t,n){return li(e)?``:gi(e)?pi(e.value??e.id,t):Array.isArray(e)?e.map(e=>gi(e)?pi(e.value??e.id,t):e&&typeof e==`object`?mi(e,t,n):pi(e,t)).filter(Boolean).join(n):typeof e==`boolean`?e?`Yes`:`No`:typeof e==`object`?mi(e,t,n):pi(e,t)}function vi(e,t,n){if(Array.isArray(e))return e.map(e=>gi(e)?pi(e.value??e.id,t):e&&typeof e==`object`?mi(e,t,n):pi(e,t)).filter(e=>e!==``);if(typeof e==`string`)return e.split(`,`).map(e=>pi(e.trim(),t)).filter(Boolean);let r=_i(e,t,n);return r?[r]:[]}function yi({name:e}){let t=String(e||``).split(`.`).pop().toLowerCase();return t===`pdf`?(0,p.jsx)(f.FilePdfOutlined,{className:`v1-file-chip__icon`}):t===`doc`||t===`docx`?(0,p.jsx)(f.FileWordOutlined,{className:`v1-file-chip__icon`}):[`png`,`jpg`,`jpeg`,`gif`,`webp`,`bmp`,`svg`].includes(t)?(0,p.jsx)(f.FileImageOutlined,{className:`v1-file-chip__icon`}):[`txt`,`csv`,`json`,`md`].includes(t)?(0,p.jsx)(f.FileTextOutlined,{className:`v1-file-chip__icon`}):(0,p.jsx)(f.FileOutlined,{className:`v1-file-chip__icon`})}yi.propTypes={name:g.default.string};function bi(e){return e?.renderType&&e.renderType!==`auto`?e.renderType:e?.documentPreview===!0?`document`:e?.formatter===`phone`||e?.type===`phone`?`phone`:e?.displayAs===`tag`?`tag`:e?.displayAs===`text`?`text`:`auto`}function xi({value:e,mode:t,empty:i,style:a,openByDefault:o=!1}){let[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(0),h=n.Sr(e);if(!h.length)return(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:a,children:i});let g=h.filter(e=>e.url);return t===`text`?(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:a,children:h.map(e=>e.name).join(`, `)}):t===`tag`?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:h.map((e,t)=>(0,p.jsx)(d.Tag,{icon:(0,p.jsx)(f.PaperClipOutlined,{}),children:e.name},t))}):t===`link`||t===`download`?(0,p.jsx)(`span`,{className:`v1-detail-value v1-doc-list`,children:(0,p.jsx)(`span`,{className:`v1-file-list`,children:h.map((e,n)=>e.url?(0,p.jsxs)(`a`,{className:`v1-file-chip`,href:e.url,target:`_blank`,rel:`noopener noreferrer`,download:t===`download`?e.name||``:void 0,title:e.name,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),t===`download`?(0,p.jsx)(f.DownloadOutlined,{className:`v1-file-chip__action`}):(0,p.jsx)(f.LinkOutlined,{className:`v1-file-chip__action`})]},n):(0,p.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No file location`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},n))})}):(0,p.jsxs)(`div`,{className:`v1-detail-value v1-doc-list`,children:[(0,p.jsx)(`div`,{className:`v1-file-list`,children:h.map((e,t)=>e.url?(0,p.jsxs)(`button`,{type:`button`,className:`v1-file-chip`,onClick:()=>{m(g.indexOf(e)),c(!0)},title:`Preview ${e.name}`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),(0,p.jsx)(f.EyeOutlined,{className:`v1-file-chip__action`})]},t):(0,p.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No preview available for this file`,children:[(0,p.jsx)(yi,{name:e.name}),(0,p.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))}),o&&g.length>0&&(0,p.jsx)(si,{docs:g,onOpen:e=>{m(e),c(!0)},renderIcon:e=>(0,p.jsx)(yi,{name:e})}),(0,p.jsx)(r.t,{documents:g,open:s,onClose:()=>c(!1),initialIndex:l})]})}xi.propTypes={value:g.default.any,mode:g.default.string,empty:g.default.string,style:g.default.object,openByDefault:g.default.bool};function Si(e,t={}){return Number.isNaN(Yr(e))?String(e??``):`${t.currencySymbol?Wr(t.currencySymbol,``):``}${Xr(e,{decimals:t.decimals})}`}function Ci({field:e,record:t}){let{value:r,type:i,prefix:a=``,suffix:o=``,color:s=``,capitalize:c}=e??{},l=e?.renderOptions??{},u=n.Si(),h=u.separator||`, `,g=s?{color:s}:void 0,_=l.tagColor||s||void 0,v=l.textTransform&&l.textTransform!==`none`?l.textTransform:null,y=e=>`${a?`${a} `:``}${e}${o?` ${o}`:``}`,b=e=>v?hi(e,v):e,x=e=>(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value`,style:g,children:b(e)}),S=e=>(0,p.jsx)(ci,{strong:!0,className:`v1-detail-value v1-detail-token`,style:g,children:b(e)}),C=e=>(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:(0,p.jsx)(d.Tag,{color:_,children:b(e)})}),w=bi(e),T=ti(e,w,u);if(w!==`document`&&li(r)&&!l.showEmpty)return x(T);switch(w){case`document`:return(0,p.jsx)(xi,{value:r,mode:l.documentMode||`preview`,empty:T,style:g,openByDefault:l.previewOpenByDefault===!0});case`text`:return x(y(_i(r,c,h)));case`tag`:case`chip`:return C(y(_i(r,c,h)));case`badge`:{let e=b(_i(r,c,h));return(0,p.jsx)(`span`,{className:`v1-detail-value`,children:(0,p.jsx)(d.Badge,{color:_||`blue`,text:e})})}case`tags`:case`multitag`:case`skills`:{let t=Cr(e,r,u)??vi(r,c,h);return t.length?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:t.map((e,t)=>(0,p.jsx)(d.Tag,{color:_,children:b(e)},t))}):x(T)}case`link`:{let e=_i(r,!1,h),t=/^https?:\/\//i.test(e)?e:n.xr(e)||e;return(0,p.jsx)(`a`,{className:`v1-detail-value v1-doc-link`,href:t,target:`_blank`,rel:`noopener noreferrer`,children:b(y(e))})}case`email`:{let e=_i(r,!1,h);return(0,p.jsxs)(`a`,{className:`v1-detail-value`,href:`mailto:${e}`,children:[(0,p.jsx)(f.MailOutlined,{}),` `,e]})}case`phone`:{let i=_i(r,!1,h),a=n.wr(e,i,t),o=a.replace(/[^0-9+]/g,``);return(0,p.jsxs)(`a`,{className:`v1-detail-value v1-detail-token v1-detail-call`,href:`tel:${o}`,"aria-label":`Call ${a}`,title:`Call ${a}`,children:[(0,p.jsx)(f.PhoneOutlined,{}),` `,b(y(a))]})}case`date`:case`datetime`:{if(w===`datetime`||l.withTime===!0)return S(y((l.dateFormat?n.fi(r,l.dateFormat,u):n.pi(r,u))||_i(r,c,h)));let e=l.dateFormat||u.dateFormat;return S(y(n.fi(r,e,u)||_i(r,c,h)))}case`currency`:return S(y(Si(r,l)));case`budget`:{let e=Si(r,l),t=l.unit?String(l.unit):``,n=t&&l.budgetUnitMap?l.budgetUnitMap[t]??t:t;return S(`${e}${n?`/${n}`:``}`)}case`html`:return(0,p.jsx)(`span`,{className:`v1-detail-value`,style:g,dangerouslySetInnerHTML:{__html:String(r??``)}})}if(li(r))return x(T);let E=i===`date`,D=typeof r==`string`&&ui.test(r.trim());if(E||D){let e=(0,m.default)(r);if(e.isValid())return x(y(e.format(u.dateFormat)))}if(gi(r))return x(y(pi(r.value??r.id,c)));if(Array.isArray(r)){let t=Cr(e,r,u)??vi(r,c,h);return t.length?(0,p.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:t.map((e,t)=>(0,p.jsx)(d.Tag,{color:_,children:e},t))}):x(T)}return x(typeof r==`boolean`?r?u.booleanTrueLabel:u.booleanFalseLabel:typeof r==`object`?mi(r,c,h)||T:y(pi(r,c)))}Ci.propTypes={field:g.default.object,record:g.default.object};var wi=[`fields`,`metrics`,`list`,`checklist`,`steps`,`chips`,`text`],Ti={full:12,twoThirds:8,half:6,third:4};function Ei(e){return Ti[e?.detailWidth]??null}function Di(e=[]){return e.some(e=>Ei(e)!==null)}function Oi(e){let t=String(e?.detailStyle??``).trim();return wi.includes(t)&&t!==`fields`?t:``}var ki=e=>e!=null&&(typeof e!=`string`||e.trim()!==``)&&!(Array.isArray(e)&&e.filter(ki).length===0);function Ai(e){return ki(e)?(Array.isArray(e)?e:[e]).map(e=>e&&typeof e==`object`?e.name??e.label??e.title??e.value??``:e).filter(ki).map(e=>String(e).trim()):[]}function ji(e){if(e===!0)return!0;if(e===!1||!ki(e))return!1;let t=String(e).trim().toLowerCase();return t!==`false`&&t!==`0`&&t!==`no`}function Mi(e){let t=Oi(e);return(e?.fields??[]).map((e,t)=>({key:e.field??String(t),label:e.label??e.field??``,field:e,value:e.value,texts:Ai(e.value)})).filter(e=>t===`steps`||e.texts.length>0)}function Ni(e){let t=!1;return e.map(e=>ji(e.value)?{...e,state:`done`}:t?{...e,state:`todo`}:(t=!0,{...e,state:`current`}))}function Pi(e){return Number(e?.detailOrder??e?.order??0)}function Fi({group:e,record:t}){let n=Oi(e);if(!n)return null;let r=Mi(e);if(!r.length)return(0,p.jsx)(`span`,{className:`v1-dg-empty`,"data-empty":`true`});if(n===`metrics`)return(0,p.jsx)(`div`,{className:`v1-dg-metrics`,children:r.map(e=>(0,p.jsxs)(`div`,{className:`v1-dg-metric`,children:[(0,p.jsx)(`div`,{className:`v1-dg-metric__value`,children:e.texts.length>1?e.texts.join(`, `):(0,p.jsx)(Ci,{field:e.field,record:t})}),(0,p.jsx)(`div`,{className:`v1-dg-metric__label`,children:e.label})]},e.key))});if(n===`chips`){let e=r.flatMap(e=>e.texts.map((t,n)=>({key:`${e.key}-${n}`,text:t})));return(0,p.jsx)(`div`,{className:`v1-dg-chips`,children:e.map(e=>(0,p.jsx)(d.Tag,{className:`v1-dg-chip`,children:e.text},e.key))})}if(n===`text`)return(0,p.jsx)(`div`,{className:`v1-dg-text`,children:r.map(e=>(0,p.jsx)(d.Typography.Paragraph,{className:`v1-dg-text__p`,ellipsis:{rows:3,expandable:!0,symbol:`Show more`},children:e.texts.join(`
|
|
2
2
|
`)},e.key))});if(n===`steps`)return(0,p.jsx)(`ol`,{className:`v1-dg-steps`,children:Ni(r).map(e=>(0,p.jsxs)(`li`,{className:`v1-dg-step v1-dg-step--${e.state}`,children:[(0,p.jsx)(`span`,{className:`v1-dg-step__dot`,"aria-hidden":`true`,children:e.state===`done`?(0,p.jsx)(f.CheckOutlined,{}):null}),(0,p.jsx)(`span`,{className:`v1-dg-step__label`,children:e.label})]},e.key))});let i=r.flatMap(e=>e.texts.length>1||Array.isArray(e.value)?e.texts.map((t,n)=>({key:`${e.key}-${n}`,text:t})):[{key:e.key,label:e.field?.ignoreLabelWhenInDetail?``:e.label,node:(0,p.jsx)(Ci,{field:e.field,record:t})}]);return(0,p.jsx)(`ul`,{className:`v1-dg-list v1-dg-list--${n}`,children:i.map(e=>(0,p.jsxs)(`li`,{className:`v1-dg-list__item`,children:[n===`checklist`&&(0,p.jsx)(f.CheckCircleFilled,{className:`v1-dg-list__check`,"aria-hidden":`true`}),(0,p.jsxs)(`span`,{className:`v1-dg-list__text`,children:[e.label?(0,p.jsxs)(`span`,{className:`v1-dg-list__label`,children:[e.label,`: `]}):null,e.node??e.text]})]},e.key))})}var{Text:Ii}=d.Typography,Li=[(0,p.jsx)(f.UserOutlined,{}),(0,p.jsx)(f.EnvironmentOutlined,{}),(0,p.jsx)(f.SolutionOutlined,{}),(0,p.jsx)(f.InfoCircleOutlined,{}),(0,p.jsx)(f.FileTextOutlined,{})],Ri=e=>e===!0||e===1||e===`1`,zi=[`jobDescription`,`description`,`rawDescription`,`jobDescriptionText`];function Bi(e=[]){for(let t of e)for(let e of t.fields??[]){let t=zi.includes(e.field),n=/description/i.test(e.label??``);if((t||n)&&typeof e.value==`string`&&e.value.trim())return{...e,key:e.field,value:e.value}}return null}function Vi(e=[]){let t=Tr(e);return[...e].filter(e=>!Ri(e.hideGroup)&&!Ri(e.hideGroupInDetail)).filter(e=>Er(e,t)).sort((e,t)=>Pi(e)-Pi(t)).map(e=>{let n=[...e.fields??[]].filter(e=>String(e.field??``).trim()!==``&&(e.show===void 0||Ri(e.show))&&Er(e,t)).map(e=>({...e,label:Or(e,t)}));return{...e,fields:Ri(e.detailCustom)?n:n.sort((e,t)=>Number(e.order??0)-Number(t.order??0))}}).filter(e=>e.fields.length)}function Hi(e){let t=e?.data??e;return Array.isArray(t)?t:t?.data??t?.rows??t?.records??t?.items??t?.list??[]}function Ui(e,...t){for(let n of t){let t=String(n).split(`.`).reduce((e,t)=>e?.[t],e);if(t!=null&&t!==``)return t}return``}function Wi(e){let t=String(Ui(e,`isDeleted`,`deleted`)).toLowerCase(),n=String(Ui(e,`assignmentStatus`,`status`)).toLowerCase();return t!==`true`&&t!==`1`&&![`removed`,`inactive`,`deleted`].includes(n)}function Gi(e=[],t){let n={candidateIds:new Set,engagementIds:new Set([String(t??``)].filter(Boolean))},r=e?.recordMeta;[`_id`,`id`,`workforceEngagementId`,`engagementId`].forEach(e=>{let t=r?.[e];t!=null&&t!==``&&n.engagementIds.add(String(t))}),[`candidateId`,`candidate_id`,`applicantId`].forEach(e=>{let t=r?.[e];t!=null&&t!==``&&n.candidateIds.add(String(t))});for(let t of e??[])for(let e of t.fields??[])[`candidateId`,`candidate_id`,`applicantId`].includes(e?.field)&&e.value&&n.candidateIds.add(String(e.value?.id??e.value?.value??e.value)),[`workforceEngagementId`,`engagementId`].includes(e?.field)&&e.value&&n.engagementIds.add(String(e.value?.id??e.value?.value??e.value));return n}async function Ki(e){let t=Ui(e,`batchName`,`batch_name`,`batch.name`,`batch.title`);if(t)return String(t);let r=String(Ui(e,`batchId`,`batch_id`));if(!r)return``;for(let e of[`batches`,`batch`])try{let t=Ui(Hi(await n.ii(e,500,0)).find(e=>String(Ui(e,`_id`,`id`,`batchId`,`batch_id`))===r),`batchName`,`batch_name`,`name`,`title`);if(t)return String(t)}catch{}return r}async function qi(e,t,r){let i=String(r??``).trim().toLowerCase();if(![`candidate`,`candidates`,`onboarding`].includes(i))return e;let{candidateIds:a,engagementIds:o}=Gi(e,t);if(!a.size&&!o.size)return e;let s=Hi(await n.ii(`batchCandidates`,1e3,0)).filter(Wi).find(e=>a.has(String(Ui(e,`candidateId`,`candidate_id`)))||o.has(String(Ui(e,`workforceEngagementId`,`engagementId`))));if(!s)return e;let c=await Ki(s);return c?[...e,{id:`candidate-batch-summary`,name:`candidateBatch`,label:`Batch`,order:9999,fields:[{field:`batchName`,label:`Batch Name`,type:`text`,value:c,show:!0,order:1}]}]:e}function Ji({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(Ii,{strong:!0,className:`v1-section-label`,children:t})]})}function Yi({value:e}){let t=String(e??``);return/<[a-z][\s\S]*>/i.test(t)?(0,p.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`normal`,lineHeight:1.7},dangerouslySetInnerHTML:{__html:t}}):(0,p.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`pre-wrap`,lineHeight:1.7},children:t})}function Xi({moduleName:e,id:r,refreshKey:i=0,onDescriptionSaved:a,masterLabelFields:o=[],groupFilter:s=null,emptyContent:c=null,onOpenTab:l=null}){let[h,g]=(0,u.useState)([]),[_,v]=(0,u.useState)(!!e),[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)(!1),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(!1),[D,O]=(0,u.useState)([]),k=Array.isArray(o)?[...new Set(o.map(e=>String(e??``).trim()).filter(Boolean))].sort().join(`|`):``,A=(0,u.useMemo)(()=>new Set(k?k.split(`|`):[]),[k]),[j,M]=(0,u.useState)({});(0,u.useEffect)(()=>{if(!e||!r){Promise.resolve().then(()=>O([]));return}let t=!1;return n.ti(e,r).then(e=>{t||O(Array.isArray(e)?e:e?.data??[])}).catch(()=>{t||O([])}),()=>{t=!0}},[e,r,i]);let[N,P]=(0,u.useState)(null),[F,I]=(0,u.useState)({}),[L,R]=(0,u.useState)({});(0,u.useEffect)(()=>{if(!e||!r){P(null);return}let n=!1;return t.o(t.S,`/module/list?module=${encodeURIComponent(e)}&id=${encodeURIComponent(r)}`).then(e=>{let t=e?.data?.data??e?.data??[];n||P(Array.isArray(t)?t[0]:null)}).catch(()=>{n||P(null)}),()=>{n=!0}},[e,r,i]),(0,u.useEffect)(()=>{let e=!1;return t.o(t.S,`/module/list?module=users`).then(t=>{let r=t?.data?.data??t?.data??[];e||I(n.Wn(r))}).catch(()=>{}),()=>{e=!0}},[]),(0,u.useEffect)(()=>{if(!e)return;let t=!1;async function i(){try{v(!0),b(``);let[i]=await Promise.all([n.Jt({module:e,id:r,view:`detail`}),n.Ci()]),a=await qi(Array.isArray(i)?i:[],r,e);t||g(a)}catch(n){console.error(`Failed to fetch ${e} detail fields:`,n),t||b(n?.message||`Failed to fetch detail fields`)}finally{t||v(!1)}}return i(),()=>{t=!0}},[e,r,i]),(0,u.useEffect)(()=>{if(!e||!k||!h.length){M(e=>Object.keys(e).length?{}:e);return}let t=[],r=new Set;for(let e of h)for(let n of e?.fields??[]){let e=String(n?.field??``).trim();!e||r.has(e)||!A.has(e)||(r.add(e),!(String(n?.dataSource??``).trim().toLowerCase()!==`master`||!n?.masterName)&&t.push(n))}if(!t.length){M(e=>Object.keys(e).length?{}:e);return}let i=!1;return Promise.all(t.map(async t=>{try{let r=await n.ri(e,t.field,``,t.limit??100,0,{dataSource:`master`,masterName:t.masterName}),i=Array.isArray(r)?r:r?.data??r?.items??r?.rows??r?.records??[],a={};for(let e of Array.isArray(i)?i:[]){if(e==null)continue;if(typeof e!=`object`){a[String(e)]=String(e);continue}let t=e.value??e.uniqueId??e.id??e._id??e.name??e.label,n=e.label??e.name??e.text??e.title??e.value;t!=null&&n!=null&&(a[String(t)]=String(n))}return[t.field,a]}catch(e){return console.warn(`[DetailViewV1] Unable to resolve master label for "${t.field}":`,e),[t.field,{}]}})).then(e=>{i||M(Object.fromEntries(e))}),()=>{i=!0}},[e,h,k,A]);let z=(0,u.useMemo)(()=>Vi(h).filter(e=>typeof s!=`function`||s(e)),[h,s]),B=(0,u.useMemo)(()=>{let e=new Set;return h.forEach(t=>{Ri(t.appendHistory)&&[t.historyField,...t.historyFields||[]].filter(Boolean).forEach(t=>e.add(t))}),e},[h]);(0,u.useEffect)(()=>{if(!N||!B.size)return;let e=new Set;if(B.forEach(t=>{let n=N[t];Array.isArray(n)&&n.forEach(t=>{let n=t?.updatedBy??t?.changedBy;if(n==null||n===``)return;let r=String(n);!F[r]&&!L[r]&&e.add(r)})}),!e.size)return;let t=!1;return Promise.all([...e].map(e=>n.Un(e).then(t=>[e,t]))).then(e=>{let n=Object.fromEntries(e.filter(([,e])=>e));!t&&Object.keys(n).length&&R(e=>({...e,...n}))}).catch(()=>{}),()=>{t=!0}},[N,B,F,L]);let V={proposedRate:`Proposed Rate`,candidateBudget:`Candidate Rate`},H=(e,t,n)=>{let r=`${e}.`,i=t=>[t?.historyField,...t?.historyFields||[]].includes(e);for(let r of t??[]){if(!i(r))continue;let t=r.historyLabels?.[e];if(t)return t;let a=r.historyLabelFrom?.[e];if(a){let t=(r.fields??[]).find(e=>e?.field===a);if(t)return Or(t,n)||V[e]||e}}for(let i of t??[])for(let t of i?.fields??[])if(String(t?.field??``).startsWith(r))return Or(t,n)||V[e]||e;return V[e]||e},U=(e,t)=>{let{amount:r,currency:i,unit:a}=Hr(e,t,h),o=e?.timestamp?.$date??e?.timestamp??e?.updatedAt?.$date??e?.updatedAt??e?.changedAt?.$date??e?.changedAt,s=e?.updatedBy??e?.changedBy,c=r==null||r===``?null:Number(r);return{amount:c!=null&&!Number.isNaN(c)?`${Wr(i)}${Xr(c)}`:`—`,unit:Kr(a),when:o&&(0,m.default)(o).isValid()?n.pi(o):``,by:s==null?``:F[String(s)]||L[String(s)]||``}},W=(0,u.useMemo)(()=>{if(!N)return[];let e=Tr(h),t=[];return B.forEach(n=>{let r=N[n];if(!Array.isArray(r)||r.length===0)return;let i=r.filter(e=>e&&(e.timestamp||e.updatedAt||e.changedAt));i.length!==0&&t.push({key:n,label:H(n,h,e),entries:[...i].reverse().map(e=>U(e,n))})}),t},[N,h,B,F,L]),G=(0,u.useMemo)(()=>{let e=new Set(W.map(e=>e.key));return e.size?z.map(t=>{if(!Ri(t.appendHistory))return t;let n=[t.historyField,...t.historyFields||[]].filter(t=>t&&e.has(t));return n.length?{...t,fields:t.fields.filter(e=>!n.some(t=>String(e.field??``).startsWith(`${t}.`)))}:t}).filter(e=>e.fields.length):z},[z,W]),ee=(0,u.useMemo)(()=>{let e=new Set(W.map(e=>e.key)),t=h.find(t=>Ri(t.appendHistory)&&[t.historyField,...t.historyFields||[]].some(t=>t&&e.has(t)));return t?.label??t?.name??`Rate Details`},[h,W]),te=e===`job`,ne=(0,u.useMemo)(()=>te?Bi(h):null,[te,h]),re=()=>{S(!1),w(``)},ie=async()=>{if(!C.trim()){d.message.warning(`Please enter a job description`);return}E(!0);try{await An(r,C.trim()),S(!1),w(``),v(!0);let t=await n.Jt({module:e,id:r,view:`detail`});g(Array.isArray(t)?t:[]),d.message.success(`Description updated and parsed successfully`),a?.()}catch{d.message.error(`Failed to update description`)}finally{E(!1),v(!1)}},ae=e=>{let t=Number(e.detailCol);if(Number.isFinite(t)&&t>0)return Math.max(1,Math.min(3,Math.round(t/8)));let n=typeof e.value==`string`?e.value:``;return e.renderType===`document`||e.type===`text-editor`||n.length>120?3:/\s(?:·|-|–|\/)\s/.test(n)&&n.length>=16?2:1},oe=e=>e.renderType===`document`||e.type===`text-editor`||(typeof e.value==`string`?e.value:``).length>60,se=(0,u.useMemo)(()=>Tr(h),[h]),ce=(e,t)=>{let n=String(e?.field??``).trim();if(!n||!A.has(n))return t;let r=j[n];if(!r||!Object.keys(r).length)return t;let i=e=>{if(e==null||e===``)return e;if(typeof e==`object`){let t=e.label??e.name??e.text??e.title;if(t!=null&&t!==``)return t;let n=e.value??e.uniqueId??e.id??e._id;return n==null?e:r[String(n)]??n}return r[String(e)]??e};return Array.isArray(t)?t.map(i):i(t)},K=e=>{let t=ce(e,e?.value);return t===e?.value?e:{...e,value:t}},le=(e,t=``,n=se)=>{let r=K(e),i=r.label??r.field,a=oe(r),o=typeof r.value==`string`?r.value:void 0;return(0,p.jsx)(`div`,{className:`v1-detail-cell${a?` v1-detail-cell--wrap`:``}`,style:{"--v1-cell-span":ae(r)},children:(0,p.jsxs)(`div`,{className:`v1-detail-field`,title:!a&&o?`${i}: ${o}`:void 0,children:[(0,p.jsx)(Ii,{type:`secondary`,className:`v1-detail-label`,title:i,children:i}),(0,p.jsx)(Ci,{field:r,record:n})]})},`${e.field}${t}`)},ue=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/,de=(e,t,r=se)=>{let i=ce(e,t),a=Cr(e,i,n.Si());if(a)return a.join(`; `);if(i==null||typeof i==`object`&&!Array.isArray(i))return``;let o=Array.isArray(i)?i.map(e=>String(e??``).trim()).filter(Boolean).join(`, `):String(i).trim();if(!o)return``;if(e?.type===`date`||e?.renderType===`date`||ue.test(o)){let t=(0,m.default)(o);if(t.isValid())return t.format(e?.renderOptions?.dateFormat||n.Si().dateFormat)}return(e?.formatter===`phone`||e?.type===`phone`||e?.renderType===`phone`)&&n.wr(e,o,r)||o},fe=(e,t)=>{if(e?.hidePartLabel||e?.renderOptions?.hidePartLabel)return``;let n=String(e?.label??``).trim();if(!n)return``;let r=String(t??``).toLowerCase().split(/[\s/]+/).filter(Boolean),i=n.split(/\s+/),a=0;for(;a<i.length;){let e=i[a].toLowerCase();if(!r.some(t=>t===e||t.startsWith(e)||e.startsWith(t)))break;a+=1}return i.slice(a).join(` `).trim()},pe=(e,t,r,i,a=se)=>{let o=e.map(e=>({field:e,cell:r(e)})),s=o.filter(({cell:e})=>q(e)).map(({cell:e})=>({...e,renderType:`document`})).filter(e=>ir(e.value)),c=new Set;o.forEach(({field:e})=>{if(e?.formatter!==`phone`&&e?.type!==`phone`&&e?.renderType!==`phone`)return;let t=[e?.renderOptions?.countryCodeField??e?.countryCodeField,...n.Cr(e)].filter(Boolean);o.forEach(({field:n})=>{n!==e&&t.includes(n.field)&&c.add(n.field)})});let l=typeof t.combineLabel==`string`&&t.combineLabel.trim()?t.combineLabel:t.label??t.field,u=o.filter(({cell:e})=>!q(e)).filter(({field:e})=>!c.has(e.field)).filter(({cell:e})=>!cr(e,e.value)).map(({field:e,cell:t})=>({key:e.field,label:fe(e,l),text:de(e,t.value,a)})).filter(e=>e.text!==``);if(!u.length&&!s.length&&cr(t,void 0))return null;let d=u.map(e=>`${e.label?`${e.label} `:``}${e.text}`).join(` · `),f=ae({detailCol:t.detailCol,value:d}),m=s.length?Math.max(f,2):f;return(0,p.jsx)(`div`,{className:`v1-detail-cell v1-detail-cell--wrap`,style:{"--v1-cell-span":m},children:(0,p.jsxs)(`div`,{className:`v1-detail-field`,children:[(0,p.jsx)(Ii,{type:`secondary`,className:`v1-detail-label`,title:l,children:l}),(u.length>0||s.length===0)&&(0,p.jsx)(`div`,{className:`v1-detail-value v1-detail-parts`,children:u.length?u.map((e,t)=>(0,p.jsxs)(`span`,{className:`v1-detail-part`,children:[t>0&&(0,p.jsx)(`span`,{className:`v1-detail-part-sep`,"aria-hidden":`true`,children:`·`}),e.label&&(0,p.jsx)(`span`,{className:`v1-detail-part-label`,children:e.label}),(0,p.jsx)(`span`,{children:e.text})]},`${e.key}-part`)):`—`}),s.map(e=>(0,p.jsx)(Ci,{field:e},`${e.field}-doc`))]})},`${t.field}-merged${i}`)},me=(e,t,n=``,r=se)=>{let i=new Set,a=[];return e.forEach(o=>{let s=o.combineKey?.trim?.();if(s){if(i.has(s))return;i.add(s);let o=e.filter(e=>e.combineKey?.trim?.()===s);if(o.length>1){let e=o.find(e=>e.combineLabel)??o[0],i=pe(o,e,t,n,r);i&&a.push(i);return}}let c=t(o);cr(c,c.value)||a.push(le(c,n,r))}),a},he=(0,u.useMemo)(()=>{let e={};for(let t of D){let n=t.fieldName||t.field||`file`;(e[n]??=[]).push({location:t.s3Key??t.location??t.uniqueName??``,name:t.fileName??t.name??``,fileUrl:t.fileUrl??t.url??``})}return e},[D]),q=e=>e.type===`file`||e.type===`document`||e.renderType===`document`,ge=e=>he[e.field]||e.fileKey&&he[e.fileKey]||null,_e=e=>String(e?.name||e?.location||``).trim().toLowerCase(),ve=e=>{let[t]=n.Sr(e);return!t||!t.location&&!t.url?null:_e(t)},ye=(e,t=[])=>{let n=new Set,r=[],i=e=>{if(e==null||e===``)return;let t=ve(e);t!==null&&(t&&n.has(t)||(t&&n.add(t),r.push(e)))};return t.forEach(i),(Array.isArray(e)?e:[e]).forEach(i),r},J=e=>n.Sr(e).map(_e).filter(Boolean),be=e=>{let t=(e.validations??[]).find(e=>e?.type===`maxFiles`);return t?Math.max(1,Number(t.value??1)):Ri(e.multiple)?Math.max(1,Number(e.maxCount??5)):Math.max(1,Number(e.maxCount??1))},xe=(e,t,n)=>{let r=be(e);if(t.length<=r)return t;let[i]=J(n);return(i?[...t].sort((e,t)=>Number(ve(t)===i)-Number(ve(e)===i)):t).slice(0,r)},Se=(e,t)=>{if(e.type===`file`||e.type===`document`)return{...e,renderType:`document`,value:t};let r=[e.field,e.payloadKey].filter(Boolean).map(e=>n.Fr(t,e)).find(e=>e!=null);return{...e,value:r}},Ce=e=>{if(!q(e))return e;let t=xe(e,ye(e.value,ge(e)??[]),e.value);return t.length?{...e,renderType:`document`,value:t}:e},we=(e,t,n)=>{let r=e.name??e.id??String(t),i=Array.isArray(e.rows)?e.rows:[],a=new Set(i.flatMap(e=>J(e))),o=[],s=new Set;return n.filter(q).forEach(e=>{(ge(e)??[]).forEach(e=>{let t=_e(e);!t||a.has(t)||s.has(t)||(s.add(t),o.push(e))})}),(0,p.jsxs)(d.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,p.jsx)(Ji,{icon:Li[t%Li.length],title:e.label??e.name??`Details`}),children:[i.length===0&&o.length===0?(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:ni(e)}):i.map((t,r)=>(0,p.jsxs)(`div`,{className:`v1-detail-addrow-item`,children:[i.length>1&&(0,p.jsxs)(Ii,{strong:!0,className:`v1-detail-addrow-index`,children:[e.label??`Record`,` `,r+1]}),(0,p.jsx)(`div`,{className:`v1-detail-grid`,children:me(n,e=>Se(e,t),`-${r}`,t)})]},r)),o.length>0&&(0,p.jsx)(`div`,{className:`v1-detail-addrow-item`,children:(0,p.jsx)(`div`,{className:`v1-detail-grid`,children:le({field:`${r}-files`,label:`Uploaded Files`,renderType:`document`,detailCol:24,value:o})})})]},r)},Te=(e,t)=>{let n=e.name??e.id??String(t),r=ne?e.fields.filter(e=>e.field!==ne.key):e.fields;if(!r.length)return null;if(e.addRow)return we(e,t,r);let i=Oi(e);if(i&&!Mi({...e,fields:r}).length)return null;let a=i?(0,p.jsx)(Fi,{group:{...e,fields:r},record:se}):null,o=Ei(e),s=String(e.detailLinkTab??``).trim(),c=s&&typeof l==`function`?(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`v1-detail-card__link`,onClick:()=>l(s),children:e.detailLinkLabel||`View All`}):null;return(0,p.jsx)(d.Card,{size:`small`,className:`v1-card v1-detail-card${i?` v1-detail-card--${i}`:``}${o?` v1-detail-card--w-${e.detailWidth}`:``}`,style:o?{"--v1-group-span":o}:void 0,"data-group":e.name??void 0,title:(0,p.jsx)(Ji,{icon:Li[t%Li.length],title:e.label??e.name??`Details`}),extra:c,children:a??(0,p.jsx)(`div`,{className:`v1-detail-grid`,children:me(r,Ce)})},n)},Ee=()=>(0,p.jsx)(d.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,p.jsx)(Ji,{icon:(0,p.jsx)(f.HistoryOutlined,{}),title:ee}),children:W.map((e,t)=>(0,p.jsxs)(`div`,{className:`v1-rh-section${t>0?` v1-rh-section--gap`:``}`,children:[(0,p.jsx)(`div`,{className:`v1-rh-section-title`,children:e.label}),(0,p.jsx)(`div`,{className:`v1-rate-history`,children:e.entries.map((e,t)=>(0,p.jsxs)(`div`,{className:`v1-rh-item${t===0?` v1-rh-latest`:``}`,children:[(0,p.jsx)(`span`,{className:`v1-rh-amount`,children:e.amount}),e.unit&&(0,p.jsxs)(`span`,{className:`v1-rh-unit`,children:[`/ `,e.unit]}),e.by&&(0,p.jsxs)(`span`,{className:`v1-rh-chip`,children:[(0,p.jsx)(f.UserOutlined,{}),` `,e.by]}),e.when&&(0,p.jsxs)(`span`,{className:`v1-rh-chip`,children:[(0,p.jsx)(f.ClockCircleOutlined,{}),` `,e.when]}),t===0&&(0,p.jsx)(`span`,{className:`v1-rh-badge`,children:`Latest`})]},t))})]},e.key))},`rate-details-history`),De=(0,u.useMemo)(()=>{let e=h.find(e=>Ri(e.appendHistory)&&e.historyAfterGroup);return String(e?.historyAfterGroup??``).trim().toLowerCase()},[h]),Oe=e=>De?String(e.name??``).trim().toLowerCase()===De:/current_employer|employer_details/i.test(e.name||``)||(e.fields||[]).some(e=>e.field===`employerId`);return(0,p.jsx)(d.Spin,{spinning:_,tip:`Loading detail fields...`,children:(0,p.jsxs)(`div`,{className:`v1-detail-left${Di(G)?` v1-detail-left--layout`:``}`,children:[y&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`Unable to load detail fields`,description:y,className:`v1-detail-alert`}),!_&&!y&&G.length===0&&W.length===0&&(c??(0,p.jsx)(d.Empty,{description:`No detail fields are configured.`})),G.flatMap((e,t)=>{let n=[Te(e,t)];return Oe(e)&&W.length>0&&n.push(Ee()),n}),W.length>0&&!G.some(Oe)&&Ee(),te&&ne?.value&&(0,p.jsx)(d.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,p.jsx)(Ji,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`Description`}),children:x?(0,p.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:12},children:[(0,p.jsx)(`div`,{style:{background:`#ffffff`,border:`1px solid #d6e4f0`,borderRadius:8,padding:`4px`,boxShadow:`0 2px 8px rgba(0,0,0,0.04)`},children:(0,p.jsx)(d.Input.TextArea,{rows:10,value:C,onChange:e=>w(e.target.value),placeholder:ne.hidePlaceholder?void 0:ne.placeholder,style:{fontSize:13,lineHeight:1.65,border:`none`,boxShadow:`none`,resize:`vertical`,padding:`12px 14px`}})}),(0,p.jsxs)(`div`,{style:{display:`flex`,gap:8},children:[(0,p.jsx)(n.Gn,{variant:`primary`,size:`small`,loading:T,onClick:ie,children:`Save & Parse`}),(0,p.jsx)(n.Gn,{size:`small`,onClick:re,children:`Cancel`})]})]}):(0,p.jsx)(Yi,{value:ne.value})})]})})}var Zi=e.t({buildJobHeaderData:()=>aa,default:()=>Qi,jobConfig:()=>Qi}),Qi={module:`job`,tabs:[{key:`details`,label:`Details`},{key:`candidates`,label:`Candidates`}],tabContent:{details:{render:({id:e,refreshKey:t,onDescriptionSaved:n})=>u.default.createElement(d.Row,{gutter:[16,16],align:`stretch`},u.default.createElement(d.Col,{key:`main`,xs:24,lg:16},u.default.createElement(Xi,{moduleName:`job`,id:e,refreshKey:t,onDescriptionSaved:n})),u.default.createElement(d.Col,{key:`side`,xs:24,lg:8},u.default.createElement(ln,{moduleName:`job`,id:e})))}},header:{title:`jobTitle`,eyebrow:({val:e})=>{let t=[];return Vn(ea(e))&&t.push(Wn(ea(e))),Vn(ta(e))&&t.push(`MSP Id ${Wn(ta(e))}`),t.length?t.join(` - `):Vn(e(`jobReferenceId`))?String(e(`jobReferenceId`)):``},clientName:({val:e})=>ea(e),titleIds:[],status:{field:`jobStatus`},ids:[{label:`Zinnext Job ID`,field:`jobReferenceId`},{label:`Client Rate`,compute:ra}],meta:[{icon:`location`,field:`jobLocation`},{icon:`experience`,compute:na},{icon:`employment`,fields:[`employmentType`,`jobRemoteStatus`],join:` · `}],stats:[{label:`Target submissions`,field:[`targetSubmission`,`targetSubmissions`]},{label:`In Pipeline`,compute:ia,always:!0}],timestamp:{label:`Created Date`,field:[`createdAt`,`jobCreatedDateTime`,`createdDate`]}}},$i=(e,...t)=>t.map(t=>e(t)).find(Vn),ea=e=>$i(e,`clientName`,`client.name`,`client`,`clientId`,`accountName`),ta=e=>$i(e,`mspReqId`,`mspreqId`,`msReqId`,`mspId`,`mspRequirementId`);function na({val:e}){let t=e(`experience.experienceRequiredFrom`);if(!Vn(t))return``;let n=e(`experience.experienceRequiredTo`);return`${t}${Vn(n)?` - ${n}`:``} years`}function ra({val:e}){let t=e(`jobPayDetails`)??{},n=t.clientBudgetStart??$i(e,`clientBudgetStart`,`clientRateStart`);return Vn(n)?qn({start:n,end:t.clientBudgetEnd??$i(e,`clientBudgetEnd`,`clientRateEnd`),sym:t.clientBudgetCurrencySymbol??Gn(t.clientBudgetCurrency)??``,unit:t.clientBudgetUnit??$i(e,`clientBudgetUnit`)}):``}function ia({val:e}){let t=e(`submissions`),n=$i(e,`pipelineCount`,`PipelineCount`,`inPipeline`,`inPipelineCount`)??(Array.isArray(t)?t.length:void 0);return Vn(n)?n:0}function aa({val:e,has:t}){let n,r=[];t(e(`jobReferenceId`))&&(n=String(e(`jobReferenceId`)));let i=[e(`jobTitle`)].filter(t).map(Wn).join(` `)||`-`,a=null;if(t(e(`jobSource`))&&(a={label:Hn(e(`jobSource`)),color:`#10b981`,textColor:`#ffffff`}),t(e(`jobLocation`))&&r.push({icon:`location`,text:Wn(e(`jobLocation`))}),t(e(`experience.experienceRequiredFrom`))){let n=e(`experience.experienceRequiredFrom`),i=e(`experience.experienceRequiredTo`);r.push({icon:`experience`,text:`${n}${t(i)?` - ${i}`:``} years`})}let o=[e(`employmentType`),Wn(e(`jobRemoteStatus`))].filter(t).join(` - `);o&&r.push({icon:`employment`,text:o});let s=t(e(`clientId`))?Un(e(`clientId`)):null;return{eyebrow:n,title:i,status:a,meta:r,clientId:s}}var oa=e.t({default:()=>sa,payrollConfig:()=>sa}),sa={module:`payroll`,tabs:[],header:{variant:`finance`,title:`candidateName`,eyebrow:`designation`,statusField:`payroll.status`,chips:In}},ca=e.t({default:()=>la,submissionConfig:()=>la}),la={module:`submission`,tabs:[],header:{title:[`firstName`,`lastName`],eyebrow:({val:e,has:t})=>[ua(e),e(`jobTitle`)].filter(t).map(Wn).join(` - `),clientName:({val:e})=>ua(e),status:({val:e,has:t})=>{let n=e(`internalSubmissionStatus`)??{},r=n.internalSubmissionStatusText;return t(r)?{label:Hn(r),color:{positive:`success`,negative:`error`,neutral:`default`}[n.internalSubmissionStatusType]??Jn(r)}:null},ids:[{label:`Submission ID`,field:[`submissionId`,`clientSubmissionId`]},{label:`MS Req ID`,field:[`mspReqId`,`mspreqId`]},{label:`Client Req ID`,field:[`jobClientRefrenceId`,`jobClientReferenceId`,`clientJobReferenceId`]},{label:`Job ID`,field:[`jobRefrenceId`,`jobReferenceId`]}],meta:[{icon:`location`,field:`jobLocation`},{icon:`experience`,field:[`relevantExperienceYears`,`workExperienceYears`],suffix:` yrs`},{icon:`employment`,field:`workAuthorisation`},{icon:`rate`,prefix:`Client rate: `,compute:da},{icon:`rate`,prefix:`Candidate rate: `,compute:fa}],timestamp:{label:`Created Date`,field:[`submittedAt`,`createdAt`,`createdDate`]}}},ua=e=>e(`clientName`)??e(`client.name`);function da({val:e}){let t=e(`clientBudget`)??e(`candidateBudget`)??{};return qn({start:t.clientBudgetStart??t.candidateBudgetStart,end:t.clientBudgetEnd??t.candidateBudgetEnd,sym:t.clientBudgetCurrencySymbol??t.candidateBudgetCurrencySymbol??Gn(t.clientBudgetCurrency??t.candidateBudgetCurrency),unit:t.clientBudgetUnit??t.candidateBudgetUnit??`Hour`})}function fa({val:e}){let t=e(`candidateRate`)??{},n=e(`proposedRate`)??{};return qn({start:t.candidateAcceptedRate,sym:t.candidateAcceptedCurrencySymbol??Gn(t.candidateAcceptedCurrency),unit:t.candidateAcceptedPayUnit??`Hour`})||qn({start:n.candidateProposedRate,sym:n.candidateProposedRateCurrencySymbol??Gn(n.candidateProposedRateCurrency),unit:n.candidateProposedRateUnit??`Hour`})}var pa=e.t({default:()=>ma,submissionJobConfig:()=>ma}),ma={module:`submissionJob`,tabs:[],buildData:aa};function ha(e,t){let n=Array.isArray(t)?t:[t];for(let t of n)if(Vn(e(t)))return e(t)}function ga(e,t,n=` `){return t.map(t=>e(t)).filter(Vn).map(Wn).join(n)}function _a(e,t){let{val:r}=e,i;if(typeof t.compute==`function`)i=t.compute(e);else if(t.join)i=ga(r,t.fields??[],t.join);else{let e=ha(r,t.field);i=Vn(e)?t.format===`date`?n.fi(e):Wn(e):``}return Vn(i)?`${t.prefix??``}${Wn(i)}${t.suffix??``}`:``}function va(e){return typeof e==`function`?{compute:e}:typeof e==`string`||Array.isArray(e)?{field:e}:e}function ya(e={},t){let{val:n}=t,r={};if(e.title!==void 0&&(r.title=ga(n,Array.isArray(e.title)?e.title:[e.title])||`-`),e.eyebrow!==void 0&&(r.eyebrow=_a(t,va(e.eyebrow))||void 0),e.clientName!==void 0&&(r.clientName=_a(t,va(e.clientName))||void 0),e.status!==void 0){if(typeof e.status==`function`)r.status=e.status(t)??null;else{let t=ha(n,e.status.field);r.status=Vn(t)?{label:Hn(t),color:Jn(t)}:null}}let i=(e=[])=>e.map(e=>{let r=typeof e.compute==`function`?e.compute(t):Wn(ha(n,e.field)??``);return{label:e.label,value:r}}).filter(e=>Vn(e.value));if(e.ids!==void 0&&(r.ids=i(e.ids)),e.titleIds!==void 0&&(r.titleIds=i(e.titleIds)),e.meta!==void 0&&(r.meta=e.meta.map(e=>({icon:e.icon,text:_a(t,e)})).filter(e=>Vn(e.text))),e.stats!==void 0&&(r.stats=e.stats.map(e=>{let r=typeof e.compute==`function`?e.compute(t):ha(n,e.field),i=Vn(r)?Wn(r):e.always?Wn(e.fallback??0):void 0,a=i!==void 0&&Vn(r)&&e.suffix?`${i}${e.suffix}`:i;return{label:e.label,value:a}}).filter(e=>e.value!==void 0)),e.timestamp!==void 0){let t=Kn(ha(n,e.timestamp.field));r.timestamp=Vn(t)?{label:e.timestamp.label,value:t}:null}return r}var ba=Object.assign({"./modules/billingConfig.js":Ln,"./modules/candidateConfig.js":Yn,"./modules/employerConfig.js":$n,"./modules/jobConfig.js":Zi,"./modules/payrollConfig.js":oa,"./modules/submissionConfig.js":ca,"./modules/submissionJobConfig.js":pa}),xa={};Object.values(ba).forEach(e=>{let t=e.default??Object.values(e)[0];t?.module&&(xa[t.module]=t)});var Sa={job:`job`,jobs:`job`,candidate:`candidate`,candidates:`candidate`,applicant:`candidate`,applicants:`candidate`,submission:`submission`,submissions:`submission`,vendor:`vendor`,vendors:`vendor`,onboarding:`onboarding`,employer:`employer`,employers:`employer`};function Ca(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.detailConfig)??{};return Object.keys(e).length?{...xa,...e}:xa}function wa(e=``,t=xa){let n=String(e).trim();if(t[n])return n;let r=n.toLowerCase();if(t[r])return r;let i=Sa[r];if(i&&t[i])return i;let a=r.endsWith(`s`)?r.slice(0,-1):`${r}s`;return t[a]?a:i??r}function Ta(e=[]){let t=new Map;return e.forEach(e=>{(e.fields??[]).forEach(e=>{t.has(e.field)||t.set(e.field,e)})}),t}function Ea(e,t){for(let n of t)if(n.includes(`+`)){let t=n.split(`+`).map(t=>e(t)).filter(Vn).map(Wn).join(` `);if(t)return t}else if(Vn(e(n)))return e(n)}function Da({val:e}){let t=Ea(e,[`jobTitle`,`firstName+lastName`,`name`,`fullName`,`title`,`clientName`,`vendorCompanyName`,`companyName`])||`-`,n=Ea(e,[`clientName`,`source`,`designation`,`jobReferenceId`,`applicantRefrenceId`]),r=Vn(n)?Wn(n):void 0,i=Ea(e,[`status`,`jobStatus`,`submissionStatus`,`stage`]),a=Vn(i)?{label:Hn(i),color:Jn(i)}:null,o=[];[[`Reference ID`,[`jobReferenceId`,`applicantRefrenceId`,`submissionId`,`referenceId`,`refId`]],[`Client Req ID`,[`clientJobReferenceId`,`jobClientRefrenceId`,`clientReqId`]],[`MS Req ID`,[`mspreqId`,`mspReqId`]]].forEach(([t,n])=>{let r=Ea(e,n);Vn(r)&&o.push({label:t,value:Wn(r)})});let s=[],c=Ea(e,[`jobLocation`,`currentLocation`,`location`]);Vn(c)&&s.push({icon:`location`,text:Wn(c)});let l=Ea(e,[`designation`]);Vn(l)&&s.push({icon:`designation`,text:Wn(l)});let u=Kn(Ea(e,[`createdAt`,`submittedAt`,`createdDate`]));return{eyebrow:r,title:t,status:a,ids:o,meta:s,timestamp:Vn(u)?{label:`Created Date`,value:u}:null}}function Oa(e){let t=Ca();return t[wa(e,t)]??null}function ka(e){if(!e||typeof e!=`object`)return null;let t={},n=(Array.isArray(e.title)?e.title:[e.title]).filter(e=>typeof e==`string`&&e.trim());n.length&&(t.title=n),typeof e.status==`string`&&e.status.trim()&&(t.status={field:e.status.trim()});let r=(Array.isArray(e.meta)?e.meta:[]).filter(e=>e&&typeof e.field==`string`&&e.field.trim()).map(e=>({field:e.field.trim(),prefix:e.prefix??``,suffix:e.suffix??``,...e.format?{format:e.format}:{}}));r.length&&(t.meta=r);let i=(Array.isArray(e.stats)?e.stats:[]).filter(e=>e&&typeof e.field==`string`&&e.field.trim()&&e.label).map(e=>({field:e.field.trim(),label:e.label,...e.suffix?{suffix:e.suffix}:{},...e.always?{always:!0}:{}}));return i.length&&(t.stats=i),e.timestamp?.field&&(t.timestamp={field:e.timestamp.field,label:e.timestamp.label??``}),Object.keys(t).length?t:null}function Aa(e,t=[],{aux:n}={}){if(!t.length)return null;let r=Ca(),i=r[wa(e,r)],a=Ta(t),o=e=>{let n=a.get(e);return n?Bn(n.value)&&[`status`,`jobStatus`,`submissionStatus`].includes(e)&&!Bn(n.defaultValue)?n.defaultValue:n.value:t.recordMeta?.[e]},s=e=>a.get(e)??null,c=typeof n==`function`?n:()=>()=>void 0,l=Da({val:o,has:Vn}),u=ka(t.detailHeader);if(u){let e=ya(u,{val:o,has:Vn,field:s,aux:()=>()=>void 0});return{eyebrow:void 0,title:e.title??`-`,clientName:null,clientId:null,status:e.status??null,titleIds:[],meta:e.meta??[],ids:[],stats:e.stats??[],timestamp:e.timestamp??null,tabs:i?.tabs??[],admin:!0}}let d=i?.buildData?i.buildData({val:o,has:Vn,field:s,aux:c})??{}:i?.header?ya(i.header,{val:o,has:Vn,field:s,aux:c}):{},f=(e,t)=>Array.isArray(e)?e:t??[],p=d.status===!1?null:d.status??l.status??null;return{eyebrow:d.eyebrow??l.eyebrow,title:d.title??l.title??`-`,clientName:d.clientName??null,clientId:d.clientId??null,status:p,titleIds:f(d.titleIds,l.titleIds),meta:f(d.meta,l.meta),ids:f(d.ids,l.ids),stats:d.stats??[],timestamp:d.timestamp??l.timestamp??null,tabs:i?.tabs??[]}}var ja=e=>e==null||e===``,Ma={positive:`success`,success:`success`,negative:`error`,error:`error`,warning:`warning`,info:`processing`,neutral:`default`,default:`default`};function Na(e){return e?(Array.isArray(e)?e:[e]).filter(e=>e?.field&&e?.label):[]}function Pa(e,t){let r=typeof t==`function`?t:()=>void 0;for(let t of Na(e?.labelWhen)){let e=r(t.field);if(e!==void 0&&n.r(t,e))return t.label}return e?.label??``}function Fa(e){let t=e?.valueStyles;if(!Array.isArray(t)||!t.length)return null;let n=String(e?.value??e?.text??``).trim().toLowerCase();if(!n)return null;let r=t.find(e=>String(e?.value??``).trim().toLowerCase()===n||String(e?.label??``).trim().toLowerCase()===n);return r?{color:r.color||void 0,bg:r.bg??r.background??r.backgroundColor??void 0}:null}function Ia(e,t){let n=Pa(e,t),r=e?.value,i=ja(e?.text)?[n,ja(r)?``:String(r)].filter(Boolean).join(n&&!ja(r)?`: `:``):String(e.text),a=e?.variant===`pill`?`pill`:`text`;if(a!==`pill`)return{icon:e?.icon,text:i,variant:a};let o=Fa(e);return{icon:e?.icon,text:i,label:n,value:ja(r)?``:String(r),variant:a,tagColor:o?.color||o?.bg?void 0:Ma[e?.tone]??`default`,tagStyle:o?.color||o?.bg?{color:o.color,backgroundColor:o.bg,borderColor:o.bg??o.color}:void 0}}function La(e){return!e||typeof e!=`object`?[]:Object.entries(e).map(([e,t])=>{if(!t||typeof t!=`object`)return null;let n=String(t.module??``).trim(),r=t.id==null?``:String(t.id).trim();return!e||!n||!r?null:{key:String(e),module:n,id:r}}).filter(Boolean)}function Ra(e){return La(e).map(({key:e,module:t,id:n})=>`${e}:${t}:${n}`).sort().join(`|`)}function za(e){let t=new Map;for(let n of e??[])for(let e of n?.fields??[])e?.field!=null&&!t.has(e.field)&&t.set(e.field,e.value);return e=>t.get(e)}function Ba(e){let t=new Map;for(let[n,r]of Object.entries(e??{}))t.set(n,za(r));let n=()=>void 0;return e=>t.get(e)??n}var Va=e=>{let t=Number(e);return Number.isFinite(t)?t:0};function Ha(e,t=`$`){let n=Yr(e);return Zr(Number.isNaN(n)?0:n,Wr(t),{decimals:2})}function Ua(e){return`${Va(e).toFixed(2)} hrs`}function Wa(e,t=`$`,n=`hr`){let r=Jr(n,``),i=Ha(e,t);return r?`${i}/${r}`:i}function Ga(e){return`${parseFloat(Va(e).toFixed(2))}%`}function Ka(e){let t=String(e??``).trim().split(/\s+/).filter(Boolean);return t.length?t.slice(0,2).map(e=>e[0].toUpperCase()).join(``):`·`}var qa={TIMESHEET_APPROVED:{label:`Timesheet Approved`,icon:`check`,tone:`success`},BILLING_READY:{label:`Ready for Billing`,icon:`file`,tone:`info`},BILLING_INVOICED:{label:`Invoice Generated`,icon:`file`,tone:`info`},BILLING_PAID:{label:`Client Payment Received`,icon:`dollar`,tone:`success`},PAYROLL_PROCESSING:{label:`Payroll Processing Started`,icon:`sync`,tone:`warning`},PAYROLL_PAID:{label:`Payroll Disbursed`,icon:`dollar`,tone:`success`},PAYSLIP_GENERATED:{label:`Payslip Generated`,icon:`file`,tone:`info`}};function Ja(e){return qa[e]||{label:String(e??``).toLowerCase().split(`_`).filter(Boolean).map(e=>e[0].toUpperCase()+e.slice(1)).join(` `)||`Activity`,icon:`file`,tone:`neutral`}}function Ya(e){return(Array.isArray(e)?e:[]).find(e=>e?.event===`TIMESHEET_APPROVED`)?.at??null}var Xa=e=>({enabled:!0,variant:e,disabledReason:null}),Za=e=>({enabled:!1,variant:`default`,disabledReason:e}),Qa=[`PaymentNotReceived`,`Invoiced`,`Paid`],$a=[`Ready`,`Processing`,`Paid`];function eo(e){switch(e){case`PaymentNotReceived`:return{generateInvoice:Xa(`primary`),recordPayment:Za(`Generate the invoice first`),markPaid:Za(`Generate the invoice first`)};case`Invoiced`:return{generateInvoice:Za(`Invoice already generated`),recordPayment:Xa(`primary`),markPaid:Xa(`default`)};case`Partially Received`:return{generateInvoice:Za(`Invoice already generated`),recordPayment:Xa(`primary`),markPaid:Xa(`default`)};case`Received`:case`Paid`:return{generateInvoice:Za(`Payment already received`),recordPayment:Za(`Payment already received`),markPaid:Za(`Payment already received`)};default:return{generateInvoice:Za(`Unavailable in the current status`),recordPayment:Za(`Unavailable in the current status`),markPaid:Za(`Unavailable in the current status`)}}}function to(e){switch(e){case`Ready`:return{process:Xa(`primary`),generatePayslip:Za(`Mark the payroll paid first`),markPaid:Za(`Process the payroll first`)};case`Processing`:return{process:Za(`Payroll is already processing`),generatePayslip:Za(`Mark the payroll paid first`),markPaid:Xa(`primary`)};case`Paid`:return{process:Za(`Payroll already paid`),generatePayslip:Xa(`primary`),markPaid:Za(`Payroll already paid`)};default:return{process:Za(`Unavailable in the current status`),generatePayslip:Za(`Unavailable in the current status`),markPaid:Za(`Unavailable in the current status`)}}}function no(e,t){if(e===`billing`){let e=Math.max(Qa.indexOf(t),0);return[{key:`approved`,label:`Timesheet Approved`,state:`done`},{key:`invoiced`,label:`Invoice Raised`,state:e>=1?`done`:`current`},{key:`paid`,label:`Payment Received`,state:e>=2?`done`:e===1?`current`:`pending`}]}let n=Math.max($a.indexOf(t),0);return[{key:`approved`,label:`Timesheet Approved`,state:`done`},{key:`processing`,label:`Processing`,state:n>=1?`done`:`current`},{key:`paid`,label:`Paid`,state:n>=2?`done`:n===1?`current`:`pending`}]}var ro=e=>Va(e?.leave?.CL)+Va(e?.leave?.SL),io=e=>Va(e?.workingHours?.ST),ao=e=>Va(e?.workingHours?.OT);function oo(e){let t=Array.isArray(e)?e:[],n={loggedDays:0,approvedDays:0,rejectedDays:0,pendingDays:0,leaveDays:0,holidayDays:0,weekOffDays:0,stHours:0,otHours:0,leaveHours:0,totalHours:0,avgHoursPerLoggedDay:0};return t.forEach(e=>{let t=io(e),r=ao(e),i=ro(e);(e?.isLogged||t>0||r>0)&&(n.loggedDays+=1,e?.status===`approved`?n.approvedDays+=1:e?.status===`rejected`?n.rejectedDays+=1:n.pendingDays+=1),i>0&&(n.leaveDays+=1),e?.isHoliday&&(n.holidayDays+=1),e?.isWeekOff&&(n.weekOffDays+=1),n.stHours+=t,n.otHours+=r,n.leaveHours+=i,n.totalHours+=t+r}),n.avgHoursPerLoggedDay=n.loggedDays?n.totalHours/n.loggedDays:0,n}function so(e,t){return(Array.isArray(e)?e:[]).filter(e=>!!e?.isLogged||io(e)>0||ao(e)>0||ro(e)>0||e?.isHoliday).map(e=>{let n=io(e),r=ao(e),i=n+r;return{key:e.date,date:e.date,day:e.day||``,st:n,ot:r,leave:ro(e),isHoliday:!!e?.isHoliday,total:i,amount:i*Va(t),status:e?.status||`logged`,reviewer:e?.reviewedByName||``,remarks:e?.rejectionReason||e?.notes||``}})}function co(e){let[t,n,r]=String(e??``).split(`-`).map(Number);return!t||!n||!r?null:new Date(t,n-1,r)}var lo=e=>e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`});function uo(e,t){let n=Array.isArray(e)?e:[],r=new Map;return n.forEach(e=>{let n=co(e?.date);if(!n)return;let i=io(e),a=ao(e),o=ro(e);if(!e?.isLogged&&i<=0&&a<=0&&o<=0)return;let s=(n.getDay()+6)%7,c=new Date(n.getFullYear(),n.getMonth(),n.getDate()-s),l=c.getTime();if(!r.has(l)){let e=new Date(c.getFullYear(),c.getMonth(),c.getDate()+6);r.set(l,{weekStart:c,weekEnd:e,label:`${lo(c)} – ${lo(e)}`,st:0,ot:0,leaveHours:0,total:0,amount:0,days:0})}let u=r.get(l);u.st+=i,u.ot+=a,u.leaveHours+=o,u.total+=i+a,u.amount+=(i+a)*Va(t),(e?.isLogged||i>0||a>0)&&(u.days+=1)}),[...r.values()].sort((e,t)=>e.weekStart-t.weekStart)}function fo(e,{high:t=25,low:n=10}={}){let r=Va(e);return r>=t?`high`:r<n?`low`:`mid`}function po(e){let t=e==null?``:String(e);return/[",\n\r]/.test(t)?`"${t.replace(/"/g,`""`)}"`:t}function mo(e,t){return[t.map(e=>po(e.label)).join(`,`),...(e??[]).map(e=>t.map(t=>po(t.format?t.format(e[t.key],e):e[t.key])).join(`,`))].join(`\r
|
|
3
3
|
`)}function ho(e){let t=new Map;return(Array.isArray(e)?e:[]).forEach(e=>{let n=e?.field??e?.key??e?.value;n&&t.set(n,e)}),t}function go(e,t,n){return(e instanceof Map?e:ho(e)).get(t)?.label||n}function _o(e,t,n){let r=(e instanceof Map?e:ho(e)).get(t)?.valueStyles;if(!Array.isArray(r)||!r.length||n==null)return null;let i=String(n).toLowerCase(),a=r.find(e=>String(e.value??``).toLowerCase()===i||String(e.label??``).toLowerCase()===i);return a?{color:a.color,bg:a.bg??a.background??a.backgroundColor,label:a.label}:null}function vo(e,t){let n=new Blob([``,t],{type:`text/csv;charset=utf-8;`}),r=URL.createObjectURL(n),i=document.createElement(`a`);i.href=r,i.download=e,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(r)}var yo={Draft:{label:`Draft`,tone:`neutral`},Ready:{label:`Ready`,tone:`gold`},Invoiced:{label:`Invoiced`,tone:`info`},Processing:{label:`Processing`,tone:`info`,pulse:!0},Paid:{label:`Paid`,tone:`success`},Overdue:{label:`Overdue`,tone:`danger`},PaymentNotReceived:{label:`Not Received`,tone:`warning`,full:`Payment Not Received`},"Partially Received":{label:`Partially Received`,tone:`gold`},Received:{label:`Received`,tone:`success`},"Ready to Pay":{label:`Ready to Pay`,tone:`info`,pulse:!0},PartiallyPaid:{label:`Partially Paid`,tone:`gold`},approved:{label:`Approved`,tone:`success`},rejected:{label:`Rejected`,tone:`danger`},logged:{label:`Pending`,tone:`gold`}};function bo({status:e=`Ready`,size:t,styleOverride:n}){let r=yo[e]??{label:String(e),tone:`neutral`},i=n?.label??r.label,a=n?{color:n.color,background:n.bg,borderColor:n.color}:void 0,o=(0,p.jsxs)(`span`,{className:`fin-pill${n?``:` fin-pill--${r.tone}`}${t===`sm`?` fin-pill--sm`:``}`,style:a,children:[(0,p.jsx)(`span`,{className:`fin-pill__dot${r.pulse?` fin-pill__dot--pulse`:``}`}),i]});return r.full?(0,p.jsx)(d.Tooltip,{title:r.full,children:o}):o}function xo({items:e=[],loading:t=!1,compact:n=!1}){let r=`finance-kpi-row${n?` finance-kpi-row--compact`:``}`;if(t){let t=e.length||4;return(0,p.jsx)(`div`,{className:r,children:Array.from({length:t},(e,t)=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--skeleton`,children:[(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--label`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--value`})]},t))})}return(0,p.jsx)(`div`,{className:r,children:e.map(e=>(0,p.jsxs)(`div`,{className:`finance-kpi fin-kpi--${e.tone??`neutral`}`,children:[e.icon?(0,p.jsx)(`span`,{className:`fin-kpi__icon`,children:e.icon}):null,(0,p.jsxs)(`span`,{className:`fin-kpi__body`,children:[(0,p.jsx)(`span`,{className:`finance-kpi__label`,children:e.label}),(0,p.jsx)(`strong`,{className:`finance-kpi__value`,children:e.value}),e.sub??e.hint?(0,p.jsx)(`span`,{className:`finance-kpi__hint`,children:e.sub??e.hint}):null]})]},e.key??e.label))})}function So({days:e=[]}){return(0,p.jsx)(`div`,{className:`finance-hours-grid`,children:e.map(e=>(0,p.jsxs)(`div`,{className:`finance-hours-grid__day`,children:[(0,p.jsx)(`span`,{children:e.date}),(0,p.jsx)(`strong`,{children:Number(e?.workingHours?.ST??0)+Number(e?.workingHours?.OT??0)})]},e.date))})}function Co({icon:e,title:t,description:n,action:r,compact:i=!1}){return(0,p.jsxs)(`div`,{className:`fin-empty${i?` fin-empty--compact`:``}`,children:[(0,p.jsx)(`span`,{className:`fin-empty__icon`,children:e??(0,p.jsx)(f.InboxOutlined,{})}),(0,p.jsx)(`strong`,{className:`fin-empty__title`,children:t}),n?(0,p.jsx)(`span`,{className:`fin-empty__desc`,children:n}):null,r?(0,p.jsx)(`span`,{className:`fin-empty__action`,children:r}):null]})}function wo({title:e,extra:t,children:n,empty:r,className:i=``,span:a}){return(0,p.jsxs)(`section`,{className:`fin-section${a?` fin-section--span`:``}${i?` ${i}`:``}`,children:[e?(0,p.jsxs)(`header`,{className:`fin-section__head`,children:[(0,p.jsx)(`h4`,{className:`fin-section__title`,children:e}),t?(0,p.jsx)(`span`,{className:`fin-section__extra`,children:t}):null]}):null,(0,p.jsx)(`div`,{className:`fin-section__body`,children:r?(0,p.jsx)(Co,{compact:!0,...r}):n})]})}function To({label:e,value:t,hint:n,strong:r,accent:i,negative:a}){let o=[`fin-line`,r?`fin-line--strong`:``,i?`fin-line--accent`:``,a?`fin-line--negative`:``].filter(Boolean).join(` `);return(0,p.jsxs)(`div`,{className:o,children:[(0,p.jsxs)(`span`,{className:`fin-line__label`,children:[e,n!=null&&n!==``?(0,p.jsx)(`span`,{className:`fin-line__hint`,children:n}):null]}),(0,p.jsx)(`span`,{className:`fin-line__value`,children:t})]})}function Eo(){return(0,p.jsx)(`div`,{className:`fin-divider`})}function Do({terms:e=[]}){return(0,p.jsx)(`div`,{className:`fin-equation`,children:e.map((e,t)=>e.op?(0,p.jsx)(`span`,{className:`fin-eq__op`,children:e.op},`op-${t}`):(0,p.jsxs)(`span`,{className:`fin-eq__term${e.tone?` fin-eq__term--${e.tone}`:``}`,children:[(0,p.jsx)(`span`,{className:`fin-eq__num`,children:e.value}),(0,p.jsx)(`span`,{className:`fin-eq__lbl`,children:e.label})]},e.label??t))})}function Oo({steps:e=[]}){return(0,p.jsx)(`div`,{className:`fin-steps`,children:e.map((e,t)=>(0,p.jsxs)(`div`,{className:`fin-step fin-step--${e.state}`,children:[t>0?(0,p.jsx)(`span`,{className:`fin-step__line`}):null,(0,p.jsx)(`span`,{className:`fin-step__dot`,children:e.state===`done`?(0,p.jsx)(f.CheckOutlined,{}):null}),(0,p.jsx)(`span`,{className:`fin-step__label`,children:e.label})]},e.key??e.label))})}var ko={check:(0,p.jsx)(f.CheckCircleFilled,{}),dollar:(0,p.jsx)(f.DollarCircleFilled,{}),sync:(0,p.jsx)(f.SyncOutlined,{}),file:(0,p.jsx)(f.FileTextFilled,{})};function Ao(e){if(!e)return``;let t=Date.now()-new Date(e).getTime();if(!Number.isFinite(t)||t<0)return``;let n=Math.floor(t/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.floor(n/60);if(r<24)return`${r}h ago`;let i=Math.floor(r/24);if(i<30)return`${i}d ago`;let a=Math.floor(i/30);return a<12?`${a}mo ago`:`${Math.floor(a/12)}y ago`}function jo({events:e=[],emptyState:t}){let r=(Array.isArray(e)?[...e]:[]).reverse();return r.length?(0,p.jsx)(`div`,{className:`fin-tl`,children:r.map((e,t)=>{let i=Ja(e?.event);return(0,p.jsxs)(`div`,{className:`fin-tl__item`,children:[(0,p.jsxs)(`div`,{className:`fin-tl__rail`,children:[(0,p.jsx)(`span`,{className:`fin-tl__icon fin-tl__icon--${i.tone}`,children:ko[i.icon]??ko.file}),t<r.length-1?(0,p.jsx)(`span`,{className:`fin-tl__line`}):null]}),(0,p.jsxs)(`div`,{className:`fin-tl__body`,children:[(0,p.jsxs)(`div`,{className:`fin-tl__head`,children:[(0,p.jsx)(`strong`,{className:`fin-tl__label`,children:i.label}),e?.by?(0,p.jsx)(`span`,{className:`fin-tl__actor`,children:e.by}):null]}),(0,p.jsxs)(`div`,{className:`fin-tl__meta`,children:[e?.at?(0,p.jsx)(`span`,{children:n.pi(e.at)}):null,e?.at?(0,p.jsx)(`span`,{className:`fin-tl__rel`,children:Ao(e.at)}):null]})]})]},`${e?.event}-${e?.at}-${t}`)})}):(0,p.jsx)(Co,{icon:(0,p.jsx)(f.ClockCircleOutlined,{}),title:`No activity yet`,description:`Workflow events will appear here as this record moves through its lifecycle.`,...t??{}})}var Mo=[`blue`,`indigo`,`purple`,`green`];function No(e){let t=String(e??``),n=0;for(let e=0;e<t.length;e++)n=n*31+t.charCodeAt(e)|0;return Mo[Math.abs(n)%Mo.length]}function Po({name:e,size:t=`md`}){return(0,p.jsx)(`span`,{className:`fin-avatar fin-avatar--${No(e)} fin-avatar--${t}`,children:Ka(e)})}function Fo({name:e,secondary:t,link:n=!1}){return(0,p.jsxs)(`div`,{className:`fin-cell-employee`,children:[(0,p.jsx)(Po,{name:e}),(0,p.jsxs)(`span`,{className:`fin-cell-employee__text`,children:[(0,p.jsx)(`strong`,{className:`fin-cell__primary${n?` fin-cell__primary--link`:``}`,children:e||`—`}),t?(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})]})}function Io({primary:e,secondary:t,link:n=!1}){return(0,p.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,p.jsx)(`span`,{className:`fin-cell__primary${n?` fin-cell__primary--link`:``}`,children:e||`—`}),t?(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}function Lo({value:e,sub:t,strong:n=!1}){return(0,p.jsxs)(`div`,{className:`fin-cell-money`,children:[(0,p.jsx)(`span`,{className:`fin-cell-money__value${n?` fin-cell-money__value--strong`:``}`,children:typeof e==`number`?Ha(e):e??`—`}),t?(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}function Ro({children:e,tone:t=`neutral`,title:n}){return(0,p.jsx)(`span`,{className:`fin-badge fin-badge--${t}`,title:n,children:e})}function zo({margin:e,marginPercent:t}){let n=fo(t);return(0,p.jsxs)(`div`,{className:`fin-cell-margin`,children:[(0,p.jsxs)(Ro,{tone:n===`high`?`success`:n===`low`?`danger`:`neutral`,children:[Number(t??0).toFixed(1),`%`]}),e==null?null:(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:Ha(e)})]})}function Bo(){return(0,p.jsx)(f.RightOutlined,{className:`fin-table__chevron`})}function Vo({rows:e=8}){return(0,p.jsx)(`div`,{className:`fin-table-skeleton`,children:Array.from({length:e},(e,t)=>(0,p.jsxs)(`div`,{className:`fin-table-skeleton__row`,children:[(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--avatar`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--lg`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--md`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--md`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--sm`}),(0,p.jsx)(`span`,{className:`fin-skeleton fin-skeleton--pill`})]},t))})}function Ho({columns:e,rows:t=[],rowKey:r=`timesheetId`,loading:i=!1,onRowClick:a,page:o,limit:s,total:c=0,onPageChange:l,onLimitChange:u,emptyState:f,scrollX:m=1100}){return i&&!t.length?(0,p.jsx)(Vo,{}):!i&&!t.length?(0,p.jsx)(`div`,{className:`fin-table-card`,children:(0,p.jsx)(Co,{title:`No records found`,description:`Try widening the month filter or clearing quick filters — finance records live in their timesheet's month.`,...f??{}})}):(0,p.jsxs)(`div`,{className:`fin-table-card`,children:[(0,p.jsx)(d.Table,{className:`fin-table`,size:`small`,columns:e,dataSource:t,rowKey:r,loading:i,pagination:!1,sticky:!0,scroll:{x:m},onRow:e=>({onClick:t=>{t.target.closest(`button, a, input, .fin-copy`)||a?.(e)}}),rowClassName:()=>a?`fin-table__row fin-table__row--clickable`:`fin-table__row`}),c>0&&o!=null?(0,p.jsx)(`div`,{className:`fin-table__pagination`,children:(0,p.jsx)(n.si,{current:o,pageSize:s,total:c,onChange:e=>l?.(e),onPageSizeChange:e=>u?.(e)})}):null]})}var Uo={location:(0,p.jsx)(f.EnvironmentOutlined,{}),designation:(0,p.jsx)(f.SolutionOutlined,{}),experience:(0,p.jsx)(f.ClockCircleOutlined,{}),employment:(0,p.jsx)(f.LaptopOutlined,{}),rate:(0,p.jsx)(f.DollarOutlined,{}),source:(0,p.jsx)(f.AimOutlined,{}),resume:(0,p.jsx)(f.FileTextOutlined,{}),edit:(0,p.jsx)(f.EditOutlined,{}),approve:(0,p.jsx)(f.CheckCircleOutlined,{}),reject:(0,p.jsx)(f.CloseCircleOutlined,{}),export:(0,p.jsx)(f.ExportOutlined,{}),openJd:(0,p.jsx)(f.ExportOutlined,{}),link:(0,p.jsx)(f.LinkOutlined,{}),shareAlt:(0,p.jsx)(f.ShareAltOutlined,{}),idcard:(0,p.jsx)(f.IdcardOutlined,{}),bank:(0,p.jsx)(f.BankOutlined,{}),team:(0,p.jsx)(f.TeamOutlined,{}),project:(0,p.jsx)(f.ProjectOutlined,{}),cycle:(0,p.jsx)(f.SyncOutlined,{}),period:(0,p.jsx)(f.CalendarOutlined,{}),PlayCircleOutlined:(0,p.jsx)(f.PlayCircleOutlined,{}),DollarOutlined:(0,p.jsx)(f.DollarOutlined,{}),FileTextOutlined:(0,p.jsx)(f.FileTextOutlined,{}),FileDoneOutlined:(0,p.jsx)(f.FileDoneOutlined,{})};function Wo({chip:e}){let t=e.icon?(0,p.jsx)(`span`,{className:`fin-meta-chip__icon`,children:e.icon}):null;return(0,p.jsxs)(`span`,{className:`fin-meta-chip`,children:[e.tooltip&&t?(0,p.jsx)(d.Tooltip,{title:e.tooltip,children:t}):t,e.label?(0,p.jsx)(`span`,{className:`fin-meta-chip__label`,children:e.label}):null,(0,p.jsx)(`span`,{className:`fin-meta-chip__value`,children:e.value??`—`}),e.badge?(0,p.jsx)(`span`,{className:`fin-badge fin-badge--brand`,children:e.badge}):null]})}function Go(e){return Array.isArray(e)?e.map(Go):e&&typeof e==`object`&&`id`in e&&`value`in e?e.id??e.value:e}function Ko(e,t){let n={_id:t,id:t},r=e?.recordMeta;if(r&&typeof r==`object`)for(let[e,t]of Object.entries(r))e in n||(n[e]=t);for(let t of e??[])for(let e of t.fields??[])e?.field!=null&&e.value!==void 0&&(n[e.field]=Go(e.value));return n}function qo(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function Jo(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(qo(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(qo(t?.[n])))}function Yo(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function Xo(e){return String(e??``).trim().toLowerCase()}function Zo(e,t,r,i){return n.Mt(e.key,t,r,i)}function Qo(e,t,r,i){return n.Nt(e.key,t,r,i)}function $o(e){let t=String(e.key??``);return{...e,key:t,label:e.label||t,route:e.route||e.routeTemplate||(e.actionType===`modal`&&(e.popupKey||t)?`/popup/${e.popupKey||t}`:``)}}function es(e,t){let r=(e??[]).flatMap(e=>e.fields??[]),i=!t||/resume|cv/i.test(t),a=r.find(e=>e.field===t)??(i?r.find(e=>/resume|cv/i.test(`${e.field??``} ${e.label??``}`)):void 0);if(!a)return[];let o=String(a.type??``).trim().toLowerCase();if(o!==`file`&&o!==`document`&&o!==`upload`&&typeof a.value==`string`&&a.value.trim()){let e=o===`text-editor`||/<[^>]+>/.test(a.value);return[{name:a.label||t||`Document`,type:e?`html`:`text`,content:a.value}]}let s=n.Sr(a.value).filter(e=>e.url);if(s.length)return s;if(typeof a.value==`string`&&a.value.trim()){let e=o===`text-editor`||/<[^>]+>/.test(a.value);return[{name:a.label||t||`Document`,type:e?`html`:`text`,content:a.value}]}return[]}var ts=[];function ns({moduleName:e,id:i,customConfigName:a,auxRecords:o,authToken:s,onAction:c,onTabChange:l,onHeaderData:m,onRecordLoaded:g,hideActions:_=!1,actionsExtra:v=null,actionsInMore:y=!1,moreActionsExtra:b=ts,defaultTab:x,refreshKey:S=0}){let C=(0,h.useNavigate)(),w=(0,h.useLocation)(),[T,E]=(0,u.useState)([]),[D,O]=(0,u.useState)([]),[k,A]=(0,u.useState)([]),[j,M]=(0,u.useState)(!1),[N,P]=(0,u.useState)([]),[F,I]=(0,u.useState)(0),L=a||e;(0,u.useEffect)(()=>(s&&t._(s),()=>{s&&t.r()}),[s]),(0,u.useEffect)(()=>{if(!e)return;let t=!1;async function r(){try{let[r,a]=await Promise.all([n.Jt({module:e,id:i,view:`detail`}),n.Xr(L).catch(()=>({actions:[],actionRules:[]})),n.Ci()]);t||(E(Array.isArray(r)?r:[]),O(a.actions??[]),A(a.actionRules??[]))}catch(n){console.error(`Failed to fetch ${e} header fields:`,n),t||(E([]),O([]),A([]))}}return r(),()=>{t=!0}},[e,L,i,S,F]);let[R,z]=(0,u.useState)({signature:``,groups:{}}),B=Ra(o);(0,u.useEffect)(()=>{let e=La(o);if(!e.length)return;let t=!1;return Promise.all(e.map(async e=>{let t=await n.Jt({module:e.module,id:e.id,view:`detail`}).catch(()=>[]);return[e.key,Array.isArray(t)?t:[]]})).then(e=>{t||z({signature:B,groups:Object.fromEntries(e)})}).catch(()=>{t||z({signature:B,groups:{}})}),()=>{t=!0}},[B,S]);let V=(0,u.useMemo)(()=>Ba(R.signature===B?R.groups:{}),[R,B]),H=(0,u.useMemo)(()=>Aa(L,T,{aux:V}),[L,T,V]);(0,u.useEffect)(()=>{H&&m&&m(H)},[H]);let{eyebrow:U,title:W=`-`,status:G,titleIds:ee=[],meta:te=[],ids:ne=[],tabs:re=[],stats:ie=[],timestamp:ae=null}=H??{},{canAdd:oe,canEdit:se,canDelete:ce}=n.Rt(e),K=(0,u.useMemo)(()=>Ko(T,i),[T,i]);(0,u.useEffect)(()=>{K&&g&&g(K)},[K]);let le=Fn(re,{id:i,moduleName:e,record:K}),ue=Oa(L)?.resolveScope,[de,fe]=(0,u.useState)(void 0);(0,u.useEffect)(()=>{if(typeof ue!=`function`||!i)return;let t=!1,n=Number(localStorage.getItem(`userId`))||0;return Promise.resolve().then(()=>ue({id:i,moduleName:e,record:K,currentUserId:n})).then(e=>{t||fe(e??null)}).catch(()=>{t||fe(null)}),()=>{t=!0}},[ue,i,e,T]);let pe=typeof ue!=`function`||de!==void 0,me=(0,u.useMemo)(()=>pe?D.filter(e=>e.showInDetail??e.showInList).map($o).filter(e=>!Zo(e,K,k,de??void 0)):[],[k,D,K,de,pe]);function he(e){let t=n.It(e);if(t===`add`&&!oe||t===`edit`&&!se||t===`delete`&&!ce||!n.mn(e.permission,L))return!1;if(e.permissionKey){let t=Yo(K,`actionPermission.${e.permissionKey}`);if(t===!1||t===0||t===`0`)return!1}return!0}let[q,ge]=(0,u.useState)({sourceDefaultTab:x,selectedTab:x}),_e=q.sourceDefaultTab===x?q.selectedTab:x,ve=le.some(e=>e.key===_e)?_e:le[0]?.key,ye=new Set(le.map(e=>Xo(e.key))),J=e=>{let t=e.allowedTabs??[];return!t.length||t.some(e=>Xo(e)===Xo(ve))||de&&t.some(e=>Xo(e)===Xo(de))?!0:!t.some(e=>ye.has(Xo(e)))&&!de},be=me.filter(e=>e.detailPlacement===`primary`&&he(e)&&J(e)),xe=me.filter(e=>e.detailPlacement!==`primary`&&he(e)&&J(e)),Se=y?[]:be,Ce=y?[...be,...xe]:xe;if(!H)return null;let we=r=>{let a=[...be,...xe].find(e=>e.key===r);if(a?.actionType===`document`&&a.documentField){let t=es(T,a.documentField);if(t.length){P(t),M(!0);return}let r=a.documentModule||e,o=a.documentIdField?Yo(K,a.documentIdField):i;n.ti(r,o,a.documentField).then(e=>{let t=(e?.data??[]).map(e=>({name:e.fileName||e.name||e.uploadedFileName||a.documentField,url:e.fileUrl||e.url||``,type:`file`})).filter(e=>e.url);t.length?(P(t),M(!0)):d.message.warning(`No ${(a.label||`document`).toLowerCase()} available`)}).catch(()=>d.message.warning(`No ${(a.label||`document`).toLowerCase()} available`));return}if(a?.actionType===`copy`){let e=Yo(K,a.copyField||`id`);navigator.clipboard.writeText(qo(e)).then(()=>d.message.success(`Copied to clipboard`)).catch(()=>d.message.error(`Could not copy to clipboard`));return}if(a?.actionType===`api`&&a.apiPath){let n=Jo(a.apiPath,K),o=String(a.apiMethod||`POST`).toUpperCase();t.o(t.S,n.startsWith(`/`)?n:`/${n}`,{method:o,body:[`GET`,`DELETE`].includes(o)?void 0:JSON.stringify({ids:[i],record:K})}).then(()=>{d.message.success(`${a.label} completed`),I(e=>e+1),c?.(r,{moduleName:e,id:i,action:a,refreshed:!0})}).catch(e=>d.message.error(e.message||`${a.label} failed`));return}if(a?.route){let t=typeof a.route==`function`?a.route(i):Jo(a.route,Ko(T,i));if(a.linkTarget===`_blank`){window.open(t,`_blank`,`noopener`);return}t.startsWith(`/popup/`)?C(t,{state:{background:w,moduleName:e,selectedIds:[i],selectedRecords:[K],popupContext:a.popupState??{},popupAction:{key:a.key,apiMethod:a.apiMethod,apiPath:a.apiPath,defaultTemplateId:a.defaultTemplateId},...a.popupState}}):C(t);return}c?.(r,{moduleName:e,id:i,action:a})},Te=t=>{ge({sourceDefaultTab:x,selectedTab:t}),l?.(t,{moduleName:e,id:i})},Ee=Ce.map(e=>{let t=n.At(e,K,de??void 0),r=!t&&Qo(e,K,k,de??void 0);return{key:e.key,label:t?t.label:e.label,danger:e.danger,disabled:!!t||!!r,title:r||void 0,onClick:t||r?void 0:()=>we(e.key)}}).concat((Array.isArray(b)?b:[]).filter(e=>e&&e.key!=null&&e.label!=null).map(e=>({key:`extra:${e.key}`,label:e.label,danger:e.danger,disabled:!!e.disabled,onClick:e.disabled?void 0:()=>e.onClick?.()}))),De=Oa(L)?.header;if(De?.variant===`finance`){let t=e=>e==null?``:Array.isArray(e)?e.map(t).filter(Boolean).join(`, `):String(typeof e==`object`?e.value??e.label??e.name??e.id??``:e),r={};for(let e of T??[])for(let t of e.fields??[])t?.field!=null&&(r[t.field]=t.value);let i=e=>t(r[e]),a=i(De.statusField),o=(De.chips??[]).map(e=>({key:e.field,icon:e.icon?Uo[e.icon]:void 0,label:e.label,value:i(e.field)||`—`,badge:e.badgeField&&i(e.badgeField)||void 0,tooltip:e.tooltip})),s=_?[]:be.map(e=>{let t=n.At(e,K,de??void 0),r=!t&&Qo(e,K,k,de??void 0);return{key:e.key,label:t?t.label:e.label,icon:e.icon?Uo[e.icon]:void 0,enabled:!t&&!r,variant:e.tone,disabledReason:r||void 0,onClick:t||r?void 0:()=>we(e.key)}}),c=a?no(e,a):[];return(0,p.jsxs)(`div`,{className:`fin-detail-header`,children:[(0,p.jsxs)(`div`,{className:`fin-dh__top`,children:[(0,p.jsxs)(`div`,{className:`fin-dh__identity`,children:[(0,p.jsx)(Po,{name:W,size:`lg`}),(0,p.jsxs)(`div`,{className:`fin-dh__who`,children:[(0,p.jsxs)(`div`,{className:`fin-dh__name-row`,children:[(0,p.jsx)(`h2`,{className:`fin-dh__name`,children:W||`Details`}),a?(0,p.jsx)(bo,{status:a}):null]}),U?(0,p.jsx)(`span`,{className:`fin-dh__designation`,children:U}):null]})]}),s.length||!_&&v?(0,p.jsxs)(`div`,{className:`fin-dh__actions`,children:[s.map(e=>{let t=(0,p.jsx)(n.Gn,{variant:e.enabled?e.variant??`default`:`default`,icon:e.icon,disabled:!e.enabled,onClick:e.onClick,children:e.label},e.key??e.label);return e.enabled||!e.disabledReason?t:(0,p.jsx)(d.Tooltip,{title:e.disabledReason,children:(0,p.jsx)(`span`,{className:`fin-dh__action-wrap`,children:t})},e.key??e.label)}),_?null:v]}):null]}),o.length?(0,p.jsx)(`div`,{className:`fin-dh__chips`,children:o.map(e=>(0,p.jsx)(Wo,{chip:e},e.key??e.label))}):null,c.length?(0,p.jsx)(Oo,{steps:c}):null]})}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(d.Card,{className:`znx-dh-card`,children:[(0,p.jsxs)(`div`,{className:`znx-dh-top`,children:[(0,p.jsxs)(`div`,{className:`znx-dh-left`,children:[U&&(0,p.jsx)(`div`,{className:`znx-dh-eyebrow`,children:U}),(0,p.jsxs)(`div`,{className:`znx-dh-titlerow`,children:[(0,p.jsx)(`span`,{className:`znx-dh-title`,children:W}),ee.map(e=>(0,p.jsxs)(`span`,{className:`znx-dh-titleid`,children:[(0,p.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label)),G&&(0,p.jsx)(d.Tag,{color:G.color,className:`znx-dh-status`,style:{backgroundColor:G.backgroundColor??G.color,borderColor:G.backgroundColor??G.color,color:G.textColor},children:G.label})]}),ne.length>0&&(0,p.jsx)(`div`,{className:`znx-dh-ids`,children:ne.map(e=>(0,p.jsxs)(`span`,{className:`znx-dh-id`,children:[(0,p.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label))}),te.length>0&&(0,p.jsx)(`div`,{className:`znx-dh-meta`,children:te.map((e,t)=>{let n=Ia(e,e=>Yo(K,e)??K?.[e]);return(0,p.jsxs)(`span`,{className:`znx-dh-meta-item`,children:[n.icon&&Uo[n.icon]&&(0,p.jsx)(`span`,{className:`znx-dh-meta-icon`,children:Uo[n.icon]}),n.variant===`pill`?(0,p.jsxs)(p.Fragment,{children:[n.label&&(0,p.jsxs)(`span`,{className:`znx-dh-meta-label`,children:[n.label,`:`]}),(0,p.jsx)(d.Tag,{className:`znx-dh-meta-pill`,color:n.tagColor,style:n.tagStyle,children:n.value||n.text})]}):(0,p.jsx)(`span`,{children:n.text})]},t)})})]}),!_&&(0,p.jsxs)(`div`,{className:`znx-dh-actions-col`,children:[(0,p.jsxs)(`div`,{className:`znx-dh-actions`,children:[Se.map(e=>{let t=n.At(e,K,de??void 0),r=!t&&Qo(e,K,k,de??void 0),i=(0,p.jsx)(d.Button,{type:`text`,disabled:!!t||!!r,className:`znx-dh-btn znx-dh-btn--${t?t.tone:e.tone??`primary`}${t?` znx-dh-btn--done`:``}`,icon:t?(0,p.jsx)(f.CheckCircleOutlined,{}):e.icon?Uo[e.icon]:void 0,onClick:t||r?void 0:()=>we(e.key),children:t?t.label:e.label},e.key);return r?(0,p.jsx)(d.Tooltip,{title:r,children:(0,p.jsx)(`span`,{children:i})},e.key):i}),Ee.length>0&&(0,p.jsx)(d.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:Ee},children:(0,p.jsx)(d.Button,{type:`text`,className:`znx-dh-more`,icon:(0,p.jsx)(f.MoreOutlined,{})})}),v]}),ie.length>0&&(0,p.jsx)(`div`,{className:`znx-dh-stats`,children:ie.map(e=>(0,p.jsxs)(`div`,{className:`znx-dh-stat`,children:[(0,p.jsx)(`span`,{className:`znx-dh-stat-value`,children:e.value}),(0,p.jsx)(`span`,{className:`znx-dh-stat-label`,children:e.label})]},e.label))}),ae?.value&&(0,p.jsxs)(`div`,{className:`znx-dh-created`,children:[`Created on `,ae.value]})]})]}),le.length>0&&(0,p.jsx)(`div`,{className:`znx-dh-tabs`,children:le.map(e=>(0,p.jsx)(`button`,{type:`button`,className:`znx-dh-tab${ve===e.key?` is-active`:``}`,onClick:()=>Te(e.key),children:e.label},e.key))})]}),(0,p.jsx)(r.t,{documents:N,open:j,onClose:()=>M(!1)})]})}var rs={};function is(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.tabContentRegistry)??{};if(!Object.keys(e).length)return rs;let t={...rs};return Object.entries(e).forEach(([e,n])=>{t[e]={...t[e]??{},...n}}),t}function as(e,t){return!t||t===`details`?null:is()[e]?.[t]??null}function os(){let e=(0,h.useLocation)();return e.state?.refreshTimestamp??e.state?.__refreshedAt??0}function ss({component:e,id:t,moduleName:n,onDescriptionSaved:r}){return e?(0,p.jsx)(e,{id:t,moduleName:n,onDescriptionSaved:r}):null}var{Text:cs}=d.Typography;function ls({moduleName:e,id:t,backPath:n=``,showFooter:r=!0,users:i=[],showActivity:a=!0,showNotes:o=!0,onHeaderAction:s,onHeaderTabChange:c,onHeaderData:l}){let f=(0,h.useNavigate)(),m=(0,h.useParams)(),[g,_]=(0,h.useSearchParams)(),v=(0,h.useLocation)(),y=t||m.id||g.get(`jobId`)||g.get(`id`)||v.state?.record?._id||v.state?.record?.id,b=g.get(`tab`)||`details`,[x,S]=(0,u.useState)(0),C=os(),w=(e,t)=>{let n=new URLSearchParams(g);n.set(`tab`,e),_(n,{replace:!0}),c?.(e,t)},T=()=>S(e=>e+1),E=(e,t)=>{s?.(e,t)},D=(0,u.useMemo)(()=>Oa(e)?.tabs??[],[e]),O=Fn(D,{id:y,moduleName:e}),k=b===`details`||!D.some(e=>e.key===b&&typeof e.visibleWhen==`function`)||O.some(e=>e.key===b),A=(0,u.useMemo)(()=>k?as(e,b):null,[e,b,k]);return(0,p.jsxs)(`div`,{className:`v1-page v1-detail-page`,children:[(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,p.jsx)(ns,{moduleName:e,id:y,defaultTab:b,onAction:E,onTabChange:w,onHeaderData:l,refreshKey:C}),A?(0,p.jsx)(ss,{component:A,id:y,moduleName:e,onDescriptionSaved:T}):(0,p.jsxs)(d.Row,{gutter:[16,16],align:`stretch`,children:[(0,p.jsx)(d.Col,{xs:24,lg:16,children:(0,p.jsx)(Xi,{moduleName:e,id:y,refreshKey:x+C,onDescriptionSaved:T})}),(0,p.jsx)(d.Col,{xs:24,lg:8,children:(0,p.jsx)(ln,{moduleName:e,id:y,users:i,showActivity:a,showNotes:o,refreshKey:C})})]})]}),n&&r&&(0,p.jsxs)(`div`,{className:`v1-footer`,children:[(0,p.jsx)(cs,{type:`secondary`,children:y?`Record ID: ${y}`:`Detail view`}),(0,p.jsx)(d.Button,{onClick:()=>f(n),children:`Back`})]})]})}ls.propTypes={moduleName:g.default.string,id:g.default.string,backPath:g.default.string,showFooter:g.default.bool,users:g.default.array,showActivity:g.default.bool,showNotes:g.default.bool,onHeaderAction:g.default.func,onHeaderTabChange:g.default.func,onHeaderData:g.default.func};var us={jobRemoteStatus:[`On-Site`,`Remote`,`Hybrid`],jobRecruitmentStatus:[`unread`,`partially fulfilled`,`fulfilled`],"experience.experienceRequiredUnit":[`Years`,`Months`],"contractDuration.unit":[`Days`,`Weeks`,`Months`,`Years`],noticePeriodUnit:[`Days`,`Weeks`,`Months`],"jobPayDetails.clientBudgetCurrency":[`$`,`USD`,`INR`],"jobPayDetails.clientBudgetUnit":[`Hour`,`Daily`,`Monthly`,`Yearly`],workAuthorisation:[`US Citizen`,`Green Card`,`H1B`,`OPT`,`CPT`,`L2 EAD`,`H4 EAD`,`Other`],source:[`LinkedIn`,`Referral`,`Dice`,`Indeed`,`Monster`,`Vendor`,`Other`]};function ds(e={}){return us[e.field]??[]}var fs=e.t({default:()=>ic}),{Text:ps}=d.Typography,{TextArea:ms}=d.Input;function hs(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function gs({form:e,field:t,absoluteName:r}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(null),c=(0,u.useRef)(null),f=d.Form.useWatch(t.verifyResultField?hs(r,t.verifyResultField):[`__noop_verify__`],{form:e,preserve:!0}),m=d.Form.useWatch(r,e),h=(0,u.useMemo)(()=>l.n(t.verifyLockedWhenFields),[t.verifyLockedWhenFields]),g=d.Form.useWatch(e=>l.t({lockKeys:h,resultValue:l.r(e,hs(r,t.verifyResultField)),hasResultField:!!t.verifyResultField,readSibling:t=>l.r(e,hs(r,t))}),{form:e,preserve:!0});return(0,u.useEffect)(()=>{let n=String(m??``).trim();if(f===!0&&c.current===null&&n){c.current=n;return}f===!0&&c.current!==null&&n!==c.current&&(t.verifyResultField&&e.setFieldValue(hs(r,t.verifyResultField),!1),t.verifyTimestampField&&e.setFieldValue(hs(r,t.verifyTimestampField),void 0),c.current=null)},[r,m,t.verifyResultField,t.verifyTimestampField,e,f]),t.verifyAction===`email`?g?(0,p.jsx)(ps,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:t.verifyLockedLabel||`Verified`}):f===!0?o&&!o.mailboxConfirmed&&(o.catchAll||o.result===`risky`)?(0,p.jsx)(d.Tooltip,{title:o.reason||`This domain accepts every address, so the mailbox could not be confirmed. Delivery is proven only once the account email is actually sent.`,children:(0,p.jsx)(ps,{type:`warning`,strong:!0,className:`v1-verify-field-wrap`,children:t.verifyUnconfirmedLabel||`Accepted`})}):(0,p.jsx)(ps,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:t.verifySuccessLabel||`Valid`}):(0,p.jsx)(d.Button,{size:`small`,loading:i,onClick:async()=>{let i=String(m??``).trim();if(!i){d.message.warning(`Enter an email first`);return}a(!0);try{let a=await n.oo(i);c.current=a.valid?i:null,s(a.valid?a:null),t.verifyResultField&&e.setFieldValue(hs(r,t.verifyResultField),a.valid),t.verifyTimestampField&&e.setFieldValue(hs(r,t.verifyTimestampField),a.valid?new Date().toISOString():void 0),a.valid?a.mailboxConfirmed?d.message.success(`Email verified — the mail server confirmed this mailbox`):d.message.warning(a.reason||`The domain can receive mail, but this exact mailbox could not be confirmed`):d.message.error(a.reason?`Invalid email: ${a.reason}`:`Email could not be verified`)}catch(n){c.current=null,s(null),t.verifyResultField&&e.setFieldValue(hs(r,t.verifyResultField),!1),t.verifyTimestampField&&e.setFieldValue(hs(r,t.verifyTimestampField),void 0),d.message.error(n?.message||`Could not verify email`)}finally{a(!1)}},className:`v1-verify-field-wrap`,children:f===!1?t.verifyRetryLabel||`Re Verify`:t.verifyIdleLabel||`Verify Email`}):null}function _s({form:e,field:t,siblingPrefix:r,locked:i,combined:a=!1}){let o=d.Form.useWatch(n.n(t?.labelWhen,r),e),s=n.i(t,o,a);return a?s:(0,p.jsx)(Ns,{field:t,label:s,locked:i})}function vs({form:e,groups:t,disabled:n,loading:r,onClick:i,children:a}){let o=d.Form.useWatch(e=>t.some(t=>{if(!t.addRow||!t.requireValidatedField)return!1;let n=e?.[t.name]??[];return n.length===0||n.some(e=>!e?.[t.requireValidatedField])}),{form:e,preserve:!0}),s=n||o,c=t.find(e=>e.submitDisabledMessage)?.submitDisabledMessage,l=t.find(e=>e.requireValidatedField)?.requireValidatedFieldMessage,u=o?l||c||`Verify every required row before submitting.`:c||`Complete all mandatory fields before submitting.`,f=(0,p.jsx)(d.Button,{type:`primary`,onClick:i,disabled:s,loading:r,children:a});return s&&!r?(0,p.jsx)(d.Tooltip,{title:u,children:(0,p.jsx)(`span`,{style:{display:`inline-flex`,cursor:`not-allowed`},children:f})}):f}function ys({form:e,rules:t,watchPaths:r,targetPath:i,resetOnNoMatch:a=!0}){let o=d.Form.useWatch(e=>JSON.stringify(r.map(({path:t})=>t.reduce((e,t)=>e==null?e:e[t],e)??null)),{form:e,preserve:!0}),s=(0,u.useRef)(void 0),c=(0,u.useRef)(!0);return(0,u.useEffect)(()=>{let l=o?JSON.parse(o):[],u={};r.forEach(({field:e},t)=>{u[e]=l[t]});let d=c.current;c.current=!1;let f=n.En({rules:t,watched:u,current:e.getFieldValue(i),lastApplied:s.current,clearOnMismatch:a,initial:d});f.action===`set`?(e.setFieldValue(i,f.value),s.current=f.value):f.action===`clear`&&(e.setFieldValue(i,void 0),s.current=void 0)},[o]),null}var bs=[(0,p.jsx)(f.UserOutlined,{}),(0,p.jsx)(f.EnvironmentOutlined,{}),(0,p.jsx)(f.SolutionOutlined,{}),(0,p.jsx)(f.InfoCircleOutlined,{}),(0,p.jsx)(f.FileTextOutlined,{})],xs={email:(0,p.jsx)(f.MailOutlined,{className:`v1-input-icon`}),contactNumber:(0,p.jsx)(f.PhoneOutlined,{className:`v1-input-icon`}),phone:(0,p.jsx)(f.PhoneOutlined,{className:`v1-input-icon`}),currentLocation:(0,p.jsx)(f.EnvironmentOutlined,{className:`v1-input-icon`}),preferredLocation:(0,p.jsx)(f.EnvironmentOutlined,{className:`v1-input-icon`}),designation:(0,p.jsx)(f.SolutionOutlined,{className:`v1-input-icon`}),skills:(0,p.jsx)(f.TagsOutlined,{className:`v1-input-icon`}),firstName:(0,p.jsx)(f.UserOutlined,{className:`v1-input-icon`}),lastName:(0,p.jsx)(f.UserOutlined,{className:`v1-input-icon`}),jobTitle:(0,p.jsx)(f.SolutionOutlined,{className:`v1-input-icon`}),jobLocation:(0,p.jsx)(f.EnvironmentOutlined,{className:`v1-input-icon`}),vendorEmail:(0,p.jsx)(f.MailOutlined,{className:`v1-input-icon`})},Ss=e=>e===!0||e===1||e===`1`,Cs=(e,t)=>(e?.edit===void 0||Ss(e.edit))&&(!e?.editablePermission||n.mn(e.editablePermission,t)),ws=e=>e==null||e===``;function Ts(e){return e==null||e===``?!1:Array.isArray(e)?e.length>0&&e.some(Ts):typeof e!=`object`||Object.values(e).some(Ts)}function Es(e=``){let t=String(e).toLowerCase();return t===`job`?`jobs`:t===`candidate`?`candidates`:t===`submissions`?`submission`:t}function Ds(e=[]){return e.map(e=>typeof e==`string`?{label:e,value:e}:{label:e.label??e.name??e.value??e.userName??e.email,value:e.value??e.id??e.userId??e._id??e.name??e.label})}function Os(e,t){if(!e?.field)return!0;let n=String(t??``),r=String(e.value??``),i=()=>r.split(`,`).map(e=>e.trim());switch(e.operator){case`eq`:return n===r;case`neq`:return n!==r;case`in`:return i().includes(n);case`notIn`:return!i().includes(n);case`truthy`:return Ss(t);case`falsy`:return!Ss(t);case`empty`:case`isEmpty`:return t==null||n.trim()===``||Array.isArray(t)&&t.length===0;case`notEmpty`:return!(t==null||n.trim()===``||Array.isArray(t)&&t.length===0);default:return!0}}var ks=u.default.createContext(!1);function As({form:e,group:t,children:r,inheritParent:i=!0}){let a=u.default.useContext(ks),o=t?.disabledIf?.field?n.gr(t.disabledIf.field):[`__noop_group_disabled__`],s=d.Form.useWatch(o,e),c=t?.disabledIf?.field?Os(t.disabledIf,s):!1,l=i&&a||!!t?.disabled||c;return(0,p.jsx)(ks.Provider,{value:l,children:r})}function js({form:e,showIf:t,render:n}){return Os(t,d.Form.useWatch(t.field,e))?n():null}function Ms(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function Ns({field:e,label:t,locked:r}){if(!t)return t;let i=n._n(e),a=!!i;return!a&&!r?t:(0,p.jsxs)(`span`,{className:`v1-field-label-with-info`,children:[(0,p.jsx)(`span`,{children:t}),a&&(0,p.jsx)(d.Tooltip,{title:i,children:(0,p.jsx)(f.InfoCircleOutlined,{className:`v1-field-info-icon`})}),r&&(0,p.jsx)(d.Tooltip,{title:`You don't have permission to edit this field`,children:(0,p.jsx)(f.LockOutlined,{className:`v1-field-info-icon`})})]})}function Ps({group:e}){return!Ss(e?.infoEnabled)||ws(e?.infoText)?null:(0,p.jsx)(ps,{type:`secondary`,className:`v1-group-info-message`,children:e.infoText})}function Fs({group:e}){return!Ss(e?.toggleEnabled)||ws(e?.toggleField)?null:(0,p.jsxs)(d.Space,{size:6,align:`center`,onClick:e=>e.stopPropagation(),children:[(0,p.jsx)(ps,{type:`secondary`,className:`v1-combine-toggle-label`,children:e.toggleLabel||`Toggle`}),(0,p.jsx)(d.Form.Item,{name:e.toggleField,valuePropName:`checked`,initialValue:!!e.toggleValue,noStyle:!0,children:(0,p.jsx)(d.Switch,{size:`small`})})]})}function Is(e=[],t,r,i){let a=i??new Set;return[...e].filter(e=>!Ss(e.hideGroup)&&!Ss(e.hideGroupInForm)&&n.qr(r,e.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(e=>({...e,fields:[...e.fields??[]].map(e=>a.has(e.field)?{...e,show:1,req:1}:e).filter(i=>String(i.field??``).trim()!==``&&(!i.visiblePermission||n.mn(i.visiblePermission,t))&&n.Gr(r,e.name,i.field)).map(t=>n.Kr(r,e.name,t.field)?t:{...t,disabled:!0}).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}var Ls=[`__v1WizardWatchOff__`];function Rs(e,t,r){let i=new Map(t.map(e=>[e.name,e]));return[...e].filter(e=>!Ss(e.hideGroup)&&n.qr(r,e.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(e=>i.get(e.name)??{...e,fields:[]})}function zs(e){return String(e??``).replace(/<[^>]*>/g,``).replace(/ /g,` `).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).trim()}function Bs(e,t){let n=(e.validations??e.validation??e.rules??[]).find(e=>(typeof e==`string`?e:e?.type)===t);if(!(!n||typeof n==`string`))return n.value??n.length??n[t]}var Vs=({label:e,message:t,value:n,compare:r,text:i})=>({validator:(a,o)=>ws(o)||r(Number(o),Number(n))?Promise.resolve():Promise.reject(Error(t??`${e} ${i} ${n}`))});function Hs(e,t){return n.Rn(e,t)}var Us=({label:e,message:t,value:n,rule:r,form:i,name:a,compare:o,text:s})=>({validator:async(c,l)=>{let u=n??r.compareField??r.field;if(!u||ws(l))return Promise.resolve();let d=i.getFieldValue(Hs(a,u));if(ws(d))return Promise.resolve();let f=Number(l),p=Number(d);return Number.isNaN(f)||Number.isNaN(p)||o(f,p)?Promise.resolve():Promise.reject(Error(t??`${e} ${s} ${u}`))}}),Ws={minLength3:e=>Ws.min({...e,value:3}),minLength5:e=>Ws.min({...e,value:5}),noPastDate:({label:e,message:t})=>({validator:(r,i)=>{if(ws(i))return Promise.resolve();let a=new Date;return a.setHours(0,0,0,0),n.h(i)<a.getTime()?Promise.reject(Error(t??`${e} cannot be a past date`)):Promise.resolve()}}),noFutureDate:({label:e,message:t})=>({validator:(r,i)=>{if(ws(i))return Promise.resolve();let a=new Date;return a.setHours(23,59,59,999),n.h(i)>a.getTime()?Promise.reject(Error(t??`${e} cannot be a future date`)):Promise.resolve()}}),minAge:({message:e,value:t})=>({validator:(r,i)=>{if(ws(i))return Promise.resolve();let a=Number(t??18),o=new Date;return o.setFullYear(o.getFullYear()-a),o.setHours(23,59,59,999),n.h(i)>o.getTime()?Promise.reject(Error(e??`Must be at least ${a} years old`)):Promise.resolve()}}),dateAfterField:({label:e,message:t,value:r,rule:i,form:a,name:o})=>n.f({type:`dateAfterField`,label:e,rule:{...i,value:r??i?.compareField??i?.field,message:t},readSibling:e=>a.getFieldValue(Hs(o,e))}),dateBeforeField:({label:e,message:t,value:r,rule:i,form:a,name:o})=>n.f({type:`dateBeforeField`,label:e,rule:{...i,value:r??i?.compareField??i?.field,message:t},readSibling:e=>a.getFieldValue(Hs(o,e))}),timeAfterField:({label:e,message:t,value:r,rule:i,form:a,name:o})=>({validator:async(s,c)=>{let l=r??i.compareField??i.field;if(!l||ws(c))return Promise.resolve();let u=a.getFieldValue(Hs(o,l));if(ws(u))return Promise.resolve();let d=n.g(c),f=n.g(u);return d===null||f===null||d>f?Promise.resolve():Promise.reject(Error(t??`${e} must be after ${l}`))}}),timeBeforeField:({label:e,message:t,value:r,rule:i,form:a,name:o})=>({validator:async(s,c)=>{let l=r??i.compareField??i.field;if(!l||ws(c))return Promise.resolve();let u=a.getFieldValue(Hs(o,l));if(ws(u))return Promise.resolve();let d=n.g(c),f=n.g(u);return d===null||f===null||d<f?Promise.resolve():Promise.reject(Error(t??`${e} must be before ${l}`))}}),greaterThanField:e=>Us({...e,compare:(e,t)=>e>=t,text:`must be greater than or equal to`}),strictGreaterThanField:e=>Us({...e,compare:(e,t)=>e>t,text:`must be greater than`}),strictLessThanField:e=>Us({...e,compare:(e,t)=>e<t,text:`must be less than`}),lessThanOrEqualField:e=>Us({...e,compare:(e,t)=>e<=t,text:`must be less than or equal to`}),maxFromField:e=>n.Bn(e),maxFieldWithFallback:({label:e,message:t,value:r,rule:i,form:a,name:o})=>({validator:async(s,c)=>{let l=n.Fn({input:c,compareFields:n.In(r??i.compareFields),readValue:e=>n.Ln(a,o,e)});return l.ok?Promise.resolve():Promise.reject(Error(t??`${e} must not exceed ${l.field}`))}}),required:({field:e,message:t,form:n,name:r})=>({validator:(i,a)=>{if(e?.disabledByField&&n&&r&&Ss(n.getFieldValue(Ks(r,e.disabledByField)))||e?.requiredIfField&&n&&!Ss(n.getFieldValue(Ks(r,e.requiredIfField))))return Promise.resolve();let o=a==null||a===``||Array.isArray(a)&&a.length===0;return!o&&e?.type===`text-editor`&&(o=zs(a)===``),o?Promise.reject(Error(t??`Mandatory Field`)):Promise.resolve()}}),email:({label:e,message:t})=>n.lr(e,t),unique:({field:e,rule:t,uniqueContext:r})=>n.nr({field:e,validation:t,context:r}),url:({label:e,message:t})=>({type:`url`,message:t??`Enter valid ${e}`}),number:({label:e,message:t})=>({pattern:/^[0-9]+$/,message:t??`${e} must be a number`}),phone:({message:e})=>({validator:(t,r)=>{if(r==null||r===``)return Promise.resolve();let{total:i}=n.wi();return n.Ti(r).length===i?Promise.resolve():Promise.reject(Error(e??`Phone number must contain exactly ${i} digits`))}}),len:({label:e,message:t,value:n})=>({len:Number(n),message:t??`${e} must be ${n} characters`}),pattern:({label:e,message:t,rule:n})=>({pattern:new RegExp(n.pattern??n.value,n.flags),message:t??`Enter valid ${e}`}),min:({field:e,label:t,message:n,value:r})=>e.type===`number`?Vs({label:t,message:n,value:r,compare:(e,t)=>e>=t,text:`must be at least`}):{validator:(i,a)=>{if(a==null||a===``)return Promise.resolve();let o=e.type===`text-editor`?zs(a):String(a);return o===``||o.length>=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must be at least ${r} characters`))}},max:({field:e,label:t,message:n,value:r})=>e.type===`number`?Vs({label:t,message:n,value:r,compare:(e,t)=>e<=t,text:`must not exceed`}):{validator:(i,a)=>{if(a==null||a===``)return Promise.resolve();let o=e.type===`text-editor`?zs(a):String(a);return o===``||o.length<=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must not exceed ${r} characters`))}}};function Gs(e,t,n,r,i,a){let o=typeof e==`string`?{type:e}:e,s=o.type??o.rule??o.name,c=o.value??o.length??o.min??o.max,l=t.label??t.field??`Field`,u=Ws[s];return u?u({field:t,label:l,message:o.message,rule:o,value:c,form:n,name:r,prefixFor:i,uniqueContext:a}):o}function Ks(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function qs(e){return Ss(e?.req)?!0:(e?.validations??e?.validation??e?.rules??[]).some(e=>(typeof e==`string`?e:e?.type)===`required`)}function Js(e,t,r,i=!1,a=void 0,o=void 0,s=void 0){let c=e.label??e.field??`Field`,l=e.validations??e.validation??e.rules??[],u=l.some(e=>(typeof e==`string`?e:e?.type)===`required`),d=l.some(e=>(typeof e==`string`?e:e?.type)===`email`),f=[];if(s?.length&&f.push(...s),e.rowHierarchy){let i=Zs(t,r);i.rows&&f.push(n.p({field:e,...i}))}!i&&!u&&(Ss(e.req)||e.requiredIfField)&&f.push(Ws.required({field:e,message:`Mandatory Field`,form:t,name:r})),(e.type===`email`||e.formatter===`email`)&&!d&&f.push(n.lr(c)),e.type===`number`&&f.push(Ss(e.decimal)?{pattern:/^\d+(\.\d+)?$/,message:`${c} must be a number`}:{pattern:/^[0-9]+$/,message:`${c} must be a number`});let p=n.Ur(e,r,a,n=>Gs(n,e,t,r,a,o));return n.tr([...f,...l.map(p),n.Wr(e)])}function Ys(e,t,r){let i=new Set([`greaterThanField`,`strictGreaterThanField`,`strictLessThanField`,`lessThanOrEqualField`,`maxFieldWithFallback`,`dateAfterField`,`dateBeforeField`,`timeAfterField`,`timeBeforeField`]);return[...(e.validations??e.validation??e.rules??[]).filter(e=>(typeof e==`string`?e:e?.type)===`maxFromField`).map(e=>n.zn(e,t,r)).filter(Boolean),...(e.validations??e.validation??e.rules??[]).filter(e=>i.has(typeof e==`string`?e:e?.type)).flatMap(e=>String(e.value??e.compareField??e.field??``).split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>Hs(t,e)))]}function Xs(e){let t=e.len??Bs(e,`len`),n=e.min??Bs(e,`min`),r=e.max??Bs(e,`max`);return e.type===`number`?{min:n??void 0,max:r??void 0}:{minLength:n??void 0,maxLength:e.maxLength??t??r??void 0}}function Zs(e,t){if(!Array.isArray(t)||t.length<3||typeof t[1]!=`number`)return{};let n=e.getFieldValue(t[0]);return Array.isArray(n)?{rows:n,rowIndex:t[1]}:{}}function Qs(e,t,r){return n.d({field:e,readSibling:e=>t.getFieldValue(Hs(r,e)),...Zs(t,r)})}function $s(e){return n.m(e)}function ec(e,t){return t?t===`phone`?n.xi(e):t===`digits`?e.replace(/\D/g,``).slice(0,10):t===`email`||t===`noSpaces`?e.replace(/\s/g,``):t===`name`?e.replace(/\s+/g,` `).trimStart().replace(/\b\w/g,e=>e.toUpperCase()):e:e}function tc({field:e,form:i,name:a,value:o,checked:s,fileList:c,moduleName:l,recordId:m,initialValue:h,scopeValues:g={},onAiUpload:_,onRegionBlocked:v,onRowOrderChange:y,formDisabled:b,rowFieldKeys:x}){let S=e.type??`text`,C=!Cs(e,l),[w,T]=(0,u.useState)(null),[E,D]=(0,u.useState)(!1),[O,k]=(0,u.useState)(``),[A,j]=(0,u.useState)(``),[M,N]=(0,u.useState)(``),[P,F]=(0,u.useState)({open:!1,docs:[],index:0}),[I,L]=(0,u.useState)(null),[R,z]=(0,u.useState)(0),B=(0,u.useRef)([]),V=Array.isArray(a)&&a.length>=3&&typeof a[1]==`number`,H=e.lookupFilterValueFrom?n.gr(e.lookupFilterValueFrom):[`__lookup_filter_${e.field}`],U=e.lookupFilterValueFrom&&V?[...a.slice(0,2),...n.gr(e.lookupFilterValueFrom)]:[`__noop_row_filter__`],W=d.Form.useWatch(H,i),G=d.Form.useWatch(U,i),ee=ws(G)?W:G,te=e.lookupFilterValueFrom?g[e.lookupFilterValueFrom]:void 0,ne=ws(te)?ee:te,re=(0,u.useRef)(n.hn);(0,u.useEffect)(()=>{if(!e.lookupFilterField||!e.lookupFilterValueFrom)return;let t=re.current;re.current=ne,n.gn({previous:t,next:ne,currentValue:i.getFieldValue(a)})&&i.setFields([{name:a,value:void 0,errors:[]}])},[ne]);let ie=e.disabledByField?Array.isArray(a)&&a.length>1?[...a.slice(0,-1),e.disabledByField]:[e.disabledByField]:[`__noop_disabled_watch__`],ae=d.Form.useWatch(ie,i),oe=e.disabledIf?.field?n.gr(e.disabledIf.field):[`__noop_disabled_if__`],se=e.disabledIf?.field&&V?[...a.slice(0,2),...n.gr(e.disabledIf.field)]:[`__noop_disabled_if_row__`],ce=d.Form.useWatch(oe,i),K=d.Form.useWatch(se,i),le=e.disabledIf?.field?n.r(e.disabledIf,ws(K)?ce:K):!1,ue=e.optionsFromField||``,de=ue?n.gr(ue):[`__noop_options_from__`],fe=ue&&V&&(!x||x.has(ue))?[...a.slice(0,2),...n.gr(ue)]:[`__noop_options_from_row__`],pe=d.Form.useWatch(de,i),me=d.Form.useWatch(fe,i),he=ws(me)?pe:me,q=Ss(e.prefillWhenExclusive)&&e.prefillWhen?.length?e.prefillWhen:null,ge=d.Form.useWatch(e=>q?JSON.stringify(n.wn(q).map(t=>{let r=t=>t.reduce((e,t)=>e==null?e:e[t],e),i=V&&(!x||x.has(t))?r([...a.slice(0,2),...n.gr(t)]):void 0;return(ws(i)?r(n.gr(t)):i)??null})):``,{form:i,preserve:!0}),_e=(0,u.useMemo)(()=>{if(!q||!ge)return null;let e=JSON.parse(ge),t={};return n.wn(q).forEach((n,r)=>{t[n]=e[r]}),t},[ge]),ve=u.default.useContext(ks),ye=e.exclusiveInGroup&&V?[a[0]]:[`__noop_exclusive_watch__`],J=d.Form.useWatch(ye,i),be=(0,u.useMemo)(()=>{if(!e.exclusiveInGroup||!V||!Array.isArray(J))return!1;let t=a[1],n=a[a.length-1];return J.some((e,r)=>r!==t&&Ss(e?.[n]))},[e.exclusiveInGroup,V,J,a]),xe=e.locationCountryFrom?n.gr(e.locationCountryFrom):[`__noop_loc_country__`],Se=e.locationCountryFrom&&V?[...a.slice(0,2),...n.gr(e.locationCountryFrom)]:[`__noop_loc_country_row__`],Ce=d.Form.useWatch(xe,i),we=d.Form.useWatch(Se,i),Te=ws(we)?Ce:we,Ee=e.locationStateFrom?n.gr(e.locationStateFrom):[`__noop_loc_state__`],De=e.locationStateFrom&&V?[...a.slice(0,2),...n.gr(e.locationStateFrom)]:[`__noop_loc_state_row__`],Oe=d.Form.useWatch(Ee,i),ke=d.Form.useWatch(De,i),Ae=ws(ke)?Oe:ke,je=e.dataSource===`locationMaster`&&(e.locationLevel===`state`&&ws(Te)||e.locationLevel===`city`&&(ws(Te)||ws(Ae))),Me=C||!!e.disabled||le||(e.disabledByField?Ss(ae):!1)||!!b||ve||be||je;(0,u.useEffect)(()=>{if(S===`location`){let n=!1;async function r(){try{D(!0);let r=new URLSearchParams({search:O,limit:String(e.limit??50),offset:`0`}),i=await t.o(t.S,`/admin/location-dropdown-values?${r}`),a=i?.data??i??[];n||T(Ds(Array.isArray(a)?a:[]))}catch(t){console.error(`[EditFormV1] Failed to fetch locations for "${e.field}":`,t),n||T([])}finally{n||D(!1)}}return r(),()=>{n=!0}}let r=e.dataSource;if(![`select`,`radio`,`checkbox`].includes(S)||!r||r===`static`)return;if(r===`lookup`&&e.lookupFilterField&&ws(ne)){T([]),D(!1);return}let i=!1;async function a(){try{D(!0);let a=[];if(r===`master`||r===`module`)a=await n.ri(l,e.field,r===`master`?M:``,e.limit??50,0,{dataSource:r,masterName:e.masterName,groupName:e.groupName});else if(r===`lookup`){let r=new URLSearchParams({collection:e.lookupCollection??``,displayField:e.displayField??``,valueField:e.valueField??`_id`});e.displayField2&&r.set(`displayField2`,e.displayField2),A&&r.set(`search`,A),e.lookupFilterField&&!ws(ne)&&(r.set(`filterField`,e.lookupFilterField),r.set(`filterValue`,String(ne)));let i={field:e.field,extraFields:e.extraFields,optionsRequireExtraField:e.optionsRequireExtraField,optionsRequireExtraValue:e.optionsRequireExtraValue,optionsHierarchyParentField:e.optionsHierarchyParentField,optionsHierarchySelfFrom:e.optionsHierarchySelfFrom},o=n.xn(i);o=n.yn(e,o),o.length&&r.set(`extraFields`,o.join(`,`));let s=await t.o(t.S,`/admin/lookup-dropdown-values?${r}`);a=s?.data??s??[],a=n.vn(a,e,ne,{source:`EditFormV1`}),a=n.bn(a,i,{source:`EditFormV1`})}else if(r===`locationMaster`){let n=e.locationLevel||`country`;if(n===`state`&&ws(Te))a=[];else if(n===`city`&&(ws(Te)||ws(Ae)))a=[];else{let r=new URLSearchParams({level:n,limit:String(e.limit??250),offset:`0`});ws(Te)||r.set(`country`,String(Te)),ws(Ae)||r.set(`state`,String(Ae)),A&&r.set(`search`,A);let i=await t.o(t.S,`/admin/location-dropdown-values?${r}`);a=i?.data??i??[]}}else if(r===`group`){let n=String(e.groupName??``).toLowerCase().trim();if(n===`users`||n===`user`){let n=await t.o(t.S,`/get-all-users?limit=500&offset=0`),r=n?.data?.users??n?.users??n?.data??[],i=String(e.groupRoleContains??``).trim().toLowerCase(),o=i?Array.isArray(r)?r.filter(e=>String(e.roleName??``).toLowerCase().includes(i)):[]:r;a=Array.isArray(o)?o.map(e=>({label:[e.firstName,e.lastName].filter(Boolean).join(` `).trim()||e.userName||e.email||String(e.userId??e.id),value:e.userId??e.id})):[]}}i||(B.current=Array.isArray(a)?a:[],T(Ds(B.current)))}catch(t){console.error(`[EditFormV1] Failed to fetch options for "${e.field}":`,t),i||T([])}finally{i||D(!1)}}return a(),()=>{i=!0}},[S,e.dataSource,e.field,e.lookupCollection,e.displayField,e.displayField2,e.valueField,e.lookupFilterField,ne,e.groupName,e.groupRoleContains,e.masterName,e.limit,O,A,M,l,e.extraFields,e.optionsRequireExtraField,e.optionsRequireExtraValue,e.optionsHierarchyParentField,e.optionsHierarchySelfFrom,R,e.locationLevel,e.locationCountryFrom,e.locationStateFrom,Te,Ae]);let Ne=Ds([e.options,e.values].find(e=>Array.isArray(e)&&e.length>0)??(S===`checkbox`?[]:ds(e))),Pe=w??Ne,[Fe,Ie]=(0,u.useState)([]),Le=n.y(o,Pe).join(`,`);(0,u.useEffect)(()=>{if(!Le||e.dataSource!==`lookup`||E)return;let t=!1;return n._(e,Le.split(`,`)).then(e=>{t||Ie(e)}).catch(()=>{t||Ie([])}),()=>{t=!0}},[Le,e.dataSource,e.lookupCollection,e.displayField,e.displayField2,e.valueField,E]);let Re=n.v(Pe,Fe),ze=ue?n.Sn(Re,he):Re,Be=q?n.Cn(ze,q,_e??{}):ze,Ve=(e.multiSelect?`multiple`:e.mode??(Ss(e.multiple)?`multiple`:void 0))??(n.Pr(e)===`array`?`multiple`:void 0),He=Ss(e.allowCustomValues),Ue=He?`tags`:Ve,We=!!e.multiSelect||Ss(e.multiple)||n.Pr(e)===`array`||Ve===`multiple`,Ge=He?typeof e.tokenSeparators==`string`&&e.tokenSeparators?e.tokenSeparators.split(``):[`,`]:void 0,Ke=[`select`,`location`].includes(S),qe=e.hidePlaceholder?void 0:e.placeholder??`${Ke?`Select`:`Enter`} ${String(e.label??``).toLowerCase()}`,Je=Xs(e),Ye=()=>{setTimeout(()=>{i.validateFields([a]).catch(()=>{})})},Xe=e=>{i.setFieldValue(a,e),Ye()},Ze=n.Hn({field:e,form:i,name:a,moduleName:l,scopeValues:g,ownValue:o,onDone:(t,r)=>{z(e=>e+1);let o=n.Pr(e)!==`array`&&!e.multiSelect&&!e.multiple;t===`create`&&r!=null&&o&&((e.clearGroupOnChange||e.linkedClearField)&&n.b(i,e,a,x),Xe(n.Br(e)?{value:r}:r))}}),Qe=e.validator?.type?{...e.validator,title:e.validator.title||e.label||`Field`}:null,$e={...Je,value:o,disabled:Me,placeholder:qe,prefix:e.icon?null:xs[e.field],onChange:t=>{let r=e.formatter?ec(t.target.value,e.formatter):t.target.value;if(Qe){let{cleaned:e,error:t}=n.sr(r,Qe,`change`);L(t),r=e}Xe(r)},...Qe&&{onBlur:e=>{let{cleaned:t,error:r}=n.sr(e.target.value,Qe,`blur`);L(r),t!==e.target.value&&Xe(t)},onKeyPress:e=>{let t=n.cr(Qe.type);if(!t||e.which===0||e.keyCode===8||e.keyCode===13)return;let r=String.fromCharCode(e.which??e.keyCode);if(!t.test(r)){e.preventDefault();let t=`${Qe.title} — invalid character.`;L(t),setTimeout(()=>L(e=>e===t?null:e),1800)}},maxLength:Qe.maxLength??Je.maxLength}};if(S===`tagify`)return(0,p.jsx)(d.Select,{value:o,allowClear:!0,disabled:Me,mode:`tags`,placeholder:qe,onChange:Xe});if(S===`location`)return(0,p.jsx)(d.Select,{value:o,allowClear:!0,showSearch:!0,filterOption:!1,disabled:Me,loading:E,mode:Ve,options:Be,placeholder:qe,notFoundContent:E?(0,p.jsx)(d.Spin,{size:`small`}):void 0,onSearch:k,onFocus:()=>k(e=>e),onChange:Xe});if(S===`select`){let t=e.dataSource===`lookup`,r=e.dataSource===`master`,s=t||r,c=n.Br(e),l=n.zr(e,o,Be),u=He&&!We?l==null||l===``?void 0:Array.isArray(l)?l:[l]:l;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Select,{value:u,allowClear:!0,disabled:Me,loading:E,labelInValue:c||void 0,showSearch:e.showSearch!==!1,optionFilterProp:`label`,filterOption:!s&&void 0,mode:Ue,tokenSeparators:Ge,options:Be,placeholder:qe,notFoundContent:E?(0,p.jsx)(d.Spin,{size:`small`}):void 0,onSearch:t?j:r?N:void 0,onChange:t=>{let r=He&&!We&&Array.isArray(t)?t.length?t[t.length-1]:void 0:t;if(Xe(r),(e.clearGroupOnChange||e.linkedClearField)&&n.b(i,e,a,x),e.autofillFrom?.length){let t=r&&!Array.isArray(r)&&typeof r==`object`?r.value:r,o=Array.isArray(a)&&a.length>=3&&typeof a[1]==`number`;if(r==null)e.autofillFrom.forEach(({targetField:e})=>{let t=o?[...a.slice(0,2),...n.gr(e)]:n.gr(e);i.setFieldValue(t,null)});else if(B.current.length>0){let r=e.valueField??`_id`,s=B.current.find(e=>Ms(e,r)===t||e._id===t||e.id===t||e.value===t);s&&e.autofillFrom.forEach(({optionKey:e,targetField:t})=>{let r=Ms(s,e)??s.extraData?.[e]??null,c=o?[...a.slice(0,2),...n.gr(t)]:n.gr(t);i.setFieldValue(c,r)})}}},dropdownRender:Ze.footer?e=>(0,p.jsxs)(p.Fragment,{children:[e,Ze.footer]}):void 0}),Ze.modal]})}if(S===`radio`)return(0,p.jsx)(d.Radio.Group,{value:o,disabled:Me,options:Be,onChange:e=>Xe(e.target.value)});if(S===`checkbox`)return Be.length>0?(0,p.jsx)(d.Checkbox.Group,{value:o,disabled:Me,options:Be,onChange:Xe}):(0,p.jsx)(d.Checkbox,{checked:s,disabled:Me,onChange:t=>{let n=t.target.checked;if(!(n&&v?.(e))&&(Xe(n),n&&y?.(e,a),e.linkedClearField&&n)){let t=Array.isArray(a)&&a.length>1?[...a.slice(0,-1),e.linkedClearField]:[e.linkedClearField];i.setFieldValue(t,null)}},children:e.checkboxLabel??e.label});if(S===`text-editor`)return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(n.oi,{value:o??h??``,disabled:Me,placeholder:qe,onChange:e=>{if(Qe){let{error:t}=n.sr(e,Qe,`change`);L(t)}Xe(e)}}),I&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:I})]});if(S===`textarea`)return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(ms,{...$e,rows:e.rows??3,className:`v1-scroll-textarea`}),I&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:I})]});if(S===`date`)return(0,p.jsx)(d.DatePicker,{value:o,disabled:Me,placeholder:qe,style:{width:`100%`},suffixIcon:(0,p.jsx)(f.CalendarOutlined,{}),disabledDate:Qs(e,i,a),defaultPickerValue:$s(e),onChange:t=>{Xe(t),y?.(e,a)}});if(S===`time`)return(0,p.jsx)(d.TimePicker,{value:o,disabled:Me,placeholder:qe,style:{width:`100%`},onChange:e=>Xe(e)});if(S===`file`){let t=e.validations??e.validation??e.rules??[],i=t.find(e=>(typeof e==`string`?e:e?.type)===`fileType`),a=t.find(e=>(typeof e==`string`?e:e?.type)===`fileSize`),s=t.find(e=>(typeof e==`string`?e:e?.type)===`maxFiles`),c=n.Yn(e),u=c?c.exts.map(e=>`.${e}`).join(`,`):i?.value?i.value.split(`,`).map(e=>`.${e.trim().replace(/^\./,``)}`).join(`,`):void 0,h=a?Number(a?.value??5):void 0,g=s?Number(s?.value??1):Ss(e.multiple)?e.maxCount??5:1,v=Array.isArray(o)?o:[],y=v.length<g,b=e=>e?e<1048576?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`:``,x=e=>{let t=String(e??``).split(`.`).pop()?.toLowerCase();return t===`pdf`?(0,p.jsx)(f.FilePdfOutlined,{className:`v1-file-type-icon v1-file-icon-pdf`}):[`doc`,`docx`].includes(t)?(0,p.jsx)(f.FileWordOutlined,{className:`v1-file-type-icon v1-file-icon-word`}):[`xls`,`xlsx`,`csv`].includes(t)?(0,p.jsx)(f.FileExcelOutlined,{className:`v1-file-type-icon v1-file-icon-excel`}):[`jpg`,`jpeg`,`png`,`gif`,`svg`,`webp`].includes(t)?(0,p.jsx)(f.FileImageOutlined,{className:`v1-file-type-icon v1-file-icon-image`}):(0,p.jsx)(f.FileOutlined,{className:`v1-file-type-icon v1-file-icon-default`})},S=e=>{Xe(v.filter((t,n)=>n!==e))},C=async(t,r)=>{let i=[];if(v.some(e=>!(e?.originFileObj instanceof File))&&l&&m&&e?.field)try{let t=await n.ti(l,m,e.field);i=Array.isArray(t?.data)?t.data:[]}catch(e){console.warn(`Unable to resolve presigned document URL:`,e)}let a=e=>String(e??``).split(`?`)[0].split(`#`)[0].split(`/`).pop()?.toLowerCase()??``,o=v.map((e,t)=>{if(e?.originFileObj instanceof File)return{url:URL.createObjectURL(e.originFileObj),name:e.name??e.originFileObj.name??`file`,type:e.originFileObj.type||void 0};let r=a(e?.name??e?.fileName??e?.originalName??e?.url??e?.location),o=i.find(e=>{let t=a(e?.fileName??e?.name??e?.uploadedFileName??e?.originalName??e?.fileUrl??e?.url);return r&&t&&r===t})??i[t]??(v.length===1?i[0]:null),s=o?.fileUrl??o?.downloadUrl??o?.signedUrl??o?.url??e?.fileUrl??e?.downloadUrl??e?.signedUrl??e?.url??e?.thumbUrl??``;return s&&!s.startsWith(`http`)&&!s.startsWith(`blob:`)&&(s=n.xr(s)),{url:s,name:o?.fileName??o?.name??e?.name??`file`,type:o?.mimeType??o?.contentType??e?.type??void 0}}).filter(e=>e.url);if(!o.length){d.message.error(`Unable to resolve a preview URL for this document.`);return}let s=Math.min(r??0,o.length-1);F({open:!0,docs:o,index:s})},w=g>1,T=g-v.length,E=[c?c.hint:u?u.split(`,`).map(e=>e.replace(`.`,``).toUpperCase()).join(`, `):null,h?`up to ${h} MB`:null].filter(Boolean).join(` `),D=w&&v.length>0?[E,`${T} of ${g} remaining`].filter(Boolean).join(` • `):E,O=v.length>0?`Add ${w?`more files`:`file`}`:e.buttonLabel??`Upload ${e.label??`File`}`,k=e=>{if(v.length>=g)return d.Upload.LIST_IGNORE;if(u){let t=(e.name.split(`.`).pop()??``).toLowerCase();if(!u.split(`,`).map(e=>e.replace(/^\./,``).toLowerCase()).includes(t))return d.message.error(c?c.error:i?.message??`Only ${i.value} files are allowed`),d.Upload.LIST_IGNORE}return h!==void 0&&e.size/1024/1024>h&&(d.message.error(a?.message??`File must be smaller than ${h} MB`),d.Upload.LIST_IGNORE)},A=({fileList:e})=>{let t=e.slice(0,g);if(Xe(t),_&&t.length>v.length){let e=t[t.length-1];e?.originFileObj&&_(e.originFileObj)}},j={accept:u,fileList:v,showUploadList:!1,multiple:!0,maxCount:g,beforeUpload:k,onChange:A,disabled:Me},M=v.map((e,t)=>(0,p.jsxs)(`div`,{className:`v1-file-item`,children:[(0,p.jsx)(`div`,{className:`v1-file-item-icon`,children:x(e.name)}),(0,p.jsxs)(`div`,{className:`v1-file-item-info`,children:[(0,p.jsx)(`span`,{className:`v1-file-item-name`,title:e.name,children:e.name}),(0,p.jsx)(`span`,{className:`v1-file-item-meta`,children:e.existing?`Previously uploaded`:`${b(e.size)}${e.size?` • `:``}Uploaded just now`})]}),(0,p.jsxs)(d.Space,{size:6,className:`v1-file-item-actions`,children:[(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EyeOutlined,{}),onClick:()=>C(e,t),className:`v1-file-view-btn`,children:`View`}),(0,p.jsx)(d.Button,{size:`small`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>S(t),className:`v1-file-delete-btn`})]})]},e.uid??t)),N=(0,p.jsx)(r.t,{documents:P.docs,open:P.open,onClose:()=>F(e=>({...e,open:!1})),initialIndex:P.index});if(w){let t=v.length>0?`Upload more ${e.label??`files`}`:e.buttonLabel??`Upload ${e.label??`File`}`;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[y&&(0,p.jsx)(d.Upload,{...j,style:{width:`100%`,display:`block`},children:(0,p.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-center${Me?` v1-upload-dropzone-disabled`:``}`,children:[(0,p.jsxs)(`div`,{className:`v1-upload-dropzone-title-row`,children:[(0,p.jsx)(f.CloudUploadOutlined,{className:`v1-upload-cloud-icon v1-upload-cloud-icon-sm`}),(0,p.jsx)(`span`,{className:`v1-upload-dropzone-title v1-upload-dropzone-title-blue`,children:t})]}),(0,p.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:`Drag & drop or click to upload`}),E&&(0,p.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:E})]})}),v.length>0&&(0,p.jsx)(`div`,{className:`v1-file-grid`,children:M}),y&&v.length>0&&(0,p.jsx)(d.Upload,{...j,style:{display:`inline-block`},children:(0,p.jsx)(d.Button,{type:`link`,size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),className:`v1-add-more-files-btn`,children:`Add more files`})})]}),N]})}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[v.length>0&&(0,p.jsx)(`div`,{className:`v1-file-rows-single`,children:M}),y&&(0,p.jsx)(d.Upload,{accept:u,fileList:v,showUploadList:!1,multiple:!1,maxCount:1,beforeUpload:k,onChange:A,disabled:Me,style:{width:`100%`,display:`block`},children:(0,p.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-single${Me?` v1-upload-dropzone-disabled`:``}`,children:[(0,p.jsx)(f.CloudUploadOutlined,{className:`v1-upload-cloud-icon`}),(0,p.jsx)(`span`,{className:`v1-upload-dropzone-title`,children:O}),D&&(0,p.jsxs)(`span`,{className:`v1-upload-dropzone-sub`,children:[`— `,D]})]})})]}),N]})}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Input,{...$e,type:S===`number`?`number`:S,...S===`number`&&Ss(e.decimal)?{step:`any`}:{},...e.suffix?{suffix:e.suffix}:{}}),I&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:I})]})}function nc({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(ps,{strong:!0,className:`v1-section-label`,children:t})]})}function rc(e){let t=e?.helpText,n=(Array.isArray(t)?t:[t]).map(e=>e==null?``:String(e).trim()).filter(Boolean);if(n.length)return(0,p.jsx)(`span`,{className:`v1-field-help-text`,children:n.map((e,t)=>(0,p.jsx)(ps,{type:`secondary`,className:`v1-field-help-line`,children:e},t))})}function ic({moduleName:e,groupName:r,recordId:i,authToken:a,clientId:o,region:c,breadcrumbItems:l=[],submitText:m=`Update`,cancelPath:g,onSuccess:_,wizardAdapter:v=null,wizardAdapterProps:y=null,fieldNameMap:b={},onFileUpload:x=null,onBeforeSubmit:S=null,extraPayload:C=null,embedded:w=!1,onCancel:T=null,wizard:E,hideFooter:D=!1,uniqueCheckDebounceMs:O=0,formGroups:k,initialValues:A=null,onSubmit:j=null}){let M=Array.isArray(k)?k:null,N=M?null:e,P=(0,h.useNavigate)(),F=(0,h.useLocation)(),[I]=d.Form.useForm(),[L,R]=(0,u.useState)(0);(0,u.useEffect)(()=>(a&&t._(a),()=>{a&&t.r()}),[a]);let[z,B]=(0,u.useState)({}),[V,H]=(0,u.useState)([]),U=(0,u.useMemo)(()=>M?n.An(M,A):V,[M,A,V]),[W,G]=(0,u.useState)([]);(0,u.useEffect)(()=>{if(!N||!i){G([]);return}let t=!1;return n.ti(e,i).then(e=>{t||G(Array.isArray(e)?e:e?.data??[])}).catch(()=>{t||G([])}),()=>{t=!0}},[N,e,i]);let[ee,te]=(0,u.useState)(!1),[ne,re]=(0,u.useState)(``),[ie,ae]=(0,u.useState)(!1),[oe,se]=(0,u.useState)(``),[ce,K]=(0,u.useState)(null),[le,ue]=(0,u.useState)(()=>new Set),[de,fe]=(0,u.useState)(``),pe=o||de,[me,he]=(0,u.useState)({});(0,u.useEffect)(()=>{n.Ci()},[]),(0,u.useEffect)(()=>{let e=!1;return queueMicrotask(()=>{if(!e){if(!N){K(null);return}n.Ta({roleId:localStorage.getItem(`roleId`)},N,{clientId:pe,region:c}).then(t=>{e||K(Array.isArray(t)&&t.length?t:null)}).catch(()=>{e||K(null)})}}),()=>{e=!0}},[N,pe,c]),(0,u.useEffect)(()=>{let e=!1;return queueMicrotask(()=>{if(!e){if(!N){ue(new Set);return}n.xa(N).then(t=>{e||ue(new Set(Array.isArray(t)?t:[]))}).catch(()=>{e||ue(new Set)})}}),()=>{e=!0}},[N]);let q=(0,u.useMemo)(()=>Is(U,e,ce,le),[U,e,ce,le]),ge=(0,u.useMemo)(()=>Rs(U,q,ce),[U,q,ce]),_e=n.in(ge),ve=typeof E==`boolean`?E:_e,ye=d.Form.useWatch(ve?[]:Ls,I),J=(0,u.useMemo)(()=>ge.filter(e=>!e.showIf?.field||Os(e.showIf,Ms(ye??{},e.showIf.field))),[ge,ye]),be=(0,u.useMemo)(()=>n.rn(J),[J]),xe=Math.min(L,Math.max(0,be.length-1)),Se=ve&&be.at(-1)?.content?.type===`success`?be.length-1:-1,Ce=xe===Se,we=xe+1===Se,Te=e=>{R(e),B({})},Ee=n.M({enabled:ve&&!v&&!ee,steps:be,current:xe,setCurrent:Te,form:I,moduleName:e,recordId:i,groups:q,validationNames:n.ln,onValidationFailed:e=>nt(e)}),De=()=>Ee.next(),Oe=(0,u.useCallback)(async(e,t)=>{if(!Array.isArray(t)||t.length<3||typeof t[1]!=`number`)return;let r=t[0],i=t[1],a=q.find(e=>e.name===r);if(!a)return;let o=n.k(a,n.Si().region);if(!o.orderBy)return;await Promise.resolve();let s=I.getFieldValue(r);Array.isArray(s)&&await n.O({group:o,rows:s,rowIndex:i,move:Be.current[r]?.move,confirm:({title:e,body:t,okText:r,cancelText:i,from:a,to:o})=>n.Tr({tone:`suggestion`,title:e,facts:[{label:`This entry is at`,value:`Row ${a+1}`},{label:`It belongs at`,value:`Row ${o+1}`}],body:t,okText:r,cancelText:i})})},[q,I]),ke=(0,u.useCallback)(e=>{let t=n.Si().region,r=q.find(t=>(t.fields??[]).some(t=>t.field===e.field));if(!r)return!1;let i=n.k(r,t),a=i.orderBy?.inProgressField??`currentStudyingHere`;if(e.field!==a||n.C(i))return!1;let o=n.w(i);return n.Er({tone:o?`duplicate`:`overwrite`,title:o?`This has to be completed first`:`You can add this, but they cannot be submitted`,facts:[{label:`Region`,value:t||`Common`},{label:`Entry`,value:r.label??r.name}],body:n.T(i),okText:o?`Got it`:`Keep it anyway`}),o},[q]),Ae=(0,u.useCallback)((e,t)=>{let r=q.find(e=>e.name===t);if(!r)return;let i=n.k(r,n.Si().region),a=i.orderBy?.inProgressField??`currentStudyingHere`;if(e.field!==a)return;let o=n.x(i);return o?[o]:void 0},[q]),[je,Me]=(0,u.useState)(0),Ne=n.$n(O),Pe=Ne>0,Fe=(0,u.useMemo)(()=>Pe?n.Qn(n.Zn):n.Zn,[Pe]),Ie=(0,u.useMemo)(()=>n.ir({checkFieldUnique:Fe,onPendingChange:Me}),[Fe]),Le=(0,u.useMemo)(()=>({checker:Ie,module:e,recordId:i,clientId:pe||void 0,region:c||void 0}),[Ie,e,i,pe,c]),Re=(0,u.useMemo)(()=>n.rr(q),[q]),ze=(0,u.useMemo)(()=>n.Dr(q),[q]),Be=(0,u.useRef)({}),Ve=n.pr({form:I,groups:q,module:e}),He=(0,u.useMemo)(()=>{let e={};return q.forEach(t=>{t.addRow&&(e[t.name]=n.hr(t,{editing:!0}))}),n.kr(ze,e)},[q,ze]),Ue={jobs:{list:`Jobs`,path:`/jobs`,edit:`Edit Job`},candidates:{list:`Candidates`,path:`/candidates`,edit:`Edit Candidate`},submissions:{list:`Submissions`,path:`/submissions`,edit:`Edit Submission`}},We=w?[]:l.length>0?l:(()=>{let t=Ue[Es(e)];return t?[{label:`Home`,href:`/`},{label:t.list,href:t.path},{label:t.edit}]:[]})();(0,u.useEffect)(()=>{if(!N||!i)return;let t=!1;async function n(){try{te(!0),re(``),se(``);let n=await s.r({module:e,id:i,clientId:pe,region:c,group:r});if(t)return;if(H(Array.isArray(n)?n:[]),he(n?.recordMeta??{}),!o){let e=n?.recordMeta??{},r=e=>e&&typeof e==`object`?e.id??e.value??``:e??``,i=String(r(e.clientId)||``),a=String(r(e.jobId)||``);if(!i&&a)try{let e=await s.r({module:`jobs`,id:a});i=String(r(e?.recordMeta?.clientId)||``)}catch{}!t&&i&&i!==de&&fe(i)}}catch(n){console.error(`Failed to fetch ${e} edit data:`,n),t||re(n?.message||`Failed to load record`)}finally{t||te(!1)}}return n(),()=>{t=!0}},[N,e,r,i,o,pe,de,c]),(0,u.useEffect)(()=>{ee||q.length===0||n.mr(I,q)},[ee,q,I]),(0,u.useEffect)(()=>{if(ee||q.length===0||W.length===0)return;let e=new Map;W.forEach(t=>{let n=t?.fieldName||t?.field;n&&(e.has(n)||e.set(n,[]),e.get(n).push(t))});let t={},r=!1;q.forEach(i=>{Ss(i.addRow)||(i.fields??[]).forEach(i=>{if(!i?.field||!n.Ir(i))return;let a=I.getFieldValue(n.gr(i.field));if(Array.isArray(a)?a.length>0:!ws(a))return;let o=e.get(i.field)??(i.fileKey?e.get(i.fileKey):null);if(!o?.length)return;let s=Ss(i.multiple)?Number(i.maxCount??5):1;n._r(t,i.field,o.slice(0,s).map(e=>({uid:String(e._id??e.s3Key??e.fileName),name:e.fileName??e.uniqueName??`file`,status:`done`,url:e.fileUrl??e.s3Key??``,existing:!0,stored:e}))),r=!0})}),r&&I.setFieldsValue(t)},[ee,q,W,I]);let Ge=F.state?.carryFiles;(0,u.useEffect)(()=>{if(ee||!Ge)return;let e=Object.entries(Ge).filter(([,e])=>Array.isArray(e)&&e.length>0);e.length&&(I.setFieldsValue(Object.fromEntries(e)),d.message.info(`The résumé you uploaded has been attached here — save to keep it.`),P(F.pathname+F.search,{replace:!0,state:{...F.state??{},carryFiles:null}}))},[ee,Ge,I,P,F.pathname,F.search,F.state]);let Ke=(0,u.useMemo)(()=>n.On(q.map(e=>({...e,fields:(e.fields??[]).filter(n.Nn)})),Es),[q]),[qe,Je]=(0,u.useState)({});(0,u.useEffect)(()=>{if(Ke.length===0)return;let e=!1;return Ke.forEach(async t=>{let r=n.kn(t,me);if(r)try{let i=await s.r({module:t,id:r}),a=n.Mn(n.jn(i));!e&&Object.keys(a).length>0&&Je(e=>({...e,[t]:a}))}catch(e){console.error(`Carrier prefill fetch failed for ${t}:`,e)}}),()=>{e=!0}},[Ke,me]),(0,u.useEffect)(()=>{if(ee||q.length===0||Object.keys(qe).length===0)return;let e={},t=!1;q.forEach(r=>(r.fields??[]).forEach(r=>{if(!r.field||!r.prefillFromModule||!n.Nn(r))return;let i=qe[Es(r.prefillFromModule)],a=n.Pn(i,r);a!=null&&(n._r(e,r.field,a),t=!0)})),t&&I.setFieldsValue(e)},[qe,ee,q,I]);let Ye=e=>{B(t=>({...t,[e]:!t[e]}))},Xe=(0,u.useMemo)(()=>q.map(e=>`${e.name}:${+!!Ss(e.allowCollapse)}${+!!Ss(e.defaultCollapsed)}`).join(`|`),[q]),Ze=(0,u.useRef)(null);(0,u.useEffect)(()=>{if(!q.length||Ze.current===Xe)return;Ze.current=Xe;let e={};q.forEach((t,n)=>{let r=t.name??t.id??String(n);Ss(t.allowCollapse)&&Ss(t.defaultCollapsed)&&(e[r]=!0)}),B(e)},[Xe,q]);function Qe(t){let r=n.jr(t,q,{module:e});return Object.entries(b).forEach(([e,t])=>{r[e]!==void 0&&(r[t]=r[e],delete r[e])}),r}async function $e(t){if(S&&await Promise.resolve().then(()=>S(t)).catch(()=>!1)===!1)return;let r=(r=i)=>{let a=n.u(q,e,`edit`);if(a&&d.message.success(a),Se>=0){Te(Se);return}if(_)_(r,t);else{let e=n.dn(q);if(!e)n.un(P,{cancelPath:g});else if(e.mode===`back`)n.un(P,{cancelPath:g});else if(e.mode===`route`||e.mode===`detail`){let i=n.fn(e.target,r,t);i?P(i):n.un(P,{cancelPath:g})}}};try{if(ae(!0),se(``),ve&&!v&&Ee.saveViaAction){await Ee.saveThroughAction(t,e=>r(e||i));return}let a=n.Nr(t,q,{indexed:!0,module:e});if(j){await j(t,{moduleName:e,recordId:i,groups:q,payload:{...Qe(t),...C??{}},fileParts:a,allFileParts:n.Nr(t,q,{module:e})}),r();return}if(x&&x.useLegacyUpload){let e=q.flatMap(e=>e.fields??[]).filter(n.Ir);for(let n of e){let e=t[n.field];if(!Array.isArray(e))continue;let r=e.filter(e=>e.originFileObj instanceof File);try{await Promise.all(r.map(e=>x(n.field,e.originFileObj,i)))}catch(e){console.warn(`File upload failed — continuing with save:`,e)}}}await n.ei(e,i,{...Qe(t),...C??{}},x?.useLegacyUpload?[]:a);let o=n.Nr(t,q,{module:e});if(!x?.useLegacyUpload&&o.length>0)try{await n.ni(e,i,o)}catch(e){console.error(`Document registry upload failed during edit:`,e),d.message.warning(`Changes saved, but saving document records failed.`)}if(ve&&!v&&(Ee.markSaved(i,t),!await Ee.afterSave(i,t,r)))return;r()}catch(t){if(console.error(`Failed to update ${e}:`,t),et(t))return;let r=n.l(q,e,`edit`,t?.message);se(r),d.message.error(r)}finally{ae(!1)}}function et(e){let t=n.ar(e,{uniqueRules:Re});return t.length!==0&&(I.setFields(t.map(e=>({name:e.name??e.field,errors:[e.message]}))),B({}),n.c({errorFields:t.map(e=>{let t=e.name??e.field;return{name:Array.isArray(t)?t:[t],errors:[e.message]}})},I),!0)}let tt=e=>$e(Ee.prepareSubmitValues(n.on(I.getFieldsValue(!0),e))),nt=e=>{B({});let t=ve?n.cn(be,e?.errorFields?.[0]?.name):-1;if(ve&&Ee.onSubmitFailed(e,t),t>=0&&t!==xe){R(t),requestAnimationFrame(()=>n.c(e,I));return}n.c(e,I)},[rt,it]=(0,u.useState)({}),at=e=>String(e?.field??``),ot=(e,t)=>typeof e==`function`?e(t):e,st=(e,t,n)=>{if(!e?.field)return!0;let r=ot(n,e.field),i=t(r==null?[e.field]:[...Array.isArray(r)?r:[r],e.field]);switch(e.operator){case`eq`:return String(i??``)===String(e.value??``);case`neq`:return String(i??``)!==String(e.value??``);case`truthy`:return i!=null&&i!==``&&i!==!1;case`falsy`:return i==null||i===``||i===!1;case`notEmpty`:return Array.isArray(i)?i.length>0:!!i;case`in`:return String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(i??``));case`notIn`:return!String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(i??``));default:return!0}},ct=(e,t,n)=>{if(!e)return!0;let r=Array.isArray(e.conditions)?e.conditions.filter(e=>e?.field):[];if(r.length){let i=r.map(e=>st(e,t,n)),a=String(e.logic??`and`).toLowerCase()===`or`,o=a?i.some(Boolean):i.every(Boolean);if(e.field){let r=st(e,t,n);o=a?o||r:o&&r}return o}return st(e,t,n)},lt=e=>!!(e?.field||e?.conditions?.some?.(e=>e?.field)),ut=(t,r,a,s={})=>{let c=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):null,l=c??t.field,f=r===void 0?l:[r,...c??[t.field]],m=a!==void 0&&r!==void 0?[...Array.isArray(a)?a:[a],...Array.isArray(f)?f:[f]]:f,h=t.type===`checkbox`&&(t.options&&t.options.length>0||t.dataSource&&t.dataSource!==`static`),g=!h&&t.type===`checkbox`?`checked`:`value`,_=!!t.editablePermission&&!n.mn(t.editablePermission,e),v=a!==void 0&&r!==void 0?[...Array.isArray(a)?a:[a],r]:null,y=e=>v&&(!s.rowFieldKeys||s.rowFieldKeys.has(e))?v:null,b=n.Vr(t),x=b?n.Hr(t,m,y):null,S=s.inline||s.hideLabel||!h&&t.type===`checkbox`?``:(0,p.jsx)(_s,{form:I,field:t,siblingPrefix:t.labelWhen?.field?y(t.labelWhen.field):v,locked:_}),C=b&&S?(0,p.jsxs)(`span`,{className:`v1-label-with-override`,children:[S,(0,p.jsx)(n.Dn,{form:I,field:t,flagPath:x,fieldPath:m,disabled:_})]}):S,w=s.inline||t.type===`text-editor`||t.type===`file`&&Ss(t.multiple)?24:t.col??12,T=Ys(t,m,y),E=n._n(t),D=s.inline?{flex:`${Number(t.combineWidth)>0?Number(t.combineWidth):1} 1 0`,maxWidth:`none`}:void 0,O=(t.aiActions||[]).filter(e=>e.trigger===`click`),k=(t.aiActions||[]).find(e=>e.trigger===`upload`),A=(0,p.jsx)(d.Form.Item,{label:C,name:f,extra:rc(t),required:qs(t),rules:Js(t,I,m,!1,y,Le,Ae(t,s.groupNameForActions)),dependencies:T,valuePropName:g,getValueFromEvent:t.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,validateTrigger:[`onBlur`,`onChange`],...n.er(t,Ne),children:(0,p.jsx)(tc,{field:t,form:I,name:m,rowFieldKeys:s.rowFieldKeys,moduleName:e,recordId:i,initialValue:t.value,scopeValues:{clientId:o},onAiUpload:k?e=>Ve.runAction(s.groupNameForActions,t,k,e):void 0,formDisabled:Ve.busy,onRegionBlocked:ke,onRowOrderChange:Oe})}),j=E&&!C?(0,p.jsx)(d.Tooltip,{title:E,children:(0,p.jsx)(`span`,{className:`v1-field-tooltip-wrap`,children:A})}):A,M=O.length>0?(()=>{let e=n.fr(O),r=r=>(0,p.jsx)(n.dr,{position:r,actions:e[r],aiActions:Ve,groupName:s.groupNameForActions,field:t},r);return(0,p.jsxs)(`div`,{className:`v1-ai-action-wrap`,children:[r(`top-left`),r(`top-center`),r(`top-right`),j,r(`bottom-left`),r(`bottom-center`),r(`bottom-right`)]})})():j,N=e=>r===void 0?e:[r,e],P=t.verifyAction?(0,p.jsxs)(p.Fragment,{children:[t.verifyResultField&&(0,p.jsx)(d.Form.Item,{name:N(t.verifyResultField),hidden:!0,noStyle:!0,children:(0,p.jsx)(d.Input,{})}),t.verifyTimestampField&&(0,p.jsx)(d.Form.Item,{name:N(t.verifyTimestampField),hidden:!0,noStyle:!0,children:(0,p.jsx)(d.Input,{})})]}):null,F=t.verifyAction?(0,p.jsxs)(`div`,{className:`v1-verify-field-row`,children:[M,(0,p.jsx)(gs,{form:I,field:t,absoluteName:m}),P]}):M,L=b?(0,p.jsxs)(p.Fragment,{children:[F,(0,p.jsx)(d.Form.Item,{name:r===void 0?x[x.length-1]:[r,x[x.length-1]],valuePropName:`checked`,hidden:!0,noStyle:!0,children:(0,p.jsx)(d.Checkbox,{})})]}):F,R=t.prefillWhen?.length?(0,p.jsx)(ys,{form:I,rules:t.prefillWhen,watchPaths:n.Tn(t.prefillWhen,m,n.Vn,y),targetPath:m,resetOnNoMatch:t.prefillWhenReset!==!1},`${t.field}-prefillWhen`):null,z=!s.inline&&n.t(t).length>0,B=e=>z?n.o(t,w,t=>e(n.n(t,y(t.field)))):w;return lt(t.showIf)||z?(0,p.jsxs)(u.default.Fragment,{children:[R,(0,p.jsx)(d.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>!lt(t.showIf)||ct(t.showIf,e,y)?(0,p.jsx)(d.Col,{xs:24,md:B(e),style:D,className:s.inline?`v1-combine-cell`:void 0,children:L}):null})]},t.field):(0,p.jsxs)(u.default.Fragment,{children:[R,(0,p.jsx)(d.Col,{xs:24,md:w,style:D,className:s.inline?`v1-combine-cell`:void 0,children:L})]},t.field)},dt=t=>{let r=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],a=!!t.editablePermission&&!n.mn(t.editablePermission,e),s=(0,p.jsx)(Ns,{field:t,label:t.label,locked:a}),c=n.Rr(t),l=Array.isArray(t.subFields)&&t.subFields.length>0,u=l?t.subFields.map(e=>({...e,show:1,edit:1})):null,m=Math.max(0,Number(t.minRows??0)||0),h=t.maxRows!==void 0&&t.maxRows!==``&&Number(t.maxRows)>0?Number(t.maxRows):0,g=n.Mr(t,t.value);return(0,p.jsx)(d.Col,{xs:24,md:24,children:(0,p.jsx)(d.Form.Item,{label:s,required:qs(t),colon:!1,className:`v1-combine-field`,children:(0,p.jsx)(d.Form.List,{name:r,initialValue:g,rules:[{validator:async(e,n=[])=>{if(qs(t)&&!(l?n.some(e=>Ts(e)):n.some(e=>e!=null&&e!==``&&!(Array.isArray(e)&&e.length===0))))throw Error(`Mandatory Field`);if(m>0&&n.length<m)throw Error(`Keep at least ${m} ${l?`row`:`value`}${m>1?`s`:``}.`)}}],children:(n,{add:a,remove:s},{errors:g})=>(0,p.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[n.map(({key:a,name:h})=>(0,p.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,p.jsx)(d.Button,{type:`text`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>s(h),disabled:n.length<=m,className:`v1-addrow-delete-btn`}),(0,p.jsx)(`div`,{className:`v1-addrow-fields`,children:l?(0,p.jsx)(d.Row,{gutter:[24,0],align:`top`,children:mt(u,h,r[0],!1,t.field)}):(0,p.jsx)(d.Form.Item,{name:[h],noStyle:!0,valuePropName:t.type===`checkbox`&&!t.options?.length?`checked`:`value`,getValueFromEvent:t.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Js(c,I,[...r,h],!1),children:(0,p.jsx)(tc,{field:c,form:I,name:[...r,h],moduleName:e,recordId:i,scopeValues:{clientId:o},formDisabled:Ve.busy,onRegionBlocked:ke,onRowOrderChange:Oe})})})]},a)),(!h||n.length<h)&&(0,p.jsx)(d.Button,{type:`link`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>a(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,p.jsx)(d.Form.ErrorList,{errors:g})]})})})},t.field)},ft=(t,r,a)=>{let s=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],c=!!t.editablePermission&&!n.mn(t.editablePermission,e),l=(0,p.jsx)(Ns,{field:t,label:t.label,locked:c}),u=n.Rr(t),m=Array.isArray(t.subFields)&&t.subFields.length>0,h=m?t.subFields.map(e=>({...e,show:1,edit:1})):null,g=Math.max(0,Number(t.minRows??0)||0),_=t.maxRows!==void 0&&t.maxRows!==``&&Number(t.maxRows)>0?Number(t.maxRows):0,v=[r,...s],y=[...Array.isArray(a)?a:[a],r,...s],b=n.Mr(t,void 0);return(0,p.jsx)(d.Col,{xs:24,md:m?24:t.col??24,children:(0,p.jsx)(d.Form.Item,{label:l,required:qs(t),colon:!1,className:`v1-combine-field`,children:(0,p.jsx)(d.Form.List,{name:v,initialValue:b,rules:m?[{validator:async(e,n=[])=>{if(qs(t)&&!n.some(e=>Ts(e)))throw Error(`Mandatory Field`);if(g>0&&n.length<g)throw Error(`Keep at least ${g} row${g>1?`s`:``}.`)}}]:[],children:(n,{add:r,remove:a},{errors:s})=>(0,p.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[n.map(({key:r,name:s})=>{let c=[...y,s];return(0,p.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,p.jsx)(d.Button,{type:`text`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>a(s),disabled:n.length<=g,className:`v1-addrow-delete-btn`}),(0,p.jsx)(`div`,{className:`v1-addrow-fields`,children:m?(0,p.jsx)(d.Row,{gutter:[24,0],align:`top`,children:mt(h,s,y,!1,t.field)}):(0,p.jsx)(d.Form.Item,{name:[s],noStyle:!0,valuePropName:t.type===`checkbox`&&!t.options?.length?`checked`:`value`,getValueFromEvent:t.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Js(u,I,c,!1),children:(0,p.jsx)(tc,{field:u,form:I,name:c,moduleName:e,recordId:i,scopeValues:{clientId:o},formDisabled:Ve.busy,onRegionBlocked:ke,onRowOrderChange:Oe})})})]},r)}),(!_||n.length<_)&&(0,p.jsx)(d.Button,{type:`link`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>r(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,p.jsx)(d.Form.ErrorList,{errors:s})]})})})},`${a}-${r}-${t.field}`)},pt=(e,t)=>e.filter(e=>e.field&&e.show!==void 0&&!Ss(e.show)).map(e=>{let n=String(e.field).includes(`.`)?String(e.field).split(`.`):e.field,r=t===void 0?n:[t,...Array.isArray(n)?n:[n]];return(0,p.jsx)(d.Form.Item,{name:r,hidden:!0,noStyle:!0,children:(0,p.jsx)(d.Input,{})},`hidden-${e.field}`)}),mt=(e,t,r,i=!1,a)=>{let o=new Set,s=[],c=new Set(e.map(e=>e.field).filter(Boolean)),l=e.filter(e=>e.show===void 0||Ss(e.show));return s.push(...pt(e,t)),l.forEach(e=>{if(Ss(e.addRow)&&t===void 0){s.push(dt(e));return}if(Ss(e.addRow)&&t!==void 0){s.push(ft(e,t,r));return}let u=e.combineKey?.trim?.();if(!u){s.push(ut(e,t,r,{hideLabel:i,groupNameForActions:a,rowFieldKeys:c}));return}let f=`${r??`root`}:${t??`root`}:${u}`;if(o.has(f))return;let m=l.filter(e=>e.combineKey===u);m.forEach(e=>o.add(`${r??`root`}:${t??`root`}:${e.combineKey}`));let h=m.find(e=>e.combineLabel)??e,g=r!==void 0&&t!==void 0?[...Array.isArray(r)?r:[r],t]:null,_=m.find(e=>n.Vr(e))??null,v=e=>g&&(!c||c.has(e))?g:null,y=_?r!==void 0&&t!==void 0?[...Array.isArray(r)?r:[r],t,...String(_.field).includes(`.`)?String(_.field).split(`.`):[_.field]]:String(_.field).includes(`.`)?String(_.field).split(`.`):_.field:null,b=(0,p.jsx)(_s,{form:I,field:h,siblingPrefix:g,combined:!0}),x=_?(0,p.jsxs)(`span`,{className:`v1-label-with-override`,children:[b,(0,p.jsx)(n.Dn,{form:I,field:_,flagPath:n.Hr(_,y,v),fieldPath:y})]}):b,S=m.find(e=>e.combineToggleTarget)?.combineToggleTarget,C=m.find(e=>e.combineToggleLabel)?.combineToggleLabel??`Show range`,w=m.some(e=>Ss(e.combineWrap)),T=Number(m.find(e=>[12,24].includes(Number(e.combineSpan)))?.combineSpan),E=S?m.find(e=>at(e)===S):null,D=E?.field?.includes?.(`.`)?E.field.split(`.`):[E?.field].filter(Boolean),O=E?r!==void 0&&t!==void 0?[r,t,...D]:D.length>1?D:E.field:null,k=m.some(e=>qs(e)),A=[12,24].includes(T)?T:m.length>=3?24:12,j=e=>g&&(!c||c.has(e))?g:null,M=m.some(e=>lt(e.showIf)),N=e=>m.some(t=>!lt(t.showIf)||ct(t.showIf,e,j)),P=(0,p.jsx)(d.Col,{xs:24,md:A,children:(0,p.jsx)(d.Form.Item,{label:x,required:k,colon:!1,className:`v1-combine-field`,children:(0,p.jsx)(d.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let n=O?!ws(e(O)):!1,i=rt[f]??n,a=S&&!i?m.filter(e=>at(e)!==S):m;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Row,{gutter:[8,0],align:`top`,wrap:w,className:`v1-combine-row${w?` v1-combine-row-wrap`:``}`,children:a.map(e=>ut(k?{...e,req:1}:e,t,r,{inline:!0}))}),S&&(0,p.jsxs)(`div`,{className:`v1-combine-range`,children:[(0,p.jsx)(d.Switch,{size:`small`,checked:i,onChange:e=>{!e&&O&&(I.setFieldValue(O,void 0),I.validateFields([O]).catch(()=>{})),it(t=>({...t,[f]:e}))}}),(0,p.jsx)(ps,{type:`secondary`,className:`v1-combine-toggle-label`,children:C})]})]})}})})},f);s.push(M?(0,p.jsx)(d.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>N(e)?P:null},f):P)}),s},ht=e=>{let t=e.name??e.id??``,r=n.Or(ze,t),i=!!r&&r.leaderName!==t,a=r?q.find(e=>e.name===r.leaderName)??e:e,o=Math.max(0,Number(a.minRows??0)||0),s=Math.max(0,Number(a.maxRows??0)||0),c=r?r.memberNames:[t],l=()=>{c.forEach(t=>{let r=q.find(e=>e.name===t)??e;Be.current[t]?.add(n.Lr(r,{editing:!0}))})},u=e=>{c.forEach(t=>Be.current[t]?.remove(e))},m=ve&&!!e.addRow&&n.$(e,q)===`table`,h=Ss(e.sharedRowLabels)||m;return e.addRow?(0,p.jsx)(d.Form.List,{name:t,initialValue:He[e.name]??[],rules:i?[]:[{validator:async(t,n=[])=>{if(!(Ss(e.toggleEnabled)&&e.toggleField&&I.getFieldValue(e.toggleField))){if(o>0&&n.length<o&&a.padRowsOnEdit!==!1)throw Error(`Keep at least ${o} row${o>1?`s`:``}.`);if(Ss(e.requireOne)&&n.some(e=>!Ts(e)))throw Error(`Fill at least one field in each added row.`)}}}],children:(n,{add:r,remove:c,move:g},{errors:_})=>(Be.current[t]={add:r,remove:c,move:g},(0,p.jsxs)(`div`,{className:m?`v1-addrow-wrapper v1-addrow-wrapper--table`:`v1-addrow-wrapper`,children:[(0,p.jsx)(`div`,{className:`v1-addrow-topbar`,children:i?(0,p.jsxs)(ps,{type:`secondary`,className:`v1-addrow-linked-hint`,children:[`Rows added via `,a.label??a.name]}):(!s||n.length<s)&&(0,p.jsx)(d.Button,{type:`link`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:l,className:`v1-addrow-add-btn`,children:e.addLabel??`Add ${e.label??`Row`}`})}),h&&n.length>0&&(0,p.jsx)(d.Row,{gutter:[24,0],className:`v1-addrow-header`,children:e.fields.filter(e=>e.show===void 0||Ss(e.show)).map(e=>(0,p.jsx)(d.Col,{md:e.col??12,className:`v1-addrow-header-label`,children:e.label},at(e)))}),n.map(({key:r,name:i})=>(0,p.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,p.jsx)(d.Button,{type:`text`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),disabled:n.length<=o,onClick:()=>u(i),className:`v1-addrow-delete-btn`}),(0,p.jsx)(`div`,{className:`v1-addrow-fields`,children:(0,p.jsx)(d.Row,{gutter:[24,0],align:`top`,children:mt(e.fields,i,t,h,t)})})]},r)),(0,p.jsx)(d.Form.ErrorList,{errors:_})]}))}):(0,p.jsx)(d.Row,{gutter:[24,0],children:mt(e.fields,void 0,void 0,!1,t)})},gt=e=>q.filter(t=>t!==e&&t.mergeInto&&String(t.mergeInto)===String(e.name)),_t=e=>!!(e.mergeInto&&q.some(t=>t!==e&&String(t.name)===String(e.mergeInto))),vt=(e,t)=>gt(e).filter(e=>String(e.mergePosition??`bottom`)===t),yt=(e,t)=>{let n=e.name??e.id??String(t),r=ht(e),i=vt(e,`top`),a=vt(e,`bottom`),o=e=>{let t=(0,p.jsxs)(`div`,{className:`v1-merged-group`,children:[(0,p.jsx)(`div`,{className:`v1-merged-group-title`,children:e.label??e.name}),ht(e)]},e.name),n=e.showIf?.field?(0,p.jsx)(js,{form:I,showIf:e.showIf,render:()=>t},e.name):t;return(0,p.jsx)(As,{form:I,group:e,inheritParent:!1,children:n},e.name)};return(0,p.jsx)(d.Card,{className:`v1-card v1-edit-card`,title:(0,p.jsx)(nc,{icon:bs[t%bs.length],title:e.label??e.name??`Details`}),extra:(0,p.jsxs)(d.Space,{size:8,align:`center`,className:`v1-group-actions`,children:[(0,p.jsx)(Ps,{group:e}),(0,p.jsx)(Fs,{group:e}),Ss(e.allowCollapse)&&(0,p.jsx)(d.Button,{type:`text`,size:`small`,"aria-expanded":!z[n],"aria-label":z[n]?`Expand section`:`Collapse section`,icon:z[n]?(0,p.jsx)(f.DownOutlined,{}):(0,p.jsx)(f.UpOutlined,{}),onClick:e=>{e.stopPropagation(),Ye(n)}})]}),children:(0,p.jsx)(d.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:t})=>{let s=Ss(e.toggleEnabled)&&e.toggleField&&!!t(e.toggleField);return(0,p.jsxs)(`div`,{style:{display:z[n]||s?`none`:`block`},children:[i.map(o),r,a.map(o)]})}})},n)};return(0,p.jsxs)(`main`,{children:[We.length>0&&(0,p.jsx)(n.Dt,{items:We}),ve&&v?(0,p.jsx)(v,{...y??{},mode:`edit`,moduleName:e,recordId:i,configuredSteps:be,configuredGroups:ge}):(0,p.jsxs)(`div`,{className:`v1-edit-page`,children:[(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[ve&&!ee&&(0,p.jsx)(n.en,{steps:be,current:xe,errorStep:Ee.errorStep,onSelectCompleted:Ce||Ee.busy?void 0:Te}),(0,p.jsx)(d.Spin,{fullscreen:!0,spinning:Ve.busy,size:`large`,tip:Ve.loadingText||`Reading the file…`}),(0,p.jsxs)(d.Spin,{spinning:ee,tip:`Loading form fields…`,children:[ne&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:ne,style:{marginBottom:16}}),oe&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:oe,style:{marginBottom:16}}),(0,p.jsxs)(d.Form,{form:I,layout:`vertical`,colon:!1,className:`v1-form`,disabled:Ve.busy,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),onFinish:ve?tt:$e,onFinishFailed:nt,children:[ve?(0,p.jsx)(n.W,{step:be[xe],steps:be,current:xe,form:I,onGoToStep:Te,moduleName:e,notice:(0,p.jsx)(n.A,{runtime:Ee,current:xe}),actionResult:Ee.actionResult,savedRecord:Ee.savedRecord,stepBusy:Ee.busy===`enter`,recordId:Ee.recordId,formContent:q.filter(e=>!_t(e)).map((e,t)=>{let r=n.sn(be,e,t);return(0,p.jsx)(`div`,{className:`v1-form-wizard__panel`,hidden:r!==xe,children:(0,p.jsx)(As,{form:I,group:e,children:e.showIf?.field?(0,p.jsx)(js,{form:I,showIf:e.showIf,render:()=>yt(e,t)}):yt(e,t)})},e.name??`grp-${t}`)})}):q.filter(e=>!_t(e)).map((e,t)=>(0,p.jsx)(As,{form:I,group:e,children:e.showIf?.field?(0,p.jsx)(js,{form:I,showIf:e.showIf,render:()=>yt(e,t)}):yt(e,t)},e.name??`grp-${t}`)),!ee&&!ne&&q.length===0&&(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`No form fields are configured.`})]})]})]}),!D&&(0,p.jsxs)(`div`,{className:w?`v1-footer v1-footer--embedded`:`v1-footer`,children:[(0,p.jsx)(ps,{type:`secondary`,children:`All unsaved changes will be lost if you cancel and reload.`}),(0,p.jsxs)(d.Space,{size:12,children:[(0,p.jsx)(d.Button,{onClick:()=>w&&T?T():n.un(P,{cancelPath:g}),children:Ce?`Close`:`Cancel`}),ve&&xe>0&&!Ce&&(0,p.jsx)(n.tn,{disabled:!!Ee.busy,onClick:()=>Te(xe-1)}),ve&&xe<be.length-1&&!we?(0,p.jsx)(n.nn,{onClick:De,loading:Ee.busy===`next`,disabled:ee||ie||je>0||!!Ee.busy}):Ce?null:(0,p.jsx)(vs,{form:I,groups:q,onClick:()=>I.submit(),disabled:ee||ie||je>0||!!Ee.busy,loading:ie||Ee.busy===`finish`,children:m})]})]})]})]})}var{Text:ac}=d.Typography;function oc(e,t){return{key:String(e?.key??`step-${t+1}`),title:e?.title||`Step ${t+1}`,description:e?.description||``,content:e?.content||{type:`form`},groups:e?.groups||[]}}function sc(e=[],t=[]){return n.in(e)?n.rn(e):t.map(oc)}function cc(e){try{return JSON.stringify(e)}catch{return null}}function lc(e,t=[],{enabled:n=!0}={}){let r=Array.isArray(t)?t:[],i=cc(r),[a,o]=(0,u.useState)({signature:i,steps:r}),c=i===null?a.signature!==null||a.steps!==r:a.signature!==i;c&&o({signature:i,steps:r});let l=c?r:a.steps,d=(0,u.useMemo)(()=>l.map(oc),[l]),f=!!(n&&e),[p,m]=(0,u.useState)({key:null,loading:!0,steps:d,error:``});(0,u.useEffect)(()=>{let t=!1;if(!f)return;let n={moduleName:e,source:l};return s.r({module:e}).then(e=>{t||m({key:n,loading:!1,steps:sc(e,l),error:``})}).catch(e=>{t||m({key:n,loading:!1,steps:l.map(oc),error:e?.message||`Could not load the configured wizard.`})}),()=>{t=!0}},[f,e,l]);let h=f&&(!p.key||p.key.moduleName!==e),g=f&&(h||p.loading),_=f&&!h?p.steps:d,v=f&&!h?p.error:``;return(0,u.useMemo)(()=>({loading:g,steps:_,error:v}),[g,_,v])}function uc({steps:e=[],current:t=0,onCurrentChange:r,allowCompletedStepSelection:i=!0,renderStep:a,loading:o=!1,configError:s=``,canGoNext:c=!0,onNext:l,onBack:m,onFinish:h,firstNextLabel:g=`Save & Next`,nextLabel:_=`Next`,finishLabel:v=`Save and close`,cancelLabel:y,onCancel:b,minimumContentHeight:x=400,footerHint:S,nextBlockedReason:C}){let w=Math.min(Math.max(0,t),Math.max(0,e.length-1)),T=w===e.length-1,[E,D]=(0,u.useState)(``),O=(0,u.useRef)(!1),[k,A]=(0,u.useState)(null),j=(0,u.useRef)(null);(0,u.useEffect)(()=>{k&&n.j(j.current)},[k]);let M=async(e,t,n)=>{if(!O.current){O.current=!0,D(e),A(null);try{await t()}catch(e){A({kind:`error`,index:w,message:e?.message||`This step could not be completed.`,retry:n})}finally{O.current=!1,D(``)}}},N=()=>{if(O.current)return;let t=e=>{e!==!1&&r?.(Math.max(0,w-1))};return m?M(`back`,async()=>t(await m(w,e[w]))):t(void 0)},P=c?``:String((typeof C==`function`?C(e[w],w):C)??``).trim(),F=()=>{if(O.current)return;if(!c){P&&A(e=>({kind:`blocked`,index:w,message:P,token:(e?.token??0)+1}));return}let t=t=>{t!==!1&&(A(null),r?.(Math.min(e.length-1,w+1)))};return l?M(`next`,async()=>t(await l(w,e[w])),F):t(void 0)},I=()=>{if(!(!h||O.current))return M(`finish`,()=>h(w,e[w]),I)},L=k&&k.index===w?k:null,R=!!E;return e.length?(0,p.jsxs)(`section`,{className:`v1-dynamic-wizard`,"aria-label":`Guided workflow`,children:[s&&(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,closable:!0,title:`Using the safe default step layout`,description:s}),(0,p.jsx)(n.en,{steps:e,current:w,errorStep:L?w:-1,onSelectCompleted:o||R||!i?void 0:r}),(0,p.jsx)(d.Spin,{spinning:o,children:(0,p.jsxs)(`div`,{className:`v1-dynamic-wizard__content`,style:{minHeight:x},children:[L&&(0,p.jsx)(`div`,{ref:j,tabIndex:-1,className:`v1-wizard-notice v1-wizard-notice__focus`,children:(0,p.jsx)(d.Alert,{showIcon:!0,role:`alert`,type:L.kind===`error`?`error`:`warning`,message:L.message,action:L.retry?(0,p.jsx)(d.Button,{size:`small`,onClick:L.retry,disabled:R,children:`Try again`}):void 0})}),a?.(e[w],w)]})}),(0,p.jsxs)(`footer`,{className:`v1-dynamic-wizard__footer`,children:[S?(0,p.jsx)(ac,{type:`secondary`,className:`v1-dynamic-wizard__hint`,children:S}):null,(0,p.jsxs)(d.Space,{wrap:!0,children:[b&&(0,p.jsx)(d.Button,{onClick:b,disabled:o,children:y||`Cancel`}),(0,p.jsx)(n.tn,{disabled:w===0||o||R,loading:E===`back`,onClick:N}),T?(0,p.jsx)(d.Button,{type:`primary`,loading:o||E===`finish`,disabled:R,onClick:I,children:v}):(0,p.jsxs)(d.Button,{type:`primary`,loading:o||E===`next`,disabled:o||R||!c&&!P,onClick:F,children:[w===0?g:_,` `,(0,p.jsx)(f.RightOutlined,{})]})]})]})]}):(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,title:`No wizard steps are configured.`})}var dc=new Map;function fc(){try{return localStorage.getItem(`roleId`)??localStorage.getItem(`role_id`)??``}catch{return``}}function pc(e){return`${fc()}|${e}`}function mc(e,{rethrow:t=!1}={}){let r=pc(e);if(!dc.has(r)){let t=n.Xr(e);dc.set(r,t),t.catch(()=>{dc.delete(r)})}let i=dc.get(r);return t?i:i.catch(()=>({actions:[],actionRules:[]}))}function hc(){dc.clear()}function gc(e){let[t,n]=(0,u.useState)({actions:[],actionRules:[]});return(0,u.useEffect)(()=>{if(!e)return;let t=!1;return mc(e).then(e=>{t||n(e)}),()=>{t=!0}},[e]),t}function _c(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function vc(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(_c(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(_c(t?.[n]??(n===`_id`?t?.id:n===`id`?t?._id:void 0))))}function yc(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function bc(e,n,{navigate:r,location:i,module:a,onDone:o,input:s=null}={}){let c=s&&typeof s==`object`?s:null;if(e.actionType===`copy`){let t=yc(n,e.copyField||`id`)??n?._id;navigator.clipboard.writeText(_c(t)).then(()=>d.message.success(`Copied to clipboard`)).catch(()=>d.message.error(`Could not copy to clipboard`));return}if(e.actionType===`api`&&e.apiPath){let r=()=>{let r=vc(e.apiPath,n),i=String(e.apiMethod||`POST`).toUpperCase();return t.o(t.S,r.startsWith(`/`)?r:`/${r}`,{method:i,body:[`GET`,`DELETE`].includes(i)?void 0:JSON.stringify({ids:[n?._id??n?.id],records:[n],...c?{input:c}:{}})}).then(()=>{d.message.success(`${e.label} completed`),o?.(e)}).catch(t=>d.message.error(t.message||`${e.label} failed`))};if(e.danger)d.Modal.confirm({title:`${e.label}?`,content:`This cannot be undone.`,okText:e.label,okButtonProps:{danger:!0},onOk:r});else return r();return}if(e.actionType===`modal`){r(`/popup/${e.popupKey||e.key}`,{state:{background:i,selectedIds:[n?._id??n?.id],selectedRecords:[n],moduleName:a,popupContext:c?{...e.popupState??{},...c}:e.popupState??{},popupAction:{key:e.key,apiMethod:e.apiMethod,apiPath:e.apiPath,defaultTemplateId:e.defaultTemplateId,requireJobId:e.requireJobId,popupFieldOverrides:e.popupFieldOverrides},...e.popupState,...c??{}}});return}let l=e.routeTemplate||e.route;if(l){let t=vc(l,n),i=t.startsWith(`/`)?t:`/${t}`;if(e.linkTarget===`_blank`){window.open(i,`_blank`,`noopener`);return}r(i)}}var xc={delete:(0,p.jsx)(f.DeleteOutlined,{}),edit:(0,p.jsx)(f.EditOutlined,{}),mail:(0,p.jsx)(f.MailOutlined,{}),shareAlt:(0,p.jsx)(f.ShareAltOutlined,{}),swap:(0,p.jsx)(f.RightOutlined,{}),thunderbolt:(0,p.jsx)(f.ThunderboltOutlined,{}),userAdd:(0,p.jsx)(f.UserAddOutlined,{}),userSwitch:(0,p.jsx)(f.UserSwitchOutlined,{})};function Sc(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function Cc(e,t,r,i){let a=n.At(e,t,i),o=n.Nt(e.key,t,r,i),s={key:e.key,label:a?a.label:e.label||e.key,icon:xc[e.icon]??void 0,danger:e.danger||void 0,disabled:!!a||!!o,title:a?a.label:o||void 0};return e.children?.length&&(s.children=e.children.map(e=>Cc(e,t,r,i))),s}function wc(e){let t=[];for(let n of e)t.push(n),n.children?.length&&t.push(...wc(n.children));return t}function Tc({module:e,record:t,scope:r,onDone:i,fallback:a=null}){let o=(0,h.useNavigate)(),s=(0,h.useLocation)(),{actions:c,actionRules:l}=gc(e),u=i=>!(i.showInList===!1||!n.mn(i.permission,e)||i.permissionKey&&!n.pn(Sc(t,`actionPermission.${i.permissionKey}`))||n.Mt(i.key,t,l,r)||i.allowedTabs?.length&&r&&!i.allowedTabs.some(e=>String(e).toLowerCase()===String(r).toLowerCase())),m=(c??[]).filter(u).map(e=>e.children?.length?{...e,children:e.children.filter(u)}:e);if(!m.length)return a;let g=n=>bc(n,t,{navigate:o,location:s,module:e,onDone:i}),_=new Map(wc(m).map(e=>[String(e.key),e]));return(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:m.map(e=>Cc(e,t,l,r)),onClick:({key:e,domEvent:i})=>{i?.stopPropagation?.();let a=_.get(String(e));a&&a.actionType!==`group`&&!n.At(a,t,r)&&g(a)}},children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.MoreOutlined,{}),onClick:e=>e.stopPropagation(),"aria-label":`Row actions`})})}var Ec=15e3,Dc=3e5,Oc=1e3,kc=`core-theme:admin-actions-changed`,Ac=new Map,jc=new Set,Mc=0,Nc=0;function Pc(){Mc+=1,jc.forEach(e=>e())}function Fc(e){return jc.add(e),()=>jc.delete(e)}if(typeof window<`u`){let e=()=>{Ac.clear(),hc(),Pc()};window.addEventListener(`auth:login`,e),window.addEventListener(`auth:logout`,e),window.addEventListener(kc,()=>{Ac.forEach(e=>{e.stale=!0}),hc(),Nc=Date.now(),Pc()})}function Ic(e){let t=Number(e?.ttlMs);return Number.isFinite(t)&&t>0?Math.max(Oc,t):Dc}function Lc(e){let t=new Map;return(Array.isArray(e)?e:[]).forEach(e=>{e?.key&&t.set(String(e.key),e),(Array.isArray(e?.children)?e.children:[]).forEach(e=>{e?.key&&t.set(String(e.key),e)})}),t}function Rc(e,t){let n=pc(e),r=Ac.get(n);r||(r={keys:null,loading:!1,failedAt:0,loadedAt:0,stale:!1},Ac.set(n,r));let i=!!r.keys&&!r.loading&&(r.stale||Date.now()-r.loadedAt>=Ic(t));return i&&(r.stale=!1,Nc<=r.loadedAt&&(hc(),Nc=Date.now())),(i||!r.keys)&&!r.loading&&Date.now()-r.failedAt>=Ec&&(r.loading=!0,mc(e,{rethrow:!0}).then(e=>{r.keys=Lc(e?.actions),r.loading=!1,r.loadedAt=Date.now(),Pc()},()=>{r.loading=!1,r.failedAt=Date.now(),r.keys&&(r.keys=null,Pc()),setTimeout(Pc,Ec)})),r}function zc(e,t){return e&&typeof e==`object`?{module:String(e.module??t??``).trim(),key:String(e.key??``).trim()}:{module:String(t??``).trim(),key:String(e??``).trim()}}function Bc(e,t,r){let{module:i,key:a}=zc(e,t);if(!i||!a)return!1;let o=Rc(i,r).keys?.get(a);return o?n.mn(o.permission,i):!1}function Vc(){return(0,u.useSyncExternalStore)(Fc,()=>Mc,()=>Mc)}function Hc(e,t,n){return Vc(),Bc(e,t,n)}var{Text:Uc}=d.Typography;function Wc(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function Gc(e){return e.value??e.fieldName??e.name??e.label}function Kc(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}var qc=[{key:`name`,label:`Name`},{key:`designation`,label:`Designation`},{key:`locationExp`,label:`Location / Exp`},{key:`skills`,label:`Skills`},{key:`createdOn`,label:`Created On`}];function Jc({record:e,fields:t,selected:n,onSelect:r}){let i=(0,h.useNavigate)(),a=(0,h.useLocation)(),o=t.find(e=>e.cardRole===`name`),s=t.find(e=>e.cardRole===`subtitle`),c=t.find(e=>e.cardRole===`location`),l=t.find(e=>e.cardRole===`skills`),u=t.find(e=>e.cardRole===`exp`),m=t.find(e=>e.cardRole===`date`),g=t.find(e=>e.cardRole===`action`),_=o?Kc(e,o.key):`-`,v=s?Kc(e,s.key):``,y=c?Kc(e,c.key):``,b=u?Kc(e,u.key):``,x=m?Kc(e,m.key):``,S=l?e[l.key]:[],C=Array.isArray(S)?S:[],w=C.slice(0,3),T=C.slice(3),E=g?.render?g.render(Kc(e,g.key),e):null;function D(){i(`/popup/preview`,{state:{background:a,moduleName:`candidate`,record:e,fields:qc}})}function O(){i(`/popup/mail`,{state:{background:a}})}return(0,p.jsxs)(`div`,{className:`param-card${n?` param-card--selected`:``}`,children:[(0,p.jsxs)(`div`,{className:`param-card__header`,children:[(0,p.jsxs)(`div`,{className:`param-card__header-left`,children:[(0,p.jsxs)(`div`,{className:`param-card__name-row`,children:[(0,p.jsx)(d.Checkbox,{checked:n,onChange:r,onClick:e=>e.stopPropagation(),className:`param-card__checkbox`}),(0,p.jsx)(f.EyeOutlined,{className:`param-card__eye-icon`,onClick:D}),(0,p.jsxs)(`span`,{className:`param-card__name-block`,children:[(0,p.jsx)(Uc,{className:`param-card__name`,children:_}),v&&v!==`-`&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`span`,{className:`param-card__sep`,children:`·`}),(0,p.jsx)(Uc,{className:`param-card__subtitle`,children:v})]})]})]}),y&&y!==`-`&&(0,p.jsxs)(`div`,{className:`param-card__location`,children:[(0,p.jsx)(f.EnvironmentOutlined,{className:`param-card__location-icon`}),(0,p.jsx)(Uc,{className:`param-card__location-text`,children:y})]})]}),(0,p.jsx)(`div`,{className:`param-card__header-right`,children:(0,p.jsxs)(`span`,{className:`param-card__exp-badge`,children:[`Exp: `,b&&b!==`-`?b:`-`]})})]}),(0,p.jsxs)(`div`,{className:`param-card__body`,children:[(0,p.jsxs)(`div`,{className:`param-card__body-left`,children:[(0,p.jsx)(Uc,{className:`param-card__section-label`,children:`Skills`}),(0,p.jsxs)(`div`,{className:`param-card__skills-row`,children:[w.length>0?w.map(e=>(0,p.jsx)(d.Tag,{className:`sourcing-skill-tag`,children:e},e)):(0,p.jsx)(Uc,{className:`param-card__empty`,children:`-`}),T.length>0&&(0,p.jsx)(d.Popover,{trigger:`click`,placement:`bottomLeft`,overlayClassName:`sourcing-skills-popover`,content:(0,p.jsx)(`div`,{className:`sourcing-skills-popup`,children:T.map(e=>(0,p.jsx)(d.Tag,{className:`sourcing-skill-tag`,children:e},e))}),children:(0,p.jsxs)(`span`,{className:`sourcing-more-skills`,children:[`+`,T.length]})})]})]}),x&&x!==`-`&&(0,p.jsxs)(`div`,{className:`param-card__body-right`,children:[(0,p.jsx)(Uc,{className:`param-card__section-label param-card__section-label--right`,children:`Created on`}),(0,p.jsx)(Uc,{className:`param-card__date-value`,children:x})]})]}),(0,p.jsx)(`div`,{className:`param-card__divider`}),(0,p.jsxs)(`div`,{className:`param-card__footer`,children:[(0,p.jsxs)(`div`,{className:`param-card__footer-left`,children:[(0,p.jsx)(d.Tooltip,{title:`Resume`,children:(0,p.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Resume`,children:(0,p.jsx)(f.FileTextOutlined,{})})}),(0,p.jsx)(d.Tooltip,{title:`Call`,children:(0,p.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Call`,children:(0,p.jsx)(f.PhoneOutlined,{})})}),(0,p.jsx)(d.Tooltip,{title:`Email`,children:(0,p.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Email`,onClick:O,children:(0,p.jsx)(f.MailOutlined,{})})})]}),(0,p.jsx)(`div`,{className:`param-card__footer-right`,children:E})]})]})}function Yc({listName:e=`List`,moduleName:t=``,actions:r=[],fields:i=[],dataSource:a=[],loading:o=!1,total:s,current:c,pageSize:l,onPageChange:m,onPageSizeChange:g,className:_=``,activeView:v=`card`,onViewChange:y}){let b=(0,h.useNavigate)(),x=(0,h.useLocation)(),[S,C]=(0,u.useState)(``),[w,T]=(0,u.useState)({current:1,pageSize:12}),[E,D]=(0,u.useState)([]),[O,k]=(0,u.useState)([]),A=typeof c==`number`&&typeof l==`number`,j=A?{current:c,pageSize:l}:w,M=e=>{let t=e.id??e._id;D(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t]),k(n=>n.some(e=>(e.id??e._id)===t)?n.filter(e=>(e.id??e._id)!==t):[...n,e])},N=r.filter(e=>!e.maxSelect||E.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:E.length===0,onClick:()=>{if(E.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:E,selectedRecords:O});return}e.route&&b(e.route,{state:{background:x,selectedIds:E,selectedRecords:O,moduleName:t,...e.popupState??{}}})}}})),P=(0,u.useMemo)(()=>i.map(e=>({...e,key:Gc(e),label:Wc(e)})).filter(e=>e.key&&e.label),[i]),F=typeof s==`number`?s:a.length,I=(0,u.useMemo)(()=>{let e=S.toLowerCase();return!e||e.length<3?a:a.filter(t=>P.some(n=>String(Kc(t,n.key)).toLowerCase().includes(e)))},[a,P,S]),L=(0,u.useMemo)(()=>{if(A)return I;let e=(j.current-1)*j.pageSize;return I.slice(e,e+j.pageSize)},[j.current,j.pageSize,I,A]);return(0,p.jsxs)(`div`,{className:`antd param-card-view ${_}`.trim(),children:[(0,p.jsx)(d.Card,{children:(0,p.jsxs)(d.Flex,{align:`center`,justify:`space-between`,children:[(0,p.jsxs)(d.Flex,{align:`center`,gap:6,children:[(0,p.jsx)(Uc,{className:`param-card-view__tab-label`,children:e}),(0,p.jsx)(`span`,{className:`param-card-view__count`,children:F}),E.length>0&&r.length>0&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Dropdown,{menu:{items:N},trigger:[`click`],children:(0,p.jsxs)(d.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[`Actions `,(0,p.jsx)(f.DownOutlined,{className:`job-actions-caret`})]})}),(0,p.jsxs)(Uc,{className:`job-selected-count`,children:[`Selected (`,E.length,`)`]})]})]}),(0,p.jsxs)(d.Flex,{align:`center`,gap:8,children:[(0,p.jsx)(d.Input,{prefix:(0,p.jsx)(f.SearchOutlined,{className:`job-search-icon`}),placeholder:`Search by name, location, skills`,value:S,onChange:e=>{C(e.target.value),A?m?.(1):T(e=>({...e,current:1}))},allowClear:!0,className:`job-search-input`}),(0,p.jsx)(d.Tooltip,{title:`Filter`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button`,icon:(0,p.jsx)(f.FilterOutlined,{})})}),(0,p.jsx)(d.Tooltip,{title:`Card view`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${v===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),onClick:()=>y?.(`card`)})}),(0,p.jsx)(d.Tooltip,{title:`List view`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${v===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,p.jsx)(f.UnorderedListOutlined,{}),onClick:()=>y?.(`list`)})})]})]})}),(0,p.jsx)(d.Spin,{spinning:o,children:L.length>0?(0,p.jsx)(`div`,{className:`param-card-view__grid`,children:L.map((e,t)=>(0,p.jsx)(Jc,{record:e,fields:P,selected:E.includes(e.id??e._id),onSelect:()=>M(e)},e.id??e.key??t))}):!o&&(0,p.jsx)(`div`,{className:`param-card-view__empty`,children:`No results found`})}),(0,p.jsx)(n.si,{current:j.current,pageSize:j.pageSize,total:F,onChange:e=>{A?m?.(e):T(t=>({...t,current:e}))},onPageSizeChange:e=>{A?g?.(e):T({current:1,pageSize:e})}})]})}var{Text:Xc}=d.Typography;function Zc(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function Qc(e){return e.value??e.fieldName??e.name??e.label}function $c(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}function el(e,t){return(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(`span`,{children:e}),(0,p.jsx)(d.Badge,{count:t,overflowCount:9999})]})}function tl({listName:e=`List`,fields:t=[],actions:r=[],dataSource:i=[],loading:a=!1,total:o,current:s,pageSize:c,onPageChange:l,onPageSizeChange:m,onSearch:g,rowSelection:_=!0,className:v=``,tableClassName:y=`job-list-table`,activeView:b=`list`,onViewChange:x}){let S=(0,h.useNavigate)(),C=(0,h.useLocation)(),[w,T]=(0,u.useState)(`all`),[E,D]=(0,u.useState)(``),[O,k]=(0,u.useState)([]),[A,j]=(0,u.useState)([]),[M,N]=(0,u.useState)({current:1,pageSize:10}),[P,F]=(0,u.useState)([]),[I,L]=(0,u.useState)(!1),R=(0,u.useRef)(null),z=r.filter(e=>!e.maxSelect||O.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:O.length===0,onClick:()=>{if(O.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:O,selectedRecords:A});return}e.route&&S(e.route,{state:{background:C,selectedIds:O,selectedRecords:A,...e.popupState??{}}})}}})),B=typeof s==`number`&&typeof c==`number`,V=B?{current:s,pageSize:c}:M,H=(0,u.useMemo)(()=>t.map(e=>({...e,key:Qc(e),label:Zc(e)})).filter(e=>e.key&&e.label&&!e.tableHidden),[t]),U=P.length?P:H.map(e=>e.key),W=(0,u.useMemo)(()=>{if(g)return i;let e=E.toLowerCase();return!e||e.length<3?i:i.filter(t=>H.some(n=>String($c(t,n.key)).toLowerCase().includes(e)))},[i,H,g,E]),G=typeof o==`number`?o:E.trim()?W.length:i.length,ee=(0,u.useMemo)(()=>{if(B)return W;let e=(V.current-1)*V.pageSize;return W.slice(e,e+V.pageSize)},[V.current,V.pageSize,W,B]),te=(0,u.useMemo)(()=>H.filter(e=>U.includes(e.key)).map(e=>({title:e.label,dataIndex:e.key,key:e.key,sorter:e.sorter===!1?!1:e.sorter??((t,n)=>String($c(t,e.key)).localeCompare(String($c(n,e.key)))),width:e.width??180,fixed:e.fixed,ellipsis:e.ellipsis??!0,className:e.className,render:(t,n,r)=>e.render?e.render(t,n,r):(0,p.jsx)(Xc,{className:`job-cell-primary`,children:$c(n,e.key)})})),[H,U]),ne=U.length===H.length,re=U.length>0&&!ne,ie=(e,t)=>{F(n=>{let r=n.length?n:H.map(e=>e.key);return t?r.includes(e)?r:[...r,e]:r.filter(t=>t!==e)})},ae=(0,p.jsxs)(`div`,{className:`column-visibility-menu`,onClick:e=>e.stopPropagation(),children:[(0,p.jsx)(d.Checkbox,{checked:ne,indeterminate:re,onChange:e=>{F(e.target.checked?H.map(e=>e.key):[])},children:`Select All`}),H.map(e=>(0,p.jsx)(d.Checkbox,{checked:U.includes(e.key),onChange:t=>ie(e.key,t.target.checked),children:e.label},e.key))]});return(0,p.jsxs)(`div`,{className:`antd dynamic-list-view ${v}`.trim(),children:[(0,p.jsx)(d.Card,{children:(0,p.jsxs)(d.Flex,{align:`center`,justify:`space-between`,children:[(0,p.jsx)(d.Tabs,{activeKey:w,items:[{key:`all`,label:el(e,G)}],onChange:e=>{T(e),N({...M,current:1})}}),(0,p.jsxs)(d.Flex,{align:`center`,gap:8,children:[(0,p.jsx)(d.Input,{prefix:(0,p.jsx)(f.SearchOutlined,{className:`job-search-icon`}),placeholder:`Min 3 Chars to search`,value:E,onChange:e=>{let t=e.target.value;D(t),g?(clearTimeout(R.current),R.current=setTimeout(()=>{g(t),l?.(1)},350)):B?l?.(1):N({...M,current:1})},allowClear:!0,className:`job-search-input`}),(0,p.jsx)(d.Tooltip,{title:`Filter`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button`,icon:(0,p.jsx)(f.FilterOutlined,{})})}),(0,p.jsx)(d.Tooltip,{title:`Card view`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${b===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),onClick:()=>x?.(`card`)})}),(0,p.jsx)(d.Tooltip,{title:`List view`,children:(0,p.jsx)(d.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${b===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,p.jsx)(f.UnorderedListOutlined,{}),onClick:()=>x?.(`list`)})})]})]})}),(0,p.jsx)(d.Card,{children:(0,p.jsxs)(d.Flex,{align:`center`,gap:3,children:[(0,p.jsx)(d.Dropdown,{open:I,onOpenChange:L,trigger:[`click`],dropdownRender:()=>ae,placement:`bottomLeft`,overlayClassName:`column-visibility-dropdown`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(`img`,{src:n.Ct,alt:``,className:`job-action-list-icon`}),size:`small`,className:`job-actions-button`})}),O.length>0&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Dropdown,{menu:{items:z},trigger:[`click`],children:(0,p.jsxs)(d.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[(0,p.jsx)(`img`,{src:`data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.6279%206.78121C12.6857%206.88148%2012.7014%207.00057%2012.6715%207.11239C12.6417%207.22422%2012.5688%207.31967%2012.4688%207.37785L7.21875%2010.4403C7.15185%2010.4794%207.0758%2010.4999%206.99836%2010.4999C6.92092%2010.4999%206.84487%2010.4794%206.77797%2010.4403L1.52797%207.37785C1.42936%207.31859%201.35806%207.22289%201.32951%207.11145C1.30095%207.00001%201.31744%206.88181%201.37539%206.78244C1.43335%206.68306%201.52811%206.61052%201.63916%206.5805C1.75022%206.55048%201.86863%206.56542%201.96875%206.62207L7%209.55605L12.0312%206.62207C12.1315%206.56428%2012.2506%206.54858%2012.3624%206.57841C12.4743%206.60824%2012.5697%206.68116%2012.6279%206.78121ZM1.3125%204.37496C1.31267%204.29833%201.33297%204.22309%201.37136%204.15677C1.40975%204.09045%201.46489%204.03538%201.53125%203.99707L6.78125%200.934566C6.84815%200.895555%206.9242%200.875%207.00164%200.875C7.07908%200.875%207.15513%200.895555%207.22203%200.934566L12.472%203.99707C12.5381%204.0356%2012.5929%204.09076%2012.6309%204.15707C12.669%204.22337%2012.6891%204.2985%2012.6891%204.37496C12.6891%204.45142%2012.669%204.52654%2012.6309%204.59285C12.5929%204.65915%2012.5381%204.71432%2012.472%204.75285L7.22203%207.81535C7.15513%207.85436%207.07908%207.87491%207.00164%207.87491C6.9242%207.87491%206.84815%207.85436%206.78125%207.81535L1.53125%204.75285C1.46489%204.71453%201.40975%204.65946%201.37136%204.59314C1.33297%204.52682%201.31267%204.45159%201.3125%204.37496ZM2.61844%204.37496L7%206.93105L11.3816%204.37496L7%201.81886L2.61844%204.37496ZM7.65625%2011.7993L7%2012.1821L1.96875%209.24707C1.86913%209.19747%201.75436%209.18769%201.64779%209.21973C1.54122%209.25177%201.45087%209.32322%201.39512%209.41953C1.33937%209.51583%201.32241%209.62977%201.3477%209.73814C1.37299%209.84651%201.43863%209.94117%201.53125%2010.0028L6.78125%2013.0653C6.84815%2013.1044%206.9242%2013.1249%207.00164%2013.1249C7.07908%2013.1249%207.15513%2013.1044%207.22203%2013.0653L8.09703%2012.5551C8.14746%2012.5266%208.19171%2012.4883%208.22723%2012.4426C8.26275%2012.3968%208.28882%2012.3444%208.30394%2012.2885C8.31906%2012.2326%208.32291%2012.1742%208.31529%2012.1167C8.30766%2012.0593%208.28871%2012.004%208.25952%2011.9539C8.23033%2011.9039%208.19149%2011.8601%208.14526%2011.8252C8.09903%2011.7903%208.04632%2011.7649%207.9902%2011.7505C7.93408%2011.7361%207.87566%2011.7331%207.81833%2011.7414C7.761%2011.7498%207.70591%2011.7695%207.65625%2011.7993Z'%20fill='%236B7280'/%3e%3cpath%20d='M10.6036%2011.3825L13.4607%209.4477C13.5813%209.36599%2013.614%209.20256%2013.5341%209.08069L13.0105%208.282C12.9303%208.15966%2012.7665%208.12478%2012.6434%208.20383L9.54053%2010.1964L8.94939%2011.4054C8.84904%2011.6106%209.03632%2011.8387%209.25715%2011.7803L10.4338%2011.469C10.4561%2011.4631%2010.4776%2011.4543%2010.4977%2011.4429L10.6036%2011.3825ZM9.54053%2010.1964L10.6036%2011.3825'%20stroke='%236B7280'%20stroke-width='0.6'/%3e%3c/svg%3e`,alt:``,className:`job-actions-frame-icon`}),`Actions `,(0,p.jsx)(f.DownOutlined,{className:`job-actions-caret`})]})}),(0,p.jsxs)(Xc,{className:`job-selected-count`,children:[`Selected (`,O.length,`)`]})]})]})}),(0,p.jsx)(d.Spin,{spinning:a,children:(0,p.jsx)(d.Table,{rowSelection:_?{type:`checkbox`,selectedRowKeys:O,onChange:(e,t)=>{k(e),j(t)}}:void 0,columns:te,dataSource:ee,size:`middle`,scroll:{x:`max-content`},showSorterTooltip:!1,tableLayout:`auto`,pagination:!1,className:y,rowKey:e=>e.id??e.key})}),(0,p.jsx)(n.si,{current:V.current,pageSize:V.pageSize,total:G,onChange:e=>{B?l?.(e):N(t=>({...t,current:e}))},onPageSizeChange:e=>{B?m?.(e):N({current:1,pageSize:e})}})]})}var nl=[`both`,`slider`,`inputs`];function rl({field:e,value:t,onChange:n,disabled:r}){let i=Number(e.min??0),a=Number(e.max??30),o=nl.includes(e.display)?e.display:`both`,[s,c]=Array.isArray(t)&&t.length===2?t:[void 0,void 0],l=e.fromLabel??`From`,u=e.toLabel??`To`,f=e.unit??``,m=String(e.minLabel??``).trim()||String(i),h=String(e.maxLabel??``).trim()||String(a),g=e.marks??{[i]:m,[a]:h},_=(e,t)=>t?.userTyping?t.input:e==null||e===``?``:Number(e)===i?m:Number(e)===a?h:String(e),v=e=>{let t=String(e??``).trim();return t===``?``:t===h?String(a):t===m?String(i):t.replace(/[^0-9.-]/g,``)},y=e=>{let t=e[0]===null||e[0]===void 0||e[0]===``?void 0:Number(e[0]),r=e[1]===null||e[1]===void 0||e[1]===``?void 0:Number(e[1]);if(t===void 0&&r===void 0){n(void 0);return}if(t!==void 0&&r!==void 0){n([Math.min(t,r),Math.max(t,r)]);return}n([t,r])};return(0,p.jsxs)(`div`,{className:`sbv1-range`,children:[o!==`inputs`&&(0,p.jsx)(d.Slider,{range:!0,min:i,max:a,marks:g,disabled:r,value:[s??i,c??a],onChange:y}),o!==`slider`&&(0,p.jsxs)(d.Space,{size:8,className:`sbv1-range-inputs`,children:[(0,p.jsx)(`span`,{className:`sbv1-range-label`,children:l}),(0,p.jsx)(d.InputNumber,{size:`small`,min:i,max:a,disabled:r,value:s??i,"aria-label":l,formatter:_,parser:v,onChange:e=>y([e,c])}),(0,p.jsx)(`span`,{className:`sbv1-range-label`,children:u}),(0,p.jsx)(d.InputNumber,{size:`small`,min:i,max:a,disabled:r,value:c??a,"aria-label":u,formatter:_,parser:v,onChange:e=>y([s,e])}),f&&(0,p.jsx)(`span`,{className:`sbv1-range-label`,children:f})]})]})}rl.propTypes={field:g.default.object.isRequired,value:g.default.array,onChange:g.default.func.isRequired,disabled:g.default.bool};var il=[{key:`today`,label:`Today`},{key:`yesterday`,label:`Yesterday`},{key:`last7`,label:`Last 7 Days`},{key:`last30`,label:`Last 30 Days`},{key:`last3Months`,label:`Last 3 Months`},{key:`last6Months`,label:`Last 6 Months`},{key:`thisMonth`,label:`This Month`},{key:`lastMonth`,label:`Last Month`},{key:`custom`,label:`Custom Range`}];function al(e){let t=(0,m.default)();switch(e){case`today`:return[t.startOf(`day`),t.endOf(`day`)];case`yesterday`:{let e=t.subtract(1,`day`);return[e.startOf(`day`),e.endOf(`day`)]}case`last7`:return[t.subtract(6,`day`).startOf(`day`),t.endOf(`day`)];case`last30`:return[t.subtract(29,`day`).startOf(`day`),t.endOf(`day`)];case`last3Months`:return[t.subtract(3,`month`).startOf(`day`),t.endOf(`day`)];case`last6Months`:return[t.subtract(6,`month`).startOf(`day`),t.endOf(`day`)];case`thisMonth`:return[t.startOf(`month`),t.endOf(`day`)];case`lastMonth`:{let e=t.subtract(1,`month`);return[e.startOf(`month`),e.endOf(`month`)]}default:return[null,null]}}function ol(e){return e?(0,m.default)(e).endOf(`day`).toISOString():null}function sl(e){return e?(0,m.default)(e).startOf(`day`).toISOString():null}var{RangePicker:cl}=d.DatePicker;function ll({field:e,value:t,onChange:n,disabled:r}){let i=t&&typeof t==`object`?t:{},a=i.preset,o=e=>{if(e===`custom`){n({preset:e,from:null,to:null});return}let[t,r]=al(e);n({preset:e,from:sl(t),to:ol(r)})},s=e=>{let[t,r]=Array.isArray(e)?e:[null,null];n({preset:`custom`,from:sl(t),to:ol(r)})},c=a===`custom`&&(i.from||i.to)?[i.from?(0,m.default)(i.from):null,i.to?(0,m.default)(i.to):null]:null;return(0,p.jsxs)(`div`,{className:`sbv1-date-range-preset`,children:[(0,p.jsx)(d.Select,{value:a,disabled:r,allowClear:!0,placeholder:e.placeholder??`Select date`,options:il.map(({key:e,label:t})=>({value:e,label:t})),onChange:o,onClear:()=>n(void 0)}),a===`custom`&&(0,p.jsx)(cl,{style:{width:`100%`,marginTop:8},disabled:r,value:c,disabledDate:e=>e&&e.isAfter((0,m.default)(),`day`),onChange:s})]})}ll.propTypes={field:g.default.object.isRequired,value:g.default.object,onChange:g.default.func.isRequired,disabled:g.default.bool};var ul=new Set([`AND`,`OR`]),dl=new Set([`AND`,`OR`,`NOT`]);function fl(e){let t=String(e??``),n=[],r=0;for(;r<t.length;){let e=t[r];if(/\s/.test(e)){r+=1;continue}if(e===`(`||e===`)`){n.push({type:e===`(`?`lparen`:`rparen`,value:e}),r+=1;continue}if(e===`"`){let e=t.indexOf(`"`,r+1);if(e===-1){n.push({type:`unterminated`,value:t.slice(r)});break}n.push({type:`term`,value:t.slice(r+1,e),quoted:!0}),r=e+1;continue}let i=r;for(;i<t.length&&!/[\s()"]/.test(t[i]);)i+=1;let a=t.slice(r,i),o=a.toUpperCase();n.push(dl.has(o)?{type:`operator`,value:o}:{type:`term`,value:a}),r=i}return n}var pl=[{pattern:/&&/,message:`Use AND instead of &&.`},{pattern:/\|\|/,message:`Use OR instead of ||.`},{pattern:/(?:^|\s)!(?=\S)/,message:`Use NOT instead of !.`}],ml=4,hl=12,gl=[`query`],_l=new Set(gl);function vl(e){return Array.isArray(e)?e.length===1&&_l.has(e[0]):_l.has(e)}function yl(e){let t=[],n=[],r=String(e??``).trim();if(!r)return{valid:!0,errors:t,warnings:n};pl.forEach(({pattern:e,message:n})=>{e.test(r)&&t.push(n)});let i=fl(r);i.some(e=>e.type===`unterminated`)&&t.push(`Unclosed quote — every " needs a closing ".`);let a=0,o=0,s=!1;i.forEach(e=>{e.type===`lparen`?(a+=1,o=Math.max(o,a)):e.type===`rparen`&&(--a,a<0&&(s=!0,a=0))}),(s||a>0)&&t.push(`Unbalanced parentheses.`);let c=i.filter(e=>e.type!==`unterminated`),l=[];return c.forEach((e,r)=>{let i=c[r-1],a=c[r+1];if(e.type===`operator`){let n=ul.has(e.value),r=!i||i.type===`lparen`||i.type===`operator`&&ul.has(i.value);n&&r&&t.push(`"${e.value}" needs a term before it.`),(!a||a.type===`rparen`)&&t.push(`"${e.value}" needs a term after it.`)}e.type===`lparen`&&a?.type===`rparen`&&t.push(`Empty parentheses.`),e.type===`term`&&(l.push({token:e,index:r}),!e.quoted&&e.value.length===1&&n.push(`"${e.value}" is a single character and will match very broadly.`),/[*?]/.test(e.value)&&n.push(`"${e.value}" — * and ? are matched as literal characters here, not wildcards.`))}),t.length===0&&l.length>0&&l.every(({index:e})=>{for(let t=e-1;t>=0;--t){let e=c[t];if(e.type!==`lparen`)return e.type===`operator`&&e.value===`NOT`}return!1})&&n.push(`This query is only exclusions and will match nearly everyone.`),o>ml&&n.push(`Nested ${o} levels deep — consider simplifying so it stays easy to verify.`),l.length>hl&&n.push(`${l.length} terms in one query — consider narrowing it.`),{valid:t.length===0,errors:[...new Set(t)],warnings:[...new Set(n)]}}function bl(e,t,n,r){let i=String(e??``),a=Math.max(0,Math.min(t??i.length,i.length)),o=Math.max(a,Math.min(n??a,i.length)),s=i.slice(0,a),c=i.slice(a,o),l=i.slice(o);if(r===`()`||r===`""`){let[e,t]=r===`()`?[`(`,`)`]:[`"`,`"`];return{value:`${s}${e}${c}${t}${l}`,cursor:c?a+c.length+2:a+1}}let u=s+c,d=u.length>0&&!/\s$/.test(u)?` `:``,f=/^\s/.test(l)?``:` `,p=`${d}${r}${f}`,m=!f&&/^\s/.test(l)?1:0;return{value:`${u}${p}${l}`,cursor:u.length+p.length+m}}var xl=`keywords`;function Sl(e){return e===!0||e===1||e===`1`}function Cl(e){if(e==null)return null;if(typeof e==`string`||typeof e==`number`){let t=String(e).trim();return t?{value:t,mandatory:!1}:null}if(typeof e==`object`){let t=String(e.value??e.label??e.name??``).trim();return t?{value:t,mandatory:!!e.mandatory}:null}return null}var wl={terms:[],mandatoryAll:!1,expression:``,generatedExpression:``};function Tl(e){return Array.isArray(e)?{...wl,terms:e.map(Cl).filter(Boolean)}:e&&typeof e==`object`?{terms:Array.isArray(e.terms)?e.terms.map(Cl).filter(Boolean):[],mandatoryAll:!!e.mandatoryAll,expression:typeof e.expression==`string`?e.expression:``,generatedExpression:typeof e.generatedExpression==`string`?e.generatedExpression:``}:typeof e==`string`&&e.trim()?{...wl,terms:[{value:e.trim(),mandatory:!1}]}:{...wl}}function El(e){return e?.type===xl}function Dl(e){return El(e)&&Sl(e.isPrimaryKeyword)}function Ol(e){return String(e?.keywordRole??`include`).toLowerCase()===`exclude`}function kl(e){return Sl(e?.showMandatoryOption)&&!Ol(e)}function Al(e){return String(e?.keywordGroup??``).trim()||String(e?.field??``)}function jl(e){let t=e?.keywordFields;return(Array.isArray(t)?t:t?[t]:[]).map(e=>String(e??``).trim()).filter(Boolean)}function Ml(e){let t=Number(e?.maxKeywords);return Number.isFinite(t)&&t>0?Math.floor(t):50}function Nl(e){let t=new Set,n=[];return e.forEach(e=>{let r=e.toLowerCase();t.has(r)||(t.add(r),n.push(e))}),n}function Pl(e,{booleanMode:t=!1,isPrimary:n=!1}={}){let r=Tl(e);return t&&n?r.expression.trim()!==``:r.terms.length>0}function Fl(e){return Nl(String(e??``).split(`,`).map(e=>e.trim()).filter(Boolean))}var Il={mandatory:[],optional:[],exclude:[]};function Ll(e,t){return e?.type===`operator`&&e.value===t}function Rl(e){if(!e.length)return null;let t=[];for(let n=0;n<e.length;n+=1){let r=e[n];if(n%2==0){if(r.type!==`term`||!String(r.value).trim())return null;t.push(String(r.value).trim())}else if(!Ll(r,`OR`))return null}return e.length%2==1?t:null}function zl(e){let t=[],n=[],r=0,i=()=>{n.length&&t.push(n),n=[]};for(let t of e){if(t.type===`lparen`){if(r+=1,r>1)return null}else if(t.type===`rparen`&&(--r,r<0))return null;if(r===0&&Ll(t,`AND`)){i();continue}if(r===0&&Ll(t,`NOT`)){i(),n.push(t);continue}n.push(t)}return r===0?(i(),t):null}function Bl(e){return e.length>=2&&e[0].type===`lparen`&&e[e.length-1].type===`rparen`?{inner:e.slice(1,-1),wrapped:!0}:{inner:e,wrapped:!1}}function Vl(e){let t=String(e??``).trim();if(!t||yl(t).errors.length)return null;let n=fl(t);if(!n.length)return null;let r=n.some(e=>e.type===`operator`),i=n.some(e=>e.type===`lparen`||e.type===`rparen`);if(!r&&!i){let e=Fl(t);return e.length?{...Il,optional:e}:null}let a=zl(n);if(!a||!a.length)return null;let o=[],s=[],c=null;for(let e of a){if(Ll(e[0],`NOT`)){let{inner:t}=Bl(e.slice(1)),n=Rl(t);if(!n)return null;s.push(...n);continue}let{inner:t,wrapped:n}=Bl(e);if(n){let e=Rl(t);if(!e||c)return null;c=e;continue}if(e.length===1&&e[0].type===`term`){o.push(String(e[0].value).trim());continue}if(a.length===1){let t=Rl(e);if(!t)return null;c=t;continue}return null}if(o.length===1&&!c&&!s.length)return{mandatory:[],optional:Nl(o),exclude:[]};let l={mandatory:Nl(o),optional:Nl(c??[]),exclude:Nl(s)};return l.mandatory.length+l.optional.length+l.exclude.length?l:null}function Hl(e){let t=Tl(e),n=t.expression.trim();if(n!==``&&n!==t.generatedExpression.trim())return t;let r=t.terms.map(e=>e.value).join(`, `);return{...t,expression:r,generatedExpression:r}}function Ul(e,{starsEnabled:t=!0}={}){let n=Tl(e),r=Vl(n.expression);if(!r)return{model:n,exclude:null,converted:!1};let i=new Map(n.terms.map(e=>[e.value.toLowerCase(),e.mandatory])),a=r.mandatory.length===0&&r.exclude.length===0&&!/[()"]/.test(n.expression)&&!fl(n.expression).some(e=>e.type===`operator`),o=(e,n)=>t?a?!!i.get(e.toLowerCase()):n:!1,s=[...r.mandatory.map(e=>({value:e,mandatory:o(e,!0)})),...r.optional.map(e=>({value:e,mandatory:o(e,!1)}))];return{model:{...n,terms:s,mandatoryAll:s.length>0&&s.every(e=>e.mandatory),generatedExpression:n.expression},exclude:r.exclude,converted:!0}}function Wl(e=[],t={},{booleanMode:n=!1}={}){let r=new Map;e.forEach(e=>{if(!El(e)||n&&Dl(e))return;let i=Tl(t[e.field]);if(!i.terms.length)return;let a=Al(e);if(!a)return;r.has(a)||r.set(a,{id:a,fields:jl(e),mandatory:[],optional:[],exclude:[]});let o=r.get(a);if(o.fields.length||(o.fields=jl(e)),Ol(e)){i.terms.forEach(e=>o.exclude.push(e.value));return}let s=kl(e);i.terms.forEach(e=>{s&&e.mandatory?o.mandatory.push(e.value):o.optional.push(e.value)})});let i=[];return r.forEach(e=>{let t={id:e.id,fields:e.fields,mandatory:Nl(e.mandatory),optional:Nl(e.optional),exclude:Nl(e.exclude)};!t.mandatory.length&&!t.optional.length&&!t.exclude.length||i.push(t)}),i.length?i:null}var{TextArea:Gl}=d.Input,{Text:Kl}=d.Typography,ql=`(Java OR J2EE) AND "Spring Boot" NOT Hibernate`;function Jl({field:e,value:t,onChange:n,disabled:r,placeholder:i,booleanEnabled:a,booleanMode:o,onBooleanModeChange:s,serverError:c}){let l=Tl(t),m=Dl(e),h=kl(e),g=Ol(e),_=Ml(e),v=m&&a&&o,[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)(``),C=(0,u.useRef)(null),w=e=>n({...l,...e}),T=e=>w({terms:e,mandatoryAll:e.length>0?e.every(e=>e.mandatory):l.mandatoryAll}),E=e=>{let t=String(e??``).split(`,`).map(e=>e.trim()).filter(Boolean);if(!t.length){b(``);return}let n=[...l.terms],r=new Set(n.map(e=>e.value.toLowerCase())),i=!1;t.forEach(e=>{let t=e.toLowerCase();if(!r.has(t)){if(n.length>=_){i=!0;return}r.add(t),n.push({value:e,mandatory:h&&l.mandatoryAll})}}),S(i?`At most ${_} keywords.`:``),b(``),n.length!==l.terms.length&&T(n)},D=e=>{S(``),T(l.terms.filter((t,n)=>n!==e))},O=e=>{T(l.terms.map((t,n)=>n===e?{...t,mandatory:!t.mandatory}:t))},k=e=>{n({...l,mandatoryAll:e,terms:l.terms.map(t=>({...t,mandatory:e}))})},A=e=>{if(e.key===`Enter`){e.preventDefault(),E(y);return}e.key===`Backspace`&&y===``&&l.terms.length&&D(l.terms.length-1)},j=()=>{S(``),b(``),n({...l,terms:[],mandatoryAll:!1})},M=m&&(0,p.jsxs)(`div`,{className:`sbv1-keywords-header`,children:[(0,p.jsx)(Kl,{strong:!0,className:`sbv1-keywords-title`,children:e.label??`Keywords`}),a&&(0,p.jsxs)(`span`,{className:`sbv1-keywords-toggle`,children:[(0,p.jsx)(d.Switch,{size:`small`,checked:!!o,disabled:r,onChange:s}),(0,p.jsx)(Kl,{type:`secondary`,children:o?`Boolean on`:`Boolean off`})]})]});return v?(0,p.jsxs)(`div`,{className:`sbv1-keywords`,children:[M,(0,p.jsx)(Gl,{autoSize:{minRows:e.rows??3,maxRows:12},value:l.expression,disabled:r,status:c?`error`:void 0,placeholder:e.booleanPlaceholder??ql,onChange:e=>w({expression:e.target.value})}),c&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:c})]}):(0,p.jsxs)(`div`,{className:`sbv1-keywords`,children:[M,(0,p.jsxs)(`div`,{className:`sbv1-keywords-row`,children:[(0,p.jsxs)(`div`,{className:`sbv1-keywords-box${r?` sbv1-keywords-box-disabled`:``}`,onClick:()=>C.current?.focus(),role:`presentation`,children:[l.terms.map((e,t)=>(0,p.jsxs)(d.Tag,{className:`sbv1-keywords-chip`,closable:!r,onClose:e=>{e.preventDefault(),D(t)},children:[h&&(0,p.jsx)(`button`,{type:`button`,className:`sbv1-keywords-star`,"aria-pressed":e.mandatory,"aria-label":e.mandatory?`${e.value} is mandatory`:`Mark ${e.value} as mandatory`,disabled:r,onClick:e=>{e.stopPropagation(),O(t)},children:e.mandatory?(0,p.jsx)(f.StarFilled,{}):(0,p.jsx)(f.StarOutlined,{})}),(0,p.jsx)(`span`,{className:`sbv1-keywords-chip-text`,children:e.value})]},e.value)),(0,p.jsx)(`input`,{ref:C,className:`sbv1-keywords-input`,value:y,disabled:r,placeholder:l.terms.length?e.placeholder??i??`Type another keyword`:i??e.placeholder??`Type another keyword`,onChange:e=>b(e.target.value),onKeyDown:A,onBlur:()=>E(y)})]}),l.terms.length>0&&!r&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`sbv1-keywords-clear`,onClick:j,children:`Clear all`})]}),x&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:x}),h&&!g&&(0,p.jsx)(d.Checkbox,{className:`sbv1-keywords-mandatory`,checked:l.terms.length?l.terms.every(e=>e.mandatory):l.mandatoryAll,disabled:r,onChange:e=>k(e.target.checked),children:`Mark all keywords as mandatory`})]})}Jl.propTypes={field:g.default.object.isRequired,value:g.default.any,onChange:g.default.func.isRequired,disabled:g.default.bool,placeholder:g.default.string,booleanEnabled:g.default.bool,booleanMode:g.default.bool,onBooleanModeChange:g.default.func,serverError:g.default.string};var{TextArea:Yl}=d.Input,{RangePicker:Xl}=d.DatePicker,Zl={};function Ql(e,t){if(!e||typeof t?.render!=`function`)throw Error(`registerFieldType(type, { render }) requires a type name and a render function`);return Zl[e]={booleanEligible:!1,needsOptions:!1,multiValue:!1,...t},Zl[e]}function $l(e){return Zl[e]??Zl.text}function eu(e){return!!$l(e).booleanEligible}function tu(e){let t=$l(e?.type??`text`).ownsLabel;return typeof t==`function`?!!t(e):!!t}function nu(e,t,n){let r=$l(e?.type??`text`).hasValue;if(typeof r==`function`)return!!r(t,n)}function ru(){return Object.entries(Zl).filter(([,e])=>e.booleanEligible).map(([e])=>e)}function iu(e){return`Enter ${String(e.label??e.field??``).toLowerCase()}`}function au(e){return e.multiSelect||e.mode===`multiple`?`multiple`:void 0}function ou(e){return`Select ${String(e.label??e.field??``).toLowerCase()}`}Ql(`text`,{booleanEligible:!1,render:({field:e,value:t,onChange:n,disabled:r,placeholder:i})=>(0,p.jsx)(d.Input,{value:t??``,disabled:r,placeholder:i??iu(e),allowClear:!0,onChange:e=>n(e.target.value)})}),Ql(`email`,{booleanEligible:!1,render:({field:e,value:t,onChange:n,disabled:r,placeholder:i})=>(0,p.jsx)(d.Input,{type:`email`,value:t??``,disabled:r,placeholder:i??iu(e),allowClear:!0,onChange:e=>n(e.target.value)})}),Ql(`textarea`,{booleanEligible:!1,render:({field:e,value:t,onChange:n,disabled:r,placeholder:i})=>(0,p.jsx)(Yl,{rows:e.rows??3,value:t??``,disabled:r,placeholder:i??iu(e),onChange:e=>n(e.target.value)})}),Ql(`number`,{render:({field:e,value:t,onChange:n,disabled:r,placeholder:i})=>(0,p.jsx)(d.InputNumber,{style:{width:`100%`},value:t??null,disabled:r,min:e.min,max:e.max,placeholder:i??iu(e),onChange:n})}),Ql(`select`,{booleanEligible:!1,needsOptions:!0,render:({field:e,value:t,onChange:n,options:r,optionsLoading:i,disabled:a,placeholder:o})=>(0,p.jsx)(d.Select,{mode:au(e),value:t??void 0,disabled:a,options:r,loading:i,allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:o??ou(e),notFoundContent:i?(0,p.jsx)(d.Spin,{size:`small`}):void 0,onChange:n})}),Ql(`multiselect`,{booleanEligible:!1,needsOptions:!0,multiValue:!0,render:({field:e,value:t,onChange:n,options:r,optionsLoading:i,disabled:a,placeholder:o})=>(0,p.jsx)(d.Select,{mode:`multiple`,value:t??void 0,disabled:a,options:r,loading:i,allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:o??ou(e),notFoundContent:i?(0,p.jsx)(d.Spin,{size:`small`}):void 0,onChange:n})}),Ql(`location`,{needsOptions:!0,remoteSearch:!0,fetchOptions:({field:e,search:t})=>n.ma(t,e.limit??50),render:({field:e,value:t,onChange:n,onSearch:r,options:i,optionsLoading:a,disabled:o,placeholder:s})=>(0,p.jsx)(d.Select,{value:t??void 0,disabled:o,mode:au(e),options:i,loading:a,allowClear:!0,showSearch:!0,filterOption:!1,placeholder:s??ou(e),notFoundContent:a?(0,p.jsx)(d.Spin,{size:`small`}):void 0,onSearch:r,onChange:n})}),Ql(`tagify`,{booleanEligible:!1,multiValue:!0,render:({field:e,value:t,onChange:n,disabled:r,placeholder:i})=>(0,p.jsx)(d.Select,{mode:`tags`,value:t??void 0,disabled:r,open:!1,suffixIcon:null,allowClear:!0,tokenSeparators:[`,`],placeholder:i??iu(e),onChange:n})}),Ql(`radio`,{needsOptions:!0,render:({value:e,onChange:t,options:n,disabled:r})=>{let i=n.find(e=>e.locked);return(0,p.jsx)(d.Radio.Group,{className:`sbv1-option-row`,value:i?i.value:e,disabled:r||!!i,options:n,onChange:e=>t(e.target.value)})}}),Ql(`checkbox`,{needsOptions:!0,multiValue:!0,render:({field:e,value:t,onChange:n,options:r,disabled:i})=>{if(r.length===0)return(0,p.jsx)(d.Checkbox,{checked:!!t,disabled:i,onChange:e=>n(e.target.checked),children:e.checkboxLabel??e.label});let a=r.filter(e=>e.locked).map(e=>e.value),o=r.map(e=>e.value),s=Array.isArray(t)?t:[],c=e=>{let t=new Set(e);return o.filter(e=>t.has(e))},l=c([...s,...a]),u=r.map(e=>e.locked?{...e,disabled:!0}:e),f=e=>{n(c([...e,...a]))},m=e.hideSelectAll!==!0&&r.length>1,h=m&&o.every(e=>l.includes(e));return(0,p.jsxs)(`div`,{className:`sbv1-option-row sbv1-checkbox-with-select-all`,children:[m&&(0,p.jsx)(d.Checkbox,{checked:h,disabled:i,onChange:e=>{n(e.target.checked?c(o):c(a))},children:`All`}),(0,p.jsx)(d.Checkbox.Group,{value:l,disabled:i,options:u,onChange:f})]})}}),Ql(`date`,{render:({value:e,onChange:t,disabled:n,placeholder:r})=>(0,p.jsx)(d.DatePicker,{style:{width:`100%`},value:e??null,disabled:n,placeholder:r??`Select date`,onChange:t})}),Ql(`daterange`,{multiValue:!0,render:({value:e,onChange:t,disabled:n})=>(0,p.jsx)(Xl,{style:{width:`100%`},value:e??null,disabled:n,onChange:t})}),Ql(`range`,{multiValue:!0,render:e=>(0,p.jsx)(rl,{...e})}),Ql(`daterangePreset`,{multiValue:!0,render:e=>(0,p.jsx)(ll,{...e})}),Ql(`keywords`,{booleanEligible:!0,multiValue:!0,ownsLabel:e=>Dl(e),hasValue:Pl,render:e=>(0,p.jsx)(Jl,{...e})});var su=300;function cu(e=[]){return Array.isArray(e)?e.map(e=>{if(e==null)return null;if(typeof e==`string`||typeof e==`number`)return{label:String(e),value:e};let t=e.label??e.name??e.value??e.id,n=e.value??e.id??e.name??e.label;return n===void 0?null:{label:String(t??n),value:n,locked:!!e.locked}}).filter(Boolean):[]}function lu({field:e,moduleName:t,value:r,onChange:i,disabled:a,extraProps:o}){let s=$l(e.type??`text`),c=e.dataSource??`static`,l=typeof s.fetchOptions==`function`?s.fetchOptions:null,d=!!s.needsOptions&&(!!l||c!==`static`),f=(0,u.useMemo)(()=>cu(e.options??e.values??[]),[e.options,e.values]),[p,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(``),[_,v]=(0,u.useState)(null),[y,b]=(0,u.useState)(d);return(0,u.useEffect)(()=>{if(!s.remoteSearch||p===h)return;let e=setTimeout(()=>g(p),su);return()=>clearTimeout(e)},[p,h,s.remoteSearch]),(0,u.useEffect)(()=>{if(!d)return;let r=!1;return(async()=>{b(!0);try{let i=l?await l({field:e,search:h,moduleName:t}):await n.ri(t,e.field,``,200,0,{dataSource:c,masterName:e.masterName,groupName:e.groupName}),a=Array.isArray(i)?i:i?.data??i?.values??[];r||v(cu(a))}catch(t){console.error(`[SearchBuilderV1] Failed to load options for "${e.field}":`,t),r||v([])}finally{r||b(!1)}})(),()=>{r=!0}},[d,l,h,c,e.field,e.masterName,e.groupName,e.limit,t]),s.render({field:e,value:r,onChange:i??(()=>{}),options:_??f,optionsLoading:y,disabled:a,placeholder:e.placeholder,moduleName:t,onSearch:s.remoteSearch?m:void 0,...o??{}})}lu.propTypes={field:g.default.object.isRequired,moduleName:g.default.string,value:g.default.any,onChange:g.default.func,disabled:g.default.bool,extraProps:g.default.object};var{TextArea:uu}=d.Input;function du({field:e,value:t,onChange:n,disabled:r,serverError:i}){return(0,p.jsxs)(`div`,{className:`sbv1-boolean-field`,children:[(0,p.jsx)(uu,{rows:e.rows??3,value:t??``,disabled:r,status:i?`error`:void 0,placeholder:e.booleanPlaceholder??`(Java OR J2EE) AND "Spring Boot" NOT Hibernate`,onChange:e=>n(e.target.value)}),i&&(0,p.jsx)(`div`,{className:`v1-input-validator-hint`,children:i})]})}du.propTypes={field:g.default.object.isRequired,value:g.default.string,onChange:g.default.func.isRequired,disabled:g.default.bool,serverError:g.default.string};var fu=new Map;function pu(e){return String(e??``).split(`?`)[0].split(`#`)[0]}function mu(e,t){let n=pu(e);if(!n||typeof t!=`function`)throw Error(`registerSearchPopup(path, Component) requires a route path and a component`);return fu.set(n,t),t}function hu(e){return fu.get(pu(e))}function gu(e){return fu.delete(pu(e))}function _u(e){let t=String(e??``).split(`?`)[1];return t?Object.fromEntries(new URLSearchParams(t.split(`#`)[0]).entries()):{}}var vu=[{value:`self`,label:`Same page`},{value:`newTab`,label:`New tab`},{value:`popup`,label:`Popup`}],yu=vu.map(e=>e.value);function bu(e){let t=String(e?.openAs??``).trim();return yu.includes(t)?t:e?.target===`_blank`?`newTab`:`self`}function xu(e,t){return{key:e?.key||`actionButton${t}`,label:e?.label||`Open`,url:e?.url??``,target:e?.target??`_self`,openAs:e?.openAs??``}}function Su(e){return Array.isArray(e?.actionButtons)?e.actionButtons.filter(e=>e&&e.enabled!==!1).map(xu):e?.actionButtonEnabled?[xu({key:`actionButton`,label:e.actionButtonLabel,url:e.actionButtonUrl,target:e.actionButtonTarget,openAs:e.actionButtonOpenAs},0)]:[]}var Cu={self:({destination:e,navigate:t})=>t(e),newTab:({destination:e})=>window.open(e,`_blank`,`noopener`),popup:({destination:e,openPopup:t,navigate:n})=>{hu(e)&&t(e)||(console.warn(`[SearchBuilderV1] Button is configured to open a popup, but no page is registered for "${pu(e)}" — navigating instead. Register it with registerSearchPopup(path, Component), or point the button at a route that is.`),n(e))}};function wu(e,t){let n=bu(e);return!String(e?.openAs??``).trim()&&n===`self`&&hu(t)?`popup`:n}function Tu(e,t){t?.destination&&(Cu[wu(e,t.destination)]??Cu.self)(t)}var Eu=[{value:`card`,label:`Cards`},{value:`list`,label:`List`}],Du=`card`,Ou=Eu.map(e=>e.value);function ku(e){let t=String(e?.resultsDefaultView??``).trim();return Ou.includes(t)?t:Du}function Au(e){return String(e?.resultsSearchPlaceholder??``).trim()||void 0}var ju=[`query`,`skills`,`jobTitle`,`designation`,`currentLocation`,`experience.from`,`experience.to`,`workExperienceYears`,`sourceType`,`createdFrom`,`createdTo`],Mu=new Set([`experience.from`,`experience.to`,`workExperienceYears`]);function Nu(e,t,n){if(!t.includes(`.`)){e[t]=n;return}let[r,i]=t.split(`.`);e[r]={...e[r]??{},[i]:n}}function Pu(e){return e&&typeof e==`object`&&!Array.isArray(e)?e.value??e.label??e.name??``:e}function Fu(e,t){let n=Pu(t);if(Mu.has(e)){if(n===``||n==null)return;let e=Number(n);return Number.isFinite(e)?e:void 0}if(Array.isArray(n)){let t=n.map(Pu).filter(e=>e!=null&&String(e).trim()!==``);return t.length?e===`sourceType`?t.join(`,`):t.join(` OR `):void 0}let r=String(n??``).trim();return r===``?void 0:r}function Iu(e={},t=[],n={}){let r={},i=!!n.booleanMode;t.forEach(t=>{let n=t.booleanApiKey;if(!n)return;let a=e[t.field];if(El(t)){let e=Tl(a);if(Dl(t)){if(!i)return;let t=e.expression.trim();t&&Nu(r,Array.isArray(n)?n[0]:n,t);return}a=e.terms.map(e=>e.value)}if(a==null||a===``)return;if(Array.isArray(n)){let e;e=Array.isArray(a)?a:a&&typeof a==`object`&&(`from`in a||`to`in a)?[a.from,a.to]:[a],n.forEach((t,n)=>{let i=Fu(t,e[n]);i!==void 0&&Nu(r,t,i)});return}let o=Fu(n,a);o!==void 0&&Nu(r,n,o)}),!r.sourceType&&n.defaultSourceType&&(r.sourceType=n.defaultSourceType);let a=Wl(t,e,{booleanMode:i});return a&&(r.keywordGroups=a),n.module&&(r.module=String(n.module)),r}function Lu(e){return Array.isArray(e.rangeKeys)&&e.rangeKeys.length===2?e.rangeKeys:[`${e.field}From`,`${e.field}To`]}function Ru(e={},t=[]){let n={...e};return t.forEach(t=>{let r=t.type??`text`;if(r===`daterangePreset`){delete n[t.field];return}if(r===`keywords`){let r=Tl(e[t.field]).terms.map(e=>e.value);r.length?n[t.field]=r:delete n[t.field];return}if(!$l(r).multiValue||r!==`range`&&r!==`daterange`)return;let i=e[t.field];if(!Array.isArray(i))return;let[a,o]=Lu(t);delete n[t.field];let[s,c]=i;s!=null&&s!==``&&(n[a]=s),c!=null&&c!==``&&(n[o]=c)}),n}function zu(e={},t=[]){let n=[];return t.forEach(t=>{if(t.type!==`daterangePreset`)return;let r=e[t.field],i=r?.from,a=r?.to;if(!i&&!a)return;let o=t.filterField||t.field;i&&n.push({field:o,op:`gte`,value:i,operator:`and`}),a&&n.push({field:o,op:`lte`,value:a,operator:`and`})}),n}async function Bu(e,n={},{limit:r=10,offset:i=0}={}){if(!e)throw Error(`No boolean search endpoint is configured for this form.`);let a;try{a=await t.o(t.S,e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...n,limit:r,offset:i})})}catch(e){let t=e?.response?.error;throw t&&(e.code=t.code,e.details=t.details,e.response?.message&&(e.message=e.response.message)),e}if(a?.status===!1){let e=Error(a?.message||`Boolean search failed`);throw e.code=a?.error?.code,e.details=a?.error?.details,e}let o=a?.data??a??{},s=Array.isArray(o.items)?o.items:[],c=o.count??{},l=Number(c.total),u={};return Number.isFinite(Number(c.internal))&&(u.internal=Number(c.internal)),Number.isFinite(Number(c.dice))&&(u.dice=Number(c.dice)),{rows:s,total:Number.isFinite(l)?l:s.length,counts:u,sources:Array.isArray(o.sources)?o.sources:[]}}function Vu({moduleName:e,criteria:t={},searchMode:n=`traditional`,sources:r=[],sourceModules:a,scope:o=``,sort:s=``,sortDir:c=``}){let l=String(o??``).trim().toLowerCase(),u=i.o(r);return{...t,module:l&&a?.[l]||e,searchMode:n,...u.length?{sourceType:u.join(`,`)}:{},...l?{scope:l}:{},...s?{sortBy:s}:{},...c?{sortOrder:c}:{}}}function Hu(e,t){return i.o(e).map(e=>{let n=Number(t?.[e]);return{key:e,label:e.charAt(0).toUpperCase()+e.slice(1),...Number.isFinite(n)?{count:n}:{}}})}async function Uu(e){let t=e?.data??e?.items;if(!Array.isArray(t)||t.length===0)return e;let{isDiceResponse:n,mapDiceCandidatesToInternal:r}=await Promise.resolve().then(()=>require("./diceCandidateMapper-BjMhHno3.cjs")).then(e=>e.t);if(!n({data:e}))return e;let i=r(t);return{...e,data:i,items:i}}function Wu({endpoint:e,criteria:n,searchMode:r,sources:i,sourceModules:a}){if(!e)throw Error(`No search endpoint is configured for this form.`);return async function(o,s,c,l={}){let{scope:u,sort:d,sortDir:f}=l,p=Vu({moduleName:o,criteria:n,searchMode:r,sources:i,sourceModules:a,scope:u,sort:d,sortDir:f}),m;try{m=await t.o(t.S,e,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({...p,limit:s,offset:c})})}catch(e){let t=e?.response?.error;throw t&&(e.code=t.code,e.details=t.details,e.response?.message&&(e.message=e.response.message)),e}if(m?.status===!1){let e=Error(m?.message||`Search failed`);throw e.code=m?.error?.code,e.details=m?.error?.details,e}let h=await Uu(m?.data??m??{}),{data:g,..._}=h;return{..._,items:h.items??g??[],tabs:h.tabs?.length?h.tabs:Hu(i,h.count)}}}var{Text:Gu}=d.Typography,Ku=`selectedSource`,qu=new Set([Ku,`source`,`sourceType`,`scope`]),Ju={searched:!1,rows:[],total:0,fields:[],actions:[],actionRules:[],loading:!1};function Yu(e){return Array.isArray(e)?e:Array.isArray(e?.groups)?e.groups:Array.isArray(e?.data?.groups)?e.data.groups:[]}function Xu(e){return e===!0||e===1||e===`1`}function Zu(e){return[Number(e.min??0),Number(e.max??30)]}function Qu(e){if(e.type===`range`)return String(e.defaultRange??``).trim()===`full`?Zu(e):void 0;if(e.type===`daterangePreset`){let t=String(e.defaultPreset??``).trim();if(!t)return;let[n,r]=al(t);return{preset:t,from:sl(n),to:ol(r)}}let t=(Array.isArray(e.options)?e.options:[]).filter(e=>e.locked).map(e=>e.value);if(t.length)return e.type===`radio`?t[0]:t}function $u(e,t){if(e?.type===`range`){if(String(e.defaultRange??``).trim()!==`full`||!Array.isArray(t)||t.length!==2)return!1;let[n,r]=Zu(e);return Number(t[0])===n&&Number(t[1])===r}if(e?.type===`daterangePreset`){let n=String(e.defaultPreset??``).trim();return!!n&&t?.preset===n}return!1}function ed(e,t){return String(e?._id??e?.id??e?.applicantRefrenceId??e?.applicantReferanceId??e?.diceId??e?.profileId??t)}function td(e,t,n){let r=e?nu(e,t,n):void 0;return r===void 0?t==null||t===``||$u(e,t)?!1:!Array.isArray(t)||t.length>0:r}function nd(e,t=[],n={}){let r=new Map(t.map(e=>[e.field,e]));return Object.entries(e??{}).some(([e,t])=>{if(qu.has(e))return!1;let i=r.get(e);return td(i,t,{...n,isPrimary:Dl(i)})})}function rd({moduleName:e,action:r,formType:o=`search`,title:s,migrationJobId:c,sourceModules:l,searchActionContext:m,onBack:g}){let[_]=d.Form.useForm(),v=(0,h.useNavigate)(),[y,b]=(0,u.useState)(null),[x,S]=(0,u.useState)(!0),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(0),[D,O]=(0,u.useState)(`traditional`),[k,A]=(0,u.useState)(`internal`),[j,M]=(0,u.useState)({}),[N,P]=(0,u.useState)([]),[F,I]=(0,u.useState)(Ju),[L,R]=(0,u.useState)({current:1,pageSize:10}),[z,B]=(0,u.useState)(null),[V,H]=(0,u.useState)({}),[U,W]=(0,u.useState)({}),[G,ee]=(0,u.useState)(null),[te,ne]=(0,u.useState)(0),[re,ie]=(0,u.useState)(null),[ae,oe]=(0,u.useState)(null),[se,ce]=(0,u.useState)(!1),K=(0,u.useId)(),[le,ue]=(0,u.useState)(null),de=(0,u.useRef)(!1),fe=(0,u.useCallback)(e=>{de.current&&(de.current=!1,e&&ce(!0))},[]);(0,u.useEffect)(()=>{if(!e)return;let t=!1;return n.oa(e,o,r).then(e=>{t||(b(Array.isArray(e)?e[0]??null:e??null),w(``))}).catch(e=>{t||w(e?.message||`Failed to load the search form configuration.`)}).finally(()=>{t||S(!1)}),()=>{t=!0}},[e,o,r,T]);let pe=()=>{S(!0),E(e=>e+1)},me=(0,u.useMemo)(()=>Yu(y).filter(e=>!Xu(e.hideGroup)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).flatMap(e=>(e.fields??[]).filter(e=>e?.field&&e.show!==0&&!Xu(e.hidden)).slice().sort((e,t)=>Number(e.order??0)-Number(t.order??0))),[y]),he=(0,u.useMemo)(()=>i.r(me,l),[me,l]),q=(0,u.useMemo)(()=>me.some(e=>e.field===Ku),[me]),ge=(0,u.useMemo)(()=>me.find(e=>Dl(e))??null,[me]),_e=!!y?.booleanSearchEnabled&&!!y?.booleanSearchEndpoint&&!!ge,ve=_e&&D===`boolean`,ye=(0,u.useMemo)(()=>ge?[ge]:[],[ge]);(0,u.useEffect)(()=>{me.filter(e=>e.booleanCapable&&!vl(e.booleanApiKey)).forEach(e=>{console.warn(`[SearchBuilderV1] "${e.field}" is marked booleanCapable but its booleanApiKey (${JSON.stringify(e.booleanApiKey)}) is not one of ${gl.join(`, `)} — Boolean now belongs to the common Keywords field only, so this renders as a normal field and its value is matched literally. Clear the flag in Admin → Form Groups.`)})},[me]);let J=(0,u.useMemo)(()=>me.filter(e=>!(ve&&Xu(e.hideInBooleanMode))),[me,ve]),be=(0,u.useCallback)(e=>me.find(t=>El(t)&&Ol(t)&&Al(t)===Al(e)),[me]),xe=e=>{let t={};me.filter(Dl).forEach(n=>{let r=_.getFieldValue(n.field);if(e){t[n.field]=Hl(r);return}let{model:i,exclude:a,converted:o}=Ul(r,{starsEnabled:kl(n)});if(o){if(a?.length){let e=be(n);if(!e)return;t[e.field]={...Tl(_.getFieldValue(e.field)),terms:a.map(e=>({value:e,mandatory:!1})),mandatoryAll:!1}}t[n.field]=i}}),Object.keys(t).length&&(_.setFieldsValue(t),W(e=>({...e,...t}))),M({}),ee(null),O(e?`boolean`:`traditional`)},Se=(0,u.useCallback)(async(t,r,a={})=>{let o=Number(a.pageSize)>0?Number(a.pageSize):L.pageSize,s=Number(a.current),c=Number.isFinite(s)&&s>0?Math.floor(s):1,l=i.o(t?.[Ku]),u=q?r?i.l(r,k):l.includes(`internal`)?`internal`:i.l(t?.[Ku],k):``,f=he[i.c(u)]||e;B(t),R({current:c,pageSize:o}),M({}),I(e=>({...e,loading:!0,searched:!0}));try{let e;if(ve){let n=Iu(t,J,{booleanMode:!0,defaultSourceType:q?y?.booleanDefaultSourceType||u||`internal`:``,module:f});e=await Bu(y.booleanSearchEndpoint,n,{limit:o,offset:(c-1)*o})}else e=await n.ai(f,{...Ru(t,J),...u?{[Ku]:(l.length?l:[u]).join(`,`)}:{}},{limit:o,offset:(c-1)*o},{scope:u,filters:zu(t,J)});let r=Number(e.counts?.[u]),a=Number.isFinite(r)?r:e.total;if(A(u),fe(Number(a)>0||(e.rows?.length??0)>0),I({searched:!0,rows:e.rows,total:a,fields:e.fields??[],actions:e.actions??[],actionRules:e.actionRules??[],loading:!1}),!q){P(e.tabs??[]);return}P(t=>i.i({sources:l.length?l:e.sources,activeSource:u,activeCount:a,responseCounts:e.counts,currentTabs:t,backendTabs:e.tabs}))}catch(e){let t=e?.details?String(e.details):``,n=e?.code===`INVALID_BOOLEAN_QUERY`?ye.find(e=>t.toLowerCase().includes(String(e.field).toLowerCase())):null;n?M({[n.field]:t}):d.message.error(t||e?.message||`Search failed`),I({...Ju,searched:!0})}},[J,ye,q,ve,e,L.pageSize,y,k,fe,he]),Ce=String(y?.searchEndpoint??``).trim(),we=(0,u.useCallback)(e=>{let t=zu(e,J);return{...Iu(e,J,{booleanMode:ve,defaultSourceType:q?y?.booleanDefaultSourceType||`internal`:``}),...t.length?{fieldFilters:t}:{}}},[J,q,ve,y]),Te=(0,u.useMemo)(()=>!Ce||!G?null:Wu({endpoint:Ce,criteria:G,searchMode:ve?`boolean`:`traditional`,sources:re??[],sourceModules:he}),[Ce,G,ve,re,he]),Ee=(0,u.useCallback)(e=>!e?.apiPath||!e?.routeTemplate?e:{...e,onClick:async({selectedRecords:r})=>{let i=r?.[0]??{},o=a.r(i),s=o?{...i,diceId:o}:i,c=n.fn(e.apiPath,s._id??s.id,s);if(!c){d.message.error(`${e.label}: the configured API path is not a valid in-app path.`);return}try{let r=String(e.apiMethod||`POST`).toUpperCase(),a=await t.o(t.S,c,{method:r,body:[`GET`,`DELETE`].includes(r)?void 0:JSON.stringify({ids:[i._id??i.id],records:[i]})});d.message.success(`${e.label} completed`);let o={...s,...a?.data??a??{}},l=n.fn(e.routeTemplate,o._id??o.id,o);l&&v(l)}catch(t){d.message.error(t?.message||`${e.label} failed`)}}},[v]),De=(0,u.useCallback)((e,t)=>{let r=n.Ot(e,t);return fe(Number(r.total)>0||(r.rows?.length??0)>0),{...r,actions:(r.actions??[]).map(Ee)}},[Ee,fe]),Oe=()=>{_.validateFields().then(e=>{if(de.current=!0,Ce){ie(i.o(e?.[Ku])),ee(we(e)),ne(e=>e+1);return}Se(e,void 0,{current:1})}).catch(()=>{de.current=!1,ce(!1),d.message.error(`Fix the highlighted field before searching.`)})},ke=()=>{de.current=!1,ce(!1),_.resetFields(),W({}),M({}),I(Ju),P([]),A(`internal`),ee(null),ie(null)},Ae=(0,u.useCallback)(async(e,t)=>{let n=i.s(e,t);H(e=>({...e,[n]:{...e[n],loading:!0}}));try{await i.u(e,t),H(e=>({...e,[n]:{loading:!1,completed:!0}})),d.message.success(e.successMessage)}catch(t){H(e=>({...e,[n]:{loading:!1}})),d.message.error(t?.message||e.errorMessage)}},[]),je=(0,u.useMemo)(()=>{let e=F.fields?.length?F.fields:(()=>{let e=F.rows[0];return e?Object.keys(e).filter(t=>!t.startsWith(`_`)&&typeof e[t]!=`object`).map(e=>({value:e,field:e,label:e.replace(/([A-Z])/g,` $1`).replace(/^./,e=>e.toUpperCase()),isVisible:!0})):[]})(),t=i.a({rows:F.rows,selectedSource:k});if(!t.length)return e;let n=new Set(t.map(e=>e.field));return[...e.filter(e=>e.cardRole!==`action`&&!n.has(e.value)),...t.map(e=>({value:e.field,field:e.field,label:e.label??`Action`,cardRole:`action`,isVisible:!0,sorter:!1,render:(t,n)=>{if(!i.d(e,n,k))return null;let r=i.s(e,n),a=V[r]??{};return(0,p.jsx)(d.Button,{type:`primary`,size:`small`,loading:a.loading,disabled:!r||a.completed,onClick:()=>Ae(e,n),children:a.completed?e.completedLabel:e.buttonLabel})}}))]},[Ae,F.fields,F.rows,k,V]),Me=(0,u.useMemo)(()=>m??(c?{jobId:c}:null),[m,c]),Ne=(0,u.useMemo)(()=>{if(!Me)return F.actions;let e=t=>({...t,popupState:{...Me,...t.popupState},...t.children?{children:t.children.map(e)}:{}});return(F.actions??[]).map(e)},[F.actions,Me]),Pe=ae??ku(y),Fe=Au(y),Ie=(0,u.useMemo)(()=>Su(y).map(e=>({...e,destination:n.fn(e.url,void 0,Me??{})})),[y,Me]),Le=(0,u.useCallback)(e=>hu(e)?(ue(e),!0):!1,[]),Re=e=>{Tu(e,{destination:e.destination,navigate:v,openPopup:Le})},ze=le?hu(le):null,Be={booleanMode:ve},Ve=ye.some(e=>td(e,U[e.field],{...Be,isPrimary:!0})),He=J.filter(e=>Xu(e.req)&&!td(e,U[e.field],{...Be,isPrimary:Dl(e)})),Ue=He.length>0||(ve?!Ve:!nd(U,J,Be)),We=He.length?`Enter ${He.map(e=>e.label??e.field).join(`, `)} to search.`:ve&&!Ve&&ye.length?`Enter a query in at least one of: ${ye.map(e=>e.label??e.field).join(`, `)}.`:``;return e?x?(0,p.jsx)(`div`,{className:`sbv1-page`,children:(0,p.jsx)(d.Card,{className:`sbv1-card`,children:(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:4}})})}):C?(0,p.jsx)(`div`,{className:`sbv1-page`,children:(0,p.jsx)(d.Card,{className:`sbv1-card`,children:(0,p.jsxs)(d.Space,{direction:`vertical`,align:`center`,style:{width:`100%`},children:[(0,p.jsx)(Gu,{strong:!0,children:`Failed to load the search form`}),(0,p.jsx)(Gu,{type:`secondary`,children:C}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:pe,children:`Retry`})]})})}):me.length?(0,p.jsxs)(`div`,{className:`sbv1-page`,children:[(0,p.jsx)(d.Card,{className:`sbv1-card${se?` sbv1-card-collapsed`:``}`,title:(0,p.jsx)(Gu,{strong:!0,children:s??y?.label??`Search`}),extra:(0,p.jsxs)(d.Space,{size:12,children:[(0,p.jsx)(d.Button,{size:`small`,className:`sbv1-action-btn`,icon:(0,p.jsx)(f.FilterOutlined,{}),onClick:ke,children:`Reset filters`}),(0,p.jsx)(d.Tooltip,{title:We||void 0,children:(0,p.jsx)(d.Button,{size:`small`,className:`sbv1-action-btn`,icon:(0,p.jsx)(f.SearchOutlined,{}),disabled:Ue,loading:F.loading,onClick:Oe,children:`Search`})}),Ie.map(e=>(0,p.jsx)(d.Tooltip,{title:e.destination?void 0:`No valid destination configured`,children:(0,p.jsx)(d.Button,{size:`small`,className:`sbv1-action-btn`,icon:(0,p.jsx)(f.FileTextOutlined,{}),disabled:!e.destination,onClick:()=>Re(e),children:e.label})},e.key)),g&&(0,p.jsx)(d.Button,{size:`small`,className:`sbv1-action-btn`,onClick:g,children:`Back`}),(0,p.jsx)(d.Tooltip,{title:se?`Show filters`:`Hide filters`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,className:`sbv1-collapse-btn`,icon:se?(0,p.jsx)(f.DownOutlined,{}):(0,p.jsx)(f.UpOutlined,{}),"aria-label":se?`Show filters`:`Hide filters`,"aria-expanded":!se,"aria-controls":K,onClick:()=>ce(e=>!e)})})]}),children:(0,p.jsx)(d.Form,{id:K,className:`sbv1-form`,form:_,layout:`vertical`,colon:!1,onValuesChange:(e,t)=>W(t),children:(0,p.jsx)(d.Row,{gutter:[24,0],children:J.map(t=>{let n=ve&&ye.includes(t),r=El(t),i=e=>r?Tl(e).expression:e,a=[];return Xu(t.req)&&a.push({required:!0,message:`${t.label??t.field} is required`}),n&&(a.push({validator:(e,t)=>{let{errors:n}=yl(i(t));return n.length?Promise.reject(Error(n[0])):Promise.resolve()}}),a.push({warningOnly:!0,validator:(e,t)=>{let{warnings:n}=yl(i(t));return n.length?Promise.reject(Error(n[0])):Promise.resolve()}})),(0,p.jsx)(d.Col,{xs:24,sm:12,lg:t.col??12,children:(0,p.jsx)(d.Form.Item,{name:t.field,label:tu(t)?null:t.label??t.field,rules:a.length?a:void 0,initialValue:Qu(t),children:n&&!r?(0,p.jsx)(du,{field:t,serverError:j[t.field]}):(0,p.jsx)(lu,{field:t,moduleName:e,extraProps:r?{booleanEnabled:_e,booleanMode:ve,onBooleanModeChange:xe,serverError:j[t.field]}:void 0})})},t.field)})})})}),Ce&&Te&&(0,p.jsx)(n.rt,{moduleName:e,breadcrumbItems:[],fetchData:Te,responseMapper:De,queryParams:G,rowKey:ed,showSearch:!1,searchPlaceholder:Fe,showAdd:!1,activeView:Pe,onViewChange:oe,showViewToggle:!0,autoCardForExternalRows:!1},te),!Ce&&F.searched&&(0,p.jsx)(n.rt,{moduleName:e,breadcrumbItems:[],dataSource:F.rows,fields:je,total:F.total,loading:F.loading,current:L.current,pageSize:L.pageSize,showSearch:!1,searchPlaceholder:Fe,showAdd:!1,activeView:Pe,onViewChange:oe,showViewToggle:!0,tabs:N,selectedSource:k,onTabChange:e=>Se(z??{},e,{current:1}),onPageChange:(e,t)=>Se(z??{},k,{current:e,pageSize:t}),onPageSizeChange:(e,t)=>Se(z??{},k,{current:1,pageSize:t}),actions:Ne,actionRules:F.actionRules}),(0,p.jsx)(d.Modal,{open:!!ze,onCancel:()=>ue(null),footer:null,width:880,destroyOnClose:!0,className:`sbv1-action-popup`,children:ze&&(0,u.createElement)(ze,{..._u(le),embedded:!0})})]}):(0,p.jsx)(`div`,{className:`sbv1-page`,children:(0,p.jsx)(d.Card,{className:`sbv1-card`,children:(0,p.jsxs)(Gu,{type:`secondary`,children:[`No search fields are configured for “`,e,`”.`]})})}):(0,p.jsx)(`div`,{className:`sbv1-page`,children:(0,p.jsx)(d.Card,{className:`sbv1-card`,children:(0,p.jsx)(Gu,{type:`danger`,children:`moduleName is required.`})})})}rd.propTypes={moduleName:g.default.string.isRequired,action:g.default.string,formType:g.default.string,title:g.default.string,migrationJobId:g.default.oneOfType([g.default.string,g.default.number]),searchActionContext:g.default.object,sourceModules:g.default.object,onBack:g.default.func};var id={active:`green`,approved:`green`,hired:`green`,submitted:`gold`,resubmitted:`purple`,pending:`gold`,draft:`default`,rejected:`red`,inactive:`default`,completed:`blue`,not_submitted:`default`};function ad({status:e}){let t=String(e??`unknown`),n=id[t.toLowerCase()]??`default`;return(0,p.jsx)(d.Tag,{color:n,style:{borderRadius:6,fontWeight:600,fontSize:12,textTransform:`capitalize`},children:t.replace(/_/g,` `)})}function od(e,t){if(!e||typeof e!=`object`)return null;let n=e.key??e.value??e.id??String(t),r=e.label??e.title??e.name??e.tabTitle;return!n||!r?null:{key:String(n),label:String(r),count:e.count??e.countValue}}function sd({tabs:e=[],activeKey:t,onChange:n,className:r=``}){let i=e.map(od).filter(Boolean);if(!i.length)return null;let a=i.some(e=>e.key===t)?t:i[0].key;return(0,p.jsx)(`div`,{className:`stylish-tabs ${r}`.trim(),children:i.map(e=>{let t=e.key===a,r=e.count!=null;return(0,p.jsxs)(`button`,{type:`button`,className:`stylish-tabs__item${t?` stylish-tabs__item--active`:``}`,onClick:()=>n?.(e.key),children:[(0,p.jsx)(`span`,{className:`stylish-tabs__label`,children:e.label}),r&&(0,p.jsx)(d.Badge,{count:e.count,showZero:!0,overflowCount:999,className:`stylish-tabs__badge${t?` stylish-tabs__badge--active`:``}`})]},e.key)})})}var{TextArea:cd}=d.Input;function ld({value:e=``,onChange:t,placeholder:n="e.g. ${{clientRate}} /{{rateType}}",disabled:r=!1,textareaRef:i}){return(0,p.jsx)(cd,{ref:i,value:e,disabled:r,placeholder:n,autoSize:{minRows:2,maxRows:6},spellCheck:!1,onChange:e=>t?.(e.target.value),style:{width:`100%`,fontFamily:`"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace`,fontSize:12,lineHeight:`20px`,resize:`vertical`}})}var ud=[`Weekly`,`Bi-Weekly`,`Monthly`].map(e=>({value:e,label:e})),dd=[7,15,30,45,60,90].map(e=>({value:`NET_${e}`,label:`NET ${e}`}));function fd({search:e,onSearchChange:t,searchPlaceholder:n=`Search employee, client, employer, project…`,monthValue:r,onMonthChange:i,cycleValue:a,onCycleChange:o,termsValue:s,onTermsChange:c,termsOptions:l=dd,statusValue:u,onStatusChange:m,statusOptions:h=[],chips:g=[],activeChips:_=[],onToggleChip:v,onReset:y,onRefresh:b,onExport:x,exporting:S=!1,disabled:C=!1}){return(0,p.jsxs)(`div`,{className:`fin-toolbar`,children:[(0,p.jsxs)(`div`,{className:`fin-toolbar__main`,children:[(0,p.jsxs)(`div`,{className:`fin-toolbar__filters`,children:[(0,p.jsx)(d.Input,{className:`fin-toolbar__search`,size:`large`,allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{className:`fin-toolbar__search-icon`}),placeholder:n,value:e,onChange:e=>t?.(e.target.value),disabled:C}),(0,p.jsx)(d.DatePicker,{className:`fin-toolbar__control`,picker:`month`,allowClear:!0,placeholder:`All months`,value:r,onChange:i,disabled:C}),c?(0,p.jsx)(d.Select,{className:`fin-toolbar__control`,allowClear:!0,placeholder:`Payment terms`,value:s||void 0,onChange:e=>c(e??``),options:l,disabled:C,popupMatchSelectWidth:!1}):null,o?(0,p.jsx)(d.Select,{className:`fin-toolbar__control`,allowClear:!0,placeholder:`Payment cycle`,value:a||void 0,onChange:e=>o(e??``),options:ud,disabled:C,popupMatchSelectWidth:!1}):null,(0,p.jsx)(d.Select,{className:`fin-toolbar__control`,allowClear:!0,placeholder:`Status`,value:u||void 0,onChange:e=>m?.(e??``),options:h,disabled:C,popupMatchSelectWidth:!1})]}),(0,p.jsxs)(`div`,{className:`fin-toolbar__actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Reset filters`,children:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ClearOutlined,{}),onClick:y,disabled:C,"aria-label":`Reset filters`})}),(0,p.jsx)(d.Tooltip,{title:`Refresh`,children:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:b,disabled:C,"aria-label":`Refresh`})}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.DownloadOutlined,{}),onClick:x,loading:S,disabled:C,children:`Export`})]})]}),g.length?(0,p.jsxs)(`div`,{className:`fin-toolbar__chips`,children:[(0,p.jsxs)(`span`,{className:`fin-toolbar__chips-label`,children:[(0,p.jsx)(f.ThunderboltOutlined,{}),` Quick filters`]}),g.map(e=>{let t=_.includes(e.key);return(0,p.jsx)(`button`,{type:`button`,className:`fin-chip${t?` fin-chip--active`:``}`,onClick:()=>v?.(e.key),disabled:C,children:e.label},e.key)})]}):null]})}var pd={regularDayHours:8,standardMaxHours:8,overtimeMaxRegular:16,overtimeMaxWeekOff:24,step:.5,decimals:2,epsilon:.001},md={ST_MAX:`Standard hours cannot exceed 8 hours.`,LEAVE_MAX:`Leave hours cannot exceed 8 hours.`,LEAVE_REMAINING:`Leave hours cannot exceed the remaining regular hours.`,DAY_TOTAL:`Standard + Leave hours cannot exceed 8 hours.`,OT_MAX_REGULAR:`Overtime cannot exceed 16 hours on a regular working day.`,OT_MAX_WEEKOFF:`Overtime cannot exceed 24 hours on a week-off.`,OT_REQUIRES_FULL_STANDARD:`Overtime can only be entered after completing 8 standard working hours.`,WEEKOFF_NA:`Standard and Leave hours are not applicable on a week-off.`,ST_NEGATIVE:`Standard hours cannot be negative.`,OT_NEGATIVE:`Overtime cannot be negative.`,LEAVE_NEGATIVE:`Leave hours cannot be negative.`};function hd(e){let t=Number(e);return Number.isFinite(t)?t:0}function gd(e,t=pd.decimals){let n=10**t;return Math.round(hd(e)*n)/n}function _d(e,t,n,r=pd.decimals){return gd(Math.min(Math.max(hd(e),t),n),r)}function vd(e){return e?.isHoliday?`holiday`:e?.isWeekOff?`weekOff`:`working`}function yd(e,t,n,r,i=!0){e.push({field:t,code:n,message:md[n],blocking:i})}function bd(e,t,n=pd){let r=vd(e),i=gd(t?.ST,n.decimals),a=gd(t?.OT,n.decimals),o=gd(t?.Leave,n.decimals),s=[],c,l;if(r===`holiday`)l=0,c={ST:{min:0,max:0,step:n.step,disabled:!0},OT:{min:0,max:0,step:n.step,disabled:!0},Leave:{min:0,max:0,step:n.step,disabled:!0}};else if(r===`weekOff`)l=n.overtimeMaxWeekOff,c={ST:{min:0,max:0,step:n.step,disabled:!0},OT:{min:0,max:l,step:n.step,disabled:!1},Leave:{min:0,max:0,step:n.step,disabled:!0}},(i>n.epsilon||o>n.epsilon)&&yd(s,`ST`,`WEEKOFF_NA`,n,!1),a<0?yd(s,`OT`,`OT_NEGATIVE`,n):a>l+n.epsilon&&yd(s,`OT`,`OT_MAX_WEEKOFF`,n);else{l=n.overtimeMaxRegular;let e=_d(n.regularDayHours-i,0,n.regularDayHours,n.decimals),t=!1;i<0?(yd(s,`ST`,`ST_NEGATIVE`,n),t=!0):i>n.standardMaxHours+n.epsilon&&(yd(s,`ST`,`ST_MAX`,n),t=!0),t||(o<0?yd(s,`Leave`,`LEAVE_NEGATIVE`,n):o>n.regularDayHours+n.epsilon?yd(s,`Leave`,`LEAVE_MAX`,n):o>e+n.epsilon&&(e<=n.epsilon?yd(s,`ST`,`DAY_TOTAL`,n):yd(s,`Leave`,`LEAVE_REMAINING`,n)));let r=Math.abs(i-n.standardMaxHours)<=n.epsilon;a<0?yd(s,`OT`,`OT_NEGATIVE`,n):a>n.epsilon&&!r?yd(s,`OT`,`OT_REQUIRES_FULL_STANDARD`,n):a>l+n.epsilon&&yd(s,`OT`,`OT_MAX_REGULAR`,n),c={ST:{min:0,max:n.standardMaxHours,step:n.step,disabled:!1},OT:{min:0,max:l,step:n.step,disabled:!r},Leave:{min:0,max:e,step:n.step,disabled:e<=n.epsilon}}}let u=gd(i+o,n.decimals),d=r===`working`?Math.max(0,gd(n.regularDayHours-u,n.decimals)):0,f=r===`working`?Math.max(0,gd(c.Leave.max-o,n.decimals)):0,p=gd(i+a+o,n.decimals),m={ST:null,OT:null,Leave:null};for(let e of s)e.blocking&&!m[e.field]&&(m[e.field]=e.message);return{dayKind:r,values:{ST:i,OT:a,Leave:o},fields:c,regularAllocated:u,regularRemaining:d,leaveRemaining:f,overtimeCap:l,dayTotal:p,isFull:r===`working`&&d<=n.epsilon,violations:s,errorsByField:m,valid:!s.some(e=>e.blocking)}}function xd(e,t,n=[],r=pd){let i=gd(t?.ST,r.decimals),a=gd(t?.Leave,r.decimals),o=gd(t?.OT,r.decimals);if(e===`weekOff`){let e={};return i!==0&&(e.ST=0),a!==0&&(e.Leave=0),Object.keys(e).length?e:null}if(e===`working`){let e={},t=e=>e>=0&&e<=r.regularDayHours+r.epsilon;if(n.includes(`ST`)){let t=_d(r.regularDayHours-i,0,r.regularDayHours,r.decimals);a!==t&&(e.Leave=t)}else if(n.includes(`Leave`)){if(t(a)){let t=_d(r.regularDayHours-a,0,r.regularDayHours,r.decimals);i!==t&&(e.ST=t)}}else{let t=_d(r.regularDayHours-i,0,r.regularDayHours,r.decimals);a>t+r.epsilon&&(e.Leave=t)}let s=e.ST===void 0?i:e.ST;return!(Math.abs(s-r.standardMaxHours)<=r.epsilon)&&o>r.epsilon&&(e.OT=0),Object.keys(e).length?e:null}return null}function Sd(e){return!e||e.dayKind===`holiday`?``:e.dayKind===`weekOff`?`Week off — overtime only, up to ${e.overtimeCap} hrs.`:e.isFull?`Maximum standard hours reached — 8 regular hours allocated.`:`Maximum available leave: ${e.leaveRemaining} hrs`}var{Text:Cd}=d.Typography,wd={draft:`default`,logged:`blue`,submitted:`processing`,approved:`success`,rejected:`error`,resubmitted:`purple`,reopened:`warning`,save_draft:`default`,pending:`warning`,not_submitted:`default`};function Td({status:e}){if(!e||e===`draft`||e===`not_submitted`)return null;let t={submitted:{icon:(0,p.jsx)(f.CheckOutlined,{}),color:`blue`,label:`Submitted`},approved:{icon:(0,p.jsx)(f.CheckCircleOutlined,{}),color:`green`,label:`Approved`},rejected:{icon:(0,p.jsx)(f.CloseCircleOutlined,{}),color:`red`,label:`Rejected`},resubmitted:{icon:(0,p.jsx)(f.SyncOutlined,{}),color:`purple`,label:`Re-Submitted`},reopened:{icon:(0,p.jsx)(f.SyncOutlined,{}),color:`orange`,label:`Reopened`},save_draft:{icon:null,color:`default`,label:`Draft`}}[e];return t?(0,p.jsx)(d.Tag,{color:t.color,icon:t.icon,style:{borderRadius:20,fontSize:12,padding:`2px 10px`},children:t.label}):(0,p.jsx)(d.Tag,{color:wd[e]??`default`,children:e})}function Ed({configKey:e=`timesheet`,month:t,year:n}){let r=Ie(e);return t&&n&&(0,m.default)(`${n}-${t}-01`).isBefore((0,m.default)().subtract(r.thresholdMonths,`month`),`month`)?(0,p.jsx)(d.Tag,{color:r.pastColor,children:r.pastLabel}):null}var Dd={working:`timesheet-day-cell--working`,overtime:`timesheet-day-cell--overtime`,leave:`timesheet-day-cell--leave`,holiday:`timesheet-day-cell--holiday`,weekoff:`timesheet-day-cell--weekoff`};function Od(e,t=0){let n=Number(e);return Number.isFinite(n)?n:t}function kd(e){let t=Od(e);return t===0?`0h`:`${t.toFixed(1).replace(/\.0$/,``)}h`}var Ad={ST:`#D0E6FF`,OT:`#AAFEBCA6`,leave:`#FFECBA`};function jd(e,t){let n=Math.min(Math.max(e,0),1);return!String(t).startsWith(`135`)&&!String(t).startsWith(`45`)?n:n<=.5?Math.sqrt(n/2):1-Math.sqrt((1-n)/2)}function Md(e={},{angle:t=`135deg`}={}){let n=[[`ST`,Od(e?.workingHours?.ST)],[`OT`,Od(e?.workingHours?.OT)],[`leave`,Od(e?.leave?.CL)+Od(e?.leave?.SL)]].filter(([,e])=>e>0),r=n.reduce((e,[,t])=>e+t,0);if(n.length<2||r<=0)return null;let i=[],a=0;return n.forEach(([e,o],s)=>{let c=jd(a/r,t)*100;a+=o;let l=s===n.length-1?100:jd(a/r,t)*100;i.push(`${Ad[e]} ${c.toFixed(2)}% ${l.toFixed(2)}%`)}),`linear-gradient(${t}, ${i.join(`, `)})`}function Nd(e={},{isUnloggedHighlight:t=!1,selected:n=!1,selectable:r=!1,reviewMode:i=!1}={}){let a=Od(e?.workingHours?.ST),o=Od(e?.workingHours?.OT),s=Od(e?.leave?.CL)+Od(e?.leave?.SL),c=[a,o,s].filter(e=>e>0).length>1,l=o>0?`overtime`:a>0?`working`:s>0?`leave`:null,u=!!e?.isOutOfAssignmentRange,d=u?null:e?.isHoliday?`holiday`:l??(e?.isWeekOff?`weekoff`:null),f=e?.status;return[`timesheet-day-cell`,u?`timesheet-day-cell--out-of-range`:!c&&d?Dd[d]??``:``,e?.isFuture?`timesheet-day-cell--future`:``,f===`rejected`?`timesheet-day-cell--rejected`:``,f===`approved`?`timesheet-day-cell--approved`:``,n?`timesheet-day-cell--selected`:``,t?`timesheet-day-cell--unlogged-highlight`:``,r?`timesheet-day-cell--selectable`:``,i?`timesheet-day-cell--review`:``].filter(Boolean).join(` `)}function Pd({day:e,readonly:t=!1,selected:n=!1,isUnloggedHighlight:r=!1,onSelect:i,onQuickLog:a,splitMode:o=`proportional`,splitAngle:s=`135deg`,selectable:c=!1,onToggleSelect:l,reviewMode:u=!1,onApproveDay:h,onRejectDay:g}){let _=Od(e?.workingHours?.ST),v=Od(e?.workingHours?.OT),y=Od(e?.leave?.CL)+Od(e?.leave?.SL),b=e?.status,x=b===`approved`,S=b===`rejected`,C=x&&!u,w=!!e?.isOutOfAssignmentRange,T=!t&&!c&&!w&&!e?.isFuture&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isLogged,E=o===`proportional`?Md(e,{angle:s}):null,D=t=>{t.stopPropagation(),a?.(e?.date)},O=()=>{if(c){l?.(e?.date);return}i?.(e)},k=u&&e?.isLogged,A=(0,p.jsxs)(`button`,{type:`button`,className:Nd(e,{isUnloggedHighlight:r,selected:n,selectable:c,reviewMode:u}),style:E?{background:E}:void 0,disabled:t&&!k||e?.isFuture||w||C&&!u,onClick:O,children:[(0,p.jsxs)(`span`,{className:`timesheet-day-cell__top`,children:[(0,p.jsxs)(`span`,{className:`timesheet-day-cell__date`,children:[e?.date?(0,m.default)(e.date).date():`-`,S&&(0,p.jsx)(`span`,{className:`timesheet-day-cell__reject-dot`})]}),(0,p.jsxs)(`span`,{className:`timesheet-day-cell__top-right`,children:[T&&(0,p.jsx)(d.Tooltip,{title:`Quick log 8h`,placement:`top`,children:(0,p.jsx)(f.ClockCircleOutlined,{className:`timesheet-day-cell__quick-log-icon`,onClick:D})}),!T&&!w&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isFuture&&(0,p.jsx)(f.ClockCircleOutlined,{className:`timesheet-day-cell__quick-log-icon timesheet-day-cell__quick-log-icon--logged`})]})]}),(0,p.jsxs)(`span`,{className:`timesheet-day-cell__body`,children:[!w&&e?.isHoliday&&(0,p.jsx)(d.Tag,{color:`purple`,className:`timesheet-type-tag`,children:`H`}),!w&&e?.isWeekOff&&!e?.isLogged&&(0,p.jsx)(Cd,{type:`secondary`,className:`timesheet-no-log`,children:`Off`}),_>0&&(0,p.jsxs)(`span`,{className:`timesheet-hour-label`,children:[(0,p.jsx)(`span`,{className:`timesheet-hour-value`,children:kd(_)}),(0,p.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-st`,children:` s`})]}),v>0&&(0,p.jsxs)(`span`,{className:`timesheet-hour-label timesheet-hour-label--ot`,children:[(0,p.jsx)(`span`,{className:`timesheet-hour-value`,children:kd(v)}),(0,p.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-ot`,children:` o`})]}),y>0&&(0,p.jsxs)(`span`,{className:`timesheet-hour-label timesheet-hour-label--leave${E?` timesheet-hour-label--split-end`:``}`,children:[(0,p.jsx)(`span`,{className:`timesheet-hour-value`,children:kd(y)}),(0,p.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-leave`,children:` L`})]}),!w&&!e?.isLogged&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isFuture&&(0,p.jsx)(Cd,{type:`secondary`,className:`timesheet-no-log`,children:`No log`})]}),x&&(0,p.jsx)(f.CheckOutlined,{className:`timesheet-day-cell__verdict timesheet-day-cell__verdict--approved`}),S&&(0,p.jsx)(f.CloseCircleOutlined,{className:`timesheet-day-cell__verdict timesheet-day-cell__verdict--rejected`}),u&&e?.isLogged&&(h||g)&&(0,p.jsxs)(`span`,{className:`timesheet-day-review-actions`,children:[h&&(0,p.jsx)(`span`,{role:`button`,tabIndex:-1,className:`ts-approve`,title:`Approve this day`,onClick:t=>{t.stopPropagation(),h(e?.date)},children:(0,p.jsx)(f.CheckOutlined,{})}),g&&(0,p.jsx)(`span`,{role:`button`,tabIndex:-1,className:`ts-reject`,title:`Reject this day`,onClick:t=>{t.stopPropagation(),g(e?.date)},children:(0,p.jsx)(f.CloseCircleOutlined,{})})]})]});return S&&e?.rejectionReason?(0,p.jsx)(d.Tooltip,{title:e.rejectionReason,placement:`top`,children:(0,p.jsx)(`span`,{style:{display:`block`,width:`100%`},children:A})}):A}var Fd=e=>e==null?``:`${e}`,Id=e=>e===``||e===void 0?void 0:Number(e);function Ld({open:e,day:t,saving:r=!1,onCancel:i,onSubmit:a,hoursStep:o,policy:s}){let[c]=d.Form.useForm(),l=d.Form.useWatch(`ST`,c),h=d.Form.useWatch(`OT`,c),g=d.Form.useWatch(`Leave`,c),_=(0,u.useMemo)(()=>({...pd,...o?{step:o}:null,...s}),[o,s]);(0,u.useEffect)(()=>{if(!e)return;let n=vd(t),r={ST:Od(t?.workingHours?.ST),OT:Od(t?.workingHours?.OT),Leave:Od(t?.leave?.CL)+Od(t?.leave?.SL)},i=xd(n,r,[],_);c.setFieldsValue({...r,...i})},[t,c,e,_]);let v=e=>({getFieldValue:n})=>({validator(){let{errorsByField:r}=bd(t,{ST:n(`ST`),OT:n(`OT`),Leave:n(`Leave`)},_),i=r[e];return i?Promise.reject(Error(i)):Promise.resolve()}}),y=()=>{c.validateFields([`ST`,`OT`,`Leave`]).catch(()=>{})},b=(e,n)=>{let r=xd(vd(t),n,Object.keys(e),_);r&&c.setFieldsValue(r),y()},x=async()=>{let e;try{e=await c.validateFields()}catch(e){let t=document.querySelector(`.timesheet-log-modal`)??document;n.c(e,c,{root:t});return}let r=Od(e.ST),i=Od(e.OT),o=Od(e.Leave),s=[r,i,o].filter(e=>e>0).length;a?.({date:t?.date,logType:s>1?`mixed`:i>0?`overtime`:o>0?`leave`:`working`,workingHours:{ST:r,OT:i},leave:{CL:o,SL:0},isHoliday:!!t?.isHoliday,isWeekOff:!!t?.isWeekOff,notes:``})},S=t?.isHoliday,C=!!t?.isWeekOff&&!S,w=t?.date?(0,m.default)(t.date).format(`MMM DD, YYYY`):`Log time`,T=(0,u.useMemo)(()=>bd(t,{ST:l,OT:h,Leave:g},_),[t,l,h,g,_]);return(0,p.jsxs)(d.Modal,{rootClassName:`timesheet-log-modal`,title:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(Cd,{strong:!0,children:w}),t?.isHoliday&&(0,p.jsx)(d.Tag,{color:`purple`,children:`Holiday`}),t?.isWeekOff&&(0,p.jsx)(d.Tag,{children:`Week Off`})]}),open:e,onCancel:i,onOk:x,confirmLoading:r,okText:`Save`,cancelText:`Cancel`,destroyOnHidden:!0,width:340,footer:(e,{OkBtn:t,CancelBtn:n})=>(0,p.jsxs)(d.Space,{style:{width:`100%`,justifyContent:`flex-end`},children:[(0,p.jsx)(n,{}),!S&&(0,p.jsx)(t,{})]}),children:[t?.rejectionReason&&(0,p.jsxs)(`div`,{className:`timesheet-log-reject`,children:[(0,p.jsxs)(`div`,{className:`timesheet-log-reject__note`,children:[(0,p.jsx)(f.CloseCircleOutlined,{className:`timesheet-log-reject__icon`}),(0,p.jsxs)(`div`,{className:`timesheet-log-reject__body`,children:[(0,p.jsx)(`span`,{className:`timesheet-log-reject__title`,children:`Sent back by your reviewer`}),(0,p.jsx)(`span`,{className:`timesheet-log-reject__reason`,children:t.rejectionReason})]})]}),(0,p.jsxs)(`div`,{className:`timesheet-log-reject__proof`,children:[(0,p.jsx)(f.UploadOutlined,{className:`timesheet-log-reject__proof-icon`}),(0,p.jsxs)(`div`,{className:`timesheet-log-reject__body`,children:[(0,p.jsx)(`span`,{className:`timesheet-log-reject__title timesheet-log-reject__title--proof`,children:`To fix it`}),(0,p.jsxs)(`ol`,{className:`timesheet-log-reject__steps`,children:[(0,p.jsx)(`li`,{children:`Correct the hours below.`}),(0,p.jsx)(`li`,{children:`Replace the proof / screenshot so it matches.`}),(0,p.jsx)(`li`,{children:`Save, then re-submit your timesheet.`})]})]})]})]}),S?(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`Holiday — no manual log required.`}):(0,p.jsxs)(p.Fragment,{children:[C&&(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`Week off — overtime only.`,style:{marginBottom:12}}),(0,p.jsxs)(d.Form,{form:c,layout:`vertical`,className:`timesheet-log-form`,validateTrigger:[`onChange`,`onBlur`],onValuesChange:b,children:[(0,p.jsx)(d.Form.Item,{name:`ST`,label:(0,p.jsxs)(`span`,{style:{color:`#1d4ed8`,fontWeight:600},children:[`Standard `,(0,p.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`Leave`],rules:[v(`ST`)],extra:!T.errorsByField.ST&&T.fields.ST.disabled?`Disabled on a week off.`:void 0,children:(0,p.jsx)(d.InputNumber,{step:T.fields.ST.step,disabled:T.fields.ST.disabled,style:{width:`100%`},formatter:Fd,parser:Id,addonAfter:(0,p.jsx)(`span`,{style:{color:`#1d4ed8`,fontWeight:700},children:`s`})})}),(0,p.jsx)(d.Form.Item,{name:`OT`,label:(0,p.jsxs)(`span`,{style:{color:`#15803d`,fontWeight:600},children:[`Overtime `,(0,p.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`ST`],rules:[v(`OT`)],extra:!T.errorsByField.OT&&T.fields.OT.disabled?`Complete 8 standard hours to log overtime.`:void 0,children:(0,p.jsx)(d.InputNumber,{step:T.fields.OT.step,disabled:T.fields.OT.disabled,style:{width:`100%`},formatter:Fd,parser:Id,addonAfter:(0,p.jsx)(`span`,{style:{color:`#15803d`,fontWeight:700},children:`o`})})}),(0,p.jsx)(d.Form.Item,{name:`Leave`,label:(0,p.jsxs)(`span`,{style:{color:`#b45309`,fontWeight:600},children:[`Leave `,(0,p.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`ST`],rules:[v(`Leave`)],extra:!T.errorsByField.Leave&&T.fields.Leave.disabled?C?`Disabled on a week off.`:`Maximum reached — 8 regular hours allocated.`:void 0,children:(0,p.jsx)(d.InputNumber,{step:T.fields.Leave.step,disabled:T.fields.Leave.disabled,style:{width:`100%`},formatter:Fd,parser:Id,addonAfter:(0,p.jsx)(`span`,{style:{color:`#b45309`,fontWeight:700},children:`L`})})})]})]})]})}function Rd({count:e=0,total:t=0,hours:n=8,loading:r=!1,onConfirm:i,onCancel:a,onSelectAll:o,onSelectNone:s}){return(0,p.jsxs)(`div`,{className:`timesheet-quicklog-bar`,children:[(0,p.jsxs)(d.Space,{size:8,wrap:!0,children:[(0,p.jsx)(Cd,{strong:!0,children:e===0?`No days selected`:`Log ${n}h standard on ${e} day${e===1?``:`s`}`}),t>0&&(0,p.jsxs)(Cd,{type:`secondary`,style:{fontSize:12},children:[e,` of `,t,` eligible · click a day to deselect it`]})]}),(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(d.Button,{size:`small`,onClick:o,disabled:e===t,children:`Select all`}),(0,p.jsx)(d.Button,{size:`small`,onClick:s,disabled:e===0,children:`Clear`}),(0,p.jsx)(d.Button,{size:`small`,onClick:a,children:`Cancel`}),(0,p.jsx)(d.Button,{size:`small`,type:`primary`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),loading:r,disabled:e===0,onClick:i,children:`Confirm`})]})]})}function zd({open:e=!1,loading:t=!1,onSave:n,onCancel:r}){let[i,a]=(0,u.useState)(``);return(0,u.useEffect)(()=>{e&&a(``)},[e]),(0,p.jsx)(d.Modal,{title:`Rejection Reason`,open:e,onCancel:r,footer:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{onClick:r,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,danger:!0,disabled:!i.trim(),loading:t,onClick:()=>n?.(i.trim()),children:`Reject`})]}),destroyOnHidden:!0,children:(0,p.jsx)(d.Form,{layout:`vertical`,children:(0,p.jsx)(d.Form.Item,{label:(0,p.jsxs)(`span`,{children:[(0,p.jsx)(`span`,{style:{color:`#ff4d4f`},children:`*`}),` Comments`]}),help:i.trim()?``:`Rejection reason is required`,validateStatus:i.trim()?``:`error`,children:(0,p.jsx)(d.Input.TextArea,{rows:4,maxLength:1e3,showCount:!0,placeholder:`Enter reason for rejection...`,value:i,onChange:e=>a(e.target.value)})})})})}function Bd({loading:e=!1,disabled:t=!1,onQuickLog:r}){return(0,p.jsx)(d.Card,{size:`small`,className:`timesheet-quick-log`,children:(0,p.jsx)(d.Space,{wrap:!0,children:(0,p.jsx)(n.Gn,{variant:`primary`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),loading:e,disabled:t,onClick:()=>r?.(`businessDays`),children:`Quick Log (8h s)`})})})}var Vd={".pdf":[f.FilePdfOutlined,`pdf`],".doc":[f.FileWordOutlined,`word`],".docx":[f.FileWordOutlined,`word`],".xls":[f.FileExcelOutlined,`excel`],".xlsx":[f.FileExcelOutlined,`excel`],".csv":[f.FileExcelOutlined,`excel`],".png":[f.FileImageOutlined,`image`],".jpg":[f.FileImageOutlined,`image`],".jpeg":[f.FileImageOutlined,`image`],".gif":[f.FileImageOutlined,`image`],".webp":[f.FileImageOutlined,`image`]};function Hd({fileName:e}){let[t,n]=Vd[hn(e)]??[f.FileOutlined,`default`];return(0,p.jsx)(t,{className:`timesheet-proof__type-icon timesheet-proof__type-icon--${n}`})}function Ud({proof:e,uploading:t=!1,disabled:n=!1,required:r=!1,onUpload:i,onPreview:a,onRemove:o,previewUrl:s}){let c=!!e?.fileName,l=e?.size?gn(e.size):``,u=hn(e?.fileName??``).replace(`.`,``).toUpperCase(),m=e?.pending?`Selected — uploads on submit`:`Previously uploaded`,h=[l||u,m].filter(Boolean).join(` • `),g=!n&&!(c&&o);return(0,p.jsxs)(d.Card,{className:`timesheet-proof${c?` timesheet-proof--filled`:``}`,size:`small`,title:(0,p.jsxs)(p.Fragment,{children:[`Proof / screenshot`,r&&(0,p.jsx)(`span`,{className:`timesheet-proof__required`,children:` *`})]}),children:[c?(0,p.jsxs)(`div`,{className:`timesheet-proof__file`,children:[(0,p.jsx)(`span`,{className:`timesheet-proof__file-icon`,children:(0,p.jsx)(Hd,{fileName:e.fileName})}),(0,p.jsxs)(`span`,{className:`timesheet-proof__file-info`,children:[(0,p.jsx)(`span`,{className:`timesheet-proof__file-name`,title:e.fileName,children:e.fileName}),(0,p.jsx)(`span`,{className:`timesheet-proof__file-meta`,children:h})]}),(0,p.jsxs)(d.Space,{size:6,className:`timesheet-proof__file-actions`,children:[a&&(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EyeOutlined,{}),className:`timesheet-proof__view-btn`,onClick:()=>a(e),children:`View`}),o&&(0,p.jsx)(d.Tooltip,{title:`Remove`,children:(0,p.jsx)(d.Button,{size:`small`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),"aria-label":`Remove ${e.fileName}`,className:`timesheet-proof__delete-btn`,onClick:()=>o(e)})})]})]}):(0,p.jsx)(Cd,{type:`secondary`,style:{fontSize:12},children:`Upload Proof`}),g&&(0,p.jsx)(d.Upload,{beforeUpload:e=>(i?.(e),!1),maxCount:1,showUploadList:!1,disabled:n,accept:`.pdf,.doc,.docx,.png,.jpg,.jpeg`,children:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.UploadOutlined,{}),loading:t,block:!0,size:`small`,style:{marginTop:6},children:c?`Replace proof`:`Upload proof`})}),(0,p.jsx)(Cd,{type:`secondary`,className:`timesheet-proof__hint`,style:{fontSize:11},children:`Supports: .pdf, .doc, .docx, .png, .jpg — max 10 MB`})]})}function Wd({value:e,disabled:t=!1,onChange:n,label:r=`Notes / Comments`,maxLength:i=1e3}){let a=(e??``).length;return(0,p.jsxs)(d.Card,{className:`timesheet-notes`,size:`small`,title:r,children:[(0,p.jsx)(`div`,{className:`timesheet-notes__field`,children:(0,p.jsx)(d.Input.TextArea,{className:`timesheet-notes__textarea`,rows:5,maxLength:i,value:e,disabled:t,onChange:e=>n?.(e.target.value),placeholder:`Add notes or comments...`})}),(0,p.jsxs)(`div`,{className:`timesheet-notes__count`,children:[a,` / `,i]})]})}function Gd({status:e,loading:t=!1,readonly:r=!1,rejectionReason:i,rejectionMode:a=`modal`,title:o=`Review Notes`,hint:s=`Review comment is mandatory while rejecting`,approveDisabled:c=!1,approveDisabledReason:l,rejectDisabled:m=!1,rejectDisabledReason:h,onSubmit:g,onApprove:_,onReject:v,onReopen:y}){let[b,x]=(0,u.useState)(!1),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(``),E=[`submitted`,`resubmitted`,`reopened`,`save_draft`].includes(e),D=e===`rejected`,O=e===`approved`,k=e===`submitted`||e===`resubmitted`,A=e===`reopened`,j=!e||e===`draft`||e===`not_submitted`,M=async e=>{C(!0);try{await v?.(e),x(!1)}finally{C(!1)}},N=()=>d.Modal.confirm({title:`Reopen timesheet?`,content:`This returns the month to the resource to correct and re-submit. It cannot be reopened once its invoice or payment has been processed.`,okText:`Reopen`,onOk:y}),P=()=>{let e=w.trim();if(!e){d.message.error(`A review comment is required to reject`);return}v?.(e)};if(a===`inline`)return(0,p.jsxs)(d.Card,{size:`small`,className:`timesheet-review-notes-card`,children:[(0,p.jsxs)(`div`,{className:`timesheet-review-notes-card__head`,children:[(0,p.jsx)(Cd,{strong:!0,children:o}),(0,p.jsxs)(Cd,{type:`secondary`,className:`timesheet-review-notes-card__hint`,children:[(0,p.jsx)(f.InfoCircleOutlined,{}),` `,s]})]}),i&&D&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`Rejected`,description:i,className:`timesheet-review-notes-card__alert`}),k?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Input.TextArea,{rows:3,maxLength:1e3,value:w,onChange:e=>T(e.target.value),placeholder:`Add your note`,className:`timesheet-review-notes-card__input`}),(0,p.jsxs)(`div`,{className:`timesheet-review-notes-card__actions`,children:[(0,p.jsx)(d.Tooltip,{title:m?h:``,children:(0,p.jsx)(d.Button,{danger:!0,loading:t,disabled:m,onClick:P,children:`Reject`})}),(0,p.jsx)(d.Tooltip,{title:c?l:``,children:(0,p.jsx)(d.Button,{type:`primary`,loading:t,disabled:c,onClick:_,children:`Approve`})})]})]}):(0,p.jsxs)(`div`,{className:`timesheet-review-notes-card__decided`,children:[(0,p.jsxs)(Cd,{type:`secondary`,children:[`This timesheet is `,e,`.`]}),(O||D)&&y?(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.InfoCircleOutlined,{}),loading:t,onClick:N,children:`Reopen`}):null]})]});let F=`Submit`,I=!1;return k&&(F=e===`resubmitted`?`Re-Submitted`:`Submitted`,I=!0),(D||A)&&(F=`Re-Submit`,I=!1),O&&(F=`Approved`,I=!0),(0,p.jsxs)(p.Fragment,{children:[i&&D&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`Rejected`,description:i,style:{marginBottom:8}}),(0,p.jsxs)(`div`,{className:`timesheet-action-bar`,children:[(j||D||A||k||O)&&g&&(0,p.jsx)(n.Gn,{variant:`primary`,icon:(0,p.jsx)(f.SendOutlined,{}),loading:t,disabled:I,onClick:I?void 0:g,block:!0,children:F}),E&&_&&(0,p.jsx)(n.Gn,{variant:`primary`,icon:(0,p.jsx)(f.CheckOutlined,{}),loading:t,onClick:_,children:`Approve`}),E&&v&&(0,p.jsx)(d.Button,{danger:!0,loading:t,onClick:()=>x(!0),children:`Reject`}),(O||D)&&y&&(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.InfoCircleOutlined,{}),loading:t,onClick:N,children:`Reopen`})]}),(0,p.jsx)(zd,{open:b,loading:S,onSave:M,onCancel:()=>x(!1)})]})}var Kd=e=>Number.isFinite(Number(e))?Number(e):0;function qd(e,t,{isToday:n}={}){let r=Number(e.slice(-2)),i=Kd(t?.workingHours?.ST),a=Kd(t?.workingHours?.OT),o=Kd(t?.leave?.CL)+Kd(t?.leave?.SL),s=i+a,c=!!t?.isLogged||s>0||o>0,l=t?t.isHoliday?`holiday`:c&&s>0?`work`:o>0?`leave`:t.isWeekOff?`weekoff`:`blank`:`blank`,u=[`fin-daycell`,`fin-daycell--${l}`,t?.status===`approved`?`fin-daycell--approved`:``,t?.status===`rejected`?`fin-daycell--rejected`:``,n?`fin-daycell--today`:``].filter(Boolean).join(` `),f=l===`work`?Md(t):null,h=(0,p.jsxs)(`div`,{className:u,style:f?{background:f}:void 0,children:[(0,p.jsx)(`span`,{className:`fin-daycell__num`,children:r}),l===`work`?(0,p.jsxs)(`span`,{className:`fin-daycell__hours`,children:[s%1==0?s:s.toFixed(1),`h`,a>0?(0,p.jsx)(`em`,{children:` +OT`}):null]}):l===`leave`?(0,p.jsx)(`span`,{className:`fin-daycell__hours`,children:`Leave`}):l===`holiday`?(0,p.jsx)(`span`,{className:`fin-daycell__hours`,children:`Holiday`}):null]});if(!t)return h;let g=[(0,m.default)(e).format(`ddd, MMM D`),i?`ST ${i}h`:null,a?`OT ${a}h`:null,o?`Leave ${o}h`:null,t.isHoliday?`Holiday`:null,t.status===`rejected`?`Rejected${t.rejectionReason?` — ${t.rejectionReason}`:``}`:null,t.status===`approved`?`Approved`:null].filter(Boolean).join(` · `);return(0,p.jsx)(d.Tooltip,{title:g,children:h})}var Jd=[{label:`Standard`,color:`#3b82f6`},{label:`Overtime`,color:`#22c55e`},{label:`Leave`,color:`#f59e0b`},{label:`Holiday`,color:`#8b5cf6`},{label:`Rejected`,color:`#ef4444`}];function Yd({dailyLogs:e=[],timesheetSummary:t={},rate:n=0,rateLabel:r=`Rate`,amountLabel:i=`Amount`,approvedHours:a,month:o,year:s,monthLabel:c,extraEquationTerms:l=[]}){let h=(0,u.useMemo)(()=>oo(e),[e]),g=(0,u.useMemo)(()=>so(e,n),[e,n]),_=(0,u.useMemo)(()=>uo(e,n),[e,n]),v=h.totalHours||Kd(a),y=v*Kd(n),b=Math.max(1,...g.map(e=>e.total)),x=Math.max(1,..._.map(e=>e.total)),S=[{key:`hours`,label:`Approved Hours`,value:Ua(v),icon:(0,p.jsx)(f.ClockCircleOutlined,{}),tone:`brand`,sub:`${h.loggedDays} logged days`},{key:`st`,label:`Standard`,value:Ua(h.stHours||t.totalSTHours),icon:(0,p.jsx)(f.FieldTimeOutlined,{}),tone:`neutral`},{key:`ot`,label:`Overtime`,value:Ua(h.otHours||t.totalOTHours),icon:(0,p.jsx)(f.ThunderboltOutlined,{}),tone:`warning`},{key:`leave`,label:`Leave`,value:Ua(h.leaveHours||t.leaveHours),icon:(0,p.jsx)(f.RestOutlined,{}),tone:`neutral`,sub:`${h.leaveDays} days`},{key:`avg`,label:`Avg / Logged Day`,value:Ua(h.avgHoursPerLoggedDay),icon:(0,p.jsx)(f.CalendarOutlined,{}),tone:`info`},{key:`amount`,label:i,value:Ha(y),icon:(0,p.jsx)(f.DollarOutlined,{}),tone:`success`}],C=[{label:`Approved days`,value:h.approvedDays,tone:`success`},{label:`Pending days`,value:h.pendingDays,tone:`gold`},{label:`Rejected days`,value:h.rejectedDays,tone:h.rejectedDays?`danger`:`neutral`},{label:`Holidays`,value:h.holidayDays,tone:`neutral`},{label:`Week-offs`,value:h.weekOffDays,tone:`neutral`}],w=[{title:`Date`,dataIndex:`date`,width:150,render:(e,t)=>(0,p.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,p.jsx)(`span`,{className:`fin-cell__primary`,children:e?(0,m.default)(e).format(`ddd, MMM D`):`—`}),t.isHoliday?(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:`Holiday`}):null]})},{title:`ST`,dataIndex:`st`,align:`right`,width:70,render:e=>e.toFixed(2)},{title:`OT`,dataIndex:`ot`,align:`right`,width:70,render:e=>e?e.toFixed(2):`—`},{title:`Leave`,dataIndex:`leave`,align:`right`,width:70,render:e=>e?e.toFixed(2):`—`},{title:`Total`,dataIndex:`total`,align:`right`,width:170,render:e=>(0,p.jsxs)(`div`,{className:`fin-bar`,children:[(0,p.jsx)(`span`,{className:`fin-bar__track`,children:(0,p.jsx)(`span`,{className:`fin-bar__fill`,style:{width:`${e/b*100}%`}})}),(0,p.jsx)(`span`,{className:`fin-bar__value`,children:e.toFixed(2)})]})},{title:i,dataIndex:`amount`,align:`right`,width:110,render:e=>(0,p.jsx)(`strong`,{className:`fin-cell-money__value`,children:Ha(e)})},{title:`Status`,dataIndex:`status`,align:`center`,width:100,render:e=>(0,p.jsx)(bo,{status:e,size:`sm`})},{title:`Reviewer`,dataIndex:`reviewer`,width:130,render:e=>e||(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:`—`})},{title:`Remarks`,dataIndex:`remarks`,ellipsis:!0,render:e=>e?(0,p.jsx)(d.Tooltip,{title:e,children:(0,p.jsx)(`span`,{className:`fin-remarks`,children:e})}):(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:`—`})}],T=[{title:`Week`,dataIndex:`label`,render:(e,t)=>(0,p.jsx)(Xd,{primary:e,secondary:`${t.days} logged days`})},{title:`ST`,dataIndex:`st`,align:`right`,width:64,render:e=>e.toFixed(1)},{title:`OT`,dataIndex:`ot`,align:`right`,width:64,render:e=>e?e.toFixed(1):`—`},{title:`Hours`,dataIndex:`total`,align:`right`,width:150,render:e=>(0,p.jsxs)(`div`,{className:`fin-bar`,children:[(0,p.jsx)(`span`,{className:`fin-bar__track`,children:(0,p.jsx)(`span`,{className:`fin-bar__fill`,style:{width:`${e/x*100}%`}})}),(0,p.jsx)(`span`,{className:`fin-bar__value`,children:e.toFixed(1)})]})},{title:i,dataIndex:`amount`,align:`right`,width:110,render:e=>(0,p.jsx)(`strong`,{className:`fin-cell-money__value`,children:Ha(e)})}];return(0,p.jsxs)(`div`,{className:`fin-analysis`,children:[(0,p.jsx)(xo,{items:S,compact:!0}),(0,p.jsx)(`div`,{className:`fin-daychips`,children:C.map(e=>(0,p.jsxs)(`span`,{className:`fin-badge fin-badge--${e.tone}`,children:[e.value,` `,e.label]},e.label))}),(0,p.jsx)(wo,{className:`fin-equation-card`,children:(0,p.jsx)(Do,{terms:[{value:Ua(v),label:`Approved Hours`},{op:`×`},{value:Wa(n),label:r},{op:`=`},{value:Ha(y),label:i,tone:`accent`},...l]})}),(0,p.jsxs)(`div`,{className:`fin-analysis__grid`,children:[(0,p.jsx)(j,{className:`fin-heatmap`,days:e,startDay:`Mon`,readonly:!0,year:s,month:o,monthLabel:c,legend:Jd,renderDayContent:qd,onPrevMonth:()=>{},onNextMonth:()=>{}}),(0,p.jsx)(wo,{title:`Weekly Breakdown`,className:`fin-weekly`,children:(0,p.jsx)(d.Table,{className:`fin-analysis-table`,size:`small`,rowKey:e=>e.label,pagination:!1,dataSource:_,columns:T,locale:{emptyText:`No logged weeks`}})})]}),(0,p.jsx)(wo,{title:`Daily Breakdown — Hours × ${r} = ${i}`,children:(0,p.jsx)(d.Table,{className:`fin-analysis-table`,size:`small`,rowKey:`key`,pagination:!1,dataSource:g,columns:w,scroll:{x:900},locale:{emptyText:`No approved day logs to analyse`},summary:()=>g.length?(0,p.jsxs)(d.Table.Summary.Row,{className:`fin-analysis-total`,children:[(0,p.jsx)(d.Table.Summary.Cell,{index:0,children:(0,p.jsx)(`strong`,{children:`Total`})}),(0,p.jsx)(d.Table.Summary.Cell,{index:1,align:`right`,children:h.stHours.toFixed(2)}),(0,p.jsx)(d.Table.Summary.Cell,{index:2,align:`right`,children:h.otHours?h.otHours.toFixed(2):`—`}),(0,p.jsx)(d.Table.Summary.Cell,{index:3,align:`right`,children:h.leaveHours?h.leaveHours.toFixed(2):`—`}),(0,p.jsx)(d.Table.Summary.Cell,{index:4,align:`right`,children:(0,p.jsx)(`strong`,{children:v.toFixed(2)})}),(0,p.jsx)(d.Table.Summary.Cell,{index:5,align:`right`,children:(0,p.jsx)(`strong`,{children:Ha(y)})}),(0,p.jsx)(d.Table.Summary.Cell,{index:6}),(0,p.jsx)(d.Table.Summary.Cell,{index:7}),(0,p.jsx)(d.Table.Summary.Cell,{index:8})]}):null})})]})}function Xd({primary:e,secondary:t}){return(0,p.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,p.jsx)(`span`,{className:`fin-cell__primary`,children:e}),t?(0,p.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}var Zd=`submissionManager`,Qd=`onboardingManager`,$d=`cfo`,ef=`onlyFinance`,tf=`submissionManagerReapprove`,nf=`onboardingManagerReapprove`;function rf(e,t={}){return e?String(e).replace(/\{(\w+)\}/g,(e,n)=>t[n]===void 0?e:String(t[n])):``}var af={rateUnit:`hr`,currency:`$`,labels:{employerVms:{required:`Employer VMS`,notRequired:`Not required`,notRequiredSub:`VMS not required for this submission`,unavailable:`VMS Not available`,unavailableSub:`No VMS percentage configured for this employer`}},header:{crumbSeparator:` · `,crumbFields:[{key:`client`,source:[`record.client.clientName`,`identity.client`]},{key:`reqId`,source:[`record.job.jobReferenceId`,`identity.reqId`]}]},sections:{jobClient:{title:`Basic Details`,items:[{key:`jobTitle`,label:`Job Title`,source:[`record.job.jobTitle`,`identity.role`]},{key:`jobLocation`,label:`Job Location`,source:[`identity.location`,`record.job.jobLocation`]},{key:`candidateName`,label:`Candidate Name`,source:[`identity.name`,`record.submission.candidateFullName`]},{key:`candidateEmail`,label:`Candidate Email`,source:[`identity.email`,`record.submission.email`]},{key:`contractType`,label:`Employment Type`,source:[`inputs.contractType`]},{key:`employer`,label:`Employer`,source:[`record.submission.supplierName`,`identity.vendor`]},{key:`submittedBy`,label:`Submitted By`,source:[`identity.submittedBy`,`record.submission.signatureEmail`]},{key:`submittedAt`,label:`Submitted Date`,source:[`identity.submittedAt`,`record.submission.createdAt`],format:`date`}]},rateBreakdown:{proposed:{policy:{decimals:2,min:0,message:`Enter a valid amount — numbers only, up to 2 decimal places.`},overClientPolicy:`warn`,overClient:{title:`Proposed rate is above the Client Job Rate`,body:`You are asking the client for {delta} ({pct}) more than the rate posted on this job. Approving is allowed — the higher rate will be what goes to the client and what payroll is finalised against.`,confirmTitle:`Approve above the client rate?`,confirmBody:`The proposed rate of {proposed} exceeds the Client Job Rate of {client} by {delta} ({pct}). This will be recorded against your approval.`,confirmOk:`Approve anyway`,confirmCancel:`Go back`,blockMessage:`Proposed rate can’t exceed the Client Job Rate ({client}).`}}},referral:{policy:{decimals:2,min:0,message:`Enter a valid amount — numbers only, up to 2 decimal places.`}}}},of=[{key:`submitted`,label:`Recruiter Submitted`},{key:`manager`,label:`Manager Approved`},{key:`onboarding`,label:`Onboarding Confirmed`},{key:`cfo`,label:`CFO Review`}],sf={[Zd]:{title:`Finance Review`,statusLabel:`Pending Your Approval`,trail:{steps:of.slice(0,2),current:`manager`,show:!1},sections:{jobClient:{show:!0},clientJobRate:{show:!0,note:!0},rateBreakdown:{show:!0,employer:{show:!0,editable:!1},proposed:{show:!0,editable:!0}},referral:{show:!0,toggle:!0,toggleLabel:`Add Referral`,toggleHint:`Include a referral payout — reduces the margin below.`,mode:`select`,source:`referrals`,optionLabelField:`referalCompanyName`,rateEditable:!0,typeField:!0,lastRate:!0,linkBothWays:!0}},margin:{label:`Realtek Margin`,formula:`netProposed-netEmployer-referral`},actions:{primary:{key:`approve`,label:`Approve`,tone:`primary`,api:`submissionApprove`,requireProposedRate:!0},reject:{key:`reject`,label:`Reject`,tone:`warn`,api:`submissionReject`,openPopup:`reject`}},persist:{proposedRateHistory:!0,referralLink:!0,rateHistory:!0},readOnly:!1},[Qd]:{title:`Onboarding Review`,statusLabel:`Pending Onboarding`,trail:{steps:of.slice(0,3),current:`onboarding`,show:!0},sections:{jobClient:{show:!0},clientJobRate:{show:!0,note:!0},rateBreakdown:{show:!0,editToggle:!0,employer:{show:!0,editable:!1,locked:!0},proposed:{show:!0,editable:!0}},referral:{show:!0,toggle:!0,toggleLabel:`Add Referral`,toggleHint:`Include a referral payout — reduces the total margin below.`,mode:`select`,source:`referrals`,optionLabelField:`referalCompanyName`,rateEditable:!0,typeField:!0,lastRate:!0,linkBothWays:!0}},margin:{label:`Total Margin`,formula:`netProposed-netEmployer-referral`},actions:{primary:{key:`send`,label:`Send for CFO Approval`,tone:`primary`,api:`cfoSend`},reject:{key:`reject`,label:`Reject`,tone:`warn`,api:`onboardingReject`,requireReason:!0}},persist:{proposedRateHistory:!0,referralLink:!0,referralRateOnEngagement:!0,rateHistory:!0},readOnly:!1},cfo:{title:`Final Approval`,statusLabel:`Pending CFO Sign-off`,trail:{steps:of,current:`cfo`,show:!0},sections:{jobClient:{show:!0},clientJobRate:{show:!0,note:!0},rateBreakdown:{show:!0,finalBadge:!0,employer:{show:!0,editable:!1},proposed:{show:!0,editable:!1}},referral:{show:`ifEnabled`,mode:`print`,typeChip:!0}},margin:{label:`Total Margin`,formula:`netProposed-netEmployer-referral`},actions:{primary:{key:`approve`,label:`Approve & Finalize`,tone:`primary`,api:`cfoApprove`},reject:{key:`reject`,label:`Reject`,tone:`warn`,api:`cfoReject`,requireReason:!0}},persist:{rateHistory:!1},readOnly:!0},[ef]:{title:`Finance Summary`,statusLabel:``,header:{show:!1},trail:{steps:[],current:``,show:!1},sections:{jobClient:{show:!1},clientJobRate:{show:!1},rateBreakdown:{show:!0,finalBadge:!0,employer:{show:!0,editable:!1},proposed:{show:!0,editable:!1,locked:!0}},referral:{show:`ifExists`,mode:`print`,typeChip:!0}},margin:{label:`Total Margin`,formula:`netProposed-netEmployer-referral`},actions:{show:!1},persist:{rateHistory:!1},readOnly:!0}};function cf(e,{title:t,primaryLabel:n,primaryApi:r}){return{...e,title:t,statusLabel:`Rejected by CFO — Re-approval Needed`,rejection:{show:!0,sources:[`submission.cfoRejectionReason`,`engagement.financeApproval.rejectionReason`,`engagement.financeApproval.remarks`,`financeApprovalRequest.rejectionReason`,`rejectionReason`],title:`CFO Rejected This Request`},actions:{primary:{...e.actions.primary,label:n,...r?{api:r}:{}}}}}sf[tf]={...cf(sf[Zd],{title:`Finance Re-Review`,primaryLabel:`Send For Approval`,primaryApi:`submissionReapproveSend`}),sections:{...sf[Zd].sections,referral:{show:`ifExists`,mode:`print`,typeChip:!0}},margin:{label:`Total Margin`,formula:`netProposed-netEmployer-referral`}},sf[nf]=cf(sf[Qd],{title:`Onboarding Re-Review`,primaryLabel:`Re-send for CFO Approval`});var lf=e=>!!e&&typeof e==`object`&&!Array.isArray(e);function uf(e,t){if(!lf(t))return e===void 0?t:e;if(e===void 0)return t;if(!lf(e))return e;let n={...e};for(let[r,i]of Object.entries(t))n[r]=uf(e[r],i);return n}var df=new Map;function ff(e){let t=sf[e]??sf.cfo;return df.has(t)||df.set(t,uf(t,af)),df.get(t)}function pf(e,t){let n=e?.rejection?.sources??[];for(let e of n){let n=e.split(`.`).reduce((e,t)=>e?.[t],t);if(n!=null&&String(n).trim()!==``)return String(n)}return``}function mf(e){return String(e?.margin?.formula??``).includes(`referral`)}var hf=`W2`,gf=`C2C`,_f={rateUnit:`hr`,currency:`$`},vf=e=>{let t=Number(e);return Number.isFinite(t)?t:0},yf=e=>e===!0||e===`true`||e===1||e===`1`,bf=e=>e!=null&&e!==``,xf=(...e)=>e.find(bf),Sf=e=>Math.round((vf(e)+2**-52)*100)/100;function Cf(e){return Array.isArray(e)?e.length?e[e.length-1]:{}:e??{}}var wf=e=>String(e?.$oid??e?._id?.$oid??e?._id??e?.id??e??``);function Tf(e=[]){let t={};return e.forEach(e=>{(e.fields??[]).forEach(e=>{let n=e.field??e.fieldName??e.name;n&&e.value!==void 0&&e.value!==null&&e.value!==``&&(t[n]=e.value)})}),t}function Ef(e={}){let t={};for(let[n,r]of Object.entries(e)){let e=String(n).split(`.`),i=t;for(let t=0;t<e.length-1;t+=1){let n=e[t];(!i[n]||typeof i[n]!=`object`||Array.isArray(i[n]))&&(i[n]={}),i=i[n]}let a=e[e.length-1];i[a]&&typeof i[a]==`object`&&!Array.isArray(i[a])||(i[a]=r)}return t}function Df(e=[]){let t=e.find(e=>(e.fields??[]).some(e=>(e.field??e.name)===`employerId`));if(!t)return{};let n=Array.isArray(t.rows)?t.rows:null;if(n?.length)return n[n.length-1]??{};let r={};return(t.fields??[]).forEach(e=>{let t=e.field??e.name;t&&e.value!==void 0&&e.value!==null&&e.value!==``&&(r[t]=e.value)}),r}function Of(e,t,n){if(!e)return;let r=e[t];if(n===void 0)return r!=null&&r!==``?r:void 0;if(Array.isArray(r)&&r.length){let e=r[r.length-1]?.[n];if(e!=null&&e!==``)return e}else if(r&&typeof r==`object`){let e=r[n];if(e!=null&&e!==``)return e}let i=e[`${t}.${n}`];if(i!=null&&i!==``)return i;let a=e[`${t}.0.${n}`];if(a!=null&&a!==``)return a}function kf(e){let t=String(e??``).trim().toUpperCase().replace(/[\s_-]/g,``);return t===`W2`||t.includes(`W2`)?`W2`:`C2C`}function Af(e,t){return Sf(vf(e)*vf(t)/100)}function jf(e={},t={},n={}){let r={..._f,...n??{}},i=e.submission??e??{},a=e.job??{},o=e.client??{},s=e.engagement??{},c=kf(Of(i,`contractType`)??s.onboardingType??e.contractType),l=a.jobPayDetails??{},u=vf(l.clientBudgetStart??Of(i,`clientBudget`,`clientBudgetStart`)),d=vf(l.clientBudgetEnd??Of(i,`clientBudget`,`clientBudgetEnd`))||u,f=d||u,p=Cf(o.vmsFeeHistory)??{},m=t.clientVmsFee??o.vmsFee??{},h=bf(p.vmsPercentage)?vf(p.vmsPercentage):bf(o.vmsPercentage)?vf(o.vmsPercentage):m.isApplicable===!1?0:vf(xf(m.value,m.percent,typeof m==`number`?m:void 0,Of(i,`clientVmsPercent`),Of(i,`vmsPercent`))),g=String(xf(p.vmsPercentageType,o.vmsPercentageType)??`recurring`).toLowerCase(),_=Array.isArray(i.proposedRateHistory)?i.proposedRateHistory.filter(Boolean):[],v=_.length?_[_.length-1]:i.proposedRateCurrent&&typeof i.proposedRateCurrent==`object`?i.proposedRateCurrent:Cf(i.proposedRate),y=vf(v?.candidateProposedRate??v?.proposedRate??v?.rate??Of(i,`proposedRate`,`candidateProposedRate`)??e.proposedRateValue),b=xf(v?.candidateProposedRateCurrencySymbol,v?.candidateProposedRateCurrency,Of(i,`proposedRate`,`candidateProposedRateCurrencySymbol`),Of(i,`proposedRate`,`candidateProposedRateCurrency`),Of(i,`candidateBudget`,`candidateBudgetCurrencySymbol`),Of(i,`candidateBudget`,`candidateBudgetCurrency`),l.clientBudgetCurrencySymbol,l.clientBudgetCurrency,a.currency,a.currencySymbol,r.currency),x=Wr(b,r.currency),S=xf(v?.candidateProposedRateUnit,v?.rateUnit,Of(i,`proposedRate`,`candidateProposedRateUnit`),Of(i,`candidateBudget`,`candidateBudgetUnit`),l.clientBudgetUnit,r.rateUnit),C=vf(Of(i,`candidateBudget`,`candidateBudgetStart`)??Of(i,`candidateBudget`,`candidateBudgetRate`)??Of(i,`candidateRate`,`candidateAcceptedRate`)),w=yf(Of(i,`submission_current_employer`,`isVmsRequired`)??Of(i,`submission_current_employer`,`isVMSRequired`)),T=vf(xf(Of(i,`submission_current_employer`,`vmsPercentage`),Of(i,`submission_current_employer`,`vmsCommission`),e.employer?.vmsPercentage,e.employer?.vmsCommission,s.vmsPercent)),E=T>0,D=w?T:0,O=String(Of(i,`submission_current_employer`,`vmsType`)??Of(i,`submission_current_employer`,`vmsCommissionType`)??`Recurring`),k=Of(i,`submission_current_employer`,`tax`);return{contractType:c,currency:x,currencyRaw:b,rateUnit:S,clientJobRate:f,clientJobRateFrom:u,clientJobRateTo:d,clientVmsPercent:h,clientVmsPercentageType:g,proposedRate:y,employerRate:C,employerVmsPercent:D,employerVmsPercentConfigured:T,employerVmsAvailable:E,employerVmsType:O,employerVmsRequired:w,locationTaxPercent:t.locationTaxPercent==null?k!=null&&k!==``?vf(k):Mf(t.locationTaxRows,Of(i,`submission_current_employer`,`locationId`)??Of(i,`submission_current_employer`,`location`)??Of(i,`city`)??Of(i,`state`)??a.jobLocation):vf(t.locationTaxPercent)}}function Mf(e,t){if(!Array.isArray(e)||!t)return 0;let n=String(t).trim().toLowerCase(),r=e.find(e=>{let t=String(e?.location??``).trim().toLowerCase();return t&&(t===n||n.includes(t)||t.includes(n))});return vf(r?.taxValue??r?.taxPercent)}function Nf(e,t={}){let{contractType:n=`C2C`,currency:r=_f.currency,currencyRaw:i,rateUnit:a=_f.rateUnit,clientJobRate:o=0,clientJobRateFrom:s=0,clientJobRateTo:c=0,clientVmsPercent:l=0,clientVmsPercentageType:u=`recurring`,proposedRate:d=0,employerRate:f=0,employerVmsPercent:p=0,employerVmsPercentConfigured:m=0,employerVmsAvailable:h=!1,employerVmsType:g=`Recurring`,employerVmsRequired:_=!1,locationTaxPercent:v=0}=e??{},y=Wr(r,_f.currency),b=t.proposedRate==null?vf(d):vf(t.proposedRate),x=!!t.includeReferral,S=x?vf(t.referralRate):0,C=(t.deductReferral==null?x:t.deductReferral)?S:0,w=Af(o,l),T=Sf(o-w),E=Af(b,l),D=Sf(b-E),O=n===`W2`,k=O?v:p,A=Af(f,k),j=Sf(f-A),M=Sf(D-j-C);return{contractType:n,currency:y,currencyRaw:i??y,rateUnit:a,rateUnitLabel:Kr(a),rateUnitShort:Jr(a),isW2:O,clientJobRate:Sf(o),clientJobRateFrom:Sf(s),clientJobRateTo:Sf(c),clientVmsPercent:vf(l),clientVmsPercentageType:u,clientDiscount:w,netClientRate:T,proposedRate:Sf(b),discountVms:E,netProposedRate:D,employerRate:Sf(f),employerDeductionPercent:vf(k),employerDeduction:A,employerDeductionLabel:O?`Location Tax`:`Employer VMS`,employerVmsType:g,employerVmsRequired:!!_,employerVmsPercentConfigured:vf(m),employerVmsAvailable:!!h,netEmployerRate:j,includereferral:x,referralRate:Sf(S),referralDeduction:Sf(C),totalMargin:M,marginPositive:M>=0}}function Pf(e,t,n={}){return Nf(jf(e,t,n.defaults),n)}var Ff={decimals:2,min:0};function If(e){let t=String(e??``).trim();if(!t||/e/i.test(t))return t?1/0:0;let n=t.indexOf(`.`);return n===-1?0:t.length-n-1}function Lf(e,t={}){let{decimals:n=Ff.decimals,min:r,max:i}={...Ff,...t};if(e==null||e===``)return!0;let a=String(e).trim();if(!/^-?\d*(\.\d*)?$/.test(a)||If(a)>vf(n))return!1;let o=Number(a);return!(!Number.isFinite(o)||r!=null&&o<vf(r)||i!=null&&o>vf(i))}var Rf=new Set([`Backspace`,`Delete`,`Tab`,`Enter`,`Escape`,`Home`,`End`,`ArrowLeft`,`ArrowRight`,`ArrowUp`,`ArrowDown`,`PageUp`,`PageDown`]);function zf(e={},t,n=``,r=null,i=null){if(Rf.has(t)||String(t??``).length!==1)return!0;let{decimals:a=Ff.decimals,min:o}={...Ff,...e},s=String(n??``),c=r??s.length,l=i??c,u=s.slice(0,c)+t+s.slice(l),d=o==null||vf(o)<0;return t===`-`?d&&/^-?\d*(\.\d*)?$/.test(u):t===`.`?vf(a)>0&&/^-?\d*(\.\d*)?$/.test(u):!/^\d$/.test(t)||!/^-?\d*(\.\d*)?$/.test(u)?!1:If(u)<=vf(a)}function Bf(e,t={}){let{decimals:n=Ff.decimals,min:r,max:i}={...Ff,...t},a=vf(e),o=10**vf(n);return a=Math.round((a+2**-52)*o)/o,r!=null&&(a=Math.max(a,vf(r))),i!=null&&(a=Math.min(a,vf(i))),a}function Vf(e,t,n=new Date){let r=n instanceof Date?n.toISOString():n;return[[`proposedRate`,e.proposedRate],[`discountVms`,e.discountVms],[`netProposedRate`,e.netProposedRate],[`employerRate`,e.employerRate],[e.isW2?`locationTax`:`employerVms`,e.employerDeduction],[`netEmployerRate`,e.netEmployerRate],[`referralRate`,e.referralRate],[`totalMargin`,e.totalMargin]].map(([e,n])=>({field:e,value:n,updatedBy:t,timestamp:r}))}function Hf(e,t=_f.currency){let n=Yr(e);return Zr(Number.isNaN(n)?0:n,t,{decimals:2})}var{TextArea:Uf}=d.Input,Wf=(...e)=>e.find(e=>e!=null&&e!==``)??`-`;function Gf(e){return String(e??``).toLowerCase().replace(/\s+/g,``)===`onetime`?`One Time`:`Recurring`}function Kf(e){let t=e?.$date??e;if(!t)return`-`;let r=(0,m.default)(t);return r.isValid()?r.format(n.Si().dateFormat):`-`}function qf(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}var Jf={date:Kf};function Yf(e,t){let n=(Array.isArray(e?.source)?e.source:[e?.source].filter(Boolean)).map(e=>qf(t,e)).find(e=>e!=null&&e!==``),r=Jf[e?.format];return r?r(n):n==null||n===``?`-`:n}function Xf(e,{onValue:t,onError:n}){return{min:e.min,max:e.max,step:e.step,precision:e.decimals,parser:e=>String(e??``).replace(/[^\d.-]/g,``),onKeyDown:t=>{if(t.ctrlKey||t.metaKey||t.altKey)return;let r=t.target??{};zf(e,t.key,r.value??``,r.selectionStart,r.selectionEnd)||(t.preventDefault(),n(!0))},onChange:r=>{n(!Lf(r,e)),t(Bf(r??0,e))}}}function Zf({label:e,value:t}){return(0,p.jsxs)(`div`,{className:`fa-info-item`,children:[(0,p.jsx)(`div`,{className:`fa-info-k`,children:e}),(0,p.jsx)(`div`,{className:`fa-info-v`,children:String(t??`-`)})]})}Zf.propTypes={label:g.default.string,value:g.default.node};function Qf({label:e,sub:t,value:n,deduction:r,children:i,total:a}){return(0,p.jsxs)(`div`,{className:`fa-rate-row${a?` fa-rate-total`:``}`,children:[(0,p.jsxs)(`div`,{className:`fa-rate-label`,children:[e,t?(0,p.jsx)(`span`,{className:`fa-rate-sub`,children:t}):null]}),i??(0,p.jsx)(`div`,{className:`fa-rate-val fa-num${r?` fa-deduction`:``}`,children:n})]})}Qf.propTypes={label:g.default.node,sub:g.default.node,value:g.default.node,deduction:g.default.bool,children:g.default.node,total:g.default.bool};function $f({label:e,value:t,hero:n,tone:r}){return(0,p.jsxs)(`div`,{className:`fa-stat${n?` fa-stat-hero`:``}${r?` fa-stat-${r}`:``}`,children:[(0,p.jsx)(`div`,{className:`fa-stat-k`,children:e}),(0,p.jsx)(`div`,{className:`fa-stat-v fa-num`,children:t})]})}$f.propTypes={label:g.default.string,value:g.default.node,hero:g.default.bool,tone:g.default.string};function ep({type:e,record:t,lookups:r,identity:i,referralOptions:a,onReferralChange:o,onAddReferral:s,onValuesChange:c,currentUserId:l,actions:m,onClose:h,variant:g}){let _=ff(e),v=(0,u.useMemo)(()=>({rateUnit:_.rateUnit,currency:_.currency}),[_]),y=(0,u.useMemo)(()=>jf(t,r,v),[t,r,v]),b=mf(_),[x,S]=(0,u.useState)(y.proposedRate),[C,w]=(0,u.useState)(t?.engagement?.financeApproval?.referralId??t?.referral?._id??null),[T,E]=(0,u.useState)(t?.engagement?.financeApproval?.referralRate??t?.referral?.referalRate??0),[D,O]=(0,u.useState)(t?.referral?.isNewReferral?0:t?.referral?.referalRate??t?.referral?.referralRate??t?.engagement?.financeApproval?.referralRate??0),[k,A]=(0,u.useState)(t?.engagement?.financeApproval?.referralType??t?.referral?.referralType??t?.referral?.referalType??`Recurring`),[j,M]=(0,u.useState)(!1),[N,P]=(0,u.useState)(!1),[F,I]=(0,u.useState)(``),[L,R]=(0,u.useState)(!1),[z,B]=(0,u.useState)(``),[V,H]=(0,u.useState)(!1),[U,W]=(0,u.useState)(``),G=!!_.sections.rateBreakdown?.editToggle,[ee,te]=(0,u.useState)(!1),ne=!G||ee,[re,ie]=(0,u.useState)(!1),[ae,oe]=(0,u.useState)(!1),[se,ce]=(0,u.useState)({open:!1,title:``,rows:[]}),[K,le]=(0,u.useState)({}),ue=_.sections.referral??{},de=t?.engagement?.financeApproval?.referralEnabled??t?.referralEnabled??(Number(T)>0||!!C),[fe,pe]=(0,u.useState)(!!de),me=ue.toggle===!0,he=Number(T)>0,q=ue.show===!0?!me||fe:ue.show===`ifEnabled`?fe:ue.show===`ifExists`&&he,ge=String(k??``).trim().toLowerCase().replace(/[\s_-]+/g,``).startsWith(`onetime`),_e=b&&q,ve=_e&&!ge,ye=_.rejection?.show?pf(_,t):``,J=(0,u.useMemo)(()=>Nf(y,{proposedRate:_.sections.rateBreakdown?.proposed?.editable?x:void 0,includeReferral:_e,deductReferral:ve,referralRate:T}),[y,x,T,_e,ve,_]),be=J.currency,xe=_.readOnly,Se=Number(J.proposedRate)>0,Ce=Number(_.margin?.minMarginPercent??20),we=Number(J.netProposedRate)>0?Number(J.totalMargin)/Number(J.netProposedRate)*100:0,Te=J.marginPositive?we<Ce?`fa-warn`:`fa-good`:`fa-bad`,Ee=J.isW2?`Candidate`:`Employer`,De=J.rateUnitShort?`/${J.rateUnitShort}`:``,Oe={record:t,identity:i,inputs:y,computed:J},ke=(_.header?.crumbFields??[]).map(e=>Yf(e,Oe)).filter(e=>e!==`-`&&e!==``&&e!=null).join(_.header?.crumbSeparator??` · `),Ae=_.sections.rateBreakdown?.proposed?.policy??Ff,je=_.sections.referral?.policy??Ae,Me=(0,u.useMemo)(()=>{let e=t?.submission?.proposedRateHistory,n=t?.submission?.proposedRate,r=Array.isArray(e)&&e.length?e:n;return(Array.isArray(r)?r:r&&typeof r==`object`?[r]:[]).map((e,t)=>({key:e?._id?.$oid??e?._id??`proposed-${t}`,rate:Number(e?.candidateProposedRate??e?.proposedRate??e?.rate),currency:e?.candidateProposedRateCurrencySymbol??e?.currencySymbol??be,unit:e?.candidateProposedRateUnit??e?.rateUnit??J.rateUnitShort??``,at:e?.updatedAt??e?.timestamp??e?.createdAt??e?.candidateProposedRateUpdateDT,by:e?.updatedByName??e?.updatedBy??e?.createdByName??e?.createdBy})).filter(e=>Number.isFinite(e.rate)).sort((e,t)=>{let n=new Date(e.at??0).getTime(),r=new Date(t.at??0).getTime();return(Number.isNaN(r)?0:r)-(Number.isNaN(n)?0:n)})},[t?.submission?.proposedRateHistory,t?.submission?.proposedRate,be,J.rateUnitShort]),Ne=(0,u.useMemo)(()=>{let e=t?.submission?.referralRateHistory,n=t?.submission?.referralDetails??t?.submission?.referalDetails;return(Array.isArray(e)&&e.length?e:Array.isArray(n)?n:n&&typeof n==`object`?[n]:[]).reduce((e,t)=>{let n={key:t?._id?.$oid??t?._id??`referral-${e.length}`,rate:Number(t?.referralRate??t?.referalRate??t?.rate),referralId:String(t?.referralId?.$oid??t?.referralId??t?.referalId?.$oid??t?.referalId??``),referralType:String(t?.referralType??t?.referalType??``),currency:t?.referralCurrencySymbol??t?.currencySymbol??be,unit:t?.referralUnit??t?.referalUnit??J.rateUnitShort??``,at:t?.updatedAt??t?.timestamp??t?.createdAt,by:t?.updatedByName??t?.updatedBy??t?.createdByName??t?.createdBy};if(!Number.isFinite(n.rate))return e;let r=e.at(-1);return r&&r.rate===n.rate&&r.referralId===n.referralId&&r.referralType===n.referralType||e.push(n),e},[]).sort((e,t)=>{let n=new Date(e.at??0).getTime(),r=new Date(t.at??0).getTime();return(Number.isNaN(r)?0:r)-(Number.isNaN(n)?0:n)})},[t?.submission?.referralRateHistory,t?.submission?.referralDetails,t?.submission?.referalDetails,be,J.rateUnitShort]);(0,u.useEffect)(()=>{let e=[...Me,...Ne].map(e=>e?.by).filter(e=>e!=null&&e!==``).map(e=>String(e).trim()).filter(e=>/^\d+$/.test(e)||/^[a-f0-9]{24}$/i.test(e)).filter((e,t,n)=>n.indexOf(e)===t).filter(e=>!K[e]);if(!e.length)return;let t=!1;return Promise.all(e.map(async e=>[e,await n.Un(e)])).then(e=>{if(t)return;let n=Object.fromEntries(e.filter(([,e])=>String(e??``).trim()));Object.keys(n).length&&le(e=>({...e,...n}))}).catch(()=>null),()=>{t=!0}},[Me,Ne,K]);let Pe=(e,t)=>{ce({open:!0,title:e,rows:t})};(0,u.useEffect)(()=>{c?.({proposedRate:Number(x)||0,referralId:C==null?``:String(C?.$oid??C),referralRate:Number(T)||0,referralType:String(k??``),referralEnabled:!!fe})},[c,x,C,T,k,fe]);let Fe=_.labels?.employerVms??{},Ie=J.employerVmsRequired&&J.employerVmsAvailable,Le=!!_.sections.rateBreakdown?.proposed?.editable,Re=Number(J.clientJobRate)||0,ze=Le&&Re>0&&Number(x)>Re,Be=_.sections.rateBreakdown?.proposed?.overClient??{},Ve=_.sections.rateBreakdown?.proposed?.overClientPolicy??`warn`,He=ze&&Ve===`block`,Ue=ze&&Ve===`warn`,We=ze?Number(x)-Re:0,Ge=Re>0?We/Re*100:0,Ke={proposed:`${Hf(Number(x),be)}${De}`,client:`${Hf(Re,be)}${De}`,delta:`${Hf(We,be)}${De}`,pct:`${Ge.toFixed(+(Ge<10))}%`,unit:J.rateUnitShort??``},qe=e=>rf(Be[e],Ke),Je=_.actions?.primary,Ye=!!Je?.requireProposedRate&&!(Number(J.proposedRate)>0),Xe=Ye?`Enter the Proposed Rate first — it drives the margin and the rate sent for approval.`:He?qe(`blockMessage`):``,Ze=e=>{w(e),oe(!1);let t=(a??[]).find(t=>t.value===e);if(!t?.isNewReferral&&t?.lastRate!=null&&t.lastRate!==``){let e=Number(t.lastRate)||0;E(e),O(e)}else O(0);t?.type&&A(t.type),o?.(e,t)},Qe=e=>{let t=e.target.checked;pe(t),oe(t)},$e=e=>(0,p.jsxs)(`div`,{children:[e,s&&(0,p.jsx)(`div`,{className:`fa-referral-dropdown-footer`,children:(0,p.jsx)(n.Gn,{className:`fa-referral-add-btn`,icon:(0,p.jsx)(f.UserAddOutlined,{}),onMouseDown:e=>e.preventDefault(),onClick:()=>{oe(!1),s()},children:`Add`})})]}),et=async(e,{skipOverClientConfirm:t=!1}={})=>{if(!e)return;if(e===_.actions.primary&&Xe){d.message.error(Xe);return}if(e===_.actions.primary&&Ue&&!t){ie(!0);return}if(e.requireReason&&!F.trim()){R(!0);return}if(e.requireCategory&&!z){H(!0);return}let n=m?.[e.api];if(!n){d.message.error(`No handler wired for "${e.api}"`);return}W(e.key);try{await n({computed:J,proposedRate:J.proposedRate,referral:q?{referralId:C,referralRate:J.referralRate,referralType:k,referralEnabled:!0}:{referralEnabled:!1,referralRate:0},referralEnabled:fe,reason:F.trim(),category:z,rateHistory:_.persist?.rateHistory?Vf(J,l):void 0})}catch(e){d.message.error(e?.message??`Action failed`)}finally{W(``)}},tt=_.actions.primary,nt=_.actions.reject;return(0,p.jsxs)(`div`,{className:`fa-panel fa-variant-${g}`,children:[_.header?.show!==!1&&(0,p.jsx)(`div`,{className:`fa-topbar`,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`fa-crumb`,children:ke}),(0,p.jsxs)(`div`,{className:`fa-title-row`,children:[(0,p.jsxs)(`h2`,{className:`fa-title`,children:[_.title,` — `,Wf(i?.name,t?.submission?.candidateFullName)]}),(0,p.jsxs)(`span`,{className:`fa-status-pill`,children:[(0,p.jsx)(f.ClockCircleOutlined,{}),` `,_.statusLabel]})]})]})}),_.rejection?.show&&(0,p.jsxs)(`div`,{className:`fa-rejection`,children:[(0,p.jsx)(f.CloseCircleFilled,{className:`fa-rejection-icon`}),(0,p.jsxs)(`div`,{className:`fa-rejection-body`,children:[(0,p.jsx)(`div`,{className:`fa-rejection-title`,children:_.rejection.title}),(0,p.jsx)(`div`,{className:`fa-rejection-reason${ye?``:` fa-rejection-empty`}`,children:ye||`No reason was provided.`})]})]}),_.trail?.show&&(0,p.jsx)(`div`,{className:`fa-trail`,children:_.trail.steps.map((e,t)=>(0,p.jsxs)(`span`,{className:`fa-trail-part`,children:[(0,p.jsxs)(`span`,{className:`fa-trail-step${e.key===_.trail.current?` fa-current`:``}`,children:[e.key===_.trail.current?(0,p.jsx)(f.ClockCircleOutlined,{}):(0,p.jsx)(f.CheckOutlined,{}),e.label]}),t<_.trail.steps.length-1&&(0,p.jsx)(`span`,{className:`fa-trail-sep`,children:`→`})]},e.key))}),_.sections.jobClient?.show&&(0,p.jsxs)(`section`,{className:`fa-card`,children:[(0,p.jsx)(`div`,{className:`fa-card-head`,children:(0,p.jsx)(`h3`,{children:_.sections.jobClient.title})}),(0,p.jsx)(`div`,{className:`fa-card-body`,children:(0,p.jsx)(`div`,{className:`fa-info-grid`,children:(_.sections.jobClient.items??[]).map(e=>(0,p.jsx)(Zf,{label:e.label,value:Yf(e,Oe)},e.key))})})]}),_.sections.clientJobRate?.show&&(0,p.jsxs)(`section`,{className:`fa-card`,children:[(0,p.jsx)(`div`,{className:`fa-card-head`,children:(0,p.jsx)(`h3`,{children:`Client Job Rate`})}),(0,p.jsx)(`div`,{className:`fa-card-body`,children:(0,p.jsxs)(`div`,{className:`fa-strip`,children:[(0,p.jsxs)(`div`,{className:`fa-strip-item`,children:[(0,p.jsx)(`span`,{className:`fa-strip-k`,children:`Client Job Rate`}),(0,p.jsxs)(`span`,{className:`fa-strip-v fa-num`,children:[Hf(J.clientJobRate,be),De]})]}),(0,p.jsxs)(`span`,{className:`fa-strip-op fa-num`,children:[`− `,J.clientVmsPercent,`% VMS`,(0,p.jsx)(`span`,{className:`fa-type-chip fa-vms-chip`,children:Gf(J.clientVmsPercentageType)})]}),(0,p.jsx)(`span`,{className:`fa-strip-eq`,children:`=`}),(0,p.jsxs)(`div`,{className:`fa-strip-item`,children:[(0,p.jsx)(`span`,{className:`fa-strip-k`,children:`Net Client Rate`}),(0,p.jsxs)(`span`,{className:`fa-strip-v fa-num`,style:{color:`var(--color-brand, #0053a5)`},children:[Hf(J.netClientRate,be),De]})]}),_.sections.clientJobRate.note&&(0,p.jsxs)(`div`,{className:`fa-strip-note`,children:[`For context only — the client-side rate doesn't feed into the `,_.margin.label,` below.`]})]})})]}),_.sections.rateBreakdown?.show&&(0,p.jsxs)(`section`,{className:`fa-card`,children:[(0,p.jsxs)(`div`,{className:`fa-card-head`,children:[(0,p.jsx)(`h3`,{children:`Rate Breakdown`}),_.sections.rateBreakdown.finalBadge&&(0,p.jsxs)(`span`,{className:`fa-final-badge`,children:[(0,p.jsx)(f.LockOutlined,{}),` Final`]}),G&&!xe&&!ee&&(0,p.jsx)(n.Gn,{className:`fa-rate-edit-btn`,size:`small`,onClick:()=>te(!0),children:`Edit`})]}),(0,p.jsxs)(`div`,{className:`fa-card-body`,children:[(0,p.jsxs)(`div`,{className:`fa-rate-grid`,children:[(0,p.jsxs)(`div`,{className:`fa-rate-panel fa-employer`,children:[(0,p.jsxs)(`div`,{className:`fa-panel-head`,children:[(0,p.jsx)(`span`,{className:`fa-dot`}),Ee,` Rate`]}),(0,p.jsxs)(`div`,{className:`fa-rate-rows`,children:[(0,p.jsx)(Qf,{label:`${Ee} Rate`,sub:`as submitted by recruiter`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.employerRate,be),` `,(0,p.jsx)(`span`,{className:`fa-unit`,children:De})]})}),J.isW2&&(0,p.jsx)(Qf,{label:`Employer Location`,sub:`used to determine location tax`,children:(0,p.jsx)(`div`,{className:`fa-rate-val`,children:Wf(i?.employerLocation,t?.submission?.city,t?.job?.jobLocation)})}),!J.isW2&&!Ie?(0,p.jsx)(Qf,{label:(0,p.jsx)(`span`,{className:`fa-locked-label`,children:Fe.required}),sub:J.employerVmsAvailable?Fe.notRequiredSub:Fe.unavailableSub,value:(0,p.jsx)(`span`,{className:`fa-vms-none`,children:J.employerVmsAvailable?Fe.notRequired:Fe.unavailable})}):(0,p.jsx)(Qf,{label:J.isW2?J.employerDeductionLabel:(0,p.jsxs)(`span`,{className:`fa-locked-label`,children:[J.employerDeductionLabel,(0,p.jsx)(`span`,{className:`fa-type-chip fa-vms-chip`,children:Gf(J.employerVmsType)})]}),sub:`${J.employerDeductionPercent}% of employer rate`,value:`−${Hf(J.employerDeduction,be).replace(`−`,``)}`,deduction:!0}),(0,p.jsx)(Qf,{total:!0,label:`Net ${Ee} Rate`,value:(0,p.jsx)(`span`,{style:{color:`var(--color-purple, #7c3aed)`},children:Hf(J.netEmployerRate,be)})})]})]}),(0,p.jsxs)(`div`,{className:`fa-rate-panel fa-client`,children:[(0,p.jsxs)(`div`,{className:`fa-panel-head`,children:[(0,p.jsx)(`span`,{className:`fa-dot`}),`Proposed Rate`]}),(0,p.jsxs)(`div`,{className:`fa-rate-rows`,children:[_.sections.rateBreakdown.proposed.editable&&ne?(0,p.jsxs)(`div`,{className:`fa-rate-row fa-editable`,children:[(0,p.jsxs)(`div`,{className:`fa-editable-head`,children:[(0,p.jsxs)(`span`,{className:`fa-editable-label`,children:[`Proposed Rate`,(0,p.jsx)(`span`,{className:`fa-edit-badge`,children:`Editable`}),_.persist?.proposedRateHistory&&(0,p.jsx)(`button`,{type:`button`,className:`fa-history-btn`,"aria-label":`View proposed rate history`,title:`View proposed rate history`,onClick:()=>Pe(`Proposed Rate History`,Me),children:(0,p.jsx)(f.ClockCircleOutlined,{})})]}),(0,p.jsx)(d.InputNumber,{className:`fa-rate-input`,...Xf(Ae,{onValue:S,onError:M}),value:x,prefix:be,controls:!1,status:j||He?`error`:Ue?`warning`:``})]}),(0,p.jsx)(`div`,{className:`fa-editable-sub`,children:`rate we ask the client for`}),j&&(0,p.jsxs)(`div`,{className:`fa-reason-error`,children:[`! `,Ae.message]}),Ye&&(0,p.jsxs)(`div`,{className:`fa-reason-error`,children:[`! Enter the proposed rate to enable `,Je?.label??`approval`,`.`]}),He&&(0,p.jsxs)(`div`,{className:`fa-reason-error`,children:[`! `,qe(`blockMessage`)]}),_.rejection?.show&&(0,p.jsxs)(`div`,{className:`fa-last-rejected`,children:[`Last rejected at `,(0,p.jsxs)(`b`,{children:[Hf(y.proposedRate,be),De]})]})]}):(0,p.jsx)(Qf,{label:(0,p.jsxs)(`span`,{className:`fa-locked-label`,children:[`Proposed Rate`,_.sections.rateBreakdown.proposed.editable&&_.persist?.proposedRateHistory&&(0,p.jsx)(`button`,{type:`button`,className:`fa-history-btn`,"aria-label":`View proposed rate history`,title:`View proposed rate history`,onClick:()=>Pe(`Proposed Rate History`,Me),children:(0,p.jsx)(f.ClockCircleOutlined,{})}),_.sections.rateBreakdown.proposed.locked&&(0,p.jsxs)(`span`,{className:`fa-locked-badge`,children:[(0,p.jsx)(f.LockOutlined,{}),` Locked`]})]}),sub:`approved at finance review`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.proposedRate,be),` `,(0,p.jsx)(`span`,{className:`fa-unit`,children:De})]})}),(0,p.jsx)(Qf,{label:(0,p.jsxs)(`span`,{className:`fa-locked-label`,children:[`Discount (VMS)`,(0,p.jsx)(`span`,{className:`fa-type-chip fa-vms-chip`,children:Gf(J.clientVmsPercentageType)})]}),sub:`${J.clientVmsPercent}% of proposed rate`,value:`−${Hf(J.discountVms,be).replace(`−`,``)}`,deduction:!0}),(0,p.jsx)(Qf,{total:!0,label:`Net Proposed Rate`,value:(0,p.jsx)(`span`,{style:{color:`var(--color-brand, #0053a5)`},children:Hf(J.netProposedRate,be)})})]})]})]}),me&&!xe&&ne&&(0,p.jsxs)(`div`,{className:`fa-referral-toggle`,children:[(0,p.jsx)(d.Checkbox,{checked:fe,onChange:Qe,children:(0,p.jsx)(`span`,{className:`fa-rt-title`,children:ue.toggleLabel??`Add Referral`})}),(0,p.jsx)(`div`,{className:`fa-rt-hint`,children:ue.toggleHint})]})]})]}),q&&(0,p.jsxs)(`section`,{className:`fa-card fa-referral-card`,children:[(0,p.jsxs)(`div`,{className:`fa-card-head`,children:[(0,p.jsxs)(`h3`,{children:[(0,p.jsx)(`span`,{className:`fa-dot fa-dot-warning`}),`Referral`]}),ue.mode===`print`&&ue.typeChip&&(0,p.jsx)(`span`,{className:`fa-type-chip`,children:k})]}),(0,p.jsx)(`div`,{className:`fa-card-body`,children:ue.mode===`select`&&ne?(0,p.jsxs)(`div`,{className:`fa-referral-fields`,children:[(0,p.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,p.jsx)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-company`,children:`Referral Company`}),(0,p.jsx)(d.Select,{id:`fa-referral-company`,className:`fa-referral-select`,placeholder:`Select a referral`,open:ae,value:C??void 0,onChange:Ze,options:a??[],showSearch:!0,optionFilterProp:`label`,onDropdownVisibleChange:oe,onOpenChange:oe,popupRender:$e,dropdownRender:$e})]}),(0,p.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,p.jsxs)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-rate`,children:[`Referral Rate`,ue.rateEditable&&_.persist?.rateHistory&&(0,p.jsx)(`button`,{type:`button`,className:`fa-history-btn`,"aria-label":`View referral rate history`,title:`View referral rate history`,onClick:()=>Pe(`Referral Rate History`,Ne),children:(0,p.jsx)(f.ClockCircleOutlined,{})})]}),(0,p.jsx)(d.InputNumber,{id:`fa-referral-rate`,className:`fa-referral-rate-input`,...Xf(je,{onValue:E,onError:P}),value:T,prefix:be,controls:!1,disabled:!C,status:N?`error`:``}),N&&(0,p.jsxs)(`div`,{className:`fa-reason-error`,children:[`! `,je.message]})]}),(0,p.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,p.jsx)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-type`,children:`Referral Type`}),(0,p.jsx)(d.Select,{id:`fa-referral-type`,className:`fa-referral-type`,value:k,onChange:A,disabled:!C,options:[{value:`Recurring`,label:`Recurring — every pay cycle`},{value:`One-time`,label:`One-time payout`}]})]}),C&&(0,p.jsx)(`div`,{className:`fa-referral-note`,children:D?(0,p.jsxs)(p.Fragment,{children:[`Last referral rate paid to this company:`,` `,(0,p.jsx)(`b`,{children:Hf(D,be)})]}):(0,p.jsx)(`b`,{children:`New referral`})})]}):(0,p.jsxs)(`div`,{className:`fa-rate-rows fa-print-rows`,children:[(0,p.jsx)(Qf,{label:`Referral Name`,sub:`added during onboarding`,children:(0,p.jsx)(`div`,{className:`fa-rate-val`,children:Wf(t?.referral?.referalCompanyName,i?.referralName)})}),(0,p.jsx)(Qf,{label:(0,p.jsxs)(`span`,{className:`fa-locked-label`,children:[`Referral Rate`,ue.rateEditable&&_.persist?.rateHistory&&(0,p.jsx)(`button`,{type:`button`,className:`fa-history-btn`,"aria-label":`View referral rate history`,title:`View referral rate history`,onClick:()=>Pe(`Referral Rate History`,Ne),children:(0,p.jsx)(f.ClockCircleOutlined,{})})]}),sub:ge?`one-time payout — excluded from recurring margin`:`deducted every pay cycle`,value:ge?Hf(T,be):`−${Hf(T,be).replace(`−`,``)}${De?` ${De}`:``}`,deduction:!ge})]})})]}),Se&&(0,p.jsxs)(`div`,{className:`fa-outcome ${Te}`,children:[(0,p.jsxs)(`div`,{className:`fa-outcome-label`,children:[(0,p.jsx)(`div`,{className:`fa-outcome-icon`,children:Te===`fa-good`?(0,p.jsx)(f.RiseOutlined,{}):(0,p.jsx)(f.WarningOutlined,{})}),(0,p.jsx)(`div`,{className:`fa-outcome-t`,children:_.margin.label})]}),(0,p.jsxs)(`div`,{className:`fa-outcome-stats`,children:[(0,p.jsx)($f,{label:`Net Proposed Rate`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.netProposedRate,be),(0,p.jsx)(`span`,{className:`fa-u`,children:De})]})}),(0,p.jsx)(`span`,{className:`fa-stat-arrow`,children:`−`}),(0,p.jsx)($f,{label:`Net ${Ee} Rate`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.netEmployerRate,be),(0,p.jsx)(`span`,{className:`fa-u`,children:De})]})}),ve&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`span`,{className:`fa-stat-arrow`,children:`−`}),(0,p.jsx)($f,{label:`Referral Rate`,tone:`referral`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.referralRate,be),(0,p.jsx)(`span`,{className:`fa-u`,children:De})]})})]}),(0,p.jsx)($f,{hero:!0,label:`Margin`,value:(0,p.jsxs)(p.Fragment,{children:[Hf(J.totalMargin,be),(0,p.jsx)(`span`,{className:`fa-u`,children:De})]})})]})]}),Se&&(0,p.jsxs)(`div`,{className:`fa-margin-note ${Te}`,children:[(0,p.jsxs)(`span`,{className:`fa-margin-note-pct`,children:[we.toFixed(1),`%`]}),(0,p.jsx)(`span`,{className:`fa-margin-note-text`,children:Te===`fa-bad`?(0,p.jsxs)(p.Fragment,{children:[`This submission is running at a `,(0,p.jsx)(`b`,{children:`loss`}),`. Adjust the proposed or employer rate before approving.`]}):Te===`fa-warn`?(0,p.jsxs)(p.Fragment,{children:[`Profit margin is `,(0,p.jsxs)(`b`,{children:[`below the `,Ce,`% target`]}),`. Consider a higher proposed rate before approving.`]}):(0,p.jsxs)(p.Fragment,{children:[`Healthy margin — at or above the `,Ce,`% target.`]})})]}),nt?.requireReason&&(0,p.jsxs)(`div`,{className:`fa-reason`,children:[nt.requireCategory&&(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`label`,{className:`fa-reason-label`,htmlFor:`fa-rejection-category`,children:[`Return To `,(0,p.jsx)(`span`,{children:`(required to reject)`})]}),(0,p.jsx)(d.Select,{id:`fa-rejection-category`,placeholder:`Select where to return this rejection`,value:z||void 0,status:V?`error`:``,options:[{value:`submission`,label:`Submission`},{value:`onboarding`,label:`Onboarding`}],onChange:e=>{B(e),H(!1)},style:{width:`100%`,marginBottom:16}}),V&&(0,p.jsx)(`div`,{className:`fa-reason-error`,children:`! Select where to return the rejection.`})]}),(0,p.jsxs)(`label`,{className:`fa-reason-label`,htmlFor:`fa-reason`,children:[`Comments `,(0,p.jsx)(`span`,{children:`(required to reject)`})]}),(0,p.jsx)(Uf,{id:`fa-reason`,rows:3,maxLength:500,showCount:!0,value:F,status:L?`error`:``,placeholder:`Enter your comments here…`,onChange:e=>{I(e.target.value),e.target.value.trim()&&R(!1)}}),L&&(0,p.jsx)(`div`,{className:`fa-reason-error`,children:`! Comments are required when rejecting.`})]}),Ue&&(0,p.jsxs)(`div`,{className:`fa-rate-warning`,role:`status`,children:[(0,p.jsxs)(`div`,{className:`fa-rate-warning-head`,children:[(0,p.jsx)(f.WarningOutlined,{className:`fa-rate-warning-icon`}),(0,p.jsx)(`h4`,{children:qe(`title`)})]}),(0,p.jsxs)(`div`,{className:`fa-rate-warning-grid`,children:[(0,p.jsxs)(`div`,{className:`fa-rate-warning-cell`,children:[(0,p.jsx)(`span`,{className:`fa-rate-warning-key`,children:`Client Job Rate`}),(0,p.jsx)(`span`,{className:`fa-rate-warning-val`,children:Ke.client})]}),(0,p.jsxs)(`div`,{className:`fa-rate-warning-cell`,children:[(0,p.jsx)(`span`,{className:`fa-rate-warning-key`,children:`Proposed Rate`}),(0,p.jsx)(`span`,{className:`fa-rate-warning-val`,children:Ke.proposed})]}),(0,p.jsxs)(`div`,{className:`fa-rate-warning-cell fa-rate-warning-delta`,children:[(0,p.jsx)(`span`,{className:`fa-rate-warning-key`,children:`Over by`}),(0,p.jsxs)(`span`,{className:`fa-rate-warning-val`,children:[Ke.delta,` `,(0,p.jsxs)(`small`,{children:[`(`,Ke.pct,`)`]})]})]})]}),qe(`body`)&&(0,p.jsx)(`p`,{className:`fa-rate-warning-body`,children:qe(`body`)}),(0,p.jsxs)(`p`,{className:`fa-rate-warning-margin`,children:[`Resulting margin:`,` `,(0,p.jsxs)(`b`,{className:Te,children:[Hf(J.totalMargin,be),De,Number(J.netProposedRate)>0&&(0,p.jsxs)(p.Fragment,{children:[` (`,we.toFixed(1),`%)`]})]})]})]}),(0,p.jsx)(d.Modal,{title:se.title,open:se.open,footer:null,onCancel:()=>ce(e=>({...e,open:!1})),children:se.rows.length?(0,p.jsx)(`div`,{className:`fa-history-list`,children:se.rows.map(e=>(0,p.jsxs)(`div`,{className:`fa-history-row`,children:[(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(`div`,{className:`fa-history-rate fa-num`,children:[e.currency||be,e.rate.toFixed(2),e.unit?`/${e.unit}`:``]}),e.by!==void 0&&e.by!==null&&e.by!==``&&(0,p.jsxs)(`div`,{className:`fa-history-by`,children:[`Updated by `,K[String(e.by)]||String(e.by)]})]}),(0,p.jsx)(`div`,{className:`fa-history-date`,children:Kf(e.at)})]},e.key))}):(0,p.jsx)(`div`,{className:`fa-history-empty`,children:`No rate history available.`})}),(0,p.jsx)(d.Modal,{open:re,title:qe(`confirmTitle`),okText:qe(`confirmOk`)||`Approve anyway`,cancelText:qe(`confirmCancel`)||`Go back`,okButtonProps:{danger:!0},onCancel:()=>ie(!1),onOk:()=>{ie(!1),et(_.actions.primary,{skipOverClientConfirm:!0})},children:(0,p.jsx)(`p`,{children:qe(`confirmBody`)})}),_.actions?.show!==!1&&(tt||nt)&&(0,p.jsxs)(`div`,{className:`fa-action-bar`,children:[(0,p.jsx)(`div`,{className:`fa-action-note`,children:Ye?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`b`,{children:`Proposed rate required`}),` — enter it above to enable `,tt?.label??`approval`,`.`]}):e===`cfo`?(0,p.jsxs)(p.Fragment,{children:[`Approving finalizes payroll at `,(0,p.jsxs)(`b`,{children:[Hf(J.netProposedRate,be),De]}),q?(0,p.jsxs)(p.Fragment,{children:[` including the `,String(k).toLowerCase(),` `,(0,p.jsxs)(`b`,{children:[Hf(T,be),De]}),` referral`]}):null,`.`]}):(0,p.jsxs)(p.Fragment,{children:[`Approving locks the `,(0,p.jsxs)(`b`,{children:[Hf(J.netProposedRate,be),De]}),` proposed rate and moves this forward.`]})}),(0,p.jsxs)(`div`,{className:`fa-actions`,children:[h&&(0,p.jsx)(n.Gn,{className:`fa-btn-ghost`,onClick:h,children:`Cancel`}),nt&&(0,p.jsx)(n.Gn,{danger:!0,loading:U===nt.key,disabled:!!U,onClick:()=>et(nt),children:nt.label}),tt&&(0,p.jsx)(d.Tooltip,{title:Xe||``,placement:`top`,children:(0,p.jsx)(`span`,{className:`fa-btn-tip`,children:(0,p.jsx)(n.Gn,{variant:`primary`,icon:(0,p.jsx)(f.CheckOutlined,{}),loading:U===tt.key,disabled:!!U||!!Xe,onClick:()=>et(tt),children:tt.label})})})]})]})]})}ep.propTypes={type:g.default.string.isRequired,record:g.default.object,lookups:g.default.object,identity:g.default.object,referralOptions:g.default.array,onReferralChange:g.default.func,onAddReferral:g.default.func,onValuesChange:g.default.func,currentUserId:g.default.oneOfType([g.default.number,g.default.string]),actions:g.default.object,onClose:g.default.func,variant:g.default.oneOf([`popup`,`page`])},ep.defaultProps={record:{},lookups:{},identity:{},referralOptions:[],variant:`page`};var tp=e=>String(e??``).trim().toLowerCase();function np(e){let t=e?.data??e;for(let e of[`data`,`rows`,`records`,`items`,`list`])if(Array.isArray(t?.[e]))return t[e];return Array.isArray(t)?t:[]}var rp=e=>n.ii(e,300,0).then(np).catch(()=>[]),ip=e=>t=>e&&wf(t._id??t.id)===String(e),ap=(e,n)=>n?t.o(t.S,`/module/list?module=${encodeURIComponent(e)}&id=${encodeURIComponent(n)}`).then(e=>{let t=e?.data??e??{};return(Array.isArray(t?.data)?t.data:Array.isArray(t)?t:[])[0]??{}}).catch(()=>({})):Promise.resolve({}),op=e=>e==null||e===``?Promise.resolve(null):t.o(t.S,`/get-detailed-view?userId=${encodeURIComponent(e)}`).then(e=>e?.data??e??null).catch(()=>null);function sp(e){return e&&([e.first_name??e.firstName??e.FIRST_NAME,e.last_name??e.lastName??e.LAST_NAME].filter(Boolean).join(` `).trim()||e.user_name||e.userName||e.username||e.email)||``}function cp(e){let t=e?.jobPayDetails,n=Array.isArray(t)?t[t.length-1]:t;return n&&typeof n==`object`&&!Array.isArray(n)?n:{}}async function lp(e,t){if(!t)return{};let n=await up(e,t).catch(()=>({}));return{...Ef(Tf(n.groups??[])),...n.recordMeta??{}}}async function up(e,t){let{fetchFormGroupsPayload:n}=await Promise.resolve().then(()=>require("./addFormApi-C99DyZ1z.cjs")).then(e=>e.t),r=await n({module:e,id:t});return r?.data??r??{}}async function dp(e,t={}){let r=await up(`submission`,e).catch(()=>({})),i=r.groups??[],a=r.recordMeta??{},o=Tf(i),s=Df(i),c=wf(a.clientId??o.clientId??t.clientId),l=wf(a.jobId??o.jobId??t.jobId),u=wf(s.employerId),d=a.createdBy??o.createdBy??t.createdBy,f=s.locationId??s.location,[p,m,h,g,_,v,y,b,x]=await Promise.all([l?n.Zr(`jobs`,l).catch(()=>null):Promise.resolve(null),rp(`jobs`),rp(`clients`),rp(`employers`),rp(`locations`),rp(`workforceEngagements`),lp(`jobs`,l),op(d),ap(`submissions`,e)]),S=p?.data??p??{},C=S.record??S.item??S??{},w=m.find(ip(l))??{},T={...w,...C,...y};T.jobPayDetails={...cp(w),...cp(C),...cp(y)};let E=(Array.isArray(v)?v:[]).find(t=>wf(t.submissionId)===String(e)),D=wf(T.clientId)||wf(E?.clientId)||c,O=o.clientName??t.clientName??T.clientName,k=O?h.filter(e=>tp(e.clientName)===tp(O)):[],A=h.find(ip(D))??k[0]??{},j=await lp(`clients`,wf(A._id??A.id)||D),M={...A,...j},N=g.find(ip(u))??{},P=_.find(ip(f))??_.find(e=>tp(e.name)===tp(f))??{};return{record:{submission:{...x.signatureEmail?{signatureEmail:x.signatureEmail}:{},...t,...o,submission_current_employer:[s]},job:T,client:M,employer:N},lookups:{clientVmsFee:M.vmsFee??o.clientVmsFee??o.vmsFee,locationTaxPercent:s.tax??P.taxValue},display:{clientName:o.clientName??M.clientName,jobTitle:o.jobTitle??T.jobTitle,reqId:a.jobClientRefrenceId??o.jobRefrenceId??a.jobRefrenceId??a.mspReqId,jobLocation:o.jobLocation??T.jobLocation,employerName:N.empCompanyName,employerLocation:P.name??N.empCompanyLocation??f,submittedBy:x.signatureEmail||o.signatureEmail||t.signatureEmail||sp(b),email:o.email,candidateName:[o.firstName,o.lastName].filter(Boolean).join(` `)||o.candidateFullName,createdAt:a.createdAt,submissionId:a.submissionId},engagement:E??null,meta:a}}function fp(e={}){return e.referalCompanyName??e.referralCompanyName??e.referalName??e.referralName??e.vendorName??e.employerName??e.name??e.companyName??``}function pp(e={}){let t=Array.isArray(e.referralDetails)?e.referralDetails.at(-1):e.referralDetails,n=e.financeApproval??e.financeApprovalRequest??{},r=Array.isArray(n.referralDetails)?n.referralDetails.at(-1):n.referralDetails,i=[t?.referalRate,t?.referralRate,r?.referalRate,r?.referralRate,n.referalRate,n.referralRate,e.referalRate,e.referralRate,e.referralLastPayRate,e.referalLastPayRate,e.lastPayRate,e.payRate].find(e=>e!=null&&e!==``),a=Number(i);return Number.isFinite(a)?a:0}function mp(e){return String(e??``).trim().toLowerCase().replace(/\s+/g,` `)}function hp(e={}){let t=Array.isArray(e.referralDetails)?e.referralDetails:[e.referralDetails].filter(Boolean),n=e.financeApproval??e.financeApprovalRequest??{},r=Array.isArray(n.referralDetails)?n.referralDetails:[n.referralDetails].filter(Boolean);return[e._id,e.id,e.referralId,e.referalId,e.referral_id,e.referal_id,e.referral?._id,e.referral?.id,e.referal?._id,e.referal?.id,n.referralId,n.referalId,e.engagement?.referralId,e.engagement?.referalId,e.engagement?.financeApproval?.referralId,e.engagement?.financeApproval?.referalId,...t.flatMap(e=>[e?.referralId,e?.referalId,e?.referral_id,e?.referal_id]),...r.flatMap(e=>[e?.referralId,e?.referalId,e?.referral_id,e?.referal_id])].map(wf).filter(Boolean)}function gp(e={}){let t=Array.isArray(e.referralDetails)?e.referralDetails:[e.referralDetails].filter(Boolean),n=e.financeApproval??e.financeApprovalRequest??{},r=Array.isArray(n.referralDetails)?n.referralDetails:[n.referralDetails].filter(Boolean);return[fp(e),fp(e.referral??{}),fp(e.referal??{}),e.referralCompanyName,e.referalCompanyName,e.referralName,e.referalName,n.referralCompanyName,n.referalCompanyName,n.referralName,n.referalName,e.engagement?.referralCompanyName,e.engagement?.referalCompanyName,e.engagement?.referralName,e.engagement?.referalName,...t.flatMap(e=>[e?.referralCompanyName,e?.referalCompanyName,e?.referralName,e?.referalName]),...r.flatMap(e=>[e?.referralCompanyName,e?.referalCompanyName,e?.referralName,e?.referalName])].map(mp).filter(Boolean)}function _p(e={}){let t=e.financeApproval?.approvedAt??e.financeApproval?.submittedAt??e.financeApprovalRequest?.approvedAt??e.financeApprovalRequest?.submittedAt??e.decidedAt??e.submittedAt??e.updatedAt??e.createdAt??0;return new Date(t?.$date??t).getTime()||0}async function vp(e,{pageSize:n=100,maxPages:r=20}={}){let i=[];for(let a=1;a<=r;a+=1){let r=new URLSearchParams({module:e,page:String(a),limit:String(n)}),o=await t.o(t.S,`/module/list?${r.toString()}`),s=o?.data??o??{},c=Array.isArray(s?.data)?s.data:Array.isArray(s?.rows)?s.rows:Array.isArray(s)?s:[];i.push(...c);let l=Number(s?.total??0);if(c.length<n||l>0&&i.length>=l)break}return i}function yp(e={},t=[]){let n=new Set(hp(e)),r=new Set(gp(e));return!n.size&&!r.size?0:t.filter(e=>hp(e).some(e=>n.has(e))||gp(e).some(e=>r.has(e))).map(e=>({rate:pp(e),date:_p(e)})).filter(e=>e.rate>0).sort((e,t)=>t.date-e.date)[0]?.rate??0}async function bp(){let e=(await rp(`referrals`)).filter(e=>!e?.isDeleted&&fp(e)),t=(await Promise.all([`submissions`,`workforceFinanceApprovals`,`workforceEngagements`,`onboarding`,`candidateMovements`].map(e=>vp(e).catch(()=>[])))).flat();return(await Promise.all(e.map(async e=>{let n=yp(e,t),r=pp(e),i=n>0?n:r;return{value:wf(e._id??e.id),label:fp(e),isNewReferral:i<=0,hasHistory:i>0,lastRate:i,lastPayRate:i,referralLastPayRate:i,referalLastPayRate:i,rate:i,referralRate:i,referalRate:i,type:e.referalType??e.referralType,record:e}}))).filter(e=>e.value)}function xp({title:e=`Proof`,files:t=[],onPreview:n,emptyText:r=`No files uploaded`,className:i}){return t.length?(0,p.jsx)(d.Card,{size:`small`,title:e,className:`znx-file-list__card ${i??``}`.trim(),children:t.map((e,t)=>(0,p.jsxs)(`div`,{className:`znx-file-list__chip`,children:[(0,p.jsx)(`span`,{className:`znx-file-list__name`,title:e.name,children:e.name||`File`}),(0,p.jsxs)(`span`,{className:`znx-file-list__actions`,children:[n&&(0,p.jsx)(d.Tooltip,{title:`Preview`,children:(0,p.jsx)(`button`,{type:`button`,className:`znx-file-list__btn`,onClick:()=>n(t),"aria-label":`Preview ${e.name||`file`}`,children:(0,p.jsx)(f.EyeOutlined,{})})}),(0,p.jsx)(d.Tooltip,{title:`Download`,children:(0,p.jsx)(`a`,{className:`znx-file-list__btn`,href:e.url,download:e.name,target:`_blank`,rel:`noopener noreferrer`,"aria-label":`Download ${e.name||`file`}`,children:(0,p.jsx)(f.DownloadOutlined,{})})})]})]},e.url??t))}):(0,p.jsx)(d.Card,{size:`small`,className:`znx-file-list__empty ${i??``}`.trim(),children:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:r})})}function Sp({moduleName:e,recordId:t,cancelPath:r,onSuccess:i,fieldNameMap:a={},onFileUpload:o=null}){let c=(0,h.useNavigate)(),[l,f]=(0,u.useState)([]),[p,g]=(0,u.useState)({}),[_,v]=(0,u.useState)(!1),[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)(!1),[C,w]=(0,u.useState)(``);(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;async function i(){try{v(!0),b(``);let[i,a]=await Promise.all([s.r({module:e,id:t}),n.$r(e,t)]);if(r)return;f(Array.isArray(i)?i:[]),g(a??{})}catch(e){r||b(e?.message||`Failed to load record`)}finally{r||v(!1)}}return i(),()=>{r=!0}},[e,t]);function T(e,t){let n={...p},r=t.flatMap(e=>e.fields??[]);return Object.entries(e).forEach(([e,t])=>{if(t!==void 0&&r.find(t=>t.field===e)?.type!==`file`){if(m.default.isDayjs(t)){applyDotValue(n,e,t.format(`MM-DD-YYYY`));return}applyDotValue(n,e,t)}}),Object.keys(n).forEach(e=>{e.includes(`.`)&&delete n[e]}),Object.entries(a).forEach(([e,t])=>{n[e]!==void 0&&(n[t]=n[e],delete n[e])}),Object.keys(n).forEach(e=>{let t=n[e];if(typeof t==`string`&&t!==``){let r=/(date|time|Date|Time|At|at)$/.test(e),i=/ago|month|year|day|week|hour|minute/i.test(t),a=/^\d{4}-\d{2}-\d{2}/.test(t);r&&(i||!a)&&delete n[e]}}),Object.keys(n).forEach(e=>{let t=n[e];Array.isArray(t)&&t[0]?.originFileObj&&delete n[e]}),n}async function E(a,s){try{if(S(!0),w(``),o){let e=s.flatMap(e=>e.fields??[]).filter(e=>e.type===`file`);for(let n of e){let e=a[n.field];if(!Array.isArray(e))continue;let r=e.filter(e=>e.originFileObj instanceof File);await Promise.all(r.map(e=>o(n.field,e.originFileObj,t)))}}await n.ei(e,t,T(a,s)),d.message.success(`${e} updated successfully`),i?i():n.un(c,{cancelPath:r})}catch(e){w(e?.message||`Failed to save changes`),d.message.error(e?.message||`Failed to save changes`)}finally{S(!1)}}return{formGroups:l,rawRecord:p,loading:_,error:y,submitting:x,submitError:C,submit:E}}var Cp=`data:image/svg+xml,%3csvg%20width='380'%20height='130'%20viewBox='0%200%20380%20130'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_30_1933)'%20filter='url(%23filter0_d_30_1933)'%3e%3cpath%20d='M13.5623%2060V34.296H19.2143V44.16H29.6183V34.296H35.2703V60H29.6183V48.912H19.2143V60H13.5623ZM39.8859%2060V34.296H45.5379V60H39.8859ZM50.1431%2060V34.296H64.0031C66.2591%2034.296%2068.0951%2034.992%2069.5111%2036.384C70.8551%2037.728%2071.5271%2039.396%2071.5271%2041.388C71.5271%2044.58%2070.1711%2046.728%2067.4591%2047.832V47.904C69.7151%2048.48%2070.9631%2050.484%2071.2031%2053.916C71.2751%2054.948%2071.3471%2055.98%2071.4191%2057.012C71.5631%2058.404%2071.8511%2059.4%2072.2831%2060H66.6311C66.3671%2059.352%2066.1631%2058.38%2066.0191%2057.084C65.9231%2056.004%2065.8271%2054.924%2065.7311%2053.844C65.5391%2052.452%2065.1191%2051.456%2064.4711%2050.856C63.8471%2050.256%2062.8391%2049.956%2061.4471%2049.956H55.7951V60H50.1431ZM55.7951%2038.688V45.924H61.9871C64.5791%2045.924%2065.8751%2044.7%2065.8751%2042.252C65.8751%2039.876%2064.5791%2038.688%2061.9871%2038.688H55.7951ZM75.7635%2060V34.296H94.9875V39.048H81.4155V44.556H93.8715V48.948H81.4155V55.248H95.2755V60H75.7635ZM118.336%2060V10.02H125.336L142.626%2053.84L159.846%2010.02H166.846V60H162.086V16.81H161.946L144.866%2060H140.386L123.236%2016.81H123.096V60H118.336ZM190.506%2022.83C195.826%2022.83%20200.05%2024.72%20203.176%2028.5C206.116%2032.0467%20207.586%2036.5267%20207.586%2041.94C207.586%2047.3533%20206.116%2051.8333%20203.176%2055.38C200.05%2059.16%20195.826%2061.05%20190.506%2061.05C185.186%2061.05%20180.963%2059.16%20177.836%2055.38C174.896%2051.8333%20173.426%2047.3533%20173.426%2041.94C173.426%2036.5267%20174.896%2032.0467%20177.836%2028.5C180.963%2024.72%20185.186%2022.83%20190.506%2022.83ZM190.506%2026.54C186.493%2026.54%20183.32%2028.15%20180.986%2031.37C178.886%2034.2633%20177.836%2037.7867%20177.836%2041.94C177.836%2046.0933%20178.886%2049.6167%20180.986%2052.51C183.32%2055.73%20186.493%2057.34%20190.506%2057.34C194.52%2057.34%20197.693%2055.73%20200.026%2052.51C202.126%2049.6167%20203.176%2046.0933%20203.176%2041.94C203.176%2037.7867%20202.126%2034.2633%20200.026%2031.37C197.693%2028.15%20194.52%2026.54%20190.506%2026.54ZM213.443%2060V23.88H217.503V32.35H217.643C218.763%2029.41%20220.513%2027.1467%20222.893%2025.56C225.273%2023.9733%20228.073%2023.25%20231.293%2023.39V27.8C227.373%2027.6133%20224.153%2028.78%20221.633%2031.3C219.113%2033.7733%20217.853%2036.9233%20217.853%2040.75V60H213.443ZM265.203%2043.13H237.413C237.46%2046.8633%20238.393%2050.0367%20240.213%2052.65C242.406%2055.7767%20245.44%2057.34%20249.313%2057.34C255.286%2057.34%20259.066%2054.26%20260.653%2048.1H265.063C263.056%2056.7333%20257.806%2061.05%20249.313%2061.05C243.9%2061.05%20239.746%2059.16%20236.853%2055.38C234.286%2051.9733%20233.003%2047.4933%20233.003%2041.94C233.003%2036.6667%20234.286%2032.28%20236.853%2028.78C239.793%2024.8133%20243.946%2022.83%20249.313%2022.83C254.773%2022.83%20258.926%2024.9533%20261.773%2029.2C264.246%2032.8867%20265.39%2037.53%20265.203%2043.13ZM237.413%2039.42H260.793C260.7%2035.8733%20259.65%2032.8867%20257.643%2030.46C255.496%2027.8467%20252.72%2026.54%20249.313%2026.54C245.906%2026.54%20243.106%2027.87%20240.913%2030.53C238.953%2032.8633%20237.786%2035.8267%20237.413%2039.42Z'%20fill='white'/%3e%3cpath%20d='M124.417%20111V90.048H116.713V85.296H137.773V90.048H130.069V111H124.417ZM141.637%20111V85.296H147.289V111H141.637ZM153.154%20111V85.296H167.014C169.27%2085.296%20171.106%2085.992%20172.522%2087.384C173.866%2088.728%20174.538%2090.396%20174.538%2092.388C174.538%2095.58%20173.182%2097.728%20170.47%2098.832V98.904C172.726%2099.48%20173.974%20101.484%20174.214%20104.916C174.286%20105.948%20174.358%20106.98%20174.43%20108.012C174.574%20109.404%20174.862%20110.4%20175.294%20111H169.642C169.378%20110.352%20169.174%20109.38%20169.03%20108.084C168.934%20107.004%20168.838%20105.924%20168.742%20104.844C168.55%20103.452%20168.13%20102.456%20167.482%20101.856C166.858%20101.256%20165.85%20100.956%20164.458%20100.956H158.806V111H153.154ZM158.806%2089.688V96.924H164.998C167.59%2096.924%20168.886%2095.7%20168.886%2093.252C168.886%2090.876%20167.59%2089.688%20164.998%2089.688H158.806ZM180.034%20111V85.296H199.258V90.048H185.686V95.556H198.142V99.948H185.686V106.248H199.546V111H180.034ZM226.246%20111V61.02H231.006V106.94H259.006V111H226.246ZM295.134%2094.13H267.344C267.391%2097.863%20268.324%20101.037%20270.144%20103.65C272.337%20106.777%20275.371%20108.34%20279.244%20108.34C285.217%20108.34%20288.997%20105.26%20290.584%2099.1H294.994C292.987%20107.733%20287.737%20112.05%20279.244%20112.05C273.831%20112.05%20269.677%20110.16%20266.784%20106.38C264.217%20102.973%20262.934%2098.493%20262.934%2092.94C262.934%2087.667%20264.217%2083.28%20266.784%2079.78C269.724%2075.813%20273.877%2073.83%20279.244%2073.83C284.704%2073.83%20288.857%2075.953%20291.704%2080.2C294.177%2083.887%20295.321%2088.53%20295.134%2094.13ZM267.344%2090.42H290.724C290.631%2086.873%20289.581%2083.887%20287.574%2081.46C285.427%2078.847%20282.651%2077.54%20279.244%2077.54C275.837%2077.54%20273.037%2078.87%20270.844%2081.53C268.884%2083.863%20267.717%2086.827%20267.344%2090.42ZM328.843%2085.45H324.433C324.34%2082.837%20323.36%2080.83%20321.493%2079.43C319.813%2078.17%20317.643%2077.54%20314.983%2077.54C312.696%2077.54%20310.783%2077.983%20309.243%2078.87C307.376%2079.99%20306.443%2081.623%20306.443%2083.77C306.443%2086.71%20308.94%2088.74%20313.933%2089.86L319.813%2091.19C326.673%2092.73%20330.103%2096.067%20330.103%20101.2C330.103%20104.793%20328.54%20107.57%20325.413%20109.53C322.706%20111.21%20319.44%20112.05%20315.613%20112.05C306.373%20112.05%20301.426%20107.803%20300.773%2099.31H305.183C305.37%20102.203%20306.42%20104.443%20308.333%20106.03C310.293%20107.57%20312.79%20108.34%20315.823%20108.34C318.296%20108.34%20320.466%20107.827%20322.333%20106.8C324.573%20105.54%20325.693%20103.767%20325.693%20101.48C325.693%2098.26%20323.056%2096.067%20317.783%2094.9L312.113%2093.64C308.846%2092.893%20306.443%2091.89%20304.903%2090.63C302.99%2089.043%20302.033%2086.827%20302.033%2083.98C302.033%2080.573%20303.503%2077.96%20306.443%2076.14C308.916%2074.6%20311.973%2073.83%20315.613%2073.83C319.393%2073.83%20322.473%2074.787%20324.853%2076.7C327.373%2078.753%20328.703%2081.67%20328.843%2085.45ZM364.294%2085.45H359.884C359.791%2082.837%20358.811%2080.83%20356.944%2079.43C355.264%2078.17%20353.094%2077.54%20350.434%2077.54C348.147%2077.54%20346.234%2077.983%20344.694%2078.87C342.827%2079.99%20341.894%2081.623%20341.894%2083.77C341.894%2086.71%20344.391%2088.74%20349.384%2089.86L355.264%2091.19C362.124%2092.73%20365.554%2096.067%20365.554%20101.2C365.554%20104.793%20363.991%20107.57%20360.864%20109.53C358.157%20111.21%20354.891%20112.05%20351.064%20112.05C341.824%20112.05%20336.877%20107.803%20336.224%2099.31H340.634C340.821%20102.203%20341.871%20104.443%20343.784%20106.03C345.744%20107.57%20348.241%20108.34%20351.274%20108.34C353.747%20108.34%20355.917%20107.827%20357.784%20106.8C360.024%20105.54%20361.144%20103.767%20361.144%20101.48C361.144%2098.26%20358.507%2096.067%20353.234%2094.9L347.564%2093.64C344.297%2092.893%20341.894%2091.89%20340.354%2090.63C338.441%2089.043%20337.484%2086.827%20337.484%2083.98C337.484%2080.573%20338.954%2077.96%20341.894%2076.14C344.367%2074.6%20347.424%2073.83%20351.064%2073.83C354.844%2073.83%20357.924%2074.787%20360.304%2076.7C362.824%2078.753%20364.154%2081.67%20364.294%2085.45Z'%20fill='white'/%3e%3c/g%3e%3cdefs%3e%3cfilter%20id='filter0_d_30_1933'%20x='0'%20y='0'%20width='380'%20height='130'%20filterUnits='userSpaceOnUse'%20color-interpolation-filters='sRGB'%3e%3cfeFlood%20flood-opacity='0'%20result='BackgroundImageFix'/%3e%3cfeColorMatrix%20in='SourceAlpha'%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%20127%200'%20result='hardAlpha'/%3e%3cfeOffset%20dy='4'/%3e%3cfeGaussianBlur%20stdDeviation='7'/%3e%3cfeComposite%20in2='hardAlpha'%20operator='out'/%3e%3cfeColorMatrix%20type='matrix'%20values='0%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200%200.15%200'/%3e%3cfeBlend%20mode='normal'%20in2='BackgroundImageFix'%20result='effect1_dropShadow_30_1933'/%3e%3cfeBlend%20mode='normal'%20in='SourceGraphic'%20in2='effect1_dropShadow_30_1933'%20result='shape'/%3e%3c/filter%3e%3cclipPath%20id='clip0_30_1933'%3e%3crect%20width='352'%20height='102'%20fill='white'%20transform='translate(14%2010)'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e`,wp=`data:image/svg+xml,%3csvg%20width='738'%20height='346'%20viewBox='0%200%20738%20346'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M166.531%20110.373V111.304L158.082%20116.188L158.071%20115.256L166.531%20110.373Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M162.346%20110.647V111.578L158.071%20114.043V113.123L162.346%20110.647Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M159.716%20109.501L159.727%20110.433L158.06%20111.387V110.455L159.716%20109.501Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M158.648%20121.324C158.485%20121.68%20158.4%20122.067%20158.399%20122.459V134.554C158.399%20135.508%20159.079%20135.894%20159.907%20135.406L177.916%20124.992C178.352%20124.709%20178.714%20124.326%20178.974%20123.877C179.234%20123.427%20179.385%20122.922%20179.413%20122.403V110.319C179.423%20110.026%20179.335%20109.739%20179.164%20109.501L168.957%20122.437L158.648%20121.324Z'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M159.894%20119.821C159.346%20120.197%20158.911%20120.715%20158.635%20121.32L168.921%20122.387L179.128%20109.452C179.006%20109.325%20178.848%20109.238%20178.675%20109.206C178.502%20109.173%20178.323%20109.196%20178.164%20109.271L159.894%20119.821Z'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M182.85%20117.448L217.621%2097.3806V115.551'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M368.923%20155.802C382.01%20163.366%20382.078%20175.642%20369.07%20183.206L307.977%20218.741C294.969%20226.315%20273.818%20226.315%20260.72%20218.741L199.264%20183.206C186.176%20175.642%20186.108%20163.366%20199.116%20155.802L260.175%20120.268C273.183%20112.693%20294.334%20112.693%20307.421%20120.268L368.923%20155.802Z'%20fill='%2379AEF5'/%3e%3cpath%20d='M369.066%20150.158L307.973%20185.693C294.965%20193.268%20273.814%20193.268%20260.715%20185.693L199.259%20150.158C192.67%20146.354%20189.381%20141.357%20189.393%20136.36V143.435C189.393%20148.421%20192.67%20153.429%20199.259%20157.234L260.738%20192.78C273.825%20200.343%20294.987%20200.343%20307.995%20192.78L369.054%20157.245C375.507%20153.486%20378.751%20148.568%20378.762%20143.617V136.542C378.762%20141.482%20375.53%20146.399%20369.066%20150.158Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M368.923%20122.754C382.01%20130.317%20382.078%20142.594%20369.07%20150.157L307.977%20185.692C294.969%20193.267%20273.818%20193.267%20260.72%20185.692L199.264%20150.157C186.176%20142.594%20186.108%20130.317%20199.116%20122.754L260.175%2087.2192C273.183%2079.6444%20294.334%2079.6444%20307.421%2087.2192L368.923%20122.754Z'%20fill='white'/%3e%3cpath%20d='M179.53%20276.419C192.617%20283.983%20192.685%20296.259%20179.677%20303.834L118.584%20339.358C105.576%20346.932%2084.4257%20346.932%2071.3384%20339.358L9.87097%20303.834C-3.21637%20296.259%20-3.28442%20283.994%209.72354%20276.419L70.7827%20240.885C83.7906%20233.321%20104.941%20233.321%20118.04%20240.885L179.53%20276.419Z'%20fill='%2379AEF5'/%3e%3cpath%20d='M179.673%20270.775L118.58%20306.344C105.572%20313.919%2084.4213%20313.919%2071.334%20306.344L9.86657%20270.821C3.27754%20267.005%20-0.0113116%20262.008%202.9229e-05%20257.011V264.086C2.9229e-05%20269.083%203.27754%20274.08%209.85523%20277.884L71.3226%20313.419C84.41%20320.994%20105.572%20320.994%20118.58%20313.419L179.639%20277.884C186.092%20274.125%20189.336%20269.208%20189.347%20264.256V257.181C189.381%20262.053%20186.137%20267.016%20179.673%20270.775Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M179.525%20243.37C192.613%20250.933%20192.681%20263.21%20179.673%20270.773L118.58%20306.342C105.572%20313.917%2084.4209%20313.917%2071.3336%20306.342L9.86621%20270.819C-3.18711%20263.187%20-3.25515%20250.933%209.70744%20243.37L70.7666%20207.835C83.7745%20200.26%20104.925%20200.26%20118.024%20207.835L179.525%20243.37Z'%20fill='white'/%3e%3cpath%20d='M561.71%20254.942C574.798%20262.506%20574.866%20274.782%20561.858%20282.357L500.765%20317.881C487.757%20325.456%20466.606%20325.456%20453.519%20317.881L392.051%20282.357C378.964%20274.782%20378.896%20262.517%20391.904%20254.942L452.963%20219.408C465.971%20211.844%20487.122%20211.844%20500.22%20219.408L561.71%20254.942Z'%20fill='%2379AEF5'/%3e%3cpath%20d='M561.861%20249.299L500.768%20284.834C487.76%20292.409%20466.609%20292.409%20453.522%20284.834L392.054%20249.311C385.465%20245.495%20382.176%20240.498%20382.188%20235.501V242.576C382.188%20247.573%20385.465%20252.57%20392.043%20256.375L453.51%20291.909C466.598%20299.484%20487.76%20299.484%20500.768%20291.909L561.849%20256.375C568.302%20252.616%20571.546%20247.698%20571.557%20242.747V235.672C571.557%20240.623%20568.325%20245.54%20561.861%20249.299Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M561.71%20221.895C574.798%20229.459%20574.866%20241.735%20561.858%20249.299L500.765%20284.833C487.757%20292.408%20466.606%20292.408%20453.519%20284.833L392.051%20249.31C378.964%20241.735%20378.896%20229.459%20391.904%20221.895L452.963%20186.36C465.971%20178.785%20487.122%20178.785%20500.22%20186.36L561.71%20221.895Z'%20fill='white'/%3e%3cpath%20opacity='0.43'%20d='M499.163%20269.382L514.995%20269.268L547.963%20250.666L529.681%20241.66L499.163%20269.382Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M727.582%20144.647C740.669%20152.21%20740.749%20164.487%20727.741%20172.05L666.636%20207.539C653.628%20215.114%20632.478%20215.114%20619.39%20207.539L557.923%20172.005C544.836%20164.441%20544.768%20152.165%20557.775%20144.601L618.835%20109.066C631.843%20101.492%20652.993%20101.492%20666.092%20109.066L727.582%20144.647Z'%20fill='%2379AEF5'/%3e%3cpath%20d='M727.709%20139.004L666.639%20174.538C653.631%20182.113%20632.48%20182.113%20619.393%20174.538L557.925%20139.004C551.336%20135.199%20548.048%20130.202%20548.059%20125.205V132.28C548.059%20137.266%20551.336%20142.263%20557.925%20146.079L619.382%20181.614C632.469%20189.177%20653.631%20189.177%20666.639%20181.614L727.698%20146.079C734.162%20142.32%20737.394%20137.391%20737.406%20132.451V125.387C737.406%20130.316%20734.162%20135.245%20727.709%20139.004Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M727.585%20111.591C740.673%20119.166%20740.752%20131.443%20727.744%20139.006L666.674%20174.541C653.666%20182.116%20632.515%20182.116%20619.428%20174.541L557.96%20139.006C544.873%20131.443%20544.805%20119.166%20557.813%20111.603L618.872%2076.0681C631.88%2068.4933%20653.031%2068.4933%20666.129%2076.0681L727.585%20111.591Z'%20fill='white'/%3e%3cpath%20d='M188.892%20167.791L116.878%20126.158C114.281%20124.659%20111.922%20124.511%20110.209%20125.511L106.002%20128.043C107.703%20127.055%20110.062%20127.191%20112.67%20128.702L184.673%20170.335C189.845%20173.322%20194.018%20180.556%20194.007%20186.507L193.882%20228.924C193.882%20231.876%20192.839%20233.955%20191.149%20234.931L195.379%20232.467C197.058%20231.49%20198.101%20229.412%20198.112%20226.459L198.226%20184.042C198.248%20178.069%20194.075%20170.823%20188.892%20167.791Z'%20fill='%23C8F3FF'/%3e%3cpath%20d='M184.677%20170.305C189.848%20173.292%20194.022%20180.526%20194.01%20186.477L193.886%20228.894C193.886%20234.833%20189.667%20237.229%20184.495%20234.242L112.492%20192.609C107.321%20189.622%20103.136%20182.388%20103.159%20176.437L103.272%20134.021C103.272%20128.07%20107.502%20125.685%20112.674%20128.672L184.677%20170.305Z'%20fill='%235C6BC0'/%3e%3cpath%20d='M114.142%20165.041L121.426%20150.951L123.13%20151.834L119.886%20158.109L127.389%20161.998L130.632%20155.723L132.336%20156.606L125.053%20170.697L123.349%20169.813L126.607%20163.511L119.104%20159.622L115.846%20165.925L114.142%20165.041Z'%20fill='white'/%3e%3cpath%20d='M137.451%20159.257L130.168%20173.348L128.464%20172.465L135.747%20158.374L137.451%20159.257Z'%20fill='white'/%3e%3cpath%20d='M133.585%20175.119L140.868%20161.028L145.622%20163.493C146.722%20164.062%20147.527%20164.718%20148.038%20165.46C148.551%20166.197%20148.809%20166.979%20148.811%20167.806C148.813%20168.633%20148.6%20169.462%20148.171%20170.292C147.742%20171.122%20147.192%20171.77%20146.521%20172.237C145.85%20172.703%20145.069%20172.938%20144.179%20172.942C143.291%20172.941%20142.302%20172.658%20141.212%20172.093L137.364%20170.099L138.161%20168.558L141.953%20170.524C142.704%20170.913%20143.366%20171.116%20143.938%20171.134C144.514%20171.153%20145.01%20171.015%20145.424%20170.718C145.846%20170.419%20146.203%20169.987%20146.494%20169.423C146.786%20168.859%20146.936%20168.311%20146.943%20167.78C146.95%20167.249%20146.782%20166.749%20146.438%20166.279C146.096%20165.806%20145.545%20165.372%20144.785%20164.978L141.789%20163.425L135.288%20176.002L133.585%20175.119ZM143.48%20172.222L143.671%20180.347L141.692%20179.321L141.556%20171.225L143.48%20172.222Z'%20fill='white'/%3e%3cpath%20d='M154.947%20168.326L147.664%20182.417L145.96%20181.533L153.243%20167.443L154.947%20168.326Z'%20fill='white'/%3e%3cpath%20d='M169.522%20175.88L162.238%20189.971L160.589%20189.116L158.64%20174.079L158.503%20174.007L152.784%20185.071L151.081%20184.187L158.364%20170.097L160.013%20170.952L161.975%20186.031L162.113%20186.102L167.845%20175.011L169.522%20175.88Z'%20fill='white'/%3e%3cpath%20d='M180.274%20187.036C180.362%20186.495%20180.378%20185.977%20180.32%20185.481C180.269%20184.984%20180.142%20184.517%20179.938%20184.08C179.739%20183.645%20179.462%20183.248%20179.107%20182.89C178.752%20182.531%20178.321%20182.221%20177.812%20181.957C176.978%20181.525%20176.109%20181.348%20175.204%20181.425C174.298%20181.502%20173.427%20181.856%20172.59%20182.487C171.753%20183.117%20171.02%20184.042%20170.389%20185.263C169.758%20186.483%20169.43%20187.618%20169.404%20188.669C169.377%20189.719%20169.601%20190.641%20170.074%20191.433C170.548%20192.225%20171.219%20192.846%20172.09%20193.297C172.896%20193.715%20173.695%20193.911%20174.486%20193.885C175.285%20193.857%20176.02%20193.616%20176.69%20193.161C177.368%20192.704%20177.93%20192.044%20178.375%20191.182L178.841%20191.562L174.608%20189.369L175.391%20187.855L180.75%20190.633L179.967%20192.146C179.368%20193.307%20178.599%20194.188%20177.661%20194.789C176.727%20195.393%20175.705%20195.707%20174.596%20195.73C173.493%20195.752%20172.382%20195.473%20171.265%20194.894C170.019%20194.248%20169.076%20193.387%20168.436%20192.311C167.8%20191.237%20167.499%20190.022%20167.532%20188.667C167.569%20187.314%20167.972%20185.894%20168.74%20184.408C169.316%20183.293%20169.983%20182.368%20170.741%20181.633C171.505%20180.895%20172.325%20180.354%20173.199%20180.011C174.074%20179.667%20174.973%20179.523%20175.897%20179.577C176.822%20179.632%20177.735%20179.893%20178.637%20180.361C179.379%20180.745%20180.013%20181.216%20180.538%20181.773C181.07%20182.328%20181.482%20182.94%20181.775%20183.61C182.075%20184.277%20182.249%20184.981%20182.296%20185.72C182.346%20186.456%20182.258%20187.198%20182.033%20187.948L180.274%20187.036Z'%20fill='white'/%3e%3cpath%20d='M291.119%20297.896C292.922%20298.941%20292.934%20300.633%20291.119%20301.678L279.619%20308.39C278.614%20308.905%20277.5%20309.174%20276.37%20309.174C275.24%20309.174%20274.127%20308.905%20273.121%20308.39L261.474%20301.678C259.671%20300.633%20259.659%20298.941%20261.474%20297.896L273.019%20291.184C274.025%20290.669%20275.138%20290.4%20276.268%20290.4C277.398%20290.4%20278.512%20290.669%20279.517%20291.184L291.119%20297.896Z'%20fill='white'/%3e%3cg%20opacity='0.29'%3e%3cpath%20d='M266.168%20283.475C267.971%20284.519%20267.982%20286.2%20266.168%20287.245L254.668%20293.968C253.662%20294.483%20252.549%20294.752%20251.419%20294.752C250.289%20294.752%20249.176%20294.483%20248.17%20293.968L236.523%20287.245C234.72%20286.2%20234.708%20284.519%20236.523%20283.475L248.045%20276.82C249.051%20276.304%20250.165%20276.036%20251.294%20276.036C252.424%20276.036%20253.538%20276.304%20254.543%20276.82L266.168%20283.475Z'%20fill='white'/%3e%3c/g%3e%3cpath%20d='M265.479%20260.52C267.282%20261.565%20267.282%20263.257%20265.479%20264.29L253.934%20271.013C252.926%20271.529%20251.811%20271.797%20250.679%20271.797C249.548%20271.797%20248.432%20271.529%20247.424%20271.013L235.834%20264.324C234.031%20263.291%20234.019%20261.599%20235.834%20260.554L247.379%20253.842C248.385%20253.327%20249.498%20253.058%20250.628%20253.058C251.758%20253.058%20252.871%20253.327%20253.877%20253.842L265.479%20260.52Z'%20fill='%2358AFFB'/%3e%3cpath%20d='M330.119%20297.896C331.922%20298.94%20331.933%20300.633%20330.119%20301.677L318.574%20308.389C317.568%20308.904%20316.454%20309.173%20315.325%20309.173C314.195%20309.173%20313.081%20308.904%20312.075%20308.389L300.451%20301.666C298.648%20300.632%20298.637%20298.94%20300.451%20297.896L311.996%20291.172C313.003%20290.662%20314.116%20290.397%20315.245%20290.397C316.374%20290.397%20317.487%20290.662%20318.494%20291.172L330.119%20297.896Z'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M266.328%20312.022C268.131%20313.067%20268.142%20314.747%20266.328%20315.792L254.783%20322.504C253.777%20323.019%20252.663%20323.288%20251.534%20323.288C250.404%20323.288%20249.29%20323.019%20248.284%20322.504L236.66%20315.792C234.857%20314.747%20234.857%20313.055%20236.66%20312.022L248.205%20305.299C249.212%20304.789%20250.325%20304.523%20251.454%20304.523C252.583%20304.523%20253.696%20304.789%20254.703%20305.299L266.328%20312.022Z'%20fill='%2358AFFB'/%3e%3cpath%20d='M473.363%20111.794C475.177%20112.839%20475.177%20114.52%20473.363%20115.565L461.818%20122.288C460.811%20122.8%20459.698%20123.068%20458.569%20123.068C457.439%20123.068%20456.326%20122.8%20455.319%20122.288L443.718%20115.553C441.926%20114.508%20441.915%20112.828%20443.718%20111.783L455.263%20105.06C456.271%20104.547%20457.386%20104.28%20458.518%20104.28C459.649%20104.28%20460.764%20104.547%20461.772%20105.06L473.363%20111.794Z'%20fill='white'/%3e%3cg%20opacity='0.29'%3e%3cpath%20d='M448.416%2097.3849C450.219%2098.4184%20450.23%20100.111%20448.416%20101.155L436.871%20107.878C435.863%20108.388%20434.751%20108.654%20433.622%20108.654C432.493%20108.654%20431.38%20108.388%20430.373%20107.878L418.748%20101.155C416.945%20100.111%20416.945%2098.4184%20418.748%2097.3849L430.293%2090.6618C431.301%2090.1464%20432.416%2089.8777%20433.548%2089.8777C434.68%2089.8777%20435.795%2090.1464%20436.803%2090.6618L448.416%2097.3849Z'%20fill='white'/%3e%3c/g%3e%3cpath%20d='M447.727%2074.4206C449.53%2075.4654%20449.542%2077.1462%20447.727%2078.191L436.205%2084.8913C435.199%2085.4067%20434.085%2085.6754%20432.956%2085.6754C431.826%2085.6754%20430.712%2085.4067%20429.706%2084.8913L418.082%2078.1796C416.279%2077.1348%20416.268%2075.454%20418.082%2074.4092L429.627%2067.6861C430.634%2067.1761%20431.747%2066.9104%20432.876%2066.9104C434.005%2066.9104%20435.118%2067.1761%20436.125%2067.6861L447.727%2074.4206Z'%20fill='%2358AFFB'/%3e%3cg%20opacity='0.26'%3e%3cpath%20d='M512.378%20111.797C514.17%20112.842%20514.182%20114.522%20512.378%20115.567L500.833%20122.29C499.825%20122.803%20498.71%20123.07%20497.579%20123.07C496.448%20123.07%20495.332%20122.803%20494.324%20122.29L482.722%20115.556C480.919%20114.511%20480.908%20112.83%20482.722%20111.785L494.267%20105.062C495.273%20104.547%20496.386%20104.278%20497.516%20104.278C498.646%20104.278%20499.76%20104.547%20500.765%20105.062L512.378%20111.797Z'%20fill='white'/%3e%3c/g%3e%3cpath%20d='M448.598%20125.885C450.413%20126.929%20450.413%20128.622%20448.598%20129.655L437.053%20136.378C436.048%20136.893%20434.934%20137.162%20433.804%20137.162C432.674%20137.162%20431.561%20136.893%20430.555%20136.378L418.931%20129.655C417.139%20128.622%20417.128%20126.929%20418.931%20125.885L430.453%20119.173C431.459%20118.658%20432.572%20118.389%20433.702%20118.389C434.832%20118.389%20435.946%20118.658%20436.951%20119.173L448.598%20125.885Z'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M659.707%20269.092C661.511%20270.137%20661.522%20271.817%20659.707%20272.862L648.196%20279.574C647.189%20280.089%20646.073%20280.358%20644.942%20280.358C643.81%20280.358%20642.695%20280.089%20641.687%20279.574L630.051%20272.862C628.248%20271.817%20628.237%20270.125%20630.051%20269.092L641.596%20262.369C642.602%20261.853%20643.715%20261.585%20644.845%20261.585C645.975%20261.585%20647.089%20261.853%20648.094%20262.369L659.707%20269.092Z'%20fill='white'/%3e%3cg%20opacity='0.29'%3e%3cpath%20d='M634.761%20254.66C636.564%20255.705%20636.576%20257.397%20634.761%20258.442L623.25%20265.154C622.244%20265.669%20621.131%20265.938%20620.001%20265.938C618.871%20265.938%20617.758%20265.669%20616.752%20265.154L605.105%20258.442C603.302%20257.397%20603.29%20255.705%20605.105%20254.66L616.65%20247.949C617.655%20247.433%20618.769%20247.165%20619.899%20247.165C621.029%20247.165%20622.142%20247.433%20623.148%20247.949L634.761%20254.66Z'%20fill='white'/%3e%3c/g%3e%3cpath%20d='M634.071%20231.709C635.874%20232.754%20635.874%20234.446%20634.071%20235.48L622.526%20242.203C621.518%20242.718%20620.403%20242.987%20619.271%20242.987C618.139%20242.987%20617.024%20242.718%20616.016%20242.203L604.426%20235.48C602.623%20234.446%20602.611%20232.754%20604.426%20231.709L615.971%20224.997C616.977%20224.482%20618.09%20224.213%20619.22%20224.213C620.35%20224.213%20621.463%20224.482%20622.469%20224.997L634.071%20231.709Z'%20fill='%2358AFFB'/%3e%3cg%20opacity='0.26'%3e%3cpath%20d='M698.708%20269.094C700.511%20270.127%20700.523%20271.819%20698.708%20272.864L687.163%20279.576C686.157%20280.091%20685.044%20280.36%20683.914%20280.36C682.784%20280.36%20681.671%20280.091%20680.665%20279.576L669.041%20272.853C667.237%20271.819%20667.215%20270.127%20669.041%20269.082L680.586%20262.371C681.591%20261.855%20682.705%20261.587%20683.835%20261.587C684.964%20261.587%20686.078%20261.855%20687.084%20262.371L698.708%20269.094Z'%20fill='white'/%3e%3c/g%3e%3cpath%20d='M634.916%20283.189C636.72%20284.234%20636.731%20285.914%20634.916%20286.959L623.371%20293.682C622.364%20294.192%20621.251%20294.458%20620.122%20294.458C618.993%20294.458%20617.881%20294.192%20616.873%20293.682L605.249%20286.959C603.446%20285.914%20603.446%20284.222%20605.249%20283.189L616.794%20276.466C617.801%20275.956%20618.914%20275.69%20620.043%20275.69C621.172%20275.69%20622.285%20275.956%20623.292%20276.466L634.916%20283.189Z'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M561.176%2037.9307L561.232%2058.3498L558.919%2059.6899L558.885%2050.1163L550.311%2055.0791L550.334%2064.6527L548.043%2065.9814L547.986%2045.5623L550.277%2044.2336L550.3%2052.7737L558.885%2047.8109L558.862%2039.2708L561.176%2037.9307Z'%20fill='white'/%3e%3cpath%20d='M567.436%2034.321L567.493%2054.7288L565.213%2056.0462L565.145%2035.6384L567.436%2034.321Z'%20fill='white'/%3e%3cpath%20d='M581.673%2040.9289C581.954%2042.5768%20582.418%2044.1881%20583.057%2045.7328L580.686%2047.1069C580.127%2045.7614%20579.728%2044.355%20579.496%2042.9163C578.951%2040.4065%20577.999%2039.8955%20575.923%2040.9971L573.769%2042.2463V51.0931L571.5%2052.4104V32.2752C572.892%2031.1793%20574.362%2030.1885%20575.901%2029.3111C578.35%2027.8916%20579.927%2027.4941%20581.027%2028.0051C581.934%2028.4026%20582.433%2029.5042%20582.433%2031.0714C582.362%2032.4286%20582.024%2033.7584%20581.438%2034.9843C580.852%2036.2102%20580.03%2037.308%20579.019%2038.2147V38.3283C580.426%2038.0671%20581.288%2039.0437%20581.673%2040.9289ZM576.105%2038.8961C577.26%2038.2922%20578.239%2037.3999%20578.948%2036.3056C579.658%2035.2113%20580.073%2033.9521%20580.153%2032.65C580.153%2030.0152%20578.486%2029.8335%20576.059%2031.1963C575.256%2031.6417%20574.496%2032.1626%20573.791%2032.7522V40.2021L576.139%2038.8507'%20fill='white'/%3e%3cpath%20d='M595.179%2018.2722L595.19%2020.4868L587.898%2024.7001L587.92%2031.1506L594.816%2027.1644V29.3449L587.932%2033.3311L587.943%2040.6901L595.632%2036.2497V38.4642L585.664%2044.222L585.596%2023.8142L595.179%2018.2722Z'%20fill='white'/%3e%3cpath%20d='M610.61%2011.7433C612.198%2012.5042%20613.128%2014.3326%20613.128%2017.6374C613.14%2020.9419%20612.266%2024.1891%20610.599%2027.0406C608.677%2030.172%20605.977%2032.7507%20602.762%2034.5246C601.141%2035.4559%20599.768%2036.16%20598.612%2036.6824V16.6039C600.166%2015.4264%20601.79%2014.3455%20603.477%2013.3673C606.709%2011.4594%20609.057%2010.9824%20610.61%2011.7433ZM603.205%2032.1852C605.54%2030.9088%20607.48%2029.0148%20608.814%2026.7098C610.148%2024.4048%20610.824%2021.7773%20610.769%2019.1137C610.769%2014.2758%20608.41%2012.5951%20603.568%2015.3888C602.626%2015.9243%20601.728%2016.5318%20600.88%2017.2058V33.3208C601.663%2032.9985%20602.421%2032.6189%20603.148%2032.1852'%20fill='white'/%3e%3cpath%20d='M58.2918%20176.574V178.152C58.2937%20178.364%2058.3509%20178.572%2058.4576%20178.755C58.5644%20178.938%2058.717%20179.09%2058.9004%20179.195C59.0838%20179.301%2059.2915%20179.357%2059.5031%20179.357C59.7146%20179.357%2059.9226%20179.302%2060.1064%20179.197L67.5573%20174.905C67.7404%20174.799%2067.8924%20174.646%2067.9979%20174.463C68.1034%20174.279%2068.1588%20174.071%2068.1584%20173.86V172.338C68.166%20172.128%2068.1192%20171.92%2068.0225%20171.733C67.9258%20171.547%2067.7825%20171.389%2067.6066%20171.274C67.4307%20171.16%2067.2281%20171.093%2067.0187%20171.081C66.8094%20171.068%2066.6003%20171.11%2066.4119%20171.202L58.961%20175.506C58.7626%20175.606%2058.5954%20175.758%2058.4774%20175.947C58.3594%20176.135%2058.2952%20176.352%2058.2918%20176.574Z'%20fill='%23F2F9FF'/%3e%3cpath%20d='M34.6559%20197.957V199.592C34.6569%20199.803%2034.7128%20200.01%2034.8182%20200.193C34.9235%20200.376%2035.0746%20200.528%2035.2566%20200.635C35.4387%20200.742%2035.6453%20200.799%2035.8561%20200.801C36.067%20200.804%2036.2748%20200.751%2036.459%20200.648L67.5443%20182.762C67.7274%20182.656%2067.8794%20182.503%2067.9849%20182.32C68.0904%20182.136%2068.1458%20181.928%2068.1454%20181.717V180.138C68.1478%20179.926%2068.094%20179.716%2067.9895%20179.531C67.8849%20179.347%2067.7334%20179.193%2067.5503%20179.085C67.3671%20178.978%2067.1589%20178.921%2066.9467%20178.921C66.7345%20178.92%2066.5259%20178.976%2066.3422%20179.082L35.2909%20196.912C35.1015%20197.013%2034.9427%20197.164%2034.831%20197.347C34.7193%20197.531%2034.6588%20197.742%2034.6559%20197.957Z'%20fill='%23F2F9FF'/%3e%3cg%20opacity='0.53'%3e%3cpath%20d='M47.4966%20206.339V207.917C47.4962%20208.129%2047.5515%20208.336%2047.6568%20208.52C47.7622%20208.703%2047.9139%20208.855%2048.0967%20208.961C48.2795%20209.067%2048.487%20209.123%2048.6982%20209.123C48.9094%20209.123%2049.1169%20209.068%2049.2998%20208.962L67.5472%20198.457C67.7374%20198.359%2067.8958%20198.208%2068.0042%20198.023C68.1126%20197.838%2068.1665%20197.626%2068.1597%20197.412V195.822C68.1601%20195.611%2068.1048%20195.403%2067.9995%20195.22C67.8941%20195.036%2067.7424%20194.884%2067.5596%20194.778C67.3768%20194.672%2067.1693%20194.616%2066.9581%20194.616C66.7469%20194.616%2066.5394%20194.672%2066.3565%20194.778L48.0977%20205.271C47.9112%20205.379%2047.7571%20205.535%2047.6513%20205.722C47.5456%20205.91%2047.4922%20206.123%2047.4966%20206.339Z'%20fill='%23F2F9FF'/%3e%3c/g%3e%3cpath%20d='M39.5103%20203.054V204.633C39.5113%20204.844%2039.5672%20205.051%2039.6726%20205.234C39.7779%20205.417%2039.929%20205.569%2040.1111%20205.676C40.2931%20205.782%2040.4997%20205.84%2040.7105%20205.842C40.9214%20205.844%2041.1292%20205.791%2041.3135%20205.689L67.5448%20190.63C67.7288%20190.522%2067.8812%20190.368%2067.9867%20190.183C68.0923%20189.997%2068.1471%20189.787%2068.1459%20189.574V187.995C68.1449%20187.784%2068.089%20187.577%2067.9836%20187.394C67.8783%20187.211%2067.7271%20187.059%2067.5451%20186.952C67.3631%20186.846%2067.1565%20186.788%2066.9456%20186.786C66.7348%20186.784%2066.527%20186.836%2066.3427%20186.939L40.1113%20202.009C39.9282%20202.115%2039.7763%20202.267%2039.6707%20202.451C39.5652%20202.634%2039.5099%20202.842%2039.5103%20203.054Z'%20fill='%23F2F9FF'/%3e%3cpath%20d='M8.80978%20208.234V229.448L24.8004%20239.851'%20stroke='white'%20stroke-width='0.53'%20stroke-miterlimit='10'/%3e%3cpath%20d='M8.71457%20208.631C9.76055%20208.631%2010.6085%20207.782%2010.6085%20206.735C10.6085%20205.687%209.76055%20204.838%208.71457%20204.838C7.66858%20204.838%206.82065%20205.687%206.82065%20206.735C6.82065%20207.782%207.66858%20208.631%208.71457%20208.631Z'%20stroke='white'%20stroke-width='1.06'%20stroke-miterlimit='10'/%3e%3cpath%20d='M386.505%20197.436V218.638L402.484%20229.052'%20stroke='white'%20stroke-width='0.53'%20stroke-miterlimit='10'/%3e%3cpath%20d='M386.406%20197.821C387.452%20197.821%20388.3%20196.972%20388.3%20195.925C388.3%20194.877%20387.452%20194.028%20386.406%20194.028C385.36%20194.028%20384.512%20194.877%20384.512%20195.925C384.512%20196.972%20385.36%20197.821%20386.406%20197.821Z'%20stroke='white'%20stroke-width='1.06'%20stroke-miterlimit='10'/%3e%3cpath%20opacity='0.35'%20d='M249.201%20154.586C259.943%20154.586%20268.651%20149.044%20268.651%20142.208C268.651%20135.371%20259.943%20129.829%20249.201%20129.829C238.46%20129.829%20229.752%20135.371%20229.752%20142.208C229.752%20149.044%20238.46%20154.586%20249.201%20154.586Z'%20fill='%23A6D0F4'/%3e%3cpath%20opacity='0.35'%20d='M258.559%20155.143C258.559%20158.959%20263.424%20162.048%20269.412%20162.048C275.4%20162.048%20280.265%20158.959%20280.265%20155.143C280.265%20151.327%20275.411%20148.238%20269.412%20148.238C263.413%20148.238%20258.559%20151.327%20258.559%20155.143Z'%20fill='%23A6D0F4'/%3e%3cpath%20opacity='0.35'%20d='M302.642%20131.248C302.642%20135.064%20307.507%20138.153%20313.495%20138.153C319.483%20138.153%20324.348%20135.064%20324.348%20131.248C324.348%20127.432%20319.494%20124.332%20313.495%20124.332C307.496%20124.332%20302.642%20127.432%20302.642%20131.248Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M260.79%20140.663C260.564%20143.218%20258.171%20144.944%20256.005%20145.875C253.633%20146.854%20251.084%20147.329%20248.52%20147.272C245.889%20147.278%20243.29%20146.7%20240.91%20145.58C238.857%20144.569%20236.691%20142.741%20236.691%20140.242C236.594%20141.088%20236.671%20141.944%20236.916%20142.758C237.162%20143.573%20237.572%20144.328%20238.12%20144.978C239.93%20146.723%20242.229%20147.872%20244.709%20148.272C249.359%20149.225%20255.676%20148.771%20259.203%20145.183C259.806%20144.534%20260.263%20143.764%20260.543%20142.923C260.823%20142.083%20260.919%20141.192%20260.824%20140.311L260.79%20140.663Z'%20fill='%23ADCDFC'/%3e%3cpath%20d='M257.252%20135.994C261.981%20138.731%20262.015%20143.16%20257.32%20145.897C254.682%20147.231%20251.769%20147.926%20248.814%20147.926C245.859%20147.926%20242.946%20147.231%20240.308%20145.897C235.579%20143.16%20235.557%20138.731%20240.308%20135.994C242.936%20134.667%20245.837%20133.976%20248.78%20133.976C251.723%20133.976%20254.624%20134.667%20257.252%20135.994Z'%20fill='white'/%3e%3cpath%20d='M250.044%20132.339L250.021%20142.401L248.762%20143.139L248.774%20133.077L250.044%20132.339Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M248.775%20133.077L248.764%20143.139L247.493%20142.401L247.505%20132.339L248.775%20133.077Z'%20fill='%237BAEFF'/%3e%3cpath%20d='M250.634%20130.51L248.786%20131.577L246.926%20130.51L248.774%20129.431L250.634%20130.51Z'%20fill='%234DA5DC'/%3e%3cpath%20d='M236.786%2096.247C236.786%2096.247%20232.987%2098.5183%20231.978%20100.79C230.968%20103.061%20231.24%20118.96%20236.514%20126.069C241.787%20133.179%20251.631%20134.144%20253.911%20133.133C256.19%20132.122%20269.278%20125.558%20270.287%20122.276C271.296%20118.994%20266.261%20116.473%20263.483%20115.212C260.704%20113.952%20258.946%20112.18%20257.438%20107.638C255.93%20103.095%20255.17%2095.2703%20253.401%2094.0097C251.631%2092.7491%20247.379%2090.7163%20236.786%2096.247Z'%20fill='%2325437F'/%3e%3cpath%20d='M255.614%20130.875C257.462%20130.057%20266.512%20125.537%20270.357%20122.119C271.162%20118.916%20266.252%20116.44%20263.552%20115.203C260.853%20113.965%20259.016%20112.17%20257.508%20107.628C255.999%20103.085%20255.24%2095.2604%20253.47%2093.9998C251.701%2092.7392%20247.426%2090.7177%20236.833%2096.2711C235.702%2096.9583%20234.642%2097.7572%20233.669%2098.656C232.717%20101.302%20233.057%20116.827%20238.262%20123.811C243.468%20130.795%20253.346%20131.885%20255.614%20130.875Z'%20fill='%23254DA1'/%3e%3cpath%20d='M245.804%2084.3226C245.594%2085.0765%20245.562%2085.8687%20245.71%2086.6372C245.857%2087.4056%20246.181%2088.1294%20246.654%2088.7517C248.129%2090.512%20247.845%2091.023%20247.562%2091.6363C247.278%2092.2495%20245.532%2094.2369%20245.736%2096.9739C245.94%2099.7108%20253.595%2098.4502%20254.298%2096.5537C255.001%2094.6571%20252.2%2091.5%20252.03%2089.1038C251.86%2086.7075%20253.504%2083.6185%20251.474%2082.8463C249.444%2082.074%20246.791%2081.4835%20245.804%2084.3226Z'%20fill='%23BB543E'/%3e%3cpath%20d='M267.259%20149.509C267.259%20149.509%20266.556%20151.428%20266.987%20151.996C267.317%20152.802%20267.505%20153.659%20267.542%20154.529L268.245%20154.949L268.529%20153.541C268.678%20154.157%20268.965%20154.732%20269.368%20155.221C270.774%20156.172%20272.348%20156.842%20274.007%20157.197C275.821%20157.618%20276.388%20157.481%20276.524%20156.777C276.66%20156.073%20274.562%20153.541%20273.303%20152.7C272.045%20151.86%20267.259%20149.509%20267.259%20149.509Z'%20fill='%23254DA1'/%3e%3cpath%20d='M271.375%20149.326C271.766%20150.155%20272.221%20150.952%20272.736%20151.711C273.303%20152.415%20274.845%20153.675%20274.698%20154.38C274.55%20155.084%20273.155%20154.947%20271.477%20154.38C269.798%20153.812%20269.367%20152.279%20268.528%20151.847C268.063%20151.686%20267.675%20151.357%20267.441%20150.924C267.206%20150.491%20267.14%20149.986%20267.258%20149.508C267.405%20148.054%20271.375%20149.326%20271.375%20149.326Z'%20fill='%23FF9554'/%3e%3cpath%20d='M263.743%20126.295C263.373%20125.609%20263.284%20124.805%20263.496%20124.054C263.708%20123.304%20264.203%20122.665%20264.877%20122.275C267.327%20120.901%20269.119%20123.036%20269.55%20124.035C270.549%20126.061%20271.157%20128.257%20271.342%20130.508C271.342%20133.166%20271.557%20149.701%20271.557%20149.701C271.268%20149.956%20270.93%20150.149%20270.563%20150.269C270.197%20150.389%20269.81%20150.434%20269.427%20150.4C269.043%20150.366%20268.67%20150.254%20268.33%20150.071C267.991%20149.889%20267.692%20149.639%20267.452%20149.337C267.452%20149.337%20265.047%20129.486%20264.991%20128.532C264.768%20127.694%20264.339%20126.925%20263.743%20126.295Z'%20fill='%23FF9554'/%3e%3cpath%20d='M263.141%20151.574C263.141%20151.574%20262.438%20153.493%20262.857%20154.05C263.195%20154.854%20263.387%20155.711%20263.424%20156.582L264.127%20157.003L264.411%20155.594C264.559%20156.215%20264.846%20156.793%20265.25%20157.287C266.651%20158.235%20268.223%20158.902%20269.877%20159.251C271.703%20159.671%20272.27%20159.535%20272.406%20158.831C272.542%20158.127%20270.444%20155.594%20269.174%20154.754C267.904%20153.914%20263.141%20151.574%20263.141%20151.574Z'%20fill='%23254DA1'/%3e%3cpath%20d='M256.94%20131.145C256.94%20131.145%20255.25%20128.703%20257.496%20127.011C259.741%20125.319%20261.805%20127.204%20262.361%20128.147C263.62%20130.024%20264.509%20132.125%20264.981%20134.336C265.355%20136.959%20267.249%20151.371%20267.249%20151.371C266.997%20151.662%20266.688%20151.9%20266.341%20152.068C265.994%20152.236%20265.617%20152.332%20265.232%20152.351C264.847%20152.369%20264.462%20152.308%20264.102%20152.173C263.741%20152.038%20263.411%20151.831%20263.132%20151.564C263.132%20151.564%20258.596%20134.132%20258.46%20133.189C258.13%20132.393%20257.608%20131.69%20256.94%20131.145Z'%20fill='%23FF9554'/%3e%3cpath%20d='M267.256%20151.383C267.642%20152.219%20268.097%20153.02%20268.617%20153.779C269.173%20154.472%20270.727%20155.744%20270.579%20156.448C270.432%20157.152%20269.037%20157.005%20267.358%20156.448C265.68%20155.892%20265.249%20154.336%20264.41%20153.916C263.945%20153.754%20263.557%20153.425%20263.322%20152.992C263.087%20152.56%20263.022%20152.055%20263.14%20151.576C263.287%20150.123%20267.256%20151.383%20267.256%20151.383Z'%20fill='%23FF9554'/%3e%3cpath%20d='M267.077%20120.46C266.397%20119.813%20258.47%20113.055%20258.47%20113.055L245.36%20115.111C245.36%20115.111%20245.553%20121.119%20248.762%20125.048C250.535%20127.298%20252.616%20129.286%20254.943%20130.953C255.65%20131.527%20256.487%20131.917%20257.381%20132.089C257.822%20131.055%20258.63%20130.221%20259.649%20129.75C261.611%20128.614%20268.212%20124.071%20269.051%20124.264C269.89%20124.457%20270.037%20124.821%20270.037%20124.821C269.41%20123.153%20268.395%20121.658%20267.077%20120.46Z'%20fill='%2362759A'/%3e%3cpath%20d='M257.026%2092.5215C257.026%2092.5215%20258.942%2092.6237%20260.054%2095.2471C261.165%2097.8704%20262.583%20104.548%20262.98%20105.161C263.377%20105.775%20262.889%20107.58%20260.462%20108.091C259.046%20106.268%20257.825%20104.3%20256.822%20102.22C255.313%2098.9947%20254.667%2093.9751%20257.026%2092.5215Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M249.241%2091.1594C249.241%2091.1594%20243.979%2094.9298%20243.458%2096.179C242.831%2098.5159%20242.991%20100.994%20243.911%20103.231C245.045%20105.503%20244.603%20114.088%20244.989%20115.724C245.374%20117.359%20249.876%20117.927%20252.666%20117.393C255.456%20116.859%20258.813%20114.827%20258.711%20111.579C258.609%20108.331%20258.144%20106.536%20259.845%2098.8592C260.163%2097.4169%20258.813%2095.668%20258.133%2093.1809C257.985%2092.6698%20256.239%2092.1247%20256.239%2092.1247C256.239%2092.1247%20254.413%2090.9436%20249.241%2091.1594Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M247.341%2094.2955C247.341%2094.2955%20242.805%2093.3869%20240.865%20100.383C239.663%20105.198%20238.518%20109.298%20239.187%20110.183C239.856%20111.069%20241.829%20111.875%20243.088%20110.853C244.347%20109.831%20248.101%2098.2589%20248.01%2097.1119C247.919%2095.9649%20248.305%2095.1131%20247.341%2094.2955Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M259.453%20100.109C259.453%20100.109%20257.537%20104.754%20248.351%20102.937C246.536%20102.835%20244.812%20106.98%20245.924%20109.206C247.119%20111.81%20247.866%20114.597%20248.135%20117.451C249.637%20117.696%20251.169%20117.696%20252.672%20117.451C255.45%20116.906%20258.818%20114.884%20258.716%20111.636C258.363%20107.83%20258.65%20103.991%20259.567%20100.279L259.453%20100.109Z'%20fill='%23A9C9E6'/%3e%3cpath%20d='M249.114%2090.9548C248.966%2091.0754%20248.852%2091.2312%20248.781%2091.4078C248.709%2091.5845%20248.683%2091.7762%20248.705%2091.9655C249.335%2093.4506%20250.325%2094.7545%20251.586%2095.7586C252.391%2096.1561%20253.242%2093.7825%20253.242%2093.7825C253.242%2093.7825%20254.966%2094.498%20255.567%2093.987C256.168%2093.4759%20254.512%2091.5567%20254.058%2091.2046C252.449%2090.7577%20250.76%2090.6724%20249.114%2090.9548Z'%20fill='white'/%3e%3cpath%20d='M253.811%2090.4542C253.797%2090.5101%20253.797%2090.5687%20253.811%2090.6246C253.868%2091.0107%20254.061%2091.9987%20254.095%2092.4076C254.129%2092.8164%20253.675%2093.4865%20252.62%2093.4637C251.566%2093.441%20249.74%2092.9981%20249.139%2091.7262C249.165%2090.4746%20249.109%2089.2225%20248.969%2087.9785L253.811%2090.4542Z'%20fill='%23FF8654'/%3e%3cpath%20d='M255.328%2084.0166C254.829%2081.3592%20252.731%2079.8488%20250.349%2080.4052C249.573%2080.5081%20248.832%2080.7905%20248.185%2081.2301C247.537%2081.6697%20247.001%2082.2544%20246.618%2082.9378C245.484%2085.2091%20247.162%2087.117%20248.24%2088.3208C248.693%2088.8091%20249.033%2089.1952%20249.249%2089.4564L249.487%2089.729C250.104%2090.3499%20250.863%2090.81%20251.699%2091.0691C252.194%2091.2405%20252.726%2091.2773%20253.24%2091.1755C253.754%2091.0737%20254.232%2090.8371%20254.624%2090.4899C255.305%2089.7858%20255.804%2086.6854%20255.328%2084.0166Z'%20fill='%23FF9554'/%3e%3cpath%20d='M248.186%2087.036C248.186%2087.036%20247.403%2085.9685%20246.825%2086.2524C246.246%2086.5363%20247.607%2088.8985%20248.481%2088.853C249.354%2088.8076%20248.186%2087.036%20248.186%2087.036Z'%20fill='%23FF9554'/%3e%3cpath%20d='M257.244%20114.688L266.657%20123.683L259.353%20127.76L249.952%20118.765L257.244%20114.688Z'%20fill='white'/%3e%3cpath%20d='M258.933%20116.767C258.6%20117.311%20258.312%20117.881%20258.071%20118.471C257.912%20118.993%20257.425%20119.981%20257.629%20120.254C257.833%20120.526%20258.525%20120.083%20258.661%20119.765C258.759%20119.577%20258.908%20119.419%20259.092%20119.311L259.183%20120.254C259.183%20120.833%20259.455%20122.071%20259.92%20122.298C260.385%20122.525%20261.054%20121.628%20261.383%20121.094C261.678%20120.306%20261.725%20119.446%20261.519%20118.63C261.337%20118.266%20260.85%20117.437%20260.85%20117.437L258.933%20116.767Z'%20fill='%23FF9554'/%3e%3cpath%20d='M259.208%20105.559C259.255%20105.191%20259.413%20104.845%20259.661%20104.569C259.908%20104.292%20260.234%20104.098%20260.595%20104.012C260.956%20103.925%20261.335%20103.951%20261.68%20104.086C262.026%20104.22%20262.323%20104.457%20262.531%20104.764C262.966%20105.401%20263.277%20106.114%20263.45%20106.865C263.949%20109.137%20261.646%20117.086%20261.42%20117.79C261.193%20118.495%20259.809%20118.824%20258.732%20117.927C257.654%20117.03%20259.174%20108.047%20259.174%20106.945C259.159%20106.483%20259.17%20106.02%20259.208%20105.559Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M252.571%20117.199C253.201%20117.287%20253.823%20117.424%20254.431%20117.608C254.93%20117.812%20256.008%20118.062%20256.087%20118.392C256.166%20118.721%20255.384%20118.982%20255.055%20118.891C254.851%20118.833%20254.635%20118.833%20254.431%20118.891L255.1%20119.55C255.509%20119.97%20256.336%20120.924%20256.234%20121.413C256.132%20121.901%20254.998%20121.867%20254.374%20121.787C253.582%20121.52%20252.89%20121.016%20252.39%20120.345C252.22%20119.97%20251.891%20119.05%20251.891%20119.05L252.571%20117.199Z'%20fill='%23FF9554'/%3e%3cpath%20d='M241.843%20108.207C241.53%20108.011%20241.165%20107.915%20240.796%20107.93C240.427%20107.945%20240.071%20108.071%20239.775%20108.292C239.479%20108.512%20239.256%20108.817%20239.135%20109.167C239.015%20109.516%20239.002%20109.894%20239.099%20110.251C239.306%20110.995%20239.652%20111.692%20240.12%20112.306C241.526%20114.135%20250.927%20119.336%20251.63%20119.609C252.334%20119.881%20253.456%20119.052%20253.456%20117.644C253.456%20116.236%20243.771%20109.774%20242.932%20109.07C242.585%20108.763%20242.221%20108.475%20241.843%20108.207Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M252.752%2082.6185C252.752%2082.6185%20252.049%2082.3345%20251.698%2083.3226C251.346%2084.3106%20251.142%2085.5939%20249.872%2086.1276C248.602%2086.6614%20248.261%2086.8999%20247.354%2086.8318C246.869%2086.7941%20246.416%2086.572%20246.089%2086.2109C245.763%2085.8498%20245.586%2085.3771%20245.596%2084.8898C245.655%2083.7529%20246.063%2082.6621%20246.766%2081.7673C247.468%2080.8725%20248.431%2080.2176%20249.52%2079.8929C250.153%2079.6834%20250.823%2079.6063%20251.487%2079.6662C252.151%2079.726%20252.796%2079.9217%20253.382%2080.241C253.967%2080.5603%20254.481%2080.9965%20254.892%2081.5226C255.303%2082.0487%20255.601%2082.6536%20255.769%2083.2999C256.189%2085.0488%20255.497%2085.1964%20255.497%2085.1964C255.497%2085.1964%20255.417%2082.2891%20252.752%2082.6185Z'%20fill='%23BB543E'/%3e%3cpath%20opacity='0.35'%20d='M292.625%20129.105C303.367%20129.105%20312.075%20123.563%20312.075%20116.726C312.075%20109.89%20303.367%20104.347%20292.625%20104.347C281.884%20104.347%20273.176%20109.89%20273.176%20116.726C273.176%20123.563%20281.884%20129.105%20292.625%20129.105Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M304.215%20115.181C303.988%20117.725%20301.595%20119.451%20299.441%20120.382C297.068%20121.37%20294.513%20121.846%20291.944%20121.779C289.314%20121.784%20286.716%20121.206%20284.335%20120.087C282.293%20119.076%20280.116%20117.248%20280.116%20114.761C280.02%20115.604%20280.097%20116.458%20280.343%20117.271C280.588%20118.083%20280.998%20118.837%20281.545%20119.485C283.355%20121.23%20285.654%20122.379%20288.134%20122.778C292.784%20123.744%20299.1%20123.278%20302.627%20119.701C303.23%20119.052%20303.686%20118.281%20303.966%20117.441C304.245%20116.601%20304.342%20115.71%20304.249%20114.829C304.238%20114.942%20304.238%20115.056%20304.215%20115.181Z'%20fill='%23ADCDFC'/%3e%3cpath%20d='M300.688%20110.535C305.406%20113.272%20305.44%20117.701%20300.745%20120.438C298.102%20121.787%20295.177%20122.49%20292.211%20122.49C289.244%20122.49%20286.32%20121.787%20283.677%20120.438C278.947%20117.701%20278.936%20113.271%20283.677%20110.546C286.312%20109.205%20289.225%20108.506%20292.181%20108.504C295.137%20108.502%20298.051%20109.197%20300.688%20110.535Z'%20fill='white'/%3e%3cpath%20d='M293.463%20106.859L293.44%20116.909L292.181%20117.648L292.204%20107.586L293.463%20106.859Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M292.205%20107.586L292.183%20117.648L290.912%20116.909L290.935%20106.859L292.205%20107.586Z'%20fill='%237BAEFF'/%3e%3cpath%20d='M294.053%20105.018L292.205%20106.097L290.345%20105.018L292.193%20103.951L294.053%20105.018Z'%20fill='%234DA5DC'/%3e%3cpath%20d='M280.209%2070.7737C280.209%2070.7737%20276.41%2073.045%20275.401%2075.3163C274.392%2077.5876%20274.664%2093.4869%20279.937%20100.596C285.211%20107.705%20295.066%20108.671%20297.334%20107.66C299.602%20106.649%20312.712%20100.096%20313.722%2096.8143C314.731%2093.5323%20309.684%2090.9998%20306.917%2089.7392C304.15%2088.4786%20302.381%2086.7183%20300.872%2082.1643C299.364%2077.6103%20298.604%2069.797%20296.835%2068.5364C295.066%2067.2758%20290.802%2065.2203%20280.209%2070.7737Z'%20fill='%2325437F'/%3e%3cpath%20d='M299.036%20105.333C300.885%20104.515%20309.946%2099.9953%20313.78%2096.5769C314.596%2093.3744%20309.674%2090.8987%20306.975%2089.6608C304.276%2088.4229%20302.439%2086.6399%20300.93%2082.0859C299.422%2077.532%20298.662%2069.7186%20296.893%2068.458C295.124%2067.1975%20290.848%2065.176%20280.256%2070.7294C279.124%2071.4166%20278.064%2072.2155%20277.092%2073.1142C276.139%2075.7603%20276.479%2091.2848%20281.696%2098.2691C286.913%20105.253%20296.768%20106.389%20299.036%20105.333Z'%20fill='%23254DA1'/%3e%3cpath%20d='M303.153%2071.151C303.153%2071.151%20304.287%2071.5371%20305.115%2074.3422C305.943%2077.1473%20308.347%2082.2237%20307.508%2084.4723C306.669%2086.7209%20304.106%2085.4489%20303.437%2083.7682C302.768%2082.0874%20299.932%2074.2627%20300.488%2073.1157C301.044%2071.9687%20302.03%2070.7649%20303.153%2071.151Z'%20fill='%23113569'/%3e%3cpath%20d='M310.014%20128.657C310.183%20129.275%20310.419%20129.873%20310.717%20130.44C311.586%20131.532%20312.606%20132.496%20313.745%20133.302C314.505%20133.949%20315.435%20135.153%20315.344%20135.721C315.253%20136.288%20313.428%20136.425%20311.999%20136.118C310.57%20135.811%20309.311%20134.21%20308.891%20134.244C308.472%20134.278%20306.907%20133.972%20306.623%20133.427C306.339%20132.881%20306.838%20130.735%20306.838%20130.735V129.179L310.014%20128.657Z'%20fill='%23232839'/%3e%3cpath%20d='M317.044%20124.16C317.213%20124.775%20317.449%20125.369%20317.748%20125.932C318.613%20127.031%20319.633%20127.998%20320.776%20128.805C321.535%20129.452%20322.465%20130.645%20322.375%20131.224C322.284%20131.803%20320.458%20131.928%20319.029%20131.621C317.6%20131.315%20316.341%20129.714%20315.922%20129.748C315.502%20129.782%20313.937%20129.475%20313.654%20128.93C313.37%20128.385%20313.869%20126.238%20313.869%20126.238V124.683L317.044%20124.16Z'%20fill='%23232839'/%3e%3cpath%20d='M290.43%2093.2273C290.37%2095.1503%20290.892%2097.0465%20291.927%2098.6671C293.606%20101.109%20300.535%20107.287%20301.283%20107.855C302.032%20108.422%20302.225%20112.534%20302.973%20114.407C303.722%20116.281%20305.967%20128.467%20306.375%20129.409C306.375%20129.409%20306.75%20130.341%20309.369%20129.784C310.866%20129.591%20311.048%20129.035%20311.048%20129.035C311.048%20129.035%20310.118%20115.35%20309.369%20112.159C308.621%20108.968%20308.428%20105.413%20307.101%20104.107C305.774%20102.801%20299.423%2094.5447%20299.423%2094.5447L297.927%2092.103L290.43%2093.2273Z'%20fill='%23113C7A'/%3e%3cpath%20d='M302.03%2090.2268C302.03%2090.2268%20312.135%2095.9051%20313.541%2097.1203C314.897%2098.3056%20315.832%2099.8997%20316.206%20101.663C316.32%20102.276%20317.34%20124.013%20317.76%20125.001C317.896%20125.841%20315.231%20126.409%20313.961%20125.989C313.466%20125.646%20313.039%20125.215%20312.702%20124.717C312.702%20124.717%20310.173%20111.645%20310.173%20109.817C309.937%20107.359%20309.558%20104.917%20309.039%20102.503L297.392%2095.8938L296.541%2092.941L302.03%2090.2268Z'%20fill='%23113C7A'/%3e%3cpath%20d='M290.807%2095.1093C290.807%2095.1093%20291.782%2097.9144%20295.853%2097.4942L297.26%2097.2103L297.543%2094.939C298.96%2094.7497%20300.31%2094.2198%20301.479%2093.3945C302.034%2093.6784%20302.182%2095.0866%20302.737%2095.2229C303.293%2095.3592%20304.28%2093.3945%20303.996%2091.9863C303.713%2090.5781%20303.021%2091.1459%20303.021%2091.1459C303.021%2091.1459%20291.51%2094.0305%20290.807%2095.1093Z'%20fill='%23112C5C'/%3e%3cpath%20d='M295.1%2069.6954C295.1%2069.6954%20290.292%2073.1024%20289.815%2074.2381C289.244%2076.376%20289.391%2078.643%20290.235%2080.6886C291.222%2082.801%20290.859%2090.6143%20291.222%2092.1361C291.584%2093.6579%20295.69%2094.1462%20298.23%2093.6579C300.771%2093.1695%20303.901%2091.3184%20303.753%2088.343C303.606%2085.3675%20303.753%2079.8369%20303.889%2078.4968C304.024%2076.1613%20303.81%2073.8188%20303.254%2071.5466C303.118%2071.0696%20301.519%2070.5699%20301.519%2070.5699C301.519%2070.5699%20299.829%2069.491%20295.1%2069.6954Z'%20fill='white'/%3e%3cpath%20d='M299.272%2069.0491C299.265%2069.0981%20299.265%2069.1478%20299.272%2069.1968C299.329%2069.5488%20299.51%2070.4573%20299.533%2070.8321C299.556%2071.2069%20299.159%2071.8201%20298.183%2071.7974C297.564%2071.8184%20296.949%2071.684%20296.394%2071.4063C295.839%2071.1286%20295.363%2070.7165%20295.008%2070.2075C295.027%2069.0696%20294.974%2067.9317%20294.849%2066.8005L299.272%2069.0491Z'%20fill='%23E16B40'/%3e%3cpath%20d='M294.976%2069.4673C295.233%2070.1558%20295.7%2070.7458%20296.31%2071.1536C296.921%2071.5613%20297.645%2071.766%20298.378%2071.7386H298.56L297.233%2073.8736C296.292%2073.3206%20295.403%2072.6819%20294.579%2071.9657C294.19%2071.4984%20293.984%2070.9048%20294.001%2070.2963L294.976%2069.4673Z'%20fill='white'/%3e%3cpath%20d='M298.55%2071.7878L299.933%2073.1165C300.275%2072.7255%20300.494%2072.2428%20300.565%2071.7281C300.635%2071.2134%20300.554%2070.6893%20300.33%2070.2206L299.468%2069.8799C299.481%2070.2487%20299.405%2070.6152%20299.245%2070.9476C299.084%2071.2801%20298.846%2071.5684%20298.55%2071.7878Z'%20fill='white'/%3e%3cpath%20d='M301.33%2062.379C300.809%2059.6421%20298.642%2058.0862%20296.193%2058.6541C295.393%2058.7607%20294.63%2059.0523%20293.963%2059.5057C293.295%2059.959%20292.743%2060.5617%20292.348%2061.2661C291.214%2063.6055%20292.904%2065.5702%20294.015%2066.8195C294.48%2067.3191%20294.832%2067.7166%20295.059%2067.9551C295.136%2068.0513%20295.219%2068.1424%20295.308%2068.2277C295.945%2068.8588%20296.723%2069.3297%20297.576%2069.6018C298.089%2069.777%20298.638%2069.8147%20299.169%2069.7111C299.7%2069.6075%20300.195%2069.3662%20300.604%2069.0113C301.308%2068.3299%20301.841%2065.1273%20301.33%2062.379Z'%20fill='%23FF8654'/%3e%3cpath%20d='M293.988%2070.3425C293.988%2070.3425%20293.274%2071.0353%20294.215%2072.7615C295.501%2075.2189%20296.211%2077.9377%20296.291%2080.7111C296.381%2083.9932%20296.812%2094.339%20296.381%2096.5535C295.519%2097.3258%20291.369%2096.633%20290.155%2094.5548C289.634%2091.5339%20289.894%2082.3464%20289.293%2080.4499C288.788%2078.3751%20288.757%2076.2128%20289.203%2074.1243C290.498%2072.5233%20292.132%2071.2314%20293.988%2070.3425Z'%20fill='%23113C7A'/%3e%3cpath%20d='M300.676%2070.2751C301.189%2072.3546%20301.421%2074.4935%20301.368%2076.6348C301.368%2080.0418%20302.343%2094.1807%20302.502%2094.4647C302.661%2094.7486%20304.702%2092.9656%20304.77%2090.8873C304.838%2088.8091%20304.078%2076.0557%20303.965%2074.7837C303.894%2073.5356%20303.618%2072.3077%20303.148%2071.1496C302.356%2070.7742%20301.528%2070.4812%20300.676%2070.2751Z'%20fill='%23113C7A'/%3e%3cpath%20d='M299.67%2072.4777L299.046%2073.795L297.742%2072.7616L298.547%2071.7849L299.67%2072.4777Z'%20fill='%23113C7A'/%3e%3cpath%20d='M299.333%2072.9654C299.333%2072.9654%20300.569%2088.7851%20300.569%2089.4778L299.741%2090.9315L298.607%2089.7958L298.199%2072.8745L299.333%2072.9654Z'%20fill='%23113C7A'/%3e%3cpath%20d='M289.442%2073.5905C288.618%2074.4566%20288.039%2075.5266%20287.764%2076.6908C287.015%2079.0303%20286.539%2087.1843%20286.539%2088.3995C286.539%2089.6146%20286.539%2091.0228%20287.571%2091.6815C287.794%2091.8623%20288.054%2091.9901%20288.333%2092.0553C288.613%2092.1206%20288.903%2092.1215%20289.182%2092.0581C289.462%2091.9947%20289.723%2091.8685%20289.947%2091.6892C290.171%2091.5099%20290.351%2091.282%20290.474%2091.0228C291.132%2089.8077%20291.608%2082.8688%20292.062%2080.7224C292.516%2078.576%20293.287%2076.4069%20292.345%2075.0441C292.079%2074.5241%20291.654%2074.1028%20291.131%2073.8414C290.609%2073.58%20290.018%2073.4921%20289.442%2073.5905Z'%20fill='%23113C7A'/%3e%3cpath%20d='M292.814%2059.0649C293.137%2058.5521%20293.577%2058.1231%20294.097%2057.8132C294.617%2057.5033%20295.204%2057.3212%20295.808%2057.282C297.963%2057.1002%20298.53%2057.8498%20299.46%2057.9406C300.39%2058.0315%20301.24%2057.5659%20301.898%2058.5993C302.556%2059.6328%20301.15%2061.5975%20301.15%2061.5975C301.15%2061.5975%20300.401%2061.4157%20299.653%2063.2896C298.904%2065.1634%20296.182%2064.6864%20295.626%2064.5047L295.162%2065.436V66.2877L294.504%2066.1855C294.504%2066.1855%20294.787%2065.1634%20294.13%2064.7887C293.472%2064.4139%20293.29%2065.1634%20293.381%2065.7199C293.705%2066.6813%20294.371%2067.4898%20295.252%2067.9912L294.969%2068.559L294.787%2068.9338C294.254%2068.5023%20293.754%2068.0316%20293.29%2067.5256C292.814%2066.9691%20292.156%2067.4347%20291.226%2065.3678C290.296%2063.3009%20290.569%2061.711%20291.408%2060.8252L292.258%2059.8826L292.814%2059.0649Z'%20fill='%2396432A'/%3e%3cpath%20d='M302.164%2090.5122L311.577%2099.5066L304.274%20103.584L294.872%2094.5892L302.164%2090.5122Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M300.032%2097.3015C300.032%2097.3015%20300.497%2097.6309%20300.735%2097.7785L302.277%2098.7552C302.687%2099.1897%20303.034%2099.6789%20303.309%20100.209C303.571%20100.636%20303.73%20101.118%20303.774%20101.617C303.684%20101.856%20303.4%20101.708%20303.4%20101.708C303.124%20102.018%20302.737%20102.206%20302.323%20102.23C301.767%20102.174%20301.291%20101.481%20301.291%20101.481L300.497%20100.777C300.174%20100.417%20299.92%20100.002%20299.748%2099.5501L299.193%2099.1754C299.193%2099.1754%20298.796%2098.7552%20300.032%2097.3015Z'%20fill='%23FF8654'/%3e%3cpath%20d='M298.31%2098.8821C298.31%2098.8821%20298.899%2097.2127%20299.603%2096.7925L300.396%2097.349C299.896%2097.9305%20299.542%2098.6237%20299.364%2099.3704L298.31%2098.8821Z'%20fill='white'/%3e%3cpath%20d='M298.311%2098.8837C297.811%2098.837%20297.33%2098.6736%20296.904%2098.4068C295.66%2097.4896%20294.357%2096.655%20293.003%2095.9083C291.184%2095.0735%20289.483%2094.0004%20287.945%2092.7171C287.077%2091.8788%20286.572%2090.733%20286.539%2089.5259C286.914%2089.0409%20287.44%2088.695%20288.034%2088.5428C288.627%2088.3906%20289.255%2088.4408%20289.816%2088.6855C291.66%2089.5661%20293.365%2090.7141%20294.875%2092.0925C296.553%2093.5007%20299.411%2096.2944%20299.411%2096.2944L299.898%2096.8736C299.51%2097.0812%20299.168%2097.3668%20298.895%2097.7127C298.622%2098.0586%20298.423%2098.4573%20298.311%2098.8837Z'%20fill='%23113C7A'/%3e%3cpath%20d='M304.84%2085.0278C304.766%2085.9753%20304.858%2086.9285%20305.113%2087.8442C305.543%2089.2524%20304.557%2094.0335%20304.976%2094.4537C305.302%2094.7787%20305.706%2095.0143%20306.149%2095.1376C306.592%2095.2609%20307.059%2095.2679%20307.505%2095.1578L308.345%2094.59C308.345%2094.59%20308.764%2089.8089%20308.764%2088.4007C308.764%2086.9925%20308.345%2083.0631%20307.369%2082.2227C306.394%2081.3823%20303.99%2082.0751%20304.84%2085.0278Z'%20fill='%23113569'/%3e%3cpath%20d='M305.328%2094.3081C305.687%2093.9832%20306.157%2093.809%20306.64%2093.8217C307.124%2093.8344%20307.584%2094.033%20307.925%2094.3762L307.993%2095.3643C307.993%2095.3643%20307.71%2096.2841%20305.396%2095.4324L305.328%2094.3081Z'%20fill='white'/%3e%3cpath%20d='M305.545%2095.1786C305.895%2094.9846%20306.292%2094.8905%20306.691%2094.9065C307.091%2094.9226%20307.479%2095.0481%20307.813%2095.2694L307.904%2095.6442C307.904%2095.6442%20308.21%2096.4846%20308.323%2096.8593C308.376%2097.182%20308.353%2097.5126%20308.255%2097.8247C308.236%2098.1817%20308.179%2098.5357%20308.085%2098.8808C307.994%2099.0398%20307.813%2098.9944%20307.643%2098.9717C307.141%2098.8111%20306.648%2098.6215%20306.168%2098.4038C305.794%2098.2448%20305.681%2097.4272%20305.613%2097.1432C305.567%2096.7129%20305.567%2096.2789%20305.613%2095.8486C305.62%2095.6232%20305.597%2095.3979%20305.545%2095.1786Z'%20fill='%23FF8654'/%3e%3cpath%20d='M329.925%2063.9153V65.4938C329.926%2065.7053%20329.871%2065.9132%20329.765%2066.0965C329.66%2066.2798%20329.508%2066.4321%20329.325%2066.5381C329.143%2066.644%20328.935%2066.6998%20328.724%2066.6999C328.513%2066.7%20328.305%2066.6444%20328.122%2066.5386L320.671%2062.2345C320.487%2062.1292%20320.333%2061.9773%20320.226%2061.794C320.118%2061.6106%20320.061%2061.4023%20320.059%2061.1897V59.6111C320.061%2059.3993%20320.118%2059.1916%20320.225%2059.0087C320.331%2058.8258%20320.484%2058.6741%20320.667%2058.5685C320.851%2058.4629%20321.059%2058.4071%20321.27%2058.4067C321.482%2058.4064%20321.69%2058.4614%20321.874%2058.5663L329.324%2062.8591C329.509%2062.9659%20329.662%2063.12%20329.768%2063.3056C329.873%2063.4912%20329.928%2063.7016%20329.925%2063.9153Z'%20fill='%23F9FBFC'/%3e%3cpath%20d='M353.526%2085.2874V86.8773C353.526%2087.0888%20353.471%2087.2967%20353.366%2087.48C353.26%2087.6633%20353.109%2087.8156%20352.926%2087.9215C352.743%2088.0274%20352.535%2088.0833%20352.324%2088.0834C352.113%2088.0835%20351.906%2088.0278%20351.723%2087.9221L320.671%2070.1263C320.486%2070.0192%20320.332%2069.8653%20320.225%2069.68C320.117%2069.4947%20320.06%2069.2844%20320.059%2069.0702V67.4916C320.059%2067.2788%20320.115%2067.0697%20320.221%2066.8852C320.326%2066.7008%20320.479%2066.5474%20320.663%2066.4405C320.846%2066.3335%20321.055%2066.2768%20321.267%2066.2759C321.48%2066.275%20321.689%2066.33%20321.874%2066.4354L352.925%2084.2653C353.105%2084.3692%20353.254%2084.5179%20353.36%2084.697C353.465%2084.8761%20353.522%2085.0795%20353.526%2085.2874Z'%20fill='%23F9FBFC'/%3e%3cg%20opacity='0.53'%3e%3cpath%20d='M340.735%2093.6676V95.2462C340.735%2095.459%20340.679%2095.6681%20340.573%2095.8525C340.467%2096.037%20340.315%2096.1904%20340.131%2096.2973C339.948%2096.4043%20339.739%2096.461%20339.527%2096.4619C339.314%2096.4628%20339.105%2096.4078%20338.92%2096.3024L320.673%2085.8202C320.49%2085.7144%20320.338%2085.5621%20320.232%2085.3786C320.127%2085.1952%20320.072%2084.9871%20320.072%2084.7754V83.1969C320.073%2082.9857%20320.129%2082.7785%20320.234%2082.5956C320.34%2082.4127%20320.491%2082.2604%20320.673%2082.1538C320.855%2082.0472%20321.061%2081.9899%20321.272%2081.9876C321.483%2081.9853%20321.691%2082.0381%20321.875%2082.1407L340.123%2092.6228C340.307%2092.7281%20340.461%2092.88%20340.568%2093.0634C340.676%2093.2467%20340.733%2093.4551%20340.735%2093.6676Z'%20fill='%23F9FBFC'/%3e%3c/g%3e%3cpath%20d='M348.722%2090.3889V91.9789C348.72%2092.1907%20348.663%2092.3984%20348.556%2092.5813C348.449%2092.7641%20348.296%2092.9159%20348.113%2093.0215C347.93%2093.1271%20347.722%2093.1829%20347.51%2093.1832C347.299%2093.1836%20347.091%2093.1286%20346.907%2093.0237L320.676%2077.9648C320.493%2077.859%20320.341%2077.7067%20320.235%2077.5232C320.13%2077.3398%20320.074%2077.1317%20320.075%2076.92V75.3301C320.074%2075.1186%20320.129%2074.9107%20320.235%2074.7274C320.34%2074.5441%20320.492%2074.3918%20320.675%2074.2859C320.857%2074.1799%20321.065%2074.1241%20321.276%2074.124C321.487%2074.1239%20321.695%2074.1795%20321.878%2074.2853L348.109%2089.3441C348.294%2089.4494%20348.447%2089.6013%20348.555%2089.7847C348.662%2089.968%20348.72%2090.1764%20348.722%2090.3889Z'%20fill='%23F9FBFC'/%3e%3cpath%20d='M365.824%2091.1697V112.384L350.729%20121.287'%20stroke='white'%20stroke-width='0.53'%20stroke-miterlimit='10'/%3e%3cpath%20d='M367.61%2089.6723C367.607%2090.0469%20367.494%2090.4125%20367.285%2090.7229C367.076%2091.0332%20366.779%2091.2746%20366.433%2091.4164C366.086%2091.5582%20365.706%2091.5941%20365.339%2091.5197C364.973%2091.4452%20364.636%2091.2637%20364.373%2090.998C364.109%2090.7323%20363.93%2090.3944%20363.857%2090.0268C363.785%2089.6592%20363.823%2089.2785%20363.967%2088.9326C364.111%2088.5867%20364.354%2088.2912%20364.665%2088.0833C364.976%2087.8754%20365.342%2087.7644%20365.716%2087.7644C365.965%2087.7644%20366.213%2087.8138%20366.443%2087.9098C366.674%2088.0059%20366.883%2088.1466%20367.059%2088.3239C367.235%2088.5012%20367.374%2088.7116%20367.469%2088.943C367.563%2089.1745%20367.611%2089.4223%20367.61%2089.6723V89.6723Z'%20stroke='white'%20stroke-width='1.06'%20stroke-miterlimit='10'/%3e%3cpath%20d='M715.132%2070.3542V91.5684L700.048%20100.472'%20stroke='white'%20stroke-width='0.53'%20stroke-miterlimit='10'/%3e%3cpath%20d='M715.031%2070.7535C716.077%2070.7535%20716.925%2069.9044%20716.925%2068.857C716.925%2067.8096%20716.077%2066.9604%20715.031%2066.9604C713.985%2066.9604%20713.137%2067.8096%20713.137%2068.857C713.137%2069.9044%20713.985%2070.7535%20715.031%2070.7535Z'%20stroke='white'%20stroke-width='1.06'%20stroke-miterlimit='10'/%3e%3cpath%20opacity='0.35'%20d='M501.346%20238.069C501.346%20242.305%20495.959%20245.723%20489.313%20245.723C482.668%20245.723%20477.281%20242.316%20477.281%20238.069C477.281%20233.822%20482.668%20230.415%20489.313%20230.415C495.959%20230.415%20501.346%20233.844%20501.346%20238.069Z'%20fill='%23A6D0F4'/%3e%3cpath%20opacity='0.35'%20d='M512.446%20235.683C524.353%20235.683%20534.005%20229.541%20534.005%20221.964C534.005%20214.387%20524.353%20208.245%20512.446%20208.245C500.539%20208.245%20490.887%20214.387%20490.887%20221.964C490.887%20229.541%20500.539%20235.683%20512.446%20235.683Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M496.12%20218.762C496.369%20221.59%20499.023%20223.509%20501.416%20224.531C504.044%20225.625%20506.872%20226.151%20509.717%20226.076C512.634%20226.086%20515.516%20225.446%20518.155%20224.202C520.423%20223.066%20522.839%20221.056%20522.827%20218.297C522.827%20220.307%20522.691%20221.965%20521.251%20223.532C519.245%20225.467%20516.697%20226.743%20513.947%20227.189C508.799%20228.256%20501.79%20227.745%20497.877%20223.782C496.301%20222.192%20496.086%20220.511%20496.086%20218.387C496.087%20218.513%20496.098%20218.638%20496.12%20218.762Z'%20fill='%23ADCDFC'/%3e%3cpath%20d='M500.033%20213.627C494.793%20216.648%20494.759%20221.576%20499.965%20224.597C505.17%20227.618%20513.653%20227.618%20518.892%20224.597C524.132%20221.576%20524.143%20216.648%20518.892%20213.627C513.642%20210.606%20505.306%20210.595%20500.033%20213.627Z'%20fill='white'/%3e%3cpath%20d='M508.03%20209.526L508.053%20220.678L509.459%20221.495L509.425%20210.343L508.03%20209.526Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M509.424%20210.343L509.458%20221.495L510.864%20220.678L510.842%20209.526L509.424%20210.343Z'%20fill='%237BAEFF'/%3e%3cpath%20d='M507.375%20207.494L509.428%20208.687L511.48%20207.494L509.439%20206.313L507.375%20207.494Z'%20fill='%234DA5DC'/%3e%3cpath%20d='M522.735%20169.54C522.735%20169.54%20526.942%20172.016%20528.065%20174.537C529.188%20177.058%20528.881%20194.729%20523.007%20202.565C517.132%20210.401%20506.245%20211.514%20503.727%20210.401C501.21%20209.288%20486.716%20201.997%20485.582%20198.363C484.448%20194.729%20490.118%20191.924%20493.135%20190.527C496.152%20189.13%20498.159%20187.177%20499.837%20182.135C501.516%20177.092%20502.355%20168.427%20504.306%20167.019C506.256%20165.611%20510.974%20163.385%20522.735%20169.54Z'%20fill='black'/%3e%3cpath%20d='M501.9%20207.903C499.859%20206.994%20489.822%20201.986%20485.581%20198.204C484.673%20194.638%20490.117%20191.913%20493.156%20190.527C496.196%20189.142%20498.18%20187.177%20499.859%20182.135C501.537%20177.092%20502.376%20168.427%20504.327%20167.019C506.278%20165.611%20511.041%20163.385%20522.779%20169.54C524.031%20170.305%20525.204%20171.191%20526.283%20172.186C527.349%20175.116%20526.963%20192.356%20521.191%20200.067C515.418%20207.778%20504.372%20209.027%20501.9%20207.903Z'%20fill='%23232839'/%3e%3cpath%20d='M500.764%20171.451C500.764%20171.451%20499.517%20171.883%20498.587%20174.995C497.657%20178.106%20495.003%20183.728%20495.944%20186.215C496.885%20188.702%20499.675%20187.35%20500.48%20185.431C501.286%20183.512%20504.359%20174.904%20503.735%20173.62C503.112%20172.337%20502.012%20171.02%20500.764%20171.451Z'%20fill='%23113569'/%3e%3cpath%20d='M493.169%20235.204C492.983%20235.885%20492.725%20236.544%20492.398%20237.169C491.854%20238.225%20489.869%20239.633%20488.996%20240.349C488.123%20241.064%20487.125%20242.393%20487.238%20243.029C487.352%20243.665%20489.359%20243.824%20490.947%20243.472C492.534%20243.12%20493.918%20241.36%20494.349%20241.394C494.78%20241.428%20496.617%20241.098%20496.912%20240.497C497.207%20239.895%20496.674%20237.51%20496.674%20237.51V235.784L493.169%20235.204Z'%20fill='%23232839'/%3e%3cpath%20d='M485.391%20230.256C485.205%20230.937%20484.946%20231.596%20484.619%20232.221C484.075%20233.277%20482.09%20234.685%20481.217%20235.401C480.344%20236.116%20479.346%20237.445%20479.448%20238.081C479.55%20238.717%20481.58%20238.865%20483.168%20238.524C484.756%20238.183%20486.139%20236.412%20486.57%20236.446C487.001%20236.48%20488.782%20236.139%20489.133%20235.549C489.485%20234.958%20488.895%20232.562%20488.895%20232.562V230.836L485.391%20230.256Z'%20fill='%23232839'/%3e%3cpath%20d='M514.883%20195.924C514.944%20198.055%20514.368%20200.155%20513.227%20201.955C511.356%20204.658%20503.678%20211.517%20502.85%20212.176C502.022%20212.834%20501.807%20217.366%20500.979%20219.444C500.151%20221.522%20497.667%20235.025%20497.248%20236.07C497.248%20236.07%20496.828%20237.104%20493.925%20236.479C492.269%20236.274%20492.065%20235.65%20492.065%20235.65C492.065%20235.65%20493.097%20220.489%20493.925%20216.946C494.753%20213.402%20494.968%20209.473%20496.42%20208.019C497.871%20206.566%20504.925%20197.424%20504.925%20197.424L506.581%20194.721L514.883%20195.924Z'%20fill='%23113C7A'/%3e%3cpath%20d='M502.023%20192.609C502.023%20192.609%20490.818%20198.844%20489.253%20200.241C487.765%20201.546%20486.732%20203.292%20486.304%20205.226C486.179%20205.919%20485.057%20230.006%20484.592%20231.097C484.433%20232.039%20487.393%20232.652%20488.788%20232.232C489.34%20231.859%20489.817%20231.385%20490.194%20230.835C490.194%20230.835%20492.995%20216.344%20492.995%20214.312C493.253%20211.59%20493.67%20208.887%20494.243%20206.214L507.16%20198.889L508.09%20195.607L502.023%20192.609Z'%20fill='%23113C7A'/%3e%3cpath%20d='M514.479%20198.058C514.479%20198.058%20513.345%20201.181%20508.876%20200.704L507.311%20200.397L507.005%20197.899C505.435%20197.694%20503.939%20197.105%20502.65%20196.184C502.027%20196.502%20501.868%20198.058%20501.244%20198.217C500.62%20198.376%20499.532%20196.184%20499.849%20194.628C500.167%20193.073%20500.983%20193.697%20500.983%20193.697C500.983%20193.697%20513.696%20196.809%20514.479%20198.058Z'%20fill='%23112C5C'/%3e%3cpath%20d='M509.703%20169.839C509.703%20169.839%20515.033%20173.644%20515.555%20174.916C516.198%20177.281%20516.039%20179.794%20515.101%20182.059C513.967%20184.41%20514.409%20193.064%20513.967%20194.756C513.525%20196.448%20509.011%20197.027%20506.187%20196.436C503.363%20195.846%20499.961%20193.847%20500.063%20190.554C500.165%20187.26%20500.063%20181.116%20499.927%20179.64C499.769%20177.049%20500.006%20174.449%20500.63%20171.929C500.766%20171.407%20502.547%20170.85%20502.547%20170.85C502.547%20170.85%20504.452%20169.612%20509.703%20169.839Z'%20fill='%23C7BFCE'/%3e%3cpath%20d='M505.075%20169.122C505.082%20169.179%20505.082%20169.236%20505.075%20169.293C505.018%20169.679%20504.825%20170.678%20504.78%20171.098C504.734%20171.518%20505.199%20172.234%20506.277%20172.166C507.354%20172.098%20509.191%20171.689%20509.804%20170.406C509.776%20169.135%20509.837%20167.864%20509.985%20166.601L505.075%20169.122Z'%20fill='%23E16B40'/%3e%3cpath%20d='M509.84%20169.586C509.561%20170.356%20509.048%20171.018%20508.372%20171.479C507.696%20171.94%20506.892%20172.175%20506.075%20172.153H505.882L507.345%20174.515C508.388%20173.904%20509.371%20173.197%20510.282%20172.402C510.714%20171.884%20510.944%20171.226%20510.929%20170.551L509.84%20169.586Z'%20fill='white'/%3e%3cpath%20d='M505.891%20172.155L504.348%20173.62C504.348%20173.62%20503.214%20172.666%20503.906%20170.429L504.859%20170.043C504.842%20170.453%20504.928%20170.861%20505.108%20171.23C505.288%20171.598%20505.557%20171.916%20505.891%20172.155Z'%20fill='white'/%3e%3cpath%20d='M502.807%20161.739C503.374%20158.696%20505.778%20156.97%20508.478%20157.606C509.364%20157.723%20510.211%20158.046%20510.952%20158.549C511.692%20159.051%20512.305%20159.72%20512.742%20160.502C514.046%20163.091%20512.129%20165.271%20510.893%20166.646C510.372%20167.213%20509.975%20167.645%20509.759%20167.929L509.487%20168.235C508.783%20168.942%20507.919%20169.467%20506.969%20169.769C506.403%20169.963%20505.796%20170.005%20505.208%20169.889C504.621%20169.774%20504.074%20169.505%20503.624%20169.11C502.83%20168.326%20502.24%20164.772%20502.807%20161.739Z'%20fill='%23FF8654'/%3e%3cpath%20d='M510.973%20170.552C510.973%20170.552%20511.767%20171.313%20510.712%20173.244C509.301%20175.976%20508.525%20178.992%20508.444%20182.068C508.353%20185.713%20507.877%20197.138%20508.354%20199.636C509.306%20200.499%20513.911%20199.727%20515.249%20197.433C515.827%20194.026%20515.544%20183.896%20516.213%20181.784C516.77%20179.485%20516.801%20177.089%20516.303%20174.777C515.759%20173.72%20512.107%20170.836%20510.973%20170.552Z'%20fill='%23113C7A'/%3e%3cpath%20d='M503.521%20170.486C502.951%20172.788%20502.691%20175.156%20502.75%20177.527C502.75%20181.309%20501.673%20196.981%20501.48%20197.299C501.287%20197.617%20499.053%20195.641%20498.985%20193.336C498.917%20191.03%20499.756%20176.891%20499.881%20175.483C499.954%20174.099%20500.257%20172.736%20500.777%20171.452C501.655%20171.034%20502.575%20170.711%20503.521%20170.486Z'%20fill='%23113C7A'/%3e%3cpath%20d='M504.631%20172.927L505.323%20174.38L506.775%20173.233L505.89%20172.154L504.631%20172.927Z'%20fill='%23113C7A'/%3e%3cpath%20d='M505.02%20173.472C505.02%20173.472%20503.648%20191.018%20503.648%20191.779L504.566%20193.392L505.791%20192.086L506.245%20173.325L505.02%20173.472Z'%20fill='%23113C7A'/%3e%3cpath%20d='M429.925%20232.455L427.396%20230.979L427.327%20201.997L429.856%20203.473L429.925%20232.455Z'%20fill='%238750CA'/%3e%3cpath%20d='M429.857%20203.473L427.327%20201.997L461.77%20182.078L464.31%20183.554L429.857%20203.473Z'%20fill='%23DBDBDB'/%3e%3cpath%20d='M464.311%20183.557L464.379%20212.539L429.925%20232.458L429.857%20203.476L464.311%20183.557Z'%20fill='%239966D7'/%3e%3cpath%20d='M432.321%20197.968L432.253%20226.95L501.296%20266.562L501.364%20237.58L432.321%20197.968Z'%20fill='%23A478D9'/%3e%3cpath%20d='M432.28%20214.174L501.334%20253.785L501.368%20237.58L432.325%20197.968L432.28%20214.174Z'%20fill='%238750CA'/%3e%3cpath%20d='M499.169%20269.379L496.629%20267.903L496.561%20238.921L499.101%20240.397L499.169%20269.379Z'%20fill='%238750CA'/%3e%3cpath%20d='M499.101%20240.396L496.561%20238.92L531.014%20219L533.543%20220.477L499.101%20240.396Z'%20fill='%23DBDBDB'/%3e%3cpath%20d='M533.54%20220.477L533.62%20249.459L499.166%20269.379L499.098%20240.397L533.54%20220.477Z'%20fill='%23976EC9'/%3e%3cpath%20d='M538.269%20219.725L538.258%20222.45L499.2%20245.175L499.211%20242.449L538.269%20219.725Z'%20fill='%238C57CC'/%3e%3cpath%20d='M499.209%20242.452L499.198%20245.178L421.558%20200.296L421.57%20197.571L499.209%20242.452Z'%20fill='%238750CA'/%3e%3cpath%20d='M538.271%20219.725L499.213%20242.45L421.573%20197.569L460.631%20174.833L538.271%20219.725Z'%20fill='%23B59AD7'/%3e%3cpath%20d='M515.975%20174.164C516.891%20175.111%20517.537%20176.288%20517.846%20177.571C518.674%20180.171%20519.195%20189.2%20519.195%20190.551C519.195%20191.903%20519.195%20193.47%20518.061%20194.197C517.814%20194.394%20517.526%20194.533%20517.218%20194.603C516.91%20194.674%20516.591%20194.674%20516.283%20194.604C515.974%20194.534%20515.686%20194.396%20515.438%20194.2C515.191%20194.004%20514.99%20193.754%20514.852%20193.47C514.126%20192.118%20513.604%20184.385%20513.083%20182.034C512.561%20179.683%20511.733%20177.253%20512.777%20175.697C513.081%20175.137%20513.554%20174.688%20514.128%20174.412C514.702%20174.137%20515.348%20174.05%20515.975%20174.164Z'%20fill='%23113C7A'/%3e%3cpath%20d='M504.164%20200.444C504.164%20200.444%20503.643%20200.807%20503.382%20200.966L501.669%20202.102C501.213%20202.58%20500.831%20203.123%20500.535%20203.714C500.238%20204.183%20500.058%20204.717%20500.014%20205.27C500.116%20205.531%20500.433%20205.372%20500.433%20205.372C500.74%20205.713%20501.167%20205.921%20501.624%20205.952C502.248%20205.895%20502.758%20205.123%20502.758%20205.123L503.643%20204.339C503.999%20203.943%20504.279%20203.485%20504.471%20202.987L505.094%20202.567C505.094%20202.567%20505.593%20202.056%20504.164%20200.444Z'%20fill='%23FF8654'/%3e%3cpath%20d='M506.141%20202.194C506.141%20202.194%20505.495%20200.343%20504.723%20199.923L503.839%20200.548C504.394%20201.202%20504.783%20201.981%20504.973%20202.819L506.141%20202.194Z'%20fill='white'/%3e%3cpath%20d='M506.146%20202.194C506.701%20202.144%20507.236%20201.965%20507.711%20201.672C509.092%20200.65%20510.539%20199.72%20512.043%20198.89C514.059%20197.967%20515.943%20196.779%20517.645%20195.358C518.603%20194.428%20519.161%20193.161%20519.199%20191.826C518.785%20191.287%20518.202%20190.902%20517.545%20190.734C516.887%20190.565%20516.192%20190.622%20515.57%20190.895C513.527%20191.854%20511.639%20193.113%20509.967%20194.631C508.096%20196.187%20504.909%20199.287%20504.909%20199.287L504.365%20199.934C504.805%20200.164%20505.19%20200.484%20505.497%20200.873C505.804%20201.263%20506.025%20201.713%20506.146%20202.194Z'%20fill='%23113C7A'/%3e%3cpath%20d='M502.908%20161.207C502.625%20160.774%20502.43%20160.289%20502.337%20159.78C502.243%20159.271%20502.252%20158.748%20502.364%20158.243C502.794%20156.71%20504.768%20157.368%20505.868%20157.255C506.968%20157.141%20511.232%20157.255%20512.672%20159.117C514.113%20160.98%20513.444%20161.865%20513.444%20161.865C513.557%20162.754%20513.444%20163.656%20513.115%20164.489C512.559%20165.693%20509.78%20167.896%20509.78%20167.896C510.514%20167.003%20511.086%20165.988%20511.47%20164.898C511.584%20163.91%20511.028%20163.365%20510.699%20163.58C510.37%20163.796%20510.155%20165.659%20510.155%20165.659L510.007%20166.567C509.281%20166.317%20509.497%20164.784%20509.497%20164.784C509.153%20164.282%20508.896%20163.725%20508.737%20163.137C508.51%20162.263%20508.408%20161.831%20507.524%20161.389C506.859%20160.904%20506.065%20160.628%20505.243%20160.595C504.422%20160.563%20503.609%20160.776%20502.908%20161.207Z'%20fill='%23505E83'/%3e%3cpath%20d='M484.475%20177.56C484.475%20177.56%20483.92%20177.265%20483.659%20177.094C483.398%20176.924%20482.4%20176.333%20481.912%20176.061C481.282%20175.859%20480.624%20175.756%20479.962%20175.754C479.41%20175.706%20478.855%20175.788%20478.34%20175.993C478.158%20176.209%20478.442%20176.413%20478.442%20176.413C478.266%20176.838%20478.266%20177.316%20478.442%20177.742C478.763%20178.105%20479.208%20178.336%20479.689%20178.389L480.824%20178.821C481.335%20178.967%20481.871%20179.013%20482.4%20178.957L483.046%20179.332C483.046%20179.332%20483.659%20179.536%20484.475%20177.56Z'%20fill='%23FF8654'/%3e%3cpath%20d='M483.761%20180.083C483.761%20180.083%20485.111%20178.675%20485.179%20177.812L484.226%20177.301C483.899%20178.084%20483.394%20178.78%20482.752%20179.334L483.761%20180.083Z'%20fill='white'/%3e%3cpath%20d='M483.754%20180.082C484.039%20180.544%20484.427%20180.932%20484.888%20181.217C486.42%20181.998%20487.901%20182.875%20489.323%20183.841C491.051%20185.227%20492.958%20186.373%20494.993%20187.248C496.254%20187.688%20497.637%20187.619%20498.849%20187.055C499.143%20186.442%20499.225%20185.749%20499.081%20185.084C498.937%20184.42%20498.576%20183.822%20498.055%20183.387C496.274%20181.992%20494.299%20180.867%20492.192%20180.048C489.924%20179.082%20485.773%20177.617%20485.773%20177.617L484.956%20177.424C484.955%20177.927%20484.847%20178.424%20484.64%20178.882C484.433%20179.34%20484.131%20179.749%20483.754%20180.082Z'%20fill='%23113569'/%3e%3cpath%20d='M501.324%20223.795L509.206%20228.383L521.964%20221.002L514.082%20216.414L501.324%20223.795Z'%20fill='%238C57CC'/%3e%3cpath%20d='M499.872%20221.066V223.02L507.765%20227.608L507.754%20225.654L499.872%20221.066Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M507.752%20225.656L507.763%20227.609L520.521%20220.228V218.274L507.752%20225.656Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M499.872%20221.065L507.754%20225.653L520.523%20218.271L512.63%20213.683L499.872%20221.065Z'%20fill='white'/%3e%3cpath%20d='M447.361%20200.377L455.254%20204.965L468.013%20197.594L460.12%20192.995L447.361%20200.377Z'%20fill='%238C57CC'/%3e%3cpath%20d='M445.913%20197.652L445.924%20199.605L453.806%20204.193V202.24L445.913%20197.652Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M453.801%20202.236V204.189L466.571%20196.818L466.559%20194.854L453.801%20202.236Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M445.913%20197.654L453.806%20202.242L466.564%20194.86L458.682%20190.272L445.913%20197.654Z'%20fill='white'/%3e%3cpath%20d='M490.068%20214.659L497.961%20219.247L510.719%20211.865L502.837%20207.277L490.068%20214.659Z'%20fill='white'/%3e%3cpath%20d='M496.942%20205.938C498.746%20206.983%20498.746%20208.663%20496.942%20209.708L485.397%20216.42C484.39%20216.935%20483.274%20217.204%20482.142%20217.204C481.011%20217.204%20479.895%20216.935%20478.888%20216.42L467.275%20209.708C465.471%20208.663%20465.46%20206.971%20467.275%20205.938L478.82%20199.215C479.825%20198.699%20480.939%20198.431%20482.069%20198.431C483.199%20198.431%20484.312%20198.699%20485.318%20199.215L496.942%20205.938Z'%20fill='%238C57CC'/%3e%3cpath%20d='M486.649%20207.686C486.634%20207.719%20486.615%20207.749%20486.592%20207.777L486.512%20207.856H486.456L486.376%20207.913L481.591%20210.571L476.419%20207.584V207.947L481.591%20210.934L486.376%20208.265H486.433H486.49L486.547%20208.208C486.547%20208.208%20486.547%20208.208%20486.547%20208.152V208.061V207.538C486.594%20207.577%20486.629%20207.628%20486.649%20207.686Z'%20fill='%23BAC0D2'/%3e%3cpath%20d='M486.392%20207.21C486.767%20207.426%20486.755%20207.766%20486.392%20207.982L481.606%20210.64L476.435%20207.653L480.484%20204.575C480.69%20204.466%20480.92%20204.409%20481.153%20204.409C481.386%20204.409%20481.616%20204.466%20481.822%20204.575L486.392%20207.21Z'%20fill='white'/%3e%3cpath%20d='M493.476%20195.894C493.905%20196.175%20494.21%20196.61%20494.327%20197.109L496.799%20213.78C496.867%20214.212%20496.584%20214.382%20496.187%20214.144L470.931%20199.585C470.499%20199.307%20470.193%20198.871%20470.08%20198.37L467.608%20181.698C467.54%20181.267%20467.812%20181.096%20468.22%20181.335L493.476%20195.894Z'%20fill='%23C7C9D7'/%3e%3cpath%20d='M497.204%20213.625V213.5L494.72%20196.829V196.658V196.522V196.374L494.641%20196.272L469.385%20181.656H468.976H468.908L468.511%20181.952H468.591C468.628%20181.946%20468.667%20181.946%20468.704%20181.952H468.84C468.897%20181.964%20468.951%20181.987%20468.999%20182.02L494.255%20196.636L494.403%20196.738L494.55%20196.863L494.686%20197.01L494.8%20197.169L494.902%20197.34L494.992%20197.51C494.997%20197.571%20494.997%20197.631%20494.992%20197.692C494.997%20197.745%20494.997%20197.798%20494.992%20197.851L497.465%20214.522C497.47%20214.568%20497.47%20214.613%20497.465%20214.658C497.47%20214.696%20497.47%20214.734%20497.465%20214.772C497.47%20214.795%20497.47%20214.818%20497.465%20214.84C497.444%20214.875%20497.417%20214.906%20497.385%20214.931L497.794%20214.636C497.825%20214.614%20497.849%20214.582%20497.862%20214.545V214.454L497.204%20213.625Z'%20fill='white'/%3e%3cpath%20opacity='0.2'%20d='M479.477%20205.318L476.415%20207.658L481.587%20210.645L485.204%20208.634L479.477%20205.318Z'%20fill='%23777DB2'/%3e%3cpath%20d='M482.675%20200.386L481.586%20211.028L476.404%20208.029L478.422%20198.058L482.675%20200.386Z'%20fill='%23BAC0D2'/%3e%3cpath%20d='M497.444%20233.936L500.313%20232.346L496.264%20230.245L497.444%20233.936Z'%20fill='%238C57CC'/%3e%3cpath%20d='M498.329%20229.19L499.123%20228.906L498.238%20233.653L497.445%20233.937L498.329%20229.19Z'%20fill='%23656874'/%3e%3cpath%20d='M485.4%20221.944L486.182%20221.66L499.122%20228.905L498.328%20229.189L485.4%20221.944Z'%20fill='%239C9EA6'/%3e%3cpath%20d='M498.329%20229.189L497.444%20233.936L484.516%20226.69L485.4%20221.943L498.329%20229.189Z'%20fill='%23232839'/%3e%3cpath%20d='M452.76%20189.871C453.894%20190.507%20453.894%20191.529%20452.76%20192.143C452.147%20192.456%20451.469%20192.619%20450.781%20192.619C450.093%20192.619%20449.415%20192.456%20448.802%20192.143C448.572%20192.055%20448.374%20191.9%20448.235%20191.697C448.095%20191.494%20448.02%20191.253%20448.02%20191.007C448.02%20190.761%20448.095%20190.52%20448.235%20190.317C448.374%20190.115%20448.572%20189.959%20448.802%20189.871C449.414%20189.556%20450.093%20189.391%20450.781%20189.391C451.47%20189.391%20452.148%20189.556%20452.76%20189.871Z'%20fill='%238C57CC'/%3e%3cpath%20d='M453.137%20184.219V190.442C453.116%20190.67%20453.034%20190.888%20452.9%20191.074C452.767%20191.26%20452.586%20191.406%20452.377%20191.498C451.806%20191.789%20451.175%20191.941%20450.534%20191.941C449.893%20191.941%20449.262%20191.789%20448.691%20191.498C448.48%20191.405%20448.297%20191.257%20448.161%20191.069C448.026%20190.882%20447.942%20190.661%20447.92%20190.431V184.196C447.938%20184.429%20448.02%20184.653%20448.156%20184.843C448.291%20185.033%20448.477%20185.183%20448.691%20185.275C449.262%20185.566%20449.893%20185.718%20450.534%20185.718C451.175%20185.718%20451.806%20185.566%20452.377%20185.275C452.586%20185.183%20452.767%20185.036%20452.9%20184.85C453.034%20184.665%20453.116%20184.447%20453.137%20184.219Z'%20fill='white'/%3e%3cpath%20d='M452.321%20183.137C453.342%20183.727%20453.353%20184.681%20452.321%20185.272C451.751%20185.563%20451.119%20185.715%20450.479%20185.715C449.838%20185.715%20449.206%20185.563%20448.636%20185.272C447.615%20184.681%20447.604%20183.727%20448.636%20183.137C449.206%20182.846%20449.838%20182.694%20450.479%20182.694C451.119%20182.694%20451.751%20182.846%20452.321%20183.137Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M451.925%20183.375C452.098%20183.434%20452.249%20183.545%20452.356%20183.694C452.463%20183.842%20452.52%20184.021%20452.52%20184.204C452.52%20184.387%20452.463%20184.566%20452.356%20184.715C452.249%20184.864%20452.098%20184.975%20451.925%20185.033C451.479%20185.262%20450.986%20185.382%20450.485%20185.382C449.984%20185.382%20449.49%20185.262%20449.044%20185.033C448.871%20184.975%20448.72%20184.864%20448.613%20184.715C448.506%20184.566%20448.449%20184.387%20448.449%20184.204C448.449%20184.021%20448.506%20183.842%20448.613%20183.694C448.72%20183.545%20448.871%20183.434%20449.044%20183.375C449.489%20183.144%20449.983%20183.024%20450.485%20183.024C450.986%20183.024%20451.48%20183.144%20451.925%20183.375Z'%20fill='%238C57CC'/%3e%3cpath%20d='M448.471%20184.387C447.988%20182.685%20447.397%20181.016%20446.701%20179.39C446.701%20178.811%20447.904%20179.503%20448.357%20180.582C448.747%20181.722%20449.043%20182.892%20449.242%20184.08C449.242%20184.08%20449.162%20178.504%20450.126%20177.266C450.739%20177.425%20450.365%20183.546%20450.285%20184.012C450.285%20184.012%20452.202%20179.924%20453.472%20179.083C454.05%20179.151%20451.623%20184.194%20451.623%20184.194C451.917%20183.646%20452.317%20183.163%20452.8%20182.773C453.283%20182.383%20453.839%20182.094%20454.436%20181.922C453.824%20182.822%20453.158%20183.683%20452.44%20184.5C452.151%20184.839%20451.776%20185.092%20451.355%20185.234C450.933%20185.376%20450.481%20185.401%20450.047%20185.307C449.73%20185.292%20449.421%20185.2%20449.146%20185.04C448.872%20184.88%20448.64%20184.656%20448.471%20184.387Z'%20fill='%234CA15C'/%3e%3cpath%20d='M562.062%20231.844C564.762%20233.411%20564.773%20235.933%20562.062%20237.523C560.558%20238.292%20558.892%20238.693%20557.203%20238.693C555.513%20238.693%20553.848%20238.292%20552.343%20237.523C549.644%20235.978%20549.633%20233.446%20552.343%20231.844C553.848%20231.076%20555.514%20230.675%20557.203%20230.675C558.892%20230.675%20560.558%20231.076%20562.062%20231.844Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M562.872%20217.955V233.241C562.822%20233.8%20562.625%20234.335%20562.3%20234.792C561.975%20235.249%20561.534%20235.612%20561.023%20235.841C559.619%20236.56%20558.064%20236.935%20556.487%20236.935C554.91%20236.935%20553.355%20236.56%20551.95%20235.841C551.43%20235.609%20550.98%20235.241%20550.649%20234.775C550.318%20234.31%20550.117%20233.764%20550.068%20233.195V217.909C550.119%20218.478%20550.32%20219.023%20550.651%20219.488C550.982%20219.953%20551.43%20220.322%20551.95%20220.555C553.354%20221.276%20554.909%20221.652%20556.487%20221.652C558.064%20221.652%20559.619%20221.276%20561.023%20220.555C561.534%20220.325%20561.974%20219.962%20562.298%20219.505C562.623%20219.048%20562.821%20218.513%20562.872%20217.955Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M560.975%20215.31C563.493%20216.764%20563.504%20219.114%20560.975%20220.557C559.571%20221.277%20558.016%20221.653%20556.439%20221.653C554.861%20221.653%20553.306%20221.277%20551.902%20220.557C549.396%20219.103%20549.385%20216.752%20551.902%20215.31C553.306%20214.588%20554.861%20214.211%20556.439%20214.211C558.016%20214.211%20559.572%20214.588%20560.975%20215.31Z'%20fill='white'/%3e%3cpath%20d='M559.976%20215.889C561.938%20217.024%20561.949%20218.853%20559.976%20219.977C558.883%20220.532%20557.674%20220.821%20556.449%20220.821C555.223%20220.821%20554.015%20220.532%20552.922%20219.977C550.971%20218.841%20550.96%20217.013%20552.922%20215.889C554.015%20215.332%20555.223%20215.042%20556.449%20215.042C557.675%20215.042%20558.883%20215.332%20559.976%20215.889Z'%20fill='%23713336'/%3e%3cpath%20d='M551.538%20218.388C551.538%20218.388%20548.328%20207.701%20547.194%20206.1C547.194%20204.68%20550.12%20206.384%20551.254%20209.03C552.211%20211.836%20552.939%20214.715%20553.432%20217.638C553.432%20217.638%20553.239%20203.92%20555.598%20200.899C557.106%20201.273%20556.165%20216.31%20555.983%20217.445C555.983%20217.445%20560.701%20207.417%20563.82%20205.339C565.226%20205.532%20559.284%20217.911%20559.284%20217.911C559.284%20217.911%20561.733%20213.289%20566.179%20212.437C564.671%20214.643%20563.031%20216.755%20561.268%20218.763C561.268%20218.763%20559.658%20221.227%20555.416%20220.75C555.416%20220.75%20552.479%20220.568%20551.538%20218.388Z'%20fill='%234CA15C'/%3e%3cpath%20opacity='0.35'%20d='M428.648%20256.795C428.648%20263.609%20437.358%20269.173%20448.097%20269.173C458.837%20269.173%20467.547%20263.631%20467.547%20256.795C467.547%20249.958%20458.837%20244.427%20448.097%20244.427C437.358%20244.427%20428.648%20249.958%20428.648%20256.795Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M456.241%20259.475C456.241%20259.475%20455.47%20262.564%20455.935%20263.189C456.315%20263.558%20456.784%20263.824%20457.297%20263.959C457.809%20264.094%20458.348%20264.095%20458.861%20263.961C459.652%20263.615%20460.306%20263.016%20460.721%20262.258C461.912%20261.589%20463.004%20260.755%20463.964%20259.782C464.143%20259.534%20464.239%20259.236%20464.239%20258.93C464.239%20258.624%20464.143%20258.326%20463.964%20258.078C463.084%20257.992%20462.196%20258.046%20461.333%20258.237C460.284%20258.536%20459.254%20258.896%20458.248%20259.316L456.241%20259.475Z'%20fill='%23232839'/%3e%3cpath%20d='M448.361%20255.136C448.361%20255.136%20447.59%20258.237%20448.055%20258.85C448.433%20259.223%20448.902%20259.491%20449.415%20259.627C449.929%20259.762%20450.469%20259.761%20450.981%20259.622C451.772%20259.276%20452.426%20258.677%20452.841%20257.919C454.033%20257.25%20455.125%20256.417%20456.085%20255.443C456.264%20255.195%20456.36%20254.897%20456.36%20254.591C456.36%20254.285%20456.264%20253.987%20456.085%20253.74C455.205%20253.66%20454.318%20253.714%20453.453%20253.899C452.403%20254.213%20451.373%20254.592%20450.369%20255.034L448.361%20255.136Z'%20fill='%23232839'/%3e%3cpath%20d='M472.03%20209.904L462.31%20219.841L452.864%20217.388L462.583%20207.451L472.03%20209.904Z'%20fill='white'/%3e%3cpath%20d='M461.593%20210.515L462.523%20210.867C462.912%20210.584%20463.363%20210.398%20463.838%20210.323C464.313%20210.248%20464.799%20210.286%20465.256%20210.435L466.027%20209.799C465.284%20209.561%20464.495%20209.501%20463.725%20209.625C462.954%20209.75%20462.224%20210.054%20461.593%20210.515Z'%20fill='%23E2EDFF'/%3e%3cpath%20d='M461.47%20210.605C460.563%20211.412%20460.62%20212.365%20461.538%20212.933L462.332%20212.275C461.913%20211.923%20461.924%20211.412%20462.4%20210.957L461.47%20210.605Z'%20fill='%23E2EDFF'/%3e%3cpath%20d='M461.661%20213.004L461.967%20213.141C462.702%20213.372%20463.48%20213.431%20464.241%20213.313C465.002%20213.195%20465.726%20212.903%20466.356%20212.459L465.426%20212.107C465.037%20212.373%20464.593%20212.547%20464.128%20212.616C463.662%20212.685%20463.187%20212.647%20462.738%20212.505L462.443%20212.357L461.661%20213.004Z'%20fill='%233EABFF'/%3e%3cpath%20d='M465.441%20210.516C466.099%20210.857%20466.156%20211.493%20465.555%20212.015L466.485%20212.367C467.505%20211.493%20467.381%20210.414%20466.224%20209.869L465.441%20210.516Z'%20fill='%233EABFF'/%3e%3cpath%20d='M454.053%20241.784C453.679%20244.838%20452.148%20252.856%20451.898%20255.65C451.898%20255.65%20451.263%20256.672%20449.358%20256.422L448.451%20256.036C448.273%20255.966%20448.124%20255.839%20448.027%20255.674C447.93%20255.509%20447.892%20255.317%20447.918%20255.128C448.277%20252.562%20448.417%20249.971%20448.337%20247.382C448.152%20245.793%20448.326%20244.182%20448.848%20242.669C448.779%20241.715%20448.655%20238.411%20450.56%20237.525C450.56%20237.525%20455.232%20236.662%20454.053%20241.784Z'%20fill='%23113569'/%3e%3cpath%20d='M450.171%20238.92L450.681%20239.93C450.681%20239.93%20458.495%20240.316%20460.593%20242.611C461.338%20242.936%20461.951%20243.506%20462.33%20244.226C462.709%20244.946%20462.833%20245.774%20462.68%20246.574C462.294%20249.629%20459.709%20256.988%20459.448%20259.793C459.448%20259.793%20458.813%20260.804%20456.907%20260.554L456.011%20260.179C455.833%20260.106%20455.683%20259.977%20455.585%20259.811C455.487%20259.645%20455.445%20259.451%20455.467%20259.259C455.825%20256.694%20455.969%20254.103%20455.898%20251.514C455.707%20249.928%20455.881%20248.32%20456.408%20246.812C453.973%20247.309%20451.588%20248.032%20449.286%20248.97C445.601%20250.503%20442.425%20248.72%20441.03%20247.948C440.34%20247.607%20439.696%20247.18%20439.114%20246.676C437.859%20246.591%20436.665%20246.101%20435.711%20245.279C434.056%20243.882%20433.806%20240.192%20435.587%20238.022C437.367%20235.853%20450.171%20238.92%20450.171%20238.92Z'%20fill='%23113C7A'/%3e%3cpath%20d='M447.385%20219.567C447.385%20219.567%20447.147%20219.567%20447.226%20217.898C447.333%20217.17%20447.575%20216.469%20447.941%20215.831C447.941%20215.831%20445.287%20214.003%20443.155%20214.514C442.456%20215.949%20441.503%20217.246%20440.342%20218.341C440.342%20218.341%20441.533%20221.487%20447.385%20219.567Z'%20fill='%23FF8654'/%3e%3cpath%20d='M444.618%20220.518C444.618%20220.518%20439.946%20216.611%20438.948%20216.52C438.305%20216.397%20437.64%20216.527%20437.091%20216.882C436.542%20217.238%20436.151%20217.791%20435.999%20218.428C435.83%20219.054%20435.868%20219.717%20436.107%20220.319C436.347%20220.921%20436.774%20221.429%20437.326%20221.767C438.188%20222.244%20445.718%20225.867%20447.056%20225.867C447.366%20225.894%20447.676%20225.828%20447.948%20225.678C448.22%20225.528%20448.441%20225.3%20448.583%20225.024C448.725%20224.747%20448.782%20224.435%20448.747%20224.126C448.711%20223.817%20448.585%20223.526%20448.383%20223.289C447.578%20221.858%20444.618%20220.518%20444.618%20220.518Z'%20fill='%23113569'/%3e%3cpath%20d='M443.189%20217.922C443.189%20217.922%20448.144%20219.569%20449.539%20221.863C450.934%20224.157%20450.673%20226.701%20449.675%20230.267C448.677%20233.832%20450.685%20237.012%20450.174%20238.92C449.664%20240.828%20446.114%20242.611%20440.898%20241.714C435.681%20240.817%20435.307%20238.795%20434.932%20237.648C434.558%20236.501%20435.942%20231.027%20434.672%20226.576C434.209%20225.124%20434.176%20223.569%20434.579%20222.099C434.982%20220.63%20435.802%20219.309%20436.94%20218.297C437.983%20217.536%20440.013%20216.525%20443.189%20217.922Z'%20fill='%23113C7A'/%3e%3cpath%20d='M447.931%20220.036C447.931%20220.036%20446.593%20220.899%20443.259%20220.422C439.924%20219.945%20439.732%20217.561%20440.015%20217.368C440.333%20217.079%20440.622%20216.759%20440.877%20216.414C440.877%20216.414%20444.404%20218.038%20445.64%20218.515C446.876%20218.992%20447.546%20219.275%20447.546%20219.275L447.931%20220.036Z'%20fill='white'/%3e%3cpath%20d='M433.505%20262.056C433.675%20263.975%20435.489%20265.292%20437.122%20265.997C438.92%20266.735%20440.851%20267.091%20442.793%20267.041C444.784%20267.049%20446.751%20266.615%20448.554%20265.769C450.108%20265.008%20451.752%20263.623%20451.741%20261.738C451.815%20262.376%20451.758%20263.023%20451.572%20263.638C451.387%20264.254%20451.078%20264.824%20450.663%20265.315C449.293%20266.629%20447.557%20267.497%20445.685%20267.802C442.169%20268.529%20437.383%20268.177%20434.718%20265.531C434.262%20265.04%20433.916%20264.456%20433.705%20263.819C433.493%20263.182%20433.421%20262.507%20433.493%20261.84C433.493%20261.84%20433.493%20261.931%20433.505%20262.056Z'%20fill='%23ADCDFC'/%3e%3cpath%20d='M436.181%20257.981C432.609%20260.048%20432.586%20263.398%20436.181%20265.465C438.18%20266.484%20440.391%20267.015%20442.634%20267.015C444.877%20267.015%20447.088%20266.484%20449.087%20265.465C452.659%20263.398%20452.671%20260.048%20449.087%20257.981C447.089%20256.96%20444.877%20256.427%20442.634%20256.427C440.391%20256.427%20438.179%20256.96%20436.181%20257.981Z'%20fill='white'/%3e%3cpath%20d='M440.983%20253.808L441.005%20261.791L442.4%20262.598L442.378%20254.614L440.983%20253.808Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M442.377%20254.614L442.4%20262.598L443.806%20261.791L443.784%20253.808L442.377%20254.614Z'%20fill='%237BAEFF'/%3e%3cpath%20d='M440.983%20253.808L442.378%20254.614L443.784%20253.808L442.389%20252.99L440.983%20253.808Z'%20fill='%234DA5DC'/%3e%3cpath%20d='M424.542%20224.136C424.549%20223.878%20424.616%20223.626%20424.739%20223.399C424.862%20223.172%20425.037%20222.977%20425.249%20222.831C425.462%20222.685%20425.706%20222.591%20425.961%20222.557C426.217%20222.524%20426.477%20222.551%20426.719%20222.637C431.256%20224.238%20441.905%20230.439%20442.597%20231.722C443.288%20233.006%20445.307%20240.16%20446.316%20243.749C446.386%20243.991%20446.509%20244.213%20446.677%20244.4C446.846%20244.586%20447.055%20244.732%20447.288%20244.825C447.521%20244.918%20447.772%20244.957%20448.023%20244.938C448.273%20244.918%20448.516%20244.842%20448.732%20244.714L455.049%20240.989C455.317%20240.828%20455.626%20240.748%20455.938%20240.757C456.251%20240.766%20456.554%20240.866%20456.812%20241.043C457.07%20241.22%20457.272%20241.467%20457.394%20241.756C457.516%20242.044%20457.552%20242.362%20457.499%20242.67L456.489%20248.769C456.448%20249.006%20456.354%20249.231%20456.214%20249.427C456.075%20249.624%20455.894%20249.787%20455.684%20249.904L448.88%20253.8C447.018%20254.868%20444.922%20255.459%20442.777%20255.521C440.632%20255.582%20438.505%20255.112%20436.586%20254.152L431.381%20251.54C426.844%20249.268%20424.02%20243.056%20424.202%20237.912L424.542%20224.136Z'%20fill='%233278CC'/%3e%3cpath%20d='M442.574%20231.776C443.209%20233.06%20445.285%20240.214%20446.294%20243.803C446.363%20244.045%20446.487%20244.267%20446.655%20244.454C446.824%20244.64%20447.032%20244.786%20447.266%20244.879C447.499%20244.972%20447.75%20245.011%20448%20244.991C448.251%20244.972%20448.493%20244.896%20448.71%20244.768L455.027%20241.043C455.295%20240.882%20455.604%20240.801%20455.916%20240.811C456.229%20240.82%20456.532%20240.919%20456.79%20241.096C457.048%20241.273%20457.25%20241.521%20457.372%20241.809C457.493%20242.098%20457.53%20242.415%20457.476%20242.724L456.467%20248.822C456.443%20248.96%20456.401%20249.093%20456.342%20249.22L456.093%20249.606C455.971%20249.751%20455.825%20249.874%20455.662%20249.969L448.857%20253.865C447.456%20254.668%20445.918%20255.203%20444.321%20255.443C438.843%20251.185%20439.535%20233.412%20441.52%20231.913C441.758%20231.731%20442.022%20231.586%20442.302%20231.481C442.407%20231.565%20442.499%20231.665%20442.574%20231.776Z'%20fill='%233AAEEF'/%3e%3cpath%20d='M455.052%20225.713C455.052%20225.713%20449.619%20221.068%20448.667%20220.966C447.533%20220.875%20446.591%20222.635%20446.206%20224.259C446.038%20224.886%20446.078%20225.55%20446.319%20226.152C446.56%20226.754%20446.99%20227.261%20447.544%20227.598C448.406%20228.075%20455.936%20231.709%20457.263%20231.709C457.625%20231.697%20457.978%20231.596%20458.29%20231.415C458.603%20231.233%20458.867%20230.977%20459.056%20230.669C459.246%20230.361%20459.357%20230.01%20459.378%20229.648C459.4%20229.287%20459.332%20228.926%20459.18%20228.597C458.318%20227.189%20455.052%20225.713%20455.052%20225.713Z'%20fill='%23113C7A'/%3e%3cpath%20d='M461.368%20220.179C461.498%20219.92%20461.593%20219.645%20461.652%20219.362C461.581%20218.857%20461.581%20218.345%20461.652%20217.84C461.844%20217.079%20462.173%20216.409%20462.321%20215.875C462.695%20215.398%20463.035%20216.261%20462.752%20217.011C462.468%20217.76%20462.559%20218.146%20462.842%20218.203C463.523%20218.007%20464.145%20217.648%20464.657%20217.158C464.986%20216.772%20466.925%20214.887%20467.084%20215.148C467.243%20215.409%20467.277%20215.625%20466.608%20216.341C466.21%20216.689%20465.886%20217.114%20465.655%20217.59C465.625%20217.918%20465.545%20218.24%20465.417%20218.544C465.179%20219.112%20465.417%20219.498%20464.94%20220.02C464.464%20220.543%20463.704%20220.633%20463.319%20220.974L462.933%20221.304L461.368%20220.179Z'%20fill='%23FFAA83'/%3e%3cpath%20d='M457.265%20231.727C457.911%20231.803%20458.564%20231.662%20459.122%20231.327C459.68%20230.992%20460.111%20230.482%20460.35%20229.876C461.427%20227.605%20463.276%20221.665%20463.525%20221.097C463.317%20220.678%20462.992%20220.329%20462.59%20220.091C462.187%20219.853%20461.724%20219.737%20461.257%20219.757C461.257%20219.757%20459.477%20223.255%20458.456%20224.857C457.435%20226.458%20453.863%20231.091%20457.265%20231.727Z'%20fill='%23113C7A'/%3e%3cpath%20d='M450.551%20210.085C450.551%20211.163%20450.232%20212.217%20449.634%20213.113C449.036%20214.01%20448.186%20214.709%20447.191%20215.121C446.196%20215.534%20445.102%20215.642%20444.046%20215.431C442.99%20215.221%20442.02%20214.702%20441.259%20213.94C440.497%20213.177%20439.979%20212.206%20439.769%20211.148C439.559%20210.091%20439.667%20208.995%20440.079%20207.999C440.491%20207.003%20441.188%20206.151%20442.083%20205.552C442.979%20204.953%20444.031%20204.634%20445.108%20204.634C445.823%20204.632%20446.532%20204.772%20447.193%20205.046C447.854%20205.319%20448.455%20205.721%20448.96%20206.227C449.466%20206.734%20449.867%20207.335%20450.14%20207.997C450.413%20208.659%20450.553%20209.369%20450.551%20210.085Z'%20fill='%23FF8654'/%3e%3cpath%20d='M450.553%20210.449C450.553%20210.449%20450.621%20215.911%20449.419%20217.013C448.217%20218.114%20446.402%20215.979%20443.488%20215.298C440.573%20214.617%20445.847%20208.87%20445.847%20208.87L450.553%20210.449Z'%20fill='%23FF8654'/%3e%3cpath%20d='M440.533%20205.61C440.533%20205.61%20446.351%20202.203%20449.605%20205.031C452.86%20207.859%20449.14%20208.983%20448.562%20209.801C447.984%20210.619%20448.562%20211.277%20448.256%20211.868C447.95%20212.458%20447.859%20212.561%20447.859%20212.561L448.063%20213.265L447.711%20213.571C447.711%20213.571%20447.246%20212.254%20446.815%20212.288C446.385%20212.322%20446.044%20213.185%20446.192%20213.685C446.339%20214.185%20446.781%20214.741%20446.702%20215.093C446.623%20215.445%20446.158%20216.41%20445.727%20216.444C444.688%20216.361%20443.67%20216.112%20442.71%20215.706C441.201%20214.78%20439.998%20213.429%20439.251%20211.822C439.028%20211.25%20438.94%20210.633%20438.993%20210.021C439.046%20209.408%20439.239%20208.816%20439.557%20208.29C439.413%20207.798%20439.43%20207.272%20439.606%20206.79C439.781%20206.308%20440.106%20205.895%20440.533%20205.61Z'%20fill='%2396432A'/%3e%3cpath%20opacity='0.43'%20d='M668.681%20149.759L684.513%20149.656L717.481%20131.043L699.2%20122.037L668.681%20149.759Z'%20fill='%23A6D0F4'/%3e%3cpath%20opacity='0.35'%20d='M688.581%20112.949C698.196%20112.949%20705.99%20107.991%20705.99%20101.876C705.99%2095.7606%20698.196%2090.8032%20688.581%2090.8032C678.967%2090.8032%20671.173%2095.7606%20671.173%20101.876C671.173%20107.991%20678.967%20112.949%20688.581%20112.949Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M675.418%2099.2895C675.623%20101.561%20677.766%20103.117%20679.694%20103.957C681.817%20104.836%20684.1%20105.258%20686.396%20105.195C688.748%20105.202%20691.072%20104.686%20693.201%20103.685C695.027%20102.787%20696.977%20101.141%20696.977%2098.9148C697.064%2099.6711%20696.995%20100.437%20696.774%20101.166C696.554%20101.894%20696.187%20102.57%20695.696%20103.151C694.076%20104.711%20692.018%20105.737%20689.799%20106.092C685.637%20106.955%20679.977%20106.535%20676.825%20103.333C676.293%20102.748%20675.893%20102.057%20675.65%20101.304C675.408%20100.552%20675.329%2099.7568%20675.418%2098.9716V99.2895Z'%20fill='%23ADCDFC'/%3e%3cpath%20d='M678.556%2095.1075C674.326%2097.5491%20674.292%20101.513%20678.556%20103.966C680.923%20105.17%20683.54%20105.797%20686.194%20105.797C688.849%20105.797%20691.466%20105.17%20693.832%20103.966C698.063%20101.513%20698.074%2097.5491%20693.832%2095.1075C691.468%2093.8964%20688.85%2093.2649%20686.194%2093.2649C683.539%2093.2649%20680.921%2093.8964%20678.556%2095.1075Z'%20fill='white'/%3e%3cpath%20d='M685.004%2091.8394L685.026%20100.845L686.16%20101.504L686.138%2092.498L685.004%2091.8394Z'%20fill='%23C7D8F2'/%3e%3cpath%20d='M686.144%2092.498L686.166%20101.504L687.3%20100.845L687.278%2091.8394L686.144%2092.498Z'%20fill='%237BAEFF'/%3e%3cpath%20d='M684.482%2090.2053L686.138%2091.1593L687.793%2090.2053L686.149%2089.24L684.482%2090.2053Z'%20fill='%234DA5DC'/%3e%3cpath%20d='M696.881%2059.5533C696.881%2059.5533%20700.283%2061.5521%20701.179%2063.5849C702.075%2065.6177%20701.837%2079.893%20697.096%2086.2186C692.356%2092.5442%20683.567%2093.4414%20681.537%2092.5442C679.507%2091.647%20667.769%2085.7302%20666.873%2082.823C665.977%2079.9157%20670.479%2077.633%20672.963%2076.4974C675.447%2075.3617%20677.023%2073.7831%20678.373%2069.6834C679.722%2065.5837%20680.403%2058.6107%20681.99%2057.4864C683.578%2056.3621%20687.4%2054.5791%20696.881%2059.5533Z'%20fill='%2325437F'/%3e%3cpath%20d='M680.029%2090.57C678.374%2089.8318%20670.265%2085.8002%20666.84%2082.734C666.114%2079.8608%20670.514%2077.6576%20672.964%2076.5446C675.414%2075.4317%20677.024%2073.8304%20678.374%2069.7307C679.723%2065.6309%20680.404%2058.658%20681.991%2057.5337C683.579%2056.4094%20687.401%2054.5923%20696.882%2059.5665C697.895%2060.1825%20698.845%2060.8977%20699.717%2061.7016C700.568%2064.0751%20700.261%2077.9869%20695.589%2084.2103C690.917%2090.4337%20682.059%2091.4331%20680.029%2090.57Z'%20fill='%23254DA1'/%3e%3cpath%20d='M609.514%20118.378L606.985%20116.902L606.917%2087.9197L609.446%2089.396L609.514%20118.378Z'%20fill='%23CB6A50'/%3e%3cpath%20d='M609.446%2089.395L606.917%2087.9186L641.359%2068.0105L643.899%2069.4869L609.446%2089.395Z'%20fill='%23DBDBDB'/%3e%3cpath%20d='M643.9%2069.4895L643.968%2098.4715L609.515%20118.38L609.447%2089.3976L643.9%2069.4895Z'%20fill='%239966D7'/%3e%3cpath%20d='M611.92%2083.8906L611.852%20112.873L670.768%20146.886L670.836%20117.904L611.92%2083.8906Z'%20fill='%23A478D9'/%3e%3cpath%20d='M611.887%20100.108L670.791%20134.121L670.837%20117.904L611.921%2083.8906L611.887%20100.108Z'%20fill='%238C57CC'/%3e%3cpath%20d='M668.621%20149.703L666.092%20148.238L666.024%20119.256L668.553%20120.732L668.621%20149.703Z'%20fill='%238C57CC'/%3e%3cpath%20d='M668.553%20120.731L666.024%20119.254L700.466%2099.335L703.007%20100.811L668.553%20120.731Z'%20fill='%23DBDBDB'/%3e%3cpath%20d='M703.008%20100.814L703.076%20129.796L668.622%20149.704L668.554%20120.733L703.008%20100.814Z'%20fill='%23976EC9'/%3e%3cpath%20d='M707.733%20100.052L707.722%20102.778L668.664%20125.513V122.788L707.733%20100.052Z'%20fill='%238C57CC'/%3e%3cpath%20d='M668.663%20122.79V125.515L601.151%2086.2214L601.163%2083.4958L668.663%20122.79Z'%20fill='%238C57CC'/%3e%3cpath%20d='M707.738%20100.054L668.669%20122.79L601.168%2083.496L640.226%2060.7715L707.738%20100.054Z'%20fill='%23B195D2'/%3e%3cpath%20d='M670.777%20104.115L678.67%20108.703L691.429%20101.332L683.535%2096.7441L670.777%20104.115Z'%20fill='%238C57CC'/%3e%3cpath%20d='M669.325%20101.393L669.336%20103.358L677.229%20107.946L677.218%20105.981L669.325%20101.393Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M677.216%20105.977L677.227%20107.942L689.985%20100.56L689.974%2098.6069L677.216%20105.977Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M669.325%20101.392L677.218%20105.98L689.976%2098.6096L682.094%2094.0215L669.325%20101.392Z'%20fill='white'/%3e%3cpath%20d='M659.536%2094.9864L667.429%2099.5858L680.188%2092.204L672.294%2087.616L659.536%2094.9864Z'%20fill='white'/%3e%3cpath%20d='M666.398%2086.2649C668.212%2087.3097%20668.212%2089.0018%20666.398%2090.0353L654.853%2096.7584C653.847%2097.2737%20652.733%2097.5424%20651.604%2097.5424C650.474%2097.5424%20649.36%2097.2737%20648.355%2096.7584L636.73%2090.0353C634.938%2089.0018%20634.927%2087.3097%20636.73%2086.2649L648.275%2079.5532C649.283%2079.0378%20650.398%2078.769%20651.53%2078.769C652.662%2078.769%20653.777%2079.0378%20654.785%2079.5532L666.398%2086.2649Z'%20fill='%238C57CC'/%3e%3cpath%20d='M656.133%2088.0245C656.135%2088.0548%20656.135%2088.0852%20656.133%2088.1154L656.065%2088.1949H655.997H655.929L651.131%2090.8637L645.926%2087.9905V88.2971L651.086%2091.2839L655.883%2088.6264H655.94L656.008%2088.5583C656.01%2088.5243%20656.01%2088.4902%20656.008%2088.4561V88.0927C656.044%2088.0612%20656.087%2088.0379%20656.133%2088.0245Z'%20fill='%23BAC0D2'/%3e%3cpath%20d='M655.849%2087.5369C655.929%2087.5648%20655.999%2087.617%20656.048%2087.6861C656.097%2087.7553%20656.123%2087.8381%20656.123%2087.923C656.123%2088.0079%20656.097%2088.0907%20656.048%2088.1599C655.999%2088.2291%20655.929%2088.2812%20655.849%2088.3091L651.052%2090.9779L645.926%2087.9912L649.963%2084.9022C650.169%2084.7928%20650.399%2084.7356%20650.632%2084.7356C650.866%2084.7356%20651.095%2084.7928%20651.302%2084.9022L655.849%2087.5369Z'%20fill='white'/%3e%3cpath%20d='M662.942%2076.2336C663.158%2076.369%20663.344%2076.5463%20663.49%2076.755C663.636%2076.9637%20663.739%2077.1996%20663.793%2077.4488L666.276%2094.1202C666.333%2094.5518%20666.061%2094.7108%20665.653%2094.4836L640.396%2079.8564C640.183%2079.7221%20639.999%2079.5464%20639.855%2079.3396C639.711%2079.1329%20639.61%2078.8992%20639.557%2078.6526L637.074%2061.9811C637.006%2061.5382%20637.289%2061.3792%20637.686%2061.6177L662.942%2076.2336Z'%20fill='%23C7C9D7'/%3e%3cpath%20d='M666.672%2093.9753V93.8504L664.2%2077.1789V76.9404V76.8382V76.736L664.12%2076.6338L638.864%2062.0179H637.991H637.64C637.631%2062.0129%20637.621%2062.0103%20637.611%2062.0103C637.601%2062.0103%20637.592%2062.0129%20637.583%2062.0179L637.175%2062.3131C637.205%2062.307%20637.235%2062.307%20637.265%2062.3131H637.39H637.526L637.674%2062.3926L662.941%2076.2363L663.1%2076.3385L663.236%2076.4634L663.372%2076.6111C663.42%2076.659%20663.462%2076.7124%20663.497%2076.7701C663.535%2076.8243%20663.569%2076.8812%20663.599%2076.9404L663.678%2077.1108L663.746%2077.2811C663.752%2077.3378%20663.752%2077.3948%20663.746%2077.4515L666.23%2094.1229C666.236%2094.1682%20666.236%2094.214%20666.23%2094.2592C666.236%2094.2968%20666.236%2094.3352%20666.23%2094.3728V94.4409C666.218%2094.4777%20666.194%2094.5096%20666.162%2094.5318L666.559%2094.2365C666.594%2094.21%20666.621%2094.1748%20666.638%2094.1343V93.9753H666.672Z'%20fill='white'/%3e%3cpath%20opacity='0.2'%20d='M648.944%2085.6511L645.882%2087.9906L651.042%2090.9774L654.671%2088.9559L648.944%2085.6511Z'%20fill='%23777DB2'/%3e%3cpath%20d='M652.132%2080.7118L651.044%2091.3642L645.861%2088.3548L647.891%2078.395L652.132%2080.7118Z'%20fill='%23BAC0D2'/%3e%3cpath%20d='M606.644%20113.464C606.644%20113.464%20607.846%20115.349%20607.676%20116.031C607.506%20116.712%20606.644%20115.69%20606.644%20115.69C606.644%20115.69%20606.905%20117.961%20606.304%20118.438C605.703%20118.915%20605.442%20117.496%20605.442%20117.496C605.2%20117.659%20604.905%20117.723%20604.618%20117.674C604.331%20117.625%20604.074%20117.468%20603.899%20117.234C603.593%20116.631%20603.448%20115.958%20603.478%20115.281C603.507%20114.605%20603.711%20113.948%20604.07%20113.373C604.761%20112.26%20606.644%20113.464%20606.644%20113.464Z'%20fill='%23FF9554'/%3e%3cpath%20d='M610.772%2081.4148C610.772%2081.4148%20607.574%2081.3013%20606.089%2085.7644C604.603%2090.2275%20604.036%2097.2118%20603.82%2099.2674C603.605%20101.323%20603.503%20112.804%20603.616%20113.372C603.787%20113.662%20604.025%20113.906%20604.311%20114.083C604.597%20114.259%20604.922%20114.363%20605.257%20114.386C605.593%20114.408%20605.928%20114.348%20606.235%20114.211C606.542%20114.074%20606.811%20113.864%20607.019%20113.599C607.937%20111.544%20607.914%20102.583%20608.935%2099.1538C609.956%2095.7241%20612.485%2087.025%20612.598%2084.6174C612.652%2083.9614%20612.507%2083.3043%20612.181%2082.7326C611.855%2082.161%20611.364%2081.7016%20610.772%2081.4148Z'%20fill='%23113569'/%3e%3cpath%20d='M631.99%2074.4519C632%2073.9354%20632.084%2073.4229%20632.239%2072.9302C632.5%2072.2033%20631.729%2071.0563%20631.525%2070.3977C631.321%2069.739%20631.525%2069.5005%20631.979%2069.5459C632.432%2069.5913%20633.305%2071.5333%20633.498%2071.8172C633.691%2072.1011%20634.984%2070.2273%20635.381%2070.1592C635.778%2070.091%20636.152%2070.7043%20636.118%2071.1926C636.084%2071.6809%20637.105%2072.862%20636.628%2074.0318C636.152%2075.2015%20634.882%2076.1214%20634.36%2075.8715C633.838%2075.6217%20631.99%2074.4519%20631.99%2074.4519Z'%20fill='%23FF9554'/%3e%3cpath%20opacity='0.35'%20d='M595.057%20146.604C595.057%20153.895%20604.345%20159.812%20615.822%20159.812C627.299%20159.812%20636.575%20153.895%20636.575%20146.604C636.575%20139.313%20627.287%20133.396%20615.822%20133.396C604.356%20133.396%20595.057%20139.302%20595.057%20146.604Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M609.731%20143.59C609.312%20143.793%20608.966%20144.119%20608.738%20144.525C608.511%20144.932%20608.414%20145.398%20608.461%20145.861C608.471%20146.284%20608.551%20146.703%20608.699%20147.099C609.058%20147.392%20609.5%20147.564%20609.962%20147.59C610.424%20147.617%20610.883%20147.497%20611.273%20147.247C612.257%20146.565%20613.04%20145.632%20613.541%20144.544C614.141%20143.727%20614.657%20142.852%20615.084%20141.932C615.197%20141.285%20614.471%20140.796%20613.802%20140.887C612.512%20141.591%20611.29%20142.412%20610.15%20143.34C610.031%20143.434%20609.902%20143.514%20609.765%20143.579L609.731%20143.59Z'%20fill='%23232839'/%3e%3cpath%20d='M608.507%20106.594C608.507%20106.594%20608.235%20115.679%20608.575%20121.187C608.881%20126.093%20608.45%20140.3%20608.348%20143.457C608.321%20143.895%20608.429%20144.331%20608.655%20144.706C608.882%20145.082%20609.218%20145.379%20609.618%20145.558C609.952%20145.679%20610.31%20145.719%20610.663%20145.675C611.016%20145.632%20611.353%20145.506%20611.648%20145.308C611.902%20145.155%20612.121%20144.949%20612.289%20144.704C612.457%20144.459%20612.571%20144.181%20612.624%20143.889C613.236%20140.936%20615.277%20130.874%20615.572%20125.775C615.912%20119.767%20616.219%20112.261%20616.559%20109.876C616.899%20107.491%20608.507%20106.594%20608.507%20106.594Z'%20fill='%23113569'/%3e%3cpath%20d='M621.192%20146.817C620.742%20146.924%20620.336%20147.167%20620.028%20147.512C619.72%20147.857%20619.525%20148.288%20619.468%20148.747C619.399%20149.165%20619.399%20149.591%20619.468%20150.008C619.764%20150.36%20620.16%20150.614%20620.604%20150.736C621.047%20150.858%20621.517%20150.841%20621.952%20150.689C623.07%20150.245%20624.047%20149.502%20624.775%20148.543C625.538%20147.857%20626.23%20147.096%20626.839%20146.272C626.881%20146.117%20626.885%20145.954%20626.851%20145.797C626.818%20145.64%20626.748%20145.493%20626.648%20145.368C626.547%20145.243%20626.419%20145.144%20626.273%20145.078C626.127%20145.012%20625.968%20144.981%20625.807%20144.988C624.401%20145.401%20623.034%20145.941%20621.725%20146.601C621.586%20146.666%20621.442%20146.719%20621.294%20146.76L621.192%20146.817Z'%20fill='%23232839'/%3e%3cpath%20d='M623.76%20108.367C623.76%20108.367%20624.225%20136.213%20623.216%20146.298C623.212%20146.63%20623.135%20146.958%20622.991%20147.258C622.847%20147.557%20622.638%20147.821%20622.381%20148.032C622.123%20148.242%20621.823%20148.393%20621.501%20148.474C621.179%20148.555%20620.843%20148.564%20620.517%20148.501C620.347%20148.501%20619.201%20148.785%20619.008%20148.705C618.101%20148.365%20617.137%20121.449%20616.332%20118.326C615.527%20115.203%20613.134%20112.943%20613.361%20108.367C613.588%20103.79%20620.449%20106.084%20623.76%20108.367Z'%20fill='%23113C7A'/%3e%3cpath%20d='M624.303%20110.578C623.906%20112.599%20618.077%20113.121%20614.72%20112.576C611.363%20112.031%20607.405%20111.27%20607.518%20107.375C607.518%20107.375%20607.836%2089.92%20607.836%2086.8537C607.882%2084.9035%20608.554%2083.0201%20609.752%2081.482C609.752%2081.482%20611.635%2079.3356%20617.544%2080.5394C617.544%2080.5394%20622.352%2081.5842%20624.575%2085.1502C624.575%2085.1502%20626.423%2088.5572%20625.913%2096.6885C625.647%20101.346%20625.11%20105.983%20624.303%20110.578Z'%20fill='%23113C7A'/%3e%3cpath%20d='M612.926%2076.2691C613.196%2077.7025%20613.196%2079.1739%20612.926%2080.6073C612.846%2081.2887%20615.817%2083.5827%20618.448%2082.9808C619.98%2082.6401%20619.9%2081.8452%20619.9%2081.8452C619.153%2080.5839%20618.761%2079.1436%20618.766%2077.6773C618.959%2075.6672%20614.717%2075.8035%20612.926%2076.2691Z'%20fill='%23FF7C40'/%3e%3cpath%20d='M621.268%2082.0607L619.442%2081.0273C619.442%2081.0273%20614.758%2080.5957%20613.08%2079.4941L612.207%2080.7434C612.646%2081.4711%20613.254%2082.0829%20613.978%2082.5274C614.702%2082.972%20615.522%2083.2364%20616.369%2083.2986C617.889%2083.572%20619.457%2083.2596%20620.758%2082.4241L621.268%2082.0607Z'%20fill='%23E1E8F2'/%3e%3cpath%20d='M622.655%2084.6527C622.293%2084.6577%20621.937%2084.7455%20621.614%2084.9091C621.291%2085.0728%20621.009%2085.3081%20620.79%2085.5972C620.572%2085.8863%20620.422%2086.2215%20620.352%2086.5774C620.282%2086.9332%20620.294%2087.3003%20620.387%2087.6508C620.61%2088.525%20621.1%2089.3074%20621.79%2089.888C622.48%2090.4685%20623.334%2090.8181%20624.232%2090.8874C629.029%2091.6029%20638.362%2087.4805%20639.451%2085.3795C640.54%2083.2785%20637.036%2075.4766%20635.425%2074.2841C634.064%2073.4324%20631.807%2074.7384%20632.023%2075.8627C632.238%2076.987%20634.2%2082.5631%20634.291%2082.8583C634.382%2083.1536%20634.11%2083.165%20634.11%2083.165L624.504%2084.5164C623.89%2084.593%20623.273%2084.6385%20622.655%2084.6527Z'%20fill='%23113C7A'/%3e%3cpath%20d='M621.512%2071.262C621.525%2072.4014%20621.2%2073.519%20620.578%2074.4729C619.955%2075.4269%20619.064%2076.174%20618.017%2076.6194C616.969%2077.0648%20615.814%2077.1884%20614.696%2076.9744C613.578%2076.7604%20612.55%2076.2186%20611.74%2075.4177C610.931%2074.6168%20610.377%2073.5931%20610.15%2072.4765C609.923%2071.36%20610.033%2070.2011%20610.465%2069.1471C610.898%2068.0931%20611.633%2067.1916%20612.578%2066.5571C613.523%2065.9226%20614.635%2065.5838%20615.773%2065.5837C617.282%2065.5866%20618.73%2066.1836%20619.804%2067.2459C620.877%2068.3083%20621.491%2069.7508%20621.512%2071.262Z'%20fill='%23FF8654'/%3e%3cpath%20d='M621.513%2071.6276C621.513%2071.6276%20621.581%2077.374%20620.379%2078.5437C619.177%2079.7134%20617.204%2077.4081%20614.13%2076.738C611.057%2076.068%20616.625%2069.9241%20616.625%2069.9241L621.513%2071.6276Z'%20fill='%23FF8654'/%3e%3cpath%20d='M610.956%2066.5292C610.956%2066.5292%20617.091%2062.9746%20620.516%2065.916C623.941%2068.8573%20620.028%2070.0952%20619.382%2070.947C618.735%2071.7987%20619.382%2072.5028%20619.053%2073.1161C618.724%2073.7293%20618.645%2073.8542%20618.645%2073.8542L618.849%2074.5924L618.486%2074.9218C618.486%2074.9218%20618.021%2073.5363%20617.579%2073.5363C617.136%2073.5363%20616.762%2074.4789%20616.921%2075.0126C617.08%2075.5464%20617.533%2076.1483%20617.454%2076.4776C617.375%2076.8069%20616.887%2077.8745%20616.433%2077.9199C615.337%2077.8264%20614.261%2077.562%20613.246%2077.1363C611.663%2076.1551%20610.399%2074.7349%20609.606%2073.0479C609.371%2072.4436%20609.278%2071.793%20609.335%2071.1469C609.392%2070.5008%20609.597%2069.8766%20609.935%2069.323C609.789%2068.809%20609.809%2068.262%20609.992%2067.7602C610.176%2067.2584%20610.513%2066.8275%20610.956%2066.5292Z'%20fill='%2396432A'/%3e%3cpath%20d='M236.658%20220.478L247.715%20223.442L236.703%20239.171L236.692%20235.049L213.886%20248.234L213.863%20238.444L236.669%20225.259L236.658%20220.478Z'%20fill='white'/%3e%3cpath%20d='M607.506%20199.468L618.564%20202.432L607.552%20218.161L607.54%20214.039L584.734%20227.223L584.711%20217.434L607.518%20204.249L607.506%20199.468Z'%20fill='white'/%3e%3cpath%20d='M361.999%20210.934L372.898%20226.061L361.954%20228.559L361.965%20224.596L337.537%20210.48L337.56%20200.781L361.988%20214.898L361.999%20210.934Z'%20fill='white'/%3e%3cpath%20d='M84.669%20223.126C84.669%20223.126%2085.8712%20225.011%2085.7011%20225.704C85.5309%20226.396%2084.669%20225.352%2084.669%20225.352C84.669%20225.352%2084.9299%20227.623%2084.3288%20228.1C83.7277%20228.577%2083.4783%20227.157%2083.4783%20227.157C83.2359%20227.324%2082.9385%20227.39%2082.6487%20227.341C82.3589%20227.292%2082.0993%20227.133%2081.9246%20226.896C81.6177%20226.292%2081.4731%20225.618%2081.505%20224.941C81.5368%20224.264%2081.7439%20223.607%2082.106%20223.035C82.7865%20221.922%2084.669%20223.126%2084.669%20223.126Z'%20fill='%23FF9554'/%3e%3cpath%20d='M88.7642%20191.074C88.7642%20191.074%2085.5547%20190.961%2084.0691%20195.424C82.5834%20199.887%2082.0164%20206.872%2081.8009%20208.927C81.5854%20210.983%2081.4834%20222.464%2081.5968%20223.032C81.7673%20223.322%2082.0059%20223.566%2082.292%20223.742C82.578%20223.919%2082.9027%20224.023%2083.238%20224.045C83.5733%20224.068%2083.9089%20224.008%2084.2158%20223.871C84.5227%20223.734%2084.7916%20223.524%2084.999%20223.259C85.9063%20221.204%2085.8836%20212.255%2086.9043%20208.813C87.925%20205.372%2090.454%20196.685%2090.5674%20194.277C90.6235%20193.624%2090.4815%20192.968%2090.1598%20192.397C89.8381%20191.826%2089.3517%20191.365%2088.7642%20191.074Z'%20fill='%23113569'/%3e%3cpath%20opacity='0.35'%20d='M93.849%20269.47C105.317%20269.47%20114.614%20263.556%20114.614%20256.262C114.614%20248.967%20105.317%20243.054%2093.849%20243.054C82.3808%20243.054%2073.0839%20248.967%2073.0839%20256.262C73.0839%20263.556%2082.3808%20269.47%2093.849%20269.47Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M87.7696%20253.262C87.3488%20253.462%2087%20253.788%2086.7707%20254.195C86.5414%20254.601%2086.4427%20255.068%2086.4881%20255.533C86.501%20255.956%2086.5814%20256.374%2086.7262%20256.771C87.0908%20257.053%2087.5323%20257.216%2087.9922%20257.241C88.452%20257.265%2088.9084%20257.149%2089.3006%20256.907C90.2813%20256.227%2091.064%20255.298%2091.5688%20254.216C92.1687%20253.395%2092.6854%20252.516%2093.1111%20251.592C93.2359%20250.956%2092.4987%20250.457%2091.8296%20250.559C90.5388%20251.261%2089.3163%20252.082%2088.1778%20253.012C88.0587%20253.102%2087.9292%20253.179%2087.7923%20253.239L87.7696%20253.262Z'%20fill='%23232839'/%3e%3cpath%20d='M86.4744%20216.253C86.4744%20216.253%2086.2022%20225.339%2086.5424%20230.847C86.8486%20235.753%2086.4177%20249.96%2086.327%20253.117C86.2944%20253.554%2086.3979%20253.991%2086.6233%20254.367C86.8487%20254.744%2087.1849%20255.041%2087.5858%20255.218C87.9192%20255.34%2088.2766%20255.382%2088.6291%20255.341C88.9817%20255.299%2089.3197%20255.175%2089.6158%20254.979C89.8692%20254.822%2090.0869%20254.614%2090.2549%20254.367C90.4229%20254.121%2090.5374%20253.842%2090.5911%20253.548C91.2035%20250.607%2093.2562%20240.534%2093.5397%20235.435C93.88%20229.427%2094.1862%20221.92%2094.5264%20219.535C94.8666%20217.151%2086.4744%20216.253%2086.4744%20216.253Z'%20fill='%23113569'/%3e%3cpath%20d='M99.222%20256.476C98.7745%20256.585%2098.371%20256.829%2098.0651%20257.173C97.7592%20257.518%2097.5654%20257.948%2097.5095%20258.406C97.4369%20258.823%2097.4369%20259.25%2097.5095%20259.667C97.8043%20260.021%2098.1998%20260.277%2098.6435%20260.401C99.0871%20260.525%2099.5579%20260.51%2099.9931%20260.359C101.11%20259.911%20102.085%20259.169%20102.817%20258.213C103.58%20257.528%20104.271%20256.767%20104.881%20255.942C105.142%20255.34%20104.541%20254.658%20103.849%20254.658C102.44%20255.071%20101.073%20255.614%2099.7663%20256.282C99.627%20256.344%2099.4828%20256.393%2099.3354%20256.43L99.222%20256.476Z'%20fill='%23232839'/%3e%3cpath%20d='M101.785%20218.026C101.785%20218.026%20102.25%20245.873%20101.24%20255.969C101.235%20256.3%20101.157%20256.627%20101.012%20256.925C100.867%20257.223%20100.658%20257.486%20100.401%20257.695C100.144%20257.904%2099.8439%20258.054%2099.5226%20258.134C99.2013%20258.215%2098.8663%20258.224%2098.5411%20258.161C98.371%20258.161%2097.2256%20258.444%2097.0441%20258.365C96.1255%20258.024%2095.1616%20231.109%2094.3564%20227.986C93.5512%20224.863%2091.1582%20222.603%2091.3851%20218.026C91.6119%20213.45%2098.4731%20215.744%20101.785%20218.026Z'%20fill='%23113C7A'/%3e%3cpath%20d='M102.342%20220.236C101.934%20222.258%2096.1044%20222.78%2092.7475%20222.246C89.3906%20221.713%2085.4326%20220.94%2085.546%20217.034C85.546%20217.034%2085.8636%20199.579%2085.8636%20196.524C85.9205%20194.584%2086.5961%20192.714%2087.7915%20191.186C87.7915%20191.186%2089.6628%20189.04%2095.5713%20190.244C95.5713%20190.244%20100.391%20191.3%20102.603%20194.854C102.603%20194.854%20104.451%20198.261%20103.941%20206.393C103.673%20211.034%20103.139%20215.656%20102.342%20220.236Z'%20fill='%23113C7A'/%3e%3cpath%20d='M90.952%20185.964C91.2221%20187.397%2091.2221%20188.868%2090.952%20190.302C90.8726%20190.983%2093.8439%20193.277%2096.475%20192.687C98.006%20192.346%2097.9266%20191.551%2097.9266%20191.551C97.1797%20190.29%2096.7878%20188.849%2096.7925%20187.383C97.0307%20185.328%2092.7438%20185.498%2090.952%20185.964Z'%20fill='%23FF7C40'/%3e%3cpath%20d='M99.2954%20191.722L97.4695%20190.7C97.4695%20190.7%2092.7858%20190.257%2091.1073%20189.156L90.2341%20190.405C90.6738%20191.134%2091.2808%20191.747%2092.0047%20192.193C92.7287%20192.639%2093.5485%20192.906%2094.3962%20192.972C95.9183%20193.242%2097.4862%20192.925%2098.7851%20192.086L99.2954%20191.722Z'%20fill='%23E1E8F2'/%3e%3cpath%20d='M99.5354%20180.913C99.5354%20182.049%2099.1988%20183.16%2098.5683%20184.105C97.9377%20185.05%2097.0415%20185.787%2095.9929%20186.222C94.9444%20186.657%2093.7905%20186.77%2092.6774%20186.549C91.5642%20186.327%2090.5417%20185.78%2089.7392%20184.976C88.9367%20184.172%2088.3901%20183.148%2088.1687%20182.034C87.9473%20180.919%2088.0609%20179.764%2088.4953%20178.714C88.9296%20177.664%2089.6651%20176.766%2090.6088%20176.135C91.5525%20175.503%2092.6619%20175.166%2093.7969%20175.166C95.3188%20175.166%2096.7785%20175.772%2097.8546%20176.849C98.9308%20177.927%2099.5354%20179.389%2099.5354%20180.913Z'%20fill='%23FF8654'/%3e%3cpath%20d='M99.5445%20181.286C99.5445%20181.286%2099.6125%20187.043%2098.4104%20188.202C97.2083%20189.36%2095.2349%20187.066%2092.1616%20186.396C89.0882%20185.726%2094.6566%20179.582%2094.6566%20179.582L99.5445%20181.286Z'%20fill='%23FF8654'/%3e%3cpath%20d='M88.9823%20176.191C88.9823%20176.191%2095.1177%20172.636%2098.5426%20175.578C101.968%20178.519%2098.055%20179.757%2097.4086%20180.62C96.7621%20181.483%2097.4085%20182.176%2097.0797%20182.789C96.7508%20183.402%2096.6714%20183.516%2096.6714%20183.516L96.8755%20184.254L96.5126%20184.583C96.5126%20184.583%2096.025%20183.198%2095.5713%20183.232C95.1177%20183.266%2094.7548%20184.175%2094.9136%20184.708C95.0723%20185.242%2095.526%20185.844%2095.4466%20186.185C95.3672%20186.525%2094.8795%20187.57%2094.4259%20187.616C93.3294%20187.522%2092.2542%20187.258%2091.2391%20186.832C89.6561%20185.851%2088.3914%20184.431%2087.5987%20182.744C87.3635%20182.139%2087.2708%20181.489%2087.3279%20180.843C87.3849%20180.196%2087.5902%20179.572%2087.9276%20179.019C87.7789%20178.496%2087.8011%20177.94%2087.9908%20177.431C88.1806%20176.922%2088.5281%20176.488%2088.9823%20176.191Z'%20fill='%2396432A'/%3e%3cpath%20d='M109.698%20224.2L104.028%20227.607L104.776%20237.635L117.161%20229.969L116.684%20220.407L109.698%20224.2Z'%20fill='%2394C3FF'/%3e%3cpath%20d='M110.776%20221.454C110.776%20221.454%20112.126%20222.873%20112.409%20223.305C112.693%20223.737%20112.84%20225.928%20112.477%20226.212C111.69%20226.714%20110.789%20227.007%20109.858%20227.064C109.291%20226.916%20108.939%20226.632%20108.939%20226.417C108.939%20226.201%20108.803%20224.793%20108.803%20224.793C108.803%20224.793%20107.805%20224.077%20107.737%20223.657C107.707%20223.3%20107.73%20222.94%20107.805%20222.59L110.776%20221.454Z'%20fill='%23FF9554'/%3e%3cpath%20d='M100.629%20192.584C101.648%20193.135%20102.542%20193.89%20103.257%20194.802C103.971%20195.715%20104.489%20196.765%20104.78%20197.888C105.539%20201.488%20107.048%20210.755%20107.048%20210.755L111.21%20221.237C111.111%20221.644%20110.917%20222.022%20110.645%20222.34C110.372%20222.658%20110.028%20222.907%20109.641%20223.067C109.254%20223.226%20108.835%20223.292%20108.418%20223.258C108%20223.224%20107.597%20223.092%20107.241%20222.872C107.241%20222.872%20102.704%20214.162%20101.57%20211.709C100.436%20209.256%2099.302%20197.888%2099.1092%20195.616C99.0222%20195.016%2099.1212%20194.403%2099.393%20193.861C99.6647%20193.319%20100.096%20192.873%20100.629%20192.584Z'%20fill='%23113C7A'/%3e%3cpath%20d='M364.359%20134.939C367.058%20136.495%20367.069%20139.016%20364.359%20140.617C362.853%20141.384%20361.188%20141.784%20359.499%20141.784C357.81%20141.784%20356.145%20141.384%20354.639%20140.617C351.952%20139.062%20351.94%20136.54%20354.639%20134.939C356.145%20134.172%20357.81%20133.772%20359.499%20133.772C361.188%20133.772%20362.853%20134.172%20364.359%20134.939Z'%20fill='%23A6D0F4'/%3e%3cpath%20d='M365.159%20121.041V136.338C365.107%20136.898%20364.908%20137.434%20364.581%20137.891C364.254%20138.348%20363.812%20138.709%20363.299%20138.939C361.894%20139.654%20360.34%20140.027%20358.763%20140.027C357.186%20140.027%20355.632%20139.654%20354.227%20138.939C353.706%20138.706%20353.256%20138.338%20352.925%20137.872C352.594%20137.407%20352.394%20136.862%20352.344%20136.293V121.007C352.393%20121.574%20352.594%20122.119%20352.925%20122.582C353.256%20123.046%20353.706%20123.411%20354.227%20123.641C355.631%20124.359%20357.186%20124.733%20358.763%20124.733C360.34%20124.733%20361.895%20124.359%20363.299%20123.641C363.811%20123.411%20364.253%20123.049%20364.58%20122.592C364.906%20122.135%20365.106%20121.6%20365.159%20121.041Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M363.266%20118.394C365.773%20119.848%20365.795%20122.199%20363.266%20123.652C361.862%20124.37%20360.307%20124.744%20358.73%20124.744C357.153%20124.744%20355.598%20124.37%20354.194%20123.652C351.687%20122.21%20351.676%20119.859%20354.194%20118.406C355.598%20117.689%20357.152%20117.314%20358.728%20117.312C360.305%20117.31%20361.86%20117.681%20363.266%20118.394Z'%20fill='white'/%3e%3cpath%20d='M362.267%20118.962C364.229%20120.097%20364.229%20121.914%20362.267%20123.05C361.175%20123.607%20359.966%20123.898%20358.74%20123.898C357.514%20123.898%20356.306%20123.607%20355.213%20123.05C353.263%20121.914%20353.251%20120.097%20355.213%20118.973C356.303%20118.409%20357.512%20118.114%20358.739%20118.112C359.966%20118.11%20361.175%20118.402%20362.267%20118.962Z'%20fill='%23713336'/%3e%3cpath%20d='M353.838%20121.482C353.838%20121.482%20350.629%20110.795%20349.495%20109.183C349.495%20107.774%20352.421%20109.467%20353.555%20112.124C354.509%20114.926%20355.233%20117.801%20355.721%20120.721C355.721%20120.721%20355.539%20107.014%20357.898%20103.993C359.406%20104.367%20358.465%20119.404%20358.272%20120.539C358.272%20120.539%20362.99%20110.511%20366.109%20108.433C367.527%20108.626%20361.573%20121.005%20361.573%20121.005C361.573%20121.005%20364.022%20116.371%20368.456%20115.52C366.949%20117.729%20365.309%20119.846%20363.546%20121.857C363.546%20121.857%20361.947%20124.321%20357.694%20123.844C357.705%20123.844%20354.779%20123.651%20353.838%20121.482Z'%20fill='%234CA15C'/%3e%3cpath%20d='M231.058%2046.2549L231.069%2048.4808L225.864%2051.4903L225.875%2056.2941L223.732%2057.532L223.721%2050.5023L231.058%2046.2549Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M231.075%2048.4773L251.965%2036.4053V49.6471V55.632L248.2%2057.8125L225.881%2070.7135V56.2907V51.4868L231.075%2048.4773ZM251.398%2055.2913L251.341%2037.4614L226.482%2051.8389V69.6687L251.353%2055.2913'%20fill='%23E6F4FF'/%3e%3cpath%20d='M254.342%2048.2988L254.364%2056.7481L248.24%2060.28V57.8157L252.006%2055.6352L251.994%2049.6503L254.342%2048.2988Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M252.028%2045.9031L273.95%2033.4109V54.9884L291.336%2066.7198'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M243.33%2056.6934H243.398H243.466L243.545%2056.6366H243.613H243.67L243.738%2056.5798V56.523H243.806L243.874%2056.4662L244.01%2056.33L244.067%2056.2732L244.124%2056.205H244.192V56.1369L244.248%2056.0687C244.319%2056.0064%20244.383%2055.938%20244.441%2055.8643L244.498%2055.7962V55.7281L244.555%2055.6599L244.611%2055.5918L244.679%2055.5236L244.906%2055.2284V55.1602L244.963%2055.0807V55.0126L245.224%2054.6265V54.547L245.28%2054.4788L245.564%2054.0019V53.9224V53.8315C245.643%2053.6952%20245.711%2053.5589%20245.779%2053.4227C244.948%2053.3118%20244.111%2053.2511%20243.273%2053.241C243.251%2053.2815%20243.224%2053.3195%20243.194%2053.3545C242.873%2053.8563%20242.447%2054.2825%20241.946%2054.6038C241.758%2054.7243%20241.547%2054.8047%20241.327%2054.8399C241.106%2054.8751%20240.881%2054.8643%20240.665%2054.8082H240.585C240.517%2054.899%20239.043%2056.6366%20238.215%2057.7268L238.295%2057.8063L238.431%2057.8972H238.487L238.646%2057.9653H238.703H238.873H239.882H240.018H240.268H240.415H240.472H240.744H240.824H240.88H240.971H241.062H241.152H241.22L243.33%2056.6934Z'%20fill='%234B5CC0'/%3e%3cpath%20d='M242.196%2053.4647C242.141%2053.5833%20242.076%2053.6972%20242.003%2053.8054C242.219%2053.8615%20242.445%2053.8723%20242.665%2053.8371C242.886%2053.802%20243.096%2053.7216%20243.284%2053.601C243.786%2053.2798%20244.211%2052.8536%20244.532%2052.3518C244.45%2052.3375%20244.375%2052.2977%20244.317%2052.2382C244.215%2051.9725%20244.154%2051.6931%20244.135%2051.4092L243.602%2052.1587C243.52%2052.2863%20243.412%2052.3948%20243.284%2052.4767C243.179%2052.5179%20243.061%2052.5179%20242.956%2052.4767L242.411%2052.3291C242.375%2052.7136%20242.303%2053.0938%20242.196%2053.4647Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M242.081%2050.0277C242.009%2050.0798%20241.928%2050.1183%20241.843%2050.1413L241.718%2051.0839V51.4019C241.712%2051.4623%20241.712%2051.5232%20241.718%2051.5836C241.737%2051.7642%20241.807%2051.9357%20241.919%2052.0783C242.032%2052.221%20242.182%2052.3289%20242.353%2052.3899L242.897%2052.5375C243.003%2052.5787%20243.12%2052.5787%20243.226%2052.5375C243.354%2052.4556%20243.462%2052.3471%20243.544%2052.2195L244.077%2051.47C244.405%2051.009%20244.63%2050.482%20244.734%2049.9255V49.6757V49.051L244.292%2047.6655C244.292%2047.6655%20244.224%2047.5633%20244.065%2047.6655C243.922%2047.7614%20243.798%2047.8849%20243.702%2048.0289C243.283%2048.6308%20243.238%2049.1646%20242.512%2049.6984C242.373%2049.8145%20242.229%2049.9244%20242.081%2050.0277Z'%20fill='%23CBDCEB'/%3e%3cpath%20d='M242.723%2046.82C242.015%2047.47%20241.55%2048.344%20241.408%2049.2958C241.369%2049.7306%20241.407%2050.169%20241.521%2050.5904C241.567%2050.784%20241.628%2050.9738%20241.703%2051.1582V51.0787L241.828%2050.1361C241.913%2050.1132%20241.994%2050.0747%20242.066%2050.0226C242.278%2049.8989%20242.482%2049.7623%20242.678%2049.6137C243.404%2049.0913%20243.449%2048.5462%20243.869%2047.9443C243.965%2047.8003%20244.088%2047.6768%20244.232%2047.5809C244.391%2047.4787%20244.459%2047.5809%20244.459%2047.5809L244.901%2048.9664C244.901%2048.9664%20244.901%2048.7847%20245.003%2048.5462C245.105%2048.3077%20245.128%2047.9784%20245.162%2047.7626C245.21%2047.2124%20245.057%2046.6633%20244.731%2046.2181C244.493%2045.991%20243.858%2046.0478%20243.222%2046.4112C243.043%2046.5301%20242.875%2046.6671%20242.723%2046.82Z'%20fill='%2396432A'/%3e%3cpath%20d='M244.567%2052.3549C244.597%2052.3199%20244.624%2052.2818%20244.647%2052.2413C245.489%2052.2518%20246.329%2052.3124%20247.164%2052.4231C247.842%2051.1363%20248.21%2049.7094%20248.242%2048.2552C248.242%2045.1776%20246.064%2043.9283%20243.376%2045.4842C241.967%2046.3993%20240.794%2047.6361%20239.954%2049.093C239.114%2050.5499%20238.632%2052.1854%20238.545%2053.8653C238.506%2054.4056%20238.587%2054.948%20238.783%2055.4528C238.979%2055.9577%20239.285%2056.4124%20239.679%2056.784L239.6%2056.7045C240.428%2055.5688%20241.868%2053.8767%20241.97%2053.7858H242.049C242.123%2053.6777%20242.187%2053.5637%20242.242%2053.4451C242.338%2053.0731%20242.399%2052.6929%20242.424%2052.3095C242.253%2052.2485%20242.103%2052.1405%20241.99%2051.9979C241.878%2051.8553%20241.808%2051.6838%20241.789%2051.5032C241.771%2051.5374%20241.743%2051.5652%20241.709%2051.5827C241.301%2051.7303%20241.085%2050.9581%20241.346%2050.6514L241.46%2050.5492H241.539C241.425%2050.1278%20241.387%2049.6894%20241.426%2049.2546C241.568%2048.3028%20242.033%2047.4289%20242.741%2046.7788C242.902%2046.6365%20243.077%2046.5109%20243.263%2046.4041C243.898%2046.0406%20244.533%2045.9839%20244.771%2046.211C245.098%2046.6562%20245.251%2047.2053%20245.202%2047.7555C245.202%2047.9713%20245.1%2048.2893%20245.043%2048.5391C245.068%2048.5068%20245.099%2048.4798%20245.134%2048.4596C245.171%2048.4482%20245.211%2048.4482%20245.248%2048.4596C245.508%2048.4596%20245.304%2049.493%20244.919%2049.7883H244.851C244.746%2050.3448%20244.521%2050.8718%20244.193%2051.3328C244.2%2051.6244%20244.258%2051.9126%20244.363%2052.1846C244.409%2052.2631%20244.482%2052.3233%20244.567%2052.3549Z'%20fill='%2358AFFB'/%3e%3cpath%20d='M237.782%2056.8159V57.7358L229.333%2062.6191V61.6993L237.782%2056.8159Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M233.597%2057.0879V58.0078L229.322%2060.4835V59.5523L233.597%2057.0879Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M230.977%2055.9329V56.8641L229.322%2057.8294V56.8868L230.977%2055.9329Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M237.782%2071.5825V72.5024L229.333%2077.3857V76.4659L237.782%2071.5825Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M233.597%2071.8525V72.7724L229.322%2075.2481V74.3169L233.597%2071.8525Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M230.977%2070.6956V71.6268L229.322%2072.5921V71.6495L230.977%2070.6956Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M237.782%2080.6665V81.5864L229.333%2086.4697V85.5498L237.782%2080.6665Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M233.597%2080.9365V81.8564L229.322%2084.3321V83.4009L233.597%2080.9365Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M230.977%2079.7815V80.7127L229.322%2081.678V80.7354L230.977%2079.7815Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M310.242%2026.2321L310.162%2053.4197L294.694%2044.4821L294.773%2017.2944L310.242%2026.2321Z'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M308.224%2027.3716L308.757%2027.0649L308.677%2054.2526L308.144%2054.5592L308.224%2027.3716Z'%20fill='%23BDC5CB'/%3e%3cpath%20d='M292.754%2018.4301L293.287%2018.1121L308.756%2027.0611L308.223%2027.3677L292.754%2018.4301Z'%20fill='white'/%3e%3cpath%20d='M308.222%2027.3698L308.143%2054.5574L292.674%2045.6198L292.753%2018.4321L308.222%2027.3698Z'%20fill='%23EAF1F7'/%3e%3cpath%20d='M297.045%2028.5267V28.7653C297.045%2028.7974%20297.037%2028.829%20297.021%2028.8568C297.005%2028.8847%20296.983%2028.9079%20296.955%2028.924C296.927%2028.9402%20296.896%2028.9487%20296.864%2028.9488C296.832%2028.9489%20296.8%2028.9405%20296.773%2028.9244L295.638%2028.2767C295.611%2028.2598%20295.588%2028.2364%20295.572%2028.2086C295.557%2028.1809%20295.548%2028.1496%20295.547%2028.1176V27.879C295.547%2027.847%20295.555%2027.8154%20295.571%2027.7875C295.587%2027.7597%20295.61%2027.7365%20295.637%2027.7203C295.665%2027.7042%20295.696%2027.6956%20295.728%2027.6956C295.76%2027.6955%20295.792%2027.7039%20295.819%2027.7199L296.954%2028.3676C296.982%2028.3837%20297.005%2028.4069%20297.021%2028.4349C297.037%2028.4628%20297.045%2028.4945%20297.045%2028.5267Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M300.612%2031.7523V31.9908C300.612%2032.0228%20300.604%2032.0544%20300.588%2032.0822C300.573%2032.1101%20300.55%2032.1332%20300.522%2032.1494C300.494%2032.1655%20300.463%2032.174%20300.431%2032.1741C300.399%2032.1742%20300.368%2032.1658%20300.34%2032.1498L295.645%2029.4583C295.617%2029.4422%20295.594%2029.419%20295.578%2029.391C295.562%2029.3631%20295.554%2029.3314%20295.554%2029.2993V29.0608C295.554%2029.0287%20295.562%2028.9972%20295.578%2028.9694C295.594%2028.9415%20295.616%2028.9183%20295.644%2028.9022C295.672%2028.8861%20295.703%2028.8775%20295.735%2028.8774C295.767%2028.8774%20295.799%2028.8858%20295.826%2028.9018L300.521%2031.5933C300.548%2031.6102%20300.571%2031.6336%20300.587%2031.6613C300.603%2031.6891%20300.611%2031.7204%20300.612%2031.7523Z'%20fill='%2394A3C0'/%3e%3cg%20opacity='0.53'%3e%3cpath%20d='M298.667%2033.0225V33.261C298.667%2033.293%20298.659%2033.3246%20298.643%2033.3524C298.627%2033.3803%20298.604%2033.4035%20298.576%2033.4196C298.549%2033.4357%20298.517%2033.4443%20298.485%2033.4444C298.453%2033.4444%20298.422%2033.436%20298.394%2033.42L295.639%2031.8301C295.61%2031.815%20295.586%2031.792%20295.57%2031.7638C295.554%2031.7357%20295.546%2031.7035%20295.548%2031.6711V31.4326C295.547%2031.4006%20295.556%2031.369%20295.571%2031.3412C295.587%2031.3133%20295.61%2031.2902%20295.638%2031.274C295.665%2031.2579%20295.697%2031.2493%20295.729%2031.2493C295.761%2031.2492%20295.792%2031.2576%20295.82%2031.2736L298.576%2032.8635C298.604%2032.8796%20298.627%2032.9028%20298.643%2032.9308C298.659%2032.9587%20298.667%2032.9904%20298.667%2033.0225Z'%20fill='%2394A3C0'/%3e%3c/g%3e%3cpath%20d='M299.875%2032.5257V32.7642C299.875%2032.7962%20299.867%2032.8278%20299.851%2032.8556C299.835%2032.8835%20299.813%2032.9066%20299.785%2032.9228C299.757%2032.9389%20299.726%2032.9475%20299.694%2032.9475C299.662%2032.9476%20299.63%2032.9392%20299.603%2032.9232L295.645%2030.6519C295.617%2030.6358%20295.594%2030.6126%20295.578%2030.5847C295.562%2030.5567%20295.554%2030.525%20295.554%2030.4929V30.2544C295.554%2030.2223%20295.562%2030.1908%20295.578%2030.163C295.594%2030.1351%20295.616%2030.1119%20295.644%2030.0958C295.672%2030.0797%20295.703%2030.0711%20295.735%2030.071C295.767%2030.071%20295.799%2030.0794%20295.826%2030.0954L299.784%2032.3667C299.812%2032.3828%20299.835%2032.406%20299.851%2032.4339C299.867%2032.4619%20299.875%2032.4935%20299.875%2032.5257Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M297.045%2034.4908V34.7295C297.045%2034.7615%20297.037%2034.7931%20297.021%2034.8209C297.005%2034.8488%20296.983%2034.872%20296.955%2034.8881C296.927%2034.9043%20296.896%2034.9128%20296.864%2034.9129C296.832%2034.913%20296.8%2034.9046%20296.773%2034.8885L295.638%2034.2408C295.611%2034.2239%20295.588%2034.2005%20295.572%2034.1727C295.557%2034.145%20295.548%2034.1137%20295.547%2034.0817V33.8431C295.547%2033.8111%20295.555%2033.7795%20295.571%2033.7516C295.587%2033.7238%20295.61%2033.7006%20295.637%2033.6844C295.665%2033.6683%20295.696%2033.6597%20295.728%2033.6597C295.76%2033.6596%20295.792%2033.668%20295.819%2033.684L296.954%2034.3317C296.982%2034.3478%20297.005%2034.371%20297.021%2034.399C297.037%2034.4269%20297.045%2034.4586%20297.045%2034.4908Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M300.612%2037.7145V37.9529C300.612%2037.985%20300.604%2038.0165%20300.588%2038.0444C300.573%2038.0722%20300.55%2038.0954%20300.522%2038.1115C300.494%2038.1277%20300.463%2038.1362%20300.431%2038.1363C300.399%2038.1363%20300.368%2038.128%20300.34%2038.1119L295.645%2035.4204C295.617%2035.4043%20295.594%2035.3811%20295.578%2035.3532C295.562%2035.3253%20295.554%2035.2936%20295.554%2035.2614V35.0229C295.554%2034.9909%20295.562%2034.9594%20295.578%2034.9315C295.594%2034.9037%20295.616%2034.8805%20295.644%2034.8644C295.672%2034.8482%20295.703%2034.8397%20295.735%2034.8396C295.767%2034.8395%20295.799%2034.8479%20295.826%2034.8639L300.521%2037.5555C300.548%2037.5724%20300.571%2037.5958%20300.587%2037.6235C300.603%2037.6513%20300.611%2037.6825%20300.612%2037.7145Z'%20fill='%2394A3C0'/%3e%3cg%20opacity='0.53'%3e%3cpath%20d='M298.667%2038.9906V39.229C298.667%2039.2611%20298.659%2039.2926%20298.643%2039.3205C298.627%2039.3483%20298.604%2039.3715%20298.576%2039.3876C298.549%2039.4038%20298.517%2039.4123%20298.485%2039.4124C298.453%2039.4125%20298.422%2039.404%20298.394%2039.388L295.639%2037.7981C295.61%2037.783%20295.586%2037.76%20295.57%2037.7319C295.554%2037.7037%20295.546%2037.6715%20295.548%2037.6391V37.4006C295.547%2037.3686%20295.556%2037.3371%20295.571%2037.3092C295.587%2037.2814%20295.61%2037.2582%20295.638%2037.242C295.665%2037.2259%20295.697%2037.2174%20295.729%2037.2173C295.761%2037.2172%20295.792%2037.2256%20295.82%2037.2416L298.576%2038.8316C298.604%2038.8477%20298.627%2038.8708%20298.643%2038.8988C298.659%2038.9267%20298.667%2038.9584%20298.667%2038.9906Z'%20fill='%2394A3C0'/%3e%3c/g%3e%3cpath%20d='M299.875%2038.4879V38.7264C299.875%2038.7584%20299.867%2038.7899%20299.851%2038.8178C299.835%2038.8456%20299.813%2038.8688%20299.785%2038.8849C299.757%2038.9011%20299.726%2038.9096%20299.694%2038.9097C299.662%2038.9098%20299.63%2038.9014%20299.603%2038.8853L295.645%2036.614C295.617%2036.5979%20295.594%2036.5747%20295.578%2036.5468C295.562%2036.5189%20295.554%2036.4872%20295.554%2036.455V36.2165C295.554%2036.1845%20295.562%2036.153%20295.578%2036.1251C295.594%2036.0973%20295.616%2036.0741%20295.644%2036.0579C295.672%2036.0418%20295.703%2036.0333%20295.735%2036.0332C295.767%2036.0331%20295.799%2036.0415%20295.826%2036.0576L299.784%2038.3289C299.812%2038.345%20299.835%2038.3682%20299.851%2038.3961C299.867%2038.424%20299.875%2038.4557%20299.875%2038.4879Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M316.193%2026.9705H314.492V28.6739H316.193V26.9705Z'%20fill='white'/%3e%3cpath%20d='M321.292%2029.8127H317.323V33.7876H321.292V29.8127Z'%20fill='white'/%3e%3cpath%20d='M525.999%20135.142H524.298V136.845H525.999V135.142Z'%20fill='white'/%3e%3cpath%20d='M531.102%20137.982H527.133V141.957H531.102V137.982Z'%20fill='white'/%3e%3cpath%20d='M625.797%200H624.096V1.70349H625.797V0Z'%20fill='white'/%3e%3cpath%20d='M630.903%202.83838H626.934V6.81319H630.903V2.83838Z'%20fill='white'/%3e%3cpath%20d='M541.221%20108.171H539.52V109.875H541.221V108.171Z'%20fill='white'/%3e%3cpath%20d='M546.324%20111.01H542.354V114.984H546.324V111.01Z'%20fill='white'/%3e%3cpath%20d='M394.448%20207.254H392.747V208.958H394.448V207.254Z'%20fill='white'/%3e%3cpath%20d='M399.547%20210.095H395.578V214.07H399.547V210.095Z'%20fill='white'/%3e%3cpath%20d='M81.4377%20163.34H79.7366V165.044H81.4377V163.34Z'%20fill='white'/%3e%3cpath%20d='M86.5408%20166.177H82.5715V170.152H86.5408V166.177Z'%20fill='white'/%3e%3cpath%20d='M195.978%20272.556H194.277V274.26H195.978V272.556Z'%20fill='white'/%3e%3cpath%20d='M201.082%20275.397H197.112V279.372H201.082V275.397Z'%20fill='white'/%3e%3cpath%20d='M609.762%20152.212V153.132L601.313%20158.016V157.096L609.762%20152.212Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M605.581%20152.484V153.404L601.306%20155.88V154.949L605.581%20152.484Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M602.957%20151.329V152.26L601.301%20153.226L601.29%20152.283L602.957%20151.329Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M401.858%20174.723V175.654L393.409%20180.537V179.606L401.858%20174.723Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M397.677%20174.997V175.928L393.401%20178.392V177.472L397.677%20174.997Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M395.057%20173.847V174.779L393.402%20175.733L393.39%20174.801L395.057%20173.847Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M518.674%20137.212C520.036%20138.1%20521.17%20139.297%20521.984%20140.706C522.797%20142.115%20523.268%20143.696%20523.358%20145.321V152.35C523.358%20155.326%20521.237%20156.53%20518.651%20155.031L512.255%20151.34L509.431%20153.679V149.716L504.804%20147.036C503.443%20146.148%20502.31%20144.95%20501.498%20143.541C500.687%20142.132%20500.218%20140.551%20500.132%20138.927V131.897C500.132%20128.922%20502.252%20127.718%20504.838%20129.217L518.674%20137.212ZM522.904%20152.101V145.082C522.828%20143.603%20522.402%20142.163%20521.663%20140.88C520.924%20139.597%20519.892%20138.507%20518.651%20137.7L504.815%20129.751C502.468%20128.388%20500.551%20129.49%20500.54%20132.192V139.222C500.623%20140.698%20501.051%20142.135%20501.789%20143.415C502.528%20144.695%20503.557%20145.784%20504.793%20146.593L509.851%20149.511V152.589L512.051%20150.783L518.64%20154.588C520.999%20155.95%20522.915%20154.86%20522.915%20152.146'%20fill='white'/%3e%3cpath%20d='M509.963%20136.258V136.86C509.962%20136.94%20509.939%20137.019%20509.898%20137.088C509.857%20137.157%20509.799%20137.215%20509.73%20137.255C509.66%20137.295%20509.581%20137.316%20509.501%20137.316C509.421%20137.317%20509.341%20137.296%20509.271%20137.257L506.436%20135.622C506.367%20135.582%20506.309%20135.524%20506.269%20135.454C506.229%20135.384%20506.209%20135.305%20506.209%20135.224V134.622C506.211%20134.542%20506.233%20134.463%20506.274%20134.394C506.315%20134.325%20506.373%20134.268%20506.443%20134.228C506.513%20134.187%20506.591%20134.166%20506.672%20134.166C506.752%20134.165%20506.831%20134.186%20506.901%20134.225L509.725%20135.86C509.797%20135.899%20509.857%20135.956%20509.899%20136.026C509.94%20136.096%20509.963%20136.176%20509.963%20136.258Z'%20fill='%23F9FBFC'/%3e%3cpath%20d='M518.915%20144.377V144.979C518.914%20145.059%20518.891%20145.138%20518.85%20145.207C518.809%20145.276%20518.751%20145.334%20518.682%20145.374C518.612%20145.414%20518.533%20145.435%20518.453%20145.436C518.373%20145.436%20518.293%20145.416%20518.223%20145.376L506.44%20138.563C506.368%20138.525%20506.307%20138.468%20506.265%20138.397C506.223%20138.327%20506.201%20138.247%20506.202%20138.165V137.563C506.204%20137.483%20506.226%20137.404%20506.267%20137.335C506.308%20137.266%20506.366%20137.208%20506.436%20137.168C506.505%20137.128%20506.584%20137.107%20506.664%20137.106C506.745%20137.106%20506.824%20137.126%20506.894%20137.166L518.688%20143.98C518.756%20144.021%20518.813%20144.08%20518.852%20144.149C518.892%20144.219%20518.914%20144.297%20518.915%20144.377Z'%20fill='%23F9FBFC'/%3e%3cg%20opacity='0.53'%3e%3cpath%20d='M514.066%20147.566V148.168C514.066%20148.248%20514.046%20148.327%20514.006%20148.396C513.967%20148.466%20513.91%20148.524%20513.841%20148.564C513.772%20148.605%20513.693%20148.626%20513.613%20148.626C513.533%20148.626%20513.454%20148.605%20513.385%20148.565L506.445%20144.579C506.372%20144.541%20506.312%20144.484%20506.269%20144.414C506.227%20144.344%20506.206%20144.263%20506.206%20144.182V143.58C506.208%20143.499%20506.23%20143.421%20506.271%20143.351C506.312%20143.282%20506.37%20143.225%20506.44%20143.185C506.51%20143.145%20506.588%20143.124%20506.669%20143.123C506.749%20143.123%20506.828%20143.143%20506.898%20143.182L513.828%20147.157C513.9%20147.198%20513.96%20147.257%20514.002%20147.329C514.044%20147.401%20514.066%20147.483%20514.066%20147.566Z'%20fill='%23F9FBFC'/%3e%3c/g%3e%3cpath%20d='M517.097%20146.319V146.921C517.095%20147.001%20517.073%20147.08%20517.032%20147.149C516.991%20147.218%20516.933%20147.276%20516.863%20147.316C516.793%20147.356%20516.715%20147.377%20516.634%20147.377C516.554%20147.378%20516.475%20147.357%20516.405%20147.318L506.448%20141.64C506.375%20141.602%20506.314%20141.545%20506.272%20141.475C506.23%20141.405%20506.209%20141.324%20506.209%20141.242V140.641C506.211%20140.56%20506.233%20140.481%20506.274%20140.412C506.315%20140.343%20506.373%20140.286%20506.443%20140.246C506.513%20140.206%20506.591%20140.184%20506.672%20140.184C506.752%20140.183%20506.831%20140.204%20506.901%20140.243L516.87%20145.921C516.939%20145.962%20516.997%20146.02%20517.037%20146.089C517.077%20146.159%20517.097%20146.238%20517.097%20146.319Z'%20fill='%23F9FBFC'/%3e%3cpath%20d='M284.927%2030.6317C286.323%2031.5387%20287.484%2032.7638%20288.316%2034.2068C289.148%2035.6497%20289.627%2037.2695%20289.713%2038.9333C289.713%2041.9883%20287.558%2043.2148%20284.904%2041.6816C283.508%2040.7745%20282.345%2039.5496%20281.512%2038.1069C280.678%2036.6641%20280.197%2035.0444%20280.107%2033.38C280.119%2030.3818%20282.273%2029.0872%20284.927%2030.6317Z'%20stroke='%23E6F4FF'%20stroke-width='0.75'%20stroke-miterlimit='10'/%3e%3cpath%20d='M286.657%2034.6392L287.689%2036.4222L283.754%2038.6708L281.837%2035.3546L282.869%2034.7641L283.754%2036.2972L286.657%2034.6392Z'%20fill='white'/%3e%3cpath%20d='M605.057%2054.7488L606.134%2057.6788L609.071%2058.769L606.134%2059.8592L605.057%2062.7892L603.968%2059.8592L601.031%2058.769L603.968%2057.6788L605.057%2054.7488Z'%20fill='white'/%3e%3cpath%20d='M618.664%2045.6648L619.742%2048.5948L622.679%2049.685L619.742%2050.7753L618.664%2053.7052L617.575%2050.7753L614.638%2049.685L617.575%2048.5948L618.664%2045.6648Z'%20fill='white'/%3e%3cpath%20d='M628.591%2059.0103L629.362%2061.1112L631.472%2061.8948L629.362%2062.6784L628.591%2064.7794L627.809%2062.6784L625.699%2061.8948L627.809%2061.1112L628.591%2059.0103Z'%20fill='white'/%3e%3cpath%20d='M384.006%20161.057L391.899%20156.435'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M352.2%20179.716L380.563%20163.078'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M352.575%20180.809C352.575%20181.261%20352.44%20181.702%20352.189%20182.076C351.937%20182.451%20351.579%20182.742%20351.161%20182.912C350.744%20183.082%20350.285%20183.124%20349.843%20183.032C349.402%20182.939%20348.998%20182.717%20348.683%20182.394C348.368%20182.07%20348.157%20181.66%20348.076%20181.216C347.995%20180.772%20348.048%20180.314%20348.228%20179.9C348.409%20179.486%20348.708%20179.135%20349.088%20178.892C349.469%20178.65%20349.913%20178.526%20350.364%20178.538C350.955%20178.552%20351.518%20178.798%20351.931%20179.223C352.344%20179.647%20352.575%20180.216%20352.575%20180.809Z'%20stroke='%23E6F4FF'%20stroke-miterlimit='10'/%3e%3cpath%20d='M559.788%2027.6204L567.681%2022.9983'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M527.982%2046.2785L556.346%2029.6411'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M528.358%2047.4156C528.358%2047.8648%20528.224%2048.304%20527.975%2048.6775C527.726%2049.051%20527.372%2049.3421%20526.957%2049.514C526.543%2049.6859%20526.087%2049.7309%20525.647%2049.6433C525.207%2049.5556%20524.803%2049.3393%20524.486%2049.0217C524.168%2048.704%20523.952%2048.2993%20523.865%2047.8587C523.777%2047.4181%20523.822%2046.9614%20523.994%2046.5464C524.166%2046.1314%20524.456%2045.7767%20524.829%2045.5271C525.202%2045.2775%20525.641%2045.1443%20526.089%2045.1443C526.691%2045.1443%20527.268%2045.3836%20527.693%2045.8095C528.119%2046.2355%20528.358%2046.8132%20528.358%2047.4156Z'%20stroke='%23E6F4FF'%20stroke-miterlimit='10'/%3e%3cpath%20d='M641.44%2021.9437L649.333%2017.3215'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M609.635%2040.5979L637.999%2023.9604'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M610.014%2041.733C610.014%2042.1822%20609.881%2042.6214%20609.632%2042.9949C609.383%2043.3684%20609.028%2043.6595%20608.614%2043.8314C608.199%2044.0033%20607.743%2044.0483%20607.303%2043.9607C606.863%2043.873%20606.459%2043.6567%20606.142%2043.3391C605.825%2043.0214%20605.609%2042.6167%20605.521%2042.1761C605.434%2041.7355%20605.479%2041.2788%20605.65%2040.8638C605.822%2040.4488%20606.113%2040.094%20606.486%2039.8445C606.859%2039.5949%20607.297%2039.4617%20607.746%2039.4617C608.347%2039.4617%20608.924%2039.701%20609.35%2040.1269C609.775%2040.5529%20610.014%2041.1306%20610.014%2041.733Z'%20stroke='%23E6F4FF'%20stroke-miterlimit='10'/%3e%3cpath%20d='M10.4121%20314.616L2.53021%20309.993'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M42.2219%20333.27L13.8471%20316.633'%20stroke='%23E6F4FF'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M41.8344%20334.359C41.8344%20334.808%2041.9675%20335.247%2042.2167%20335.621C42.4659%20335.994%2042.8202%20336.285%2043.2346%20336.457C43.6491%20336.629%2044.1051%20336.674%2044.5451%20336.586C44.9851%20336.499%2045.3892%20336.282%2045.7065%20335.965C46.0237%20335.647%2046.2397%20335.242%2046.3272%20334.802C46.4147%20334.361%2046.3698%20333.905%2046.1981%20333.49C46.0265%20333.074%2045.7357%20332.72%2045.3627%20332.47C44.9897%20332.221%2044.5512%20332.087%2044.1026%20332.087C43.5011%20332.087%2042.9241%20332.327%2042.4988%20332.753C42.0734%20333.179%2041.8344%20333.756%2041.8344%20334.359Z'%20stroke='%23E6F4FF'%20stroke-miterlimit='10'/%3e%3cpath%20d='M537.046%20165.261V166.181L545.495%20171.075V170.144L537.046%20165.261Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M541.227%20165.537V166.457L545.502%20168.932V168.012L541.227%20165.537Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M543.852%20164.374V165.305L545.507%20166.27L545.519%20165.339L543.852%20164.374Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M544.63%20195.469C544.85%20195.797%20545.136%20196.075%20545.47%20196.287L545.663%20196.389C545.322%20196.264%20544.982%20196.105%20544.63%20195.935V195.469Z'%20fill='%23747878'/%3e%3cpath%20d='M544.5%20177.641L544%20177.322L544.114%20177.39L544.432%20177.595L544.5%20177.641Z'%20fill='%236C7070'/%3e%3cpath%20d='M544.209%20192.554L544.437%20192.668L544.209%20192.554Z'%20fill='%23747878'/%3e%3cpath%20d='M545.176%20193C545.002%20192.949%20544.817%20192.949%20544.642%20193V192.783C544.816%20192.865%20544.995%20192.937%20545.176%20193Z'%20fill='%23747878'/%3e%3cpath%20d='M545.292%20178.223L545.655%20178.53C545.299%20178.218%20544.919%20177.933%20544.521%20177.677L544.657%20177.768V177.564C544.834%20177.814%20545.048%20178.037%20545.292%20178.223Z'%20fill='%23747878'/%3e%3cpath%20d='M544.046%20174.202C544.273%20174.327%20544.488%20174.463%20544.693%20174.599V175.065C544.513%20175.142%20544.364%20175.276%20544.268%20175.447C544.172%20175.617%20544.134%20175.814%20544.16%20176.008C544.185%20176.567%20544.37%20177.107%20544.693%20177.563V177.768C544.486%20177.618%20544.27%20177.482%20544.046%20177.359C540.44%20175.269%20537.491%20176.95%20537.48%20181.118C537.595%20183.393%20538.247%20185.609%20539.382%20187.583C540.518%20189.557%20542.104%20191.233%20544.012%20192.475L544.216%20192.588L544.454%20192.713L544.659%20192.804V193.02C544.479%20193.095%20544.329%20193.226%20544.231%20193.394C544.133%20193.562%20544.092%20193.758%20544.114%20193.951C544.137%20194.51%20544.323%20195.051%20544.647%20195.507V195.972L544.466%20195.882L544.001%20195.632C538.863%20192.656%20534.724%20185.411%20534.735%20179.562C534.747%20173.713%20538.92%20171.204%20544.046%20174.202Z'%20stroke='%23E6F4FF'%20stroke-width='0.5'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M545.544%20175.222L545.725%20175.347H545.805C549.516%20178.466%20552.069%20182.747%20553.051%20187.498C553.056%20187.54%20553.056%20187.582%20553.051%20187.623V187.759C553.055%20187.805%20553.055%20187.85%20553.051%20187.896C553.054%20187.941%20553.054%20187.987%20553.051%20188.032V188.168C553.049%20188.214%20553.049%20188.259%20553.051%20188.305C553.051%20188.373%20553.051%20188.407%20553.051%20188.452C553.056%20188.547%20553.056%20188.642%20553.051%20188.736V188.861V190.837C553.048%20190.879%20553.048%20190.92%20553.051%20190.962C553.054%20191.004%20553.054%20191.045%20553.051%20191.087C553.06%20191.128%20553.06%20191.171%20553.051%20191.212C553.059%20191.253%20553.059%20191.295%20553.051%20191.337C553.051%20191.405%20553.051%20191.428%20553.051%20191.462C553.051%20191.496%20553.051%20191.553%20553.051%20191.575C553.051%20191.598%20553.051%20191.757%20553.051%20191.836C553.051%20191.916%20553.051%20191.916%20553.051%20191.95V192.064V192.177V192.279C553.049%20192.317%20553.049%20192.355%20553.051%20192.393V192.507C553.048%20192.544%20553.048%20192.582%20553.051%20192.62C553.047%20192.658%20553.047%20192.696%20553.051%20192.734C552.144%20196.141%20549.309%20197.628%20545.77%20196.356H545.702L545.51%20196.254C545.111%20195.994%20544.779%20195.644%20544.54%20195.232C544.302%20194.819%20544.164%20194.356%20544.137%20193.881C544.115%20193.687%20544.156%20193.492%20544.254%20193.324C544.352%20193.156%20544.502%20193.024%20544.682%20192.949C544.856%20192.899%20545.041%20192.899%20545.215%20192.949H545.283C546.17%20193.309%20547.152%20193.361%20548.073%20193.097H548.186H548.288H548.402L548.492%20193.04H548.594H548.685L548.787%20192.983L548.878%20192.927L548.98%20192.859L549.059%20192.79L549.15%20192.722L549.229%20192.643L549.32%20192.563L549.4%20192.484L549.479%20192.393L549.558%20192.302V192.245V192.177L549.626%20192.075L549.694%20191.973C549.721%20191.937%20549.743%20191.899%20549.762%20191.859L549.831%20191.746V191.643C549.854%20191.608%20549.873%20191.57%20549.887%20191.53C549.892%20191.488%20549.892%20191.446%20549.887%20191.405V191.28V191.155V191.019V190.894C549.884%20190.848%20549.884%20190.803%20549.887%20190.758V190.621C549.884%20190.576%20549.884%20190.53%20549.887%20190.485C549.89%20190.436%20549.89%20190.387%20549.887%20190.337C549.89%20190.284%20549.89%20190.231%20549.887%20190.178C549.892%20190.129%20549.892%20190.08%20549.887%20190.031C549.887%20190.031%20549.887%20189.929%20549.887%20189.883C549.887%20189.838%20549.887%20189.781%20549.887%20189.736C549.887%20189.69%20549.887%20189.622%20549.887%20189.565C549.887%20189.508%20549.887%20189.452%20549.887%20189.406C549.887%20189.361%20549.887%20189.293%20549.887%20189.236V189.065C549.887%20188.997%20549.887%20188.941%20549.887%20188.895C549.893%20188.838%20549.893%20188.781%20549.887%20188.725V188.554C549.894%20188.498%20549.894%20188.441%20549.887%20188.384C549.894%20188.324%20549.894%20188.263%20549.887%20188.202C549.894%20188.146%20549.894%20188.089%20549.887%20188.032C549.887%20187.953%20549.887%20187.896%20549.887%20187.839C549.887%20187.669%20549.887%20187.669%20549.887%20187.498C549.882%20187.438%20549.882%20187.377%20549.887%20187.317C549.883%20187.256%20549.883%20187.195%20549.887%20187.135V186.953C549.887%20186.76%20549.808%20186.59%20549.774%20186.408C549.767%20186.348%20549.767%20186.287%20549.774%20186.226L549.672%20185.863C548.932%20183.323%20547.554%20181.016%20545.668%20179.163L545.555%20179.049L545.419%20178.924L545.351%20178.856L545.271%20178.788L544.897%20178.47C544.665%20178.281%20544.463%20178.059%20544.296%20177.811C543.973%20177.354%20543.788%20176.814%20543.763%20176.255C543.737%20176.061%20543.775%20175.864%20543.872%20175.694C543.968%20175.524%20544.117%20175.39%20544.296%20175.313C544.472%20175.177%20544.684%20175.096%20544.906%20175.079C545.128%20175.063%20545.35%20175.113%20545.544%20175.222Z'%20fill='%2358AFFB'/%3e%3cpath%20d='M545.724%20175.349L545.543%20175.224C545.291%20175.06%20544.985%20175.003%20544.692%20175.065V174.61C544.998%20174.837%20545.395%20175.087%20545.724%20175.349Z'%20fill='%23747878'/%3e%3cpath%20d='M579.805%2062.4946V63.4145L571.356%2068.2978V67.378L579.805%2062.4946Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M575.616%2062.7666V63.6865L571.341%2066.1622V65.231L575.616%2062.7666Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M573%2061.6077V62.5389L571.344%2063.5042L571.333%2062.573L573%2061.6077Z'%20fill='%23E6F4FF'/%3e%3cpath%20d='M548.123%2073.3742L548.214%20102.413L564.726%2092.8622L564.646%2063.8347L548.123%2073.3742Z'%20stroke='%23E6F4FF'%20stroke-width='0.8'%20stroke-miterlimit='10'/%3e%3cpath%20d='M550.291%2074.5995L549.713%2074.2588L549.803%20103.298L550.37%20103.627L550.291%2074.5995Z'%20fill='%23BDC5CB'/%3e%3cpath%20d='M566.803%2065.049L566.236%2064.7083L549.713%2074.2591L550.291%2074.5998L566.803%2065.049Z'%20fill='white'/%3e%3cpath%20d='M550.291%2074.5985L550.371%20103.626L566.883%2094.075L566.803%2065.0476L550.291%2074.5985Z'%20fill='%23EAF1F7'/%3e%3cpath%20d='M561.945%2078.3853L561.957%2079.3051L553.496%2084.1998V83.2686L561.945%2078.3853Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M557.76%2078.6553L557.772%2079.5752L553.496%2082.0509V81.131L557.76%2078.6553Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M555.148%2077.4963L555.16%2078.4276L553.492%2079.3929V78.4616L555.148%2077.4963Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M561.945%2087.6621L561.957%2088.582L553.496%2093.4653V92.5454L561.945%2087.6621Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M557.76%2087.9321L557.772%2088.852L553.496%2091.3278V90.3965L557.76%2087.9321Z'%20fill='%2394A3C0'/%3e%3cpath%20d='M555.148%2086.7771L555.16%2087.7083L553.492%2088.6736V87.731L555.148%2086.7771Z'%20fill='%2394A3C0'/%3e%3c/svg%3e`,Tp=`data:image/svg+xml,%3csvg%20width='22'%20height='32'%20viewBox='0%200%2022%2032'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M19.1593%2014.3814C17.2069%2015.0272%205.56056%2018.3882%205.56056%2018.3882C4.03868%2021.4659%2011.1005%2023.4995%2011.1005%2023.4995C6.62739%2019.7609%2013.9819%2017.901%2018.4833%2016.4868C23.7193%2014.8403%2020.7473%2012.4385%2020.7473%2012.4385C21.0173%2013.2089%2020.6906%2013.8716%2019.1574%2014.3776'%20fill='white'/%3e%3cpath%20d='M19.9428%2015.3237C18.6683%2015.7448%2014.2688%2016.9796%2010.7945%2018.3807C6.36106%2020.1763%2011.1004%2023.5014%2011.1004%2023.5014C6.62729%2019.7628%2013.9818%2017.903%2018.4832%2016.4887C23.7211%2014.8403%2020.7491%2012.4404%2020.7491%2012.4404C21.4477%2013.36%2021.476%2014.8177%2019.9428%2015.3237Z'%20fill='white'/%3e%3cpath%20d='M5.56915%2023.6885C8.14464%2026.9022%2013.0124%2030.0007%2015.7314%2031.5887C16.8794%2032.259%2018.3295%2032.0966%2019.3001%2031.1903C20.1007%2030.4425%2020.1422%2029.1869%2019.3945%2028.3863C19.2472%2028.2277%2019.0754%2028.0955%2018.8847%2027.9936C16.1657%2026.5321%2011.7624%2024.0756%208.74509%2021.923C4.09636%2018.6111%207.66693%2017.7822%207.66693%2017.7822C3.3392%2018.7414%202.58392%2019.9688%205.56915%2023.6828'%20fill='white'/%3e%3cpath%20d='M3.38919%2016.1084C-1.84676%2017.753%201.12525%2020.1567%201.12525%2020.1567C0.853355%2019.3844%201.1819%2018.7235%202.71511%2018.2175C4.67505%2017.5698%2016.312%2014.207%2016.312%2014.207C17.8357%2011.1292%2010.7739%209.09375%2010.7739%209.09375C15.2433%2012.8324%207.88875%2014.6941%203.38919%2016.1084Z'%20fill='white'/%3e%3cpath%20d='M3.38919%2016.1084C-1.84676%2017.753%201.12525%2020.1567%201.12525%2020.1567C0.426624%2019.2371%200.38886%2017.7794%201.92962%2017.2734C3.20604%2016.8523%207.60552%2015.6174%2011.0798%2014.2164C15.5114%2012.4207%2010.7739%209.09375%2010.7739%209.09375C15.2433%2012.8324%207.88875%2014.6941%203.38919%2016.1084Z'%20fill='white'/%3e%3cpath%20d='M2.57331%201.40596C1.77272%202.15368%201.72929%203.40933%202.47701%204.20992C2.62429%204.36853%202.79612%204.5007%202.98682%204.60266C5.70771%206.06412%2010.111%208.51877%2013.1283%2010.6732C17.777%2013.9851%2014.2065%2014.814%2014.2065%2014.814C18.5323%2013.8529%2019.2895%2012.6275%2016.3042%208.9134C13.7287%205.6997%208.86098%202.59929%206.1401%201.01321C4.99397%200.342905%203.54195%200.50529%202.57331%201.41162'%20fill='white'/%3e%3cg%20opacity='0.3'%3e%3cpath%20d='M15.6146%2014.4409C15.8714%2014.3635%2016.1093%2014.2823%2016.3264%2014.1973C16.4284%2014.0293%2016.4945%2013.8404%2016.519%2013.646C16.5473%2013.391%2016.5152%2013.1324%2016.4227%2012.8907C16.3377%2012.6622%2016.2207%2012.447%2016.0791%2012.2487C15.9431%2012.0523%2015.7921%2011.8692%2015.6278%2011.6973C15.303%2011.365%2014.9518%2011.0572%2014.5798%2010.7778C13.8434%2010.2264%2013.0655%209.72607%2012.2895%209.23325C11.5134%208.74232%2010.7223%208.27405%209.92923%207.81333C8.34315%206.89378%206.73441%206.00633%205.13134%205.12077L3.93045%204.45235C3.52826%204.24087%203.17328%203.95009%202.88817%203.597C2.75033%203.41951%202.65026%203.2137%202.5955%202.99467C2.54263%202.77564%202.55396%202.54528%202.6276%202.33191C2.70312%202.11855%202.82019%201.92218%202.97125%201.75413C3.04677%201.66916%203.12797%201.58797%203.21294%201.51055L3.34133%201.40103L3.40931%201.34817L3.44518%201.32173L3.46218%201.30851C3.46218%201.30851%203.47351%201.31795%203.46218%201.29152C3.45085%201.26509%203.46218%201.29152%203.44707%201.28019H3.43763L3.42064%201.29341L3.38476%201.31984L3.31679%201.37082L3.18272%201.48034C3.09587%201.55587%203.01279%201.63706%202.93537%201.72392C2.77488%201.89385%202.65026%202.094%202.56717%202.31303C2.48787%202.53584%202.47276%202.77564%202.52375%203.006C2.5785%203.23447%202.67858%203.44783%202.82019%203.63476C3.1072%204.00107%203.46595%204.30507%203.8738%204.52977L5.06525%205.21707C6.657%206.13662%208.24874%207.03728%209.81783%207.9776C10.6014%208.44965%2011.3794%208.93303%2012.1479%209.43151C12.9145%209.92999%2013.6754%2010.4455%2014.3929%2010.9968C14.7498%2011.2725%2015.0821%2011.5765%2015.3918%2011.905C15.6977%2012.2166%2015.9375%2012.5867%2016.0998%2012.9926C16.1678%2013.1833%2016.1924%2013.3892%2016.1678%2013.5912C16.1376%2013.7876%2016.0564%2013.9745%2015.9299%2014.1293C15.8355%2014.2445%2015.7279%2014.3484%2015.607%2014.4371'%20fill='white'/%3e%3c/g%3e%3c/svg%3e`,Ep=`data:image/svg+xml,%3csvg%20width='89'%20height='21'%20viewBox='0%200%2089%2021'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.4537%209.65056L5.6297%2017.2781H12.9309C13.4136%2017.243%2013.8916%2017.3924%2014.2685%2017.696C14.4166%2017.8312%2014.5335%2017.997%2014.6112%2018.1818C14.6889%2018.3667%2014.7255%2018.5662%2014.7185%2018.7666C14.7242%2018.9592%2014.6875%2019.1507%2014.6111%2019.3276C14.5346%2019.5045%2014.4202%2019.6624%2014.2759%2019.7902C13.9792%2020.0539%2013.5309%2020.1858%2012.9309%2020.1858H2.83086C2.12127%2020.1858%201.59463%2020.0325%201.24107%2019.7209C1.0652%2019.5615%200.926946%2019.3651%200.836296%2019.1457C0.745646%2018.9264%200.704869%2018.6896%200.716905%2018.4526C0.728826%2018.0998%200.858518%2017.7612%201.0853%2017.4908C1.3309%2017.1611%201.84023%2016.5677%202.61329%2015.7106C3.43744%2014.8007%204.17918%2013.9766%204.83851%2013.2381C5.50608%2012.4964%206.12667%2011.8115%206.70028%2011.1687C7.27389%2010.5258%207.74861%209.98434%208.1269%209.5393C8.50519%209.09426%208.80683%208.71103%209.03429%208.39208H3.5009C2.9168%208.41478%202.33277%208.34553%201.77017%208.18686C1.37787%208.0517%201.18173%207.69237%201.18173%207.10887C1.17386%206.91572%201.2098%206.7233%201.28688%206.54603C1.36395%206.36876%201.48015%206.21123%201.62677%206.08526C1.98683%205.80907%202.43488%205.6729%202.88773%205.70203H11.4425C12.0692%205.66774%2012.6949%205.78744%2013.2647%206.05065C13.6867%206.28306%2013.8985%206.69926%2013.9001%207.29924C13.8974%207.51195%2013.8555%207.72233%2013.7765%207.91984C13.7093%208.10655%2013.6179%208.28361%2013.5045%208.44647C13.4032%208.58246%2013.2573%208.74811%2013.0941%208.94097C12.9309%209.13382%2012.7084%209.37118%2012.4537%209.64562'%20fill='white'/%3e%3cpath%20d='M17.2637%203.64451C16.7764%203.65633%2016.3022%203.4862%2015.9335%203.16732C15.7567%202.99393%2015.6165%202.78678%2015.5212%202.55816C15.4259%202.32955%2015.3776%202.08413%2015.3789%201.83647C15.3803%201.58881%2015.4314%201.34394%2015.5292%201.11641C15.6271%200.888871%2015.7696%200.683299%2015.9483%200.511889C16.3048%200.178623%2016.7758%20-0.00464918%2017.2637%208.96584e-05C17.7334%20-0.00408682%2018.1889%200.160906%2018.5469%200.464912C18.7373%200.632%2018.8868%200.84066%2018.9837%201.07475C19.0806%201.30884%2019.1223%201.56208%2019.1057%201.81488C19.1194%202.06527%2019.0778%202.31562%2018.9838%202.5481C18.8898%202.78058%2018.7457%202.98947%2018.5617%203.15991C18.2073%203.48319%2017.7434%203.65992%2017.2637%203.6544M19.1057%207.50404V18.2716C19.1057%2019.0134%2018.9301%2019.5821%2018.5741%2019.9628C18.4037%2020.15%2018.1948%2020.2981%2017.9618%2020.3972C17.7288%2020.4962%2017.4772%2020.5437%2017.2241%2020.5364C16.9723%2020.5445%2016.7219%2020.4961%2016.4913%2020.3947C16.2607%2020.2933%2016.0557%2020.1415%2015.8915%2019.9505C15.5503%2019.5598%2015.3797%2018.9986%2015.3797%2018.2716V7.60294C15.3797%206.86614%2015.5503%206.31066%2015.8915%205.93649C16.0602%205.75283%2016.2667%205.6078%2016.4967%205.51136C16.7267%205.41491%2016.9749%205.36933%2017.2241%205.37771C17.4758%205.37068%2017.7261%205.41681%2017.9587%205.5131C18.1913%205.60938%2018.401%205.75366%2018.5741%205.93649C18.9496%206.3654%2019.1406%206.92517%2019.1057%207.49415'%20fill='white'/%3e%3cpath%20d='M24.8301%207.43997V7.88996C25.3957%207.10255%2026.1308%206.45199%2026.9811%205.98616C27.8125%205.56827%2028.7334%205.3595%2029.6637%205.37793C30.5817%205.36311%2031.4882%205.58356%2032.2969%206.0183C33.0505%206.42702%2033.6562%207.06291%2034.0276%207.83557C34.2757%208.29687%2034.4375%208.79962%2034.5048%209.31905C34.5864%209.98918%2034.6227%2010.664%2034.6136%2011.3391V18.262C34.6136%2019.0087%2034.443%2019.5724%2034.1018%2019.9531C33.9362%2020.141%2033.731%2020.2899%2033.501%2020.3891C33.271%2020.4883%2033.0219%2020.5353%2032.7716%2020.5268C32.5172%2020.5353%2032.2641%2020.4872%2032.0306%2020.3858C31.7971%2020.2845%2031.5891%2020.1325%2031.4217%2019.9408C31.0755%2019.5501%2030.9024%2018.9889%2030.9024%2018.262V12.0511C30.9024%2010.8149%2030.7318%209.88524%2030.3906%209.23251C30.0494%208.57978%2029.3695%208.25836%2028.3508%208.25836C27.6969%208.25479%2027.0594%208.46296%2026.5336%208.85175C25.9783%209.26214%2025.5602%209.83104%2025.3344%2010.4836C25.1515%2011.0374%2025.06%2012.0742%2025.06%2013.594V18.262C25.06%2019.0169%2024.8853%2019.5831%2024.5358%2019.9606C24.3635%2020.1468%2024.153%2020.2938%2023.9188%2020.3915C23.6846%2020.4892%2023.4321%2020.5353%2023.1784%2020.5268C22.9279%2020.5335%2022.679%2020.4845%2022.4498%2020.3831C22.2206%2020.2818%2022.0168%2020.1307%2021.8532%2019.9408C21.5071%2019.5501%2021.334%2018.9889%2021.334%2018.262V7.49436C21.334%206.78477%2021.4897%206.25813%2021.7988%205.90457C21.958%205.72826%2022.1543%205.58954%2022.3737%205.49845C22.5931%205.40737%2022.8299%205.3662%2023.0672%205.37793C23.3787%205.37314%2023.6856%205.4535%2023.9548%205.61034C24.2293%205.77571%2024.45%206.01702%2024.5902%206.30511C24.7616%206.6584%2024.8463%207.04742%2024.8375%207.43997'%20fill='white'/%3e%3cpath%20d='M40.2031%207.43997V7.88996C40.7688%207.10255%2041.5038%206.45199%2042.3542%205.98616C43.1847%205.56829%2044.1047%205.3595%2045.0343%205.37793C45.9531%205.36279%2046.8605%205.58325%2047.67%206.0183C48.4231%206.4277%2049.0285%207.06339%2049.4007%207.83557C49.6477%208.29734%2049.8093%208.79988%2049.8779%209.31905C49.9582%209.98929%2049.9945%2010.6641%2049.9867%2011.3391V18.262C49.9867%2019.0087%2049.8161%2019.5724%2049.4749%2019.9531C49.3093%2020.141%2049.1041%2020.2899%2048.8741%2020.3891C48.6441%2020.4883%2048.395%2020.5353%2048.1447%2020.5268C47.89%2020.5347%2047.6367%2020.4862%2047.403%2020.3849C47.1692%2020.2836%2046.9606%2020.132%2046.7922%2019.9408C46.4461%2019.5501%2046.2755%2018.9889%2046.2755%2018.262V12.0511C46.2755%2010.8149%2046.1049%209.88524%2045.7637%209.23251C45.4225%208.57978%2044.7401%208.25836%2043.7214%208.25836C43.0683%208.25514%2042.4317%208.4633%2041.9066%208.85175C41.3499%209.26122%2040.9308%209.83035%2040.705%2010.4836C40.5237%2011.0374%2040.433%2012.0742%2040.433%2013.594V18.262C40.433%2019.0169%2040.2575%2019.5831%2039.9064%2019.9606C39.7344%2020.1472%2039.524%2020.2945%2039.2897%2020.3922C39.0554%2020.4899%2038.8027%2020.5358%2038.549%2020.5268C38.2989%2020.5332%2038.0505%2020.4839%2037.8217%2020.3826C37.5929%2020.2813%2037.3896%2020.1303%2037.2263%2019.9408C36.8801%2019.5501%2036.707%2018.9889%2036.707%2018.262V7.49436C36.707%206.78477%2036.8628%206.25813%2037.1719%205.90457C37.331%205.72826%2037.5274%205.58954%2037.7468%205.49845C37.9661%205.40737%2038.203%205.3662%2038.4402%205.37793C38.7517%205.37314%2039.0587%205.4535%2039.3279%205.61034C39.6023%205.77571%2039.823%206.01702%2039.9633%206.30511C40.1346%206.6584%2040.2194%207.04742%2040.2105%207.43997'%20fill='white'/%3e%3cpath%20d='M62.5909%2013.8682H55.3045C55.2961%2014.6445%2055.4706%2015.4119%2055.8138%2016.1083C56.0972%2016.7002%2056.5443%2017.1985%2057.1021%2017.5442C57.6599%2017.8899%2058.3051%2018.0686%2058.9613%2018.059C59.3736%2018.0634%2059.7846%2018.0109%2060.1827%2017.9033C60.5618%2017.7916%2060.9225%2017.625%2061.2533%2017.4088C61.5893%2017.1934%2061.9091%2016.9538%2062.2101%2016.6918C62.5002%2016.4363%2062.8777%2016.091%2063.3425%2015.6558C63.5761%2015.4765%2063.8671%2015.3885%2064.1609%2015.4086C64.4983%2015.3935%2064.8292%2015.5056%2065.0881%2015.7226C65.2092%2015.835%2065.304%2015.973%2065.3656%2016.1264C65.4271%2016.2799%2065.454%2016.4451%2065.4441%2016.6102C65.4164%2017.0309%2065.2801%2017.4372%2065.0485%2017.7895C64.736%2018.2937%2064.3308%2018.7342%2063.8543%2019.0876C63.2467%2019.5398%2062.5682%2019.8882%2061.8467%2020.1186C60.9495%2020.4048%2060.0116%2020.5426%2059.0701%2020.5266C56.6767%2020.5266%2054.8158%2019.8442%2053.4872%2018.4794C52.1587%2017.1146%2051.4944%2015.2635%2051.4944%2012.9262C51.4863%2011.8837%2051.6534%2010.8473%2051.9889%209.86033C52.2925%208.96156%2052.7819%208.1368%2053.4254%207.43978C54.0703%206.75306%2054.8635%206.22281%2055.7446%205.88954C56.7214%205.5203%2057.7588%205.33747%2058.803%205.35054C60.1121%205.31362%2061.4066%205.63234%2062.5488%206.27277C63.5369%206.83149%2064.3482%207.65648%2064.8903%208.65376C65.3902%209.56343%2065.6569%2010.5828%2065.6666%2011.6207C65.6666%2012.5586%2065.3988%2013.166%2064.8631%2013.4429C64.3241%2013.7199%2063.57%2013.8583%2062.5958%2013.8583M55.3094%2011.7443H62.0642C61.9736%2010.4718%2061.6299%209.5183%2061.0332%208.8837C60.7303%208.56817%2060.3638%208.32058%2059.9581%208.15733C59.5523%207.99408%2059.1164%207.91889%2058.6794%207.93674C58.2515%207.92332%2057.8257%208.00227%2057.431%208.16824C57.0364%208.33422%2056.6821%208.5833%2056.3924%208.89853C55.7957%209.53808%2055.4347%2010.4867%2055.3094%2011.7443Z'%20fill='white'/%3e%3cpath%20d='M75.0025%2018.9842L72.3001%2015.0135L69.5309%2018.9842C69.2359%2019.4182%2068.8925%2019.8172%2068.5073%2020.1735C68.21%2020.4156%2067.8347%2020.5412%2067.4516%2020.5271C67.0071%2020.5377%2066.5751%2020.3796%2066.2425%2020.0845C66.0908%2019.9616%2065.9679%2019.8069%2065.8825%2019.6313C65.797%2019.4557%2065.7511%2019.2635%2065.748%2019.0683C65.748%2018.676%2066.0027%2018.1164%2066.512%2017.3895L69.882%2012.5583L66.8928%208.53063C66.3736%207.86801%2066.1164%207.2944%2066.1164%206.7999C66.1177%206.61148%2066.1597%206.42556%2066.2395%206.25486C66.3193%206.08417%2066.435%205.93273%2066.5788%205.81092C66.9148%205.51876%2067.3505%205.36733%2067.7952%205.38813C68.1892%205.37419%2068.5745%205.50527%2068.8782%205.75652C69.2554%206.10401%2069.5921%206.49301%2069.882%206.91611L72.2976%2010.2193L74.6465%206.91611C74.9393%206.48057%2075.2857%206.08351%2075.6775%205.73427C75.9802%205.4913%2076.3601%205.36497%2076.7481%205.37823C77.1925%205.36149%2077.6274%205.5094%2077.9695%205.79361C78.1225%205.9126%2078.2465%206.06477%2078.3321%206.23866C78.4178%206.41254%2078.4629%206.6036%2078.464%206.79743C78.4633%207.08041%2078.3955%207.3592%2078.2661%207.61087C78.0919%207.93536%2077.8883%208.24322%2077.6579%208.53063L74.6489%2012.5583L78.0189%2017.3895C78.5447%2018.1444%2078.8084%2018.7131%2078.8101%2019.0955C78.8094%2019.2901%2078.7645%2019.482%2078.6789%2019.6568C78.5932%2019.8315%2078.469%2019.9845%2078.3156%2020.1043C77.9771%2020.3904%2077.5446%2020.5411%2077.1016%2020.5271C76.7074%2020.538%2076.3223%2020.4073%2076.0162%2020.1587C75.6305%2019.8104%2075.2892%2019.416%2075%2018.9842'%20fill='white'/%3e%3cpath%20d='M80.1811%205.70949H80.5915V3.46944C80.5915%202.86863%2080.6064%202.39886%2080.6385%202.05766C80.6608%201.74802%2080.752%201.44728%2080.9055%201.17746C81.0552%200.917818%2081.2721%200.703405%2081.5335%200.556866C81.8103%200.392732%2082.1266%200.307244%2082.4484%200.309618C82.9289%200.31336%2083.3891%200.504012%2083.7316%200.841198C83.9854%201.06984%2084.1588%201.37415%2084.2261%201.70904C84.3039%202.18956%2084.3378%202.67618%2084.3274%203.16285V5.70949H85.6922C86.1277%205.67931%2086.5587%205.81242%2086.9013%206.08284C87.037%206.20323%2087.1446%206.35203%2087.2164%206.51868C87.2882%206.68533%2087.3224%206.86574%2087.3167%207.0471C87.3338%207.26146%2087.2865%207.47606%2087.1808%207.66332C87.075%207.85057%2086.9157%208.00192%2086.7233%208.0979C86.187%208.32481%2085.6062%208.4271%2085.0247%208.39707H84.3274V15.2483C84.3202%2015.6975%2084.3409%2016.1467%2084.3892%2016.5933C84.4163%2016.8756%2084.5304%2017.1426%2084.7156%2017.3573C84.8317%2017.4641%2084.969%2017.5452%2085.1185%2017.5955C85.268%2017.6457%2085.4264%2017.664%2085.5835%2017.6491C85.8823%2017.6397%2086.1795%2017.6016%2086.4711%2017.5353C86.7574%2017.4677%2087.0498%2017.4288%2087.3439%2017.4191C87.4965%2017.4205%2087.6473%2017.4533%2087.7868%2017.5154C87.9263%2017.5775%2088.0516%2017.6676%2088.1548%2017.7801C88.2737%2017.8963%2088.3673%2018.0357%2088.4298%2018.1897C88.4924%2018.3437%2088.5225%2018.509%2088.5183%2018.6751C88.5183%2019.2735%2088.1886%2019.7325%2087.5293%2020.0523C86.87%2020.3721%2085.9288%2020.5311%2084.7057%2020.5295C83.5387%2020.5295%2082.6585%2020.3342%2082.0577%2019.9435C81.469%2019.5736%2081.0444%2018.9924%2080.8709%2018.3191C80.6615%2017.4107%2080.5677%2016.4794%2080.5915%2015.5475V8.39459H80.097C79.6515%208.42648%2079.2102%208.28969%2078.8608%208.01136C78.7234%207.8914%2078.6142%207.74251%2078.5411%207.57537C78.468%207.40823%2078.4328%207.22698%2078.438%207.04463C78.4337%206.8606%2078.4716%206.67803%2078.5487%206.5109C78.6259%206.34376%2078.7402%206.19649%2078.8831%206.08036C79.2545%205.807%2079.7111%205.67466%2080.1712%205.70702'%20fill='white'/%3e%3c/svg%3e`,Dp=`data:image/svg+xml,%3csvg%20width='7'%20height='13'%20viewBox='0%200%207%2013'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M5.04492%206.50535L0.757579%2010.7927C0.457835%2011.0924%200.457835%2011.5784%200.757579%2011.8782C1.05732%2012.1779%201.54331%2012.1779%201.84305%2011.8782L6.67312%207.04809C6.97287%206.74835%206.97287%206.26236%206.67312%205.96262L1.84305%201.13255C1.54331%200.832802%201.05732%200.832802%200.757579%201.13255C0.457835%201.43229%200.457835%201.91827%200.757579%202.21802L5.04492%206.50535Z'%20fill='white'/%3e%3c/svg%3e`,Op=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%2019C5.5544%2017.9895%202%2013.6998%202%209.18182V4.27273L10%201L18%204.27273V9.18182C18%2013.7015%2014.4456%2017.9895%2010%2019ZM3.6%205.09091V9.18182C3.64572%2011.0736%204.29629%2012.8979%205.45214%2014.3755C6.608%2015.8532%208.20545%2016.9028%2010%2017.3636C11.7946%2016.9028%2013.392%2015.8532%2014.5479%2014.3755C15.7037%2012.8979%2016.3543%2011.0736%2016.4%209.18182V5.09091L10%202.63636L3.6%205.09091Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M10%209.18185C11.1046%209.18185%2012%208.26607%2012%207.1364C12%206.00672%2011.1046%205.09094%2010%205.09094C8.89543%205.09094%208%206.00672%208%207.1364C8%208.26607%208.89543%209.18185%2010%209.18185Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M6%2012.4545C6.39431%2013.1894%206.97247%2013.804%207.67531%2014.2353C8.37815%2014.6666%209.18042%2014.8991%2010%2014.9091C10.8196%2014.8991%2011.6219%2014.6666%2012.3247%2014.2353C13.0275%2013.804%2013.6057%2013.1894%2014%2012.4545C13.98%2010.9033%2011.3264%2010%2010%2010C8.6664%2010%206.02%2010.9033%206%2012.4545Z'%20fill='%23C9C9E8'/%3e%3c/svg%3e`,kp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M6.66669%202.5H13.3334C14.2538%202.5%2015%203.24619%2015%204.16667V17.5L10%2015L5%2017.5V4.16667C5%203.24619%205.74621%202.5%206.66669%202.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M7.91669%207.5H12.0834'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M7.91669%2010.8333H10.8334'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M15%205.83333H16.25C16.9404%205.83333%2017.5%206.39298%2017.5%207.08333V13.75C17.5%2014.4404%2016.9404%2015%2016.25%2015H15'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M5%2015H3.75C3.05964%2015%202.5%2014.4404%202.5%2013.75V7.08333C2.5%206.39298%203.05964%205.83333%203.75%205.83333H5'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Ap=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M17%205.3335H3.66667C2.74619%205.3335%202%206.07969%202%207.00016V15.3335C2%2016.254%202.74619%2017.0002%203.66667%2017.0002H17C17.9205%2017.0002%2018.6667%2016.254%2018.6667%2015.3335V7.00016C18.6667%206.07969%2017.9205%205.3335%2017%205.3335Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.6667%2017V3.66667C13.6667%203.22464%2013.4911%202.80072%2013.1785%202.48816C12.866%202.17559%2012.442%202%2012%202H8.66667C8.22464%202%207.80072%202.17559%207.48816%202.48816C7.1756%202.80072%207%203.22464%207%203.66667V17'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,jp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M19.1667%2017.5V15.8333C19.1661%2015.0948%2018.9203%2014.3773%2018.4678%2013.7936C18.0153%2013.2099%2017.3818%2012.793%2016.6667%2012.6083'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M14.1667%2017.5V15.8333C14.1667%2014.9493%2013.8155%2014.1014%2013.1904%2013.4763C12.5652%2012.8512%2011.7174%2012.5%2010.8333%2012.5H4.16668C3.28262%2012.5%202.43478%2012.8512%201.80965%2013.4763C1.18453%2014.1014%200.833344%2014.9493%200.833344%2015.8333V17.5'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3333%202.60834C14.0504%202.79192%2014.6859%203.20892%2015.1397%203.7936C15.5935%204.37827%2015.8399%205.09736%2015.8399%205.8375C15.8399%206.57765%2015.5935%207.29674%2015.1397%207.88141C14.6859%208.46609%2014.0504%208.88309%2013.3333%209.06667'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M7.49999%209.16667C9.34094%209.16667%2010.8333%207.67428%2010.8333%205.83333C10.8333%203.99238%209.34094%202.5%207.49999%202.5C5.65904%202.5%204.16666%203.99238%204.16666%205.83333C4.16666%207.67428%205.65904%209.16667%207.49999%209.16667Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Mp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.33331%205.83333C3.33331%204.91286%204.07951%204.16667%204.99998%204.16667H11.6666C12.5871%204.16667%2013.3333%204.91286%2013.3333%205.83333V12.5C13.3333%2013.4205%2012.5871%2014.1667%2011.6666%2014.1667H4.99998C4.07951%2014.1667%203.33331%2013.4205%203.33331%2012.5V5.83333Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M6.24998%208.33333C6.24998%207.8731%206.62308%207.5%207.08331%207.5H9.16665C9.62688%207.5%209.99998%207.8731%209.99998%208.33333C9.99998%208.79357%209.62688%209.16667%209.16665%209.16667H7.08331C6.62308%209.16667%206.24998%208.79357%206.24998%208.33333Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M5.83331%2011.6667H10.8333'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3333%207.5H15.8333C16.7538%207.5%2017.5%208.24619%2017.5%209.16667C17.5%2010.0871%2016.7538%2010.8333%2015.8333%2010.8333H13.3333'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3333%2014.1667L15.4166%2016.25'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M16.25%2017.5C16.9403%2017.5%2017.5%2016.9404%2017.5%2016.25C17.5%2015.5596%2016.9403%2015%2016.25%2015C15.5596%2015%2015%2015.5596%2015%2016.25C15%2016.9404%2015.5596%2017.5%2016.25%2017.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M2.49998%203.33333C3.19034%203.33333%203.74998%202.77369%203.74998%202.08333C3.74998%201.39298%203.19034%200.833333%202.49998%200.833333C1.80962%200.833333%201.24998%201.39298%201.24998%202.08333C1.24998%202.77369%201.80962%203.33333%202.49998%203.33333Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M3.41665%202.91667L4.99998%204.16667'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Np=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M17.5%2011.6667H11.6667V17.5001H17.5V11.6667Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M8.33333%2011.6667H2.5V17.5001H8.33333V11.6667Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M17.5%202.5H11.6667V8.33333H17.5V2.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M8.33333%202.5H2.5V8.33333H8.33333V2.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Pp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M3.33331%208.33333H16.6666V16.25C16.6666%2016.7102%2016.2936%2017.0833%2015.8333%2017.0833H4.16665C3.70641%2017.0833%203.33331%2016.7102%203.33331%2016.25V8.33333Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M6.66669%208.33333V5.41667C6.66669%204.95643%207.03978%204.58333%207.50002%204.58333H12.5C12.9603%204.58333%2013.3334%204.95643%2013.3334%205.41667V8.33333'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M2.5%208.33333H17.5'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'/%3e%3cpath%20d='M7.5%2012.0833H12.5'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'/%3e%3cpath%20d='M10%209.58333V14.5833'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'/%3e%3cpath%20d='M5.83331%202.91667H14.1666'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'/%3e%3c/svg%3e`,Fp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%201C5.02991%201%201%205.02991%201%2010C1%2014.9701%205.02991%2019%2010%2019C14.9701%2019%2019%2014.9701%2019%2010C19%205.02991%2014.9701%201%2010%201ZM10%2017.4732C5.87366%2017.4732%202.52679%2014.1263%202.52679%2010C2.52679%205.87366%205.87366%202.52679%2010%202.52679C14.1263%202.52679%2017.4732%205.87366%2017.4732%2010C17.4732%2014.1263%2014.1263%2017.4732%2010%2017.4732Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M12.242%206.07661C11.6393%205.54826%2010.8437%205.25897%209.99999%205.25897C9.15624%205.25897%208.36071%205.55027%207.75803%206.07661C7.13124%206.62504%206.78571%207.36232%206.78571%208.15183V8.30451C6.78571%208.3929%206.85803%208.46522%206.94642%208.46522H7.91071C7.9991%208.46522%208.07142%208.3929%208.07142%208.30451V8.15183C8.07142%207.26589%208.93727%206.54469%209.99999%206.54469C11.0627%206.54469%2011.9286%207.26589%2011.9286%208.15183C11.9286%208.77661%2011.4866%209.34915%2010.8016%209.61232C10.3757%209.77504%2010.0141%2010.0603%209.7549%2010.434C9.49173%2010.8157%209.35512%2011.2737%209.35512%2011.7378V12.1697C9.35512%2012.2581%209.42745%2012.3304%209.51584%2012.3304H10.4801C10.5685%2012.3304%2010.6408%2012.2581%2010.6408%2012.1697V11.7137C10.6419%2011.5186%2010.7017%2011.3285%2010.8124%2011.1679C10.9231%2011.0074%2011.0797%2010.8839%2011.2616%2010.8137C12.4469%2010.3576%2013.2123%209.31299%2013.2123%208.15183C13.2143%207.36232%2012.8687%206.62504%2012.242%206.07661ZM9.19642%2014.4197C9.19642%2014.6328%209.28108%2014.8372%209.43178%2014.9879C9.58248%2015.1386%209.78687%2015.2233%209.99999%2015.2233C10.2131%2015.2233%2010.4175%2015.1386%2010.5682%2014.9879C10.7189%2014.8372%2010.8036%2014.6328%2010.8036%2014.4197C10.8036%2014.2066%2010.7189%2014.0022%2010.5682%2013.8515C10.4175%2013.7008%2010.2131%2013.6161%209.99999%2013.6161C9.78687%2013.6161%209.58248%2013.7008%209.43178%2013.8515C9.28108%2014.0022%209.19642%2014.2066%209.19642%2014.4197Z'%20fill='%23C9C9E8'/%3e%3c/svg%3e`,Ip=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M15%2018.3333C16.3807%2018.3333%2017.5%2017.214%2017.5%2015.8333C17.5%2014.4526%2016.3807%2013.3333%2015%2013.3333C13.6193%2013.3333%2012.5%2014.4526%2012.5%2015.8333C12.5%2017.214%2013.6193%2018.3333%2015%2018.3333Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M5%2012.5C6.38071%2012.5%207.5%2011.3807%207.5%2010C7.5%208.61929%206.38071%207.5%205%207.5C3.61929%207.5%202.5%208.61929%202.5%2010C2.5%2011.3807%203.61929%2012.5%205%2012.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M7.15833%2011.2584L12.85%2014.575'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M15%206.66669C16.3807%206.66669%2017.5%205.5474%2017.5%204.16669C17.5%202.78598%2016.3807%201.66669%2015%201.66669C13.6193%201.66669%2012.5%202.78598%2012.5%204.16669C12.5%205.5474%2013.6193%206.66669%2015%206.66669Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M12.8417%205.42499L7.15833%208.74165'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Lp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.6667%201.66669H5.00001C4.55798%201.66669%204.13406%201.84228%203.8215%202.15484C3.50894%202.4674%203.33334%202.89133%203.33334%203.33335V16.6667C3.33334%2017.1087%203.50894%2017.5326%203.8215%2017.8452C4.13406%2018.1578%204.55798%2018.3334%205.00001%2018.3334H15C15.442%2018.3334%2015.866%2018.1578%2016.1785%2017.8452C16.4911%2017.5326%2016.6667%2017.1087%2016.6667%2016.6667V6.66669L11.6667%201.66669Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3333%2014.1667H6.66666'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3333%2010.8333H6.66666'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M8.33332%207.5H7.49999H6.66666'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M11.6667%201.66669V6.66669H16.6667'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Rp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_530_15536)'%3e%3cpath%20d='M10%2012.5C11.3807%2012.5%2012.5%2011.3807%2012.5%2010C12.5%208.61929%2011.3807%207.5%2010%207.5C8.61929%207.5%207.5%208.61929%207.5%2010C7.5%2011.3807%208.61929%2012.5%2010%2012.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M16.1667%2012.5C16.0557%2012.7513%2016.0227%2013.0301%2016.0717%2013.3005C16.1207%2013.5708%2016.2496%2013.8202%2016.4417%2014.0166L16.4917%2014.0666C16.6466%2014.2214%2016.7696%2014.4052%2016.8534%2014.6076C16.9373%2014.8099%2016.9805%2015.0268%2016.9805%2015.2458C16.9805%2015.4648%2016.9373%2015.6817%2016.8534%2015.884C16.7696%2016.0864%2016.6466%2016.2702%2016.4917%2016.425C16.3369%2016.5799%2016.1531%2016.7029%2015.9507%2016.7867C15.7484%2016.8706%2015.5315%2016.9138%2015.3125%2016.9138C15.0935%2016.9138%2014.8766%2016.8706%2014.6743%2016.7867C14.4719%2016.7029%2014.2881%2016.5799%2014.1333%2016.425L14.0833%2016.375C13.8869%2016.1829%2013.6375%2016.054%2013.3672%2016.005C13.0968%2015.956%2012.818%2015.989%2012.5667%2016.1C12.3202%2016.2056%2012.11%2016.381%2011.9619%2016.6046C11.8139%2016.8282%2011.7344%2017.0902%2011.7333%2017.3583V17.5C11.7333%2017.942%2011.5577%2018.3659%2011.2452%2018.6785C10.9326%2018.991%2010.5087%2019.1666%2010.0667%2019.1666C9.62465%2019.1666%209.20073%2018.991%208.88817%2018.6785C8.5756%2018.3659%208.40001%2017.942%208.40001%2017.5V17.425C8.39356%2017.1491%208.30427%2016.8816%208.14377%2016.6572C7.98326%2016.4328%207.75896%2016.2619%207.50001%2016.1666C7.24866%2016.0557%206.96985%2016.0226%206.69952%2016.0716C6.42919%2016.1207%206.17974%2016.2495%205.98334%2016.4416L5.93334%2016.4916C5.77855%2016.6466%205.59474%2016.7695%205.39241%2016.8534C5.19008%2016.9373%204.9732%2016.9805%204.75418%2016.9805C4.53515%2016.9805%204.31827%2016.9373%204.11594%2016.8534C3.91361%2016.7695%203.7298%2016.6466%203.57501%2016.4916C3.42005%2016.3369%203.29712%2016.153%203.21324%2015.9507C3.12937%2015.7484%203.0862%2015.5315%203.0862%2015.3125C3.0862%2015.0935%203.12937%2014.8766%203.21324%2014.6742C3.29712%2014.4719%203.42005%2014.2881%203.57501%2014.1333L3.62501%2014.0833C3.81712%2013.8869%203.946%2013.6375%203.99501%2013.3671C4.04403%2013.0968%204.01094%2012.818%203.90001%2012.5666C3.79437%2012.3202%203.61897%2012.11%203.3954%2011.9619C3.17182%2011.8138%202.90983%2011.7344%202.64168%2011.7333H2.50001C2.05798%2011.7333%201.63406%2011.5577%201.3215%2011.2452C1.00894%2010.9326%200.833344%2010.5087%200.833344%2010.0666C0.833344%209.62462%201.00894%209.2007%201.3215%208.88813C1.63406%208.57557%202.05798%208.39998%202.50001%208.39998H2.57501C2.85084%208.39353%203.11835%208.30424%203.34276%208.14374C3.56717%207.98323%203.73811%207.75893%203.83334%207.49998C3.94427%207.24863%203.97736%206.96982%203.92835%206.69949C3.87933%206.42916%203.75046%206.17971%203.55834%205.98331L3.50834%205.93331C3.35338%205.77852%203.23045%205.59471%203.14658%205.39238C3.0627%205.19005%203.01953%204.97317%203.01953%204.75415C3.01953%204.53512%203.0627%204.31824%203.14658%204.11591C3.23045%203.91358%203.35338%203.72977%203.50834%203.57498C3.66313%203.42002%203.84695%203.29709%204.04928%203.21321C4.25161%203.12934%204.46848%203.08617%204.68751%203.08617C4.90654%203.08617%205.12341%203.12934%205.32574%203.21321C5.52807%203.29709%205.71189%203.42002%205.86668%203.57498L5.91668%203.62498C6.11308%203.81709%206.36252%203.94597%206.63285%203.99498C6.90318%204.044%207.182%204.01091%207.43334%203.89998H7.50001C7.74648%203.79434%207.95669%203.61894%208.10475%203.39537C8.25282%203.17179%208.33227%202.9098%208.33334%202.64165V2.49998C8.33334%202.05795%208.50894%201.63403%208.8215%201.32147C9.13406%201.00891%209.55798%200.833313%2010%200.833313C10.442%200.833313%2010.866%201.00891%2011.1785%201.32147C11.4911%201.63403%2011.6667%202.05795%2011.6667%202.49998V2.57498C11.6677%202.84313%2011.7472%203.10513%2011.8953%203.3287C12.0433%203.55228%2012.2535%203.72768%2012.5%203.83331C12.7514%203.94424%2013.0302%203.97733%2013.3005%203.92832C13.5708%203.8793%2013.8203%203.75043%2014.0167%203.55831L14.0667%203.50831C14.2215%203.35335%2014.4053%203.23042%2014.6076%203.14655C14.8099%203.06267%2015.0268%203.0195%2015.2458%203.0195C15.4649%203.0195%2015.6817%203.06267%2015.8841%203.14655C16.0864%203.23042%2016.2702%203.35335%2016.425%203.50831C16.58%203.6631%2016.7029%203.84692%2016.7868%204.04925C16.8706%204.25158%2016.9138%204.46845%2016.9138%204.68748C16.9138%204.90651%2016.8706%205.12338%2016.7868%205.32571C16.7029%205.52804%2016.58%205.71186%2016.425%205.86665L16.375%205.91665C16.1829%206.11305%2016.054%206.36249%2016.005%206.63282C15.956%206.90315%2015.9891%207.18197%2016.1%207.43331V7.49998C16.2056%207.74645%2016.381%207.95666%2016.6046%208.10472C16.8282%208.25279%2017.0902%208.33224%2017.3583%208.33331H17.5C17.942%208.33331%2018.366%208.50891%2018.6785%208.82147C18.9911%209.13403%2019.1667%209.55795%2019.1667%209.99998C19.1667%2010.442%2018.9911%2010.8659%2018.6785%2011.1785C18.366%2011.4911%2017.942%2011.6666%2017.5%2011.6666H17.425C17.1569%2011.6677%2016.8949%2011.7472%2016.6713%2011.8952C16.4477%2012.0433%2016.2723%2012.2535%2016.1667%2012.5V12.5Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_530_15536'%3e%3crect%20width='20'%20height='20'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e`,zp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M1%204.33333C1%203.18274%201.93274%202.25%203.08333%202.25H16.4167C17.5673%202.25%2018.5%203.18274%2018.5%204.33333V16C18.5%2017.1506%2017.5673%2018.0833%2016.4167%2018.0833H3.08333C1.93274%2018.0833%201%2017.1506%201%2016V4.33333ZM3.08333%203.08333C2.39298%203.08333%201.83333%203.64298%201.83333%204.33333V16C1.83333%2016.6904%202.39298%2017.25%203.08333%2017.25H16.4167C17.107%2017.25%2017.6667%2016.6904%2017.6667%2016V4.33333C17.6667%203.64298%2017.107%203.08333%2016.4167%203.08333H3.08333Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'%20stroke-linejoin='round'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M1%204.33333C1%203.18274%201.93274%202.25%203.08333%202.25H16.4167C17.5673%202.25%2018.5%203.18274%2018.5%204.33333V6.83333C18.5%207.06345%2018.3135%207.25%2018.0833%207.25H1.41667C1.18655%207.25%201%207.06345%201%206.83333V4.33333ZM3.08333%203.08333C2.39298%203.08333%201.83333%203.64298%201.83333%204.33333V6.41667H17.6667V4.33333C17.6667%203.64298%2017.107%203.08333%2016.4167%203.08333H3.08333Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'%20stroke-linejoin='round'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M4.33333%201V3.91667H3.5V1H4.33333Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M10.1667%201V3.91667H9.33334V1H10.1667Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M16%201V3.91667H15.1667V1H16Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'/%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M6.53453%2015.2573C6.43104%2015.1538%206.38944%2015.0036%206.42493%2014.8616L7.01419%2012.5046C7.03251%2012.4313%207.07039%2012.3644%207.12379%2012.311L10.0701%209.36472C10.5582%208.87657%2011.3497%208.87657%2011.8378%209.36472L12.4271%209.95398C12.9152%2010.4421%2012.9152%2011.2336%2012.4271%2011.7217L9.48081%2014.668C9.42741%2014.7214%209.3605%2014.7593%209.28724%2014.7776L6.93022%2015.3669C6.78823%2015.4024%206.63802%2015.3608%206.53453%2015.2573ZM8.97316%2013.9972L11.8378%2011.1325C12.0006%2010.9698%2012.0006%2010.706%2011.8378%2010.5432L11.2486%209.95398C11.0859%209.79126%2010.822%209.79126%2010.6593%209.95398L7.79465%2012.8186L7.40181%2014.39L8.97316%2013.9972Z'%20fill='%23C9C9E8'%20stroke='%23C9C9E8'%20stroke-width='0.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Bp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_530_15505)'%3e%3cpath%20d='M18.3333%201.66669L9.16666%2010.8334'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M18.3333%201.66669L12.5%2018.3334L9.16666%2010.8334L1.66666%207.50002L18.3333%201.66669Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_530_15505'%3e%3crect%20width='20'%20height='20'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e`,Vp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_7154_21562)'%3e%3cpath%20d='M4.10156%208.64844H8.24219V9.82031H4.10156V8.64844Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M4.10156%2010.9922H8.24219V12.1641H4.10156V10.9922Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M4.10156%2013.3359H8.24219V14.5078H4.10156V13.3359Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M18.2422%2011.3516H20V0.804688H9.41406V3.96074H4.10156C2.80922%203.96074%201.75781%205.01215%201.75781%206.30449V14.5076C1.75781%2014.9344%201.87301%2015.3345%202.07312%2015.6795H0V16.2654C0%2017.8809%201.31426%2019.1951%202.92969%2019.1951H17.0703C18.6857%2019.1951%2020%2017.8809%2020%2016.2654V15.6795H17.9269C18.127%2015.3345%2018.2422%2014.9344%2018.2422%2014.5076V11.3516ZM10.5859%201.97656H18.8281V10.1797H12.1429L10.5859%2011.7112V1.97656ZM1.27227%2016.8513H7.07031V18.0232H2.92969C2.16578%2018.0232%201.5141%2017.5334%201.27227%2016.8513ZM11.7578%2016.8513V18.0232H8.24219V16.8513H11.7578ZM17.0703%2018.0232H12.9297V16.8513H18.7277C18.4859%2017.5334%2017.8342%2018.0232%2017.0703%2018.0232ZM4.10156%2015.6795C3.45539%2015.6795%202.92969%2015.1538%202.92969%2014.5076V6.30445C2.92969%205.65828%203.45539%205.13258%204.10156%205.13258H9.41406V14.5075L12.6227%2011.3515H17.0703V14.5076C17.0703%2015.1538%2016.5446%2015.6795%2015.8984%2015.6795H4.10156Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M17.6367%208.42184C17.6367%207.64664%2017.3213%206.88887%2016.7714%206.34258L16.4648%206.0368V4.90625C16.4648%203.93699%2015.6763%203.14844%2014.707%203.14844C13.7378%203.14844%2012.9492%203.93699%2012.9492%204.90625V6.03691L12.6437%206.34152C12.0931%206.88793%2011.7773%207.64617%2011.7773%208.42188V9.00781H17.6367V8.42184ZM13.0507%207.8359C13.1386%207.58801%2013.2814%207.35973%2013.4702%207.17234L14.1211%206.52328V4.90625C14.1211%204.58316%2014.3839%204.32031%2014.707%204.32031C15.0301%204.32031%2015.293%204.58316%2015.293%204.90625V6.52313L15.9448%207.17336C16.1331%207.36016%2016.2756%207.5882%2016.3634%207.83594H13.0507V7.8359Z'%20fill='%23C9C9E8'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_7154_21562'%3e%3crect%20width='20'%20height='20'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e`,Hp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_6415_8719)'%3e%3cpath%20d='M10.0391%208.88672H11.0156C11.3392%208.88672%2011.6016%208.62438%2011.6016%208.30078C11.6016%207.97719%2011.3392%207.71484%2011.0156%207.71484H10.0391C9.71547%207.71484%209.45312%207.97719%209.45312%208.30078C9.45312%208.62438%209.71547%208.88672%2010.0391%208.88672Z'%20fill='white'/%3e%3cpath%20d='M7.53906%207.71484H6.5625C6.23891%207.71484%205.97656%207.97719%205.97656%208.30078C5.97656%208.62438%206.23891%208.88672%206.5625%208.88672H7.53906C7.86266%208.88672%208.125%208.62438%208.125%208.30078C8.125%207.97719%207.86266%207.71484%207.53906%207.71484Z'%20fill='white'/%3e%3cpath%20d='M13.5156%208.88672H14.4922C14.8158%208.88672%2015.0781%208.62438%2015.0781%208.30078C15.0781%207.97719%2014.8158%207.71484%2014.4922%207.71484H13.5156C13.192%207.71484%2012.9297%207.97719%2012.9297%208.30078C12.9297%208.62438%2013.192%208.88672%2013.5156%208.88672Z'%20fill='white'/%3e%3cpath%20d='M4.0625%2010.3516H3.08594C2.76234%2010.3516%202.5%2010.6139%202.5%2010.9375C2.5%2011.2611%202.76234%2011.5234%203.08594%2011.5234H4.0625C4.38609%2011.5234%204.64844%2011.2611%204.64844%2010.9375C4.64844%2010.6139%204.38609%2010.3516%204.0625%2010.3516Z'%20fill='white'/%3e%3cpath%20d='M7.53906%2010.3516H6.5625C6.23891%2010.3516%205.97656%2010.6139%205.97656%2010.9375C5.97656%2011.2611%206.23891%2011.5234%206.5625%2011.5234H7.53906C7.86266%2011.5234%208.125%2011.2611%208.125%2010.9375C8.125%2010.6139%207.86266%2010.3516%207.53906%2010.3516Z'%20fill='white'/%3e%3cpath%20d='M11.6016%2010.9375C11.6016%2010.6139%2011.3392%2010.3516%2011.0156%2010.3516H10.0391C9.71547%2010.3516%209.45312%2010.6139%209.45312%2010.9375C9.45312%2011.2611%209.71547%2011.5234%2010.0391%2011.5234H11.0156C11.3392%2011.5234%2011.6016%2011.2611%2011.6016%2010.9375Z'%20fill='white'/%3e%3cpath%20d='M4.0625%2012.9883H3.08594C2.76234%2012.9883%202.5%2013.2506%202.5%2013.5742C2.5%2013.8978%202.76234%2014.1602%203.08594%2014.1602H4.0625C4.38609%2014.1602%204.64844%2013.8978%204.64844%2013.5742C4.64844%2013.2506%204.38609%2012.9883%204.0625%2012.9883Z'%20fill='white'/%3e%3cpath%20d='M7.53906%2012.9883H6.5625C6.23891%2012.9883%205.97656%2013.2506%205.97656%2013.5742C5.97656%2013.8978%206.23891%2014.1602%206.5625%2014.1602H7.53906C7.86266%2014.1602%208.125%2013.8978%208.125%2013.5742C8.125%2013.2506%207.86266%2012.9883%207.53906%2012.9883Z'%20fill='white'/%3e%3cpath%20d='M17.5781%2010.9014V3.32031C17.5781%202.13566%2016.6143%201.17188%2015.4297%201.17188H14.2969V0.585938C14.2969%200.262344%2014.0345%200%2013.7109%200C13.3873%200%2013.125%200.262344%2013.125%200.585938V1.17188H11.0156V0.585938C11.0156%200.262344%2010.7533%200%2010.4297%200C10.1061%200%209.84375%200.262344%209.84375%200.585938V1.17188H7.73438V0.585938C7.73438%200.262344%207.47203%200%207.14844%200C6.82484%200%206.5625%200.262344%206.5625%200.585938V1.17188H4.45312V0.585938C4.45312%200.262344%204.19078%200%203.86719%200C3.54359%200%203.28125%200.262344%203.28125%200.585938V1.17188H2.14844C0.963789%201.17188%200%202.13566%200%203.32031V15.0391C0%2016.0083%200.788555%2016.7969%201.75781%2016.7969H10.5321C11.2184%2018.6643%2013.0147%2020%2015.1172%2020C17.8096%2020%2020%2017.8096%2020%2015.1172C20%2013.3217%2019.0257%2011.7496%2017.5781%2010.9014ZM1.17188%203.32031C1.17188%202.78184%201.60996%202.34375%202.14844%202.34375H3.28125V2.92969C3.28125%203.25328%203.54359%203.51562%203.86719%203.51562C4.19078%203.51562%204.45312%203.25328%204.45312%202.92969V2.34375H6.5625V2.92969C6.5625%203.25328%206.82484%203.51562%207.14844%203.51562C7.47203%203.51562%207.73438%203.25328%207.73438%202.92969V2.34375H9.84375V2.92969C9.84375%203.25328%2010.1061%203.51562%2010.4297%203.51562C10.7533%203.51562%2011.0156%203.25328%2011.0156%202.92969V2.34375H13.125V2.92969C13.125%203.25328%2013.3873%203.51562%2013.7109%203.51562C14.0345%203.51562%2014.2969%203.25328%2014.2969%202.92969V2.34375H15.4297C15.9682%202.34375%2016.4062%202.78184%2016.4062%203.32031V5.07812H1.17188V3.32031ZM1.75781%2015.625C1.43473%2015.625%201.17188%2015.3621%201.17188%2015.0391V6.25H16.4062V10.4074C15.9954%2010.2948%2015.5632%2010.2344%2015.1172%2010.2344C12.4248%2010.2344%2010.2344%2012.4248%2010.2344%2015.1172C10.2344%2015.2886%2010.2434%2015.458%2010.2607%2015.625H1.75781ZM15.1172%2018.8281C13.071%2018.8281%2011.4062%2017.1634%2011.4062%2015.1172C11.4062%2013.071%2013.071%2011.4062%2015.1172%2011.4062C17.1634%2011.4062%2018.8281%2013.071%2018.8281%2015.1172C18.8281%2017.1634%2017.1634%2018.8281%2015.1172%2018.8281Z'%20fill='white'/%3e%3cpath%20d='M17.0703%2014.5312H15.7031V13.1641C15.7031%2012.8405%2015.4408%2012.5781%2015.1172%2012.5781C14.7936%2012.5781%2014.5312%2012.8405%2014.5312%2013.1641V15.1172C14.5312%2015.4408%2014.7936%2015.7031%2015.1172%2015.7031H17.0703C17.3939%2015.7031%2017.6562%2015.4408%2017.6562%2015.1172C17.6562%2014.7936%2017.3939%2014.5312%2017.0703%2014.5312Z'%20fill='white'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_6415_8719'%3e%3crect%20width='20'%20height='20'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e`,Up=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M18.415%208.82125C18.21%208.71313%2017.9606%208.72938%2017.7694%208.86063L11.8056%2012.9894L10.3562%2011.9856C10.1419%2011.8375%209.85875%2011.8375%209.64437%2011.9856L8.19438%2012.9894L3.0275%209.4125L5.32188%208.03563C5.61813%207.85813%205.71375%207.47438%205.53625%207.17813C5.35875%206.88188%204.97438%206.78625%204.67875%206.96375L1.55375%208.83875C1.37%208.94875%201.25%209.17563%201.25%209.375V16.875C1.25%2017.9088%202.09125%2018.75%203.125%2018.75H16.875C17.9088%2018.75%2018.75%2017.9088%2018.75%2016.875V9.375C18.75%209.1425%2018.6206%208.92938%2018.415%208.82125ZM2.51%2016.925C2.50875%2016.9075%202.5%2016.8925%202.5%2016.875V10.5681L7.09625%2013.75L2.51%2016.925ZM3.87625%2017.5L10%2013.26L16.1244%2017.5H3.87625ZM17.5%2016.875C17.5%2016.8925%2017.4912%2016.9075%2017.49%2016.925L12.9037%2013.75L17.5%2010.5681V16.875Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M13.3644%208.7025C13.5975%208.60562%2013.75%208.3775%2013.75%208.125V2.5C13.75%202.2475%2013.5975%202.01937%2013.3644%201.9225C13.13%201.825%2012.8619%201.87937%2012.6831%202.05812C11.6162%203.125%209.95937%203.125%208.75%203.125H7.8125C6.60625%203.125%205.625%204.10625%205.625%205.3125C5.625%206.44875%206.49937%207.37437%207.60875%207.47937L8.1375%2010.1225C8.20438%2010.4587%208.53187%2010.6806%208.87312%2010.6125C9.21187%2010.545%209.43125%2010.2156%209.36312%209.87687L8.8875%207.5C10.0831%207.50125%2011.655%207.53812%2012.6831%208.56625C12.8619%208.74562%2013.13%208.79937%2013.3644%208.7025ZM8.125%206.25H7.8125C7.29562%206.25%206.875%205.82937%206.875%205.3125C6.875%204.79562%207.29562%204.375%207.8125%204.375H8.125V6.25ZM12.5%206.905C11.4719%206.3725%2010.3263%206.27437%209.375%206.25562V4.36937C10.3263%204.35062%2011.4719%204.2525%2012.5%203.72V6.905Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M16.25%204.6875H17.5C17.845%204.6875%2018.125%204.9675%2018.125%205.3125C18.125%205.6575%2017.845%205.9375%2017.5%205.9375H16.25C15.905%205.9375%2015.625%205.6575%2015.625%205.3125C15.625%204.9675%2015.905%204.6875%2016.25%204.6875Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M17.2488%202.1875C17.4213%202.48625%2017.3188%202.86875%2017.02%203.04125L15.9375%203.66625C15.6413%203.8375%2015.2575%203.73875%2015.0838%203.4375C14.9113%203.13875%2015.0138%202.75625%2015.3125%202.58375L16.395%201.95875C16.6931%201.78562%2017.0763%201.88812%2017.2488%202.1875Z'%20fill='%23C9C9E8'/%3e%3cpath%20d='M15.0838%207.1875C15.2563%206.88813%2015.6388%206.78562%2015.9375%206.95875L17.02%207.58375C17.3194%207.75625%2017.4213%208.13875%2017.2488%208.4375C17.075%208.73813%2016.6913%208.8375%2016.395%208.66625L15.3125%208.04125C15.0132%207.86875%2014.9113%207.48625%2015.0838%207.1875Z'%20fill='%23C9C9E8'/%3e%3c/svg%3e`,Wp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M20%204.35092C20%203.33607%2019.1743%202.51041%2018.1595%202.51041H1.84052C0.825863%202.51045%200.000351564%203.33572%200%204.35123V4.35155V15.6484C0%2016.676%200.834066%2017.4896%201.84114%2017.4896H18.1588C19.1863%2017.4896%2020%2016.6555%2020%2015.6484V4.35155C20%204.35147%2020%204.35139%2020%204.35131C20%204.35119%2020%204.35108%2020%204.35092ZM1.84052%203.68233H18.1595C18.5282%203.68233%2018.8281%203.98229%2018.8281%204.3519C18.8281%204.54831%2018.7305%204.73061%2018.5668%204.83967L10.3713%2010.3036C10.1458%2010.454%209.8543%2010.454%209.62875%2010.3036C9.62875%2010.3036%201.43301%204.83956%201.43317%204.83967C1.43321%204.83971%201.43305%204.8396%201.43301%204.83956C1.2695%204.73061%201.17188%204.54831%201.17188%204.35092C1.17188%203.98225%201.47184%203.68233%201.84052%203.68233ZM18.1589%2016.3177H1.84114C1.47633%2016.3177%201.17188%2016.0227%201.17188%2015.6484V6.07394L8.97867%2011.2786C9.2889%2011.4854%209.64445%2011.5888%2010%2011.5888C10.3556%2011.5888%2010.7112%2011.4854%2011.0214%2011.2786L18.8281%206.07394V15.6485C18.8281%2016.0132%2018.5332%2016.3177%2018.1589%2016.3177Z'%20fill='%23586888'/%3e%3c/svg%3e`,Gp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M11.6666%201.66666H4.99992C4.55789%201.66666%204.13397%201.84225%203.82141%202.15481C3.50885%202.46737%203.33325%202.8913%203.33325%203.33332V16.6667C3.33325%2017.1087%203.50885%2017.5326%203.82141%2017.8452C4.13397%2018.1577%204.55789%2018.3333%204.99992%2018.3333H14.9999C15.4419%2018.3333%2015.8659%2018.1577%2016.1784%2017.8452C16.491%2017.5326%2016.6666%2017.1087%2016.6666%2016.6667V6.66666L11.6666%201.66666Z'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3334%2014.1667H6.66675'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M13.3334%2010.8333H6.66675'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M8.33341%207.5H7.50008H6.66675'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3cpath%20d='M11.6667%201.66666V6.66666H16.6667'%20stroke='%23C9C9E8'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e`,Kp=`data:image/svg+xml,%3csvg%20width='20'%20height='20'%20viewBox='0%200%2020%2020'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M15.3077%2011.0205C15.6349%2010.7536%2016.1175%2010.7725%2016.4226%2011.0775L19.1309%2013.7858C19.4562%2014.1112%2019.4562%2014.6387%2019.1309%2014.9641C18.8055%2015.2895%2018.278%2015.2895%2017.9526%2014.9641L16.6667%2013.6784V18.3333C16.6667%2018.7935%2016.2936%2019.1666%2015.8334%2019.1666C15.3733%2019.1666%2015.0002%2018.7934%2015.0001%2018.3333V13.6784L13.7142%2014.9641C13.3888%2015.2895%2012.8613%2015.2895%2012.5359%2014.9641C12.2107%2014.6387%2012.2106%2014.1111%2012.5359%2013.7858L15.2442%2011.0775L15.3077%2011.0205ZM13.3334%203.33331C14.2539%203.33331%2015.0001%204.0795%2015.0001%204.99998V9.16665H13.3334V8.33331H3.33341V11.6666H10.0001V13.3333H3.33341C2.41294%2013.3333%201.66675%2012.5871%201.66675%2011.6666V4.99998C1.66675%204.0795%202.41294%203.33331%203.33341%203.33331H13.3334ZM3.33341%206.24998H13.3334V4.99998H3.33341V6.24998Z'%20fill='%23C9C9E8'/%3e%3c/svg%3e`;function qp(e){return!e||typeof e!=`string`?`User`:e.split(` `).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function Jp(e){let t=(e||`User`).split(` `).filter(Boolean);return`${t[0]?.charAt(0)||`U`}${t.length>1?t.at(-1)?.charAt(0):``}`.toUpperCase()}function Yp(e){let t=(e||`User`).charAt(0).toUpperCase(),n=JSON.parse(localStorage.getItem(`colorMap`)||`{}`);if(n[t])return n[t];let r=[`#0053a5`,`#1677ff`,`#15803d`,`#f97316`,`#6366f1`,`#8b5cf6`],i=r[t.charCodeAt(0)%r.length];return localStorage.setItem(`colorMap`,JSON.stringify({...n,[t]:i})),i}function Xp({leftOffset:e}){let r=(0,h.useNavigate)(),i=(0,h.useLocation)(),a=localStorage.getItem(`companyName`)||`LMS`,o=localStorage.getItem(`userName`)||localStorage.getItem(`preferred_Username`)||`User`,s=localStorage.getItem(`preferred_Username`)||o,c=localStorage.getItem(`roleId`)||``,l=qp(o),u=Jp(l);function m(){t.g(),r(`/login`,{replace:!0})}let g=[{key:`profile-name`,label:(0,p.jsxs)(`div`,{className:`app-layout-profile-summary`,children:[(0,p.jsx)(d.Avatar,{size:42,style:{backgroundColor:Yp(l)},children:u}),(0,p.jsxs)(`div`,{className:`app-layout-profile-copy`,children:[(0,p.jsx)(n.ci,{variant:`body-strong`,truncate:!0,className:`app-layout-profile-name`,children:l}),c&&(0,p.jsx)(n.ci,{variant:`caption`,color:`secondary`,className:`app-layout-profile-role`,children:c})]})]}),disabled:!0},{type:`divider`},{key:`dashboard`,label:(0,p.jsxs)(h.Link,{to:`/dashboard`,className:`app-layout-menu-link`,children:[(0,p.jsx)(f.AppstoreOutlined,{}),`Dashboard`]})},{key:`my-profile`,label:(0,p.jsxs)(h.Link,{to:`/my-profile`,className:`app-layout-menu-link`,children:[(0,p.jsx)(f.UserOutlined,{}),`My Profile`]})},{type:`divider`},{key:`logout`,label:(0,p.jsxs)(`span`,{className:`app-layout-menu-link app-layout-menu-danger`,children:[(0,p.jsx)(f.LogoutOutlined,{}),`Logout`]}),onClick:m}];return(0,p.jsxs)(`header`,{className:`app-layout-header`,style:{left:e},children:[(0,p.jsx)(`div`,{className:`app-layout-company`,children:(0,p.jsx)(n.ci,{variant:`body-strong`,truncate:!0,className:`app-layout-company-name`,children:a})}),(0,p.jsxs)(`div`,{className:`app-layout-header-actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Inbox`,children:(0,p.jsx)(h.Link,{to:`/inbox`,className:i.pathname===`/inbox`?`app-layout-icon-btn is-active`:`app-layout-icon-btn`,"aria-label":`Inbox`,children:(0,p.jsx)(`img`,{src:Wp,alt:``,"aria-hidden":`true`,className:`app-layout-icon-img`})})}),(0,p.jsx)(`div`,{className:`app-layout-header-divider`}),(0,p.jsxs)(`div`,{className:`app-layout-user`,children:[(0,p.jsx)(d.Avatar,{size:30,style:{backgroundColor:Yp(l)},children:u}),(0,p.jsx)(n.ci,{variant:`label`,truncate:!0,className:`app-layout-user-name`,children:s}),(0,p.jsx)(d.Dropdown,{menu:{items:g},trigger:[`click`],placement:`bottomRight`,overlayClassName:`app-layout-user-dropdown`,children:(0,p.jsx)(`button`,{type:`button`,className:`app-layout-dropdown-btn`,"aria-label":`Open user menu`,children:(0,p.jsx)(f.DownOutlined,{})})})]})]})]})}var{Sider:Zp}=d.Layout,Qp={Dashboard:Np,Jobs:Ap,Candidates:jp,Submissions:Bp,Network:Ip,ClientManagement:Mp,Clients:Mp,clients:Mp,EmployerManagement:Pp,Employers:Pp,employers:Pp,ReferralManagement:Pp,Referral:Pp,Referrals:Pp,referrals:Pp,Scheduler:zp,Admin:Op,Reports:Lp,Settings:Rp,Help:Fp,onboarding:Vp,Onboarding:Vp,assignments:kp,Assignments:kp,assignment:kp,Assignment:kp,timesheet:Hp,Timesheet:Hp,timesheets:Hp,Timesheets:Hp,billing:Gp,Billing:Gp,payroll:Kp,Payroll:Kp,campaign:Up,Campaign:Up,campaigns:Up,Campaigns:Up,addTestCase:Lp,viewTestCase:zp,manageModules:Rp,bulkUpload:f.UploadOutlined,"bulk-upload":f.UploadOutlined},$p={AppstoreOutlined:f.AppstoreOutlined,BankOutlined:f.BankOutlined,CalendarOutlined:f.CalendarOutlined,DashboardOutlined:f.DashboardOutlined,FileProtectOutlined:f.FileProtectOutlined,FileTextOutlined:f.FileTextOutlined,FolderOpenOutlined:f.FolderOpenOutlined,SettingOutlined:f.SettingOutlined,TeamOutlined:f.TeamOutlined,UploadOutlined:f.UploadOutlined,UsergroupAddOutlined:f.UsergroupAddOutlined,UserOutlined:f.UserOutlined};function em(e){return String(e??``).trim().replace(/[\s_-]+/g,``).toLowerCase()}var tm=Object.entries({...Qp,...$p}).reduce((e,[t,n])=>(e[em(t)]=n,e),{});function nm(e,t){let n=em(`${e} ${t}`);return n.includes(`dashboard`)?Np:n.includes(`client`)?Mp:n.includes(`employer`)||n.includes(`referral`)?Pp:n.includes(`candidate`)?jp:n.includes(`submission`)?Bp:n.includes(`onboarding`)?Vp:n.includes(`assignment`)?kp:n.includes(`timesheet`)?Hp:n.includes(`billing`)?Gp:n.includes(`payroll`)?Kp:n.includes(`campaign`)?Up:n.includes(`job`)?Ap:n.includes(`admin`)||n.includes(`config`)?Op:n.includes(`batch`)?f.FolderOpenOutlined:n.includes(`pomsa`)||n.includes(`msa`)?f.FileProtectOutlined:n.includes(`user`)?f.UserOutlined:f.AppstoreOutlined}function rm(e,t,n){let r=String(e??``).trim();return/^(https?:\/\/|data:image\/|\/)/i.test(r)?r:tm[em(r)]??tm[em(t)]??tm[em(n)]??nm(t,n)}function im(e){let t=localStorage.getItem(e);if(!t||t===`undefined`||t===`null`||t.trim()===``)return[];try{let e=JSON.parse(t);return Array.isArray(e)?e:Array.isArray(e?.menu)?e.menu:Array.isArray(e?.menus?.menu)?e.menus.menu:[]}catch(t){return console.error(`Error parsing ${e}:`,t),[]}}function am(e){let t=e.replace(/^\/+/,``);if(!t)return[`dashboard`];let n=t.split(`/`);return[t,n[0],n.at(-1)].filter(Boolean)}function om({icon:e,itemKey:t,label:n}){let r=rm(e,t,n);return typeof r==`string`?(0,p.jsx)(`img`,{src:r,alt:``,className:`app-sidebar-menu-icon`,"aria-hidden":`true`}):(0,p.jsx)(r,{className:`app-sidebar-menu-icon app-sidebar-menu-icon--antd`,"aria-hidden":`true`})}function sm(e){return e.map(e=>({key:e.key,icon:(0,p.jsx)(om,{icon:e.icon,itemKey:e.key,label:e.label}),label:e.label,disabled:e.status===`inactive`,children:Array.isArray(e.children)?sm(e.children):void 0}))}function cm(e){let t;try{t=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`)}catch{return e}let n=Object.entries(t).reduce((e,[t,n])=>({...e,[String(t).trim().toLowerCase()]:n}),{}),r=Object.keys(n),i=e=>n[e]??n[r.find(t=>t===`${e}s`||`${t}s`===e)??``];return e.flatMap(e=>{let t=dm([e.key,e.label].map(e=>String(e??``).trim().toLowerCase()).map(i).find(Boolean),`view`);if(t!=null&&!fm(t))return[];let n=Array.isArray(e.children)?cm(e.children):void 0;return[{...e,children:n}]})}function lm(e){return new Set(e.flatMap(e=>[String(e?.key??``).trim().toLowerCase(),...Array.isArray(e?.children)?[...lm(e.children)]:[]]).filter(Boolean))}function um(e){return e&&typeof e==`object`&&Object.prototype.hasOwnProperty.call(e,`value`)?e.value:e}function dm(e,t){if(!e||typeof e!=`object`)return;if(Object.prototype.hasOwnProperty.call(e,t))return e[t];let n=String(t).trim().toLowerCase(),r=Object.keys(e).find(e=>String(e).trim().toLowerCase()===n);return r?e[r]:void 0}function fm(e){let t=um(e);return t===!0||t===1||t===`1`}function pm(e){return String(e).split(/[\s_\-/]+/).filter(Boolean).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)}function mm(e){let t;try{t=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`)}catch{return e}if(!t||typeof t!=`object`||Array.isArray(t))return e;let n=lm(e),r=Object.entries(t).flatMap(([e,t])=>{let r=String(e).trim().toLowerCase();return!r||r.includes(`/`)||n.has(r)||!fm(dm(t,`view`))?[]:(n.add(r),[{key:r,icon:r,label:pm(r),status:`active`}])});return[...e,...r]}function hm(e){let t=e.some(e=>e.key===`addTestCase`),n=e.some(e=>e.key===`bulk-upload`);if(!t||n)return e;let r=[...e],i=r.findIndex(e=>e.key===`manageModules`);return r.splice(i>=0?i+1:r.length,0,{key:`bulk-upload`,icon:`bulk-upload`,label:`Bulk upload`,status:`active`}),r}function gm(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.client??e?.clients;return!t||typeof t!=`object`?!1:fm(dm(t,`view`))}catch{return!1}}function _m(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.employers??e?.employer;return!t||typeof t!=`object`?!1:fm(dm(t,`view`))}catch{return!1}}function vm(e){if(e.some(e=>e.key===`clients`||e.key===`client`)||!gm())return e;let t=[...e],n=t.findIndex(e=>e.key===`jobs`);return t.splice(n>=0?n:t.length,0,{key:`clients`,icon:`ClientManagement`,label:`Client Management`,status:`active`}),t}function ym(e){let t=e.some(e=>e.key===`employers`||e.key===`employer`),n=e.some(e=>e.key===`clients`||e.key===`client`),r=_m()||n||gm();if(t||!r)return e;let i=[...e],a=i.findIndex(e=>e.key===`jobs`);return i.splice(a>=0?a:i.length,0,{key:`employers`,icon:`EmployerManagement`,label:`Employer Management`,status:`active`}),i}function bm(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.referrals??e?.referral;return!t||typeof t!=`object`?!1:fm(dm(t,`view`))}catch{return!1}}function xm(e){let t=e.some(e=>e.key===`referrals`||e.key===`referral`),n=e.some(e=>e.key===`employers`||e.key===`employer`),r=bm()||_m()||n||gm();if(t||!r)return e;let i=[...e],a=i.findIndex(e=>e.key===`employers`||e.key===`employer`),o=i.findIndex(e=>e.key===`jobs`),s=a>=0?a+1:o>=0?o:i.length;return i.splice(s,0,{key:`referrals`,icon:`ReferralManagement`,label:`Referral Management`,status:`active`}),i}function Sm(e){try{let t=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`)?.[e];return!!t&&fm(dm(t,`view`))}catch{return!1}}function Cm(e){let t=[...e],n=t.findIndex(e=>e.key===`assignments`),r=n>=0?n+1:t.length;for(let[e,n]of[[`billing`,`Billing`],[`payroll`,`Payroll`]])!t.some(t=>t.key===e)&&Sm(e)&&(t.splice(r,0,{key:e,icon:e,label:n,status:`active`}),r+=1);return t}function wm(e){return e.filter(e=>{let t=String(e.key??``).toLowerCase(),n=String(e.label??``).toLowerCase();return!t.includes(`vendor`)&&n!==`vendors`}).map(e=>Array.isArray(e.children)?{...e,children:wm(e.children)}:e)}function Tm(){return[localStorage.getItem(`menu`)??``,localStorage.getItem(`menuPermission`)??``,localStorage.getItem(`roleId`)??``,localStorage.getItem(`userId`)??``].join(`::`)}function Em({collapsed:e,onToggle:t}){let n=(0,h.useNavigate)(),r=(0,h.useLocation)(),[i,a]=(0,u.useState)([]),[o,s]=(0,u.useState)(()=>Tm()),c=(0,u.useMemo)(()=>am(r.pathname),[r.pathname]);(0,u.useEffect)(()=>{let e=()=>s(Tm());return window.addEventListener(`auth:login`,e),window.addEventListener(`auth:logout`,e),window.addEventListener(`menu:updated`,e),window.addEventListener(`storage`,e),()=>{window.removeEventListener(`auth:login`,e),window.removeEventListener(`auth:logout`,e),window.removeEventListener(`menu:updated`,e),window.removeEventListener(`storage`,e)}},[]),(0,u.useEffect)(()=>{c.length>0&&localStorage.setItem(`activeKey`,c[0])},[c]);let l=(0,u.useMemo)(()=>sm(cm(mm(Cm(hm(xm(ym(vm(wm(im(`menu`)))))))))),[o]);function f(){e||a([]),t()}function m({key:e}){n(`/${e}`)}return(0,p.jsx)(Zp,{trigger:null,collapsible:!0,collapsed:e,width:200,collapsedWidth:60,className:`app-sidebar`,children:(0,p.jsxs)(`div`,{className:`app-sidebar-panel`,children:[(0,p.jsx)(`div`,{className:`app-sidebar-brand`,children:(0,p.jsxs)(`div`,{className:`app-sidebar-logo`,children:[(0,p.jsx)(`img`,{src:Tp,alt:``,className:`app-sidebar-logo-icon`}),(0,p.jsx)(`img`,{src:Ep,alt:`Zinnext`,className:`app-sidebar-logo-text`})]})}),(0,p.jsx)(`button`,{type:`button`,className:`app-sidebar-toggle`,onClick:f,"aria-label":e?`Expand sidebar`:`Collapse sidebar`,children:(0,p.jsx)(`img`,{src:Dp,alt:``,"aria-hidden":`true`})}),(0,p.jsx)(`div`,{className:`app-sidebar-body`,children:(0,p.jsx)(d.Menu,{mode:`inline`,theme:`dark`,selectedKeys:c,openKeys:e?[]:i,items:l,onClick:m,onOpenChange:a,className:`app-sidebar-menu`})})]})})}var Dm=`You're not logged in`,Om=`You haven't logged into this session. Please login to access the data.`;function km(){try{return!!t.u()}catch{return!1}}function Am({children:e,title:t=Dm,message:n=Om,loginPath:r=`/login`,loginLabel:i=`Go to Login`,onLogin:a,fallback:o}){let[s,c]=(0,u.useState)(km);return(0,u.useEffect)(()=>{let e=()=>c(km());return window.addEventListener(`auth:login`,e),window.addEventListener(`auth:logout`,e),window.addEventListener(`storage`,e),window.addEventListener(`focus`,e),()=>{window.removeEventListener(`auth:login`,e),window.removeEventListener(`auth:logout`,e),window.removeEventListener(`storage`,e),window.removeEventListener(`focus`,e)}},[]),s?e:o===void 0?(0,p.jsx)(`div`,{className:`ct-auth-guard`,children:(0,p.jsx)(`div`,{className:`ct-auth-guard__card`,children:(0,p.jsx)(d.Result,{status:`403`,icon:(0,p.jsx)(f.LockOutlined,{className:`ct-auth-guard__icon`}),title:t,subTitle:n,extra:(0,p.jsx)(d.Button,{type:`primary`,size:`large`,onClick:()=>{if(typeof a==`function`){a();return}typeof window<`u`&&window.location.assign(r)},children:i})})})}):o}Am.propTypes={children:g.default.node,title:g.default.node,message:g.default.node,loginPath:g.default.string,loginLabel:g.default.node,onLogin:g.default.func,fallback:g.default.node};var jm={"candidate-onboarding":`onboarding`,"candidate-assignment":`assignments`,candidate:`candidates`,job:`jobs`,submission:`submissions`,client:`clients`,employer:`employers`,referral:`referrals`,timesheet:`timesheets`},Mm=new Set([``,`dashboard`,`my-profile`,`profile`,`viewall-sticky`,`select-project`,`addtestcase`,`managemodules`,`viewtestcase`,`test-cases`,`zinnext-home`,`lms-home`,`test`]);function Nm(e){return String(e??``).split(`?`)[0].split(`#`)[0].replace(/^\/+/,``).split(`/`)[0].trim().toLowerCase()}function Pm(e){let t=Nm(e);if(!t||Mm.has(t))return``;let n=t.endsWith(`-create`)?t.slice(0,-7):t;return jm[n]??n}function Fm({children:e}){let t=(0,h.useLocation)(),r=(0,h.useNavigate)(),i=Pm(t.pathname),{canView:a}=n.Rt(i);if(i&&!a){let e=i.replace(/[-_]+/g,` `).replace(/\b\w/g,e=>e.toUpperCase());return(0,p.jsx)(`div`,{className:`ct-auth-guard`,children:(0,p.jsx)(`div`,{className:`ct-auth-guard__card`,children:(0,p.jsx)(d.Result,{status:`403`,icon:(0,p.jsx)(f.LockOutlined,{className:`ct-auth-guard__icon`}),title:`Access Denied`,subTitle:`You do not have View access to the ${e} module. Please contact your administrator if you need access.`,extra:(0,p.jsx)(d.Button,{type:`primary`,size:`large`,onClick:()=>r(`/dashboard`),children:`Go to Dashboard`})})})})}return e}var Im=60;function Lm({children:e}){let[t,r]=(0,u.useState)(!0);return(0,p.jsx)(n.Bt,{children:(0,p.jsxs)(`div`,{className:`app-layout-shell`,children:[(0,p.jsx)(Em,{collapsed:t,onToggle:()=>r(e=>!e)}),(0,p.jsx)(Xp,{leftOffset:60}),(0,p.jsx)(`main`,{className:`app-layout-main`,style:{marginLeft:60,paddingTop:Im},children:(0,p.jsx)(`div`,{className:`app-layout-content`,children:(0,p.jsx)(Am,{children:(0,p.jsx)(Fm,{children:e??(0,p.jsx)(h.Outlet,{})})})})})]})})}function Rm({onLogin:e,defaultRedirectPath:r=`/`}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(``),c=(0,h.useNavigate)(),l=(0,h.useLocation)(),m=l.state?.from?.pathname||r,g=new URLSearchParams(l.search).get(`session_expired`)===`1`;async function _(n){s(``),a(!0);try{let r=await t.h({email:n.email,user_pwd:n.user_pwd});if(e?.(r),t.m()){c(`/select-project`,{replace:!0});return}c(m,{replace:!0})}catch(e){s(e.message||`Unable to login. Please check your credentials.`)}finally{a(!1)}}return(0,p.jsxs)(`div`,{className:`auth-login-page`,children:[(0,p.jsx)(`section`,{className:`auth-login-bg`,style:{background:n.li.brand},children:(0,p.jsxs)(`div`,{className:`auth-login-static-section`,children:[(0,p.jsx)(`div`,{children:(0,p.jsx)(`img`,{src:Cp,alt:``,className:`auth-login-img-one`})}),(0,p.jsx)(`div`,{className:`auth-login-hero-wrap`,children:(0,p.jsx)(`img`,{src:wp,alt:``,className:`auth-login-img-two`})}),(0,p.jsx)(n.ci,{as:`p`,variant:`body`,color:`inverse`,size:`2xl`,weight:`regular`,align:`right`,className:`auth-login-tagline`,children:`Best in class processes in a box.`})]})}),(0,p.jsx)(`section`,{className:`auth-login-form-layout`,children:(0,p.jsx)(`div`,{className:`auth-login-form-container`,children:(0,p.jsxs)(`div`,{className:`auth-login-form-shell`,children:[g&&(0,p.jsx)(`div`,{className:`auth-login-session-expired-container`,children:(0,p.jsx)(`div`,{className:`auth-login-slide-in`,children:(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,icon:(0,p.jsx)(f.ExclamationCircleFilled,{style:{fontSize:30,color:`#FFC107`}}),message:(0,p.jsxs)(`div`,{className:`auth-login-alert-message-container`,children:[(0,p.jsx)(d.Divider,{className:`auth-login-alert-divider`,type:`vertical`}),(0,p.jsx)(`div`,{className:`auth-login-alert-text`,children:`Session expired. Please log in again.`})]}),className:`auth-login-session-expired-alert`})})}),(0,p.jsxs)(`div`,{className:`auth-login-brand`,children:[(0,p.jsx)(`img`,{src:`/favicon.ico`,alt:``,className:`auth-login-logo`}),(0,p.jsx)(n.ci,{variant:`h3`,color:`primary`,weight:`bold`,className:`auth-login-brand-text`,children:`Zinnext`})]}),(0,p.jsx)(`div`,{className:`auth-login-body`,children:(0,p.jsxs)(`div`,{className:`auth-login-sign-body`,children:[(0,p.jsx)(n.ci,{variant:`h2`,color:`primary`,weight:`bold`,align:`center`,className:`auth-login-title`,children:`Sign in`}),(0,p.jsx)(`div`,{className:`auth-login-form-con`,children:(0,p.jsxs)(d.Form,{className:`v1-form auth-login-form`,layout:`vertical`,requiredMark:!1,onFinish:_,autoComplete:`off`,children:[(0,p.jsx)(d.Form.Item,{label:`Email`,name:`email`,rules:[{type:`email`,required:!0,message:`Enter valid email.`}],children:(0,p.jsx)(d.Input,{size:`large`,placeholder:`Your work email`,autoComplete:`email`})}),(0,p.jsx)(d.Form.Item,{label:`Password`,name:`user_pwd`,rules:[{required:!0,message:`Mandatory field.`}],children:(0,p.jsx)(d.Input.Password,{size:`large`,placeholder:`Enter password`,autoComplete:`current-password`})}),(0,p.jsx)(d.Form.Item,{className:`auth-login-forgot-row`,children:(0,p.jsx)(d.Button,{type:`link`,className:`auth-login-forgot`,htmlType:`button`,children:`Forgot Password?`})}),o&&(0,p.jsx)(d.Form.Item,{children:(0,p.jsx)(n.ci,{color:`danger`,variant:`body`,children:o})}),(0,p.jsx)(d.Button,{className:`auth-login-submit`,block:!0,size:`large`,type:`primary`,htmlType:`submit`,loading:i,id:`znxt-signin`,children:`Sign in`}),(0,p.jsx)(d.Form.Item,{className:`auth-login-divider-row`,children:(0,p.jsx)(d.Divider,{children:`Or`})}),(0,p.jsxs)(n.ci,{as:`p`,variant:`body`,color:`secondary`,align:`center`,className:`auth-login-signup-text`,children:[`Not registered yet?`,` `,(0,p.jsx)(d.Button,{type:`link`,htmlType:`button`,className:`auth-login-signup`,id:`znxt-signup`,children:`Sign up`})]})]})})]})})]})})})]})}var zm=e.t({addCTFlow:()=>sh,addCTModule:()=>th,addCTSubmodule:()=>ih,addLmsFlow:()=>Zm,addTestFlow:()=>qm,addTestingOption:()=>Gm,bulkInsertTestSteps:()=>Xm,deleteCTFlow:()=>dh,getActionFieldRules:()=>Km,getCTFlow:()=>ch,getCTFlows:()=>oh,getCTModules:()=>eh,getCTNextStep:()=>lh,getCTProjects:()=>$m,getCTSubmodules:()=>rh,getLmsFlows:()=>Qm,getTestFlows:()=>Jm,getTestingOptions:()=>Wm,setCTModuleStatus:()=>nh,setCTSubmoduleStatus:()=>ah,updateCTFlow:()=>uh,validateTestSteps:()=>Ym});async function Bm(e){return t.t(t.S,e)}async function Vm(e,n){let r=await t.o(t.S,e,{method:`POST`,body:JSON.stringify(n)});return r.data??r}async function Hm(e,n){let r=await t.o(t.S,e,{method:`PUT`,body:JSON.stringify(n)});return r.data??r}async function Um(e){let n=await t.o(t.S,e,{method:`DELETE`});return n.data??n}async function Wm(e){return Bm(`/testing-modules?type=${encodeURIComponent(e)}`)}async function Gm({name:e,type:t}){return Vm(`/testing-modules`,{name:e,type:t})}async function Km(){return Bm(`/test-action-field-rules`)}async function qm(e){return Vm(`/test-flows`,e)}async function Jm({limit:e=10,offset:t=0,search:n=``,module:r=``,keyword:i=``,tags:a=``,active:o}={}){let s=new URLSearchParams({limit:String(e),offset:String(t)});return n&&s.append(`search`,n),r&&s.append(`module`,r),i&&s.append(`keyword`,i),a&&s.append(`tags`,a),o!=null&&o!==``&&s.append(`active`,String(o)),Bm(`/test-flows?${s.toString()}`)}async function Ym(e){return Vm(`/test-steps/validate`,e)}async function Xm(e){return Vm(`/test-steps/bulk-insert`,e)}async function Zm(e){return Vm(`/lms-flows`,e)}async function Qm({limit:e=10,offset:t=0,search:n=``,module:r=``,keyword:i=``,tags:a=``,active:o}={}){let s=new URLSearchParams({limit:String(e),offset:String(t)});return n&&s.append(`search`,n),r&&s.append(`module`,r),i&&s.append(`keyword`,i),a&&s.append(`tags`,a),o!=null&&o!==``&&s.append(`active`,String(o)),Bm(`/lms-flows?${s.toString()}`)}async function $m({activeOnly:e=!1}={}){let t=new URLSearchParams;e&&t.append(`active`,`1`);let n=t.toString();return Bm(`/ct/projects${n?`?${n}`:``}`)}async function eh({project:e=``,activeOnly:t=!1}={}){let n=new URLSearchParams;e&&n.append(`project`,e),t&&n.append(`active`,`1`);let r=n.toString();return Bm(`/ct/modules${r?`?${r}`:``}`)}async function th({project:e,modulename:t}){return Vm(`/ct/modules`,{project:e,modulename:t})}async function nh(e,t){return Hm(`/ct/modules/status`,{id:e,active:t})}async function rh({project:e=``,module:t=``,activeOnly:n=!1}={}){let r=new URLSearchParams;e&&r.append(`project`,e),t&&r.append(`module`,t),n&&r.append(`active`,`1`);let i=r.toString();return Bm(`/ct/submodules${i?`?${i}`:``}`)}async function ih({project:e,modulename:t,submodulename:n}){return Vm(`/ct/submodules`,{project:e,modulename:t,submodulename:n})}async function ah(e,t){return Hm(`/ct/submodules/status`,{id:e,active:t})}async function oh({project:e=``,module:t=``,submodule:n=``,product_parent_ID:r=``,module_parent_ID:i=``,submodule_parent_ID:a=``,actions:o=``,search:s=``,active:c,limit:l=1e3,offset:u=0}={}){let d=new URLSearchParams({limit:String(l),offset:String(u)}),f=r||e,p=i||t,m=a||n;return f&&d.append(`product_parent_ID`,f),p&&d.append(`module_parent_ID`,p),m&&d.append(`submodule_parent_ID`,m),o&&d.append(`actions`,o),s&&d.append(`search`,s),c!=null&&c!==``&&d.append(`active`,String(c)),Bm(`/ct/flows?${d.toString()}`)}async function sh(e){return Vm(`/ct/flows`,e)}async function ch(e){return Bm(`/ct/flows/${encodeURIComponent(e)}`)}async function lh({project:e,module:t,submodule:n,product_parent_ID:r,module_parent_ID:i,submodule_parent_ID:a}){return Bm(`/ct/flows/next-step?${new URLSearchParams({product_parent_ID:String(r||e),module_parent_ID:String(i||t),submodule_parent_ID:String(a||n)}).toString()}`)}async function uh(e,t){return Hm(`/ct/flows/${encodeURIComponent(e)}`,t)}async function dh(e){return Um(`/ct/flows/${encodeURIComponent(e)}`)}var fh=`zinnext`;function ph(){let[e]=d.Form.useForm(),r=(0,h.useNavigate)(),[i,a]=(0,u.useState)([]),[o,s]=(0,u.useState)(!1),[c,l]=(0,u.useState)(``);(0,u.useEffect)(()=>{let n=!0;return Promise.resolve().then(()=>$m({activeOnly:!0})).then(r=>{if(!n)return;let i=r?.items??[];a(i);let o=t.l(),s=i.find(e=>e.id===o?.id)||i.find(e=>e.projectname?.toLowerCase()===fh)||i[0];s&&e.setFieldsValue({project:s.id})}).catch(e=>{console.error(`Unable to load projects:`,e),n&&l(`Unable to load projects. Please try again.`)}),()=>{n=!1}},[e]);function m(e){let n=i.find(t=>t.id===e.project);if(!n){l(`Please select a project.`);return}s(!0),t.v({id:n.id,name:n.projectname}),r(`/addTestCase`,{replace:!0})}return(0,p.jsxs)(`div`,{className:`auth-login-page`,children:[(0,p.jsx)(`section`,{className:`auth-login-bg`,style:{background:n.li.brand},children:(0,p.jsxs)(`div`,{className:`auth-login-static-section`,children:[(0,p.jsx)(`div`,{children:(0,p.jsx)(`img`,{src:Cp,alt:``,className:`auth-login-img-one`})}),(0,p.jsx)(`div`,{className:`auth-login-hero-wrap`,children:(0,p.jsx)(`img`,{src:wp,alt:``,className:`auth-login-img-two`})}),(0,p.jsx)(n.ci,{as:`p`,variant:`body`,color:`inverse`,size:`2xl`,weight:`regular`,align:`right`,className:`auth-login-tagline`,children:`Best in class processes in a box.`})]})}),(0,p.jsx)(`section`,{className:`auth-login-form-layout`,children:(0,p.jsx)(`div`,{className:`auth-login-form-container`,children:(0,p.jsxs)(`div`,{className:`auth-login-form-shell`,children:[(0,p.jsxs)(`div`,{className:`auth-login-brand`,children:[(0,p.jsx)(`img`,{src:`/favicon.ico`,alt:``,className:`auth-login-logo`}),(0,p.jsx)(n.ci,{variant:`h3`,color:`primary`,weight:`bold`,className:`auth-login-brand-text`,children:`Zinnext`})]}),(0,p.jsx)(`div`,{className:`auth-login-body`,children:(0,p.jsxs)(`div`,{className:`auth-login-sign-body`,children:[(0,p.jsx)(n.ci,{variant:`h2`,color:`primary`,weight:`bold`,align:`center`,className:`auth-login-title`,children:`Select Project`}),(0,p.jsx)(`div`,{className:`auth-login-form-con`,children:(0,p.jsxs)(d.Form,{form:e,className:`v1-form auth-login-form`,layout:`vertical`,requiredMark:!1,onFinish:m,autoComplete:`off`,children:[(0,p.jsx)(d.Form.Item,{label:`Project`,name:`project`,rules:[{required:!0,message:`Select a project.`}],children:(0,p.jsx)(d.Select,{size:`large`,showSearch:!0,optionFilterProp:`label`,placeholder:`Select project`,prefix:(0,p.jsx)(f.ProjectOutlined,{}),options:i.map(e=>({value:e.id,label:e.projectname}))})}),c&&(0,p.jsx)(d.Form.Item,{children:(0,p.jsx)(n.ci,{color:`danger`,variant:`body`,children:c})}),(0,p.jsx)(d.Button,{className:`auth-login-submit`,block:!0,size:`large`,type:`primary`,htmlType:`submit`,loading:o,id:`znxt-select-project`,children:`Continue`})]})})]})})]})})})]})}function mh(e,t){function n(n){return(0,p.jsx)(Am,{...t,children:(0,p.jsx)(e,{...n})})}return n.displayName=`withAuthGuard(${e.displayName||e.name||`Component`})`,n}var hh=`${t.y}`;async function gh(e,n={}){let r=t.u(),i=await fetch(`${hh}${e}`,{...n,headers:{"Content-Type":`application/json`,...t.O({"X-App-Id":String(t.b)}),...r?{Authorization:`Bearer ${r}`}:{},...n.headers??{}}}),a=await i.json().catch(()=>({}));if(!i.ok)throw Error(a?.error??a?.message??`Request failed: ${i.status}`);return a?.data??a}function _h(e,t=[]){if(Array.isArray(e))return e;for(let n of[...t,`data`,`result`,`rows`,`items`])if(Array.isArray(e?.[n]))return e[n];for(let n of t){if(Array.isArray(e?.data?.[n]))return e.data[n];if(Array.isArray(e?.result?.[n]))return e.result[n]}return[]}function vh(e){let t=e.user_id??e.userId??e.UserId??e.legacyUserId??e.legacy_user_id??e.id??e._id,n=e.user_type_id??e.roleId??e.role_id??e.RoleId,r=e.first_name??e.firstName??``,i=e.last_name??e.lastName??``,a=e.reporting_id??e.reportingId??e.reportingManagerId??e.managerId??0;return{...e,user_id:t,userId:t,legacyUserId:e.legacyUserId??e.legacy_user_id??t,username:e.username??e.userName??e.user_name??`${r}${i}`.trim(),userName:e.userName??e.username??e.user_name??`${r}${i}`.trim(),first_name:r,firstName:r,last_name:i,lastName:i,email:e.email,mobile:e.mobile??e.phoneNumber??e.phone_number??e.mobile_number,mobileNumber:e.mobileNumber??e.mobile_number??e.mobile??e.phoneNumber??e.phone_number,user_type_id:n,role_id:n,roleId:n,reporting_id:a,reportingId:a,profile_image:e.profile_image??e.photoLocation??e.photo_location,status:xh(e.status??e.active_status)}}function yh(e){let t=e.user_type_id??e.role_id??e.roleId??e.id;return{...e,user_type_id:t,user_type_name:e.user_type_name??e.role_name??e.roleName??e.name,description:e.description??e.role_description??e.roleDescription??``,status:xh(e.status??e.active_status??`ACTIVE`)}}function bh(e){let t=e.menu_id??e.menuId??e.legacyMenuId??e.id,n=e.parent_menu_id??e.parentMenuId,r=e.menu_name??e.menuName??e.name??e.label;return{...e,menu_id:t,menu_name:r,menu_key:e.menu_key??e.menuKey??e.key,api_url:e.api_url??e.apiUrl??e.route??``,menu_type:e.menu_type??e.menuType??e.placement??`MENU`,parent_menu_id:n||null,component_name:e.component_name??e.componentName??``,display_order:e.display_order??e.displayOrder??t??0,status:xh(e.status)}}function xh(e){if(e===!0||e===1||e===`1`)return`ACTIVE`;let t=String(e??`ACTIVE`).trim().toUpperCase();return t===`ACTIVE`||t===`ENABLED`?`ACTIVE`:`INACTIVE`}function Sh(e){let t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Ch(e){if(e==null||e===``)return 0;let t=Number(e);return Number.isFinite(t)&&t>0?t:e}function wh(e){let t=Number(e);return Number.isInteger(t)&&t>0?t:void 0}function Th(){return{tenantId:localStorage.getItem(`tenantId`)||void 0,businessId:localStorage.getItem(`businessId`)||void 0,businessUnitId:localStorage.getItem(`businessUnitId`)||void 0}}function Eh(e){let n=e.username??e.user_name??e.userName,r=e.first_name??e.firstName??``,i=e.last_name??e.lastName??``,a=Sh(e.user_type_id??e.role_id??e.roleId),o=Ch(e.reporting_id??e.reportingId??e.managerId),s=e.mobile??e.mobileNumber??e.mobile_number??e.phone_number,c=xh(e.status??e.activeStatus)===`ACTIVE`,l=String(t.b),u=wh(e.updated_by??e.updatedBy),d=wh(e.created_by??e.createdBy);return{...e,...Th(),appId:l,app_id:l,userName:n,user_name:n,username:n,firstName:r,first_name:r,lastName:i,last_name:i,email:e.email,user_pwd:e.password??e.user_pwd,password:e.password??e.user_pwd,phoneNumber:s,phone_number:s,mobileNumber:s,mobile_number:s,roleId:a,role_id:a,user_type_id:a,reportingId:o,reporting_id:o,activeStatus:c,status:c?`ACTIVE`:`INACTIVE`,statusText:c?`ACTIVE`:`INACTIVE`,updatedBy:u,updated_by:u,createdBy:d,created_by:d}}function Dh(e){let t=String(e.menu_type??e.menuType??e.placement??`MENU`).toUpperCase();return{...e,menuName:e.menu_name,name:e.menu_name,menuKey:e.menu_key,key:e.menu_key,parentMenuId:Number(e.parent_menu_id??0),placement:t===`FOOTER`?`footer`:`main`,icon:e.icon,status:e.status}}function Oh(e){if(e&&typeof e==`object`&&!Array.isArray(e))return Oh(e.value??e.access_value??e.accessValue??e.permissionValue??e.enabled);if(e===!0||e===1||e===`1`)return!0;let t=String(e??``).trim().toLowerCase();return t===`true`||t===`yes`||t===`active`}function kh(e){return Oh(e)?`1`:`0`}function Ah(e){return(Array.isArray(e)?e:Object.entries(e??{}).map(([e,t])=>({...t,menu_name:e}))).map(e=>{let t=e.menu_id??e.menuId,n=e.menu_name??e.menuName??e.name??String(t??``),r=Object.entries(e.permissions??{}).reduce((e,[t,n])=>(e[t]={...n,permission_id:n?.permission_id??n?.permissionId??n?.id,permission_key:n?.permission_key??n?.permissionKey??t,value:kh(n?.value??n?.access_value??n?.accessValue??n?.permissionValue??n?.enabled??n)},e),{});return{...e,menu_id:t,menu_name:n,menu_key:e.menu_key??e.menuKey??n,permissions:r}})}function jh(e,t,n=[]){return{roleId:e,menus:t.reduce((e,t)=>{let n=t.menu_name??t.menuName??t.menu_key??String(t.menu_id),r=t.permission_key??t.permissionKey;return r?(e[n]||(e[n]={menuId:t.menu_id??t.menuId,permissions:{}}),e[n].permissions[r]={id:t.permission_id??t.permissionId,value:kh(t.access_value??t.accessValue??t.value??t.permissionValue??t.enabled)},e):e},{}),menuOrder:n}}function Mh({limit:e=10,offset:t=0,search:n=``,type:r=``,sort:i=``}={}){let a=new URLSearchParams({limit:String(e),offset:String(t)});return n&&a.set(`searchquery`,n),r&&a.set(`type`,r),i&&a.set(`sortBy`,i),gh(`/get-all-users?${a.toString()}`).then(e=>({users:_h(e,[`users`]).map(vh),total:Number(e?.totalCount??e?.total??0)||0}))}function Nh(e){return gh(`/get-users?roleId=${encodeURIComponent(e)}`).then(e=>_h(e,[`users`]).map(vh))}function Ph(e){return gh(`/create-user`,{method:`POST`,body:JSON.stringify(Eh(e))})}function Fh(e,t){return gh(`/update-user?userId=${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify(Eh(t))})}function Ih(e){return gh(`/delete-user?userId=${encodeURIComponent(e)}`,{method:`PUT`})}function Lh(){return gh(`/get-roles`).then(e=>[..._h(e,[`zinnext_default`]),..._h(e,[`custom_roles`])].map(yh))}function Rh(e){return gh(`/add-custom-role`,{method:`POST`,body:JSON.stringify({importedPermissionId:Number(e.imported_permission_id??0),newRoleName:e.user_type_name,roleDescription:e.description??``,menuIds:e.visible_menu_ids??[]})}).then(yh)}function zh(e,t){return gh(`/custom-roles/${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify({roleName:t.user_type_name,role_name:t.user_type_name,roleDescription:t.description??``,description:t.description??``,status:+(xh(t.status)===`ACTIVE`),statusText:xh(t.status)})}).then(yh)}function Bh(e,t){return gh(`/roles/${encodeURIComponent(e)}/portal-view`,{method:`PUT`,body:JSON.stringify({portalView:t??``})})}function Vh(e,t){return gh(`/roles/${encodeURIComponent(e)}/access-settings`,{method:`PUT`,body:JSON.stringify({accessSettings:t??{}})})}function Hh(e){return gh(`/custom-roles/${encodeURIComponent(e)}`,{method:`DELETE`})}function Uh(){return gh(`/admin/menu-modules`).then(e=>_h(e).map(bh))}function Wh(e){return gh(`/admin/menu-modules`,{method:`POST`,body:JSON.stringify(Dh(e))})}function Gh(e,t){return gh(`/admin/menu-modules/${e}`,{method:`PUT`,body:JSON.stringify(Dh(t))})}function Kh(e){return gh(`/admin/menu-modules/${e}`,{method:`DELETE`})}function qh(){return gh(`/admin/menu-actions`)}function Jh(e){return gh(`/get-role-details?roleid=${encodeURIComponent(e)}`).then(Ah)}function Yh(e,t){return gh(`/edit-role-details`,{method:`PUT`,body:JSON.stringify(jh(e,t,[...new Set(t.map(e=>e.menu_key??e.menuName??e.menu_name).filter(Boolean))]))})}var Xh={po:[],msa:[],sourcing:[`jobs`],assign:[`jobs`],approve:[`submissions`,`onboarding`,`assignments`,`timesheet`,`vendors`,`test cases`],move_onboard:[`submissions`],change_status:[`jobs`,`candidates`,`submissions`,`onboarding`,`assignments`],candidate_self:[`candidates`],candidate_all:[`candidates`],my_jobs:[`jobs`],all_jobs:[`jobs`],reject:[`submissions`,`onboarding`,`assignments`,`timesheet`,`vendors`,`test cases`],viewProposedRate:[`submissions`],po_msa:[`onboarding`],reApprove:[`onboarding`],sendApprove:[`onboarding`]};function Zh(e,t){let n=String(t??``).trim().toLowerCase(),r=Object.keys(Xh).find(e=>e.toLowerCase()===n),i=r?Xh[r]:void 0;return!i||i.includes(String(e??``).trim().toLowerCase())}function Y({title:e,icon:t,extra:n,children:r,variant:i=`default`,...a}){let o=t||e?(0,p.jsxs)(`span`,{className:`app-card-title`,children:[t&&(0,p.jsx)(`span`,{className:`app-card-title-icon`,children:t}),e]}):void 0;return(0,p.jsx)(d.Card,{className:`app-card app-card--${i}`,title:o,extra:n,...a,children:r})}var{Text:Qh}=d.Typography,{Option:$h}=d.Select,eg=[{key:`job`,label:`Jobs`},{key:`candidate`,label:`Candidates`},{key:`submissions`,label:`Submissions`},{key:`billing`,label:`Billing`},{key:`payroll`,label:`Payroll`}],tg=[{key:``,label:`Text`,icon:(0,p.jsx)(`span`,{style:{fontSize:14,fontWeight:700},children:`Aa`})},{key:`badge`,label:`Badge`,icon:(0,p.jsx)(f.TagsOutlined,{style:{fontSize:16}})},{key:`avatar`,label:`Avatar`,icon:(0,p.jsx)(f.UserOutlined,{style:{fontSize:16}})},{key:`link`,label:`Link`,icon:(0,p.jsx)(f.LinkOutlined,{style:{fontSize:16}})},{key:`person`,label:`Person`,icon:(0,p.jsx)(f.IdcardOutlined,{style:{fontSize:16}})},{key:`score`,label:`Score ring`,icon:(0,p.jsx)(f.PieChartOutlined,{style:{fontSize:16}})},{key:`datetime`,label:`Date + time`,icon:(0,p.jsx)(f.CalendarOutlined,{style:{fontSize:16}})},{key:`relativeDate`,label:`Today / date`,icon:(0,p.jsx)(f.ClockCircleOutlined,{style:{fontSize:16}})},{key:`rowActions`,label:`Row actions`,icon:(0,p.jsx)(f.AppstoreOutlined,{style:{fontSize:16}})},{key:`chip`,label:`Chip`,icon:(0,p.jsx)(f.BgColorsOutlined,{style:{fontSize:16}})},{key:`toneText`,label:`Coloured text`,icon:(0,p.jsx)(f.FontColorsOutlined,{style:{fontSize:16}})},{key:`typeIcon`,label:`Type icon`,icon:(0,p.jsx)(f.PictureOutlined,{style:{fontSize:16}})},{key:`money`,label:`Money`,icon:(0,p.jsx)(f.DollarOutlined,{style:{fontSize:16}})},{key:`fraction`,label:`"1 of 2" + bar`,icon:(0,p.jsx)(f.BarsOutlined,{style:{fontSize:16}})},{key:`stack`,label:`Text + lines`,icon:(0,p.jsx)(f.BarsOutlined,{style:{fontSize:16}})},{key:`chips`,label:`Chips (list)`,icon:(0,p.jsx)(f.TagsOutlined,{style:{fontSize:16}})},{key:`rowNumber`,label:`Row number #`,icon:(0,p.jsx)(`span`,{style:{fontSize:14,fontWeight:700},children:`#`})},{key:`file`,label:`File (icon + name)`,icon:(0,p.jsx)(f.FileTextOutlined,{style:{fontSize:16}})},{key:`fileLinks`,label:`View / Download`,icon:(0,p.jsx)(f.DownloadOutlined,{style:{fontSize:16}})}],ng=[`person`,`score`,`datetime`,`relativeDate`,`rowActions`,`chip`,`toneText`,`typeIcon`,`money`,`fraction`,`stack`,`chips`,`file`,`fileLinks`],rg=[`person`,`stack`,`fraction`,`file`],ig=`success, warning, danger, info, neutral, brand`,ag=[{color:`#52c41a`,bg:`#f6ffed`},{color:`#1677ff`,bg:`#e6f7ff`},{color:`#fa8c16`,bg:`#fff7e6`},{color:`#ff4d4f`,bg:`#fff2f0`},{color:`#722ed1`,bg:`#f9f0ff`},{color:`#13c2c2`,bg:`#e6fffb`},{color:`#eb2f96`,bg:`#fff0f6`},{color:`#faad14`,bg:`#fffbe6`}],og={job:`jobs`,candidate:`candidates`,submissions:`submissions`,billing:`billing`,payroll:`payroll`};function sg(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function cg(e){if(typeof e==`string`)return{key:e,apiModule:e,label:sg(e)};let t=e?.menuKey??e?.key??e?.moduleKey??e?.value??e?.module??e?.apiModule??e?.name??e?.modulename??e?.menuName;return t?{key:t,apiModule:e?.apiModule??e?.api_module??e?.module??e?.value??e?.menuKey??e?.key??e?.name??e?.modulename??e?.menuName??t,label:e?.label??e?.moduleLabel??e?.moduleName??e?.name??e?.modulename??e?.menuName??sg(t)}:null}function lg(e){let t=Array.isArray(e)&&e.length?e:eg,n=new Set,r=t.map(cg).filter(Boolean).filter(e=>!n.has(e.key)&&(n.add(e.key),!0));return r.length?r:eg}function ug({field:e,collections:t,collFields:r,subfields:i,onCollectionChange:a,onLookupFieldChange:o,addSecondaryField:s,removeSecondaryField:c,addActionButton:l,updateActionButton:m,removeActionButton:h,moduleKey:g,fieldKey:_,update:v}){let[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)({}),[C,w]=(0,u.useState)(!1);function T(e){v(e===`common`?{commonStyle:{color:`#1677ff`,bg:`#e6f7ff`,variant:`badge`},valueStyles:[]}:{commonStyle:null})}function E(t){v({commonStyle:{...e.commonStyle??{color:`#595959`,bg:`#f5f5f5`,variant:`badge`},...t}})}function D(){v({valueStyles:[...e.valueStyles??[],{value:``,label:``,color:`#595959`,bg:`#f5f5f5`,variant:`badge`}]})}function O(t,n){let r=[...e.valueStyles??[]];r[t]={...r[t],...n},v({valueStyles:r})}function k(t){v({valueStyles:(e.valueStyles??[]).filter((e,n)=>n!==t)})}async function A(){w(!0);try{let t=e.apiModule??og[g]??g,r=await n.qt(t,_,``,50,0),i=(Array.isArray(r)?r:r?.data??[]).map((e,t)=>{let n=typeof e==`object`?e.value??e.label??``:String(e),r=typeof e==`object`?e.label??e.value??``:String(e);return{value:String(n),label:String(r),variant:`badge`,...ag[t%ag.length]}});if(i.length===0){d.message.info(`No values found for this field`);return}v({valueStyles:i})}catch{d.message.error(`Could not detect values`)}finally{w(!1)}}async function j(e,t){S(t=>({...t,[e]:!0}));try{let r=await n.ao(t);m(e,{iconUrl:r?.iconUrl??r?.url??``,iconPath:r?.iconPath??r?.path??``})}catch{d.message.error(`Icon upload failed`)}finally{S(t=>({...t,[e]:!1}))}return!1}let M=e.renderType??``,N=!!e.commonStyle,P=e.commonStyle??{},F=e.valueStyles??[],I=e.renderConfig??{};return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,p.jsx)(`div`,{className:`uss-detail-label`,children:`Column width`}),(0,p.jsxs)(d.Space,{size:8,align:`center`,children:[(0,p.jsx)(d.InputNumber,{size:`small`,min:0,max:600,precision:0,style:{width:110},value:Number(e.columnWidth)>0?Number(e.columnWidth):null,placeholder:`auto`,onChange:e=>v({columnWidth:Number(e)>0?Math.round(Number(e)):0})}),(0,p.jsx)(Qh,{type:`secondary`,style:{fontSize:10},children:`px — empty = automatic; columns grow in proportion to fill the list.`})]})]}),(0,p.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,p.jsx)(`div`,{className:`uss-detail-label`,children:`Display Style`}),(0,p.jsx)(`div`,{className:`uss-detail-row`,children:tg.map(e=>(0,p.jsxs)(`button`,{className:`uss-render-type-btn${M===e.key?` active`:``}`,onClick:()=>v({renderType:e.key,commonStyle:null,valueStyles:[],renderConfig:null}),children:[e.icon,(0,p.jsx)(`span`,{children:e.label})]},e.key))}),M===`badge`&&(0,p.jsxs)(`div`,{className:`uss-badge-config`,children:[(0,p.jsxs)(d.Radio.Group,{size:`small`,value:N?`common`:`perValue`,onChange:e=>T(e.target.value),style:{marginBottom:8},children:[(0,p.jsx)(d.Radio,{value:`perValue`,children:`Per value`}),(0,p.jsx)(d.Radio,{value:`common`,children:`Same for all`})]}),N&&(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,flexWrap:`wrap`},children:[(0,p.jsx)(d.Tooltip,{title:`Text color`,children:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:4},children:[(0,p.jsx)(`input`,{type:`color`,value:P.color||`#595959`,style:{width:28,height:24,border:`none`,cursor:`pointer`,padding:0},onChange:e=>E({color:e.target.value})}),(0,p.jsx)(Qh,{style:{fontSize:10},children:`Text`})]})}),(0,p.jsx)(d.Tooltip,{title:`Background color`,children:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:4},children:[(0,p.jsx)(`input`,{type:`color`,value:P.bg||`#f5f5f5`,style:{width:28,height:24,border:`none`,cursor:`pointer`,padding:0},onChange:e=>E({bg:e.target.value})}),(0,p.jsx)(Qh,{style:{fontSize:10},children:`BG`})]})}),(0,p.jsx)(d.Select,{size:`small`,style:{width:80},value:P.variant||`badge`,options:[{value:`badge`,label:`Badge`},{value:`dot`,label:`Dot`},{value:`tag`,label:`Tag`}],onChange:e=>E({variant:e})}),(0,p.jsx)(`span`,{style:{padding:`1px 12px`,borderRadius:20,fontSize:11,fontWeight:500,color:P.color||`#595959`,background:P.bg||`#f5f5f5`},children:`Preview`})]}),!N&&(0,p.jsxs)(`div`,{children:[(0,p.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginBottom:6},children:[(0,p.jsx)(Qh,{style:{fontSize:11,color:`#555`,fontWeight:600},children:`Value → Style mapping`}),(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(d.Button,{size:`small`,loading:C,onClick:A,children:`Auto-detect values`}),(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:D,children:`Add`})]})]}),F.length===0&&(0,p.jsx)(Qh,{type:`secondary`,style:{fontSize:12},children:`Click "Auto-detect values" to populate from live data, or "Add" to map manually.`}),F.map((e,t)=>(0,p.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr 62px 62px 54px 26px`,gap:5,alignItems:`center`,marginBottom:6},children:[(0,p.jsx)(d.Input,{size:`small`,placeholder:`raw value`,value:e.value??``,onChange:e=>O(t,{value:e.target.value})}),(0,p.jsx)(d.Input,{size:`small`,placeholder:`display label`,value:e.label??``,onChange:e=>O(t,{label:e.target.value})}),(0,p.jsx)(d.Tooltip,{title:`Text color`,children:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:3},children:[(0,p.jsx)(`input`,{type:`color`,value:e.color||`#595959`,style:{width:28,height:24,border:`none`,cursor:`pointer`,padding:0},onChange:e=>O(t,{color:e.target.value})}),(0,p.jsx)(Qh,{style:{fontSize:10},children:`Text`})]})}),(0,p.jsx)(d.Tooltip,{title:`Background color`,children:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:3},children:[(0,p.jsx)(`input`,{type:`color`,value:e.bg||`#f5f5f5`,style:{width:28,height:24,border:`none`,cursor:`pointer`,padding:0},onChange:e=>O(t,{bg:e.target.value})}),(0,p.jsx)(Qh,{style:{fontSize:10},children:`BG`})]})}),(0,p.jsx)(`span`,{style:{padding:`1px 6px`,borderRadius:20,fontSize:11,fontWeight:500,textAlign:`center`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,color:e.color||`#595959`,background:e.bg||`#f5f5f5`},children:e.label||e.value||`…`}),(0,p.jsx)(d.Button,{size:`small`,type:`text`,danger:!0,icon:(0,p.jsx)(f.CloseOutlined,{}),onClick:()=>k(t)})]},t))]})]}),(0,p.jsxs)(`div`,{style:{marginTop:10},children:[(0,p.jsx)(Qh,{style:{fontSize:11,color:`#555`,display:`block`,marginBottom:3},children:`Array item field (latest item)`}),(0,p.jsx)(d.Select,{size:`small`,showSearch:!0,allowClear:!0,style:{width:`100%`},placeholder:i.length>0?`Select a child field from the array`:`Enter child field, e.g. clientBudgetStart`,value:I.lastItemField||void 0,options:i.map(e=>({value:e,label:e})),onChange:e=>v({renderConfig:{...I,lastItemField:e??``}}),onSearch:e=>{i.includes(e)},dropdownRender:e=>(0,p.jsxs)(p.Fragment,{children:[e,(0,p.jsx)(`div`,{style:{padding:`8px 10px`,borderTop:`1px solid var(--color-border-muted)`},children:(0,p.jsx)(d.Input,{size:`small`,placeholder:`Custom child field`,value:I.lastItemField||``,onChange:e=>v({renderConfig:{...I,lastItemField:e.target.value.trim()}})})})]})}),(0,p.jsx)(Qh,{type:`secondary`,style:{display:`block`,marginTop:4,fontSize:10},children:`For an array such as jobPayDetails, ListView displays this field from the last array element.`})]}),ng.includes(M)&&(0,p.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:8,marginTop:8},children:[rg.includes(M)&&(0,p.jsxs)(`div`,{children:[(0,p.jsx)(Qh,{style:{fontSize:11,color:`#555`,display:`block`,marginBottom:3},children:M===`person`?`Lines under the name (one per line)`:`Lines under the value (one per line)`}),(0,p.jsx)(d.Input.TextArea,{size:`small`,autoSize:{minRows:2,maxRows:4},value:(Array.isArray(I.lines)?I.lines:[]).join(`
|
|
4
4
|
`),placeholder:`Lead ID: {leadCode}
|
|
@@ -41,8 +41,8 @@ Please check the Facebook lead forms, the ad campaigns and Settings → Credenti
|
|
|
41
41
|
|
|
42
42
|
{{provider}} has been failing since {{since}} ({{error}}).
|
|
43
43
|
Please check its keys in Settings → Credentials and press Test.`}}},pA={lead_not_reviewed:{label:`Lead`,tone:`pink`},session_starting:{label:`Class`,tone:`blue`},batch_assigned:{label:`Batch`,tone:`violet`},no_new_leads:{label:`Admin alert`,tone:`amber`},provider_failure:{label:`Admin alert`,tone:`red`}},mA={email:{label:`Email`,icon:(0,p.jsx)(f.MailOutlined,{})},sms:{label:`SMS`,icon:(0,p.jsx)(f.MessageOutlined,{})},log:{label:`Log only`,icon:(0,p.jsx)(f.FileTextOutlined,{})}},hA=e=>e.trigger===`batch_assigned`?`Immediately after batch assignment`:e.trigger===`provider_failure`?`When an active service starts failing`:`${e.offsetValue} ${e.offsetUnit} ${fA[e.trigger]?.timing??``}`,gA=[{value:1,label:`Mon`},{value:2,label:`Tue`},{value:3,label:`Wed`},{value:4,label:`Thu`},{value:5,label:`Fri`},{value:6,label:`Sat`},{value:0,label:`Sun`}],_A=[{value:`minutes`,label:`minutes`},{value:`hours`,label:`hours`},{value:`days`,label:`days`}],vA={SENT:`green`,LOGGED:`blue`,FAILED:`red`,BASELINE:`default`,QUEUED:`gold`},yA=e=>e?.data?.error||e?.data?.message||e?.message||`Something went wrong`;function bA({rule:e,open:t,userTypes:n,onClose:r,onSaved:i}){let[a]=d.Form.useForm(),[o,s]=(0,u.useState)(!1),c=d.Form.useWatch(`trigger`,a),l=d.Form.useWatch(`recipients`,a)??[];(0,u.useEffect)(()=>{t&&(e?a.setFieldsValue({...e,escalateRoleIds:e.escalateRoleIds??[]}):a.setFieldsValue({trigger:`lead_not_reviewed`,offsetValue:10,offsetUnit:`days`,recipients:[`assigned_counsellor`],channel:`log`,active:!0,name:`Lead not reviewed for 10 days`,...fA.lead_not_reviewed.sample}))},[t,e,a]);let f=fA[c]??fA.lead_not_reviewed;return(0,p.jsx)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:e?`Edit reminder`:`New reminder`,width:600,open:t,onClose:r,destroyOnHidden:!0,extra:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{onClick:r,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,loading:o,onClick:async()=>{let t=await a.validateFields(),n=t.offsetUnit||fA[t.trigger]?.sample?.offsetUnit||`hours`,r={...t,offsetUnit:n,offsetValue:Number(t.offsetValue)||0,escalateRoleIds:(t.escalateRoleIds??[]).map(Number),weekdays:t.weekdays??[],cc:t.cc??[]};s(!0);try{e?.id?await Xk(e.id,r):await Yk(r),d.message.success(`Reminder saved`),i(r)}catch(e){d.message.error(yA(e))}finally{s(!1)}},children:`Save`})]}),children:(0,p.jsxs)(d.Form,{form:a,layout:`vertical`,children:[(0,p.jsx)(d.Form.Item,{name:`name`,label:`Name`,rules:[{required:!0,max:120}],children:(0,p.jsx)(d.Input,{})}),(0,p.jsx)(d.Form.Item,{name:`trigger`,label:`When`,rules:[{required:!0}],extra:e?`The trigger of a saved reminder cannot change; create a new reminder instead.`:null,children:(0,p.jsx)(d.Select,{disabled:!!e,options:Object.entries(fA).map(([e,t])=>({value:e,label:t.label})),onChange:e=>a.setFieldsValue({recipients:[fA[e].recipients[0].value],...fA[e].sample})})}),c!==`batch_assigned`&&!f.noTiming?(0,p.jsxs)(d.Row,{gutter:12,align:`bottom`,children:[(0,p.jsx)(d.Col,{span:8,children:(0,p.jsx)(d.Form.Item,{name:`offsetValue`,label:`Time`,rules:[{required:!0}],children:(0,p.jsx)(d.InputNumber,{min:1,max:2160,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{span:8,children:(0,p.jsx)(d.Form.Item,{name:`offsetUnit`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:_A})})}),(0,p.jsx)(d.Col,{span:8,children:(0,p.jsx)(d.Form.Item,{children:(0,p.jsx)(uA,{type:`secondary`,children:f.timing})})})]}):c===`batch_assigned`?(0,p.jsx)(dA,{type:`secondary`,children:`Students who are already in a batch when this reminder is created are not messaged.`}):(0,p.jsx)(dA,{type:`secondary`,children:`One email when an active service (Twilio, Facebook, Razorpay, Mailgun) starts failing, and again only after it worked and failed again.`}),f.alert?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Form.Item,{name:`weekdays`,label:`Check on`,extra:`No day selected = every day.`,children:(0,p.jsx)(d.Checkbox.Group,{options:gA})}),(0,p.jsx)(d.Form.Item,{name:`cc`,label:`Also send a copy to (CC)`,rules:[{type:`array`,max:10}],children:(0,p.jsx)(d.Select,{mode:`tags`,tokenSeparators:[`,`,` `],placeholder:`name@example.com`})})]}):null,(0,p.jsx)(d.Form.Item,{name:`recipients`,label:`Send to`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{mode:`multiple`,options:f.recipients})}),l.includes(`user_types`)?(0,p.jsx)(d.Form.Item,{name:`escalateRoleIds`,label:`User types to escalate to`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{mode:`multiple`,options:n,placeholder:`e.g. Admin, Manager`})}):null,(0,p.jsx)(d.Form.Item,{name:`channel`,label:`Delivery`,rules:[{required:!0}],extra:`Log only records each message without sending it — use it to check a new reminder first. SMS uses the message text, not the subject.`,children:(0,p.jsx)(d.Select,{options:[{value:`log`,label:`Log only (test)`},{value:`email`,label:`Email`},{value:`sms`,label:`SMS (the active SMS provider under Credentials)`}]})}),(0,p.jsx)(d.Form.Item,{name:`subject`,label:`Subject`,rules:[{required:!0,max:200}],children:(0,p.jsx)(d.Input,{})}),(0,p.jsx)(d.Form.Item,{name:`template`,label:`Message`,rules:[{required:!0,max:5e3}],extra:(0,p.jsxs)(`span`,{children:[`Placeholders: `,f.vars.map(e=>(0,p.jsx)(d.Tag,{style:{marginBottom:4},children:`{{${e}}}`},e))]}),children:(0,p.jsx)(d.Input.TextArea,{rows:6})}),(0,p.jsx)(d.Form.Item,{name:`active`,label:`Active`,valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{})})]})})}function xA({userTypes:e=[]}){let[t,n]=(0,u.useState)({loading:!0,rules:[],stats:{},error:``}),[r,i]=(0,u.useState)({loading:!1,rows:[]}),[a,o]=(0,u.useState)(void 0),[s,c]=(0,u.useState)(null),l=(0,u.useCallback)(()=>Jk().then(e=>({loading:!1,rules:e?.rules??[],stats:e?.stats??{},error:``}),e=>({loading:!1,rules:[],stats:{},error:e?.status===403?Wk:yA(e)})),[]),h=(0,u.useCallback)(()=>(n(e=>({...e,loading:!0,error:``})),l().then(n)),[l]),g=(0,u.useCallback)(async()=>{i({loading:!0,rows:[]});try{let e=await eA();i({loading:!1,rows:Array.isArray(e)?e:[]})}catch(e){i({loading:!1,rows:[],error:yA(e)})}},[]);(0,u.useEffect)(()=>{let e=!0;return l().then(t=>e&&n(t)),()=>{e=!1}},[l]);let _=(e,t)=>fk({title:t?`Resume reminder`:`Pause reminder`,icon:t?(0,p.jsx)(f.PlayCircleOutlined,{}):(0,p.jsx)(f.PauseCircleOutlined,{}),heading:t?`Resume “${e.name}”?`:`Pause “${e.name}”?`,text:t?`It starts sending again from the next check (every 5 minutes).`:`Nothing is sent while it is paused. Its history is kept and you can resume it at any time.`,okText:t?`Resume`:`Pause reminder`,onOk:async()=>{try{await Qk(e.id,t),d.message.success(t?`Reminder resumed`:`Reminder paused`),h()}catch(e){d.message.error(yA(e))}}}),v=e=>fk({title:`Delete reminder`,icon:(0,p.jsx)(f.DeleteOutlined,{}),danger:!0,heading:`Delete “${e.name}”?`,text:`It stops at once. Its delivery history is kept.`,okText:`Delete reminder`,onOk:async()=>{try{await Zk(e.id),d.message.success(`Reminder deleted`),h()}catch(e){d.message.error(yA(e))}}}),y=e=>pk({ok:!0,title:`Reminder saved`,heading:`Reminder saved`,text:`It is checked every 5 minutes.`,rows:[{key:`n`,icon:(0,p.jsx)(f.BellOutlined,{}),label:`Reminder`,value:e.name},{key:`w`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),label:`When`,value:hA(e)},{key:`c`,icon:mA[e.channel]?.icon,label:`Delivery`,value:mA[e.channel]?.label??e.channel},{key:`s`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),label:`Status`,value:(0,p.jsx)(lk,{tone:e.active?`green`:`amber`,children:e.active?`Active`:`Paused`})}]}),[b,x]=(0,u.useState)({q:``,trigger:``,channel:``,status:``}),S=t.rules.filter(e=>(!b.q||e.name.toLowerCase().includes(b.q.toLowerCase()))&&(!b.trigger||e.trigger===b.trigger)&&(!b.channel||e.channel===b.channel)&&(!b.status||b.status===`active`==!!e.active)),C=Object.values(t.stats).reduce((e,t)=>e+(Number(t?.SENT)||0),0),w=async e=>{c({rule:e,loading:!0});try{c({rule:e,loading:!1,...await $k(e.id)})}catch(t){c({rule:e,loading:!1,error:yA(t)})}},T=e=>t.rules.find(t=>t.id===e)?.name??`—`,E=[{title:`#`,key:`n`,width:48,render:(e,t,n)=>n+1},{title:`Reminder name`,dataIndex:`name`,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(uA,{strong:!0,children:e}),(0,p.jsx)(uA,{type:`secondary`,style:{fontSize:12},children:fA[t.trigger]?.label??t.trigger})]})},{title:`Type`,dataIndex:`trigger`,render:e=>(0,p.jsx)(lk,{tone:pA[e]?.tone??`grey`,children:pA[e]?.label??e})},{title:`Trigger / timing`,key:`timing`,render:(e,t)=>hA(t)},{title:`Recipients`,dataIndex:`recipients`,render:(e,t)=>[...(e??[]).map(e=>fA[t.trigger]?.recipients.find(t=>t.value===e)?.label??e),...t.cc?.length?[`CC ${t.cc.length}`]:[]].join(`, `)},{title:`Channel`,dataIndex:`channel`,render:e=>(0,p.jsxs)(d.Space,{size:6,children:[mA[e]?.icon,mA[e]?.label??e]})},{title:`Status`,key:`status`,render:(e,n)=>{let r=t.stats[n.id]??{};return(0,p.jsxs)(d.Space,{direction:`vertical`,size:2,children:[(0,p.jsx)(lk,{tone:n.active?`green`:`amber`,icon:n.active?(0,p.jsx)(f.CheckCircleOutlined,{}):(0,p.jsx)(f.PauseCircleOutlined,{}),children:n.active?`Active`:`Paused`}),r.SENT||r.LOGGED||r.FAILED?(0,p.jsx)(uA,{type:`secondary`,style:{fontSize:11},children:[`SENT`,`LOGGED`,`FAILED`].filter(e=>r[e]).map(e=>`${e.toLowerCase()} ${r[e]}`).join(` · `)}):null]})}},{title:`Actions`,key:`act`,width:72,align:`center`,render:(e,t)=>(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:[{key:`preview`,icon:(0,p.jsx)(f.EyeOutlined,{}),label:`Preview`,onClick:()=>w(t)},{key:`edit`,icon:(0,p.jsx)(f.EditOutlined,{}),label:`Edit`,onClick:()=>o(t)},{key:`toggle`,icon:t.active?(0,p.jsx)(f.PauseCircleOutlined,{}):(0,p.jsx)(f.PlayCircleOutlined,{}),label:t.active?`Pause`:`Resume`,onClick:()=>_(t,!t.active)},{type:`divider`},{key:`delete`,icon:(0,p.jsx)(f.DeleteOutlined,{}),label:`Delete`,danger:!0,onClick:()=>v(t)}]},children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.MoreOutlined,{}),"aria-label":`Actions for ${t.name}`})})}],D=[{title:`When`,dataIndex:`at`,render:e=>(0,m.default)(e).format(`D MMM, h:mm A`),width:140},{title:`Reminder`,dataIndex:`ruleId`,render:T},{title:`Recipient`,dataIndex:`recipient`},{title:`Channel`,dataIndex:`channel`},{title:`Status`,dataIndex:`status`,render:e=>(0,p.jsx)(d.Tag,{color:vA[e],children:e})}];return t.error?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:t.error}):(0,p.jsxs)(`div`,{className:`settings-section`,children:[(0,p.jsx)(ck,{items:[{key:`t`,label:`Total reminders`,value:t.rules.length,icon:(0,p.jsx)(f.BellOutlined,{}),tone:`pink`},{key:`a`,label:`Active`,value:t.rules.filter(e=>e.active).length,icon:(0,p.jsx)(f.PlayCircleOutlined,{}),tone:`green`},{key:`p`,label:`Paused`,value:t.rules.filter(e=>!e.active).length,icon:(0,p.jsx)(f.PauseCircleOutlined,{}),tone:`amber`},{key:`s`,label:`Messages sent`,value:C,icon:(0,p.jsx)(f.SendOutlined,{}),tone:`violet`}]}),(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-filters`,children:[(0,p.jsx)(d.Input,{allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search by reminder name…`,value:b.q,onChange:e=>x(t=>({...t,q:e.target.value})),style:{width:260,maxWidth:`100%`}}),(0,p.jsx)(d.Select,{value:b.trigger,onChange:e=>x(t=>({...t,trigger:e})),style:{width:190},options:[{value:``,label:`All types`},...Object.entries(fA).map(([e,t])=>({value:e,label:t.label}))]}),(0,p.jsx)(d.Select,{value:b.channel,onChange:e=>x(t=>({...t,channel:e})),style:{width:150},options:[{value:``,label:`All channels`},...Object.entries(mA).map(([e,t])=>({value:e,label:t.label}))]}),(0,p.jsx)(d.Select,{value:b.status,onChange:e=>x(t=>({...t,status:e})),style:{width:140},options:[{value:``,label:`All status`},{value:`active`,label:`Active`},{value:`paused`,label:`Paused`}]}),(0,p.jsx)(d.Button,{type:`link`,icon:(0,p.jsx)(f.UndoOutlined,{}),onClick:()=>x({q:``,trigger:``,channel:``,status:``}),children:`Reset`}),(0,p.jsx)(`span`,{style:{flex:1}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:h,children:`Reload`}),(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>o(null),children:`New reminder`})]}),(0,p.jsx)(d.Tabs,{onChange:e=>e===`logs`&&g(),items:[{key:`rules`,label:`Rules (${t.rules.length})`,children:(0,p.jsx)(d.Table,{rowKey:`id`,size:`middle`,loading:t.loading,columns:E,dataSource:S,scroll:{x:980},locale:{emptyText:(0,p.jsx)(d.Empty,{description:`No reminders yet. Start with “Lead not reviewed” in Log only mode.`})},pagination:!1})},{key:`logs`,label:`Delivery log`,children:r.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:r.error}):(0,p.jsx)(d.Table,{rowKey:`_id`,size:`small`,loading:r.loading,columns:D,dataSource:r.rows,pagination:{pageSize:20},locale:{emptyText:(0,p.jsx)(d.Empty,{description:`Nothing has run yet. The engine checks active reminders every 5 minutes.`})}})}]})]}),(0,p.jsx)(bA,{rule:a||null,open:a!==void 0,userTypes:e,onClose:()=>o(void 0),onSaved:e=>{o(void 0),h(),e&&y(e)}}),(0,p.jsx)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:s?`Preview: ${s.rule.name}`:``,width:480,open:!!s,onClose:()=>c(null),children:s?.loading?(0,p.jsx)(uA,{type:`secondary`,children:`Checking…`}):s?.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:s.error}):s?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(dA,{children:[(0,p.jsx)(uA,{strong:!0,children:s.due}),` message`,s.due===1?``:`s`,` due right now. `,s.note]}),(0,p.jsx)(d.List,{size:`small`,dataSource:s.items??[],locale:{emptyText:`Nothing due right now.`},renderItem:e=>(0,p.jsx)(d.List.Item,{children:(0,p.jsx)(d.List.Item.Meta,{title:e.subject,description:`${e.recipientName||``} · ${e.recipient}`})})})]}):null})]})}var{Text:SA,Paragraph:CA}=d.Typography,wA={email:`Email`,sms:`SMS`,whatsapp:`WhatsApp`,calling:`Calling`,payment:`Payments`,leads:`Leads`},TA=[`text`,`secret`,`url`,`email`,`number`,`boolean`,`select`];function EA(e){return e?.data?.error||e?.data?.message||e?.message||`Something went wrong`}function DA({field:e,secretInfo:t,live:n,...r}){return e.type===`secret`?(0,p.jsx)(d.Input.Password,{...r,autoComplete:`new-password`,placeholder:t?.set?`Saved (${t.mask}) — leave empty to keep`:e.placeholder}):n?(0,p.jsx)(d.AutoComplete,{...r,allowClear:!0,style:{width:`100%`},options:n.options??[],placeholder:n.loading?`Loading…`:n.note||e.placeholder||`Pick from the list or type`,filterOption:(e,t)=>`${t?.label??``} ${t?.value??``}`.toLowerCase().includes(String(e).toLowerCase()),onChange:e=>r.onChange?.(e==null?e:String(e))}):e.type===`select`?(0,p.jsx)(d.Select,{...r,options:(e.options??[]).map(t=>({value:t,label:e.optionLabels?.[t]??t}))}):e.type===`boolean`?(0,p.jsx)(d.Select,{...r,options:[{value:`true`,label:`Yes`},{value:`false`,label:`No`}]}):e.type===`number`?(0,p.jsx)(d.InputNumber,{...r,style:{width:`100%`},stringMode:!0}):(0,p.jsx)(d.Input,{...r,placeholder:e.placeholder,type:e.type===`email`?`email`:`text`})}function OA(e,t,n){if(!e)return!0;let r=t.find(t=>t.key===e.field);if(!r)return!0;let i=n?.[e.field];return(i==null||i===``)&&(i=r.type===`select`?r.options?.[0]:``),String(i)===String(e.equals)}function kA({row:e,open:t,onClose:n,onSaved:r}){let[i]=d.Form.useForm(),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)({}),l=d.Form.useWatch([],i),m=e?.provider,h=e?.credential,g=(m?.fields??[]).filter(e=>e.optionsFrom===`provider`).map(e=>e.key).join(`,`),_=m?.key;if((0,u.useEffect)(()=>{if(!t||!_||!g)return;let e=!0;return g.split(`,`).forEach(t=>{c(e=>({...e,[t]:{loading:!0,options:[]}})),kk(_,t).then(n=>e&&c(e=>({...e,[t]:{options:n?.options??[],note:n?.note}})),n=>e&&c(e=>({...e,[t]:{options:[],note:EA(n)}})))}),()=>{e=!1}},[t,_,g]),!m)return null;let v=Object.fromEntries(m.fields.map(e=>[e.key,e.type===`secret`?``:h?.values?.[e.key]??void 0])),y=l??v,b=m.fields.filter(e=>OA(e.visibleWhen,m.fields,y)),x=e=>e.requiredWhen?OA(e.requiredWhen,m.fields,y):e.required;return(0,p.jsxs)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:(0,p.jsxs)(`span`,{children:[(0,p.jsx)(f.KeyOutlined,{}),` `,m.label,` credentials`]}),width:520,open:t,onClose:n,destroyOnHidden:!0,extra:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{onClick:n,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,loading:a,onClick:async()=>{let e;try{e=await i.validateFields()}catch{return}let t={};b.forEach(n=>{let r=e[n.key];r!=null&&(t[n.key]=String(r))}),o(!0);try{await Sk(m.key,t),d.message.success(`${m.label} credentials saved`),r()}catch(e){d.message.error(EA(e))}finally{o(!1)}},children:`Save`})]}),children:[(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,icon:(0,p.jsx)(f.LockOutlined,{}),style:{marginBottom:16},message:`Secrets are encrypted before they are stored and are never shown again. Leave a secret empty to keep the saved one; typing a new one replaces (rotates) it.`}),(0,p.jsx)(d.Form,{form:i,layout:`vertical`,requiredMark:!0,initialValues:v,children:b.map(e=>(0,p.jsx)(d.Form.Item,{name:e.key,label:e.label,extra:s[e.key]?.note&&s[e.key]?.options?.length?s[e.key].note:e.help,rules:[{required:x(e)&&!(e.type===`secret`&&h?.secrets?.[e.key]?.set),message:`${e.label} is required`}],children:(0,p.jsx)(DA,{field:e,secretInfo:h?.secrets?.[e.key],live:e.optionsFrom===`provider`?s[e.key]??{options:[]}:void 0})},e.key))},`${m.key}-${t}`)]})}function AA({open:e,categories:t,onClose:n,onSaved:r}){let[i]=d.Form.useForm(),[a,o]=(0,u.useState)(!1);return(0,p.jsxs)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:`Add a provider`,width:640,open:e,onClose:n,destroyOnHidden:!0,extra:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{onClick:n,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,loading:a,onClick:async()=>{let e=await i.validateFields(),t={...e,fields:(e.fields??[]).map(e=>({...e,options:e.type===`select`?String(e.options??``).split(`,`).map(e=>e.trim()).filter(Boolean):void 0}))};o(!0);try{await Ek(t),d.message.success(`Provider added`),i.resetFields(),r()}catch(e){d.message.error(EA(e))}finally{o(!1)}},children:`Save provider`})]}),children:[(0,p.jsxs)(CA,{type:`secondary`,children:[`Describe the fields this provider needs (for example Filio, Tele CRM or ZeptoMail). Mark keys and tokens as `,(0,p.jsx)(`b`,{children:`secret`}),` so they are encrypted and never shown again.`]}),(0,p.jsxs)(d.Form,{form:i,layout:`vertical`,initialValues:{fields:[{key:`apiKey`,label:`API key`,type:`secret`,required:!0}]},children:[(0,p.jsxs)(d.Row,{gutter:12,children:[(0,p.jsx)(d.Col,{span:12,children:(0,p.jsx)(d.Form.Item,{name:`label`,label:`Name`,rules:[{required:!0}],children:(0,p.jsx)(d.Input,{placeholder:`Filio`})})}),(0,p.jsx)(d.Col,{span:12,children:(0,p.jsx)(d.Form.Item,{name:`key`,label:`Key`,rules:[{required:!0,pattern:/^[a-z][a-z0-9_-]{1,39}$/,message:`lowercase letters, digits, - or _`}],children:(0,p.jsx)(d.Input,{placeholder:`filio`})})}),(0,p.jsx)(d.Col,{span:12,children:(0,p.jsx)(d.Form.Item,{name:`category`,label:`Category`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:Object.entries(t??{}).map(([e,t])=>({value:e,label:t}))})})}),(0,p.jsx)(d.Col,{span:12,children:(0,p.jsx)(d.Form.Item,{name:`capabilities`,label:`Capabilities`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{mode:`multiple`,options:Object.entries(wA).map(([e,t])=>({value:e,label:t}))})})})]}),(0,p.jsx)(d.Form.List,{name:`fields`,children:(e,{add:t,remove:n})=>(0,p.jsxs)(p.Fragment,{children:[e.map(({key:e,name:t})=>(0,p.jsxs)(d.Row,{gutter:8,align:`middle`,children:[(0,p.jsx)(d.Col,{span:6,children:(0,p.jsx)(d.Form.Item,{name:[t,`key`],rules:[{required:!0,pattern:/^[a-zA-Z][a-zA-Z0-9_]{0,39}$/,message:`key`}],children:(0,p.jsx)(d.Input,{placeholder:`key`})})}),(0,p.jsx)(d.Col,{span:7,children:(0,p.jsx)(d.Form.Item,{name:[t,`label`],rules:[{required:!0,message:`label`}],children:(0,p.jsx)(d.Input,{placeholder:`Label`})})}),(0,p.jsx)(d.Col,{span:5,children:(0,p.jsx)(d.Form.Item,{name:[t,`type`],rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:TA.map(e=>({value:e,label:e}))})})}),(0,p.jsx)(d.Col,{span:3,children:(0,p.jsx)(d.Form.Item,{name:[t,`required`],valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{size:`small`,checkedChildren:`Req`})})}),(0,p.jsx)(d.Col,{span:3,children:(0,p.jsx)(d.Button,{type:`text`,danger:!0,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>n(t),"aria-label":`Remove field`})}),(0,p.jsx)(d.Form.Item,{noStyle:!0,shouldUpdate:!0,children:()=>i.getFieldValue([`fields`,t,`type`])===`select`?(0,p.jsx)(d.Col,{span:24,children:(0,p.jsx)(d.Form.Item,{name:[t,`options`],rules:[{required:!0}],children:(0,p.jsx)(d.Input,{placeholder:`Options, comma separated`})})}):null})]},e)),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>t({type:`text`}),children:`Add field`})]})})]})]})}var jA={none:{color:`default`,text:`No agent`},cannot:{color:`warning`,text:`Cannot create`},linked:{color:`success`,text:`Linked`},outdated:{color:`gold`,text:`Out of date`},disabled:{color:`default`,text:`Disabled`},missing:{color:`error`,text:`Missing`},inactive:{color:`default`,text:`User inactive`}},MA={created:(0,p.jsx)(f.CheckCircleFilled,{style:{color:`#16a34a`}}),linked:(0,p.jsx)(f.CheckCircleOutlined,{style:{color:`#2563eb`}}),failed:(0,p.jsx)(f.ExclamationCircleFilled,{style:{color:`#dc2626`}})};function NA({provider:e,onClose:t}){let[n,r]=(0,u.useState)({loading:!0}),[i,a]=(0,u.useState)({}),[o,s]=(0,u.useState)(!1),[c,l]=(0,u.useState)({}),[m,h]=(0,u.useState)([]),[g,_]=(0,u.useState)(``),[v,y]=(0,u.useState)(0),b=e?.key,x=e?.label??`the provider`;(0,u.useEffect)(()=>{if(!b)return;let e=!0;return Ok(b).then(t=>{e&&(r({loading:!1,...t}),h([]),a(Object.fromEntries((t?.users??[]).map(e=>[e.userId,e.linkedAgentId||e.suggestedAgentId||``]))))},t=>e&&r({loading:!1,error:EA(t)})),()=>{e=!1}},[b,v]);let S=()=>y(e=>e+1),C=n.users??[],w=g.trim().toLowerCase(),T=w?C.filter(e=>`${e.name} ${e.email} ${e.linkedAgentId}`.toLowerCase().includes(w)):C,E=C.filter(e=>(i[e.userId]??``)!==(e.linkedAgentId??``)),D=(n.agents??[]).map(e=>({value:e.agentId,label:[e.name,e.agentId,e.phone].filter(Boolean).join(` · `)})),O=n.setupMissing??[],k=n.canManage!==!1&&!O.length,A=e=>k&&(e.state===`none`||e.state===`missing`),j=async()=>{s(!0);try{let e=await Ak(b,E.map(e=>({userId:e.userId,agentId:String(i[e.userId]??``).trim()})));pk({ok:!0,title:`Agents saved`,heading:`Agents saved`,text:`${e?.linked??0} linked, ${e?.removed??0} removed.`}),S()}catch(e){d.message.error(EA(e))}finally{s(!1)}},M=async e=>{let t=C.filter(t=>e.includes(t.userId)).map(e=>e.name||`User ${e.userId}`);if(await fk({icon:(0,p.jsx)(f.TeamOutlined,{}),title:`Create in ${x}`,heading:`Create ${e.length} agent${e.length===1?``:`s`} in ${x}?`,text:t.length<=5?t.join(`, `):`${t.slice(0,5).join(`, `)} and ${t.length-5} more`,warning:`Each agent uses a ${x} licence. The user's own mobile rings first when they call a lead.`,okText:`Create`})){l(t=>({...t,...Object.fromEntries(e.map(e=>[e,!0]))}));try{let t=(await jk(b,e))?.results??[],n=t.filter(e=>e.outcome===`failed`).length;pk({ok:n===0,title:`Agents`,heading:n?`${t.length-n} of ${t.length} done`:`Agents ready`,rows:t.map(e=>({key:e.userId,icon:MA[e.outcome]??MA.failed,label:e.name||`User ${e.userId}`,value:[e.agentId,e.message].filter(Boolean).join(` · `)}))})}catch(e){pk({ok:!1,title:`Agents`,heading:`Nothing was created`,text:EA(e)})}finally{l({}),S()}}},N=async(e,t,n)=>{l(t=>({...t,[e.userId]:!0}));try{await t(),d.message.success(n),S()}catch(t){pk({ok:!1,title:`Agents`,heading:e.name||`User ${e.userId}`,text:EA(t)})}finally{l(t=>({...t,[e.userId]:!1}))}},P=async(e,t)=>{await fk({title:t?`Delete in ${x}`:`Unlink agent`,danger:t,okText:t?`Delete`:`Unlink`,heading:`${e.name||`User ${e.userId}`} · ${e.linkedAgentId}`,text:t?`The agent is deleted in ${x} (its licence is freed) and unlinked here.`:`The agent stays in ${x}; this user can no longer call until linked again.`})&&N(e,()=>Pk(b,e.userId,t),t?`Agent deleted`:`Agent unlinked`)},F=e=>{let t=n.canManage!==!1&&(!n.shared||!!e.createdHere),r=!!e.linkedAgentId;return(0,p.jsxs)(d.Space,{size:0,wrap:!0,children:[A(e)?(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>M([e.userId]),children:`Create`}):null,t&&e.state===`outdated`?(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>N(e,()=>Mk(b,e.userId),`Updated in ${x}`),children:`Update`}):null,t&&(e.state===`linked`||e.state===`outdated`||e.state===`inactive`)?(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>N(e,()=>Nk(b,e.userId,!1),`Agent disabled`),children:`Disable`}):null,t&&e.state===`disabled`?(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>N(e,()=>Nk(b,e.userId,!0),`Agent enabled`),children:`Enable`}):null,r?(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:[{key:`unlink`,label:`Unlink only`},...t&&e.createdHere&&e.state!==`missing`?[{key:`delete`,danger:!0,label:`Delete in ${x}`}]:[]],onClick:({key:t})=>P(e,t===`delete`)},children:(0,p.jsx)(d.Button,{size:`small`,type:`link`,danger:!0,children:`Remove`})}):null]})},I=n.webhook??{},L=m.filter(e=>C.some(t=>t.userId===e&&A(t)));return(0,p.jsx)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:(0,p.jsxs)(`span`,{children:[(0,p.jsx)(f.TeamOutlined,{}),` `,x,` agents`]}),width:920,open:!!e,onClose:t,destroyOnHidden:!0,extra:(0,p.jsxs)(d.Button,{type:`primary`,loading:o,disabled:!E.length,onClick:j,children:[`Save links `,E.length?`(${E.length})`:``]}),children:n.loading?(0,p.jsx)(d.Skeleton,{active:!0}):n.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:n.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:()=>{r({loading:!0}),S()},children:`Retry`})}):(0,p.jsxs)(d.Space,{direction:`vertical`,size:16,style:{width:`100%`},children:[(0,p.jsx)(d.Alert,{type:I.url?`info`:`warning`,showIcon:!0,message:`Call results`,description:I.url?(0,p.jsxs)(p.Fragment,{children:[`In `,x,`, add webhooks (POST, JSON, ISO 8601) to this address, with the header `,(0,p.jsx)(SA,{code:!0,copyable:!0,children:I.header}),` set to the webhook secret saved on this provider:`,(0,p.jsx)(CA,{copyable:{text:I.url},style:{margin:`6px 0 0`,wordBreak:`break-all`},children:(0,p.jsx)(SA,{code:!0,children:I.url})})]}):(0,p.jsxs)(p.Fragment,{children:[`This server has no public address for webhooks yet, so call results arrive from `,x,`'s call records within about 15 minutes. Path for when it has one: `,(0,p.jsx)(SA,{code:!0,copyable:!0,children:I.path})]})}),n.note?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`${x}'s agent list could not be read`,description:(0,p.jsxs)(p.Fragment,{children:[n.note,` You can still type an agent ID for a user and save the links.`]})}):null,n.canManage!==!1&&O.length?(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`To create agents from here`,description:(0,p.jsx)(`ul`,{style:{margin:0,paddingLeft:18},children:O.map(e=>(0,p.jsx)(`li`,{children:e},e))})}):null,(0,p.jsx)(SA,{type:`secondary`,children:`Each user who calls leads needs an agent: their own mobile rings first, then the lead. Create the agent here, or link one that already exists (suggestions match the mobile or the exact name; check them before saving).`}),(0,p.jsxs)(d.Space,{wrap:!0,style:{justifyContent:`space-between`,width:`100%`},children:[(0,p.jsx)(d.Input.Search,{allowClear:!0,placeholder:`Search users`,style:{width:260},value:g,onChange:e=>_(e.target.value),"aria-label":`Search users`}),(0,p.jsxs)(d.Space,{wrap:!0,children:[n.canManage===!1?null:(0,p.jsxs)(SA,{type:`secondary`,children:[n.agentsInTata??0,` agents in `,x]}),(0,p.jsxs)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),disabled:!L.length,loading:L.some(e=>c[e]),onClick:()=>M(L),children:[`Create in `,x,L.length?` (${L.length})`:``]})]})]}),(0,p.jsx)(d.Table,{rowKey:`userId`,size:`small`,pagination:T.length>15&&{pageSize:15},dataSource:T,scroll:{x:860},locale:{emptyText:(0,p.jsx)(d.Empty,{description:w?`No user matches.`:`No active users.`})},rowSelection:k?{selectedRowKeys:m,onChange:e=>h(e),getCheckboxProps:e=>({disabled:!A(e),"aria-label":`Select ${e.name||e.userId}`})}:void 0,columns:[{title:`User`,key:`user`,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(SA,{strong:!0,children:t.name||`User ${t.userId}`}),(0,p.jsx)(SA,{type:`secondary`,style:{fontSize:12},children:[t.email,t.phone].filter(Boolean).join(` · `)})]})},{title:`Status`,key:`state`,width:170,render:(e,t)=>{let n=jA[t.state]??jA[t.linkedAgentId?`linked`:`none`];return(0,p.jsxs)(d.Space,{direction:`vertical`,size:2,children:[(0,p.jsx)(d.Tag,{color:n.color,children:n.text}),t.reason?(0,p.jsx)(SA,{type:`secondary`,style:{fontSize:12},children:t.reason}):null]})}},{title:`Agent`,key:`agent`,width:280,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:2,style:{width:`100%`},children:[(0,p.jsx)(d.AutoComplete,{allowClear:!0,placeholder:`Not linked: pick or type an agent ID`,style:{width:`100%`},"aria-label":`Agent for ${t.name||t.userId}`,value:i[t.userId]||void 0,options:D,filterOption:(e,t)=>String(t?.label??``).toLowerCase().includes(e.toLowerCase()),onChange:e=>a(n=>({...n,[t.userId]:e??``}))}),!t.linkedAgentId&&t.suggestedAgentId&&i[t.userId]===t.suggestedAgentId?(0,p.jsx)(d.Tag,{color:`blue`,children:`Suggested · not saved yet`}):null]})},{title:`Actions`,key:`actions`,width:220,render:(e,t)=>c[t.userId]?(0,p.jsx)(d.Skeleton.Button,{active:!0,size:`small`}):F(t)}]})]})})}function PA({cred:e}){return e?e.active?(0,p.jsx)(lk,{tone:`green`,icon:(0,p.jsx)(f.CheckCircleFilled,{}),children:`Active`}):(0,p.jsx)(lk,{tone:`grey`,icon:(0,p.jsx)(f.MinusCircleOutlined,{}),children:`Inactive`}):(0,p.jsx)(lk,{tone:`grey`,children:`Not configured`})}var FA={mailgun:(0,p.jsx)(f.MailOutlined,{}),twilio:(0,p.jsx)(f.PhoneOutlined,{}),razorpay:(0,p.jsx)(f.CreditCardOutlined,{}),facebook:(0,p.jsx)(f.FacebookFilled,{})},IA={email:`email`,communication:`SMS / calling / WhatsApp`,payment:`online payments`,leads:`lead collection`};function LA(){let[e,t]=(0,u.useState)({loading:!0,error:``,providers:[],categories:{},encryptionReady:!0}),[n,r]=(0,u.useState)(null),[i,a]=(0,u.useState)(`email`),[o,s]=(0,u.useState)(null),[c,l]=(0,u.useState)(!1),[m,h]=(0,u.useState)(``),[g,_]=(0,u.useState)(null),v=(0,u.useCallback)(()=>Promise.all([xk(),yk().catch(()=>null)]).then(([e,t])=>({next:{loading:!1,error:``,providers:e?.providers??[],categories:e?.categories??{},encryptionReady:e?.encryptionReady!==!1},context:t}),e=>({next:{loading:!1,error:e?.status===403?`forbidden`:EA(e),providers:[],categories:{},encryptionReady:!0},context:null})),[]),y=({next:e,context:n})=>{t(e),r(n)},b=(0,u.useCallback)(()=>(t(e=>({...e,loading:!0,error:``})),v().then(y)),[v]);(0,u.useEffect)(()=>{let e=!0;return v().then(t=>e&&y(t)),()=>{e=!1}},[v]);let x=async e=>{let t=e.provider;h(`test:${t.key}`);try{let n=await Tk(t.key),r=n?.ok===!0;pk({ok:r,title:`Test connection`,heading:r?`Connection successful`:`Connection failed`,text:r?`The ${t.label} connection is working.`:`We couldn't connect to ${t.label}. Check the details below and try again.`,rows:[{key:`p`,icon:FA[t.key]??(0,p.jsx)(f.ApiOutlined,{}),label:`Provider`,value:`${t.label} (${(t.capabilities??[]).map(e=>wA[e]??e).join(`, `)})`},{key:`t`,icon:(0,p.jsx)(f.ClockCircleOutlined,{}),label:`Tested on`,value:new Date().toLocaleString()},r?{key:`r`,icon:(0,p.jsx)(f.CheckCircleFilled,{}),label:`Result`,value:(0,p.jsx)(lk,{tone:`green`,children:`Connected`})}:{key:`e`,icon:(0,p.jsx)(f.WarningOutlined,{}),label:`Error details`,value:n?.message||`The provider did not accept the request`,error:!0}],next:r?[]:[`Check the keys (secrets cannot be read back: enter them again to replace them).`,`Make sure the ${t.label} account is active.`],buttons:r?void 0:[{key:`edit`,label:`Edit details`,onClick:()=>s(e)},{key:`again`,label:`Test again`,primary:!0,onClick:()=>x(e)}]}),await b()}catch(e){d.message.error(EA(e))}finally{h(``)}},S=(e,t)=>{let n=e.provider,r=IA[n.category]??`this service`;fk({title:t?`Activate provider`:`Deactivate provider`,icon:t?(0,p.jsx)(f.CheckCircleOutlined,{}):(0,p.jsx)(f.PoweroffOutlined,{}),heading:t?`Activate ${n.label}?`:`Deactivate ${n.label}?`,text:t?`${n.label} will be used for ${r}. Any other provider in this category is switched off.`:`This stops using ${n.label} for ${r}. You can activate it again at any time.`,warning:t?null:`With no active provider, ${r} stops for your organisation until another provider is activated.`,okText:t?`Activate provider`:`Deactivate provider`,danger:!t,onOk:()=>T(`act:${n.key}`,()=>wk(n.key,t),t?`${n.label} is now active`:`${n.label} turned off`)})},C=e=>{let t=e.provider;fk({title:`Delete provider credentials`,icon:(0,p.jsx)(f.DeleteOutlined,{}),danger:!0,heading:`Delete the ${t.label} credentials?`,text:`The saved keys are removed. This cannot be undone.`,warning:`Anything using this provider stops working until new keys are saved.`,okText:`Delete credentials`,onOk:()=>T(`del:${t.key}`,()=>Ck(t.key),`Credentials deleted`)})},w=e=>{let t=e.provider;fk({title:`Remove provider`,icon:(0,p.jsx)(f.DeleteOutlined,{}),danger:!0,heading:`Remove the ${t.label} provider?`,text:`Its field definition is removed for every organisation.`,okText:`Remove provider`,onOk:()=>T(`rm:${t.key}`,()=>Dk(t.key),`Provider removed`)})},T=async(e,t,n)=>{h(e);try{let e=await t();n&&d.message.success(typeof n==`function`?n(e):n),await b()}catch(e){d.message.error(EA(e))}finally{h(``)}},E=e.providers.filter(e=>e.provider?.category===i),D=Object.entries(e.categories).map(([t,n])=>({value:t,label:`${n} (${e.providers.filter(e=>e.provider?.category===t&&e.credential?.active).length?`active`:`off`})`}));return e.error===`forbidden`?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:Wk}):(0,p.jsxs)(`div`,{className:`settings-section`,children:[(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-toolbar`,children:[(0,p.jsx)(CA,{type:`secondary`,style:{margin:0,flex:`1 1 320px`},children:`XXX Keys for the services this organisation uses. SMS, calls, WhatsApp, online payments, Facebook leads and email checks use the provider switched on here. Saved but switched off means that service is off for your organisation. With nothing saved in a category, the platform’s shared keys are used.`}),(0,p.jsxs)(d.Space,{wrap:!0,children:[(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:b,children:`Reload`}),n?.isPlatformOwner?(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>l(!0),children:`Add provider`}):null]})]}),e.encryptionReady?null:(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,style:{marginBottom:12},message:`The server encryption key is not set, so credentials cannot be saved. Set SECRETS_ENCRYPTION_KEY on the backend and restart it.`}),e.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:e.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:b,children:`Retry`})}):null,D.length?(0,p.jsx)(d.Segmented,{value:i,onChange:a,options:D,style:{marginBottom:16,maxWidth:`100%`,overflowX:`auto`}}):null,e.loading?(0,p.jsx)(d.Skeleton,{active:!0}):E.length===0?(0,p.jsx)(d.Empty,{description:`No provider in this category yet.`}):(0,p.jsx)(d.Row,{gutter:[16,16],children:E.map(e=>{let t=e.provider,r=e.credential,i=r?.lastTest;return(0,p.jsx)(d.Col,{xs:24,lg:12,children:(0,p.jsxs)(`div`,{className:`settings-provider-card`,style:{border:`1px solid var(--ct-border, #e5ebf0)`,borderRadius:12,padding:16,height:`100%`,boxSizing:`border-box`},children:[(0,p.jsxs)(d.Space,{style:{width:`100%`,justifyContent:`space-between`},align:`start`,children:[(0,p.jsxs)(d.Space,{direction:`vertical`,size:2,children:[(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`span`,{className:`cc-settings-provider-icon`,"aria-hidden":`true`,children:FA[t.key]??(0,p.jsx)(f.ApiOutlined,{})}),(0,p.jsx)(SA,{strong:!0,style:{fontSize:15},children:t.label})]}),(0,p.jsxs)(d.Space,{size:4,wrap:!0,children:[(t.capabilities??[]).map(e=>(t.pendingCapabilities??[]).includes(e)?(0,p.jsx)(d.Tooltip,{title:`${t.label} cannot do this yet. While it is active, this is turned off (no other provider is used).`,children:(0,p.jsxs)(d.Tag,{color:`default`,style:{opacity:.7},children:[wA[e]??e,` · not available yet`]})},e):(0,p.jsx)(d.Tag,{children:wA[e]??e},e)),t.builtIn?null:(0,p.jsx)(d.Tag,{color:`purple`,children:`Custom`})]})]}),(0,p.jsx)(PA,{cred:r})]}),r?(0,p.jsxs)(`div`,{style:{margin:`12px 0`,display:`grid`,gap:4},children:[(t.fields??[]).map(e=>{let t=e.type===`secret`?r.secrets?.[e.key]?.set?r.secrets[e.key].mask:`—`:r.values?.[e.key]||`—`;return(0,p.jsxs)(SA,{type:`secondary`,style:{fontSize:13},children:[e.label,`: `,(0,p.jsx)(SA,{style:{fontSize:13},children:t})]},e.key)}),i?(0,p.jsxs)(SA,{style:{fontSize:12},type:i.ok?`success`:`danger`,children:[i.ok?(0,p.jsx)(f.CheckCircleFilled,{}):(0,p.jsx)(f.ExclamationCircleFilled,{}),` `,i.message,` · `,new Date(i.at).toLocaleString()]}):(0,p.jsx)(SA,{type:`secondary`,style:{fontSize:12},children:`Not tested yet`}),r.rotatedAt?(0,p.jsxs)(SA,{type:`secondary`,style:{fontSize:12},children:[`Secrets rotated `,new Date(r.rotatedAt).toLocaleString()]}):null]}):(0,p.jsxs)(`div`,{className:`cc-settings-not-connected`,children:[(0,p.jsx)(f.DisconnectOutlined,{"aria-hidden":`true`}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(SA,{strong:!0,children:`Not connected`}),(0,p.jsx)(`br`,{}),(0,p.jsxs)(SA,{type:`secondary`,style:{fontSize:13},children:[`Add this provider's keys to use it for `,IA[t.category]??`this service`,`.`]})]})]}),(0,p.jsxs)(d.Space,{wrap:!0,children:[(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.KeyOutlined,{}),onClick:()=>s(e),children:r?`Edit / rotate`:`Configure`}),r&&(t.extras??[]).includes(`agents`)?(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.TeamOutlined,{}),onClick:()=>_(t),children:`Agents`}):null,r&&t.testable?(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ThunderboltOutlined,{}),loading:m===`test:${t.key}`,onClick:()=>x(e),children:`Test`}):null,r?(0,p.jsx)(d.Tooltip,{title:r.active?`Stop using this provider`:`Use this provider (turns off the others in this category)`,children:(0,p.jsx)(d.Switch,{checked:r.active,loading:m===`act:${t.key}`,checkedChildren:`Active`,unCheckedChildren:`Off`,onChange:t=>S(e,t)})}):null,r?(0,p.jsx)(d.Button,{danger:!0,type:`text`,icon:(0,p.jsx)(f.DeleteOutlined,{}),"aria-label":`Delete ${t.label} credentials`,onClick:()=>C(e)}):null,!t.builtIn&&n?.isPlatformOwner?(0,p.jsx)(d.Button,{type:`link`,danger:!0,onClick:()=>w(e),children:`Remove provider`}):null]})]})},t.key)})})]}),(0,p.jsx)(kA,{row:o,open:!!o,onClose:()=>s(null),onSaved:()=>{s(null),b()}}),(0,p.jsx)(NA,{provider:g,onClose:()=>_(null)}),(0,p.jsx)(AA,{open:c,categories:e.categories,onClose:()=>l(!1),onSaved:()=>{l(!1),b()}})]})}var{Text:RA}=d.Typography,zA={"credential.created":`Credential added`,"credential.updated":`Credential updated`,"credential.rotated":`Credential rotated`,"credential.deleted":`Credential deleted`,"credential.tested":`Provider tested`,"provider.activated":`Provider activated`,"provider.deactivated":`Provider turned off`,"provider.schema.saved":`Custom provider saved`,"provider.schema.removed":`Custom provider removed`,"payment.terms.saved":`Payment terms changed`,"settlement.created":`Settlement recorded`,"settlement.paid":`Payment recorded`,"reminder.created":`Reminder added`,"reminder.updated":`Reminder changed`,"reminder.paused":`Reminder paused`,"reminder.resumed":`Reminder resumed`,"reminder.deleted":`Reminder deleted`,"liveclasses.free.saved":`Free live classes shared`,"telephony.agents.saved":`Calling agents linked`},BA=e=>zA[e]??String(e??``).replace(/[._]+/g,` `).replace(/^\w/,e=>e.toUpperCase()),VA={credentials:{label:`Credentials`,icon:(0,p.jsx)(f.KeyOutlined,{}),tone:`blue`},payments:{label:`Payments`,icon:(0,p.jsx)(f.WalletOutlined,{}),tone:`green`},franchises:{label:`Franchise Management`,icon:(0,p.jsx)(f.ShopOutlined,{}),tone:`violet`},reminders:{label:`Reminders`,icon:(0,p.jsx)(f.BellOutlined,{}),tone:`amber`},"live-classes":{label:`Live Class Manager`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`pink`}},HA=(e=``)=>e===`payment.terms.saved`?`franchises`:/^(credential|provider|telephony)\./.test(e)?`credentials`:/^(payment|settlement)\./.test(e)?`payments`:e.startsWith(`reminder.`)?`reminders`:e.startsWith(`liveclasses.`)?`live-classes`:`other`,UA=(e=``)=>/(deleted|removed)$/.test(e)?`red`:/(paused|deactivated)$/.test(e)?`amber`:/(created|tested|activated|resumed|paid)$/.test(e)?`green`:/rotated$/.test(e)?`violet`:`blue`,WA={orgName:`Organisation name`,model:`Payment arrangement`,paymentMode:`Payment method`,settlementCycle:`Billing cycle`,commissionBps:`Commission rate`,platformFeePaise:`Platform fee (fixed)`,liveClassFree:`Free live classes`,liveClassPaid:`Paid live classes`,liveClassPricePaise:`Price per paid live class`,otherChargesPaise:`Other charges (total)`,linkedAccountId:`Linked account`,notes:`Agreement notes`},GA=(e,t)=>{if(t==null||t===``)return`Not set`;if(e.endsWith(`Paise`))return rA(t);if(e===`commissionBps`)return`${Number(t)/100}%`;let n={settlementCycle:Kk,paymentMode:Gk,model:qk}[e];return n?n[t]??String(t):typeof t==`boolean`?t?`Yes`:`No`:Array.isArray(t)?t.join(`, `):String(t)},KA=e=>e.replace(/([A-Z])/g,` $1`).replace(/^\w/,e=>e.toUpperCase()),qA=e=>Array.isArray(e.details?.changes)?e.details.changes:[],JA=e=>Object.entries(e??{}).filter(([t])=>t!==`changes`&&t!==`byBusinessUnit`&&!qA({details:e}).some(e=>e.field===t)),YA=e=>{let t=qA(e);if(t.length){let e=t[0];return`${WA[e.field]??KA(e.field)}: ${GA(e.field,e.from)} → ${GA(e.field,e.to)}${t.length>1?` (+${t.length-1} more)`:``}`}return JA(e.details).map(([e,t])=>`${KA(e)}: ${GA(e,t)}`).join(` · `)},XA=e=>e.actorName||`User ${e.actorId??``}`.trim();function ZA(){let[e,t]=(0,u.useState)({loading:!0,rows:[],error:``}),[n,r]=(0,u.useState)({q:``,module:`all`,tone:`all`,user:`all`,range:null}),[i,a]=(0,u.useState)(null),o=(0,u.useCallback)(()=>bk().then(e=>({loading:!1,rows:Array.isArray(e)?e:[],error:``}),e=>({loading:!1,rows:[],error:e?.status===403?Wk:e?.message||`Could not load the history`})),[]),s=()=>{t(e=>({...e,loading:!0,error:``})),o().then(t)};(0,u.useEffect)(()=>{let e=!0;return o().then(n=>e&&t(n)),()=>{e=!1}},[o]);let c=e=>t=>r(n=>({...n,[e]:t})),l=e.rows,h=[...new Set(l.map(XA))].sort(),g=n.q.trim().toLowerCase(),_=l.filter(e=>(n.module===`all`||HA(e.action)===n.module)&&(n.tone===`all`||UA(e.action)===n.tone)&&(n.user===`all`||XA(e)===n.user)&&(!n.range||!(0,m.default)(e.at).isBefore(n.range[0].startOf(`day`))&&!(0,m.default)(e.at).isAfter(n.range[1].endOf(`day`)))&&(!g||[BA(e.action),XA(e),VA[HA(e.action)]?.label,e.target,YA(e)].join(` `).toLowerCase().includes(g))),v=e=>l.filter(t=>HA(t.action)===e).length,y=()=>{let e=e=>`"${String(e??``).replace(/"/g,`""`)}"`,t=[[`Date`,`Event`,`Module`,`Changed by`,`Item`,`Details`].map(e).join(`,`)].concat(_.map(t=>[(0,m.default)(t.at).format(`YYYY-MM-DD HH:mm`),BA(t.action),VA[HA(t.action)]?.label??`Settings`,XA(t),t.target,YA(t)].map(e).join(`,`))),n=URL.createObjectURL(new Blob([t.join(`
|
|
44
|
-
`)],{type:`text/csv`}));Object.assign(document.createElement(`a`),{href:n,download:`settings-change-history-${(0,m.default)().format(`YYYY-MM-DD`)}.csv`}).click(),URL.revokeObjectURL(n)},b=[{title:`#`,key:`n`,width:50,render:(e,t,n)=>n+1},{title:`Event / activity`,dataIndex:`action`,render:e=>(0,p.jsx)(lk,{tone:UA(e),icon:VA[HA(e)]?.icon,children:BA(e)})},{title:`Module`,key:`module`,render:(e,t)=>VA[HA(t.action)]?.label??`Settings`},{title:`Changed by`,key:`by`,render:(e,t)=>(0,p.jsxs)(`span`,{className:`cc-settings-who`,children:[(0,p.jsx)(uk,{name:XA(t)}),XA(t)]}),sorter:(e,t)=>XA(e).localeCompare(XA(t))},{title:`Date & time`,dataIndex:`at`,width:180,render:e=>(0,m.default)(e).format(`MMM D, YYYY, h:mm A`),sorter:(e,t)=>(0,m.default)(e.at).valueOf()-(0,m.default)(t.at).valueOf()},{title:`Details`,key:`details`,ellipsis:!0,render:(e,t)=>(0,p.jsx)(RA,{type:`secondary`,style:{fontSize:12},children:YA(t)})},{title:``,key:`view`,width:56,render:(e,t)=>(0,p.jsx)(d.Button,{size:`small`,type:`text`,icon:(0,p.jsx)(f.EyeOutlined,{}),"aria-label":`View ${BA(t.action)}`,onClick:()=>a(t)})}],x=l.filter(e=>(0,m.default)(e.at).isSame((0,m.default)(),`day`)).length,S=l.filter(e=>(0,m.default)(e.at).isAfter((0,m.default)().subtract(7,`day`))).length,C=i?qA(i):[],w=i?JA(i.details):[];return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-history`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,icon:(0,p.jsx)(f.InfoCircleOutlined,{}),message:`Sensitive values such as passwords and secret keys are never shown in history.`}),e.error?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:e.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:s,children:`Retry`})}):(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(ck,{items:[{key:`all`,label:`Total changes`,value:l.length,sub:`${x} today · ${S} this week`,icon:(0,p.jsx)(f.HistoryOutlined,{}),tone:`pink`},...Object.entries(VA).map(([e,t])=>({key:e,label:t.label,value:v(e),icon:t.icon,tone:t.tone}))]}),(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-filters`,children:[(0,p.jsx)(d.Input,{allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search by event, person or module…`,value:n.q,onChange:e=>c(`q`)(e.target.value),style:{width:260,maxWidth:`100%`}}),(0,p.jsx)(d.Select,{value:n.module,onChange:c(`module`),style:{minWidth:170},"aria-label":`Module`,options:[{value:`all`,label:`All modules`},...Object.entries(VA).map(([e,t])=>({value:e,label:t.label}))]}),(0,p.jsx)(d.Select,{value:n.tone,onChange:c(`tone`),style:{minWidth:150},"aria-label":`Activity`,options:[{value:`all`,label:`All activities`},{value:`green`,label:`Added / tested / resumed`},{value:`blue`,label:`Changed`},{value:`amber`,label:`Paused / turned off`},{value:`violet`,label:`Rotated`},{value:`red`,label:`Deleted`}]}),(0,p.jsx)(d.Select,{value:n.user,onChange:c(`user`),style:{minWidth:150},"aria-label":`Changed by`,showSearch:!0,options:[{value:`all`,label:`All users`},...h.map(e=>({value:e,label:e}))]}),(0,p.jsx)(d.DatePicker.RangePicker,{value:n.range,onChange:c(`range`),format:`MMM D, YYYY`,allowClear:!0}),(0,p.jsx)(`span`,{style:{flex:1}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:s,children:`Reload`}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.DownloadOutlined,{}),onClick:y,disabled:!_.length,children:`Export`})]}),(0,p.jsx)(d.Table,{rowKey:e=>String(e._id),size:`middle`,loading:e.loading,columns:b,dataSource:_,scroll:{x:960},onRow:e=>({onDoubleClick:()=>a(e)}),pagination:{pageSize:10,showSizeChanger:!0,pageSizeOptions:[10,20,50],showTotal:(e,[t,n])=>`Showing ${t}–${n} of ${e} changes`},locale:{emptyText:(0,p.jsx)(d.Empty,{description:l.length?`No change matches these filters.`:`No changes recorded yet.`})}})]})]}),(0,p.jsx)(d.Drawer,{title:`Change details`,open:!!i,onClose:()=>a(null),width:460,rootClassName:`cc-settings-drawer`,children:i?(0,p.jsxs)(`div`,{className:`cc-history-detail`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__head`,children:[(0,p.jsx)(`span`,{className:`cc-settings-icon-tile`,"aria-hidden":`true`,children:VA[HA(i.action)]?.icon??(0,p.jsx)(f.HistoryOutlined,{})}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`cc-history-detail__title`,children:BA(i.action)}),(0,p.jsx)(RA,{type:`secondary`,children:YA(i)||`No further details were recorded.`})]})]}),(0,p.jsxs)(`dl`,{className:`cc-history-detail__facts`,children:[(0,p.jsx)(`dt`,{children:`Module`}),(0,p.jsx)(`dd`,{children:VA[HA(i.action)]?.label??`Settings`}),(0,p.jsx)(`dt`,{children:`Changed by`}),(0,p.jsx)(`dd`,{children:(0,p.jsxs)(`span`,{className:`cc-settings-who`,children:[(0,p.jsx)(uk,{name:XA(i)}),XA(i)]})}),(0,p.jsx)(`dt`,{children:`Date & time`}),(0,p.jsx)(`dd`,{children:(0,m.default)(i.at).format(`MMM D, YYYY, h:mm A`)}),i.target?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`dt`,{children:`Item`}),(0,p.jsx)(`dd`,{style:{wordBreak:`break-all`},children:i.target})]}):null]}),C.length?(0,p.jsxs)(`section`,{className:`cc-history-detail__changes`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__section`,children:[(0,p.jsx)(f.SwapOutlined,{}),` Changes (`,C.length,` item`,C.length===1?``:`s`,`)`]}),C.map(e=>(0,p.jsxs)(`div`,{className:`cc-history-change`,children:[(0,p.jsx)(`div`,{className:`cc-history-change__label`,children:WA[e.field]??KA(e.field)}),(0,p.jsxs)(`div`,{className:`cc-history-change__row`,children:[(0,p.jsxs)(`div`,{className:`cc-history-change__from`,children:[(0,p.jsx)(`small`,{children:`Previous value`}),(0,p.jsx)(`strong`,{children:GA(e.field,e.from)})]}),(0,p.jsx)(f.ArrowRightOutlined,{"aria-label":`changed to`}),(0,p.jsxs)(`div`,{className:`cc-history-change__to`,children:[(0,p.jsx)(`small`,{children:`Current value`}),(0,p.jsx)(`strong`,{children:GA(e.field,e.to)})]})]})]},e.field))]}):null,w.length?(0,p.jsxs)(`section`,{className:`cc-history-detail__extra`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__section`,children:[(0,p.jsx)(f.InfoCircleOutlined,{}),` Additional details`]}),(0,p.jsx)(`ul`,{children:w.map(([e,t])=>(0,p.jsxs)(`li`,{children:[KA(e),`: `,GA(e,t)]},e))})]}):null]}):null})]})}var{Text:QA}=d.Typography,$A=e=>e?.data?.error||e?.data?.message||e?.message||`Something went wrong`,ej=e=>Object.entries(e).map(([e,t])=>({value:e,label:t})),tj=e=>`…${String(e??``).slice(-6)}`,nj=e=>e.orgName||(e.isHead?`Franchise head`:`Franchise ${tj(e.businessUnitId)}`);function rj({userTypes:e=[]}){let t=(0,h.useNavigate)(),[n]=d.Form.useForm(),[r,i]=(0,u.useState)({loading:!0}),[a,o]=(0,u.useState)(0),[s,c]=(0,u.useState)(null),[l,m]=(0,u.useState)(!1),g=t=>e.find(e=>Number(e.value)===Number(t))?.label??t??`–`;(0,u.useEffect)(()=>{let e=!0;return Vk().then(t=>e&&i({loading:!1,...t}),t=>e&&i({loading:!1,error:t?.status===403?`Only the platform owner can manage franchises. You don't have permission to use this page. Ask your administrator to switch on Settings for your user type (Admin → User Types → Config).`:$A(t)})),()=>{e=!1}},[a]);let _=[...r.franchises??[]].sort((e,t)=>Number(t.isHead)-Number(e.isHead)||nj(e).localeCompare(nj(t))),v=d.Form.useWatch(`model`,n),y=e=>{let t=e.config??{};c(e),n.setFieldsValue({orgName:t.orgName||e.orgName,model:t.model||`CENTRAL`,paymentMode:t.paymentMode||`BANK_TRANSFER`,settlementCycle:t.settlementCycle||`MONTHLY`,commissionPct:(Number(t.commissionBps)||0)/100,platformFee:tA(t.platformFeePaise),liveClassFree:e.isHead?e.liveClasses?.free:t.liveClassFree??0,liveClassPaid:t.liveClassPaid??0,liveClassPrice:tA(t.liveClassPricePaise),linkedAccountId:t.linkedAccountId,notes:t.notes,otherCharges:(t.otherCharges??[]).map(e=>({label:e.label,amount:tA(e.amountPaise)}))})},b=async()=>{let e=await n.validateFields(),t={orgName:e.orgName??``,model:e.model,paymentMode:e.paymentMode,settlementCycle:e.settlementCycle,commissionBps:Math.round((Number(e.commissionPct)||0)*100),platformFeePaise:nA(e.platformFee),...s.isHead?{}:{liveClassFree:Number(e.liveClassFree)||0},liveClassPaid:Number(e.liveClassPaid)||0,liveClassPricePaise:nA(e.liveClassPrice),otherCharges:(e.otherCharges??[]).filter(e=>e?.label).map(e=>({label:e.label,amountPaise:nA(e.amount)})),linkedAccountId:e.linkedAccountId??``,notes:e.notes??``},r=e.orgName||nj(s);await fk({title:`Update franchise terms`,icon:(0,p.jsx)(f.AuditOutlined,{}),heading:`Update the terms of ${r}?`,text:`New terms apply to settlements recorded from now on. Past payments and settlements do not change.`,warning:`The organisation sees the new charges and payment method on its Payments page at once.`,okText:`Update terms`,onOk:async()=>{m(!0);try{await Ik(t,s.isOwn?{}:{businessUnitId:s.businessUnitId,businessId:s.businessId}),c(null),o(e=>e+1),pk({ok:!0,title:`Franchise terms updated`,heading:`Franchise terms updated`,text:`${r} now uses these terms.`,rows:[{key:`m`,icon:(0,p.jsx)(f.BankOutlined,{}),label:`Payment arrangement`,value:qk[t.model]??t.model},{key:`c`,icon:(0,p.jsx)(f.PercentageOutlined,{}),label:`Commission`,value:`${t.commissionBps/100}%`},{key:`f`,icon:(0,p.jsx)(f.WalletOutlined,{}),label:`Platform fee per cycle`,value:rA(t.platformFeePaise)},{key:`b`,icon:(0,p.jsx)(f.CalendarOutlined,{}),label:`Billing cycle`,value:Kk[t.settlementCycle]??t.settlementCycle},{key:`p`,icon:(0,p.jsx)(f.SafetyCertificateOutlined,{}),label:`Payment method`,value:Gk[t.paymentMode]??t.paymentMode}]})}catch(e){throw d.message.error($A(e)),e}finally{m(!1)}}}).catch(()=>{})},[x,S]=(0,u.useState)(`all`),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(null),D=_.filter(e=>(x===`all`||x===`head`==!!e.isHead)&&(!C||nj(e).toLowerCase().includes(C.toLowerCase()))),O=_.reduce((e,t)=>({users:e.users+(Number(t.userCount)||0),free:e.free+(Number(t.liveClasses?.free)||0),paid:e.paid+(Number(t.liveClasses?.paid)||0)}),{users:0,free:0,paid:0}),k=e=>{let t=e.config??{},n=[];return Number(t.commissionBps)&&n.push(`Commission (${Number(t.commissionBps)/100}%)`),Number(e.perCyclePaise)&&n.push(`${rA(e.perCyclePaise)} / ${String(Kk[t.settlementCycle]??``).toLowerCase()}`),n.join(` + `)||(e.isHead?`Platform (own)`:`No charges set`)};return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-franchises`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[r.loading?(0,p.jsx)(Y,{children:(0,p.jsx)(d.Skeleton,{active:!0})}):r.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:r.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:()=>{i({loading:!0}),o(e=>e+1)},children:`Retry`})}):(0,p.jsxs)(p.Fragment,{children:[r.platformOwnerConfigured?null:(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`No platform owner is set on the server yet, so every business unit counts as its own head. Set PLATFORM_OWNER_BUSINESS_UNIT_IDS to the head's business unit before adding franchises.`}),(0,p.jsx)(ck,{items:[{key:`o`,label:`Total organisations`,value:_.length,icon:(0,p.jsx)(f.ApartmentOutlined,{}),tone:`pink`},{key:`h`,label:`Head organisation`,value:_.filter(e=>e.isHead).length,icon:(0,p.jsx)(f.CrownOutlined,{}),tone:`violet`},{key:`f`,label:`Franchises`,value:_.filter(e=>!e.isHead).length,icon:(0,p.jsx)(f.ShopOutlined,{}),tone:`blue`},{key:`u`,label:`Total users`,value:O.users,icon:(0,p.jsx)(f.TeamOutlined,{}),tone:`green`},{key:`l`,label:`Total live-class allowance`,value:O.free+O.paid,sub:`Free: ${O.free} | Paid: ${O.paid}`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`amber`}]}),(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-filters`,children:[(0,p.jsx)(d.Segmented,{value:x,onChange:S,options:[{value:`all`,label:`All organisations (${_.length})`},{value:`head`,label:`Head organisation (${_.filter(e=>e.isHead).length})`},{value:`franchise`,label:`Franchises (${_.filter(e=>!e.isHead).length})`}]}),(0,p.jsx)(`span`,{style:{flex:1}}),(0,p.jsx)(d.Input,{allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search by organisation name…`,value:C,onChange:e=>w(e.target.value),style:{width:260,maxWidth:`100%`}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>{i({loading:!0}),o(e=>e+1)},children:`Reload`})]}),(0,p.jsx)(d.Table,{rowKey:`businessUnitId`,size:`middle`,columns:[{title:`Organisation name`,key:`org`,width:250,render:(e,t)=>(0,p.jsxs)(d.Space,{size:10,children:[(0,p.jsx)(`span`,{className:`cc-settings-provider-icon`,"aria-hidden":`true`,children:t.isHead?(0,p.jsx)(f.CrownOutlined,{}):(0,p.jsx)(f.ShopOutlined,{})}),(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(QA,{strong:!0,children:nj(t)}),(0,p.jsxs)(QA,{type:`secondary`,style:{fontSize:12},children:[`Business unit `,tj(t.businessUnitId),t.isOwn?` · you`:``]})]})]}),sorter:(e,t)=>nj(e).localeCompare(nj(t))},{title:`Status`,key:`status`,width:120,render:(e,t)=>t.configured||t.isHead?(0,p.jsx)(lk,{tone:`green`,children:`Active`}):(0,p.jsx)(lk,{tone:`amber`,children:`Terms not set`})},{title:`Type`,key:`type`,width:170,render:(e,t)=>t.isHead?(0,p.jsx)(lk,{tone:`violet`,children:`Head organisation`}):(0,p.jsx)(lk,{tone:`blue`,children:`Franchise`})},{title:`Plan`,key:`plan`,width:190,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(QA,{children:qk[t.config?.model]??t.config?.model}),(0,p.jsx)(QA,{type:`secondary`,style:{fontSize:12},children:Gk[t.config?.paymentMode]??`–`})]})},{title:`Users`,dataIndex:`userCount`,width:90,align:`right`,render:e=>(0,p.jsxs)(d.Space,{size:4,children:[(0,p.jsx)(f.TeamOutlined,{}),e??0]}),sorter:(e,t)=>(e.userCount??0)-(t.userCount??0)},{title:`Billing arrangement`,key:`billing`,width:220,render:(e,t)=>k(t)},{title:`Live-class allowance`,key:`live`,width:210,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsxs)(QA,{strong:!0,children:[(0,p.jsx)(f.VideoCameraOutlined,{}),` `,t.liveClasses?.limit??0]}),(0,p.jsxs)(QA,{type:`secondary`,style:{fontSize:12},children:[`(Free: `,t.liveClasses?.free??0,` | Paid: `,t.liveClasses?.paid??0,`) · `,t.liveClassesInUse??0,` in use`]})]})},{title:`Actions`,key:`act`,width:150,fixed:`right`,render:(e,n)=>(0,p.jsxs)(d.Space,{size:4,children:[(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EyeOutlined,{}),onClick:()=>E(n),children:`View`}),(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:[{key:`edit`,icon:(0,p.jsx)(f.EditOutlined,{}),label:`Edit terms`,onClick:()=>y(n)},{key:`statement`,icon:(0,p.jsx)(f.FileTextOutlined,{}),label:`View statement`,onClick:()=>t(`?section=payments${n.isOwn?``:`&businessUnitId=${n.businessUnitId}&businessId=${n.businessId}`}`)}]},children:(0,p.jsx)(d.Button,{size:`small`,type:`text`,icon:(0,p.jsx)(f.MoreOutlined,{}),"aria-label":`More for ${nj(n)}`})})]})}],dataSource:D,pagination:{pageSize:10,hideOnSinglePage:!0},scroll:{x:1400},locale:{emptyText:(0,p.jsx)(d.Empty,{description:`No organisation matches.`})}})]})]}),(0,p.jsx)(d.Drawer,{title:T?nj(T):``,open:!!T,onClose:()=>E(null),width:620,rootClassName:`cc-settings-drawer`,extra:T?(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{let e=T;E(null),y(e)},children:`Edit terms`}):null,children:T?(0,p.jsx)(d.Tabs,{items:[{key:`overview`,label:`Overview`,children:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(d.Space,{wrap:!0,style:{margin:`4px 0 12px`},children:[T.isHead?(0,p.jsx)(lk,{tone:`violet`,children:`Head organisation`}):(0,p.jsx)(lk,{tone:`blue`,children:`Franchise`}),(0,p.jsx)(lk,{tone:`green`,children:`Active`})]}),(0,p.jsx)(ck,{items:[{key:`u`,label:`Users`,value:T.userCount??0,icon:(0,p.jsx)(f.TeamOutlined,{}),tone:`green`},{key:`l`,label:`Live classes in use`,value:`${T.liveClassesInUse??0} / ${T.liveClasses?.limit??0}`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`amber`}]}),(0,p.jsx)(d.Descriptions,{size:`small`,column:1,bordered:!0,items:[{key:`m`,label:`Payment arrangement`,children:qk[T.config?.model]??T.config?.model},{key:`p`,label:`Fixed payment method`,children:Gk[T.config?.paymentMode]??`–`},{key:`b`,label:`Billing cycle`,children:Kk[T.config?.settlementCycle]??`–`},{key:`c`,label:`Commission`,children:`${(Number(T.config?.commissionBps)||0)/100}%`},{key:`f`,label:`Platform fee per cycle`,children:rA(T.config?.platformFeePaise)},{key:`t`,label:`Total charges per cycle`,children:(0,p.jsx)(QA,{strong:!0,children:rA(T.perCyclePaise)})},{key:`l`,label:`Live classes`,children:`Free ${T.liveClasses?.free??0} · Paid ${T.liveClasses?.paid??0} at ${rA(T.config?.liveClassPricePaise)} each`},...(T.charges??[]).length?[{key:`ch`,label:`Charges per cycle`,children:(T.charges??[]).map(e=>`${e.label}: ${rA(e.amountPaise)}`).join(` · `)}]:[],...T.config?.notes?[{key:`n`,label:`Agreement`,children:T.config.notes}]:[]]})]})},{key:`users`,label:`Users (${T.userCount??0})`,children:(0,p.jsx)(d.Table,{size:`small`,rowKey:e=>String(e._id),pagination:(T.users??[]).length>10&&{pageSize:10},dataSource:T.users??[],locale:{emptyText:(0,p.jsx)(d.Empty,{description:`No users yet.`})},columns:[{title:`Name`,key:`name`,render:(e,t)=>(0,p.jsxs)(d.Space,{size:8,children:[(0,p.jsx)(uk,{name:[t.firstName,t.lastName].filter(Boolean).join(` `)}),[t.firstName,t.lastName].filter(Boolean).join(` `)||`–`]})},{title:`Email`,dataIndex:`email`},{title:`User type`,dataIndex:`roleId`,render:g},{title:`Status`,dataIndex:`activeStatus`,render:e=>e===!1?(0,p.jsx)(lk,{tone:`grey`,children:`Inactive`}):(0,p.jsx)(lk,{tone:`green`,children:`Active`})}]})}]}):null}),(0,p.jsx)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:s?`Edit ${nj(s)}`:``,open:!!s,onClose:()=>c(null),width:560,destroyOnClose:!0,extra:(0,p.jsx)(d.Button,{type:`primary`,loading:l,onClick:b,children:`Save`}),children:(0,p.jsxs)(d.Form,{form:n,layout:`vertical`,requiredMark:`optional`,children:[(0,p.jsx)(d.Form.Item,{name:`orgName`,label:`Organisation name`,extra:`Shown in the header after sign-in for this organisation's users.`,rules:[{max:120}],children:(0,p.jsx)(d.Input,{placeholder:`e.g. BFSI and IT`})}),(0,p.jsxs)(d.Row,{gutter:12,children:[(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`model`,label:`Collection model`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:ej(qk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`paymentMode`,label:`Payment mode (fixed)`,rules:[{required:!0}],extra:`The franchise pays only by this mode.`,children:(0,p.jsx)(d.Select,{options:ej(Gk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`settlementCycle`,label:`Billing cycle`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:ej(Kk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`commissionPct`,label:`Commission on student payments`,rules:[{required:!0}],children:(0,p.jsx)(d.InputNumber,{min:0,max:100,step:.5,precision:2,addonAfter:`%`,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`platformFee`,label:`Platform fee per cycle`,children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`,style:{width:`100%`}})})}),v===`SPLIT`?(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`linkedAccountId`,label:`Razorpay Route linked account`,rules:[{required:!0,pattern:/^acc_[A-Za-z0-9]{8,32}$/,message:`acc_… from Razorpay Route`}],children:(0,p.jsx)(d.Input,{placeholder:`acc_XXXXXXXXXXXX`})})}):null]}),(0,p.jsx)(QA,{strong:!0,children:`Live classes at a time`}),(0,p.jsxs)(d.Row,{gutter:12,style:{marginTop:8},children:[(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassFree`,label:`Free`,extra:s?.isHead?`What is left of the free pool.`:`Out of the ${r.freePool??5} free.`,children:(0,p.jsx)(d.InputNumber,{min:0,max:r.freePool??5,disabled:s?.isHead,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassPaid`,label:`Paid`,children:(0,p.jsx)(d.InputNumber,{min:0,max:1e3,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassPrice`,label:`Price each`,extra:`Per paid class, per cycle.`,children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`,style:{width:`100%`}})})})]}),(0,p.jsx)(QA,{strong:!0,children:`Other charges per cycle`}),(0,p.jsx)(d.Form.List,{name:`otherCharges`,children:(e,{add:t,remove:n})=>(0,p.jsxs)(`div`,{style:{marginTop:8},children:[e.map(({key:e,name:t})=>(0,p.jsxs)(d.Space,{align:`start`,style:{display:`flex`},children:[(0,p.jsx)(d.Form.Item,{name:[t,`label`],rules:[{required:!0,message:`Label`},{max:80}],children:(0,p.jsx)(d.Input,{placeholder:`e.g. Support fee`})}),(0,p.jsx)(d.Form.Item,{name:[t,`amount`],rules:[{required:!0,message:`Amount`}],children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`})}),(0,p.jsx)(d.Button,{type:`text`,"aria-label":`Remove charge`,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>n(t)})]},e)),(0,p.jsx)(d.Button,{type:`dashed`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>t({label:``,amount:0}),disabled:e.length>=20,children:`Add charge`})]})}),(0,p.jsx)(d.Form.Item,{name:`notes`,label:`Agreement notes`,style:{marginTop:16},children:(0,p.jsx)(d.Input.TextArea,{rows:2,maxLength:1e3})})]})})]})}var{Text:ij}=d.Typography,aj=e=>e?.data?.error||e?.data?.message||e?.message||`Something went wrong`;function oj(){let[e,t]=(0,u.useState)({loading:!0}),[n,r]=(0,u.useState)(0),[i,a]=(0,u.useState)(null),[o,s]=(0,u.useState)(0),[c,l]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=!0;return Hk().then(n=>e&&t({loading:!1,...n}),n=>e&&t({loading:!1,error:n?.status===403?`You don't have permission to use this page. Ask your administrator to switch on Settings for your user type (Admin → User Types → Config).`:aj(n)})),()=>{e=!1}},[n]);let h=()=>{t({loading:!0}),r(e=>e+1)},g=e.allowance??{},_=Number(e.inUse)||0,v=Number(g.limit)||0,y=Math.max(v-_,0),b=Array.isArray(e.franchises)?e.franchises:null,x=Number(g.givenOut)||0,S=Number(g.pool)||5,C=async()=>{l(!0);try{await Uk(i.businessUnitId,Number(o)),d.message.success(`Free live classes saved`),a(null),h()}catch(e){d.message.error(aj(e))}finally{l(!1)}};if(e.loading)return(0,p.jsx)(Y,{children:(0,p.jsx)(d.Skeleton,{active:!0})});if(e.error)return(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:e.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:h,children:`Retry`})});let w=[{title:`Batch`,dataIndex:`batchName`,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(ij,{strong:!0,children:e||`Batch`}),(0,p.jsxs)(ij,{type:`secondary`,style:{fontSize:12},children:[`Session `,t.sessionKey]})]})},{title:`Started at`,dataIndex:`startedAt`,render:e=>e?(0,m.default)(e).format(`h:mm A`):`–`},{title:`Ends`,dataIndex:`endsAt`,render:e=>e?(0,m.default)(e).format(`h:mm A`):`–`},{title:`Duration`,key:`dur`,render:(e,t)=>t.startedAt&&t.endsAt?`${Math.max(0,(0,m.default)(t.endsAt).diff((0,m.default)(t.startedAt),`minute`))} min`:`–`},{title:`Slot status`,key:`st`,render:()=>(0,p.jsx)(lk,{tone:`green`,icon:(0,p.jsx)(f.CheckCircleFilled,{}),children:`In use`})},{title:`Platform`,key:`pl`,render:()=>`In-app live`}],T=e=>v?Math.round(e/v*100):0;return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-live`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[(0,p.jsx)(`div`,{className:`cc-settings-toolbar`,style:{marginBottom:0,justifyContent:`flex-end`},children:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:h,children:`Reload`})}),(0,p.jsx)(ck,{items:[{key:`total`,label:`Total allowed live classes`,value:v,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`pink`},{key:`run`,label:`Currently running`,value:_,icon:(0,p.jsx)(f.PlayCircleOutlined,{}),tone:`green`},{key:`avail`,label:`Available slots`,value:y,icon:(0,p.jsx)(f.CalendarOutlined,{}),tone:y?`blue`:`red`},{key:`free`,label:`Free live classes`,value:Number(g.free)||0,sub:g.isHead?`${x} shared with franchises`:`Given by the franchise head`,icon:(0,p.jsx)(f.GiftOutlined,{}),tone:`amber`},{key:`paid`,label:`Paid live classes`,value:Number(g.paid)||0,sub:Number(g.pricePaise)?`${rA(g.pricePaise)} each per ${String(Kk[g.billingCycle]??`billing`).toLowerCase()} cycle`:`Set in Franchise Management`,icon:(0,p.jsx)(f.CrownOutlined,{}),tone:`violet`}]}),(0,p.jsxs)(`div`,{className:`cc-live-banner${y?``:` is-full`}`,children:[(0,p.jsxs)(`span`,{children:[(0,p.jsx)(f.InfoCircleOutlined,{}),` Classes using external meeting links are not counted toward in-app live class limits.`]}),(0,p.jsxs)(`span`,{className:`cc-live-banner__state`,children:[y?(0,p.jsx)(f.CheckCircleFilled,{}):(0,p.jsx)(f.WarningFilled,{}),(0,p.jsxs)(`span`,{children:[(0,p.jsxs)(`strong`,{children:[y,` slot`,y===1?``:`s`,` available`]}),(0,p.jsx)(`br`,{}),(0,p.jsx)(`small`,{children:v===0?`No live classes allowed`:y?`Limit healthy`:`Limit reached`})]})]})]}),v===0||!y?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:v===0?`No live classes are available for your organisation.`:`All live class slots are in use.`,description:`A new in-app class cannot start until a slot frees up. Contact your admin to increase the live classes count.`}):null,(0,p.jsxs)(d.Row,{gutter:[16,16],children:[(0,p.jsx)(d.Col,{xs:24,xl:16,children:(0,p.jsxs)(Y,{children:[(0,p.jsxs)(ij,{strong:!0,style:{fontSize:15},children:[(0,p.jsx)(f.PlayCircleOutlined,{}),` Currently running classes`]}),(0,p.jsx)(d.Table,{style:{marginTop:10},scroll:{x:`max-content`},size:`middle`,rowKey:e=>String(e._id),pagination:!1,dataSource:e.running??[],locale:{emptyText:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No live class is running right now.`})},columns:w})]})}),(0,p.jsxs)(d.Col,{xs:24,xl:8,children:[(0,p.jsxs)(Y,{children:[(0,p.jsx)(ij,{strong:!0,style:{fontSize:15},children:`Slot usage summary`}),(0,p.jsxs)(`div`,{className:`cc-live-usage`,children:[(0,p.jsx)(`span`,{children:`Total slots`}),(0,p.jsx)(d.Progress,{percent:100,showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:v}),(0,p.jsx)(`span`,{children:`Running`}),(0,p.jsx)(d.Progress,{percent:T(_),showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:_}),(0,p.jsx)(`span`,{children:`Available`}),(0,p.jsx)(d.Progress,{percent:T(y),showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:y})]}),(0,p.jsxs)(ij,{type:`secondary`,style:{fontSize:12},children:[_,` / `,v,` in use now`]})]}),(0,p.jsxs)(Y,{style:{marginTop:16},children:[(0,p.jsx)(ij,{strong:!0,style:{fontSize:15},children:`Quick notes`}),(0,p.jsxs)(`ul`,{className:`cc-live-notes`,children:[(0,p.jsx)(`li`,{children:`Increase the allowance before starting more in-app classes once the limit is reached.`}),(0,p.jsx)(`li`,{children:`Free and paid live classes count together toward the limit.`}),(0,p.jsx)(`li`,{children:`External meeting links do not use live-class slots.`})]})]})]})]}),b?(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-toolbar`,children:[(0,p.jsxs)(ij,{strong:!0,style:{fontSize:15},children:[(0,p.jsx)(f.ShareAltOutlined,{}),` Free live class allocation`]}),(0,p.jsxs)(ij,{type:`secondary`,children:[S,` free classes · `,x,` shared with franchises · `,Number(g.free)||0,` kept by the head`]})]}),(0,p.jsx)(d.Progress,{percent:Math.round(x/S*100),success:{percent:0},format:()=>`${x} / ${S} shared`}),(0,p.jsx)(d.Table,{style:{marginTop:12},size:`middle`,scroll:{x:`max-content`},rowKey:`businessUnitId`,pagination:!1,dataSource:b,locale:{emptyText:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No franchises yet.`})},columns:[{title:`Franchise`,key:`name`,render:(e,t)=>t.orgName||(0,p.jsxs)(ij,{type:`secondary`,children:[`Business unit …`,String(t.businessUnitId).slice(-6)]})},{title:`Free`,key:`free`,align:`right`,render:(e,t)=>t.liveClasses?.free??0},{title:`Paid`,key:`paid`,align:`right`,render:(e,t)=>t.liveClasses?.paid??0},{title:`At a time`,key:`limit`,align:`right`,render:(e,t)=>(0,p.jsx)(lk,{tone:`pink`,children:t.liveClasses?.limit??0})},{title:``,key:`act`,width:100,render:(e,t)=>(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{a(t),s(t.liveClasses?.free??0)},children:`Edit`})}]})]}):null,(0,p.jsx)(d.Modal,{title:`Edit live class allocation`,open:!!i,centered:!0,rootClassName:`cc-settings-dialog`,onCancel:()=>a(null),onOk:C,okText:`Save allocation`,confirmLoading:c,okButtonProps:{disabled:i&&Number(o)===Number(i.liveClasses?.free??0)},children:i?(0,p.jsxs)(`div`,{className:`cc-settings-dialog__body`,children:[(0,p.jsx)(`span`,{className:`cc-settings-dialog__art`,"aria-hidden":`true`,children:(0,p.jsx)(f.GiftOutlined,{})}),(0,p.jsx)(`div`,{className:`cc-settings-dialog__heading`,children:i.orgName||`Franchise`}),(0,p.jsxs)(`div`,{className:`cc-settings-dialog__text`,children:[`Free live classes this franchise may run at the same time. `,S-x+(i.liveClasses?.free??0),` of the `,S,` free classes can still be given.`]}),(0,p.jsx)(d.InputNumber,{style:{marginTop:14,width:160},min:0,max:S,value:o,onChange:e=>s(e??0),"aria-label":`Free live classes`}),(0,p.jsx)(`div`,{className:`cc-settings-dialog__warning`,children:(0,p.jsx)(`span`,{children:`Paid classes and their price are set in Franchise Management.`})})]}):null})]})}var sj=`cc-settings-home-tip-hidden`,cj={payments:()=>Fk({}).then(e=>[`${Kk[e?.config?.settlementCycle]??`Monthly`} billing`,e?.perCyclePaise?`${rA(e.perCyclePaise)} per cycle`:`No fixed charges`]),reminders:()=>Jk().then(e=>{let t=e?.rules??[],n=t.filter(e=>e.active).length;return{ok:n>0,parts:[`${n} active`,`${t.length-n} paused`]}}),credentials:()=>xk().then(e=>{let t=e?.providers??[],n=t.filter(e=>e.credential?.active).length;return{ok:n>0,parts:[`${n} active`,`${t.filter(e=>!e.credential).length} not configured`]}}),mappings:()=>c.r().then(e=>({ok:!0,parts:[e?.settings?.mode===`equal_daily`?`Equal daily distribution`:`Round-robin distribution`]})),"live-classes":()=>Hk().then(e=>{let t=Number(e?.allowance?.limit)||0,n=Number(e?.inUse)||0;return{ok:t>n,parts:[`${n} running`,`${Math.max(t-n,0)} available`]}}),franchises:()=>Vk().then(e=>[`${(e?.franchises??[]).length} organisations`]),history:()=>bk().then(e=>{let t=Date.now()-2592e6;return[`${(e??[]).filter(e=>new Date(e.at).getTime()>=t).length} changes (last 30 days)`]})},lj={payments:`View statements, charges, commission and settlements.`,reminders:`Set up and manage automated reminders and admin alerts.`,credentials:`Manage service accounts for Email, SMS / Calling, Payments and Lead Ads.`,mappings:`Facebook course mapping, counsellor distribution and lead flow.`,"live-classes":`View and manage in-app live class limits, usage and allocations.`,franchises:`View franchises and manage their business and payment terms.`,history:`See every change made to settings, with who, when and what.`,users:`Users, user types and what each user type may see and do.`};function uj(e){let[t,n]=(0,u.useState)({loading:!!cj[e]});return(0,u.useEffect)(()=>{if(!cj[e])return;let t=!0;return Promise.resolve().then(cj[e]).then(e=>t&&n({loading:!1,...Array.isArray(e)?{parts:e}:e}),()=>t&&n({loading:!1})),()=>{t=!1}},[e]),t}function dj({section:e,onOpen:t}){let n=uj(e.key);return(0,p.jsxs)(`div`,{className:`cc-settings-home__card`,"data-section":e.key,children:[(0,p.jsx)(`span`,{className:`cc-settings-icon-tile`,"aria-hidden":`true`,children:e.icon}),(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(`div`,{className:`cc-settings-home__title`,children:e.label}),(0,p.jsx)(`div`,{className:`cc-settings-home__text`,children:lj[e.key]}),n.loading?(0,p.jsx)(d.Skeleton.Input,{active:!0,size:`small`,style:{width:160,height:18}}):n.parts?.length?(0,p.jsxs)(`div`,{className:`cc-settings-home__status`,children:[n.ok?(0,p.jsx)(f.CheckCircleFilled,{"aria-hidden":`true`}):null,n.parts.map((e,t)=>(0,p.jsxs)(`span`,{children:[t>0?(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{opacity:.4,marginRight:10},children:`|`}):null,e]},e))]}):null]}),(0,p.jsxs)(d.Button,{className:`cc-settings-home__open`,onClick:()=>t(e.key),"aria-label":`Open ${e.label}`,children:[`Open `,(0,p.jsx)(f.ArrowRightOutlined,{})]})]})}function fj({sections:e,onOpen:t}){let[n,r]=(0,u.useState)(()=>{try{return localStorage.getItem(sj)===`1`}catch{return!1}});return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(sk,{icon:(0,p.jsx)(f.SettingOutlined,{}),title:`Settings`,crumbs:[],subtitle:`Manage your organisation's payments, reminders, service connections, live-class limits and franchise settings.`}),n?null:(0,p.jsx)(d.Alert,{className:`cc-settings-home__tip`,type:`info`,showIcon:!0,closable:!0,onClose:()=>{r(!0);try{localStorage.setItem(sj,`1`)}catch{}},message:`Tip: you can manage the following settings. The options you see depend on your user type and permissions.`}),(0,p.jsx)(`div`,{className:`cc-settings-home__grid`,children:e.map(e=>(0,p.jsx)(dj,{section:e,onOpen:t},e.key))})]})}var pj=(0,u.lazy)(()=>Promise.resolve().then(()=>require("./FacebookCourseMappingsSection-C7qyexlU.cjs")).then(e=>e.n)),mj=(0,u.lazy)(()=>Promise.resolve().then(()=>dC)),{Title:hj}=d.Typography,gj=[{key:`mappings`,label:`Mapping & Distributions`,icon:(0,p.jsx)(f.BranchesOutlined,{}),subtitle:`Facebook form course mapping, counsellor distribution and lead flow.`},{key:`credentials`,label:`Credentials`,icon:(0,p.jsx)(f.KeyOutlined,{}),subtitle:`Service accounts for Email, SMS / Calling / WhatsApp, Payments and Lead Ads.`},{key:`reminders`,label:`Reminders`,icon:(0,p.jsx)(f.BellOutlined,{}),subtitle:`Automated reminders and admin alerts for leads, classes and services.`},{key:`payments`,label:`Payments`,icon:(0,p.jsx)(f.WalletOutlined,{}),subtitle:`Payment arrangement, collections, charges and the final payable or receivable amount.`},{key:`live-classes`,label:`Live Class Manager`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),subtitle:`In-app live class capacity, running classes and available slots.`},{key:`franchises`,label:`Franchise Management`,icon:(0,p.jsx)(f.ShopOutlined,{}),ownerOnly:!0,subtitle:`The platform organisation and its franchises: plans, billing and live-class allowance.`},{key:`history`,label:`Change History`,icon:(0,p.jsx)(f.HistoryOutlined,{}),subtitle:`Every change made to settings, payments, reminders and providers.`},{key:`users`,label:`Users & User Types`,icon:(0,p.jsx)(f.TeamOutlined,{}),subtitle:`People who use the system, their user types and what each type may do.`}],_j=[{value:`users`,label:`User List`},{value:`roles`,label:`User Types & Permissions`}];function vj(){let[e,t]=(0,h.useSearchParams)(),n=d.Grid.useBreakpoint().md!==!1,[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)(!1),s=gj.filter(e=>!e.ownerOnly||a).map(({ownerOnly:e,subtitle:t,...n})=>n),c=e.get(`section`),l=e.get(`view`)===`roles`?`roles`:`users`,f=gj.some(e=>e.key===c)&&(c!==`franchises`||a)?c:``,m=gj.find(e=>e.key===f);(0,u.useEffect)(()=>{let e=!0;return yk().then(t=>e&&o(!!t?.isPlatformOwner),()=>{}),()=>{e=!1}},[]),(0,u.useEffect)(()=>{if(f!==`reminders`&&f!==`franchises`)return;let e=!0;return Lh().then(t=>e&&i((t??[]).map(e=>({value:Number(e.user_type_id),label:e.user_type_name}))),()=>{}),()=>{e=!1}},[f]);let g=e=>t(t=>{let n=new URLSearchParams(t);return e?n.set(`section`,e):n.delete(`section`),[`view`,`businessUnitId`,`businessId`].forEach(e=>n.delete(e)),n});if(!f)return(0,p.jsx)(`div`,{className:`cc-settings-page`,style:{padding:n?24:16},children:(0,p.jsx)(fj,{sections:gj.filter(e=>!e.ownerOnly||a),isOwner:a,onOpen:g})});let _={payments:(0,p.jsx)(lA,{}),reminders:(0,p.jsx)(xA,{userTypes:r}),credentials:(0,p.jsx)(LA,{}),"live-classes":(0,p.jsx)(oj,{}),franchises:(0,p.jsx)(rj,{userTypes:r}),mappings:(0,p.jsx)(`div`,{className:`settings-section cc-settings-mappings`,children:(0,p.jsx)(Y,{children:(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Skeleton,{active:!0}),children:(0,p.jsx)(pj,{})})})}),history:(0,p.jsx)(ZA,{}),users:(0,p.jsx)(`div`,{className:`settings-section cc-settings-users`,children:(0,p.jsxs)(Y,{children:[(0,p.jsx)(d.Segmented,{block:!n,options:_j,value:l,style:{marginBottom:16,maxWidth:`100%`},onChange:e=>t(t=>{let n=new URLSearchParams(t);return n.set(`view`,e),n})}),(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Skeleton,{active:!0}),children:(0,p.jsx)(mj,{embedded:!0,initialTab:l},l)})]})})}[f];return(0,p.jsx)(`div`,{className:`cc-settings-page`,style:{padding:n?24:16},children:(0,p.jsxs)(d.Flex,{gap:n?24:12,vertical:!n,align:`flex-start`,children:[n?(0,p.jsxs)(`div`,{className:`cc-settings-side`,style:{width:248,flexShrink:0,position:`sticky`,top:16},children:[(0,p.jsx)(hj,{level:4,className:`cc-settings-side__title`,children:`Settings`}),(0,p.jsx)(d.Menu,{className:`cc-settings-nav`,mode:`inline`,selectedKeys:[f],items:s,onClick:({key:e})=>g(e),style:{borderRadius:8,padding:8}})]}):(0,p.jsx)(d.Tabs,{className:`cc-settings-nav`,activeKey:f,onChange:g,items:s,style:{width:`100%`,minWidth:0}}),(0,p.jsxs)(`div`,{className:`cc-settings-body`,style:{flex:1,minWidth:0,width:`100%`},children:[(0,p.jsx)(sk,{icon:m.icon,title:m.label,subtitle:m.subtitle,onHome:()=>g(``)}),_]})]})})}var{Text:yj}=d.Typography,bj=[{label:`Total Jobs`,value:1697,icon:`fileText`},{label:`Active Jobs`,value:1685,icon:`checkCircle`},{label:`My Jobs`,value:600,icon:`user`}],xj={fileText:(0,p.jsx)(f.FileTextOutlined,{}),checkCircle:(0,p.jsx)(f.CheckCircleOutlined,{}),user:(0,p.jsx)(f.UserOutlined,{}),filter:(0,p.jsx)(f.FilterOutlined,{})};function Sj({stats:e=bj}){return(0,p.jsx)(d.Card,{children:(0,p.jsx)(d.Row,{gutter:[12,12],children:e.map(e=>(0,p.jsx)(d.Col,{xs:24,sm:24,md:8,lg:8,xl:8,children:(0,p.jsxs)(d.Card,{className:`stats-inner-card`,children:[(0,p.jsxs)(d.Space,{align:`center`,children:[xj[e.icon]??xj.fileText,(0,p.jsx)(yj,{children:e.label})]}),(0,p.jsx)(d.Statistic,{value:e.value})]})},e.label))})})}var{Text:Cj}=d.Typography;function wj(e){return e?.USER_NAME??e?.user_name??e?.username??e?.name??e?.full_name??e?.fullName??e?.email??`User ${e?.USER_ID??e?.user_id??`?`}`}function Tj(e){return{...e,key:e.USER_ID??e.user_id??e.userId??e.id??e._id,_name:wj(e),_email:e.email??e.EMAIL??e.user_email??``,_role:e.role_name??e.roleName??e.ROLE_NAME??``,_rawRef:e}}function Ej(){let[e,t]=(0,u.useState)([]),[r,i]=(0,u.useState)(0),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(1),[l,m]=(0,u.useState)(10),[h,g]=(0,u.useState)(``),_=(0,u.useCallback)(async({offset:e,limit:r,searchQuery:a}={})=>{o(!0);try{let o=await n.Qi({offset:e,limit:r,searchQuery:a??``}),s=(o.users??[]).map(Tj);t(s),i(o.total??s.length)}catch{d.message.error(`Failed to load users`)}finally{o(!1)}},[]);return(0,u.useEffect)(()=>{queueMicrotask(()=>{_({offset:(s-1)*l,limit:l,searchQuery:h})})},[_,s,l,h]),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.TeamOutlined,{}),title:`Users`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Users`,dataSource:e,fields:[{label:`Name`,value:`_name`,width:220,render:(e,t)=>(0,p.jsxs)(`div`,{children:[(0,p.jsx)(Cj,{strong:!0,style:{fontSize:13},children:e}),t._email&&(0,p.jsx)(`div`,{style:{fontSize:11,color:`var(--color-text-muted)`},children:t._email})]})},{label:`Role`,value:`_role`,width:180}],loading:a,total:r,current:s,pageSize:l,onPageChange:e=>c(e),onPageSizeChange:e=>{m(e),c(1)},onSearch:e=>{g(e),c(1)}})})}var{Text:Dj}=d.Typography,Oj=[{key:`job`,label:`Jobs`},{key:`candidate`,label:`Candidates`},{key:`submissions`,label:`Submissions`}],kj=[{key:`listView`,label:`List View`},{key:`filter`,label:`Filter`},{key:`form`,label:`Form`}];function Aj({field:e,index:t,onToggle:n,onReorder:r}){let i=(0,u.useRef)(null),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1);function l(e){i.current=t,e.dataTransfer.effectAllowed=`move`,c(!0)}function m(){c(!1),o(!1)}function h(e){e.preventDefault(),o(!0)}function g(){o(!1)}function _(e){e.preventDefault(),o(!1),i.current!==null&&i.current!==t&&r(i.current,t),i.current=null}return(0,p.jsxs)(`div`,{draggable:!0,onDragStart:l,onDragEnd:m,onDragOver:h,onDragLeave:g,onDrop:_,className:`uss-field-row with-edit${a?` drag-over`:``}${s?` dragging`:``}`,children:[(0,p.jsx)(`span`,{className:`uss-drag-handle`,children:(0,p.jsx)(f.HolderOutlined,{})}),(0,p.jsxs)(`span`,{className:`uss-field-name`,children:[e.fieldName,(0,p.jsx)(`span`,{className:`uss-field-key`,children:e.fieldKey})]}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:e.isVisible,onChange:e=>n(t,`isVisible`,e)})}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:!!e.isEditable,onChange:e=>n(t,`isEditable`,e)})}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:!!e.ismandatory,onChange:e=>n(t,`ismandatory`,e)})})]})}function jj({team:e,configType:t}){let[r,i]=(0,u.useState)({}),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)({}),[l,f]=(0,u.useState)(`job`);(0,u.useEffect)(()=>{e&&(o(!0),n.ja(e,t).then(i).catch(()=>d.message.error(`Failed to load field config`)).finally(()=>o(!1)))},[e,t]);let m=r[l]??[];function h(e,t){i(n=>({...n,[e]:typeof t==`function`?t(n[e]??[]):t}))}function g(e,t,n){h(l,r=>r.map((r,i)=>i===e?{...r,[t]:n}:r))}function _(e,t){h(l,n=>{let r=[...n],[i]=r.splice(e,1);return r.splice(t,0,i),r.map((e,t)=>({...e,order:t}))})}async function v(){let r=l;c(e=>({...e,[r]:!0}));try{await n.io(e,r,m,t),d.message.success(`Saved`)}catch{d.message.error(`Save failed`)}finally{c(e=>({...e,[r]:!1}))}}return(0,p.jsxs)(d.Spin,{spinning:a,children:[(0,p.jsx)(d.Tabs,{size:`small`,activeKey:l,onChange:f,items:Oj.map(e=>({key:e.key,label:e.label}))}),(0,p.jsxs)(`div`,{className:`uss-field-header with-edit`,children:[(0,p.jsx)(`span`,{}),(0,p.jsx)(`span`,{children:`Field`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Visible`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Editable`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Mandatory`})]}),(0,p.jsxs)(`div`,{className:`uss-field-list`,children:[m.length===0&&!a&&(0,p.jsx)(`div`,{className:`uss-empty`,children:`No fields found.`}),m.map((e,t)=>(0,p.jsx)(Aj,{field:e,index:t,onToggle:g,onReorder:_},e.fieldKey??t))]}),(0,p.jsx)(`div`,{className:`uss-modal-footer`,children:(0,p.jsxs)(d.Button,{type:`primary`,size:`small`,loading:s[l],onClick:v,children:[`Save `,Oj.find(e=>e.key===l)?.label]})})]})}function Mj(){let[e,t]=(0,u.useState)(null),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(`listView`),[l,m]=(0,u.useState)([]),[h,g]=(0,u.useState)(0),[_,v]=(0,u.useState)(!1),[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)(!1),C=(0,u.useCallback)(async()=>{v(!0);try{let e=await n.Zi();m(e.teams),g(e.total)}catch{d.message.error(`Failed to load teams`)}finally{v(!1)}},[]);(0,u.useEffect)(()=>{C()},[C]);function w(e){t(e),c(`listView`),i(!0)}function T(e){t(e),b(e.teamName??``),o(!0)}async function E(){if(!y.trim()){d.message.warning(`Team name is required`);return}S(!0);try{await n.ro(e,{teamName:y.trim(),managerId:e.managerId,memberIds:e.memberIds}),d.message.success(`Team updated`),o(!1),C()}catch{d.message.error(`Failed to update team`)}finally{S(!1)}}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(Y,{icon:(0,p.jsx)(f.TeamOutlined,{}),title:`Teams`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Teams`,dataSource:l,fields:[{label:`Team Name`,value:`teamName`,width:200},{label:`Manager`,value:`manager`,width:200},{label:`Members`,value:`memberCount`,width:90,sorter:!1},{label:`Actions`,value:`_actions`,width:160,sorter:!1,render:(e,t)=>(0,p.jsxs)(`div`,{style:{display:`flex`,gap:4},children:[(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>T(t),children:`Edit`}),(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>w(t),children:`Configure`})]})}],loading:_,total:h})}),(0,p.jsx)(d.Modal,{open:a,onCancel:()=>o(!1),title:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(f.TeamOutlined,{style:{color:`var(--color-brand)`,marginRight:6}}),`Edit Team`]}),width:420,footer:null,destroyOnClose:!0,children:(0,p.jsxs)(`div`,{className:`uss-edit-team-body`,style:{paddingTop:12},children:[(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`uss-edit-team-label`,children:`Team Name`}),(0,p.jsx)(d.Input,{value:y,onChange:e=>b(e.target.value),onPressEnter:E,placeholder:`Enter team name`})]}),(0,p.jsxs)(`div`,{className:`uss-modal-footer`,children:[(0,p.jsx)(d.Button,{onClick:()=>o(!1),children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,loading:x,onClick:E,children:`Save`})]})]})}),(0,p.jsxs)(d.Modal,{className:`uss-modal`,open:r,onCancel:()=>i(!1),title:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.TeamOutlined,{style:{color:`var(--color-brand)`}}),(0,p.jsxs)(`span`,{children:[`Configure: `,e?.teamName]})]}),width:720,footer:null,destroyOnClose:!0,children:[(0,p.jsx)(`div`,{style:{marginBottom:12},children:(0,p.jsx)(`div`,{className:`uss-config-toggle`,children:kj.map(e=>(0,p.jsx)(`button`,{className:`uss-config-btn${s===e.key?` active`:``}`,onClick:()=>c(e.key),children:e.label},e.key))})}),e&&(0,p.jsx)(jj,{team:e,configType:s},`${e?.teamId}-${s}`)]})]})}var Nj=[`view`,`add`,`edit`,`delete`],Pj={view:`View`,add:`Add`,edit:`Edit`,delete:`Delete`,sourcing:`Sourcing`,assign:`Assign`,share:`Share`,change_status:`Status`,my_jobs:`My Jobs`,all_jobs:`All Jobs`,po_msa:`PO MSA`,reApprove:`ReApprove`,sendApprove:`Send Approve`};function Fj(e){return Pj[e]??e.replace(/_/g,` `).replace(/\b\w/g,e=>e.toUpperCase())}function Ij(e){let t=Nj.filter(t=>e.includes(t)),n=e.filter(e=>!Nj.includes(e)).sort();return[...t,...n]}function Lj(e){let t=new Set;return Object.values(e).forEach(({permissions:e})=>Object.keys(e??{}).forEach(e=>t.add(e))),Ij([...t])}function Rj(e){let t=0,n=0;return Object.entries(e).forEach(([e,{permissions:r}])=>{Object.entries(r??{}).forEach(([r,{value:i}])=>{Zh(e,r)&&(n++,i===`1`&&t++)})}),{enabled:t,total:n}}function zj(e={}){if(!e||typeof e!=`object`)return e;let t=Object.keys(e).find(e=>String(e).trim().toLowerCase()===`onboarding`);if(!t)return e;let n=e[t]??{},r={...n.permissions??{}};for(let e of[`sendApprove`,`reApprove`])Object.keys(r).some(t=>t.toLowerCase()===e.toLowerCase())||(r[e]={id:0,value:`0`});return{...e,[t]:{...n,permissions:r}}}function Bj({value:e,onSave:t,className:n}){let[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(e);(0,u.useEffect)(()=>{o(e)},[e]);function s(){i(!1);let n=a.trim();n&&n!==e?t(n):o(e)}return r?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-inline-input${n?` ${n}`:``}`,value:a,style:{width:Math.max(48,a.length*8)},onChange:e=>o(e.target.value),onBlur:s,onKeyDown:t=>{t.key===`Enter`&&s(),t.key===`Escape`&&(i(!1),o(e)),t.stopPropagation()},onClick:e=>e.stopPropagation()}):(0,p.jsxs)(`span`,{className:`perm-editable-name${n?` ${n}`:``}`,onDoubleClick:e=>{e.stopPropagation(),i(!0)},children:[e,(0,p.jsx)(f.EditOutlined,{className:`perm-name-edit-icon`})]})}function Vj({entry:e,label:t,onToggle:n,onLabelSave:r}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(t),c=e?.value===`1`,l=!!e;(0,u.useEffect)(()=>{s(t)},[t]);function m(){a(!1);let e=o.trim();e&&e!==t?r(e):s(t)}return(0,p.jsx)(d.Tooltip,{title:l?c?`Click to disable`:`Click to enable`:`Not applicable for this module`,children:(0,p.jsxs)(`div`,{className:`perm-action-pill${c?` on`:``}${l?``:` na`}`,onClick:()=>{!i&&l&&n()},children:[(0,p.jsx)(`span`,{className:`perm-action-pill-dot${c?` on`:``}`}),i?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-pill-input`,value:o,style:{width:Math.max(36,o.length*7)},onChange:e=>s(e.target.value),onBlur:m,onKeyDown:e=>{e.key===`Enter`&&m(),e.key===`Escape`&&(a(!1),s(t)),e.stopPropagation()},onClick:e=>e.stopPropagation()}):(0,p.jsx)(`span`,{className:`perm-action-pill-label`,onDoubleClick:e=>{e.stopPropagation(),a(!0)},children:t}),c&&!i&&(0,p.jsx)(f.CheckOutlined,{className:`perm-action-pill-check`})]})})}function Hj({menuName:e,menuData:t,permKeys:n,onChange:r,displayName:i,actionLabels:a,onModuleLabelSave:o,onActionLabelSave:s}){let c=t?.permissions??{},l=n.filter(t=>Zh(e,t)),u=l.filter(e=>c[e]?.value===`1`).length,d=l.filter(e=>c[e]).length,f=d>0&&u===d;return(0,p.jsxs)(`div`,{className:`perm-module-card${f?` all-on`:u>0&&!f?` some-on`:``}`,children:[(0,p.jsxs)(`div`,{className:`perm-module-card-header`,children:[(0,p.jsx)(Bj,{value:i,onSave:t=>o(e,t),className:`perm-module-card-name`}),d>0&&(0,p.jsxs)(`span`,{className:`perm-module-card-badge${u>0?` active`:``}`,children:[u,`/`,d]})]}),(0,p.jsx)(`div`,{className:`perm-module-card-body`,children:l.map(t=>(0,p.jsx)(Vj,{entry:c[t],label:a[t]??Fj(t),onToggle:()=>r(e,t),onLabelSave:e=>s(t,e)},t))})]})}function Uj({role:e,moduleLabels:t={},actionLabels:r={},onModuleLabelSave:i=()=>{},onActionLabelSave:a=()=>{}}){let[o,s]=(0,u.useState)({}),[c,l]=(0,u.useState)({}),[m,h]=(0,u.useState)(!1),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)(!1),b=n.Ea(e);(0,u.useEffect)(()=>{b&&(h(!0),y(!1),n.ka(b).then(e=>{let t=zj(e);s(t),l(t)}).catch(()=>d.message.error(`Failed to load permissions`)).finally(()=>h(!1)))},[b]);function x(e,t){y(!0),l(n=>{let r=n[e]??{menuId:o[e]?.menuId??0,permissions:{}},i=r.permissions?.[t]??{id:0,value:`0`};return{...n,[e]:{...r,permissions:{...r.permissions,[t]:{...i,value:i.value===`1`?`0`:`1`}}}}})}async function S(){_(!0);try{await n.to(b,c),s(c),y(!1),d.message.success(`Permissions saved`)}catch(e){d.message.error(e?.message||`Save failed`)}finally{_(!1)}}let C=(0,u.useMemo)(()=>Object.keys(c).sort(),[c]),w=(0,u.useMemo)(()=>Lj(c),[c]),{enabled:T,total:E}=(0,u.useMemo)(()=>Rj(c),[c]);return(0,p.jsxs)(d.Spin,{spinning:m,children:[(0,p.jsxs)(`div`,{className:`perm-panel-header`,children:[(0,p.jsxs)(`div`,{className:`perm-panel-title`,children:[(0,p.jsx)(f.LockOutlined,{style:{color:`var(--color-brand)`,marginRight:6}}),(0,p.jsx)(`span`,{children:e?.roleName}),!m&&E>0&&(0,p.jsxs)(d.Tag,{color:`blue`,style:{marginLeft:8,fontSize:11},children:[T,`/`,E,` enabled`]})]}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.UnlockOutlined,{}),loading:g,disabled:!v,onClick:S,children:`Save Changes`})]}),(0,p.jsxs)(`div`,{className:`perm-hint`,children:[(0,p.jsx)(f.InfoCircleOutlined,{className:`perm-hint-icon`}),(0,p.jsxs)(`span`,{children:[`Click a pill to toggle. `,(0,p.jsx)(`strong`,{children:`Double-click`}),` a module name or action label to rename it — labels are saved locally.`]})]}),C.length===0&&!m?(0,p.jsx)(`div`,{className:`perm-empty`,children:`No permission entries found for this role.`}):(0,p.jsx)(`div`,{className:`perm-cards-grid`,children:C.map(e=>(0,p.jsx)(Hj,{menuName:e,menuData:c[e],permKeys:w,onChange:x,displayName:t[e]??e,actionLabels:r,onModuleLabelSave:i,onActionLabelSave:a},e))})]})}var{Text:Wj}=d.Typography,Gj=[{key:`listView`,label:`List View`},{key:`filter`,label:`Filter`},{key:`form`,label:`Form`},{key:`permissions`,label:`Permissions`}];function Kj(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function qj(e){return String(e||``).trim().toLowerCase()}function Jj(e){return e?.key||e?.collectionName||e?.value||``}function Yj(e=[],t=[]){let n=[],r=new Set,i=new Set,a=new Set;return e.forEach(e=>{let t=Jj(e);if(!t)return;let o=qj(e.key||t),s=qj(e.collectionName);e.seeded&&(i.add(o),s&&i.add(s)),s&&a.add(s),r.add(t),n.push({label:e.label||Kj(t),value:t,disabled:!!e.seeded})}),t.forEach(e=>{let t=String(e||``).trim();if(!t||r.has(t))return;let o=qj(t);a.has(o)||i.has(o)||(r.add(t),n.push({label:Kj(t),value:t,disabled:!1}))}),n}function Xj(){let[e,t]=(0,u.useState)(null),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(`listView`),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(0),[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)([]),[x,S]=(0,u.useState)(!1),[C,w]=(0,u.useState)(!1),T=(0,u.useMemo)(()=>_.filter(e=>!e.disabled),[_]),E=!x&&T.length===0,D=(0,u.useCallback)(async()=>{g(!0);try{let e=await n.Xi();c(e.roles),m(e.total)}catch{d.message.error(`Failed to load roles`)}finally{g(!1)}},[]),O=(0,u.useCallback)(async()=>{S(!0);try{let[e,t]=await Promise.all([n.la(),n.ea()]),r=Yj(e.modules,t),i=new Set(r.filter(e=>!e.disabled).map(e=>e.value));v(r),b(e=>e.filter(e=>i.has(e)))}catch{d.message.error(`Failed to load seed status`)}finally{S(!1)}},[]);(0,u.useEffect)(()=>{D()},[D]),(0,u.useEffect)(()=>{O()},[O]);async function k(){if(y.length===0){d.message.warning(E?`All modules already seeded.`:`Select at least one module to seed.`);return}w(!0);try{await n.Ka(y),d.message.success(`Role field config seeded`),b([]),await O()}catch(e){d.message.error(e?.message||`Seed failed`)}finally{w(!1)}}function A(e,n=`listView`){t(e),o(n),i(!0)}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Field Config Seed`,style:{marginBottom:12},children:[(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:12,flexWrap:`wrap`},children:[(0,p.jsx)(`div`,{style:{minWidth:320,flex:1},children:(0,p.jsx)(d.Select,{mode:`multiple`,allowClear:!0,showSearch:!0,value:y,options:_,placeholder:E?`All modules already seeded`:`Select modules or collections to seed`,disabled:x||C||E,loading:x,onChange:b,style:{width:`100%`}})}),(0,p.jsx)(d.Button,{type:`primary`,loading:C,disabled:x||y.length===0,onClick:k,children:`Seed Field Config`})]}),(0,p.jsx)(Wj,{type:`secondary`,style:{display:`block`,marginTop:8,fontSize:12},children:E?`Seed is disabled because all configured modules already have role field config data.`:`Already seeded modules are disabled. New modules or collections can still be seeded.`})]}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.SafetyOutlined,{}),title:`Roles`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Roles`,dataSource:s,fields:[{label:`Role Name`,value:`roleName`,width:200},{label:`Description`,value:`description`,width:240},{label:`Users`,value:`userCount`,width:70,sorter:!1},{label:`Actions`,value:`_configure`,width:200,sorter:!1,render:(e,t)=>(0,p.jsxs)(d.Space,{size:2,children:[(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>A(t),children:`Configure`}),(0,p.jsx)(d.Button,{size:`small`,type:`link`,icon:(0,p.jsx)(f.LockOutlined,{}),onClick:()=>A(t,`permissions`),children:`Permissions`})]})}],loading:h,total:l})}),(0,p.jsxs)(d.Modal,{className:`uss-modal`,open:r,onCancel:()=>i(!1),title:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.SafetyOutlined,{style:{color:`var(--color-brand)`}}),(0,p.jsxs)(`span`,{children:[`Configure: `,e?.roleName]})]}),width:720,footer:null,destroyOnClose:!0,children:[(0,p.jsx)(`div`,{style:{marginBottom:12},children:(0,p.jsx)(`div`,{className:`uss-config-toggle`,children:Gj.map(e=>(0,p.jsx)(`button`,{className:`uss-config-btn${a===e.key?` active`:``}`,onClick:()=>o(e.key),children:e.label},e.key))})}),e&&(a===`permissions`?(0,p.jsx)(Uj,{role:e},e?.roleId):(0,p.jsx)(yg,{role:e,configType:a},`${e?.roleId}-${a}`))]})]})}var Zj=`perm-module-labels`,Qj=`perm-action-labels`;function $j(e){try{return JSON.parse(localStorage.getItem(e)??`{}`)}catch{return{}}}function eM(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}function tM({label:e,onSave:t,onDelete:n,loading:r}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(e);function c(){a(!1);let n=o.trim();n&&n!==e?t(n):s(e)}return(0,p.jsxs)(`div`,{className:`perm-manage-row`,children:[i?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-inline-input`,value:o,style:{flex:1,minWidth:0},onChange:e=>s(e.target.value),onBlur:c,onKeyDown:t=>{t.key===`Enter`&&c(),t.key===`Escape`&&(a(!1),s(e))}}):(0,p.jsx)(`span`,{className:`perm-manage-row-label`,children:e}),(0,p.jsxs)(`div`,{className:`perm-manage-row-actions`,children:[(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{s(e),a(!0)},loading:r}),(0,p.jsx)(d.Popconfirm,{title:`Delete this item?`,onConfirm:n,okText:`Delete`,cancelText:`Cancel`,okType:`danger`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.DeleteOutlined,{}),danger:!0})})]})]})}function nM({open:e,onClose:t}){let[r,i]=(0,u.useState)(`modules`),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(``),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(!1);(0,u.useEffect)(()=>{e&&(D(),O())},[e]);async function D(){c(!0);try{o(await n._a())}catch{d.message.error(`Failed to load modules`)}finally{c(!1)}}async function O(){b(!0);try{v(await n.ga())}catch{d.message.error(`Failed to load actions`)}finally{b(!1)}}async function k(){let e=l.trim();if(!e){d.message.warning(`Enter a module name`);return}g(!0);try{let t=await n.ji({menuName:e});o(e=>[...e,t]),m(``),d.message.success(`Module added`)}catch{d.message.error(`Failed to add module`)}finally{g(!1)}}async function A(e,t){try{await n.Za(e,{menuName:t}),o(n=>n.map(n=>n.MENUID===e?{...n,MENUNAME:t}:n))}catch{d.message.error(`Failed to update module`)}}async function j(e){try{await n.Bi(e),o(t=>t.filter(t=>t.MENUID!==e)),d.message.success(`Module deleted`)}catch{d.message.error(`Failed to delete module`)}}async function M(){let e=x.trim(),t=C.trim().toLowerCase().replace(/\s+/g,`_`);if(!e||!t){d.message.warning(`Enter both name and key`);return}E(!0);try{let r=await n.Ai({permissionName:e,permissionKey:t});v(e=>[...e,r]),S(``),w(``),d.message.success(`Action added`)}catch(e){d.message.error(e?.message?.includes(`409`)||e?.status===409?`Permission key already exists`:`Failed to add action`)}finally{E(!1)}}async function N(e,t){try{await n.Xa(e,{permissionName:t}),v(n=>n.map(n=>n.permissionId===e?{...n,permissionName:t}:n))}catch{d.message.error(`Failed to update action`)}}async function P(e){try{await n.zi(e),v(t=>t.filter(t=>t.permissionId!==e)),d.message.success(`Action deleted`)}catch{d.message.error(`Failed to delete action`)}}let F=[{key:`modules`,label:`Modules`,children:(0,p.jsxs)(d.Spin,{spinning:s,children:[(0,p.jsxs)(`div`,{className:`perm-manage-add-row`,children:[(0,p.jsx)(d.Input,{placeholder:`Module name`,value:l,onChange:e=>m(e.target.value),onPressEnter:k,style:{flex:1},size:`small`}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),loading:h,onClick:k,children:`Add`})]}),(0,p.jsxs)(`div`,{className:`perm-manage-list`,children:[a.length===0&&!s&&(0,p.jsx)(`div`,{className:`perm-empty`,style:{paddingTop:24},children:`No modules found`}),a.map(e=>(0,p.jsx)(tM,{label:e.MENUNAME,onSave:t=>A(e.MENUID,t),onDelete:()=>j(e.MENUID)},e.MENUID))]})]})},{key:`actions`,label:`Actions`,children:(0,p.jsxs)(d.Spin,{spinning:y,children:[(0,p.jsxs)(`div`,{className:`perm-manage-add-row`,children:[(0,p.jsx)(d.Input,{placeholder:`Action name (e.g. Approve)`,value:x,onChange:e=>S(e.target.value),style:{flex:1},size:`small`}),(0,p.jsx)(d.Input,{placeholder:`Key (e.g. approve)`,value:C,onChange:e=>w(e.target.value),onPressEnter:M,style:{width:140},size:`small`}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),loading:T,onClick:M,children:`Add`})]}),(0,p.jsxs)(`div`,{className:`perm-manage-list`,children:[_.length===0&&!y&&(0,p.jsx)(`div`,{className:`perm-empty`,style:{paddingTop:24},children:`No actions found`}),_.map(e=>(0,p.jsx)(tM,{label:`${e.permissionName} (${e.permissionKey})`,onSave:t=>N(e.permissionId,t),onDelete:()=>P(e.permissionId)},e.permissionId))]})]})}];return(0,p.jsx)(d.Modal,{open:e,onCancel:t,title:(0,p.jsxs)(`span`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.SettingOutlined,{style:{color:`var(--color-brand)`}}),`Manage Modules & Actions`]}),width:520,footer:null,destroyOnClose:!0,children:(0,p.jsx)(d.Tabs,{activeKey:r,onChange:i,size:`small`,items:F})})}function rM(){let[e,t]=(0,u.useState)([]),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(null),[s,c]=(0,u.useState)(``),[l,m]=(0,u.useState)(!1),[h,g]=(0,u.useState)(()=>$j(Zj)),[_,v]=(0,u.useState)(()=>$j(Qj)),y=(0,u.useCallback)((e,t)=>{g(n=>{let r={...n,[e]:t};return eM(Zj,r),r})},[]),b=(0,u.useCallback)((e,t)=>{v(n=>{let r={...n,[e]:t};return eM(Qj,r),r})},[]);function x(){g({}),v({}),eM(Zj,{}),eM(Qj,{}),d.message.success(`Labels reset to defaults`)}let S=(0,u.useCallback)(async()=>{i(!0);try{let{roles:e}=await n.Xi();t(e),e.length>0&&o(e[0])}catch{d.message.error(`Failed to load roles`)}finally{i(!1)}},[]);(0,u.useEffect)(()=>{S()},[S]);let C=(0,u.useMemo)(()=>{let t=s.trim().toLowerCase();return t?e.filter(e=>e.roleName.toLowerCase().includes(t)):e},[e,s]),w=Object.keys(h).length>0||Object.keys(_).length>0;return(0,p.jsxs)(`div`,{className:`perm-page`,children:[(0,p.jsxs)(Y,{className:`perm-left-card`,icon:(0,p.jsx)(f.SafetyOutlined,{}),title:`Roles`,bodyStyle:{padding:0},children:[(0,p.jsx)(`div`,{className:`perm-role-search`,children:(0,p.jsx)(d.Input,{prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search roles…`,allowClear:!0,size:`small`,value:s,onChange:e=>c(e.target.value)})}),(0,p.jsx)(d.Spin,{spinning:r,children:(0,p.jsxs)(`div`,{className:`perm-role-list`,children:[C.length===0&&!r&&(0,p.jsx)(`div`,{className:`perm-role-empty`,children:`No roles found`}),C.map(e=>{let t=a?.roleId===e.roleId,n=e.description&&e.description!==`N/A`?e.description:e.roleType===0?`Default role`:`Custom role`;return(0,p.jsxs)(`div`,{className:`perm-role-item${t?` active`:``}`,onClick:()=>o(e),children:[(0,p.jsx)(`div`,{className:`perm-role-item-name`,children:e.roleName}),(0,p.jsx)(`div`,{className:`perm-role-item-desc`,children:n})]},e.roleId)})]})})]}),(0,p.jsx)(Y,{className:`perm-right-card`,icon:(0,p.jsx)(f.LockOutlined,{}),title:`Module Permissions`,extra:(0,p.jsxs)(`span`,{style:{display:`flex`,alignItems:`center`,gap:10},children:[w&&(0,p.jsx)(`button`,{className:`perm-reset-btn`,onClick:x,children:`Reset labels`}),(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.SettingOutlined,{}),onClick:()=>m(!0),children:`Manage`})]}),bodyStyle:{padding:`12px 16px`},children:a?(0,p.jsx)(Uj,{role:a,moduleLabels:h,actionLabels:_,onModuleLabelSave:y,onActionLabelSave:b},a.roleId):(0,p.jsx)(`div`,{className:`perm-empty`,children:`Select a role from the left to manage its permissions.`})}),(0,p.jsx)(nM,{open:l,onClose:()=>m(!1)})]})}var{Title:iM,Text:aM}=d.Typography,oM=[{label:`In Progress`,value:107,sub:`Under review`,color:`blue`},{label:`Hired`,value:2,sub:`Onboarded`,color:`green`},{label:`Project Completed`,value:2,sub:`Project cycle closed`,color:`purple`},{label:`Archive`,value:2,sub:`No longer active`,color:`peach`}];function sM({items:e=oM}){return(0,p.jsx)(d.Card,{className:`onboarding-card`,title:(0,p.jsx)(iM,{level:5,children:`Onboarding`}),extra:(0,p.jsx)(d.Button,{type:`link`,children:`View all`}),children:(0,p.jsx)(d.Row,{gutter:[12,12],children:e.map(e=>(0,p.jsx)(d.Col,{xs:12,sm:6,md:6,lg:12,xl:12,children:(0,p.jsxs)(`div`,{className:`onboarding-item ${e.color}`,children:[(0,p.jsx)(aM,{className:`onboarding-item-label`,children:e.label}),(0,p.jsx)(d.Statistic,{value:e.value,className:`onboarding-stat`}),(0,p.jsx)(`div`,{className:`onboarding-item-footer`,children:(0,p.jsx)(aM,{className:`onboarding-item-sub`,children:e.sub})})]})},e.label))})})}var{Text:cM,Title:lM}=d.Typography,uM=[{group:`Dashboard`,items:[{id:`dashboard`,label:`Admin Dashboard`,icon:(0,p.jsx)(f.DashboardOutlined,{})}]},{group:`Settings`,items:[{id:`org`,label:`Organization`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Organization Settings`,desc:`Manage your company profile and location details`,cards:[{label:`Company Information`,icon:(0,p.jsx)(f.BankOutlined,{}),desc:`Manage company profile, address and business details.`},{label:`Location`,icon:(0,p.jsx)(f.BuildOutlined,{}),desc:`Manage office locations, branches and regions.`}]},{id:`users`,label:`Users`,icon:(0,p.jsx)(f.UserOutlined,{}),heading:`Users`,desc:`Manage platform users and configure their field views.`,component:`users`},{id:`teams`,label:`Teams`,icon:(0,p.jsx)(f.TeamOutlined,{}),heading:`Teams`,desc:`Organize users into teams and configure field visibility per team.`,component:`teams`},{id:`roles`,label:`Roles`,icon:(0,p.jsx)(f.SafetyOutlined,{}),heading:`Roles`,desc:`Control permissions and configure field visibility per role.`,component:`roles`},{id:`permissions`,label:`Permissions`,icon:(0,p.jsx)(f.LockOutlined,{}),heading:`Permissions`,desc:`Manage module-wise action permissions (view, add, edit, delete, and more) per role.`,component:`permissions`},{id:`templates`,label:`Templates`,icon:(0,p.jsx)(f.FileTextOutlined,{}),heading:`Templates`,desc:`Email and signature templates for communications`,component:`templates`},{id:`ai-services`,label:`AI Services`,icon:(0,p.jsx)(f.ThunderboltOutlined,{}),heading:`AI Services`,desc:`Register the AI/automation backends (base URL + auth) that admin-configured AI Actions call.`,component:`ai-services`},{id:`bgc-integration`,label:`Integrations`,icon:(0,p.jsx)(f.SafetyOutlined,{}),heading:`Integrations`,desc:`Manage manual and API integrations used across application workflows.`,component:`bgc-integration`}]},{group:`Clients`,items:[{id:`clients`,label:`Clients`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Clients`,desc:`Manage client accounts and settings`,cards:[{label:`Clients`,icon:(0,p.jsx)(f.BankOutlined,{}),desc:`Manage client companies and account details.`}]}]},{group:`Forms`,items:[{id:`form-groups`,label:`Form Groups`,icon:(0,p.jsx)(f.AppstoreAddOutlined,{}),heading:`Form Groups`,desc:`Define field groups for module add/edit forms with validations and dropdown sources.`,component:`form-groups`},{id:`detail-groups`,label:`Detail Groups`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),heading:`Detail Groups`,desc:`Customize the detail view per module: labels, prefix/suffix, colour, capitalization, reference lookups and merged fields.`,component:`detail-groups`},{id:`row-actions`,label:`Actions`,icon:(0,p.jsx)(f.ToolOutlined,{}),heading:`Actions`,desc:`Configure which action buttons appear per row in each module's list view, scoped per role.`,component:`row-actions`}]},{group:`Master`,items:[{id:`jobs`,label:`Jobs`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),heading:`Jobs Master`,desc:`Configure job sources and status types`,cards:[{label:`Sources`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Manage job source master values.`},{label:`Job Status`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),desc:`Configure job workflow status.`}]},{id:`candidates`,label:`Candidates`,icon:(0,p.jsx)(f.UserOutlined,{}),heading:`Candidates Master`,desc:`Skills, sources and work authorization settings`,cards:[{label:`Sources`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Manage candidate source values.`},{label:`Skills`,icon:(0,p.jsx)(f.SettingOutlined,{}),desc:`Manage skill master data.`},{label:`Work Authorization`,icon:(0,p.jsx)(f.SafetyOutlined,{}),desc:`Manage visa and authorization types.`}]},{id:`submissions`,label:`Submissions`,icon:(0,p.jsx)(f.FileTextOutlined,{}),heading:`Submissions Master`,desc:`Rejection reasons and submission status configuration`,cards:[{label:`Rejection Reasons`,icon:(0,p.jsx)(f.FileTextOutlined,{}),desc:`Manage common rejection reasons.`},{label:`Client Submission Status`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),desc:`Manage client submission statuses.`}]},{id:`clientmaster`,label:`Client Master`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Client Master`,desc:`Payment terms, client types and contact types`,cards:[{label:`Payment Terms`,icon:(0,p.jsx)(f.FileTextOutlined,{}),desc:`Manage billing and payment terms.`},{label:`Client Type`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Classify client business types.`},{label:`Client Contact Type`,icon:(0,p.jsx)(f.TeamOutlined,{}),desc:`Manage client contact categories.`}]}]}],dM=[{label:`Sourced`,count:312,color:`#378ADD`,pct:35},{label:`Screened`,count:223,color:`#7F77DD`,pct:25},{label:`Interview`,count:161,color:`#1D9E75`,pct:18},{label:`Offered`,count:107,color:`#EF9F27`,pct:12},{label:`Rejected`,count:89,color:`#E24B4A`,pct:10}],fM=[{name:`Tcs`,jobs:14,candidates:86},{name:`Empasis`,jobs:9,candidates:64},{name:`NovaSystems`,jobs:7,candidates:51},{name:`Brightwave`,jobs:5,candidates:38}],pM=[{text:`New candidate Ravi Kumar added to Java Developer role`,time:`2 min ago`,color:`#378ADD`},{text:`Submission approved by Acme Corp for Sr. React Dev`,time:`18 min ago`,color:`#1D9E75`},{text:`User Priya S. added to Recruiters team`,time:`1 hr ago`,color:`#7F77DD`},{text:`Job Data Analyst — TechFlow moved to archived`,time:`3 hr ago`,color:`#EF9F27`},{text:`Candidate rejected — work authorization mismatch`,time:`5 hr ago`,color:`#E24B4A`}];function mM(){return(0,p.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:16},children:[(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.DashboardOutlined,{}),title:`Admin Dashboard`,children:[(0,p.jsx)(`div`,{className:`admin-accent-bar`}),(0,p.jsx)(lM,{level:5,children:`Admin Dashboard`}),(0,p.jsx)(cM,{type:`secondary`,children:`Overview of jobs, candidates, onboarding and recent activity`})]}),(0,p.jsx)(`div`,{className:`admin-dashboard-stats`,children:(0,p.jsx)(Sj,{stats:[{label:`Total Jobs`,value:1697,icon:`fileText`},{label:`Active Jobs`,value:1685,icon:`checkCircle`},{label:`My Jobs`,value:600,icon:`user`},{label:`Total Candidates`,value:4320,icon:`team`},{label:`Submissions`,value:892,icon:`fileText`}]})}),(0,p.jsxs)(`div`,{className:`admin-dashboard-mid-row`,children:[(0,p.jsx)(sM,{}),(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Candidate Pipeline`,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12},children:`By stage (892 total)`}),(0,p.jsx)(`div`,{className:`admin-pipeline-bar`,children:dM.map(e=>(0,p.jsx)(`div`,{className:`admin-pipeline-seg`,style:{width:`${e.pct}%`,background:e.color}},e.label))}),(0,p.jsx)(`div`,{className:`admin-pipeline-legend`,children:dM.map(e=>(0,p.jsxs)(`div`,{className:`admin-pipeline-legend-item`,children:[(0,p.jsx)(`span`,{className:`admin-pipeline-dot`,style:{background:e.color}}),e.label,` `,e.count]},e.label))}),(0,p.jsx)(`div`,{className:`admin-divider`}),(0,p.jsx)(cM,{strong:!0,style:{fontSize:12},children:`Submission status`}),(0,p.jsxs)(`div`,{className:`admin-sub-status-list`,style:{marginTop:6},children:[(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Pending client review`}),(0,p.jsx)(`span`,{className:`admin-badge warn`,children:`312`})]}),(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Client approved`}),(0,p.jsx)(`span`,{className:`admin-badge success`,children:`248`})]}),(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Rejected`}),(0,p.jsx)(`span`,{className:`admin-badge danger`,children:`89`})]})]})]})]}),(0,p.jsxs)(`div`,{className:`admin-dashboard-bottom-row`,children:[(0,p.jsx)(Y,{icon:(0,p.jsx)(f.BankOutlined,{}),title:`Top Clients`,extra:(0,p.jsx)(d.Button,{type:`link`,size:`small`,children:`View all`}),children:fM.map(e=>(0,p.jsxs)(`div`,{className:`admin-client-row`,children:[(0,p.jsxs)(`div`,{className:`admin-client-left`,children:[(0,p.jsx)(`div`,{className:`admin-client-icon`,children:(0,p.jsx)(f.BankOutlined,{})}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`admin-client-name`,children:e.name}),(0,p.jsxs)(`div`,{className:`admin-client-sub`,children:[e.jobs,` open jobs`]})]})]}),(0,p.jsxs)(`div`,{className:`admin-client-right`,children:[(0,p.jsx)(`div`,{className:`admin-client-val`,children:e.candidates}),(0,p.jsx)(`div`,{className:`admin-client-sub`,children:`candidates`})]})]},e.name))}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.BellOutlined,{}),title:`Recent Activity`,children:pM.map((e,t)=>(0,p.jsxs)(`div`,{className:`admin-activity-row`,children:[(0,p.jsx)(`div`,{className:`admin-activity-dot`,style:{background:e.color}}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`admin-activity-text`,children:e.text}),(0,p.jsx)(`div`,{className:`admin-activity-time`,children:e.time})]})]},t))})]}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.SettingOutlined,{}),title:`Admin Configuration Overview`,extra:(0,p.jsx)(d.Button,{type:`link`,size:`small`,children:`Manage`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`Settings`}),[[`Organization`,2],[`User Settings`,4],[`Templates`,2]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsxs)(`span`,{className:`admin-badge info`,children:[t,` items`]})]},e))]}),(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`Master`}),[[`Jobs`,2],[`Candidates`,3],[`Submissions`,2]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsxs)(`span`,{className:`admin-badge info`,children:[t,` items`]})]},e))]}),(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`System`}),[[`Total Groups`,4],[`Total Modules`,9],[`Config Items`,19]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsx)(cM,{strong:!0,style:{fontSize:12},children:t})]},e))]})]})})]})}function hM({activeSection:e,activeGroup:t,filteredCards:n,searchText:r,setSearchText:i,allItems:a,handleNav:o}){return(0,p.jsxs)(d.Row,{gutter:[16,16],children:[(0,p.jsx)(d.Col,{span:24,children:(0,p.jsxs)(Y,{icon:e?.icon,title:e?.heading,extra:(0,p.jsx)(d.Input,{className:`admin-search`,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search settings…`,allowClear:!0,value:r,onChange:e=>i(e.target.value)}),children:[(0,p.jsx)(`div`,{className:`admin-accent-bar`}),(0,p.jsx)(lM,{level:5,children:e?.heading}),(0,p.jsx)(cM,{type:`secondary`,children:e?.desc})]})}),(0,p.jsx)(d.Col,{xs:24,xl:16,style:{alignSelf:`flex-start`},children:(0,p.jsx)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Configuration Items`,extra:(0,p.jsxs)(cM,{type:`secondary`,children:[n.length,` item`,n.length===1?``:`s`]}),children:(0,p.jsx)(d.Row,{gutter:[14,14],children:n.length>0?n.map(e=>(0,p.jsx)(d.Col,{xs:24,sm:12,xl:8,children:(0,p.jsxs)(`div`,{className:`admin-config-item`,children:[(0,p.jsx)(`div`,{className:`admin-config-top-bar`}),(0,p.jsxs)(`div`,{className:`admin-config-body`,children:[(0,p.jsx)(`div`,{className:`admin-config-icon`,children:e.icon}),(0,p.jsxs)(`div`,{className:`admin-config-text`,children:[(0,p.jsx)(`span`,{className:`admin-config-label`,children:e.label}),(0,p.jsx)(`span`,{className:`admin-config-desc`,children:e.desc})]})]}),(0,p.jsx)(`div`,{className:`admin-config-divider`}),(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`admin-config-manage`,icon:(0,p.jsx)(f.RightOutlined,{}),iconPosition:`end`,children:`Manage`})]})},e.label)):(0,p.jsx)(d.Col,{span:24,children:(0,p.jsx)(`div`,{className:`admin-config-empty`,children:(0,p.jsx)(d.Empty,{description:`No settings found`,image:d.Empty.PRESENTED_IMAGE_SIMPLE})})})})})}),(0,p.jsx)(d.Col,{xs:24,xl:8,style:{alignSelf:`flex-start`},children:(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`Section Overview`,children:[(0,p.jsx)(`div`,{className:`admin-overview-list`,children:uM.filter(e=>e.group!==`Dashboard`).map(e=>{let n=e.group===t?.group;return(0,p.jsxs)(`div`,{className:`admin-overview-item${n?` active`:``}`,onClick:()=>{let t=e.items[0];t&&o(t.id)},children:[(0,p.jsxs)(`div`,{className:`admin-overview-left`,children:[(0,p.jsx)(`div`,{className:`admin-overview-icon`,children:e.items[0]?.icon}),(0,p.jsxs)(`div`,{className:`admin-overview-text`,children:[(0,p.jsx)(`span`,{className:`admin-overview-name`,children:e.group}),(0,p.jsxs)(`span`,{className:`admin-overview-sub`,children:[e.items.length,` module`,e.items.length===1?``:`s`]})]})]}),(0,p.jsx)(`span`,{className:`admin-overview-count${n?` active`:``}`,children:e.items.length})]},e.group)})}),(0,p.jsxs)(`div`,{className:`admin-overview-footer`,children:[(0,p.jsx)(`span`,{className:`admin-overview-footer-label`,children:`Total configuration items`}),(0,p.jsx)(`span`,{className:`admin-overview-footer-value`,children:a.filter(e=>e.cards).reduce((e,t)=>e+t.cards.length,0)})]})]})})]})}function gM(){let[e,t]=(0,u.useState)(`dashboard`),[n,r]=(0,u.useState)(``),i=(0,u.useMemo)(()=>uM.flatMap(e=>e.items),[]),a=(0,u.useMemo)(()=>i.find(t=>t.id===e),[i,e]),o=(0,u.useMemo)(()=>uM.find(t=>t.items.some(t=>t.id===e)),[e]),s=(0,u.useMemo)(()=>{if(!a?.cards)return[];let e=n.trim().toLowerCase();return e?a.cards.filter(t=>t.label.toLowerCase().includes(e)||t.desc.toLowerCase().includes(e)):a.cards},[a,n]),c=(0,u.useMemo)(()=>uM.map(e=>({key:e.group,type:`group`,label:e.group,children:e.items.map(e=>({key:e.id,icon:e.icon,label:e.label}))})),[]),l=e=>{t(e),r(``)};return e===`dashboard`||a?.heading,(0,p.jsxs)(`main`,{className:`admin-page`,children:[(0,p.jsx)(`div`,{className:`admin-breadcrumb`,children:(0,p.jsx)(d.Breadcrumb,{items:[{title:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(f.HomeOutlined,{}),` Home`]})},{title:`Admin`}]})}),(0,p.jsxs)(d.Row,{gutter:[16,16],className:`admin-wrapper`,children:[(0,p.jsx)(d.Col,{xs:24,lg:6,xl:5,children:(0,p.jsxs)(Y,{title:`Admin Console`,icon:(0,p.jsx)(f.SettingOutlined,{}),children:[(0,p.jsxs)(`div`,{className:`admin-sidebar-banner`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-banner-title`,children:`Admin Panel`}),(0,p.jsx)(`span`,{className:`admin-sidebar-banner-sub`,children:`Configuration Center`}),(0,p.jsxs)(d.Row,{gutter:[8,0],children:[(0,p.jsx)(d.Col,{span:12,children:(0,p.jsxs)(`div`,{className:`admin-sidebar-pill`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-pill-label`,children:`Groups`}),(0,p.jsx)(`span`,{className:`admin-sidebar-pill-value`,children:uM.length})]})}),(0,p.jsx)(d.Col,{span:12,children:(0,p.jsxs)(`div`,{className:`admin-sidebar-pill`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-pill-label`,children:`Modules`}),(0,p.jsx)(`span`,{className:`admin-sidebar-pill-value`,children:i.length})]})})]})]}),(0,p.jsx)(d.Menu,{mode:`inline`,selectedKeys:[e],items:c,onClick:({key:e})=>l(e),className:`admin-sidebar-menu`})]})}),(0,p.jsx)(d.Col,{xs:24,lg:18,xl:19,children:e===`dashboard`?(0,p.jsx)(mM,{}):a?.component===`form-groups`?(0,p.jsx)(Py,{}):a?.component===`detail-groups`?(0,p.jsx)(Db,{}):a?.component===`row-actions`?(0,p.jsx)(Nx,{}):a?.component===`users`?(0,p.jsx)(Ej,{}):a?.component===`teams`?(0,p.jsx)(Mj,{}):a?.component===`roles`?(0,p.jsx)(Xj,{}):a?.component===`permissions`?(0,p.jsx)(rM,{}):a?.component===`templates`?(0,p.jsx)(Gx,{}):a?.component===`ai-services`?(0,p.jsx)(Yx,{}):a?.component===`bgc-integration`?(0,p.jsx)(fS,{}):(0,p.jsx)(hM,{activeSection:a,activeGroup:o,filteredCards:s,searchText:n,setSearchText:r,allItems:i,handleNav:l})})]})]})}var{Title:_M}=d.Typography;function vM(){let e=(0,h.useNavigate)(),{state:t}=(0,h.useLocation)(),n=t?.moduleName||`stickyNotes`,r=t?.title||`Sticky Notes`,i={...t?.request,params:{...t?.request?.params,limit:200,offset:0}};return(0,p.jsxs)(`div`,{children:[(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.ArrowLeftOutlined,{}),onClick:()=>e(-1),style:{marginBottom:12},children:`Back`}),(0,p.jsx)(It,{moduleName:n,title:r,columns:4,request:i,viewAll:!1})]})}var{Text:yM,Title:bM}=d.Typography,xM=10485760,SM=`/templates/test_cases_flow_template.base64.txt`,CM=`test_cases_flow_template.xlsx`,wM=`module | subModule | step_order | description | actions | key | value | expected | scenario`,TM={idle:0,module_set:1,encoding:1,validating:2,preview:3,inserting:3,done:4,error:1},EM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Bulk upload`,href:`/bulk-upload`}];function DM(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result).split(`,`)[1]),r.onerror=n,r.readAsDataURL(e)})}function OM(e){return e.filter(e=>e.row_status===`valid`).map(e=>{let t={...e};return delete t.row_status,delete t.errors,t})}function kM(e){return e.flatMap(e=>(e.errors??[]).map(t=>({id:e.id,...t})))}function AM({errors:e}){return(0,p.jsx)(`div`,{className:`bulk-tooltip-errors`,children:(e??[]).map((e,t)=>(0,p.jsx)(`div`,{children:e.message},`${e.field}-${t}`))})}function jM({errors:e,expanded:t,onToggle:n,onSummaryClick:r}){return e.length===0?null:(0,p.jsxs)(`div`,{className:`bulk-error-banner`,children:[(0,p.jsxs)(`div`,{className:`bulk-error-summary`,children:[(0,p.jsxs)(`button`,{type:`button`,className:`bulk-error-summary-main`,onClick:r,"aria-label":`Scroll to first invalid row`,children:[(0,p.jsx)(f.ExclamationCircleOutlined,{className:`bulk-error-icon`}),(0,p.jsxs)(`span`,{children:[e.length,` validation error(s) found`]})]}),(0,p.jsx)(d.Button,{type:`link`,onClick:n,"aria-expanded":t,children:t?`Hide Errors`:`View Errors`})]}),t&&(0,p.jsx)(`div`,{className:`bulk-error-list`,role:`region`,"aria-label":`Validation error details`,children:e.map((e,t)=>(0,p.jsxs)(`div`,{className:`bulk-error-line`,children:[(0,p.jsxs)(`span`,{className:`bulk-row-chip`,children:[`Row `,e.id]}),(0,p.jsx)(`span`,{children:e.message})]},`${e.id}-${e.field}-${t}`))})]})}function MM({rows:e,view:t,onViewChange:n,onConfirm:r,onReset:i,saving:a,firstInvalidRowId:o,firstInvalidRowRef:s}){let c=e.filter(e=>e.row_status===`invalid`),l=t===`errors`?c:e,u=c.length>0||a;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,gutter:[16,16],className:`bulk-table-toolbar`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space.Compact,{children:[(0,p.jsx)(d.Button,{type:t===`all`?`primary`:`default`,onClick:()=>n(`all`),children:`All rows`}),(0,p.jsx)(d.Button,{type:t===`errors`?`primary`:`default`,onClick:()=>n(`errors`),children:`Errors only`})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsxs)(yM,{type:`secondary`,children:[e.length,` row(s)`]})})]}),(0,p.jsx)(`div`,{className:`bulk-table-wrap`,children:(0,p.jsxs)(`table`,{className:`bulk-preview-table`,children:[(0,p.jsx)(`thead`,{children:(0,p.jsxs)(`tr`,{children:[(0,p.jsx)(`th`,{className:`bulk-col-row`,children:`Row`}),(0,p.jsx)(`th`,{className:`bulk-col-flow`,children:`Submodule`}),(0,p.jsx)(`th`,{className:`bulk-col-description`,children:`Description`}),(0,p.jsx)(`th`,{className:`bulk-col-keyword`,children:`Action`}),(0,p.jsx)(`th`,{className:`bulk-col-target`,children:`Key`}),(0,p.jsx)(`th`,{className:`bulk-col-status`,children:`Status`}),(0,p.jsx)(`th`,{className:`bulk-col-error`,children:`Error`})]})}),(0,p.jsx)(`tbody`,{children:l.map(e=>{let t=e.errors??[],n=e.row_status===`invalid`;return(0,p.jsxs)(`tr`,{ref:n&&e.id===o?s:null,className:n?`bulk-row-invalid`:``,children:[(0,p.jsx)(`td`,{children:e.id}),(0,p.jsx)(`td`,{title:e.submodule,children:e.submodule}),(0,p.jsx)(`td`,{title:e.description,children:e.description?e.description:(0,p.jsx)(`span`,{className:`bulk-empty-text`,children:`-empty-`})}),(0,p.jsx)(`td`,{children:(0,p.jsx)(`code`,{className:`bulk-code-chip`,children:e.actions})}),(0,p.jsx)(`td`,{title:e.key,children:e.key}),(0,p.jsx)(`td`,{children:n?(0,p.jsx)(d.Tag,{color:`red`,children:`Error`}):(0,p.jsx)(d.Tag,{color:`green`,children:`Valid`})}),(0,p.jsx)(`td`,{children:n?(0,p.jsx)(d.Tooltip,{title:(0,p.jsx)(AM,{errors:t}),placement:`left`,children:(0,p.jsxs)(`button`,{type:`button`,className:`bulk-error-info`,"aria-label":`View ${t.length} error(s) for row ${e.id}`,children:[(0,p.jsx)(f.InfoCircleOutlined,{}),(0,p.jsx)(d.Badge,{count:t.length,size:`small`})]})}):(0,p.jsx)(`span`,{className:`bulk-error-none`,children:`-`})})]},`${e.id}-${e.step_order}`)})})]})}),(0,p.jsxs)(d.Space,{className:`bulk-actions`,children:[(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:i,children:`Reset`}),(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.SaveOutlined,{}),loading:a,disabled:u,onClick:r,children:c.length>0?`Fix ${c.length} error(s) to proceed`:`Save to database`})]})]})}function NM(){let e=(0,h.useNavigate)(),r=(0,u.useMemo)(()=>t.l(),[]),i=(0,u.useRef)(null),a=(0,u.useRef)(null),[o,s]=(0,u.useState)([]),[c,l]=(0,u.useState)(``),[m,g]=(0,u.useState)(`idle`),[_,v]=(0,u.useState)(!1),[y,b]=(0,u.useState)(null),[x,S]=(0,u.useState)([]),[C,w]=(0,u.useState)(`all`),[T,E]=(0,u.useState)(null),[D,O]=(0,u.useState)(null),[k,A]=(0,u.useState)(!1),j=o.map(e=>({value:e.modulename,label:e.modulename})),M=kM(x),N=m===`encoding`||m===`validating`,P=!!c&&!N,F=TM[m]??0,I=x.find(e=>e.row_status===`invalid`)?.id,L=(0,u.useCallback)(()=>{l(``),g(`idle`),v(!1),b(null),S([]),w(`all`),E(null),O(null),i.current&&(i.current.value=``)},[]);(0,u.useEffect)(()=>{async function e(){try{let e=await eh({project:r?.name??``,activeOnly:!0});s(e?.items??[])}catch(e){console.error(e),d.message.error(`Unable to load modules.`)}}e()},[r?.name]);let R=e=>{l(e??``),S([]),O(null),E(null),b(null),A(!1),g(e?`module_set`:`idle`)},z=async e=>{if(!e||!P)return;let t=e.name.split(`.`).pop()?.toLowerCase();if(![`xlsx`,`csv`].includes(t)){g(`module_set`),E({message:`Invalid file type. Please upload an Excel .xlsx or CSV .csv file.`});return}if(e.size>xM){g(`module_set`),E({message:`File must be 10 MB or smaller.`});return}E(null),S([]),O(null),b({name:e.name,size:e.size}),g(`encoding`);try{let n=await DM(e);g(`validating`);let i=await Ym({filename:e.name,project:r?.name??``,module:c,file_base64:n,file_type:t});S(i?.rows??[]),w(`all`),g(`preview`)}catch(e){console.error(e),E(e.payload??{code:`NETWORK_ERROR`,message:e.message||`Could not reach the server.`}),g(`error`)}},B=async()=>{try{let e=await fetch(SM);if(!e.ok)throw Error(`Template file not found (${e.status})`);let t=(await e.text()).trim(),n=atob(t),r=new Uint8Array(n.length);for(let e=0;e<n.length;e+=1)r[e]=n.charCodeAt(e);let i=new Blob([r],{type:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`}),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=CM,document.body.appendChild(o),o.click(),o.remove(),URL.revokeObjectURL(a),d.message.success(`Sample template downloaded.`)}catch(e){console.error(e),d.message.error(`Unable to download sample template.`)}},V=async()=>{g(`inserting`),E(null);try{let t=await Xm({project:r?.name??``,module:c,uploaded_by:localStorage.getItem(`user_Email`)??``,rows:OM(x)});O(t),g(`done`),d.message.success(`Bulk upload saved. Redirecting to view test cases...`),window.setTimeout(()=>e(`/viewTestCase`),900)}catch(e){console.error(e),E(e.payload??{code:`NETWORK_ERROR`,message:e.message||`Could not reach the server.`}),g(`preview`)}},H=(0,u.useCallback)(()=>{a.current?.scrollIntoView({behavior:`smooth`,block:`center`})},[]),U=[`bulk-dropzone`,_?`bulk-dropzone-dragging`:``,y?`bulk-dropzone-has-file`:``,T&&m!==`preview`?`bulk-dropzone-error`:``,c?``:`bulk-dropzone-disabled`].filter(Boolean).join(` `);return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:EM})}),r?.name&&(0,p.jsx)(d.Col,{children:(0,p.jsx)(yM,{strong:!0,children:r.name})})]}),(0,p.jsxs)(`div`,{className:`zt-page zt-page-wide bulk-page`,children:[(0,p.jsxs)(`div`,{className:`bulk-header`,children:[(0,p.jsx)(bM,{level:3,children:`Bulk upload test cases`}),(0,p.jsxs)(d.Space,{direction:`vertical`,size:4,children:[(0,p.jsx)(yM,{type:`secondary`,children:wM}),(0,p.jsx)(yM,{type:`secondary`,children:`Use the sample template for the required columns. Uploaded rows are saved as Active by default.`})]})]}),(0,p.jsx)(`div`,{className:`bulk-stepbar`,children:[`Select`,`Upload`,`Validate`,`Save`].map((e,t)=>(0,p.jsxs)(`span`,{className:t<F?`bulk-step-active`:``,children:[t+1,` `,e]},e))}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:`1. Module selector`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,className:`bulk-module-select`,placeholder:`Choose a module`,options:j,value:c||void 0,onChange:R})}),c&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`2. File upload`,extra:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.DownloadOutlined,{}),onClick:B,children:`Download Sample Template`}),children:[(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`First time uploading?`,description:`Download the sample template, keep the column names unchanged, fill your test steps, and upload either .xlsx or .csv.`,className:`bulk-inline-alert`}),(0,p.jsxs)(`button`,{type:`button`,className:U,disabled:!P,onClick:()=>i.current?.click(),onDragOver:e=>{e.preventDefault(),P&&v(!0)},onDragLeave:()=>v(!1),onDrop:e=>{e.preventDefault(),v(!1),z(e.dataTransfer.files?.[0])},children:[(0,p.jsx)(f.CloudUploadOutlined,{className:`bulk-upload-icon`}),y?(0,p.jsxs)(`span`,{className:`bulk-file-chip`,children:[y.name,` - `,Math.ceil(y.size/1024),` KB`]}):(0,p.jsx)(`span`,{children:`Drag & drop here, or click to browse`})]}),(0,p.jsx)(`input`,{ref:i,hidden:!0,type:`file`,accept:`.xlsx,.csv`,onChange:e=>z(e.target.files?.[0])}),N&&(0,p.jsx)(d.Progress,{percent:m===`encoding`?45:82,showInfo:!1,size:`small`}),T&&m!==`preview`&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:T.message,className:`bulk-inline-alert`})]}),x.length>0&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`3. Validation result`,children:[(0,p.jsx)(jM,{errors:M,expanded:k,onToggle:()=>A(e=>!e),onSummaryClick:H}),T&&m===`preview`&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:T.message,className:`bulk-inline-alert`}),(0,p.jsx)(MM,{rows:x,view:C,onViewChange:w,onConfirm:V,onReset:L,saving:m===`inserting`,firstInvalidRowId:I,firstInvalidRowRef:a})]}),D&&m===`done`&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`4. Upload complete`,children:[(0,p.jsxs)(d.Row,{gutter:[16,16],className:`bulk-metrics`,children:[(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Total`}),(0,p.jsx)(`strong`,{children:x.length})]})}),(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Inserted`}),(0,p.jsx)(`strong`,{children:D.inserted??0})]})}),(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Failed`}),(0,p.jsx)(`strong`,{children:D.failed??0})]})})]}),(0,p.jsx)(d.Alert,{type:`success`,showIcon:!0,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),message:`${D.inserted??0} test cases saved to database - module: ${c}`,className:`bulk-inline-alert`}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:L,children:`Upload another file`})]})]})]})}var PM=[{value:`navigate`,label:`Navigate`},{value:`fill`,label:`Fill`},{value:`click`,label:`Click`},{value:`select`,label:`Select`},{value:`press_key`,label:`Press Key`},{value:`type_and_select`,label:`Type and Select`},{value:`type_and_select_modal`,label:`Type and Select (Modal)`},{value:`upload_file`,label:`Upload File`},{value:`check_checkbox`,label:`Check Checkbox`},{value:`check_filter_checkbox`,label:`Check Filter Checkbox`},{value:`select_page_size`,label:`Select Page Size`},{value:`check_n_checkboxes`,label:`Check N Checkboxes`},{value:`store_text`,label:`Store Text`},{value:`reset_session`,label:`Reset Session`},{value:`switch_to_new_tab`,label:`Switch To New Tab`},{value:`close_tab`,label:`Close Tab`},{value:`assert_visible`,label:`Assert Visible`},{value:`assert_hidden`,label:`Assert Hidden`},{value:`assert_text`,label:`Assert Text`},{value:`assert_url`,label:`Assert URL`},{value:`assert_body_contains`,label:`Assert Body Contains`},{value:`assert_button_disabled`,label:`Assert Button Disabled`},{value:`assert_field_error`,label:`Assert Field Error`},{value:`assert_field_accepted`,label:`Assert Field Accepted`},{value:`assert_children_disabled`,label:`Assert Children Disabled`},{value:`assert_children_visible`,label:`Assert Children Visible`},{value:`assert_element_count`,label:`Assert Element Count`},{value:`assert_toast`,label:`Assert Toast`},{value:`assert_toast_success`,label:`Assert Toast Success`},{value:`assert_toast_error`,label:`Assert Toast Error`},{value:`wait_for_visible`,label:`Wait For Visible`},{value:`wait_for_hidden`,label:`Wait For Hidden`},{value:`wait_for_text`,label:`Wait For Text`}],{Text:FM}=d.Typography,IM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/test-cases`}],LM={tags:`regression`,active:1},RM={module:{dbName:`Modules`,formField:`module`,label:`Module`}};function zM(e=[]){return e.map(e=>({value:e,label:e}))}function BM(e=``){return String(e??``).trim()}function VM(e=``){return BM(e).toLowerCase()}function HM(e=[]){let t=new Map;return e.forEach(e=>{let n=BM(e?.flow),r=n.toLowerCase();n&&!t.has(r)&&t.set(r,n)}),Array.from(t.values()).map(e=>({value:e,label:e}))}function UM(e=[],t,n){let r=BM(t).toLowerCase(),i=BM(n).toLowerCase();return e.reduce((e,t)=>{let n=BM(t?.module).toLowerCase(),a=BM(t?.flow).toLowerCase();if(n!==r||a!==i)return e;let o=Number(t?.step_order)||0;return Math.max(e,o)},0)+1}function WM({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(FM,{strong:!0,className:`v1-section-label`,children:t})]})}function GM(){let[e]=d.Form.useForm(),[t]=d.Form.useForm(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(!1),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)({open:!1,typeKey:`module`}),[b,x]=(0,u.useState)(!1),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(!1),E=(0,h.useNavigate)(),D=RM[v.typeKey],O=(0,u.useMemo)(()=>zM(r),[r]),k=d.Form.useWatch(`module`,e),A=d.Form.useWatch(`flow`,e),j=!!BM(k),M=!!BM(A),N=!j,P=!j||!M,F=(e,t=[])=>{e===`module`&&i(t)},I=async()=>{m(!0);try{let e=await Wm(RM.module.dbName);i(e?.items??[])}catch(e){console.error(`Unable to load testing options:`,e),d.message.error(`Unable to load testing options.`)}finally{m(!1)}},L=(0,u.useCallback)(async t=>{let n=BM(t);if(o([]),c([]),e.setFieldsValue({step_order:void 0}),n){_(!0);try{let e=await Jm({limit:1e4,offset:0,module:n}),t=Array.isArray(e?.items)?e.items:[];o(t),c(HM(t))}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{_(!1)}}},[e]),R=(0,u.useCallback)(async(t,n,r)=>{let i=BM(t),a=BM(n);if(!i||!a){e.setFieldsValue({step_order:void 0});return}C(!0);try{e.setFieldsValue({step_order:UM(r,i,a)})}catch(e){console.error(`Unable to load step order:`,e),d.message.error(`Unable to load step order.`)}finally{C(!1)}},[e]);(0,u.useEffect)(()=>{Promise.resolve().then(I)},[]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>L(k))},[L,k]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>R(k,A,a))},[a,R,A,k]);let z=async t=>{let n={module:BM(t.module),flow:BM(t.flow),step_order:Number(t.step_order),description:BM(t.description),keyword:VM(t.keyword),target:BM(t.target),value:BM(t.value),expected:BM(t.expected),tags:t.tags?BM(t.tags):LM.tags,active:Number(t.active)};T(!0);try{await qm(n),d.message.success(`Test case details saved successfully.`),e.resetFields(),o([]),c([])}catch(e){console.error(`Unable to save test case:`,e),d.message.error(`Unable to save test case.`)}finally{T(!1)}},B=(t,n)=>{e.setFieldsValue({[t]:BM(n)})},V=t=>{e.setFieldsValue({module:BM(t),flow:void 0,step_order:void 0,keyword:void 0,description:void 0,target:void 0,tags:LM.tags,value:void 0,expected:void 0})},H=t=>{e.setFieldsValue({flow:BM(t),step_order:void 0})},U=e=>{let n=RM[e];y({open:!0,typeKey:e}),t.setFieldsValue({name:``,type:n.label})},W=()=>{y(e=>({...e,open:!1})),t.resetFields()},G=async()=>{try{let n=BM((await t.validateFields()).name),r=await Gm({name:n,type:D.dbName});F(v.typeKey,r?.items??[]),e.setFieldsValue({[D.formField]:n}),d.message.success(`${D.label} added successfully.`),W()}catch(e){if(e?.errorFields)return;console.error(`Unable to save testing option:`,e),d.message.error(`Unable to add ${D.label.toLowerCase()}.`)}finally{x(!1)}};return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:IM})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>E(`/zinnext-home`),children:`View Table`})})]}),(0,p.jsx)(`div`,{className:`v1-page`,children:(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,p.jsx)(`div`,{className:`v1-page-header`,children:(0,p.jsxs)(d.Space,{align:`center`,size:10,children:[(0,p.jsx)(f.ProfileOutlined,{className:`v1-outer-icon`}),(0,p.jsx)(`div`,{children:(0,p.jsx)(FM,{strong:!0,style:{fontSize:16},children:`Add Test Case`})})]})}),(0,p.jsx)(Y,{children:(0,p.jsxs)(d.Form,{form:e,className:`v1-form`,layout:`vertical`,colon:!1,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),initialValues:LM,onFinish:z,autoComplete:`off`,children:[(0,p.jsx)(d.Card,{className:`v1-card`,title:(0,p.jsx)(WM,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`Test Case Details`}),extra:(0,p.jsx)(FM,{type:`secondary`,className:`v1-card-subtitle`,children:`Module, flow, step order and execution data`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsxs)(d.Space.Compact,{style:{width:`100%`},children:[(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,style:{flex:1},children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,loading:l,optionFilterProp:`label`,placeholder:`Select module`,options:O,onChange:V})}),(0,p.jsx)(d.Button,{"aria-label":`Add module`,icon:(0,p.jsx)(f.PlusOutlined,{}),style:{marginTop:30},onClick:()=>U(`module`)})]})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Flow`,name:`flow`,children:(0,p.jsx)(d.AutoComplete,{maxLength:100,allowClear:!0,disabled:N,options:s,placeholder:g?`Loading flows`:`Enter flow`,onChange:H,filterOption:(e,t)=>t?.value?.toLowerCase().includes(e.toLowerCase())})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,validateTrigger:[`onBlur`,`onChange`],children:(0,p.jsx)(d.Input,{maxLength:10,disabled:!0,placeholder:S?`Loading step order`:`Step order`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`keyword`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,disabled:P,optionFilterProp:`label`,placeholder:`Select action`,options:PM,onChange:t=>e.setFieldsValue({keyword:VM(t)})})})}),(0,p.jsx)(d.Col,{xs:24,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:3,maxLength:255,disabled:P,placeholder:`Enter description`,showCount:!0,onBlur:e=>B(`description`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`target`,children:(0,p.jsx)(d.Input,{maxLength:255,disabled:P,placeholder:`Enter target`,onBlur:e=>B(`target`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Tags`,name:`tags`,children:(0,p.jsx)(d.Input,{maxLength:200,disabled:P,placeholder:`Enter tags`,prefix:(0,p.jsx)(f.TagsOutlined,{className:`v1-input-icon`}),onBlur:e=>B(`tags`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:P,placeholder:`Enter value`,onBlur:e=>B(`value`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:P,placeholder:`Enter expected result`,onBlur:e=>B(`expected`,e.target.value)})})})]})}),(0,p.jsx)(`div`,{className:`v1-form-actions`,children:(0,p.jsx)(d.Form.Item,{children:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:w,disabled:P,children:`Submit`}),(0,p.jsx)(d.Button,{onClick:()=>{e.resetFields(),o([]),c([])},children:`Reset`})]})})})]})}),(0,p.jsx)(d.Modal,{title:`Add ${D.label}`,open:v.open,confirmLoading:b,okText:`Add`,onCancel:W,onOk:()=>{x(!0),G()},destroyOnHidden:!0,children:(0,p.jsxs)(d.Form,{form:t,layout:`vertical`,colon:!1,className:`v1-form`,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),children:[(0,p.jsx)(d.Form.Item,{label:`Name`,name:`name`,children:(0,p.jsx)(d.Input,{maxLength:100,placeholder:`Enter ${D.label.toLowerCase()} name`,onBlur:e=>{t.setFieldsValue({name:BM(e.target.value)})}})}),(0,p.jsx)(d.Form.Item,{label:`Type`,name:`type`,children:(0,p.jsx)(d.Input,{disabled:!0})})]})})]})})]})}var{Text:KM}=d.Typography,qM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`}];function JM(e=``){return String(e??``).trim()}function YM(e=[],t){return e.map(e=>({value:e.id,label:e[t]}))}var XM=[{label:`Step`,value:`step_order`,width:70},{label:`Action`,value:`actions`,width:140},{label:`Key`,value:`key`,width:160,ellipsis:!0},{label:`Value`,value:`value`,ellipsis:!0},{label:`Description`,value:`description`,ellipsis:!0},{label:`Scenario`,value:`scenario`,width:110,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`green`,children:`Positive`}):(0,p.jsx)(d.Tag,{color:`red`,children:`Negative`})}],ZM={key:!1,value:!1,expected:!1};function QM(e,t){return t?e[t]??ZM:ZM}function $M(e,t){e.setFields(t.map(e=>({name:e,errors:[]})))}function eN(){let[e]=d.Form.useForm(),r=(0,h.useNavigate)(),[i]=(0,h.useSearchParams)(),a=i.get(`edit`),o=!!a,s=(0,u.useMemo)(()=>t.l(),[]),[c,l]=(0,u.useState)([]),[m,g]=(0,u.useState)([]),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)(PM),[x,S]=(0,u.useState)({}),[C,w]=(0,u.useState)(!1),[T,E]=(0,u.useState)(!1),[D,O]=(0,u.useState)(!1),[k,A]=(0,u.useState)(!1),[j,M]=(0,u.useState)(!1),N=d.Form.useWatch(`module`,e),P=d.Form.useWatch(`submodule`,e),F=d.Form.useWatch(`actions`,e),I=!!N,L=!!P,R=(0,u.useMemo)(()=>QM(x,F),[x,F]),z=(0,u.useMemo)(()=>YM(c,`modulename`),[c]),B=(0,u.useMemo)(()=>YM(m,`submodulename`),[m]),V=(0,u.useMemo)(()=>c.find(e=>e.id===N)?.modulename??``,[c,N]),H=(0,u.useMemo)(()=>m.find(e=>e.id===P)?.submodulename??``,[P,m]),U=(0,u.useCallback)(async()=>{try{let e=await Km();Array.isArray(e?.options)&&e.options.length>0&&b(e.options),e?.rules&&typeof e.rules==`object`&&S(e.rules)}catch(e){console.error(`Unable to load action field rules:`,e),d.message.error(`Unable to load action validation rules.`)}},[]),W=(0,u.useCallback)(async e=>{if(!e){l([]);return}w(!0);try{let t=await eh({project:e,activeOnly:!0});l(t?.items??[])}catch(e){console.error(`Unable to load modules:`,e),d.message.error(`Unable to load modules.`)}finally{w(!1)}},[]),G=(0,u.useCallback)(async(e,t)=>{if(!e||!t){g([]);return}E(!0);try{let n=await rh({project:e,module:t,activeOnly:!0});g(n?.items??[])}catch(e){console.error(`Unable to load submodules:`,e),d.message.error(`Unable to load submodules.`)}finally{E(!1)}},[]),ee=(0,u.useCallback)(async(t,n,r,i=``)=>{if(!t||!n||!r){v([]),e.setFieldsValue({step_order:void 0});return}O(!0);try{let[a,o]=await Promise.all([oh({product_parent_ID:t,module_parent_ID:n,submodule_parent_ID:r,actions:i,limit:1e3}),lh({product_parent_ID:t,module_parent_ID:n,submodule_parent_ID:r})]);v(a?.items??[]),e.setFieldsValue({step_order:o?.step_order??1})}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{O(!1)}},[e]),te=(0,u.useCallback)(async(e=``)=>{if(!(!s?.id||!N||!P)){O(!0);try{let t=await oh({product_parent_ID:s.id,module_parent_ID:N,submodule_parent_ID:P,actions:e,limit:1e3});v(t?.items??[])}catch(e){console.error(`Unable to load action flows:`,e),d.message.error(`Unable to load action steps.`)}finally{O(!1)}}},[s?.id,N,P]),ne=(0,u.useCallback)(async()=>{if(!(!a||!s?.name)){M(!0);try{let t=await ch(a);await G(s.name,t.module);let n=await oh({product_parent_ID:t.product_parent_ID,module_parent_ID:t.module_parent_ID,submodule_parent_ID:t.submodule_parent_ID,limit:1e3});v(n?.items??[]),e.setFieldsValue({module:t.module_parent_ID,submodule:t.submodule_parent_ID,step_order:t.step_order,actions:t.actions,key:t.key,value:t.value,expected:t.expected,description:t.description,scenario:t.scenario===1,active:Number(t.active)!==0})}catch(e){console.error(`Unable to load test flow:`,e),d.message.error(`Unable to load test flow for edit.`),r(`/viewTestCase`)}finally{M(!1)}}},[a,e,G,r,s?.name]);return(0,u.useEffect)(()=>{if(!s){r(`/select-project`,{replace:!0});return}Promise.resolve().then(async()=>{await U(),await W(s.name),a&&await ne()})},[s,r,U,W,a,ne]),s?(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:qM})}),(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(KM,{strong:!0,children:s.name})]})})]}),(0,p.jsx)(`div`,{className:`zt-page`,children:(0,p.jsxs)(d.Form,{form:e,layout:`vertical`,colon:!1,className:`v1-form`,initialValues:{scenario:!0,active:!0},onFinish:async t=>{let n={product_parent_ID:Number(s?.id),module_parent_ID:Number(t.module),submodule_parent_ID:Number(t.submodule),description:JM(t.description),actions:JM(t.actions),key:JM(t.key),value:JM(t.value),expected:JM(t.expected),scenario:+!!t.scenario,active:+!!t.active};A(!0);try{if(o){await uh(a,{...n,step_order:Number(t.step_order)}),d.message.success(`Test case updated successfully.`),r(`/viewTestCase`);return}await sh(n),d.message.success(`Step saved (#${t.step_order}).`),e.setFieldsValue({actions:void 0,key:void 0,value:void 0,expected:void 0,description:void 0}),await ee(n.product_parent_ID,n.module_parent_ID,n.submodule_parent_ID)}catch(e){console.error(`Unable to save test case:`,e),d.message.error(o?`Unable to update test case.`:`Unable to save step.`)}finally{A(!1)}},autoComplete:`off`,disabled:j,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:8,className:`zt-section-title`,children:[(0,p.jsx)(`span`,{className:`zt-step-tag`,children:`1`}),(0,p.jsx)(`span`,{children:`Module & Submodule`})]}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],align:`bottom`,children:[(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,loading:C,placeholder:`Select module`,options:z,onChange:t=>{let n=c.find(e=>e.id===t)?.modulename??``;e.setFieldsValue({module:t,submodule:void 0,step_order:void 0,actions:void 0,key:void 0,value:void 0,expected:void 0}),$M(e,[`actions`,`key`,`value`,`expected`]),g([]),v([]),G(s?.name,n)}})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Submodule`,name:`submodule`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,disabled:!I,loading:T,placeholder:I?`Select submodule`:`Select module first`,options:B,onChange:t=>{e.setFieldsValue({submodule:t,actions:void 0,key:void 0,value:void 0,expected:void 0}),$M(e,[`actions`,`key`,`value`,`expected`]),ee(s?.id,N,t)}})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Scenario`,name:`scenario`,valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{disabled:!L,checkedChildren:`Positive`,unCheckedChildren:`Negative`})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Active`,name:`active`,valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{checkedChildren:`Active`,unCheckedChildren:`Inactive`})})})]})}),L&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:8,className:`zt-section-title`,children:[(0,p.jsx)(`span`,{className:`zt-step-tag`,children:`2`}),(0,p.jsx)(f.FileTextOutlined,{}),(0,p.jsx)(`span`,{children:`Step Details`})]}),extra:(0,p.jsxs)(KM,{type:`secondary`,children:[V,` / `,H]}),children:[(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,children:(0,p.jsx)(d.Input,{disabled:!0,placeholder:D?`Loading…`:`Auto`})})}),(0,p.jsx)(d.Col,{xs:24,md:18,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`actions`,rules:[{required:!0,message:`Mandatory Field`}],children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:`Select action`,options:y,onChange:t=>{let n=QM(x,t);e.setFieldsValue({actions:t,key:n.key?e.getFieldValue(`key`):void 0,value:n.value?e.getFieldValue(`value`):void 0,expected:n.expected?e.getFieldValue(`expected`):void 0}),$M(e,[`key`,`value`,`expected`]),te(t||``)}})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`key`,rules:[{required:R.key,message:`Key is required for this action`}],children:(0,p.jsx)(d.Input,{maxLength:255,disabled:F&&!R.key,placeholder:F?R.key?`Required — Enter selector / locator`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,rules:[{required:R.value,message:`Value is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:1,autoSize:{minRows:1,maxRows:4},disabled:F&&!R.value,placeholder:F?R.value?`Required — Enter value`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,rules:[{required:R.expected,message:`Expected result is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:2,disabled:F&&!R.expected,placeholder:F?R.expected?`Required — Enter expected result`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:2,maxLength:255,showCount:!0,placeholder:`Enter description`})})})]}),(0,p.jsxs)(d.Space,{className:`zt-actions`,children:[(0,p.jsx)(d.Button,{onClick:()=>{if(o){r(`/viewTestCase`);return}e.resetFields(),g([]),v([]),E(!1),O(!1)},children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:k||j,children:o?`Update Test Case`:`Save & Continue`})]})]},`${N}-${P}`),L&&(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.TableOutlined,{}),(0,p.jsx)(`span`,{children:`Added Steps`})]}),extra:(0,p.jsx)(d.Tag,{children:F?`${_.length} ${F} step(s)`:`${_.length} step(s)`}),children:(0,p.jsx)(tl,{listName:`Added Steps`,loading:D,fields:XM,dataSource:_,current:1,pageSize:Math.max(_.length,1),total:_.length,rowSelection:!1,className:`zt-list-plain zt-list-static`})})]})})]}):null}var{Text:tN}=d.Typography,nN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Manage Modules`,href:`/manageModules`}];function rN(){let e=(0,h.useNavigate)(),r=(0,u.useMemo)(()=>t.l(),[]),[i,a]=(0,u.useState)([]),[o,s]=(0,u.useState)({}),[c,l]=(0,u.useState)(!1),[m,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(1),[C,w]=(0,u.useState)(10),T=(0,u.useCallback)(async e=>{if(!e){a([]);return}l(!0);try{let[t,n]=await Promise.all([eh({project:e}),rh({project:e})]);a(t?.items??[]);let r={};(n?.items??[]).forEach(e=>{let t=e.modulename;r[t]=(r[t]??0)+1}),s(r)}catch(e){console.error(e),d.message.error(`Unable to load modules.`)}finally{l(!1)}},[]);(0,u.useEffect)(()=>{if(!r){e(`/select-project`,{replace:!0});return}Promise.resolve().then(()=>T(r.name))},[r,e,T]);let E=async(e,t)=>{try{await nh(e.id,+!!t),a(n=>n.map(n=>n.id===e.id?{...n,active:+!!t}:n)),d.message.success(`Module ${t?`activated`:`deactivated`}.`)}catch(e){console.error(e),d.message.error(`Unable to update module status.`)}},D=async()=>{let e=_.trim();if(!e){d.message.warning(`Enter a module name.`);return}b(!0);try{await th({project:r.name,modulename:e}),d.message.success(`Module added.`),g(!1),v(``),S(1),T(r.name)}catch(e){console.error(e),d.message.error(`Unable to add module (maybe it already exists).`)}finally{b(!1)}},O=t=>{e(`/test-cases/zinnext/submodules?module=${encodeURIComponent(t.modulename)}`)};return r?(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:nN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/addTestCase`),children:`Back to Form`})})]}),(0,p.jsxs)(`div`,{className:`zt-page`,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-bar`,children:(0,p.jsxs)(d.Row,{gutter:[16,16],align:`middle`,justify:`space-between`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(`span`,{children:`Project:`}),(0,p.jsx)(tN,{strong:!0,children:r.name})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>g(!0),children:`Add Module`})})]})}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Modules`})]}),children:(0,p.jsx)(tl,{listName:`Modules`,loading:c,fields:[{label:`Module`,value:`modulename`},{label:`Submodules`,value:`submoduleCount`,width:140,render:(e,t)=>(0,p.jsxs)(d.Button,{type:`link`,className:`zt-count-link`,onClick:()=>O(t),children:[o[t.modulename]??0,` submodule(s)`]})},{label:`Active`,value:`active`,width:120,render:(e,t)=>(0,p.jsx)(d.Switch,{checked:e===1,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:e=>E(t,e)})}],dataSource:i,current:x,pageSize:C,total:i.length,onPageChange:S,onPageSizeChange:e=>{S(1),w(e)},rowSelection:!1,className:`zt-list-plain`})})]}),(0,p.jsx)(d.Modal,{title:`Add Module`,open:m,confirmLoading:y,okText:`Add`,onOk:D,onCancel:()=>{g(!1),v(``)},destroyOnHidden:!0,children:(0,p.jsxs)(d.Space,{direction:`vertical`,className:`zt-modal-stack`,children:[(0,p.jsxs)(tN,{type:`secondary`,children:[`Project: `,(0,p.jsx)(`b`,{children:r.name})]}),(0,p.jsx)(d.Input,{placeholder:`Enter module name`,maxLength:100,value:_,onChange:e=>v(e.target.value),onPressEnter:D})]})})]}):null}var{Text:iN}=d.Typography,aN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Manage Modules`,href:`/manageModules`},{label:`Manage Submodules`,href:`/test-cases/zinnext/submodules`}];function oN(){let e=(0,h.useNavigate)(),[r]=(0,h.useSearchParams)(),i=(0,u.useMemo)(()=>t.l(),[]),a=r.get(`module`)??``,[o,s]=(0,u.useState)([]),[c,l]=(0,u.useState)(!1),[m,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(1),[C,w]=(0,u.useState)(10),T=(0,u.useCallback)(async(e,t)=>{if(!e||!t){s([]);return}l(!0);try{let n=await rh({project:e,module:t});s(n?.items??[])}catch(e){console.error(e),d.message.error(`Unable to load submodules.`)}finally{l(!1)}},[]);(0,u.useEffect)(()=>{if(!i){e(`/select-project`,{replace:!0});return}if(!a){e(`/manageModules`,{replace:!0});return}Promise.resolve().then(()=>T(i.name,a))},[i,a,e,T]);let E=async(e,t)=>{try{await ah(e.id,+!!t),s(n=>n.map(n=>n.id===e.id?{...n,active:+!!t}:n)),d.message.success(`Submodule ${t?`activated`:`deactivated`}.`)}catch(e){console.error(e),d.message.error(`Unable to update submodule status.`)}},D=async()=>{let e=_.trim();if(!e){d.message.warning(`Enter a submodule name.`);return}b(!0);try{await ih({project:i.name,modulename:a,submodulename:e}),d.message.success(`Submodule added.`),g(!1),v(``),S(1),T(i.name,a)}catch(e){console.error(e),d.message.error(`Unable to add submodule (maybe it already exists).`)}finally{b(!1)}};return!i||!a?null:(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:aN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/manageModules`),children:`Back to Modules`})})]}),(0,p.jsxs)(`div`,{className:`zt-page`,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-bar`,children:(0,p.jsxs)(d.Row,{gutter:[16,16],align:`middle`,justify:`space-between`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:16,wrap:!0,className:`zt-section-title`,children:[(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(`span`,{children:`Project:`}),(0,p.jsx)(iN,{strong:!0,children:i.name})]}),(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Module:`}),(0,p.jsx)(iN,{strong:!0,children:a})]})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>g(!0),children:`Add Submodule`})})]})}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Submodules`})]}),children:(0,p.jsx)(tl,{listName:`Submodules`,loading:c,fields:[{label:`Submodule`,value:`submodulename`},{label:`Active`,value:`active`,width:120,render:(e,t)=>(0,p.jsx)(d.Switch,{checked:e===1,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:e=>E(t,e)})}],dataSource:o,current:x,pageSize:C,total:o.length,onPageChange:S,onPageSizeChange:e=>{S(1),w(e)},rowSelection:!1,className:`zt-list-plain`})})]}),(0,p.jsx)(d.Modal,{title:`Add Submodule`,open:m,confirmLoading:y,okText:`Add`,onOk:D,onCancel:()=>{g(!1),v(``)},destroyOnHidden:!0,children:(0,p.jsxs)(d.Space,{direction:`vertical`,className:`zt-modal-stack`,children:[(0,p.jsxs)(iN,{type:`secondary`,children:[`Project: `,(0,p.jsx)(`b`,{children:i.name}),` \xA0|\xA0 Module: `,(0,p.jsx)(`b`,{children:a})]}),(0,p.jsx)(d.Input,{placeholder:`Enter submodule name`,maxLength:100,value:_,onChange:e=>v(e.target.value),onPressEnter:D})]})})]})}var{Text:sN}=d.Typography,cN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Table`,href:`/viewTestCase`}];function lN(){let e=(0,h.useNavigate)(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)(0),[s,c]=(0,u.useState)(!1),l=(0,u.useMemo)(()=>t.l(),[]),[m,g]=(0,u.useState)(``),[_,v]=(0,u.useState)(1),[y,b]=(0,u.useState)(20),[x,S]=(0,u.useState)(null),C=(0,u.useCallback)(async(e={})=>{c(!0);try{let t=await oh({product_parent_ID:e.project??l?.id??``,search:e.search??m??``,limit:e.pageSize??y,offset:((e.page??_)-1)*(e.pageSize??y)});i(t?.items??[]),o(t?.total??0)}catch(e){console.error(e),d.message.error(`Unable to load test flows.`)}finally{c(!1)}},[l?.id,m,_,y]),w=e=>{d.Modal.confirm({title:`Delete Test Case`,icon:(0,p.jsx)(f.ExclamationCircleOutlined,{}),content:`Are you sure you want to delete this test case?`,okText:`Delete`,okButtonProps:{danger:!0,loading:x===e.id},cancelText:`Cancel`,async onOk(){S(e.id);try{await dh(e.id),d.message.success(`Test case deleted successfully.`);let t=r.length===1&&_>1?_-1:_;v(t),await C({page:t})}catch(e){throw console.error(`Unable to delete test flow:`,e),d.message.error(`Unable to delete test case.`),e}finally{S(null)}}})};return(0,u.useEffect)(()=>{Promise.resolve().then(()=>{if(!l?.id){e(`/select-project`,{replace:!0});return}C({page:1})})},[]),(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:cN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/addTestCase`),children:`Back to Form`})})]}),(0,p.jsx)(`div`,{className:`zt-page zt-page-wide`,children:(0,p.jsxs)(d.Card,{className:`v1-card`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.TableOutlined,{}),(0,p.jsx)(`span`,{children:`Test Flows`})]}),extra:(0,p.jsxs)(sN,{type:`secondary`,children:[a,` row(s)`]}),children:[(0,p.jsxs)(d.Space,{wrap:!0,className:`zt-toolbar`,children:[(0,p.jsx)(d.Input.Search,{allowClear:!0,className:`zt-search-filter`,placeholder:`Search module / key / description`,value:m,onChange:e=>g(e.target.value),onSearch:()=>{v(1),C({page:1})}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>C(),children:`Refresh`})]}),(0,p.jsx)(tl,{listName:`Test Flows`,loading:s,fields:[{label:`Actions`,value:`rowActions`,width:112,fixed:`left`,sorter:!1,render:(t,n)=>(0,p.jsxs)(d.Space,{size:4,className:`zt-row-actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Edit`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>e(`/addTestCase?edit=${n.id}`)})}),(0,p.jsx)(d.Tooltip,{title:`Delete`,children:(0,p.jsx)(d.Button,{danger:!0,type:`text`,size:`small`,icon:(0,p.jsx)(f.DeleteOutlined,{}),loading:x===n.id,onClick:()=>w(n)})})]})},{label:`ID`,value:`id`,width:70,fixed:`left`},{label:`Project`,value:`project`,width:130},{label:`Module`,value:`module`,width:130},{label:`Submodule`,value:`submodule`,width:140},{label:`Step`,value:`step_order`,width:70},{label:`Action`,value:`actions`,width:140},{label:`Key`,value:`key`,width:160,ellipsis:!0},{label:`Value`,value:`value`,width:200,ellipsis:!0},{label:`Expected`,value:`expected`,width:180,ellipsis:!0},{label:`Description`,value:`description`,width:180,ellipsis:!0},{label:`Scenario`,value:`scenario`,width:110,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`green`,children:`Positive`}):(0,p.jsx)(d.Tag,{color:`red`,children:`Negative`})},{label:`Active`,value:`active`,width:90,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`blue`,children:`Active`}):(0,p.jsx)(d.Tag,{children:`Inactive`})}],dataSource:r,current:_,pageSize:y,total:a,onPageChange:e=>{v(e),C({page:e})},onPageSizeChange:e=>{v(1),b(e),C({page:1,pageSize:e})},rowSelection:!1,className:`zt-list-plain`})]})})]})}var uN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/test-cases`}];function dN(){return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsx)(n.Dt,{items:uN}),(0,p.jsx)(n.rt,{moduleName:`test-flows`,rowKey:`id`})]})}var{Text:fN}=d.Typography,pN=[{label:`Home`,href:`/`},{label:`LMS Cases`,href:`/lms-cases`}],mN={tags:`regression`,active:1},hN={module:{dbName:`Modules`,formField:`module`,label:`Module`}},gN={key:!1,value:!1,expected:!1};function _N(e,t){return t?e[t]??gN:gN}function vN(e,t){e.setFields(t.map(e=>({name:e,errors:[]})))}function yN(e=[]){return e.map(e=>({value:e,label:e}))}function bN(e=``){return String(e??``).trim()}function xN(e=[]){let t=new Map;return e.forEach(e=>{let n=bN(e?.flow),r=n.toLowerCase();n&&!t.has(r)&&t.set(r,n)}),Array.from(t.values()).map(e=>({value:e,label:e}))}function SN(e=[],t,n){let r=bN(t).toLowerCase(),i=bN(n).toLowerCase();return e.reduce((e,t)=>{let n=bN(t?.module).toLowerCase(),a=bN(t?.flow).toLowerCase();if(n!==r||a!==i)return e;let o=Number(t?.step_order)||0;return Math.max(e,o)},0)+1}function CN({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(fN,{strong:!0,className:`v1-section-label`,children:t})]})}function wN(){let[e]=d.Form.useForm(),[t]=d.Form.useForm(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(PM),[g,_]=(0,u.useState)({}),[v,y]=(0,u.useState)(!1),[b,x]=(0,u.useState)(!1),[S,C]=(0,u.useState)({open:!1,typeKey:`module`}),[w,T]=(0,u.useState)(!1),[E,D]=(0,u.useState)(!1),[O,k]=(0,u.useState)(!1),A=(0,h.useNavigate)(),j=hN[S.typeKey],M=(0,u.useMemo)(()=>yN(r),[r]),N=d.Form.useWatch(`module`,e),P=d.Form.useWatch(`flow`,e),F=d.Form.useWatch(`keyword`,e),I=!!bN(N),L=!!bN(P),R=!I,z=!I||!L,B=(0,u.useMemo)(()=>_N(g,F),[g,F]),V=(e,t=[])=>{e===`module`&&i(t)},H=async()=>{y(!0);try{let e=await Wm(hN.module.dbName);i(e?.items??[])}catch(e){console.error(`Unable to load testing options:`,e),d.message.error(`Unable to load testing options.`)}finally{y(!1)}},U=async()=>{try{let e=await Km();Array.isArray(e?.options)&&e.options.length>0&&m(e.options),e?.rules&&typeof e.rules==`object`&&_(e.rules)}catch(e){console.error(`Unable to load action field rules:`,e),d.message.error(`Unable to load action validation rules.`)}},W=(0,u.useCallback)(async t=>{let n=bN(t);if(o([]),c([]),e.setFieldsValue({step_order:void 0}),n){x(!0);try{let e=await Qm({limit:1e4,offset:0,module:n}),t=Array.isArray(e?.items)?e.items:[];o(t),c(xN(t))}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{x(!1)}}},[e]),G=(0,u.useCallback)(async(t,n,r)=>{let i=bN(t),a=bN(n);if(!i||!a){e.setFieldsValue({step_order:void 0});return}D(!0);try{e.setFieldsValue({step_order:SN(r,i,a)})}catch(e){console.error(`Unable to load step order:`,e),d.message.error(`Unable to load step order.`)}finally{D(!1)}},[e]);(0,u.useEffect)(()=>{Promise.resolve().then(async()=>{await Promise.all([H(),U()])})},[]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>W(N))},[W,N]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>G(N,P,a))},[a,G,P,N]);let ee=async t=>{let n={module:bN(t.module),flow:bN(t.flow),step_order:Number(t.step_order),description:bN(t.description),keyword:bN(t.keyword),target:bN(t.target),value:bN(t.value),expected:bN(t.expected),tags:t.tags?bN(t.tags):mN.tags,active:Number(t.active)};k(!0);try{await Zm(n),d.message.success(`LMS case details saved successfully.`),e.resetFields(),o([]),c([])}catch(e){console.error(`Unable to save LMS case:`,e),d.message.error(`Unable to save LMS case.`)}finally{k(!1)}},te=(t,n)=>{e.setFieldsValue({[t]:bN(n)})},ne=t=>{e.setFieldsValue({module:bN(t),flow:void 0,step_order:void 0,keyword:void 0,description:void 0,target:void 0,tags:mN.tags,value:void 0,expected:void 0}),vN(e,[`keyword`,`target`,`value`,`expected`])},re=t=>{e.setFieldsValue({flow:bN(t),step_order:void 0,keyword:void 0,target:void 0,value:void 0,expected:void 0}),vN(e,[`keyword`,`target`,`value`,`expected`])},ie=t=>{let n=_N(g,t);e.setFieldsValue({keyword:bN(t),target:n.key?e.getFieldValue(`target`):void 0,value:n.value?e.getFieldValue(`value`):void 0,expected:n.expected?e.getFieldValue(`expected`):void 0}),vN(e,[`target`,`value`,`expected`])},ae=e=>{let n=hN[e];C({open:!0,typeKey:e}),t.setFieldsValue({name:``,type:n.label})},oe=()=>{C(e=>({...e,open:!1})),t.resetFields()},se=async()=>{try{let n=bN((await t.validateFields()).name),r=await Gm({name:n,type:j.dbName});V(S.typeKey,r?.items??[]),e.setFieldsValue({[j.formField]:n}),d.message.success(`${j.label} added successfully.`),oe()}catch(e){if(e?.errorFields)return;console.error(`Unable to save testing option:`,e),d.message.error(`Unable to add ${j.label.toLowerCase()}.`)}finally{T(!1)}};return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:pN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>A(`/lms-home`),children:`View Table`})})]}),(0,p.jsx)(`div`,{className:`v1-page`,children:(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,p.jsx)(`div`,{className:`v1-page-header`,children:(0,p.jsxs)(d.Space,{align:`center`,size:10,children:[(0,p.jsx)(f.ProfileOutlined,{className:`v1-outer-icon`}),(0,p.jsx)(`div`,{children:(0,p.jsx)(fN,{strong:!0,style:{fontSize:16},children:`Add LMS Case`})})]})}),(0,p.jsx)(Y,{children:(0,p.jsxs)(d.Form,{form:e,className:`v1-form`,layout:`vertical`,colon:!1,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),initialValues:mN,onFinish:ee,autoComplete:`off`,children:[(0,p.jsx)(d.Card,{className:`v1-card`,title:(0,p.jsx)(CN,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`LMS Case Details`}),extra:(0,p.jsx)(fN,{type:`secondary`,className:`v1-card-subtitle`,children:`Module, flow, step order and execution data`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsxs)(d.Space.Compact,{style:{width:`100%`},children:[(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,style:{flex:1},children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,loading:v,optionFilterProp:`label`,placeholder:`Select module`,options:M,onChange:ne})}),(0,p.jsx)(d.Button,{"aria-label":`Add module`,icon:(0,p.jsx)(f.PlusOutlined,{}),style:{marginTop:30},onClick:()=>ae(`module`)})]})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Flow`,name:`flow`,children:(0,p.jsx)(d.AutoComplete,{maxLength:100,allowClear:!0,disabled:R,options:s,placeholder:b?`Loading flows`:`Enter flow`,onChange:re,filterOption:(e,t)=>t?.value?.toLowerCase().includes(e.toLowerCase())})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,validateTrigger:[`onBlur`,`onChange`],children:(0,p.jsx)(d.Input,{maxLength:10,disabled:!0,placeholder:E?`Loading step order`:`Step order`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`keyword`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,disabled:z,optionFilterProp:`label`,placeholder:`Select action`,options:l,onChange:ie})})}),(0,p.jsx)(d.Col,{xs:24,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:3,maxLength:255,disabled:z,placeholder:`Enter description`,showCount:!0,onBlur:e=>te(`description`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`target`,rules:[{required:B.key,message:`Key is required for this action`}],children:(0,p.jsx)(d.Input,{maxLength:255,disabled:z||!!F&&!B.key,placeholder:z?`Select module and flow first`:F?B.key?`Required — Enter selector / locator`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`target`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Tags`,name:`tags`,children:(0,p.jsx)(d.Input,{maxLength:200,disabled:z,placeholder:`Enter tags`,prefix:(0,p.jsx)(f.TagsOutlined,{className:`v1-input-icon`}),onBlur:e=>te(`tags`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,rules:[{required:B.value,message:`Value is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:z||!!F&&!B.value,placeholder:z?`Select module and flow first`:F?B.value?`Required — Enter value`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`value`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,rules:[{required:B.expected,message:`Expected result is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:z||!!F&&!B.expected,placeholder:z?`Select module and flow first`:F?B.expected?`Required — Enter expected result`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`expected`,e.target.value)})})})]})}),(0,p.jsx)(`div`,{className:`v1-form-actions`,children:(0,p.jsx)(d.Form.Item,{children:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:O,disabled:z,children:`Submit`}),(0,p.jsx)(d.Button,{onClick:()=>{e.resetFields(),o([]),c([])},children:`Reset`})]})})})]})}),(0,p.jsx)(d.Modal,{title:`Add ${j.label}`,open:S.open,confirmLoading:w,okText:`Add`,onCancel:oe,onOk:()=>{T(!0),se()},destroyOnHidden:!0,children:(0,p.jsxs)(d.Form,{form:t,layout:`vertical`,colon:!1,className:`v1-form`,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),children:[(0,p.jsx)(d.Form.Item,{label:`Name`,name:`name`,children:(0,p.jsx)(d.Input,{maxLength:100,placeholder:`Enter ${j.label.toLowerCase()} name`,onBlur:e=>{t.setFieldsValue({name:bN(e.target.value)})}})}),(0,p.jsx)(d.Form.Item,{label:`Type`,name:`type`,children:(0,p.jsx)(d.Input,{disabled:!0})})]})})]})})]})}var TN=[{label:`Home`,href:`/`},{label:`LMS Cases`,href:`/lms-cases`}];function EN(){return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsx)(n.Dt,{items:TN}),(0,p.jsx)(n.rt,{moduleName:`lms-flows`,rowKey:`id`})]})}var DN=[`referenceId`,`ReferenceId`,`candidateId`,`CandidateId`,`entityId`,`EntityId`,`id`,`Id`,`_id`];function ON(e=DN){return function(t){if(!t||typeof t!=`object`)return``;for(let n of e){let e=t[n];if(e!=null&&e!==``)return String(e)}return``}}function kN(e,t=DN){if(!e||typeof e!=`object`)return[];let n=[];for(let r of t){let t=e[r];t!=null&&t!==``&&n.push(String(t))}return n}var AN=ON();function jN(e){return typeof e==`function`?e:typeof e==`string`?ON([e]):Array.isArray(e)?ON(e):AN}function MN(e,t,n){return!t||typeof t!=`object`?e:{...t,...e,id:e?.id??t?.id??n}}function NN(e,t,n={}){return{status:`success`,total:t,data:{data:e,...n}}}var PN=[`fields`,`fieldConfig`,`tabs`,`tabField`,`actionRules`,`actions`,`columnActions`];function FN(e){let t=e?.data??e,n={};for(let r of PN){let i=e?.[r]??t?.[r];i==null||Array.isArray(i)&&i.length===0||(n[r]=i)}return n}var IN=e=>String(e??``).replace(/[^a-zA-Z0-9]/g,``).toLowerCase();function LN(e,t,n){let r=(Array.isArray(n)?n:[n]).map(IN).filter(Boolean),i=r.length?e.findIndex(e=>r.includes(IN(e?.value))||r.includes(IN(e?.label))):-1;if(i===-1)return[...e,...t];let a=Number(e[i]?.order),o=Number.isFinite(a)?t.map((e,n)=>e.order==null||e.order===``?{...e,order:a+(n+1)/(t.length+1)}:e):t;return[...e.slice(0,i+1),...o,...e.slice(i+1)]}var RN=(e,t)=>n.Ot(e,t).rows,zN=(e,t)=>{let{rows:r,total:i}=n.Ot(e,t);return{rows:r,total:i}};function BN(e,t){return function(n,r,i,a={}){return e(t??n,r,i,a)}}function VN(e){return!e||typeof e!=`object`||typeof(e.fetchByKeys??e.fetch??e.function)!=`function`?null:{...e,fetchByKeys:typeof e.fetchByKeys==`function`?e.fetchByKeys:null,fetch:typeof e.fetch==`function`?e.fetch:null,function:typeof e.function==`function`?e.function:null,extractRows:typeof e.extractRows==`function`?e.extractRows:RN,mergeRow:typeof e.mergeRow==`function`?e.mergeRow:MN,fetchById:typeof e.fetchById==`function`?e.fetchById:null}}function HN({fetchSecondaryByKeys:e,fetchSecondary:t,extractSecondaryRows:n,fetchSecondaryById:r,secondaryKey:i,mergeRow:a,secondaryFetchLimit:o}){return!e&&!t&&!r?[]:[VN({key:i,fetchByKeys:e?(t,n,r)=>e(t,n,r):null,function:t?({moduleName:e,options:n})=>t(e,o,0,n):null,extractRows:n,fetchById:r,mergeRow:a})].filter(Boolean)}function UN(e){if(typeof e==`function`)return t=>{let n=e(t);return n==null||n===``?[]:[String(n)]};let t=typeof e==`string`?[e]:Array.isArray(e)&&e.length?e:DN;return e=>kN(e,t)}function WN(e,t){let n=new Map;return e.forEach(e=>{for(let r of t(e))n.has(r)||n.set(r,e)}),n}function GN({moduleName:e,limit:t,offset:n,options:r,keys:i,primaryResponse:a,primaryRows:o,pageRows:s,total:c,source:l}){return{moduleName:e,limit:t,offset:n,options:r,keys:i,primaryResponse:a,primaryRows:o,pageRows:s,total:c,source:l}}async function KN(e,t){if(typeof e.args==`function`){let n=e.args(t);return(e.fetch??e.function??e.fetchByKeys)(...Array.isArray(n)?n:[n])}if(Array.isArray(e.args))return(e.fetch??e.function??e.fetchByKeys)(...e.args);if(e.fetchByKeys&&Array.isArray(t.keys))return e.fetchByKeys(t.moduleName,t.keys,t.options,t);let n=e.fetch??e.function;return typeof n==`function`?n(t):null}function qN({fetchPrimaryPage:e,extractPrimaryPage:t=zN,fetchSecondaryByKeys:n,joinSources:r=[],fetchPrimary:i,extractPrimaryRows:a=RN,fetchSecondary:o,extractSecondaryRows:s=RN,fetchSecondaryById:c,primaryKey:l,secondaryKey:u,mergeRow:d=MN,secondaryFetchLimit:f=200,extraFields:p=[],extraFieldsAfter:m}){let h=Array.isArray(r)&&r.length?r.map(VN).filter(Boolean):HN({fetchSecondaryByKeys:n,fetchSecondary:o,extractSecondaryRows:s,fetchSecondaryById:c,secondaryKey:u,mergeRow:d,secondaryFetchLimit:f}),g=0;async function _(e,t,n,r){if(!e.fetchById||!r)return null;try{let i=await e.fetchById(n,r);return i&&t(i).includes(String(r))?i:null}catch(e){return console.error(`[mergedListApi] per-id join lookup failed for "${r}"`,e),null}}async function v(e,t,n,r,i){if(!n)return e;let a=t.extractRows(n,r)??[],o=jN(t.primaryKey??l),s=UN(t.key),c=WN(a,s);return Promise.all(e.map(async e=>{let n=o(e),a=c.get(n)??(i()?null:await _(t,s,r,n));return t.mergeRow(e,a,n)}))}async function y(e,t,n,r){let i=e;for(let e of t)i=await v(i,e.source,e.response,n,r);return i}function b(e,t,n){let r={};for(let e of n){if(!e)continue;let t=FN(e);for(let e of Object.keys(t))r[e]??(r[e]=t[e])}return p.length&&(r.fields=LN(r.fields??[],p,m)),NN(e,t,r)}async function x({moduleName:e,limit:t,offset:n,options:r,primaryResponse:i,primaryRows:a,pageRows:o,total:s}){return Promise.all(h.map(async c=>{try{let u=jN(c.primaryKey??l),d=[...new Set(o.map(u).filter(Boolean))];return c.fetchByKeys&&d.length===0?{source:c,response:null}:{source:c,response:await KN(c,GN({moduleName:e,limit:t,offset:n,options:r,keys:d,primaryResponse:i,primaryRows:a,pageRows:o,total:s,source:c}))}}catch(e){return console.error(`[mergedListApi] join fetch failed — rendering page without that join`,e),{source:c,response:null}}}))}async function S(n,r,i,a,o){let s=await e(n,r,i,a),c=t(s,n)??{},l=Array.isArray(c.rows)?c.rows:[],u=Number.isFinite(Number(c.total))?Number(c.total):l.length,d=await x({moduleName:n,limit:r,offset:i,options:a,primaryResponse:s,primaryRows:l,pageRows:l,total:u});return b(await y(l,d,n,o),u,[s,...d.map(e=>e.response)])}async function C(e,t,n,r,o){let s=await i(e,t,n,r),c=a(s,e)??[],l=c.length,u=c.slice(n,n+t),d=await x({moduleName:e,limit:t,offset:n,options:r,primaryResponse:s,primaryRows:c,pageRows:u,total:l});return b(await y(u,d,e,o),l,[s,...d.map(e=>e.response)])}return async function(t,n=10,r=0,i={}){let a=++g,o=()=>a!==g;return e?S(t,n,r,i,o):C(t,n,r,i,o)}}function JN(e,t,r={}){return qN({fetchPrimary:()=>UE(e,t),extractPrimaryRows:VE,fetchSecondary:n.Qt,fetchSecondaryById:WE,secondaryFetchLimit:r.moduleFetchLimit??200})}function YN(e){let t=String(e??``).trim().split(/[^a-zA-Z0-9]+/).filter(Boolean);return t.length?`${t.map((e,t)=>t===0?e.toLowerCase():e[0].toUpperCase()+e.slice(1).toLowerCase()).join(``)}Count`:``}function XN(e){let t=Array.isArray(e?.stages)?e.stages:[];if(!t.length)return e;let n={};for(let e of t){let t=YN(e?.stageName);t&&(n[t]=Number(e?.count)||0)}return{...n,...e}}var ZN=e=>{let t=Number(e?.targetSubmission??e?.targetSubmissions);return Number.isFinite(t)&&t>0?t:null};function QN({submittedCountField:e=`submittedCount`,progressField:t=`targetSubmissionProgress`}={}){return function(n,r,i){let a=MN(n,r,i),o=ZN(a);return o!=null&&(a[t]=`${Number(a?.[e])||0} of ${o}`),a}}function $N(e={}){let t=QN();return qN({primaryKey:`_id`,extraFields:e.extraFields,extraFieldsAfter:e.extraFieldsAfter,fetchPrimaryPage:n.Qt,joinSources:[{key:`entityId`,fetchByKeys:(e,t,n,r)=>{let i=Math.max(1,Number(r?.limit)||10);return HE(Math.floor((Number(r?.offset)||0)/i)+1,i)},extractRows:e=>(e?.items??[]).map(XN),mergeRow:(e,n,r)=>{let i=t(e,n,r);return n?._id&&(i.workflowId=n._id),i}}]})}async function eP(e,t=10,r=0,i={},a={}){let o=await $N(a)(e,t,r,i);return n.Ot(o,e)}async function tP(e,t,r,i=10,a=0,o={}){let s=await JN(e,t)(r,i,a,o);return n.Ot(s,r)}var nP=Object.freeze({OPTIONS:`options`,BOOLEAN:`boolean`,DATE:`date`,NUMBER_RANGE:`numberRange`,TEXT:`text`}),rP=Object.freeze([{label:`Yes`,value:`true`},{label:`No`,value:`false`}]);function iP(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function aP(e){return e.value??e.field??e.fieldName??e.name??e.label}function oP(e){let t=aP(e),n=String(e?.filterArrayValueField??``).trim();return n?`${t}.${n}`:t}function sP(e){let t=e?.isVisible??e?.is_visible??e?.visible;return t==null?!0:typeof t==`boolean`?t:typeof t==`string`?![`false`,`0`,`no`,`hide`,`hidden`].includes(t.toLowerCase()):!!t}function cP(e){switch(e?.filterInputType||(e?.type===`boolean`?`boolean`:null)||(e?.type===`date`?`datepicker`:null)||(e?.type===`number`?`number-range`:null)||`dropdown`){case`boolean`:return nP.BOOLEAN;case`datepicker`:return nP.DATE;case`number-range`:return nP.NUMBER_RANGE;case`text`:return nP.TEXT;default:return nP.OPTIONS}}function lP(e,t,n){if(String(e??``).trim().toLowerCase()!==`sourcecandidates`)return n;let r=String(aP(t)??``).trim().toLowerCase(),i=String(iP(t)??``).trim().toLowerCase();return[`firstname`,`candidatename`,`candidate_name`,`fullname`].includes(r)||i===`candidate name`?[`firstName`,`lastName`]:n.map(e=>{let t=String(e??``).trim();switch(t.toLowerCase()){case`customfields.diceprofiledata.firstname`:return`firstName`;case`customfields.diceprofiledata.lastname`:return`lastName`;default:return t}}).filter(Boolean)}function uP(e,t=``){let n=new Set;return(Array.isArray(e)?e:[]).filter(e=>e&&sP(e)).map(e=>{let n=lP(t,e,Array.isArray(e.filterGroupFields)?e.filterGroupFields:[]);return{key:aP(e),label:iP(e),filterField:oP(e),filterInputType:e.filterInputType,type:e.type,kind:cP(e),groupFields:n,fetchMeta:{dataSource:e.lookup?.collection?`lookup`:e.dataSource,groupName:e.groupName,lookup:e.lookup??null,groupFields:n,groupSeparator:e.filterGroupSeparator??` `,arrayLabelField:e.filterArrayLabelField??``,arrayValueField:e.filterArrayValueField??``}}}).filter(e=>{if(!e.key||!e.label)return!1;let t=String(e.key);return!n.has(t)&&(n.add(t),!0)})}function dP(e){return e!=null&&String(e).trim()!==``}var fP=new Set(Object.values(nP));function pP(e){let t=new Set;return(Array.isArray(e)?e:[]).filter(e=>e&&typeof e==`object`&&dP(e.key)).map(e=>{let t=fP.has(e.kind)?e.kind:nP.OPTIONS,n=Array.isArray(e.options)?e.options.map(e=>e&&typeof e==`object`?{value:e.value,label:String(e.label??e.value)}:{value:e,label:String(e)}).filter(e=>e.value!==void 0&&e.value!==null&&e.value!==``):null,r=t===nP.NUMBER_RANGE&&e.slider&&typeof e.slider==`object`?{min:Number.isFinite(Number(e.slider.min))?Number(e.slider.min):0,max:Number.isFinite(Number(e.slider.max))?Number(e.slider.max):100,step:Number(e.slider.step)>0?Number(e.slider.step):1,suffix:typeof e.slider.suffix==`string`?e.slider.suffix:``}:null;return{key:String(e.key),label:dP(e.label)?String(e.label):``,filterField:dP(e.field)?String(e.field):String(e.key),filterInputType:t===nP.TEXT?`text`:void 0,type:void 0,kind:t,groupFields:[],fetchMeta:{},host:!0,options:n,all:t===nP.OPTIONS&&dP(e.all)?String(e.all):``,slider:r&&r.max>r.min?r:null,placeholder:dP(e.placeholder)?String(e.placeholder):``,bare:e.bare===!0,more:e.more===!0,open:e.open!==!1}}).filter(e=>!e.label&&!e.bare||t.has(e.key)?!1:(t.add(e.key),!0))}function mP(e){let t=[],n=``;return(Array.isArray(e)?e:[]).forEach(e=>{if(e?.field===`$search`){typeof e.value==`string`&&e.value.trim()&&(n=e.value.trim());return}t.push(e)}),{filters:t,search:n}}function hP(e,t={},n={}){let r=[];return e.forEach(e=>{let i=t[e.key];if(i!=null){if(e.kind===nP.OPTIONS||e.kind===nP.BOOLEAN){let t=(Array.isArray(i)?i:[i]).filter(e=>e!=null&&e!==``);if(!t.length)return;let a=n[e.key]??{},o={};t.forEach(e=>{let t=a[String(e)];t!==void 0&&(o[String(e)]=t)}),r.push({operator:`and`,field:e.filterField,values:t,valueLabels:o,fieldLabel:e.label,filterInputType:e.filterInputType,groupFields:e.groupFields});return}if(e.kind===nP.DATE){let t=dP(i.from)?String(i.from):null,n=dP(i.to)?String(i.to):null;if(!t&&!n)return;r.push({operator:`and`,field:e.filterField,values:[t,n].filter(Boolean),from:t??void 0,to:n??void 0,fieldLabel:e.label,filterInputType:e.filterInputType});return}if(e.kind===nP.NUMBER_RANGE){let t=typeof i.min==`number`&&Number.isFinite(i.min)?i.min:null,n=typeof i.max==`number`&&Number.isFinite(i.max)?i.max:null;if(t===null&&n===null)return;r.push({operator:`and`,field:e.filterField,values:[t,n].filter(e=>e!=null),from:t==null?void 0:String(t),to:n==null?void 0:String(n),fieldLabel:e.label,filterInputType:e.filterInputType});return}if(e.kind===nP.TEXT){let t=typeof i==`string`?i.trim():``;if(!t)return;r.push({operator:`and`,field:e.filterField,value:t,values:[],fieldLabel:e.label,filterInputType:`text`})}}}),r}function gP(e,t=[]){let n={};return(Array.isArray(t)?t:[]).forEach(t=>{if(!t?.field)return;let r=e.find(e=>String(e.filterField)===String(t.field)||String(e.key)===String(t.field));if(r)switch(r.kind){case nP.OPTIONS:case nP.BOOLEAN:n[r.key]=Array.isArray(t.values)?[...t.values]:[];break;case nP.DATE:n[r.key]={from:t.from??null,to:t.to??null};break;case nP.NUMBER_RANGE:{let e=t.from!==void 0&&t.from!==null&&t.from!==``?Number(t.from):null,i=t.to!==void 0&&t.to!==null&&t.to!==``?Number(t.to):null;n[r.key]={min:Number.isFinite(e)?e:null,max:Number.isFinite(i)?i:null};break}case nP.TEXT:n[r.key]=typeof t.value==`string`?t.value:``}}),n}function _P(e){return(Array.isArray(e)?e:[]).filter(e=>e?.field).length}function vP(e){let t=(Array.isArray(e)?e:[]).filter(e=>e?.field).map(e=>({f:String(e.field),v:Array.isArray(e.values)?e.values.map(String).sort():[],a:e.from??null,b:e.to??null,t:e.value??null,k:e.filterInputType??null})).sort((e,t)=>e.f<t.f?-1:+(e.f>t.f));return JSON.stringify(t)}var yP=[`operator`,`field`,`values`,`from`,`to`,`value`,`filterInputType`,`groupFields`,`fieldLabel`,`valueLabels`],bP=50;function xP(e){let t=(Array.isArray(e)?e:[]).filter(e=>e?.field).slice(0,bP);return t.length?JSON.stringify(t.map(e=>{let t={};return yP.forEach(n=>{e[n]!==void 0&&(t[n]=e[n])}),t})):``}function SP(e){if(!e)return[];let t;try{t=JSON.parse(e)}catch{return[]}return Array.isArray(t)?t.slice(0,bP).filter(e=>e&&typeof e==`object`&&typeof e.field==`string`&&e.field.trim()!==``).map(e=>{let t={field:e.field,operator:e.operator===`or`?`or`:`and`};return t.values=Array.isArray(e.values)?e.values.filter(e=>[`string`,`number`,`boolean`].includes(typeof e)):[],[`from`,`to`,`value`,`filterInputType`,`fieldLabel`].forEach(n=>{typeof e[n]==`string`&&(t[n]=e[n])}),Array.isArray(e.groupFields)&&(t.groupFields=e.groupFields.filter(e=>typeof e==`string`)),e.valueLabels&&typeof e.valueLabels==`object`&&!Array.isArray(e.valueLabels)&&(t.valueLabels=Object.fromEntries(Object.entries(e.valueLabels).filter(([,e])=>typeof e==`string`))),t}):[]}var CP=[],wP=300;function TP({moduleName:e,view:t=``,scope:r=``,scopeConditions:i=CP,value:a=CP,onChange:o,title:s=`Filters`,collapsed:c=!1,onExpand:l,onCollapse:m,defaultExpandedCount:h=4,optionLimit:g=6,className:_=``,fields:v=null,optionCounts:y=null,moreLabel:b=`More Filters`}){let x=Array.isArray(v),{fields:S,loading:C,error:w}=n.Ut(x?``:e,{view:t}),T=x?JSON.stringify(v):``,E=(0,u.useMemo)(()=>T?pP(JSON.parse(T)):uP(S,e),[T,S,e]),D=!x&&C,O=x?null:w,k=E.map(e=>e.key).join(`|`),{valuesByField:A,loadingFields:j,fetchValues:M}=n.Tt(e),N=Array.isArray(i)&&i.length?JSON.stringify(i):``,P=(0,u.useMemo)(()=>N?{scopeConditions:JSON.parse(N)}:null,[N]),F=vP(a),[I,L]=(0,u.useState)(()=>gP(E,a)),[R,z]=(0,u.useState)(F),[B,V]=(0,u.useState)(`${F}#${k}`),H=`${F}#${k}`;H!==B&&(V(H),(B.split(`#`)[1]!==k||F!==R)&&(L(gP(E,a)),z(F)));let U=(0,u.useMemo)(()=>{let e={};return(Array.isArray(a)?a:[]).forEach(t=>{let n=E.find(e=>String(e.filterField)===String(t.field));n&&t.valueLabels&&(e[n.key]={...t.valueLabels})}),Object.entries(A).forEach(([t,n])=>{e[t]={...e[t]??{}},(n??[]).forEach(n=>{e[t][String(n.value)]=String(n.label??n.value)})}),e},[a,A,E]),W=(0,u.useRef)(null),G=(0,u.useRef)({draft:I,labelsByField:U,railFields:E,onChange:o});(0,u.useEffect)(()=>{G.current={draft:I,labelsByField:U,railFields:E,onChange:o}}),(0,u.useEffect)(()=>()=>clearTimeout(W.current),[]);let ee=(0,u.useCallback)(e=>{clearTimeout(W.current),W.current=null;let{labelsByField:t,railFields:n,onChange:r}=G.current,i=hP(n,e??G.current.draft,t);z(vP(i)),r?.(i)},[]),te=(0,u.useCallback)((e,t,{immediate:n=!1,deferred:r=!1}={})=>{let i={...G.current.draft,[e]:t};G.current={...G.current,draft:i},L(i),clearTimeout(W.current),W.current=null,!r&&(W.current=setTimeout(()=>ee(),n?0:wP))},[ee]),ne=(0,u.useCallback)(()=>{clearTimeout(W.current),L({}),G.current={...G.current,draft:{}},z(vP([])),G.current.onChange?.([])},[]),[re,ie]=(0,u.useState)(()=>new Set),[ae,oe]=(0,u.useState)(``);if(k&&ae!==k){oe(k);let e=new Set(x?E.filter(e=>e.bare||e.open&&!e.more).map(e=>e.key):E.slice(0,h).map(e=>e.key));E.forEach(t=>{I[t.key]!==void 0&&e.add(t.key)}),ie(e)}let se=(0,u.useRef)(new Set);(0,u.useEffect)(()=>{E.forEach(e=>{if(e.kind!==nP.OPTIONS||!re.has(e.key)||Array.isArray(e.options))return;let t=`${e.key}|${r}|${N}`;se.current.has(t)||(se.current.add(t),M(e.key,``,{...e.fetchMeta,scope:r,...P??{}}))})},[re,E,r,N,P,M]);let ce=e=>{ie(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},K=_P(a);return c?(0,p.jsx)(`aside`,{className:`cc-filter-rail cc-filter-rail--collapsed ${_}`.trim(),"aria-label":s,children:(0,p.jsx)(d.Tooltip,{title:K?`Show ${s.toLowerCase()} (${K} active)`:`Show ${s.toLowerCase()}`,placement:`right`,children:(0,p.jsx)(d.Button,{type:`text`,className:`cc-filter-rail__expand`,"aria-label":`Show ${s.toLowerCase()}`,"aria-expanded":!1,onClick:l,icon:(0,p.jsx)(d.Badge,{count:K,size:`small`,offset:[4,-4],children:(0,p.jsx)(f.DoubleRightOutlined,{})})})})}):(0,p.jsxs)(`aside`,{className:`cc-filter-rail ${_}`.trim(),"aria-label":s,children:[(0,p.jsxs)(`div`,{className:`cc-filter-rail__head`,children:[(0,p.jsxs)(`span`,{className:`cc-filter-rail__title`,children:[s,K>0&&(0,p.jsx)(`span`,{className:`cc-filter-rail__count`,children:K})]}),(0,p.jsxs)(`span`,{className:`cc-filter-rail__head-actions`,children:[(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:ne,disabled:K===0&&Object.keys(I).length===0,children:`Clear All`}),m&&(0,p.jsx)(d.Tooltip,{title:`Hide ${s.toLowerCase()}`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,className:`cc-filter-rail__collapse`,icon:(0,p.jsx)(f.DoubleLeftOutlined,{}),"aria-label":`Hide ${s.toLowerCase()}`,"aria-expanded":!0,onClick:m})})]})]}),(0,p.jsxs)(`div`,{className:`cc-filter-rail__body`,children:[D&&E.length===0&&(0,p.jsxs)(`div`,{className:`cc-filter-rail__state`,children:[(0,p.jsx)(d.Spin,{size:`small`}),` `,(0,p.jsx)(`span`,{children:`Loading filters…`})]}),!D&&O&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`Filters could not be loaded`,description:String(O)}),!D&&!O&&E.length===0&&(0,p.jsx)(`div`,{className:`cc-filter-rail__state cc-filter-rail__state--muted`,children:`No filters are configured for this module. An administrator can add them under Configure → Filter.`}),E.map((e,t)=>{let n=re.has(e.key),i=I[e.key]!==void 0&&EP(e,I[e.key]),a=e.kind===nP.BOOLEAN?rP:e.options??A[e.key]??[],o=y&&typeof y==`object`?y[e.filterField]??y[e.key]??null:null,s=(0,p.jsx)(DP,{field:e,value:I[e.key],options:a,loading:j.has(e.key),labels:U[e.key]??{},optionLimit:g,counts:o,total:y?.total,onChange:(t,n)=>te(e.key,t,n),onCommit:()=>ee(),onSearch:t=>M(e.key,t,{...e.fetchMeta,scope:r,...P??{}})}),c=e.more&&!E.slice(0,t).some(e=>e.more);return e.bare?(0,p.jsx)(`div`,{className:`cc-filter-section cc-filter-section--bare`,children:s},e.key):(0,p.jsxs)(`section`,{className:`cc-filter-section${e.more?` cc-filter-section--more`:``}`,"data-first-more":c||void 0,children:[c&&(0,p.jsx)(`div`,{className:`cc-filter-rail__more-label`,children:b}),(0,p.jsxs)(`button`,{type:`button`,className:`cc-filter-section__toggle`,"aria-expanded":n,onClick:()=>ce(e.key),children:[(0,p.jsxs)(`span`,{className:`cc-filter-section__label`,children:[e.label,i&&(0,p.jsx)(`span`,{className:`cc-filter-section__dot`,"aria-label":`active`})]}),n?(0,p.jsx)(f.DownOutlined,{}):(0,p.jsx)(f.RightOutlined,{})]}),n&&(0,p.jsx)(`div`,{className:`cc-filter-section__content`,children:s})]},e.key)})]})]})}function EP(e,t){if(t==null)return!1;switch(e.kind){case nP.OPTIONS:case nP.BOOLEAN:return Array.isArray(t)&&t.length>0;case nP.DATE:return!!(t.from||t.to);case nP.NUMBER_RANGE:return t.min!=null||t.max!=null;case nP.TEXT:return typeof t==`string`&&t.trim()!==``;default:return!1}}function DP({field:e,value:t,options:n,loading:r,labels:i,optionLimit:a,counts:o,total:s,onChange:c,onCommit:l,onSearch:u}){if(e.kind===nP.DATE){let e=[t?.from?(0,m.default)(t.from):null,t?.to?(0,m.default)(t.to):null];return(0,p.jsx)(d.DatePicker.RangePicker,{size:`small`,allowEmpty:[!0,!0],value:e,onChange:e=>{let[t,n]=Array.isArray(e)?e:[null,null];c({from:t&&t.isValid()?t.format(`YYYY-MM-DD`):null,to:n&&n.isValid()?n.format(`YYYY-MM-DD`):null},{immediate:!0})},style:{width:`100%`}})}if(e.kind===nP.NUMBER_RANGE&&e.slider){let{min:n,max:r,step:i,suffix:a}=e.slider,o=t?.min??null,s=t?.max??null,l=(e,t)=>c({min:e===null||e<=n?null:e,max:t===null||t>=r?null:t}),u=e=>`${e}${a}`,f=e=>Number(String(e??``).replace(a,``).trim());return(0,p.jsxs)(`div`,{className:`cc-filter-range cc-filter-range--slider`,children:[(0,p.jsx)(d.Slider,{range:!0,min:n,max:r,step:i,value:[o??n,s??r],onChange:([e,t])=>l(e,t),tooltip:{formatter:u},"aria-label":e.label}),(0,p.jsxs)(`div`,{className:`cc-filter-range__boxes`,children:[(0,p.jsx)(d.InputNumber,{size:`small`,min:n,max:r,value:o??n,formatter:u,parser:f,onChange:e=>l(typeof e==`number`?e:null,s),"aria-label":`${e.label} minimum`}),(0,p.jsx)(d.InputNumber,{size:`small`,min:n,max:r,value:s??r,formatter:u,parser:f,onChange:e=>l(o,typeof e==`number`?e:null),"aria-label":`${e.label} maximum`})]})]})}if(e.kind===nP.NUMBER_RANGE){let n=t?.min??null,r=t?.max??null;return(0,p.jsxs)(`div`,{className:`cc-filter-range`,children:[(0,p.jsx)(d.InputNumber,{size:`small`,placeholder:`Min`,value:n,onChange:e=>c({min:typeof e==`number`?e:null,max:r}),"aria-label":`${e.label} minimum`}),(0,p.jsx)(`span`,{className:`cc-filter-range__sep`,children:`–`}),(0,p.jsx)(d.InputNumber,{size:`small`,placeholder:`Max`,value:r,onChange:e=>c({min:n,max:typeof e==`number`?e:null}),"aria-label":`${e.label} maximum`})]})}return e.kind===nP.TEXT?(0,p.jsx)(d.Input,{size:`small`,allowClear:!0,prefix:e.bare?(0,p.jsx)(f.SearchOutlined,{}):void 0,placeholder:e.placeholder||`Type keyword, press Enter`,value:typeof t==`string`?t:``,onChange:e=>{let t=e.target.value;t===``?c(``,{immediate:!0}):c(t,{deferred:!0})},onPressEnter:l,onBlur:l,"aria-label":e.label}):(0,p.jsx)(OP,{field:e,value:Array.isArray(t)?t:[],options:n,loading:r,labels:i,optionLimit:a,counts:o,total:s,searchable:e.kind===nP.OPTIONS&&!Array.isArray(e.options),onChange:c,onSearch:u})}function OP({field:e,value:t,options:n,loading:r,labels:i,optionLimit:a,counts:o=null,total:s,searchable:c,onChange:l,onSearch:m}){let[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),y=new Set(t.map(String)),b=new Set(n.map(e=>String(e.value))),x=t.filter(e=>!b.has(String(e))).map(e=>({value:e,label:i[String(e)]??String(e)})),S=[...x,...n],C=h?S:S.slice(0,Math.max(a,x.length)),w=S.length-C.length,T=e=>{let n=String(e);l(y.has(n)?t.filter(e=>String(e)!==n):[...t,e])};return(0,p.jsxs)(`div`,{className:`cc-filter-options`,children:[c&&(S.length>a||_)&&(0,p.jsx)(d.Input,{size:`small`,allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search ${String(e.label).toLowerCase()}…`,value:_,onChange:e=>{v(e.target.value),m(e.target.value)},className:`cc-filter-options__search`,"aria-label":`Search ${e.label}`}),r&&S.length===0?(0,p.jsx)(`div`,{className:`cc-filter-rail__state`,children:(0,p.jsx)(d.Spin,{size:`small`})}):S.length===0?(0,p.jsx)(`div`,{className:`cc-filter-rail__state cc-filter-rail__state--muted`,children:`No values`}):(0,p.jsxs)(`ul`,{className:`cc-filter-options__list`,children:[e.all&&(0,p.jsxs)(`li`,{className:`cc-filter-options__all`,children:[(0,p.jsx)(d.Checkbox,{checked:t.length===0,onChange:()=>l([]),children:(0,p.jsx)(`span`,{className:`cc-filter-options__label`,children:e.all})}),o&&Number.isFinite(Number(s))&&(0,p.jsx)(`span`,{className:`cc-filter-options__count`,children:Number(s)})]}),C.map(e=>(0,p.jsxs)(`li`,{children:[(0,p.jsx)(d.Checkbox,{checked:y.has(String(e.value)),onChange:()=>T(e.value),children:(0,p.jsx)(`span`,{className:`cc-filter-options__label`,title:String(e.label),children:String(e.label)})}),o&&(0,p.jsx)(`span`,{className:`cc-filter-options__count`,children:Number(o[String(e.value)]??0)})]},String(e.value)))]}),w>0&&(0,p.jsxs)(d.Button,{type:`link`,size:`small`,className:`cc-filter-options__more`,onClick:()=>g(!0),children:[`+ Show `,w,` more`]}),h&&S.length>a&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`cc-filter-options__more`,onClick:()=>g(!1),children:`Show less`})]})}var kP=[],AP=250;function jP(e){try{return typeof structuredClone==`function`?structuredClone(e):JSON.parse(JSON.stringify(e))}catch{return e}}function MP({filters:e=kP,search:t=``,refreshTick:r=0,baseFetch:i=n.Qt}={}){let a=`${vP(e)}|${String(t??``).trim()}`,[o]=(0,u.useState)(()=>({lastQuerySig:a,seq:0,inflight:0})),[s,c]=(0,u.useState)(null),[l,d]=(0,u.useState)(!1),[f,p]=(0,u.useState)(null);return{fetchData:(0,u.useMemo)(()=>NP({querySig:a,search:t,filters:e,baseFetch:i,store:o,setSnapshot:c,setLoading:d,setLastError:p}),[a,r,i]),snapshot:s,loading:l,error:f}}function NP({querySig:e,search:t,filters:r,baseFetch:i,store:a,setSnapshot:o,setLoading:s,setLastError:c}){let l=e,u=String(t??``).trim(),d=Array.isArray(r)?r:kP,f=new Map,p=async(e,t,r,l)=>{a.seq+=1;let f=a.seq;a.inflight+=1,s(!0);try{let s=await i(e,t,r,{...l,search:u||l.search||``,filters:[...Array.isArray(l.filters)?l.filters:kP,...d]});if(f===a.seq){let i=n.Ot(s,e);o({rows:i.rows,total:i.total,fields:i.fields,limit:t,offset:r,page:Math.floor(r/Math.max(1,t))+1}),c(null)}return s}catch(e){throw f===a.seq&&c(e),e}finally{a.inflight=Math.max(0,a.inflight-1),a.inflight===0&&s(!1)}};return async(e,t,n,r={})=>{let i=n;a.lastQuerySig!==l&&(i=0,a.lastQuerySig=l);let o=JSON.stringify([e,t,i,r.scope??``,r.sort??``,r.sortDir??``,r.search??``,vP(r.filters),r.queryParams??null]),s=f.get(o);if(s&&(s.settledAt==null||Date.now()-s.settledAt<AP))return jP(await s.promise);let c={settledAt:null};return c.promise=p(e,t,i,r).then(e=>(c.settledAt=Date.now(),e),e=>{throw f.delete(o),e}),f.set(o,c),jP(await c.promise)}}function PP(e){for(let t of e.keys()){let e=/^p(\d+)$/.exec(t);if(e)return Math.max(1,Number(e[1])||1)}return 1}function FP(e,t){let n=new URLSearchParams(e);return[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),t>1&&n.set(`p${t}`,``),n}function IP(e,t,{enabled:n=!0,includeNewTabLinks:r=!1}={}){let i=(0,u.useRef)(t),a=(0,u.useRef)(r);(0,u.useEffect)(()=>{i.current=t,a.current=r});let o=(0,u.useCallback)(e=>{if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=e.target?.closest?.(`a[href]`);if(!t||t.target===`_blank`&&!a.current)return;let n=t.closest(`tr[data-row-key], [data-record-id]`),r=n?.getAttribute(`data-row-key`)??n?.getAttribute(`data-record-id`);if(!r)return;let o;try{o=new URL(t.getAttribute(`href`),window.location.href)}catch{return}o.origin===window.location.origin&&decodeURIComponent(`${o.pathname}${o.search}`).includes(r)&&(e.preventDefault(),i.current?.(r))},[]);(0,u.useEffect)(()=>{let t=e.current;if(!(!t||!n))return t.addEventListener(`click`,o,!0),()=>t.removeEventListener(`click`,o,!0)},[e,n,o])}function LP({onOpenRecord:e,selectedRecordId:t,loading:r=!1,listProps:i={},component:a=n.rt,recordLinks:o=`inPlace`}){let s=(0,u.useRef)(null);return IP(s,e,{enabled:typeof e==`function`&&o!==`navigate`,includeNewTabLinks:!0}),(0,p.jsxs)(`div`,{ref:s,className:`cc-list-host`,"data-in-place-record-links":typeof e==`function`&&o!==`navigate`?``:void 0,children:[r&&(0,p.jsx)(`div`,{className:`cc-progress`,role:`progressbar`,"aria-label":`Loading`}),(0,p.jsx)(a,{...i,selectedRecordId:t,onRecordClick:typeof e==`function`?(t,n)=>e(String(n),t):void 0})]})}function RP({open:e=!1,onClose:t,width:n=380,ariaLabel:r=`Quick view`,placement:i=`right`,className:a=``,children:o}){let s=i===`left`;return(0,u.useEffect)(()=>{if(!e||typeof document>`u`)return;let n=e=>{e.key!==`Escape`||e.defaultPrevented||document.querySelector(`.ant-modal-wrap:not([style*="display: none"]) .ant-modal`)||t?.()};return document.addEventListener(`keydown`,n),()=>document.removeEventListener(`keydown`,n)},[e,t]),(0,p.jsx)(d.Drawer,{open:e,onClose:t,placement:s?`left`:`right`,size:n,mask:!1,keyboard:!1,closable:!1,rootClassName:`cc-quick-popover${s?` cc-quick-popover--left`:``} ${a}`.trim(),styles:{header:{display:`none`},body:{padding:0}},"aria-label":r,children:o})}function zP({open:e=!1,quickView:t=null,width:n=340,mode:r=`docked`,onClose:i,children:a,className:o=``}){return r===`overlay`?(0,p.jsxs)(`div`,{className:`cc-with-quick ${o}`.trim(),children:[(0,p.jsx)(`div`,{className:`cc-with-quick__list`,children:a}),(0,p.jsx)(RP,{open:e&&!!t,onClose:i,width:n,children:e?t:null})]}):(0,p.jsxs)(`div`,{className:`cc-with-quick${e?` cc-with-quick--open`:``} ${o}`.trim(),style:{"--cc-inline-quick-w":`${n}px`},children:[(0,p.jsx)(`div`,{className:`cc-with-quick__list`,children:a}),e&&t&&(0,p.jsx)(`div`,{className:`cc-with-quick__side`,children:t})]})}var BP=new Set([`file`,`files`,`upload`,`document`,`image`,`password`,`hidden`,`linkedrecordfile`]),VP=new Set([`date`,`datepicker`]),HP=140,UP=e=>e===!0||e===1||e===`1`||String(e).toLowerCase()===`true`;function WP(e){return e==null?!0:typeof e==`string`?e.trim()===``:Array.isArray(e)?e.length===0||e.every(WP):typeof e==`object`&&Object.keys(e).length===0}function GP(e){let t=String(e).replace(/<style[\s\S]*?<\/style>|<script[\s\S]*?<\/script>/gi,` `).replace(/<[^>]+>/g,` `).replace(/ /g,` `).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/\s+/g,` `).trim();return t.length>HP?`${t.slice(0,139)}…`:t}function KP(e,t){if(WP(e))return``;if(Array.isArray(e))return GP(e.map(e=>KP(e,t)).filter(Boolean).join(`, `));if(typeof e==`object`)return KP(e.label??e.value??e.name??e.title??e.displayValue??``,t);if(typeof e==`boolean`)return e?`Yes`:`No`;if(VP.has(String(t??``).toLowerCase())){let t=String(e);if(/^0001-01-01/.test(t))return``;let n=/^(\d{4}-\d{2}-\d{2})/.exec(t);if(n){let e=(0,m.default)(n[1]);if(e.isValid())return e.format(`DD MMM YYYY`)}}return GP(e)}function qP(e,t=10){let n=[],r=new Set;for(let i of Array.isArray(e)?e:[])if(!(!i||UP(i.hideGroup)||UP(i.hideGroupInDetail))&&!(UP(i.addRow)||Array.isArray(i.rows)))for(let e of Array.isArray(i.fields)?i.fields:[]){if(n.length>=t)return n;let i=e?.field;if(!i||r.has(i)||e.show===0||e.show===`0`||e.show===!1||BP.has(String(e.type??``).toLowerCase()))continue;let a=KP(e.displayValue??e.value,e.type);a&&(r.add(i),n.push({key:i,label:e.label??i,text:a}))}return n}var JP={location:(0,p.jsx)(f.EnvironmentOutlined,{}),experience:(0,p.jsx)(f.ClockCircleOutlined,{}),employment:(0,p.jsx)(f.LaptopOutlined,{})};function YP(e){let t=String(e??``).replace(/\([^)]*\)/g,` `).split(/\s+/).filter(e=>/^[\p{L}\p{N}]/u.test(e));return t.length?`${t[0].charAt(0)}${t.length>1?t.at(-1).charAt(0):``}`.toUpperCase():``}function XP({moduleName:e,id:t,configName:r,title:i=`Quick View`,onOpenFull:a,onClose:o,extra:s=null,footerExtra:c=null,maxFields:l=10,refreshKey:m=0,openFullLabel:h=`Open full view`,showAvatar:g=!1,headOpenFull:_=!0,footerOpenFullLabel:v=`View full details`,fieldsTitle:y=`Key details`}){let[b,x]=(0,u.useState)({key:``,groups:null,error:null}),[S,C]=(0,u.useState)(0),w=`${e}|${t}|${m}|${S}`;(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;return n.Jt({module:e,id:t,view:`detail`}).then(e=>{r||x({key:w,groups:Array.isArray(e)?e:[],error:null})}).catch(e=>{r||x({key:w,groups:null,error:e})}),()=>{r=!0}},[e,t,w]);let T=b.key!==w,E=b.groups,D=(0,u.useMemo)(()=>E&&E.length?Aa(r||e,E):null,[E,r,e]),O=(0,u.useMemo)(()=>qP(E,l),[E,l]),k=D?.status,A=[...D?.titleIds??[],...D?.ids??[]];return(0,p.jsxs)(`aside`,{className:`cc-quick`,"aria-label":i,"aria-busy":T||void 0,children:[(0,p.jsxs)(`header`,{className:`cc-quick__head`,children:[(0,p.jsx)(`span`,{className:`cc-quick__panel-title`,children:i}),(0,p.jsxs)(`span`,{className:`cc-quick__head-actions`,children:[a&&_&&(0,p.jsx)(d.Button,{type:`primary`,ghost:!0,size:`small`,icon:(0,p.jsx)(f.ExpandOutlined,{}),onClick:a,children:h}),o&&(0,p.jsx)(d.Tooltip,{title:`Close (Esc)`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close quick view`,onClick:o})})]})]}),(0,p.jsx)(`div`,{className:`cc-quick__body`,children:b.error&&!E?(0,p.jsx)(d.Alert,{type:b.error.status===403||b.error.status===404?`warning`:`error`,showIcon:!0,message:b.error.status===403||b.error.status===404?`This record is not available to you.`:`The record could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>C(e=>e+1),children:`Retry`})}):E?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`cc-quick__identity${g?` cc-quick__identity--avatar`:``}`,children:[g&&YP(D?.title)&&(0,p.jsx)(d.Avatar,{size:56,className:`cc-quick__avatar`,children:YP(D?.title)}),(0,p.jsxs)(`div`,{className:`cc-quick__identity-text`,children:[D?.eyebrow&&(0,p.jsx)(`div`,{className:`cc-quick__eyebrow`,children:D.eyebrow}),(0,p.jsxs)(`div`,{className:`cc-quick__title-row`,children:[(0,p.jsx)(`h3`,{className:`cc-quick__title`,children:D?.title??`-`}),k?.label&&(0,p.jsx)(d.Tag,{className:`cc-quick__status`,color:k.color,style:k.backgroundColor?{backgroundColor:k.backgroundColor,borderColor:k.backgroundColor,color:k.textColor}:void 0,children:k.label})]}),A.length>0&&(0,p.jsx)(`div`,{className:`cc-quick__ids`,children:A.map(e=>(0,p.jsxs)(`span`,{children:[(0,p.jsxs)(`span`,{className:`cc-quick__muted`,children:[e.label,`:`]}),` `,e.value]},e.label))}),(D?.meta??[]).length>0&&(0,p.jsx)(`ul`,{className:`cc-quick__meta`,children:D.meta.map((e,t)=>(0,p.jsxs)(`li`,{children:[JP[e.icon]?(0,p.jsx)(`span`,{className:`cc-quick__meta-icon`,"aria-hidden":!0,children:JP[e.icon]}):null,e.text??[e.label,e.value].filter(Boolean).join(`: `)]},t))})]})]}),s&&(0,p.jsx)(`div`,{className:`cc-quick__extra`,children:s}),O.length>0&&(0,p.jsxs)(`section`,{className:`cc-quick__section`,children:[(0,p.jsx)(`h4`,{className:`cc-quick__section-title`,children:y}),(0,p.jsx)(`dl`,{className:`cc-quick__fields`,children:O.map(e=>(0,p.jsxs)(`div`,{className:`cc-quick__field`,children:[(0,p.jsx)(`dt`,{children:e.label}),(0,p.jsx)(`dd`,{title:e.text,children:e.text})]},e.key))})]}),D?.timestamp?.value&&(0,p.jsxs)(`div`,{className:`cc-quick__muted cc-quick__stamp`,children:[D.timestamp.label,`: `,D.timestamp.value]})]}):(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:6}})}),(a||c)&&(0,p.jsxs)(`footer`,{className:`cc-quick__foot`,children:[c,a&&(0,p.jsx)(d.Button,{block:!0,size:`large`,onClick:a,children:v})]})]})}var ZP=Object.freeze([{field:`_id`,op:`none`,operator:`and`}]),QP=e=>String(e??``).trim();function $P(e){return(Array.isArray(e)?e:[]).filter(e=>e&&QP(e.field)).map(e=>({...e,operator:`and`}))}function eF(e,t){let n=QP(e?.field);if(!n)return null;if(e.via){let r=QP(e.via.module),i=(Array.isArray(e.via.fields)?e.via.fields:[e.via.field]).map(QP).filter(Boolean);if(!r||i.length===0)return null;let a=i.length===1?{field:i[0],op:`eq`,value:t,operator:`and`}:{field:`anyOf`,op:`anyOf`,operator:`and`,conditions:i.map(e=>({field:e,op:`eq`,value:t}))};return{field:n,op:`inFrom`,operator:`and`,source:{module:r,field:QP(e.via.select)||`_id`,filters:[a,...$P(e.via.filters)]}}}return QP(e.op).toLowerCase()===`in`?{field:n,op:`in`,values:[t],operator:`and`}:{field:n,op:`eq`,value:t,operator:`and`}}function tF(e,t){let n=QP(t);if(!e||!n)return ZP;let r;if(Array.isArray(e.anyOf)){let t=e.anyOf.map(e=>eF(e,n)).filter(Boolean);if(t.length===0)return ZP;r=t.length===1?t[0]:{field:`anyOf`,op:`anyOf`,operator:`and`,conditions:t.map(e=>{let t={...e};return delete t.operator,t})}}else if(r=eF(e,n),!r)return ZP;return[r,...$P(e.filters)]}function nF(e){return $P(e?.filters)}function rF(e,t){return JSON.stringify(tF(e,t))}function iF(e,t){if(!e||typeof e!=`object`)return e;let{subTabs:n,...r}=e;if(!t)return r;let i={...r};return typeof t.scope==`string`&&(i.scope=t.scope),t.queryParams&&typeof t.queryParams==`object`&&(i.queryParams={...r.queryParams??{},...t.queryParams}),Array.isArray(t.filters)&&t.filters.length&&(i.filters=[...Array.isArray(r.filters)?r.filters:[],...t.filters]),i}function aF(e){return(Array.isArray(e?.subTabs)?e.subTabs:[]).filter(e=>e&&String(e.key??``).trim())}var oF=new Map,sF=Object.freeze({field:`anyOf`,op:`anyOf`,operator:`and`,conditions:[]});function cF(e){return(Array.isArray(e)?e:[]).some(e=>String(e?.op??``).toLowerCase()===`anyof`)}function lF(e){let t=String(e??``);return oF.has(t)||oF.set(t,n.Qt(t,1,0,{scopeConditions:[sF]}).then(e=>{let r=n.Ot(e,t);return Number(r?.total)===0&&(r?.rows?.length??0)===0}).catch(()=>(oF.delete(t),!1))),oF.get(t)}async function uF(e,t,n){let r=tF(e,t);if(!cF(r)||await lF(n))return r;if(e?.fallback){let n=tF(e.fallback,t);if(!cF(n))return n}return null}var dF=80,fF=new Map,pF=`authToken`,mF=null;function hF(){try{return globalThis.localStorage?.getItem(pF)??``}catch{return``}}function gF(){let e=hF();mF!==null&&e!==mF&&fF.clear(),mF=e}function _F(e,t){for(fF.delete(e),fF.set(e,{at:Date.now(),promise:t});fF.size>dF;)fF.delete(fF.keys().next().value);return t.catch(()=>{fF.get(e)?.promise===t&&fF.delete(e)}),t}var vF=e=>e==null||e===``||Array.isArray(e)&&e.length===0||typeof e==`object`&&!Array.isArray(e)&&Object.keys(e).length===0;function yF(e){if(!e||typeof e!=`object`)return{};let t={};return Object.keys(e).sort().forEach(n=>{let r=e[n];vF(r)||(t[n]=r&&typeof r==`object`&&!Array.isArray(r)?yF(r):r)}),t}function bF(e,[t,n,r,i]=[]){return`${e}|${JSON.stringify([t,Number(n)||0,Number(r)||0,yF(i)])}`}function xF(e,{cacheMs:t=0,ns:n=``,windowMs:r=1500}={}){if(typeof e!=`function`||!(Number(t)>0))return e;let i=Date.now();return(...a)=>{gF();let o;try{o=bF(n,a)}catch{return e(...a)}let s=Date.now(),c=s-i<=r,l=fF.get(o);return c&&l&&s-l.at<t?l.promise:_F(o,Promise.resolve().then(()=>e(...a)))}}var SF=[`include`,`view`];function CF(e){if(!e||typeof e!=`object`)return null;let t=Object.fromEntries(Object.entries(e).filter(([e])=>!SF.includes(e)));return Object.keys(t).length?t:null}function wF(e,t,r=0,{cacheMs:i=0}={}){let a=JSON.stringify([t??``,(e??[]).map(e=>[e.key,e.module,e.relation??null,!!e.unscoped])]),[o,s]=(0,u.useState)({signature:``,counts:{}});(0,u.useEffect)(()=>{let[e,t]=JSON.parse(a);if(!t.length)return;let o=!1,c=xF(n.Qt,{cacheMs:i,ns:`count|${r}`,windowMs:1/0});return Promise.allSettled(t.map(async([,t,n,r])=>{let i=r?nF(n):await uF(n,e,t);if(!i)throw Error(`the server cannot apply this scope`);let a=typeof n?.scope==`string`?n.scope.trim():``,o=CF(n?.queryParams);return c(t,1,0,{scopeConditions:i,...a?{scope:a}:{},...o?{queryParams:o}:{}})})).then(e=>{if(o)return;let i={};e.forEach((e,r)=>{let a=t[r][0];if(e.status!==`fulfilled`){i[a]=null;return}let o=Number(n.Ot(e.value,t[r][1])?.total);i[a]=Number.isFinite(o)?o:null}),s({signature:`${a}|${r}`,counts:i})}),()=>{o=!0}},[a,r,i]);let c=o.signature===`${a}|${r}`;return{counts:o.counts,loading:!c}}var TF=[];function EF(e,t,n){if(!Array.isArray(e)||!t)return null;let r=(e,t)=>typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]:e?.id??e?._id??e?.key;return e.find((e,n)=>e&&typeof e==`object`&&String(r(e,n)??``)===String(t))??null}function DF({tabKey:e,active:t,module:r,accessModule:i=``,relation:a,parentId:o,title:s,showRail:c=!0,railMode:l=`docked`,railWidth:m=300,quickViewMode:g=`docked`,listComponent:_,listProps:v,renderQuickView:y,onOpenRecord:b,refreshKey:x=0,quickViewWidth:S=340,unscoped:C=!1,fetchData:w=null,recordLinks:T=`inPlace`,cacheMs:E=0,preload:D=!1,onPreloaded:O,openInPlace:k=!0,selectedParam:A=``,keepPageInUrl:j=!1}){let[M,N]=(0,h.useSearchParams)(),P=t??(!e||M.get(`tab`)===e),{canView:F}=n.Rt(i||r),[I,L]=(0,u.useState)(TF),[R,z]=(0,u.useState)(null),B=A?M.get(A)||null:R,V=(0,u.useCallback)(e=>{if(!A){z(e);return}N(t=>{let n=new URLSearchParams(t);return e?n.set(A,String(e)):n.delete(A),n},{replace:!0})},[A,N]),[H,U]=(0,u.useState)({id:``,row:null}),W=(0,u.useCallback)((e,t)=>U({id:String(e??``),row:t&&typeof t==`object`?t:null}),[]),[G,ee]=(0,u.useState)(!1),te=PP(M),[ne,re]=(0,u.useState)(!1),[ie,ae]=(0,u.useState)(j&&P);!P&&ie&&ae(!1),!P&&ne&&(re(!1),G&&ee(!1)),P&&!ne&&(te===1||ie)&&re(!0),(0,u.useEffect)(()=>{P&&!ne&&te>1&&N(e=>FP(e,1),{replace:!0})},[P,ne,te,N]);let oe=JSON.stringify(a??null),se=M.get(`sub`)??``,{relation:ce,subTabs:K,activeSubKey:le,subRelations:ue}=(0,u.useMemo)(()=>{let e=JSON.parse(oe),t=aF(e),n=t.find(e=>e.key===se)??t[0]??null;return{relation:iF(e,n),subTabs:t,activeSubKey:n?.key??``,subRelations:t.map(t=>({key:t.key,module:r,relation:iF(e,t),unscoped:C}))}},[oe,se,r,C]),{counts:de}=wF(P&&ne||D&&E>0?ue:TF,o,x,{cacheMs:E}),[fe,pe]=(0,u.useState)(null);fe!==null&&fe===le&&pe(null);let me=fe??le,he=(0,u.useCallback)(e=>{pe(e),z(null),N(t=>{let n=FP(t,1);return n.set(`sub`,e),A&&n.delete(A),n},{replace:!0})},[A,N]),q=C?`unscoped:${JSON.stringify(nF(ce))}`:rF(ce,o),ge=ce?.fallback?rF(ce.fallback,o):``,_e=(0,u.useMemo)(()=>C?nF(ce):tF(ce,o),[q]),ve=(0,u.useMemo)(()=>ge?tF(ce.fallback,o):null,[ge]),ye=cF(_e),[J,be]=(0,u.useState)({module:``,ok:null});(0,u.useEffect)(()=>{if(!ye||!P&&!D)return;let e=!1;return lF(r).then(t=>{e||be({module:r,ok:t})}),()=>{e=!0}},[ye,P,D,r]);let xe=J.module===r&&J.ok!==null,Se=ye&&xe&&J.ok===!1&&ve&&!cF(ve),Ce=!ye||xe&&(J.ok===!0||!!Se),we=ye&&xe&&J.ok===!1&&!Se,Te=Se?ve:_e,Ee=typeof ce?.scope==`string`?ce.scope.trim():``,De=ce?.queryParams&&typeof ce.queryParams==`object`?JSON.stringify(Object.fromEntries(Object.entries(ce.queryParams).map(([e,t])=>[e,typeof t==`string`&&t.includes(`{id}`)?t.split(`{id}`).join(String(o??``)):t]))):``,Oe=Array.isArray(ce?.filterFields)?JSON.stringify(ce.filterFields):``,ke=(0,u.useMemo)(()=>Oe?JSON.parse(Oe):null,[Oe]),[Ae,je]=(0,u.useState)(null),Me=typeof ce?.queryParams?.view==`string`?ce.queryParams.view.trim():``,Ne=(0,u.useMemo)(()=>{let e=De?JSON.parse(De):null,t=typeof w==`function`?w:n.Qt;return(n,r,i,a={})=>t(n,r,i,{...a,...Ee?{scope:Ee}:{},...e?{queryParams:{...a.queryParams??{},...e}}:{},scopeConditions:Te})},[Te,Ee,De,w]),Pe=`${Ee}|${De}|${JSON.stringify(Te??null)}`,Fe=(0,u.useMemo)(()=>xF(Ne,{cacheMs:E,ns:`${e??``}|${r}|${C?``:o??``}|${x}|${Pe}`}),[Ne,E,e,r,C,o,x,Pe]),Ie=(0,u.useMemo)(()=>ke?async(...e)=>{let t=await Fe(...e),n=t?.data?.facets??t?.facets;return n&&typeof n==`object`&&je(n),t}:Fe,[Fe,ke]),Le=(0,u.useMemo)(()=>mP(I),[I]),{fetchData:Re,loading:ze}=MP({filters:ke?Le.filters:I,...ke&&Le.search?{search:Le.search}:{},refreshTick:x,baseFetch:Ie}),Be=Number(v?.initialPageSize)>0?Number(v.initialPageSize):10,Ve=we||!F;(0,u.useEffect)(()=>{if(!D)return;if(!(E>0)||Ve){O?.(e);return}if(!Ce)return;let t=!1;return Promise.resolve().then(()=>Fe(r,Be,0,{})).catch(()=>null).then(()=>{t||O?.(e)}),()=>{t=!0}},[D,E,Ve,Ce,Fe,r,Be,O,e]);let He=c&&l===`popover`,Ue=_P(I),We=v?.toolbarExtra??null,Ge=(0,u.useMemo)(()=>He?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Tooltip,{title:Ue?`Filters (${Ue} active)`:`Filters`,children:(0,p.jsx)(d.Badge,{count:Ue,size:`small`,offset:[-4,4],children:(0,p.jsx)(d.Button,{className:`rh-filter-btn${G||Ue?` is-active`:``}`,icon:(0,p.jsx)(f.FilterOutlined,{}),"aria-label":G?`Hide filters`:`Show filters`,"aria-expanded":G,"aria-haspopup":`dialog`,onClick:()=>ee(e=>!e)})})}),We]}):We,[He,Ue,G,We]),[Ke,qe]=(0,u.useState)(null),Je=v?.responseMapper,Ye=v?.rowKey,Xe=!!A,Ze=(0,u.useRef)(B);(0,u.useEffect)(()=>{Ze.current=B},[B]);let Qe=(0,u.useMemo)(()=>{if(!Xe)return Je;let e=typeof Je==`function`?Je:n.Ot;return(t,n)=>{let r=e(t,n);if(Array.isArray(r?.rows)){let e=r.rows;qe(e),U(t=>{let n=Ze.current;if(!n||t.id===String(n))return t;let r=EF(e,n,Ye);return r?{id:String(n),row:r}:t})}return r}},[Xe,Je,Ye]),$e=(0,u.useMemo)(()=>B?H.id===String(B)?H.row:EF(Ke,B,Ye):null,[B,H,Ke,Ye]),et=(0,u.useMemo)(()=>({moduleName:r,fetchData:Re,showAdd:!1,showFilterButton:!c,showViewToggle:!1,autoCardForExternalRows:!1,showSummaryButton:!1,deferFieldConfig:!0,hideFilterButton:c,...v??{},toolbarExtra:Ge,dataKey:`${e??``}|${Pe}`,dataPending:fe!==null,redirectOnViewDenied:!1,...Xe?{responseMapper:Qe}:{}}),[r,Re,c,v,Ge,e,Pe,fe,Xe,Qe]),tt=(0,u.useCallback)(()=>V(null),[V]),nt=(0,u.useCallback)(()=>ee(!1),[]),rt=(0,u.useCallback)(()=>{B&&b?.(r,B,$e)},[B,$e,b,r]);if(D)return null;if(!P||!ne)return(0,p.jsx)(`div`,{className:`rh-related rh-related--idle`});if(we)return(0,p.jsx)(`div`,{className:`rh-related rh-related--no-rail`,"data-module":r,children:(0,p.jsxs)(`div`,{className:`rh-related__denied`,role:`alert`,children:[s??r,` cannot be listed: the running server does not support this tab's filter ("anyOf"). Update the server.`]})});if(!Ce)return(0,p.jsx)(`div`,{className:`rh-related rh-related--idle`});if(!F)return(0,p.jsx)(`div`,{className:`rh-related rh-related--no-rail`,"data-module":r,children:(0,p.jsxs)(`div`,{className:`rh-related__denied`,role:`status`,children:[`You do not have permission to view `,s??r,`. An administrator can grant view access to this module in Admin (menu permissions for your role).`]})});let it=B?y?.({module:r,id:B,record:$e,onClose:tt,onOpenFull:b?rt:void 0})??(0,p.jsx)(XP,{moduleName:r,id:B,onClose:tt,onOpenFull:b?rt:void 0,refreshKey:x},B):null;return(0,p.jsxs)(`div`,{className:`rh-related${!c||He?` rh-related--no-rail`:``}`,"data-module":r,children:[c&&!He&&(0,p.jsx)(`aside`,{className:`rh-related__rail`,children:(0,p.jsx)(TP,{moduleName:r,view:Me,scopeConditions:Te,value:I,onChange:L,...ke?{fields:ke,optionCounts:Ae}:{}})}),He&&(0,p.jsx)(RP,{open:G,onClose:nt,placement:`left`,width:m,ariaLabel:`Filters`,className:`rh-filter-popover`,children:(0,p.jsx)(TP,{moduleName:r,view:Me,scopeConditions:Te,value:I,onChange:L,onCollapse:nt,...ke?{fields:ke,optionCounts:Ae}:{}})}),(0,p.jsxs)(`section`,{className:`rh-related__main`,"aria-label":s??r,children:[K.length>0&&(0,p.jsx)(d.Segmented,{className:`rh-subtabs`,"aria-label":`${s??r} sections`,value:me,onChange:e=>{e!==me&&he(String(e))},style:{marginBottom:12},options:K.map(e=>{let t=de[e.key];return{value:e.key,label:(0,p.jsxs)(d.Flex,{gap:6,align:`center`,children:[(0,p.jsx)(`span`,{children:e.label??e.key}),typeof t==`number`&&(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:t.toLocaleString()})]})}})}),(0,p.jsx)(zP,{open:!!B,quickView:it,width:S,mode:g===`overlay`?`overlay`:`docked`,onClose:tt,children:(0,p.jsx)(LP,{recordLinks:T,component:_,listProps:et,loading:ze,selectedRecordId:B||void 0,onOpenRecord:k?(e,t)=>{V(String(e)),W(e,t)}:void 0})})]})]})}var OF=1,kF=50,AF=1e3,jF=3e4,MF=15e3,NF=45e3,PF=75e3,FF=300,IF=4401,LF=Object.freeze({IDLE:`idle`,CONNECTING:`connecting`,OPEN:`open`,RECONNECTING:`reconnecting`,UNAUTHORIZED:`unauthorized`,DISABLED:`disabled`,CLOSED:`closed`});function RF(e){let t=String(e??``).trim().toLowerCase();return t.length>3&&t.endsWith(`s`)&&!t.endsWith(`ss`)&&(t=t.slice(0,-1)),t}function zF(e){let t=RF(e);return t?`module:${t}`:``}function BF(e,t){let n=RF(e),r=String(t??``).trim();return n&&r?`record:${n}:${r}`:``}function VF(e){let t=String(e??``).trim();if(t===`tenant`)return t;if(t.startsWith(`module:`))return zF(t.slice(7));if(t.startsWith(`record:`)){let e=t.slice(7),n=e.indexOf(`:`);return n<=0?``:BF(e.slice(0,n),e.slice(n+1))}return``}function HF(e){let t=[`tenant`],n=RF(e?.module);return n&&(t.push(`module:${n}`),e?.id&&t.push(`record:${n}:${e.id}`)),t}function UF(e,t){let n=String(e??``).replace(/\/+$/,``),r;return r=/^https?:\/\//i.test(n)?n.replace(/^http/i,`ws`):typeof window<`u`&&window.location?`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}${n.startsWith(`/`)?``:`/`}${n}`:n,`${r}/realtime/ws?ticket=${encodeURIComponent(t)}`}function WF(e={}){let{getBaseUrl:t,getToken:n,fetchImpl:r=typeof fetch==`function`?(...e)=>fetch(...e):null,WebSocketImpl:i=typeof WebSocket==`function`?WebSocket:null,setTimeoutImpl:a=(e,t)=>setTimeout(e,t),clearTimeoutImpl:o=e=>clearTimeout(e),setIntervalImpl:s=(e,t)=>setInterval(e,t),clearIntervalImpl:c=e=>clearInterval(e),now:l=()=>Date.now(),random:u=Math.random}=e,d=new Map,f=new Set,p=new Set,m=new Set,h=[],g=i&&r?LF.IDLE:LF.DISABLED,_=null,v=0,y=0,b=null,x=null,S=0,C=0,w=!1,T=!1;function E(e){g!==e&&(g=e,f.forEach(t=>{try{t(e)}catch{}}))}function D(e){if(!_||_.readyState!==1)return!1;try{return _.send(JSON.stringify({v:OF,...e})),!0}catch{return!1}}function O(e,t){for(let n=0;n<t.length;n+=kF)D({op:e,topics:t.slice(n,n+kF)})}function k(e){return!e||!m.has(e)&&(m.add(e),h.push(e),h.length>FF&&m.delete(h.shift()),!0)}function A(e){if(!k(e.eventId))return;let t=new Set;HF(e).forEach(n=>{let r=d.get(n);r&&r.forEach(n=>{if(!t.has(n)){t.add(n);try{n(e)}catch(e){console.error(`[realtime] subscriber failed`,e)}}})})}function j(e){S=l();let t;try{t=JSON.parse(e)}catch{return}if(!(!t||typeof t!=`object`))switch(t.type){case`hello`:y=0,E(LF.OPEN),O(`subscribe`,[...d.keys()]),w&&p.forEach(e=>{try{e()}catch{}}),w=!0;return;case`ack`:case`pong`:case`error`:return;default:t.eventId&&t.type&&A(t)}}function M(){b!=null&&(o(b),b=null),x!=null&&(c(x),x=null)}function N(){let e=_;if(_=null,e){e.onopen=null,e.onmessage=null,e.onclose=null,e.onerror=null;try{e.close(1e3,`client closing`)}catch{}}}function P({immediate:e=!1}={}){if(T||d.size===0||g===LF.DISABLED||b!=null)return;let t=Math.min(jF,AF*2**Math.min(y,10)),n=Math.round(t*(.7+u()*.6)),r=e?0:n;y+=1,g!==LF.UNAUTHORIZED&&E(LF.RECONNECTING),b=a(()=>{b=null,I()},r)}async function F(){let e=await n?.();if(!e){let e=Error(`not signed in`);throw e.status=401,e}let i=await r(`${String(t())}/realtime/ticket`,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok){let e=Error(`ticket request failed: ${i.status}`);throw e.status=i.status,e}let a=await i.json(),o=a?.data?.ticket??a?.ticket;if(!o)throw Error(`ticket missing from response`);return o}async function I(){if(T||g===LF.DISABLED||d.size===0||_&&(_.readyState===0||_.readyState===1))return;let e=++v;E(w?LF.RECONNECTING:LF.CONNECTING);let n;try{n=await F()}catch(t){if(e!==v||T)return;(t?.status===401||t?.status===403)&&E(LF.UNAUTHORIZED),P();return}if(e!==v||T||d.size===0)return;let r;try{r=new i(UF(t(),n))}catch{P();return}_=r,S=l(),r.onmessage=e=>j(e.data),r.onerror=()=>{},r.onclose=e=>{_===r&&(_=null,x!=null&&(c(x),x=null),!T&&P({immediate:e?.code===IF&&y<2}))},x!=null&&c(x),x=s(()=>{if(_!==r)return;let e=l()-S;if(e>PF){N(),P({immediate:!0});return}e>NF&&l()-C>NF&&(C=l(),D({op:`ping`}))},MF)}function L(){T||g===LF.DISABLED||_||b!=null||I()}return{subscribe(e,t){let n=VF(e);if(!n||typeof t!=`function`)return()=>{};let r=d.get(n),i=!r;return r||(r=new Set,d.set(n,r)),r.add(t),i&&D({op:`subscribe`,topics:[n]}),L(),()=>{let e=d.get(n);e&&(e.delete(t),e.size===0&&(d.delete(n),D({op:`unsubscribe`,topics:[n]})),d.size===0&&(v+=1,M(),N(),g!==LF.DISABLED&&E(LF.IDLE)))}},onReconnect(e){return p.add(e),()=>p.delete(e)},onStatus(e){return f.add(e),()=>f.delete(e)},getStatus:()=>g,nudge(){T||g===LF.DISABLED||d.size===0||_&&_.readyState===1||(b!=null&&(o(b),b=null),y=0,I())},close(){T=!0,M(),N(),d.clear(),E(LF.CLOSED)},_debug:()=>({topics:[...d.keys()],attempts:y,hasSocket:!!_})}}var GF=(0,u.createContext)(null),KF=null,qF=0,JF=null,YF=1500;function XF(e){return KF||=WF({getBaseUrl:()=>String(t.S),getToken:()=>t.a().catch(()=>null),...e}),KF}function ZF(){qF+=1,JF!=null&&(clearTimeout(JF),JF=null)}function QF(){qF=Math.max(0,qF-1),!(qF>0||JF!=null)&&(JF=setTimeout(()=>{JF=null,qF===0&&KF&&(KF.close(),KF=null)},YF))}var $F=[],eI=2e3,tI=()=>()=>{},nI=()=>LF.DISABLED;function rI(){return(0,u.useContext)(GF)}function iI(){let e=(0,u.useContext)(GF);return(0,u.useSyncExternalStore)(e?e.onStatus:tI,e?e.getStatus:nI,nI)}function aI(e){return[...new Set((Array.isArray(e)?e:[e]).map(VF).filter(Boolean))].sort().join(`|`)}function oI(e,t,{enabled:n=!0}={}){let r=(0,u.useContext)(GF),i=(0,u.useRef)(t);(0,u.useEffect)(()=>{i.current=t});let a=aI(e??$F);(0,u.useEffect)(()=>{if(!r||!n||!a)return;let e=a.split(`|`).map(e=>r.subscribe(e,e=>i.current?.(e)));return()=>e.forEach(e=>e())},[r,n,a])}function sI(e,{enabled:t=!0}={}){let n=(0,u.useContext)(GF),r=(0,u.useRef)(e);(0,u.useEffect)(()=>{r.current=e}),(0,u.useEffect)(()=>{if(!(!n||!t))return n.onReconnect(()=>r.current?.())},[n,t])}function cI({topics:e=$F,enabled:n=!0,debounceMs:r=400,filter:i}={}){let[a,s]=(0,u.useState)({tick:0,lastEvent:null}),c=(0,u.useRef)(null),l=(0,u.useRef)(null),d=(0,u.useRef)(0),f=(0,u.useRef)(i);(0,u.useEffect)(()=>{f.current=i});let p=(0,u.useCallback)(()=>{c.current=null;let e=l.current;e&&(typeof document<`u`&&document.visibilityState===`hidden`||(l.current=null,t.p(),o.r(),s(t=>({tick:t.tick+1,lastEvent:e.event??t.lastEvent}))))},[]),m=(0,u.useCallback)(e=>{l.current||(d.current=Date.now()),l.current=e,c.current!=null&&clearTimeout(c.current);let t=Date.now()-d.current;c.current=setTimeout(p,Math.max(0,Math.min(r,eI-t)))},[r,p]);return oI(e,e=>{typeof f.current==`function`&&!f.current(e)||m({event:e})},{enabled:n}),sI(()=>m({reconnect:!0}),{enabled:n}),(0,u.useEffect)(()=>{if(!n||typeof document>`u`)return;let e=()=>{document.visibilityState===`visible`&&l.current&&p()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[n,p]),(0,u.useEffect)(()=>()=>{c.current!=null&&clearTimeout(c.current)},[]),(0,u.useMemo)(()=>({tick:a.tick,lastEvent:a.lastEvent}),[a])}var lI={aim:f.AimOutlined,bank:f.BankOutlined,book:f.BookOutlined,calendar:f.CalendarOutlined,check:f.CheckCircleOutlined,clock:f.ClockCircleOutlined,close:f.CloseOutlined,delete:f.DeleteOutlined,download:f.DownloadOutlined,edit:f.EditOutlined,location:f.EnvironmentOutlined,export:f.ExportOutlined,view:f.EyeOutlined,file:f.FileTextOutlined,filter:f.FilterOutlined,id:f.IdcardOutlined,link:f.LinkOutlined,mail:f.MailOutlined,sms:f.MessageOutlined,message:f.MessageOutlined,more:f.MoreOutlined,phone:f.PhoneOutlined,call:f.PhoneOutlined,plus:f.PlusOutlined,refresh:f.ReloadOutlined,send:f.SendOutlined,team:f.TeamOutlined,user:f.UserOutlined,whatsapp:f.WhatsAppOutlined};function uI(e){if(!e)return;if(typeof e!=`string`)return e;let t=lI[e.trim().toLowerCase()];return t?(0,u.createElement)(t):void 0}var $=e=>e!=null&&String(e).trim()!==``;function dI(e){return Array.isArray(e)?e:e==null?[]:[e]}function fI(e,t){if(!(!e||typeof e!=`object`||!$(t)))return Object.prototype.hasOwnProperty.call(e,t)?e[t]:String(t).split(`.`).reduce((e,t)=>e?.[t],e)}function pI(e,t,n){if(typeof e==`function`)try{return e(t,n)}catch(e){console.warn(`[COMBAINED pages] config value failed:`,e);return}if(typeof e==`string`){let n=fI(t?.record,e);return n===void 0?fI(t,e):n}return e}function mI(e,t,n){return typeof e==`function`?pI(e,t,n):e}function hI(e){return e==null?``:Array.isArray(e)?e.map(hI).filter($).join(`, `):String(typeof e==`object`?e.label??e.value??e.name??e.title??``:e)}function gI(e,t,n){if(!e)return!1;let r=typeof e.permission==`string`?e.permission.trim().toLowerCase():``;return r&&n?.can&&n.can[r]===!1||e.adminAction!==void 0&&!Bc(e.adminAction,n?.module)?!1:e.visible===void 0||!!pI(e.visible,t,n)}function _I(e,t,n){return dI(e).filter(e=>e&&$(e.key)&&gI(e,t,n)).map(e=>{let r=!!pI(e.disabled,t,n),i=e.menu?_I(e.menu,t,n):null;return{key:String(e.key),label:hI(mI(e.label,t,n)),icon:uI(e.icon),type:e.type,className:typeof e.className==`string`?e.className:void 0,danger:!!e.danger,disabled:r,tooltip:hI(mI(e.tooltip,t,n)),note:hI(mI(e.note,t,n)),onClick:r||typeof e.onClick!=`function`?void 0:()=>e.onClick(t,n),menu:i&&i.length?i:null}})}function vI(e){let t=[`popover`,`docked`,`none`].includes(e?.filter)?e.filter:`popover`,n=[`popover`,`docked`].includes(e?.quickView)?e.quickView:`popover`;return{filter:t,quickView:n,railMode:t===`docked`?`docked`:`popover`,showRail:t!==`none`,quickViewMode:n===`docked`?`docked`:`overlay`,quickViewWidth:Number(e?.quickViewWidth)>0?Number(e.quickViewWidth):380,filterWidth:Number(e?.filterWidth)>0?Number(e.filterWidth):300}}function yI(e,t){return!e||typeof e!=`object`?null:e[t]&&typeof e[t]==`object`?e[t]:Array.isArray(e.sections)||e.identity?e:null}var bI=e=>e&&$(e.key)&&$(e.label);function xI(e){let t=[];return dI(e).forEach(e=>{if(!bI(e)){console.warn(`[DetailViewPage] tab skipped — it needs a key and a label:`,e);return}if(e.component||e.type===`overview`||e.type===`details`){t.push(e);return}if($(e.module)&&e.relation&&typeof e.relation==`object`){let{list:n,...r}=e;t.push(n?{...r,listComponent:n}:r);return}console.warn(`[DetailViewPage] tab "${e.key}" skipped — it needs { module, relation }, a component or type 'overview'.`)}),t}function SI(e){let t=String(e??``).split(/\s+/).filter(Boolean);return t.length?`${t[0][0]}${t.length>1?t.at(-1)[0]:``}`.toUpperCase():`?`}function CI(e){let t=[e?.value,e?.field,e?.fieldName,e?.name,e?.label].find(e=>e!=null&&String(e).trim()!==``);return t===void 0?``:String(t)}function wI(e,t=n.Ot){if(!e||typeof e!=`object`)return null;let r=dI(e.show).map(String).filter($),i=e.fields&&typeof e.fields==`object`?e.fields:{},a=dI(e.add).filter(e=>e&&$(e.key));return!r.length&&!Object.keys(i).length&&!a.length?null:{responseMapper:(e,n)=>{let o=t(e,n)??{},s=dI(o.rows).map(e=>{if(!a.length||!e||typeof e!=`object`)return e;let t={...e};return a.forEach(n=>{t[n.key]=typeof n.value==`function`?pI(n.value,e,{row:e}):fI(e,n.value??n.key)}),t}),c=a.map(e=>{let{value:t,after:n,...r}=e;return{...r,field:e.key,label:e.label??e.key,isVisible:!0,isVirtual:!0}}),l=e=>{let t=CI(e);return i[t]?{...e,...i[t]}:e},u;if(r.length){let e=new Map([...dI(o.fields),...c].map(e=>[CI(e),e]));u=r.map(t=>e.get(t)??(i[t]?{field:t,label:i[t].label??t}:null)).filter(Boolean).map((e,t)=>({...l(e),isVisible:!0,order:t}))}else u=dI(o.fields).map(l),c.forEach((e,t)=>{let n=$(a[t].after)?u.findIndex(e=>CI(e)===a[t].after):-1;n>=0?u.splice(n+1,0,e):u.push(e)}),u.some(e=>e.order!==void 0&&e.order!==null&&e.order!==``)&&(u=u.map((e,t)=>({...e,order:t})));return{...o,rows:s,fields:u}},...r.length?{defaultVisibleColumnCount:r.length}:{}}}function TI(e){let t=e=>String(e??``).trim().toLowerCase(),n=dI(e?.include).map(t).filter(Boolean),r=dI(e?.exclude).map(t).filter(Boolean);return!n.length&&!r.length?null:e=>{let i=[e?.name,e?.groupName,e?.label,e?.title].map(t).filter(Boolean);return!(n.length&&!i.some(e=>n.includes(e))||r.length&&i.some(e=>r.includes(e)))}}function EI(e){return!e||e.access===!1?``:e.access&&typeof e.access==`object`&&$(e.access.module)?String(e.access.module):$(e.module)&&e.relation&&typeof e.relation==`object`?String(e.module):``}function DI(e,t){return dI(e).filter(e=>{let n=EI(e);return!n||t(n)!==!1})}function OI(e){return!e||e.access===!1?``:e.access&&typeof e.access==`object`&&$(e.access.module)?String(e.access.module):$(e.module)?String(e.module):``}function kI(e,t,n){let r=new Set(dI(t).map(e=>e?.key));return dI(e).filter(e=>{let t=OI(e);return!t||n(t)!==!1}).map(e=>e?.tab&&!r.has(e.tab)?{...e,tab:void 0}:e)}var AI=4e3;function jI(e){if(typeof e?.clickFeedback==`boolean`)return e.clickFeedback;try{return window.__CORE_THEME_CONFIG__?.quickViewClickFeedback===!0}catch{return!1}}function MI(e){let t=(0,h.useLocation)(),n=`${t.key}|${t.pathname}|${t.search}`,[r,i]=(0,u.useState)(null),a=(0,u.useRef)(null);(0,u.useEffect)(()=>()=>clearTimeout(a.current),[]);let o=r&&r.at===n?r.key:null,s=()=>{clearTimeout(a.current),i(null)};return{wrap:(t,r)=>!e||typeof r!=`function`?r:(...e)=>{if(o)return;i({key:t,at:n}),clearTimeout(a.current),a.current=setTimeout(s,AI);let c;try{c=r(...e)}catch(e){throw s(),e}return c&&typeof c.then==`function`&&Promise.resolve(c).finally(s),c},busyKey:o,isBusy:e=>o===e,anyBusy:!!o,done:s}}var NI=n.kt.quickView;function PI(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function FI(e,{record:t,scope:r,module:i}){return!(!e||!e.key||e.showInQuickView!==!0||e.actionType===`group`||e.children?.length||!n.mn(e.permission,i)||e.permissionKey&&!n.pn(PI(t,`actionPermission.${e.permissionKey}`))||e.allowedTabs?.length&&r&&!e.allowedTabs.some(e=>String(e).toLowerCase()===String(r).toLowerCase()))}function II(e,{record:t,rules:r,scope:i}){let a=n.At(e,t,i),o=n.Nt(e.key,t,r,i,NI);return{key:String(e.key),label:a?a.label:e.label||String(e.key),action:e,disabled:!!(a||o),reason:a?a.label:o||``}}function LI({actions:e,actionRules:t,record:r,scope:i,module:a}={}){let o=Array.isArray(t)?t:[],s={record:r,scope:i,module:a,rules:o},c=(Array.isArray(e)?e:[]).filter(e=>FI(e,s)),l=[],u=n.Ft(r,o,i,NI),d=null;if(u){let t=c.find(e=>String(e.key)===u);t?d=II(t,s):(Array.isArray(e)?e:[]).some(e=>String(e?.key)===u)||l.push(`Quick View rule names primary action "${u}", which is not in the action library.`)}let f=c.filter(e=>!n.Mt(e.key,r,o,i,NI)).map(e=>({...II(e,s),selected:!!(d&&String(e.key)===d.key)}));return{primary:d,menu:f,warnings:l}}function RI({prompt:e,title:t,onSubmit:n,onCancel:r,busy:i=!1,danger:a=!1}){let o=qb(e)??qb({label:`Value`,required:!0}),[s,c]=(0,u.useState)(``),[l,f]=(0,u.useState)(!1),m=Yb(o,s),h=!i&&!m&&(!o.required||s.trim()!==``),g=()=>{f(!0),h&&n?.(s.trim())},_=e=>{if(e.key===`Escape`){e.stopPropagation(),r?.();return}e.key===`Enter`&&(!o.multiline||e.ctrlKey||e.metaKey)&&(e.preventDefault(),g())},v=`cc-action-input-${o.key}`,y=o.multiline?d.Input.TextArea:d.Input;return(0,p.jsxs)(`div`,{className:a?`cc-action-input cc-action-input--danger`:`cc-action-input`,"data-ct-part":`qv-action-input`,role:`group`,"aria-label":t||void 0,style:{padding:12,marginBottom:10,border:`1px solid ${a?`var(--ant-color-error-border, #ffccc7)`:`var(--ant-color-border, #d9d9d9)`}`,borderRadius:8},children:[t?(0,p.jsx)(d.Typography.Text,{strong:!0,type:a?`danger`:void 0,className:`cc-action-input__title`,style:{display:`block`,marginBottom:6},children:t}):null,(0,p.jsxs)(`label`,{htmlFor:v,style:{display:`block`,marginBottom:4},children:[o.label,o.required?(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{color:`var(--ant-color-error, #ff4d4f)`},children:` *`}):null]}),(0,p.jsx)(y,{id:v,autoFocus:!0,value:s,placeholder:o.placeholder||void 0,maxLength:o.maxLength||void 0,showCount:!!o.maxLength,autoSize:o.multiline?{minRows:2,maxRows:5}:void 0,disabled:i,"aria-required":o.required,"aria-invalid":!!(l&&m),onChange:e=>c(e.target.value),onBlur:()=>f(!0),onKeyDown:_}),l&&m?(0,p.jsx)(d.Typography.Text,{type:`danger`,className:`cc-action-input__error`,role:`alert`,style:{display:`block`,marginTop:4,fontSize:12},children:m}):null,(0,p.jsxs)(d.Flex,{gap:8,justify:`flex-end`,className:`cc-action-input__actions`,style:{marginTop:10},children:[(0,p.jsx)(d.Button,{onClick:()=>r?.(),disabled:i,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,danger:a,onClick:g,disabled:!h,loading:i,children:o.submitLabel})]})]})}function zI({prompt:e,action:t,record:r,tab:i,onSubmit:a,onCancel:o,busy:s=!1}){let c=qb(e,t)??qb({label:`Value`,required:!0},t),[l,f]=(0,u.useState)(void 0),[m,h]=(0,u.useState)(``),[g,_]=(0,u.useState)(!1),v=Yb(c,l),y=!s&&!v,b=e=>n.ht(e,r,{action:t,tab:i}),x=b(c.title)||String(t?.label??``).trim()||c.label,S=!!t?.danger;return(0,p.jsxs)(d.Modal,{open:!0,centered:!0,width:480,className:`cc-action-input-modal cc-action-confirm--hero`,maskClosable:!1,onCancel:()=>o?.(),title:null,footer:[(0,p.jsx)(d.Button,{className:`cc-action-input-modal__cancel`,onClick:()=>o?.(),disabled:s,children:c.cancelLabel},`cancel`),(0,p.jsx)(d.Button,{type:`primary`,danger:S,loading:s,disabled:s,onClick:()=>{_(!0),y&&a?.(String(l??``).trim(),m.trim())},icon:c.icon?n.vt(c.icon,`cc-confirm-hero__btn-icon`):void 0,children:c.submitLabel},`ok`)],children:[(0,p.jsxs)(`div`,{className:`cc-confirm-hero__head`,children:[c.icon?n.vt(c.icon):null,(0,p.jsx)(d.Typography.Title,{level:4,className:`cc-confirm-hero__title`,children:x})]}),n._t(b(c.message),b(c.note)),(0,p.jsxs)(d.Form,{layout:`vertical`,className:`cc-action-input-modal__form`,requiredMark:!0,children:[(0,p.jsx)(d.Form.Item,{label:c.label,required:c.required,validateStatus:g&&v?`error`:void 0,help:g&&v?v:void 0,children:c.options.length?(0,p.jsx)(d.Select,{value:l,placeholder:c.placeholder||`Select`,options:c.options.map(e=>({value:e,label:e})),onChange:e=>{f(e),_(!0)},disabled:s,classNames:{popup:{root:`cc-action-input-modal__options`}},placement:`bottomLeft`,listHeight:320}):(0,p.jsx)(d.Input.TextArea,{value:l,placeholder:c.placeholder||void 0,maxLength:c.maxLength||void 0,autoSize:{minRows:2,maxRows:5},disabled:s,onChange:e=>f(e.target.value),onBlur:()=>_(!0)})}),c.comment?(0,p.jsx)(d.Form.Item,{label:c.comment.label,children:(0,p.jsx)(d.Input.TextArea,{value:m,placeholder:c.comment.placeholder||void 0,maxLength:c.comment.maxLength||void 0,showCount:!!c.comment.maxLength,autoSize:{minRows:3,maxRows:6},disabled:s,onChange:e=>h(e.target.value)})}):null]})]})}function BI({spec:e,data:t,ctx:r,style:i,feedback:a=!1}){let o=MI(a),[s,c]=(0,u.useState)(null),l=(0,u.useRef)(null),[m,h]=(0,u.useState)(0);(0,u.useLayoutEffect)(()=>{if(!s)return;let e=l.current?.closest?.(`.cc-qv-footer`)??l.current?.parentElement;h(e?.getBoundingClientRect?.().width||0)},[s]);let g=String(mI(e?.module,t,r)||r?.module||``),{actions:_,actionRules:v}=gc(g),y=typeof e?.scope==`function`?e.scope(t,r):mI(e?.scope,t,r),b=(typeof e?.record==`function`?e.record(t,r):null)??t?.record??null,x=typeof e?.facts==`function`?e.facts(t,r):null,{primary:S,menu:C,warnings:w}=LI({actions:_,actionRules:v,record:{...b??{},...x??{}},scope:y===null||y===``?void 0:String(y),module:g}),T=w.join(`
|
|
44
|
+
`)],{type:`text/csv`}));Object.assign(document.createElement(`a`),{href:n,download:`settings-change-history-${(0,m.default)().format(`YYYY-MM-DD`)}.csv`}).click(),URL.revokeObjectURL(n)},b=[{title:`#`,key:`n`,width:50,render:(e,t,n)=>n+1},{title:`Event / activity`,dataIndex:`action`,render:e=>(0,p.jsx)(lk,{tone:UA(e),icon:VA[HA(e)]?.icon,children:BA(e)})},{title:`Module`,key:`module`,render:(e,t)=>VA[HA(t.action)]?.label??`Settings`},{title:`Changed by`,key:`by`,render:(e,t)=>(0,p.jsxs)(`span`,{className:`cc-settings-who`,children:[(0,p.jsx)(uk,{name:XA(t)}),XA(t)]}),sorter:(e,t)=>XA(e).localeCompare(XA(t))},{title:`Date & time`,dataIndex:`at`,width:180,render:e=>(0,m.default)(e).format(`MMM D, YYYY, h:mm A`),sorter:(e,t)=>(0,m.default)(e.at).valueOf()-(0,m.default)(t.at).valueOf()},{title:`Details`,key:`details`,ellipsis:!0,render:(e,t)=>(0,p.jsx)(RA,{type:`secondary`,style:{fontSize:12},children:YA(t)})},{title:``,key:`view`,width:56,render:(e,t)=>(0,p.jsx)(d.Button,{size:`small`,type:`text`,icon:(0,p.jsx)(f.EyeOutlined,{}),"aria-label":`View ${BA(t.action)}`,onClick:()=>a(t)})}],x=l.filter(e=>(0,m.default)(e.at).isSame((0,m.default)(),`day`)).length,S=l.filter(e=>(0,m.default)(e.at).isAfter((0,m.default)().subtract(7,`day`))).length,C=i?qA(i):[],w=i?JA(i.details):[];return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-history`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,icon:(0,p.jsx)(f.InfoCircleOutlined,{}),message:`Sensitive values such as passwords and secret keys are never shown in history.`}),e.error?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:e.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:s,children:`Retry`})}):(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(ck,{items:[{key:`all`,label:`Total changes`,value:l.length,sub:`${x} today · ${S} this week`,icon:(0,p.jsx)(f.HistoryOutlined,{}),tone:`pink`},...Object.entries(VA).map(([e,t])=>({key:e,label:t.label,value:v(e),icon:t.icon,tone:t.tone}))]}),(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-filters`,children:[(0,p.jsx)(d.Input,{allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search by event, person or module…`,value:n.q,onChange:e=>c(`q`)(e.target.value),style:{width:260,maxWidth:`100%`}}),(0,p.jsx)(d.Select,{value:n.module,onChange:c(`module`),style:{minWidth:170},"aria-label":`Module`,options:[{value:`all`,label:`All modules`},...Object.entries(VA).map(([e,t])=>({value:e,label:t.label}))]}),(0,p.jsx)(d.Select,{value:n.tone,onChange:c(`tone`),style:{minWidth:150},"aria-label":`Activity`,options:[{value:`all`,label:`All activities`},{value:`green`,label:`Added / tested / resumed`},{value:`blue`,label:`Changed`},{value:`amber`,label:`Paused / turned off`},{value:`violet`,label:`Rotated`},{value:`red`,label:`Deleted`}]}),(0,p.jsx)(d.Select,{value:n.user,onChange:c(`user`),style:{minWidth:150},"aria-label":`Changed by`,showSearch:!0,options:[{value:`all`,label:`All users`},...h.map(e=>({value:e,label:e}))]}),(0,p.jsx)(d.DatePicker.RangePicker,{value:n.range,onChange:c(`range`),format:`MMM D, YYYY`,allowClear:!0}),(0,p.jsx)(`span`,{style:{flex:1}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:s,children:`Reload`}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.DownloadOutlined,{}),onClick:y,disabled:!_.length,children:`Export`})]}),(0,p.jsx)(d.Table,{rowKey:e=>String(e._id),size:`middle`,loading:e.loading,columns:b,dataSource:_,scroll:{x:960},onRow:e=>({onDoubleClick:()=>a(e)}),pagination:{pageSize:10,showSizeChanger:!0,pageSizeOptions:[10,20,50],showTotal:(e,[t,n])=>`Showing ${t}–${n} of ${e} changes`},locale:{emptyText:(0,p.jsx)(d.Empty,{description:l.length?`No change matches these filters.`:`No changes recorded yet.`})}})]})]}),(0,p.jsx)(d.Drawer,{title:`Change details`,open:!!i,onClose:()=>a(null),width:460,rootClassName:`cc-settings-drawer`,children:i?(0,p.jsxs)(`div`,{className:`cc-history-detail`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__head`,children:[(0,p.jsx)(`span`,{className:`cc-settings-icon-tile`,"aria-hidden":`true`,children:VA[HA(i.action)]?.icon??(0,p.jsx)(f.HistoryOutlined,{})}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`cc-history-detail__title`,children:BA(i.action)}),(0,p.jsx)(RA,{type:`secondary`,children:YA(i)||`No further details were recorded.`})]})]}),(0,p.jsxs)(`dl`,{className:`cc-history-detail__facts`,children:[(0,p.jsx)(`dt`,{children:`Module`}),(0,p.jsx)(`dd`,{children:VA[HA(i.action)]?.label??`Settings`}),(0,p.jsx)(`dt`,{children:`Changed by`}),(0,p.jsx)(`dd`,{children:(0,p.jsxs)(`span`,{className:`cc-settings-who`,children:[(0,p.jsx)(uk,{name:XA(i)}),XA(i)]})}),(0,p.jsx)(`dt`,{children:`Date & time`}),(0,p.jsx)(`dd`,{children:(0,m.default)(i.at).format(`MMM D, YYYY, h:mm A`)}),i.target?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`dt`,{children:`Item`}),(0,p.jsx)(`dd`,{style:{wordBreak:`break-all`},children:i.target})]}):null]}),C.length?(0,p.jsxs)(`section`,{className:`cc-history-detail__changes`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__section`,children:[(0,p.jsx)(f.SwapOutlined,{}),` Changes (`,C.length,` item`,C.length===1?``:`s`,`)`]}),C.map(e=>(0,p.jsxs)(`div`,{className:`cc-history-change`,children:[(0,p.jsx)(`div`,{className:`cc-history-change__label`,children:WA[e.field]??KA(e.field)}),(0,p.jsxs)(`div`,{className:`cc-history-change__row`,children:[(0,p.jsxs)(`div`,{className:`cc-history-change__from`,children:[(0,p.jsx)(`small`,{children:`Previous value`}),(0,p.jsx)(`strong`,{children:GA(e.field,e.from)})]}),(0,p.jsx)(f.ArrowRightOutlined,{"aria-label":`changed to`}),(0,p.jsxs)(`div`,{className:`cc-history-change__to`,children:[(0,p.jsx)(`small`,{children:`Current value`}),(0,p.jsx)(`strong`,{children:GA(e.field,e.to)})]})]})]},e.field))]}):null,w.length?(0,p.jsxs)(`section`,{className:`cc-history-detail__extra`,children:[(0,p.jsxs)(`div`,{className:`cc-history-detail__section`,children:[(0,p.jsx)(f.InfoCircleOutlined,{}),` Additional details`]}),(0,p.jsx)(`ul`,{children:w.map(([e,t])=>(0,p.jsxs)(`li`,{children:[KA(e),`: `,GA(e,t)]},e))})]}):null]}):null})]})}var{Text:QA}=d.Typography,$A=e=>e?.data?.error||e?.data?.message||e?.message||`Something went wrong`,ej=e=>Object.entries(e).map(([e,t])=>({value:e,label:t})),tj=e=>`…${String(e??``).slice(-6)}`,nj=e=>e.orgName||(e.isHead?`Franchise head`:`Franchise ${tj(e.businessUnitId)}`);function rj({userTypes:e=[]}){let t=(0,h.useNavigate)(),[n]=d.Form.useForm(),[r,i]=(0,u.useState)({loading:!0}),[a,o]=(0,u.useState)(0),[s,c]=(0,u.useState)(null),[l,m]=(0,u.useState)(!1),g=t=>e.find(e=>Number(e.value)===Number(t))?.label??t??`–`;(0,u.useEffect)(()=>{let e=!0;return Vk().then(t=>e&&i({loading:!1,...t}),t=>e&&i({loading:!1,error:t?.status===403?`Only the platform owner can manage franchises. You don't have permission to use this page. Ask your administrator to switch on Settings for your user type (Admin → User Types → Config).`:$A(t)})),()=>{e=!1}},[a]);let _=[...r.franchises??[]].sort((e,t)=>Number(t.isHead)-Number(e.isHead)||nj(e).localeCompare(nj(t))),v=d.Form.useWatch(`model`,n),y=e=>{let t=e.config??{};c(e),n.setFieldsValue({orgName:t.orgName||e.orgName,model:t.model||`CENTRAL`,paymentMode:t.paymentMode||`BANK_TRANSFER`,settlementCycle:t.settlementCycle||`MONTHLY`,commissionPct:(Number(t.commissionBps)||0)/100,platformFee:tA(t.platformFeePaise),liveClassFree:e.isHead?e.liveClasses?.free:t.liveClassFree??0,liveClassPaid:t.liveClassPaid??0,liveClassPrice:tA(t.liveClassPricePaise),linkedAccountId:t.linkedAccountId,notes:t.notes,otherCharges:(t.otherCharges??[]).map(e=>({label:e.label,amount:tA(e.amountPaise)}))})},b=async()=>{let e=await n.validateFields(),t={orgName:e.orgName??``,model:e.model,paymentMode:e.paymentMode,settlementCycle:e.settlementCycle,commissionBps:Math.round((Number(e.commissionPct)||0)*100),platformFeePaise:nA(e.platformFee),...s.isHead?{}:{liveClassFree:Number(e.liveClassFree)||0},liveClassPaid:Number(e.liveClassPaid)||0,liveClassPricePaise:nA(e.liveClassPrice),otherCharges:(e.otherCharges??[]).filter(e=>e?.label).map(e=>({label:e.label,amountPaise:nA(e.amount)})),linkedAccountId:e.linkedAccountId??``,notes:e.notes??``},r=e.orgName||nj(s);await fk({title:`Update franchise terms`,icon:(0,p.jsx)(f.AuditOutlined,{}),heading:`Update the terms of ${r}?`,text:`New terms apply to settlements recorded from now on. Past payments and settlements do not change.`,warning:`The organisation sees the new charges and payment method on its Payments page at once.`,okText:`Update terms`,onOk:async()=>{m(!0);try{await Ik(t,s.isOwn?{}:{businessUnitId:s.businessUnitId,businessId:s.businessId}),c(null),o(e=>e+1),pk({ok:!0,title:`Franchise terms updated`,heading:`Franchise terms updated`,text:`${r} now uses these terms.`,rows:[{key:`m`,icon:(0,p.jsx)(f.BankOutlined,{}),label:`Payment arrangement`,value:qk[t.model]??t.model},{key:`c`,icon:(0,p.jsx)(f.PercentageOutlined,{}),label:`Commission`,value:`${t.commissionBps/100}%`},{key:`f`,icon:(0,p.jsx)(f.WalletOutlined,{}),label:`Platform fee per cycle`,value:rA(t.platformFeePaise)},{key:`b`,icon:(0,p.jsx)(f.CalendarOutlined,{}),label:`Billing cycle`,value:Kk[t.settlementCycle]??t.settlementCycle},{key:`p`,icon:(0,p.jsx)(f.SafetyCertificateOutlined,{}),label:`Payment method`,value:Gk[t.paymentMode]??t.paymentMode}]})}catch(e){throw d.message.error($A(e)),e}finally{m(!1)}}}).catch(()=>{})},[x,S]=(0,u.useState)(`all`),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(null),D=_.filter(e=>(x===`all`||x===`head`==!!e.isHead)&&(!C||nj(e).toLowerCase().includes(C.toLowerCase()))),O=_.reduce((e,t)=>({users:e.users+(Number(t.userCount)||0),free:e.free+(Number(t.liveClasses?.free)||0),paid:e.paid+(Number(t.liveClasses?.paid)||0)}),{users:0,free:0,paid:0}),k=e=>{let t=e.config??{},n=[];return Number(t.commissionBps)&&n.push(`Commission (${Number(t.commissionBps)/100}%)`),Number(e.perCyclePaise)&&n.push(`${rA(e.perCyclePaise)} / ${String(Kk[t.settlementCycle]??``).toLowerCase()}`),n.join(` + `)||(e.isHead?`Platform (own)`:`No charges set`)};return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-franchises`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[r.loading?(0,p.jsx)(Y,{children:(0,p.jsx)(d.Skeleton,{active:!0})}):r.error?(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:r.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:()=>{i({loading:!0}),o(e=>e+1)},children:`Retry`})}):(0,p.jsxs)(p.Fragment,{children:[r.platformOwnerConfigured?null:(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`No platform owner is set on the server yet, so every business unit counts as its own head. Set PLATFORM_OWNER_BUSINESS_UNIT_IDS to the head's business unit before adding franchises.`}),(0,p.jsx)(ck,{items:[{key:`o`,label:`Total organisations`,value:_.length,icon:(0,p.jsx)(f.ApartmentOutlined,{}),tone:`pink`},{key:`h`,label:`Head organisation`,value:_.filter(e=>e.isHead).length,icon:(0,p.jsx)(f.CrownOutlined,{}),tone:`violet`},{key:`f`,label:`Franchises`,value:_.filter(e=>!e.isHead).length,icon:(0,p.jsx)(f.ShopOutlined,{}),tone:`blue`},{key:`u`,label:`Total users`,value:O.users,icon:(0,p.jsx)(f.TeamOutlined,{}),tone:`green`},{key:`l`,label:`Total live-class allowance`,value:O.free+O.paid,sub:`Free: ${O.free} | Paid: ${O.paid}`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`amber`}]}),(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-filters`,children:[(0,p.jsx)(d.Segmented,{value:x,onChange:S,options:[{value:`all`,label:`All organisations (${_.length})`},{value:`head`,label:`Head organisation (${_.filter(e=>e.isHead).length})`},{value:`franchise`,label:`Franchises (${_.filter(e=>!e.isHead).length})`}]}),(0,p.jsx)(`span`,{style:{flex:1}}),(0,p.jsx)(d.Input,{allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search by organisation name…`,value:C,onChange:e=>w(e.target.value),style:{width:260,maxWidth:`100%`}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>{i({loading:!0}),o(e=>e+1)},children:`Reload`})]}),(0,p.jsx)(d.Table,{rowKey:`businessUnitId`,size:`middle`,columns:[{title:`Organisation name`,key:`org`,width:250,render:(e,t)=>(0,p.jsxs)(d.Space,{size:10,children:[(0,p.jsx)(`span`,{className:`cc-settings-provider-icon`,"aria-hidden":`true`,children:t.isHead?(0,p.jsx)(f.CrownOutlined,{}):(0,p.jsx)(f.ShopOutlined,{})}),(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(QA,{strong:!0,children:nj(t)}),(0,p.jsxs)(QA,{type:`secondary`,style:{fontSize:12},children:[`Business unit `,tj(t.businessUnitId),t.isOwn?` · you`:``]})]})]}),sorter:(e,t)=>nj(e).localeCompare(nj(t))},{title:`Status`,key:`status`,width:120,render:(e,t)=>t.configured||t.isHead?(0,p.jsx)(lk,{tone:`green`,children:`Active`}):(0,p.jsx)(lk,{tone:`amber`,children:`Terms not set`})},{title:`Type`,key:`type`,width:170,render:(e,t)=>t.isHead?(0,p.jsx)(lk,{tone:`violet`,children:`Head organisation`}):(0,p.jsx)(lk,{tone:`blue`,children:`Franchise`})},{title:`Plan`,key:`plan`,width:190,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(QA,{children:qk[t.config?.model]??t.config?.model}),(0,p.jsx)(QA,{type:`secondary`,style:{fontSize:12},children:Gk[t.config?.paymentMode]??`–`})]})},{title:`Users`,dataIndex:`userCount`,width:90,align:`right`,render:e=>(0,p.jsxs)(d.Space,{size:4,children:[(0,p.jsx)(f.TeamOutlined,{}),e??0]}),sorter:(e,t)=>(e.userCount??0)-(t.userCount??0)},{title:`Billing arrangement`,key:`billing`,width:220,render:(e,t)=>k(t)},{title:`Live-class allowance`,key:`live`,width:210,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsxs)(QA,{strong:!0,children:[(0,p.jsx)(f.VideoCameraOutlined,{}),` `,t.liveClasses?.limit??0]}),(0,p.jsxs)(QA,{type:`secondary`,style:{fontSize:12},children:[`(Free: `,t.liveClasses?.free??0,` | Paid: `,t.liveClasses?.paid??0,`) · `,t.liveClassesInUse??0,` in use`]})]})},{title:`Actions`,key:`act`,width:150,fixed:`right`,render:(e,n)=>(0,p.jsxs)(d.Space,{size:4,children:[(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EyeOutlined,{}),onClick:()=>E(n),children:`View`}),(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:[{key:`edit`,icon:(0,p.jsx)(f.EditOutlined,{}),label:`Edit terms`,onClick:()=>y(n)},{key:`statement`,icon:(0,p.jsx)(f.FileTextOutlined,{}),label:`View statement`,onClick:()=>t(`?section=payments${n.isOwn?``:`&businessUnitId=${n.businessUnitId}&businessId=${n.businessId}`}`)}]},children:(0,p.jsx)(d.Button,{size:`small`,type:`text`,icon:(0,p.jsx)(f.MoreOutlined,{}),"aria-label":`More for ${nj(n)}`})})]})}],dataSource:D,pagination:{pageSize:10,hideOnSinglePage:!0},scroll:{x:1400},locale:{emptyText:(0,p.jsx)(d.Empty,{description:`No organisation matches.`})}})]})]}),(0,p.jsx)(d.Drawer,{title:T?nj(T):``,open:!!T,onClose:()=>E(null),width:620,rootClassName:`cc-settings-drawer`,extra:T?(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{let e=T;E(null),y(e)},children:`Edit terms`}):null,children:T?(0,p.jsx)(d.Tabs,{items:[{key:`overview`,label:`Overview`,children:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(d.Space,{wrap:!0,style:{margin:`4px 0 12px`},children:[T.isHead?(0,p.jsx)(lk,{tone:`violet`,children:`Head organisation`}):(0,p.jsx)(lk,{tone:`blue`,children:`Franchise`}),(0,p.jsx)(lk,{tone:`green`,children:`Active`})]}),(0,p.jsx)(ck,{items:[{key:`u`,label:`Users`,value:T.userCount??0,icon:(0,p.jsx)(f.TeamOutlined,{}),tone:`green`},{key:`l`,label:`Live classes in use`,value:`${T.liveClassesInUse??0} / ${T.liveClasses?.limit??0}`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`amber`}]}),(0,p.jsx)(d.Descriptions,{size:`small`,column:1,bordered:!0,items:[{key:`m`,label:`Payment arrangement`,children:qk[T.config?.model]??T.config?.model},{key:`p`,label:`Fixed payment method`,children:Gk[T.config?.paymentMode]??`–`},{key:`b`,label:`Billing cycle`,children:Kk[T.config?.settlementCycle]??`–`},{key:`c`,label:`Commission`,children:`${(Number(T.config?.commissionBps)||0)/100}%`},{key:`f`,label:`Platform fee per cycle`,children:rA(T.config?.platformFeePaise)},{key:`t`,label:`Total charges per cycle`,children:(0,p.jsx)(QA,{strong:!0,children:rA(T.perCyclePaise)})},{key:`l`,label:`Live classes`,children:`Free ${T.liveClasses?.free??0} · Paid ${T.liveClasses?.paid??0} at ${rA(T.config?.liveClassPricePaise)} each`},...(T.charges??[]).length?[{key:`ch`,label:`Charges per cycle`,children:(T.charges??[]).map(e=>`${e.label}: ${rA(e.amountPaise)}`).join(` · `)}]:[],...T.config?.notes?[{key:`n`,label:`Agreement`,children:T.config.notes}]:[]]})]})},{key:`users`,label:`Users (${T.userCount??0})`,children:(0,p.jsx)(d.Table,{size:`small`,rowKey:e=>String(e._id),pagination:(T.users??[]).length>10&&{pageSize:10},dataSource:T.users??[],locale:{emptyText:(0,p.jsx)(d.Empty,{description:`No users yet.`})},columns:[{title:`Name`,key:`name`,render:(e,t)=>(0,p.jsxs)(d.Space,{size:8,children:[(0,p.jsx)(uk,{name:[t.firstName,t.lastName].filter(Boolean).join(` `)}),[t.firstName,t.lastName].filter(Boolean).join(` `)||`–`]})},{title:`Email`,dataIndex:`email`},{title:`User type`,dataIndex:`roleId`,render:g},{title:`Status`,dataIndex:`activeStatus`,render:e=>e===!1?(0,p.jsx)(lk,{tone:`grey`,children:`Inactive`}):(0,p.jsx)(lk,{tone:`green`,children:`Active`})}]})}]}):null}),(0,p.jsx)(d.Drawer,{rootClassName:`cc-settings-drawer`,title:s?`Edit ${nj(s)}`:``,open:!!s,onClose:()=>c(null),width:560,destroyOnClose:!0,extra:(0,p.jsx)(d.Button,{type:`primary`,loading:l,onClick:b,children:`Save`}),children:(0,p.jsxs)(d.Form,{form:n,layout:`vertical`,requiredMark:`optional`,children:[(0,p.jsx)(d.Form.Item,{name:`orgName`,label:`Organisation name`,extra:`Shown in the header after sign-in for this organisation's users.`,rules:[{max:120}],children:(0,p.jsx)(d.Input,{placeholder:`e.g. BFSI and IT`})}),(0,p.jsxs)(d.Row,{gutter:12,children:[(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`model`,label:`Collection model`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:ej(qk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`paymentMode`,label:`Payment mode (fixed)`,rules:[{required:!0}],extra:`The franchise pays only by this mode.`,children:(0,p.jsx)(d.Select,{options:ej(Gk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`settlementCycle`,label:`Billing cycle`,rules:[{required:!0}],children:(0,p.jsx)(d.Select,{options:ej(Kk)})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`commissionPct`,label:`Commission on student payments`,rules:[{required:!0}],children:(0,p.jsx)(d.InputNumber,{min:0,max:100,step:.5,precision:2,addonAfter:`%`,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`platformFee`,label:`Platform fee per cycle`,children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`,style:{width:`100%`}})})}),v===`SPLIT`?(0,p.jsx)(d.Col,{xs:24,sm:12,children:(0,p.jsx)(d.Form.Item,{name:`linkedAccountId`,label:`Razorpay Route linked account`,rules:[{required:!0,pattern:/^acc_[A-Za-z0-9]{8,32}$/,message:`acc_… from Razorpay Route`}],children:(0,p.jsx)(d.Input,{placeholder:`acc_XXXXXXXXXXXX`})})}):null]}),(0,p.jsx)(QA,{strong:!0,children:`Live classes at a time`}),(0,p.jsxs)(d.Row,{gutter:12,style:{marginTop:8},children:[(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassFree`,label:`Free`,extra:s?.isHead?`What is left of the free pool.`:`Out of the ${r.freePool??5} free.`,children:(0,p.jsx)(d.InputNumber,{min:0,max:r.freePool??5,disabled:s?.isHead,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassPaid`,label:`Paid`,children:(0,p.jsx)(d.InputNumber,{min:0,max:1e3,style:{width:`100%`}})})}),(0,p.jsx)(d.Col,{xs:24,sm:8,children:(0,p.jsx)(d.Form.Item,{name:`liveClassPrice`,label:`Price each`,extra:`Per paid class, per cycle.`,children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`,style:{width:`100%`}})})})]}),(0,p.jsx)(QA,{strong:!0,children:`Other charges per cycle`}),(0,p.jsx)(d.Form.List,{name:`otherCharges`,children:(e,{add:t,remove:n})=>(0,p.jsxs)(`div`,{style:{marginTop:8},children:[e.map(({key:e,name:t})=>(0,p.jsxs)(d.Space,{align:`start`,style:{display:`flex`},children:[(0,p.jsx)(d.Form.Item,{name:[t,`label`],rules:[{required:!0,message:`Label`},{max:80}],children:(0,p.jsx)(d.Input,{placeholder:`e.g. Support fee`})}),(0,p.jsx)(d.Form.Item,{name:[t,`amount`],rules:[{required:!0,message:`Amount`}],children:(0,p.jsx)(d.InputNumber,{min:0,precision:2,addonBefore:`₹`})}),(0,p.jsx)(d.Button,{type:`text`,"aria-label":`Remove charge`,icon:(0,p.jsx)(f.DeleteOutlined,{}),onClick:()=>n(t)})]},e)),(0,p.jsx)(d.Button,{type:`dashed`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>t({label:``,amount:0}),disabled:e.length>=20,children:`Add charge`})]})}),(0,p.jsx)(d.Form.Item,{name:`notes`,label:`Agreement notes`,style:{marginTop:16},children:(0,p.jsx)(d.Input.TextArea,{rows:2,maxLength:1e3})})]})})]})}var{Text:ij}=d.Typography,aj=e=>e?.data?.error||e?.data?.message||e?.message||`Something went wrong`;function oj(){let[e,t]=(0,u.useState)({loading:!0}),[n,r]=(0,u.useState)(0),[i,a]=(0,u.useState)(null),[o,s]=(0,u.useState)(0),[c,l]=(0,u.useState)(!1);(0,u.useEffect)(()=>{let e=!0;return Hk().then(n=>e&&t({loading:!1,...n}),n=>e&&t({loading:!1,error:n?.status===403?`You don't have permission to use this page. Ask your administrator to switch on Settings for your user type (Admin → User Types → Config).`:aj(n)})),()=>{e=!1}},[n]);let h=()=>{t({loading:!0}),r(e=>e+1)},g=e.allowance??{},_=Number(e.inUse)||0,v=Number(g.limit)||0,y=Math.max(v-_,0),b=Array.isArray(e.franchises)?e.franchises:null,x=Number(g.givenOut)||0,S=Number(g.pool)||5,C=async()=>{l(!0);try{await Uk(i.businessUnitId,Number(o)),d.message.success(`Free live classes saved`),a(null),h()}catch(e){d.message.error(aj(e))}finally{l(!1)}};if(e.loading)return(0,p.jsx)(Y,{children:(0,p.jsx)(d.Skeleton,{active:!0})});if(e.error)return(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:e.error,action:(0,p.jsx)(d.Button,{size:`small`,onClick:h,children:`Retry`})});let w=[{title:`Batch`,dataIndex:`batchName`,render:(e,t)=>(0,p.jsxs)(d.Space,{direction:`vertical`,size:0,children:[(0,p.jsx)(ij,{strong:!0,children:e||`Batch`}),(0,p.jsxs)(ij,{type:`secondary`,style:{fontSize:12},children:[`Session `,t.sessionKey]})]})},{title:`Started at`,dataIndex:`startedAt`,render:e=>e?(0,m.default)(e).format(`h:mm A`):`–`},{title:`Ends`,dataIndex:`endsAt`,render:e=>e?(0,m.default)(e).format(`h:mm A`):`–`},{title:`Duration`,key:`dur`,render:(e,t)=>t.startedAt&&t.endsAt?`${Math.max(0,(0,m.default)(t.endsAt).diff((0,m.default)(t.startedAt),`minute`))} min`:`–`},{title:`Slot status`,key:`st`,render:()=>(0,p.jsx)(lk,{tone:`green`,icon:(0,p.jsx)(f.CheckCircleFilled,{}),children:`In use`})},{title:`Platform`,key:`pl`,render:()=>`In-app live`}],T=e=>v?Math.round(e/v*100):0;return(0,p.jsxs)(`div`,{className:`settings-section cc-settings-live`,style:{display:`grid`,gridTemplateColumns:`minmax(0, 1fr)`,gap:16},children:[(0,p.jsx)(`div`,{className:`cc-settings-toolbar`,style:{marginBottom:0,justifyContent:`flex-end`},children:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:h,children:`Reload`})}),(0,p.jsx)(ck,{items:[{key:`total`,label:`Total allowed live classes`,value:v,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),tone:`pink`},{key:`run`,label:`Currently running`,value:_,icon:(0,p.jsx)(f.PlayCircleOutlined,{}),tone:`green`},{key:`avail`,label:`Available slots`,value:y,icon:(0,p.jsx)(f.CalendarOutlined,{}),tone:y?`blue`:`red`},{key:`free`,label:`Free live classes`,value:Number(g.free)||0,sub:g.isHead?`${x} shared with franchises`:`Given by the franchise head`,icon:(0,p.jsx)(f.GiftOutlined,{}),tone:`amber`},{key:`paid`,label:`Paid live classes`,value:Number(g.paid)||0,sub:Number(g.pricePaise)?`${rA(g.pricePaise)} each per ${String(Kk[g.billingCycle]??`billing`).toLowerCase()} cycle`:`Set in Franchise Management`,icon:(0,p.jsx)(f.CrownOutlined,{}),tone:`violet`}]}),(0,p.jsxs)(`div`,{className:`cc-live-banner${y?``:` is-full`}`,children:[(0,p.jsxs)(`span`,{children:[(0,p.jsx)(f.InfoCircleOutlined,{}),` Classes using external meeting links are not counted toward in-app live class limits.`]}),(0,p.jsxs)(`span`,{className:`cc-live-banner__state`,children:[y?(0,p.jsx)(f.CheckCircleFilled,{}):(0,p.jsx)(f.WarningFilled,{}),(0,p.jsxs)(`span`,{children:[(0,p.jsxs)(`strong`,{children:[y,` slot`,y===1?``:`s`,` available`]}),(0,p.jsx)(`br`,{}),(0,p.jsx)(`small`,{children:v===0?`No live classes allowed`:y?`Limit healthy`:`Limit reached`})]})]})]}),v===0||!y?(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:v===0?`No live classes are available for your organisation.`:`All live class slots are in use.`,description:`A new in-app class cannot start until a slot frees up. Contact your admin to increase the live classes count.`}):null,(0,p.jsxs)(d.Row,{gutter:[16,16],children:[(0,p.jsx)(d.Col,{xs:24,xl:16,children:(0,p.jsxs)(Y,{children:[(0,p.jsxs)(ij,{strong:!0,style:{fontSize:15},children:[(0,p.jsx)(f.PlayCircleOutlined,{}),` Currently running classes`]}),(0,p.jsx)(d.Table,{style:{marginTop:10},scroll:{x:`max-content`},size:`middle`,rowKey:e=>String(e._id),pagination:!1,dataSource:e.running??[],locale:{emptyText:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No live class is running right now.`})},columns:w})]})}),(0,p.jsxs)(d.Col,{xs:24,xl:8,children:[(0,p.jsxs)(Y,{children:[(0,p.jsx)(ij,{strong:!0,style:{fontSize:15},children:`Slot usage summary`}),(0,p.jsxs)(`div`,{className:`cc-live-usage`,children:[(0,p.jsx)(`span`,{children:`Total slots`}),(0,p.jsx)(d.Progress,{percent:100,showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:v}),(0,p.jsx)(`span`,{children:`Running`}),(0,p.jsx)(d.Progress,{percent:T(_),showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:_}),(0,p.jsx)(`span`,{children:`Available`}),(0,p.jsx)(d.Progress,{percent:T(y),showInfo:!1,size:`small`}),(0,p.jsx)(`strong`,{children:y})]}),(0,p.jsxs)(ij,{type:`secondary`,style:{fontSize:12},children:[_,` / `,v,` in use now`]})]}),(0,p.jsxs)(Y,{style:{marginTop:16},children:[(0,p.jsx)(ij,{strong:!0,style:{fontSize:15},children:`Quick notes`}),(0,p.jsxs)(`ul`,{className:`cc-live-notes`,children:[(0,p.jsx)(`li`,{children:`Increase the allowance before starting more in-app classes once the limit is reached.`}),(0,p.jsx)(`li`,{children:`Free and paid live classes count together toward the limit.`}),(0,p.jsx)(`li`,{children:`External meeting links do not use live-class slots.`})]})]})]})]}),b?(0,p.jsxs)(Y,{children:[(0,p.jsxs)(`div`,{className:`cc-settings-toolbar`,children:[(0,p.jsxs)(ij,{strong:!0,style:{fontSize:15},children:[(0,p.jsx)(f.ShareAltOutlined,{}),` Free live class allocation`]}),(0,p.jsxs)(ij,{type:`secondary`,children:[S,` free classes · `,x,` shared with franchises · `,Number(g.free)||0,` kept by the head`]})]}),(0,p.jsx)(d.Progress,{percent:Math.round(x/S*100),success:{percent:0},format:()=>`${x} / ${S} shared`}),(0,p.jsx)(d.Table,{style:{marginTop:12},size:`middle`,scroll:{x:`max-content`},rowKey:`businessUnitId`,pagination:!1,dataSource:b,locale:{emptyText:(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:`No franchises yet.`})},columns:[{title:`Franchise`,key:`name`,render:(e,t)=>t.orgName||(0,p.jsxs)(ij,{type:`secondary`,children:[`Business unit …`,String(t.businessUnitId).slice(-6)]})},{title:`Free`,key:`free`,align:`right`,render:(e,t)=>t.liveClasses?.free??0},{title:`Paid`,key:`paid`,align:`right`,render:(e,t)=>t.liveClasses?.paid??0},{title:`At a time`,key:`limit`,align:`right`,render:(e,t)=>(0,p.jsx)(lk,{tone:`pink`,children:t.liveClasses?.limit??0})},{title:``,key:`act`,width:100,render:(e,t)=>(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{a(t),s(t.liveClasses?.free??0)},children:`Edit`})}]})]}):null,(0,p.jsx)(d.Modal,{title:`Edit live class allocation`,open:!!i,centered:!0,rootClassName:`cc-settings-dialog`,onCancel:()=>a(null),onOk:C,okText:`Save allocation`,confirmLoading:c,okButtonProps:{disabled:i&&Number(o)===Number(i.liveClasses?.free??0)},children:i?(0,p.jsxs)(`div`,{className:`cc-settings-dialog__body`,children:[(0,p.jsx)(`span`,{className:`cc-settings-dialog__art`,"aria-hidden":`true`,children:(0,p.jsx)(f.GiftOutlined,{})}),(0,p.jsx)(`div`,{className:`cc-settings-dialog__heading`,children:i.orgName||`Franchise`}),(0,p.jsxs)(`div`,{className:`cc-settings-dialog__text`,children:[`Free live classes this franchise may run at the same time. `,S-x+(i.liveClasses?.free??0),` of the `,S,` free classes can still be given.`]}),(0,p.jsx)(d.InputNumber,{style:{marginTop:14,width:160},min:0,max:S,value:o,onChange:e=>s(e??0),"aria-label":`Free live classes`}),(0,p.jsx)(`div`,{className:`cc-settings-dialog__warning`,children:(0,p.jsx)(`span`,{children:`Paid classes and their price are set in Franchise Management.`})})]}):null})]})}var sj=`cc-settings-home-tip-hidden`,cj={payments:()=>Fk({}).then(e=>[`${Kk[e?.config?.settlementCycle]??`Monthly`} billing`,e?.perCyclePaise?`${rA(e.perCyclePaise)} per cycle`:`No fixed charges`]),reminders:()=>Jk().then(e=>{let t=e?.rules??[],n=t.filter(e=>e.active).length;return{ok:n>0,parts:[`${n} active`,`${t.length-n} paused`]}}),credentials:()=>xk().then(e=>{let t=e?.providers??[],n=t.filter(e=>e.credential?.active).length;return{ok:n>0,parts:[`${n} active`,`${t.filter(e=>!e.credential).length} not configured`]}}),mappings:()=>c.r().then(e=>({ok:!0,parts:[e?.settings?.mode===`equal_daily`?`Equal daily distribution`:`Round-robin distribution`]})),"live-classes":()=>Hk().then(e=>{let t=Number(e?.allowance?.limit)||0,n=Number(e?.inUse)||0;return{ok:t>n,parts:[`${n} running`,`${Math.max(t-n,0)} available`]}}),franchises:()=>Vk().then(e=>[`${(e?.franchises??[]).length} organisations`]),history:()=>bk().then(e=>{let t=Date.now()-2592e6;return[`${(e??[]).filter(e=>new Date(e.at).getTime()>=t).length} changes (last 30 days)`]})},lj={payments:`View statements, charges, commission and settlements.`,reminders:`Set up and manage automated reminders and admin alerts.`,credentials:`Manage service accounts for Email, SMS / Calling, Payments and Lead Ads.`,mappings:`Facebook course mapping, counsellor distribution and lead flow.`,"live-classes":`View and manage in-app live class limits, usage and allocations.`,franchises:`View franchises and manage their business and payment terms.`,history:`See every change made to settings, with who, when and what.`,users:`Users, user types and what each user type may see and do.`};function uj(e){let[t,n]=(0,u.useState)({loading:!!cj[e]});return(0,u.useEffect)(()=>{if(!cj[e])return;let t=!0;return Promise.resolve().then(cj[e]).then(e=>t&&n({loading:!1,...Array.isArray(e)?{parts:e}:e}),()=>t&&n({loading:!1})),()=>{t=!1}},[e]),t}function dj({section:e,onOpen:t}){let n=uj(e.key);return(0,p.jsxs)(`div`,{className:`cc-settings-home__card`,"data-section":e.key,children:[(0,p.jsx)(`span`,{className:`cc-settings-icon-tile`,"aria-hidden":`true`,children:e.icon}),(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(`div`,{className:`cc-settings-home__title`,children:e.label}),(0,p.jsx)(`div`,{className:`cc-settings-home__text`,children:lj[e.key]}),n.loading?(0,p.jsx)(d.Skeleton.Input,{active:!0,size:`small`,style:{width:160,height:18}}):n.parts?.length?(0,p.jsxs)(`div`,{className:`cc-settings-home__status`,children:[n.ok?(0,p.jsx)(f.CheckCircleFilled,{"aria-hidden":`true`}):null,n.parts.map((e,t)=>(0,p.jsxs)(`span`,{children:[t>0?(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{opacity:.4,marginRight:10},children:`|`}):null,e]},e))]}):null]}),(0,p.jsxs)(d.Button,{className:`cc-settings-home__open`,onClick:()=>t(e.key),"aria-label":`Open ${e.label}`,children:[`Open `,(0,p.jsx)(f.ArrowRightOutlined,{})]})]})}function fj({sections:e,onOpen:t}){let[n,r]=(0,u.useState)(()=>{try{return localStorage.getItem(sj)===`1`}catch{return!1}});return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(sk,{icon:(0,p.jsx)(f.SettingOutlined,{}),title:`Settings`,crumbs:[],subtitle:`Manage your organisation's payments, reminders, service connections, live-class limits and franchise settings.`}),n?null:(0,p.jsx)(d.Alert,{className:`cc-settings-home__tip`,type:`info`,showIcon:!0,closable:!0,onClose:()=>{r(!0);try{localStorage.setItem(sj,`1`)}catch{}},message:`Tip: you can manage the following settings. The options you see depend on your user type and permissions.`}),(0,p.jsx)(`div`,{className:`cc-settings-home__grid`,children:e.map(e=>(0,p.jsx)(dj,{section:e,onOpen:t},e.key))})]})}var pj=(0,u.lazy)(()=>Promise.resolve().then(()=>require("./FacebookCourseMappingsSection-C7qyexlU.cjs")).then(e=>e.n)),mj=(0,u.lazy)(()=>Promise.resolve().then(()=>dC)),{Title:hj}=d.Typography,gj=[{key:`mappings`,label:`Mapping & Distributions`,icon:(0,p.jsx)(f.BranchesOutlined,{}),subtitle:`Facebook form course mapping, counsellor distribution and lead flow.`},{key:`credentials`,label:`Credentials`,icon:(0,p.jsx)(f.KeyOutlined,{}),subtitle:`Service accounts for Email, SMS / Calling / WhatsApp, Payments and Lead Ads.`},{key:`reminders`,label:`Reminders`,icon:(0,p.jsx)(f.BellOutlined,{}),subtitle:`Automated reminders and admin alerts for leads, classes and services.`},{key:`payments`,label:`Payments`,icon:(0,p.jsx)(f.WalletOutlined,{}),subtitle:`Payment arrangement, collections, charges and the final payable or receivable amount.`},{key:`live-classes`,label:`Live Class Manager`,icon:(0,p.jsx)(f.VideoCameraOutlined,{}),subtitle:`In-app live class capacity, running classes and available slots.`},{key:`franchises`,label:`Franchise Management`,icon:(0,p.jsx)(f.ShopOutlined,{}),ownerOnly:!0,subtitle:`The platform organisation and its franchises: plans, billing and live-class allowance.`},{key:`history`,label:`Change History`,icon:(0,p.jsx)(f.HistoryOutlined,{}),subtitle:`Every change made to settings, payments, reminders and providers.`},{key:`users`,label:`Users & User Types`,icon:(0,p.jsx)(f.TeamOutlined,{}),subtitle:`People who use the system, their user types and what each type may do.`}],_j=[{value:`users`,label:`User List`},{value:`roles`,label:`User Types & Permissions`}];function vj(){let[e,t]=(0,h.useSearchParams)(),n=d.Grid.useBreakpoint().md!==!1,[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)(!1),s=gj.filter(e=>!e.ownerOnly||a).map(({ownerOnly:e,subtitle:t,...n})=>n),c=e.get(`section`),l=e.get(`view`)===`roles`?`roles`:`users`,f=gj.some(e=>e.key===c)&&(c!==`franchises`||a)?c:``,m=gj.find(e=>e.key===f);(0,u.useEffect)(()=>{let e=!0;return yk().then(t=>e&&o(!!t?.isPlatformOwner),()=>{}),()=>{e=!1}},[]),(0,u.useEffect)(()=>{if(f!==`reminders`&&f!==`franchises`)return;let e=!0;return Lh().then(t=>e&&i((t??[]).map(e=>({value:Number(e.user_type_id),label:e.user_type_name}))),()=>{}),()=>{e=!1}},[f]);let g=e=>t(t=>{let n=new URLSearchParams(t);return e?n.set(`section`,e):n.delete(`section`),[`view`,`businessUnitId`,`businessId`].forEach(e=>n.delete(e)),n});if(!f)return(0,p.jsx)(`div`,{className:`cc-settings-page`,style:{padding:n?24:16},children:(0,p.jsx)(fj,{sections:gj.filter(e=>!e.ownerOnly||a),isOwner:a,onOpen:g})});let _={payments:(0,p.jsx)(lA,{}),reminders:(0,p.jsx)(xA,{userTypes:r}),credentials:(0,p.jsx)(LA,{}),"live-classes":(0,p.jsx)(oj,{}),franchises:(0,p.jsx)(rj,{userTypes:r}),mappings:(0,p.jsx)(`div`,{className:`settings-section cc-settings-mappings`,children:(0,p.jsx)(Y,{children:(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Skeleton,{active:!0}),children:(0,p.jsx)(pj,{})})})}),history:(0,p.jsx)(ZA,{}),users:(0,p.jsx)(`div`,{className:`settings-section cc-settings-users`,children:(0,p.jsxs)(Y,{children:[(0,p.jsx)(d.Segmented,{block:!n,options:_j,value:l,style:{marginBottom:16,maxWidth:`100%`},onChange:e=>t(t=>{let n=new URLSearchParams(t);return n.set(`view`,e),n})}),(0,p.jsx)(u.Suspense,{fallback:(0,p.jsx)(d.Skeleton,{active:!0}),children:(0,p.jsx)(mj,{embedded:!0,initialTab:l},l)})]})})}[f];return(0,p.jsx)(`div`,{className:`cc-settings-page`,style:{padding:n?24:16},children:(0,p.jsxs)(d.Flex,{gap:n?24:12,vertical:!n,align:`flex-start`,children:[n?(0,p.jsxs)(`div`,{className:`cc-settings-side`,style:{width:248,flexShrink:0,position:`sticky`,top:16},children:[(0,p.jsx)(hj,{level:4,className:`cc-settings-side__title`,children:`Settings`}),(0,p.jsx)(d.Menu,{className:`cc-settings-nav`,mode:`inline`,selectedKeys:[f],items:s,onClick:({key:e})=>g(e),style:{borderRadius:8,padding:8}})]}):(0,p.jsx)(d.Tabs,{className:`cc-settings-nav`,activeKey:f,onChange:g,items:s,style:{width:`100%`,minWidth:0}}),(0,p.jsxs)(`div`,{className:`cc-settings-body`,style:{flex:1,minWidth:0,width:`100%`},children:[(0,p.jsx)(sk,{icon:m.icon,title:m.label,subtitle:m.subtitle,onHome:()=>g(``)}),_]})]})})}var{Text:yj}=d.Typography,bj=[{label:`Total Jobs`,value:1697,icon:`fileText`},{label:`Active Jobs`,value:1685,icon:`checkCircle`},{label:`My Jobs`,value:600,icon:`user`}],xj={fileText:(0,p.jsx)(f.FileTextOutlined,{}),checkCircle:(0,p.jsx)(f.CheckCircleOutlined,{}),user:(0,p.jsx)(f.UserOutlined,{}),filter:(0,p.jsx)(f.FilterOutlined,{})};function Sj({stats:e=bj}){return(0,p.jsx)(d.Card,{children:(0,p.jsx)(d.Row,{gutter:[12,12],children:e.map(e=>(0,p.jsx)(d.Col,{xs:24,sm:24,md:8,lg:8,xl:8,children:(0,p.jsxs)(d.Card,{className:`stats-inner-card`,children:[(0,p.jsxs)(d.Space,{align:`center`,children:[xj[e.icon]??xj.fileText,(0,p.jsx)(yj,{children:e.label})]}),(0,p.jsx)(d.Statistic,{value:e.value})]})},e.label))})})}var{Text:Cj}=d.Typography;function wj(e){return e?.USER_NAME??e?.user_name??e?.username??e?.name??e?.full_name??e?.fullName??e?.email??`User ${e?.USER_ID??e?.user_id??`?`}`}function Tj(e){return{...e,key:e.USER_ID??e.user_id??e.userId??e.id??e._id,_name:wj(e),_email:e.email??e.EMAIL??e.user_email??``,_role:e.role_name??e.roleName??e.ROLE_NAME??``,_rawRef:e}}function Ej(){let[e,t]=(0,u.useState)([]),[r,i]=(0,u.useState)(0),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(1),[l,m]=(0,u.useState)(10),[h,g]=(0,u.useState)(``),_=(0,u.useCallback)(async({offset:e,limit:r,searchQuery:a}={})=>{o(!0);try{let o=await n.Qi({offset:e,limit:r,searchQuery:a??``}),s=(o.users??[]).map(Tj);t(s),i(o.total??s.length)}catch{d.message.error(`Failed to load users`)}finally{o(!1)}},[]);return(0,u.useEffect)(()=>{queueMicrotask(()=>{_({offset:(s-1)*l,limit:l,searchQuery:h})})},[_,s,l,h]),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.TeamOutlined,{}),title:`Users`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Users`,dataSource:e,fields:[{label:`Name`,value:`_name`,width:220,render:(e,t)=>(0,p.jsxs)(`div`,{children:[(0,p.jsx)(Cj,{strong:!0,style:{fontSize:13},children:e}),t._email&&(0,p.jsx)(`div`,{style:{fontSize:11,color:`var(--color-text-muted)`},children:t._email})]})},{label:`Role`,value:`_role`,width:180}],loading:a,total:r,current:s,pageSize:l,onPageChange:e=>c(e),onPageSizeChange:e=>{m(e),c(1)},onSearch:e=>{g(e),c(1)}})})}var{Text:Dj}=d.Typography,Oj=[{key:`job`,label:`Jobs`},{key:`candidate`,label:`Candidates`},{key:`submissions`,label:`Submissions`}],kj=[{key:`listView`,label:`List View`},{key:`filter`,label:`Filter`},{key:`form`,label:`Form`}];function Aj({field:e,index:t,onToggle:n,onReorder:r}){let i=(0,u.useRef)(null),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(!1);function l(e){i.current=t,e.dataTransfer.effectAllowed=`move`,c(!0)}function m(){c(!1),o(!1)}function h(e){e.preventDefault(),o(!0)}function g(){o(!1)}function _(e){e.preventDefault(),o(!1),i.current!==null&&i.current!==t&&r(i.current,t),i.current=null}return(0,p.jsxs)(`div`,{draggable:!0,onDragStart:l,onDragEnd:m,onDragOver:h,onDragLeave:g,onDrop:_,className:`uss-field-row with-edit${a?` drag-over`:``}${s?` dragging`:``}`,children:[(0,p.jsx)(`span`,{className:`uss-drag-handle`,children:(0,p.jsx)(f.HolderOutlined,{})}),(0,p.jsxs)(`span`,{className:`uss-field-name`,children:[e.fieldName,(0,p.jsx)(`span`,{className:`uss-field-key`,children:e.fieldKey})]}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:e.isVisible,onChange:e=>n(t,`isVisible`,e)})}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:!!e.isEditable,onChange:e=>n(t,`isEditable`,e)})}),(0,p.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,p.jsx)(d.Switch,{size:`small`,checked:!!e.ismandatory,onChange:e=>n(t,`ismandatory`,e)})})]})}function jj({team:e,configType:t}){let[r,i]=(0,u.useState)({}),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)({}),[l,f]=(0,u.useState)(`job`);(0,u.useEffect)(()=>{e&&(o(!0),n.ja(e,t).then(i).catch(()=>d.message.error(`Failed to load field config`)).finally(()=>o(!1)))},[e,t]);let m=r[l]??[];function h(e,t){i(n=>({...n,[e]:typeof t==`function`?t(n[e]??[]):t}))}function g(e,t,n){h(l,r=>r.map((r,i)=>i===e?{...r,[t]:n}:r))}function _(e,t){h(l,n=>{let r=[...n],[i]=r.splice(e,1);return r.splice(t,0,i),r.map((e,t)=>({...e,order:t}))})}async function v(){let r=l;c(e=>({...e,[r]:!0}));try{await n.io(e,r,m,t),d.message.success(`Saved`)}catch{d.message.error(`Save failed`)}finally{c(e=>({...e,[r]:!1}))}}return(0,p.jsxs)(d.Spin,{spinning:a,children:[(0,p.jsx)(d.Tabs,{size:`small`,activeKey:l,onChange:f,items:Oj.map(e=>({key:e.key,label:e.label}))}),(0,p.jsxs)(`div`,{className:`uss-field-header with-edit`,children:[(0,p.jsx)(`span`,{}),(0,p.jsx)(`span`,{children:`Field`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Visible`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Editable`}),(0,p.jsx)(`span`,{style:{textAlign:`center`},children:`Mandatory`})]}),(0,p.jsxs)(`div`,{className:`uss-field-list`,children:[m.length===0&&!a&&(0,p.jsx)(`div`,{className:`uss-empty`,children:`No fields found.`}),m.map((e,t)=>(0,p.jsx)(Aj,{field:e,index:t,onToggle:g,onReorder:_},e.fieldKey??t))]}),(0,p.jsx)(`div`,{className:`uss-modal-footer`,children:(0,p.jsxs)(d.Button,{type:`primary`,size:`small`,loading:s[l],onClick:v,children:[`Save `,Oj.find(e=>e.key===l)?.label]})})]})}function Mj(){let[e,t]=(0,u.useState)(null),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(!1),[s,c]=(0,u.useState)(`listView`),[l,m]=(0,u.useState)([]),[h,g]=(0,u.useState)(0),[_,v]=(0,u.useState)(!1),[y,b]=(0,u.useState)(``),[x,S]=(0,u.useState)(!1),C=(0,u.useCallback)(async()=>{v(!0);try{let e=await n.Zi();m(e.teams),g(e.total)}catch{d.message.error(`Failed to load teams`)}finally{v(!1)}},[]);(0,u.useEffect)(()=>{C()},[C]);function w(e){t(e),c(`listView`),i(!0)}function T(e){t(e),b(e.teamName??``),o(!0)}async function E(){if(!y.trim()){d.message.warning(`Team name is required`);return}S(!0);try{await n.ro(e,{teamName:y.trim(),managerId:e.managerId,memberIds:e.memberIds}),d.message.success(`Team updated`),o(!1),C()}catch{d.message.error(`Failed to update team`)}finally{S(!1)}}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(Y,{icon:(0,p.jsx)(f.TeamOutlined,{}),title:`Teams`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Teams`,dataSource:l,fields:[{label:`Team Name`,value:`teamName`,width:200},{label:`Manager`,value:`manager`,width:200},{label:`Members`,value:`memberCount`,width:90,sorter:!1},{label:`Actions`,value:`_actions`,width:160,sorter:!1,render:(e,t)=>(0,p.jsxs)(`div`,{style:{display:`flex`,gap:4},children:[(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>T(t),children:`Edit`}),(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>w(t),children:`Configure`})]})}],loading:_,total:h})}),(0,p.jsx)(d.Modal,{open:a,onCancel:()=>o(!1),title:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(f.TeamOutlined,{style:{color:`var(--color-brand)`,marginRight:6}}),`Edit Team`]}),width:420,footer:null,destroyOnClose:!0,children:(0,p.jsxs)(`div`,{className:`uss-edit-team-body`,style:{paddingTop:12},children:[(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`uss-edit-team-label`,children:`Team Name`}),(0,p.jsx)(d.Input,{value:y,onChange:e=>b(e.target.value),onPressEnter:E,placeholder:`Enter team name`})]}),(0,p.jsxs)(`div`,{className:`uss-modal-footer`,children:[(0,p.jsx)(d.Button,{onClick:()=>o(!1),children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,loading:x,onClick:E,children:`Save`})]})]})}),(0,p.jsxs)(d.Modal,{className:`uss-modal`,open:r,onCancel:()=>i(!1),title:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.TeamOutlined,{style:{color:`var(--color-brand)`}}),(0,p.jsxs)(`span`,{children:[`Configure: `,e?.teamName]})]}),width:720,footer:null,destroyOnClose:!0,children:[(0,p.jsx)(`div`,{style:{marginBottom:12},children:(0,p.jsx)(`div`,{className:`uss-config-toggle`,children:kj.map(e=>(0,p.jsx)(`button`,{className:`uss-config-btn${s===e.key?` active`:``}`,onClick:()=>c(e.key),children:e.label},e.key))})}),e&&(0,p.jsx)(jj,{team:e,configType:s},`${e?.teamId}-${s}`)]})]})}var Nj=[`view`,`add`,`edit`,`delete`],Pj={view:`View`,add:`Add`,edit:`Edit`,delete:`Delete`,sourcing:`Sourcing`,assign:`Assign`,share:`Share`,change_status:`Status`,my_jobs:`My Jobs`,all_jobs:`All Jobs`,po_msa:`PO MSA`,reApprove:`ReApprove`,sendApprove:`Send Approve`};function Fj(e){return Pj[e]??e.replace(/_/g,` `).replace(/\b\w/g,e=>e.toUpperCase())}function Ij(e){let t=Nj.filter(t=>e.includes(t)),n=e.filter(e=>!Nj.includes(e)).sort();return[...t,...n]}function Lj(e){let t=new Set;return Object.values(e).forEach(({permissions:e})=>Object.keys(e??{}).forEach(e=>t.add(e))),Ij([...t])}function Rj(e){let t=0,n=0;return Object.entries(e).forEach(([e,{permissions:r}])=>{Object.entries(r??{}).forEach(([r,{value:i}])=>{Zh(e,r)&&(n++,i===`1`&&t++)})}),{enabled:t,total:n}}function zj(e={}){if(!e||typeof e!=`object`)return e;let t=Object.keys(e).find(e=>String(e).trim().toLowerCase()===`onboarding`);if(!t)return e;let n=e[t]??{},r={...n.permissions??{}};for(let e of[`sendApprove`,`reApprove`])Object.keys(r).some(t=>t.toLowerCase()===e.toLowerCase())||(r[e]={id:0,value:`0`});return{...e,[t]:{...n,permissions:r}}}function Bj({value:e,onSave:t,className:n}){let[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(e);(0,u.useEffect)(()=>{o(e)},[e]);function s(){i(!1);let n=a.trim();n&&n!==e?t(n):o(e)}return r?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-inline-input${n?` ${n}`:``}`,value:a,style:{width:Math.max(48,a.length*8)},onChange:e=>o(e.target.value),onBlur:s,onKeyDown:t=>{t.key===`Enter`&&s(),t.key===`Escape`&&(i(!1),o(e)),t.stopPropagation()},onClick:e=>e.stopPropagation()}):(0,p.jsxs)(`span`,{className:`perm-editable-name${n?` ${n}`:``}`,onDoubleClick:e=>{e.stopPropagation(),i(!0)},children:[e,(0,p.jsx)(f.EditOutlined,{className:`perm-name-edit-icon`})]})}function Vj({entry:e,label:t,onToggle:n,onLabelSave:r}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(t),c=e?.value===`1`,l=!!e;(0,u.useEffect)(()=>{s(t)},[t]);function m(){a(!1);let e=o.trim();e&&e!==t?r(e):s(t)}return(0,p.jsx)(d.Tooltip,{title:l?c?`Click to disable`:`Click to enable`:`Not applicable for this module`,children:(0,p.jsxs)(`div`,{className:`perm-action-pill${c?` on`:``}${l?``:` na`}`,onClick:()=>{!i&&l&&n()},children:[(0,p.jsx)(`span`,{className:`perm-action-pill-dot${c?` on`:``}`}),i?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-pill-input`,value:o,style:{width:Math.max(36,o.length*7)},onChange:e=>s(e.target.value),onBlur:m,onKeyDown:e=>{e.key===`Enter`&&m(),e.key===`Escape`&&(a(!1),s(t)),e.stopPropagation()},onClick:e=>e.stopPropagation()}):(0,p.jsx)(`span`,{className:`perm-action-pill-label`,onDoubleClick:e=>{e.stopPropagation(),a(!0)},children:t}),c&&!i&&(0,p.jsx)(f.CheckOutlined,{className:`perm-action-pill-check`})]})})}function Hj({menuName:e,menuData:t,permKeys:n,onChange:r,displayName:i,actionLabels:a,onModuleLabelSave:o,onActionLabelSave:s}){let c=t?.permissions??{},l=n.filter(t=>Zh(e,t)),u=l.filter(e=>c[e]?.value===`1`).length,d=l.filter(e=>c[e]).length,f=d>0&&u===d;return(0,p.jsxs)(`div`,{className:`perm-module-card${f?` all-on`:u>0&&!f?` some-on`:``}`,children:[(0,p.jsxs)(`div`,{className:`perm-module-card-header`,children:[(0,p.jsx)(Bj,{value:i,onSave:t=>o(e,t),className:`perm-module-card-name`}),d>0&&(0,p.jsxs)(`span`,{className:`perm-module-card-badge${u>0?` active`:``}`,children:[u,`/`,d]})]}),(0,p.jsx)(`div`,{className:`perm-module-card-body`,children:l.map(t=>(0,p.jsx)(Vj,{entry:c[t],label:a[t]??Fj(t),onToggle:()=>r(e,t),onLabelSave:e=>s(t,e)},t))})]})}function Uj({role:e,moduleLabels:t={},actionLabels:r={},onModuleLabelSave:i=()=>{},onActionLabelSave:a=()=>{}}){let[o,s]=(0,u.useState)({}),[c,l]=(0,u.useState)({}),[m,h]=(0,u.useState)(!1),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)(!1),b=n.Ea(e);(0,u.useEffect)(()=>{b&&(h(!0),y(!1),n.ka(b).then(e=>{let t=zj(e);s(t),l(t)}).catch(()=>d.message.error(`Failed to load permissions`)).finally(()=>h(!1)))},[b]);function x(e,t){y(!0),l(n=>{let r=n[e]??{menuId:o[e]?.menuId??0,permissions:{}},i=r.permissions?.[t]??{id:0,value:`0`};return{...n,[e]:{...r,permissions:{...r.permissions,[t]:{...i,value:i.value===`1`?`0`:`1`}}}}})}async function S(){_(!0);try{await n.to(b,c),s(c),y(!1),d.message.success(`Permissions saved`)}catch(e){d.message.error(e?.message||`Save failed`)}finally{_(!1)}}let C=(0,u.useMemo)(()=>Object.keys(c).sort(),[c]),w=(0,u.useMemo)(()=>Lj(c),[c]),{enabled:T,total:E}=(0,u.useMemo)(()=>Rj(c),[c]);return(0,p.jsxs)(d.Spin,{spinning:m,children:[(0,p.jsxs)(`div`,{className:`perm-panel-header`,children:[(0,p.jsxs)(`div`,{className:`perm-panel-title`,children:[(0,p.jsx)(f.LockOutlined,{style:{color:`var(--color-brand)`,marginRight:6}}),(0,p.jsx)(`span`,{children:e?.roleName}),!m&&E>0&&(0,p.jsxs)(d.Tag,{color:`blue`,style:{marginLeft:8,fontSize:11},children:[T,`/`,E,` enabled`]})]}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.UnlockOutlined,{}),loading:g,disabled:!v,onClick:S,children:`Save Changes`})]}),(0,p.jsxs)(`div`,{className:`perm-hint`,children:[(0,p.jsx)(f.InfoCircleOutlined,{className:`perm-hint-icon`}),(0,p.jsxs)(`span`,{children:[`Click a pill to toggle. `,(0,p.jsx)(`strong`,{children:`Double-click`}),` a module name or action label to rename it — labels are saved locally.`]})]}),C.length===0&&!m?(0,p.jsx)(`div`,{className:`perm-empty`,children:`No permission entries found for this role.`}):(0,p.jsx)(`div`,{className:`perm-cards-grid`,children:C.map(e=>(0,p.jsx)(Hj,{menuName:e,menuData:c[e],permKeys:w,onChange:x,displayName:t[e]??e,actionLabels:r,onModuleLabelSave:i,onActionLabelSave:a},e))})]})}var{Text:Wj}=d.Typography,Gj=[{key:`listView`,label:`List View`},{key:`filter`,label:`Filter`},{key:`form`,label:`Form`},{key:`permissions`,label:`Permissions`}];function Kj(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function qj(e){return String(e||``).trim().toLowerCase()}function Jj(e){return e?.key||e?.collectionName||e?.value||``}function Yj(e=[],t=[]){let n=[],r=new Set,i=new Set,a=new Set;return e.forEach(e=>{let t=Jj(e);if(!t)return;let o=qj(e.key||t),s=qj(e.collectionName);e.seeded&&(i.add(o),s&&i.add(s)),s&&a.add(s),r.add(t),n.push({label:e.label||Kj(t),value:t,disabled:!!e.seeded})}),t.forEach(e=>{let t=String(e||``).trim();if(!t||r.has(t))return;let o=qj(t);a.has(o)||i.has(o)||(r.add(t),n.push({label:Kj(t),value:t,disabled:!1}))}),n}function Xj(){let[e,t]=(0,u.useState)(null),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(`listView`),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(0),[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)([]),[x,S]=(0,u.useState)(!1),[C,w]=(0,u.useState)(!1),T=(0,u.useMemo)(()=>_.filter(e=>!e.disabled),[_]),E=!x&&T.length===0,D=(0,u.useCallback)(async()=>{g(!0);try{let e=await n.Xi();c(e.roles),m(e.total)}catch{d.message.error(`Failed to load roles`)}finally{g(!1)}},[]),O=(0,u.useCallback)(async()=>{S(!0);try{let[e,t]=await Promise.all([n.la(),n.ea()]),r=Yj(e.modules,t),i=new Set(r.filter(e=>!e.disabled).map(e=>e.value));v(r),b(e=>e.filter(e=>i.has(e)))}catch{d.message.error(`Failed to load seed status`)}finally{S(!1)}},[]);(0,u.useEffect)(()=>{D()},[D]),(0,u.useEffect)(()=>{O()},[O]);async function k(){if(y.length===0){d.message.warning(E?`All modules already seeded.`:`Select at least one module to seed.`);return}w(!0);try{await n.Ka(y),d.message.success(`Role field config seeded`),b([]),await O()}catch(e){d.message.error(e?.message||`Seed failed`)}finally{w(!1)}}function A(e,n=`listView`){t(e),o(n),i(!0)}return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Field Config Seed`,style:{marginBottom:12},children:[(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:12,flexWrap:`wrap`},children:[(0,p.jsx)(`div`,{style:{minWidth:320,flex:1},children:(0,p.jsx)(d.Select,{mode:`multiple`,allowClear:!0,showSearch:!0,value:y,options:_,placeholder:E?`All modules already seeded`:`Select modules or collections to seed`,disabled:x||C||E,loading:x,onChange:b,style:{width:`100%`}})}),(0,p.jsx)(d.Button,{type:`primary`,loading:C,disabled:x||y.length===0,onClick:k,children:`Seed Field Config`})]}),(0,p.jsx)(Wj,{type:`secondary`,style:{display:`block`,marginTop:8,fontSize:12},children:E?`Seed is disabled because all configured modules already have role field config data.`:`Already seeded modules are disabled. New modules or collections can still be seeded.`})]}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.SafetyOutlined,{}),title:`Roles`,style:{marginBottom:0},bodyStyle:{padding:0},children:(0,p.jsx)(tl,{listName:`Roles`,dataSource:s,fields:[{label:`Role Name`,value:`roleName`,width:200},{label:`Description`,value:`description`,width:240},{label:`Users`,value:`userCount`,width:70,sorter:!1},{label:`Actions`,value:`_configure`,width:200,sorter:!1,render:(e,t)=>(0,p.jsxs)(d.Space,{size:2,children:[(0,p.jsx)(d.Button,{size:`small`,type:`link`,onClick:()=>A(t),children:`Configure`}),(0,p.jsx)(d.Button,{size:`small`,type:`link`,icon:(0,p.jsx)(f.LockOutlined,{}),onClick:()=>A(t,`permissions`),children:`Permissions`})]})}],loading:h,total:l})}),(0,p.jsxs)(d.Modal,{className:`uss-modal`,open:r,onCancel:()=>i(!1),title:(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.SafetyOutlined,{style:{color:`var(--color-brand)`}}),(0,p.jsxs)(`span`,{children:[`Configure: `,e?.roleName]})]}),width:720,footer:null,destroyOnClose:!0,children:[(0,p.jsx)(`div`,{style:{marginBottom:12},children:(0,p.jsx)(`div`,{className:`uss-config-toggle`,children:Gj.map(e=>(0,p.jsx)(`button`,{className:`uss-config-btn${a===e.key?` active`:``}`,onClick:()=>o(e.key),children:e.label},e.key))})}),e&&(a===`permissions`?(0,p.jsx)(Uj,{role:e},e?.roleId):(0,p.jsx)(yg,{role:e,configType:a},`${e?.roleId}-${a}`))]})]})}var Zj=`perm-module-labels`,Qj=`perm-action-labels`;function $j(e){try{return JSON.parse(localStorage.getItem(e)??`{}`)}catch{return{}}}function eM(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}function tM({label:e,onSave:t,onDelete:n,loading:r}){let[i,a]=(0,u.useState)(!1),[o,s]=(0,u.useState)(e);function c(){a(!1);let n=o.trim();n&&n!==e?t(n):s(e)}return(0,p.jsxs)(`div`,{className:`perm-manage-row`,children:[i?(0,p.jsx)(`input`,{autoFocus:!0,className:`perm-inline-input`,value:o,style:{flex:1,minWidth:0},onChange:e=>s(e.target.value),onBlur:c,onKeyDown:t=>{t.key===`Enter`&&c(),t.key===`Escape`&&(a(!1),s(e))}}):(0,p.jsx)(`span`,{className:`perm-manage-row-label`,children:e}),(0,p.jsxs)(`div`,{className:`perm-manage-row-actions`,children:[(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>{s(e),a(!0)},loading:r}),(0,p.jsx)(d.Popconfirm,{title:`Delete this item?`,onConfirm:n,okText:`Delete`,cancelText:`Cancel`,okType:`danger`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.DeleteOutlined,{}),danger:!0})})]})]})}function nM({open:e,onClose:t}){let[r,i]=(0,u.useState)(`modules`),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)(!1),[l,m]=(0,u.useState)(``),[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(``),[C,w]=(0,u.useState)(``),[T,E]=(0,u.useState)(!1);(0,u.useEffect)(()=>{e&&(D(),O())},[e]);async function D(){c(!0);try{o(await n._a())}catch{d.message.error(`Failed to load modules`)}finally{c(!1)}}async function O(){b(!0);try{v(await n.ga())}catch{d.message.error(`Failed to load actions`)}finally{b(!1)}}async function k(){let e=l.trim();if(!e){d.message.warning(`Enter a module name`);return}g(!0);try{let t=await n.ji({menuName:e});o(e=>[...e,t]),m(``),d.message.success(`Module added`)}catch{d.message.error(`Failed to add module`)}finally{g(!1)}}async function A(e,t){try{await n.Za(e,{menuName:t}),o(n=>n.map(n=>n.MENUID===e?{...n,MENUNAME:t}:n))}catch{d.message.error(`Failed to update module`)}}async function j(e){try{await n.Bi(e),o(t=>t.filter(t=>t.MENUID!==e)),d.message.success(`Module deleted`)}catch{d.message.error(`Failed to delete module`)}}async function M(){let e=x.trim(),t=C.trim().toLowerCase().replace(/\s+/g,`_`);if(!e||!t){d.message.warning(`Enter both name and key`);return}E(!0);try{let r=await n.Ai({permissionName:e,permissionKey:t});v(e=>[...e,r]),S(``),w(``),d.message.success(`Action added`)}catch(e){d.message.error(e?.message?.includes(`409`)||e?.status===409?`Permission key already exists`:`Failed to add action`)}finally{E(!1)}}async function N(e,t){try{await n.Xa(e,{permissionName:t}),v(n=>n.map(n=>n.permissionId===e?{...n,permissionName:t}:n))}catch{d.message.error(`Failed to update action`)}}async function P(e){try{await n.zi(e),v(t=>t.filter(t=>t.permissionId!==e)),d.message.success(`Action deleted`)}catch{d.message.error(`Failed to delete action`)}}let F=[{key:`modules`,label:`Modules`,children:(0,p.jsxs)(d.Spin,{spinning:s,children:[(0,p.jsxs)(`div`,{className:`perm-manage-add-row`,children:[(0,p.jsx)(d.Input,{placeholder:`Module name`,value:l,onChange:e=>m(e.target.value),onPressEnter:k,style:{flex:1},size:`small`}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),loading:h,onClick:k,children:`Add`})]}),(0,p.jsxs)(`div`,{className:`perm-manage-list`,children:[a.length===0&&!s&&(0,p.jsx)(`div`,{className:`perm-empty`,style:{paddingTop:24},children:`No modules found`}),a.map(e=>(0,p.jsx)(tM,{label:e.MENUNAME,onSave:t=>A(e.MENUID,t),onDelete:()=>j(e.MENUID)},e.MENUID))]})]})},{key:`actions`,label:`Actions`,children:(0,p.jsxs)(d.Spin,{spinning:y,children:[(0,p.jsxs)(`div`,{className:`perm-manage-add-row`,children:[(0,p.jsx)(d.Input,{placeholder:`Action name (e.g. Approve)`,value:x,onChange:e=>S(e.target.value),style:{flex:1},size:`small`}),(0,p.jsx)(d.Input,{placeholder:`Key (e.g. approve)`,value:C,onChange:e=>w(e.target.value),onPressEnter:M,style:{width:140},size:`small`}),(0,p.jsx)(d.Button,{type:`primary`,size:`small`,icon:(0,p.jsx)(f.PlusOutlined,{}),loading:T,onClick:M,children:`Add`})]}),(0,p.jsxs)(`div`,{className:`perm-manage-list`,children:[_.length===0&&!y&&(0,p.jsx)(`div`,{className:`perm-empty`,style:{paddingTop:24},children:`No actions found`}),_.map(e=>(0,p.jsx)(tM,{label:`${e.permissionName} (${e.permissionKey})`,onSave:t=>N(e.permissionId,t),onDelete:()=>P(e.permissionId)},e.permissionId))]})]})}];return(0,p.jsx)(d.Modal,{open:e,onCancel:t,title:(0,p.jsxs)(`span`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,p.jsx)(f.SettingOutlined,{style:{color:`var(--color-brand)`}}),`Manage Modules & Actions`]}),width:520,footer:null,destroyOnClose:!0,children:(0,p.jsx)(d.Tabs,{activeKey:r,onChange:i,size:`small`,items:F})})}function rM(){let[e,t]=(0,u.useState)([]),[r,i]=(0,u.useState)(!1),[a,o]=(0,u.useState)(null),[s,c]=(0,u.useState)(``),[l,m]=(0,u.useState)(!1),[h,g]=(0,u.useState)(()=>$j(Zj)),[_,v]=(0,u.useState)(()=>$j(Qj)),y=(0,u.useCallback)((e,t)=>{g(n=>{let r={...n,[e]:t};return eM(Zj,r),r})},[]),b=(0,u.useCallback)((e,t)=>{v(n=>{let r={...n,[e]:t};return eM(Qj,r),r})},[]);function x(){g({}),v({}),eM(Zj,{}),eM(Qj,{}),d.message.success(`Labels reset to defaults`)}let S=(0,u.useCallback)(async()=>{i(!0);try{let{roles:e}=await n.Xi();t(e),e.length>0&&o(e[0])}catch{d.message.error(`Failed to load roles`)}finally{i(!1)}},[]);(0,u.useEffect)(()=>{S()},[S]);let C=(0,u.useMemo)(()=>{let t=s.trim().toLowerCase();return t?e.filter(e=>e.roleName.toLowerCase().includes(t)):e},[e,s]),w=Object.keys(h).length>0||Object.keys(_).length>0;return(0,p.jsxs)(`div`,{className:`perm-page`,children:[(0,p.jsxs)(Y,{className:`perm-left-card`,icon:(0,p.jsx)(f.SafetyOutlined,{}),title:`Roles`,bodyStyle:{padding:0},children:[(0,p.jsx)(`div`,{className:`perm-role-search`,children:(0,p.jsx)(d.Input,{prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search roles…`,allowClear:!0,size:`small`,value:s,onChange:e=>c(e.target.value)})}),(0,p.jsx)(d.Spin,{spinning:r,children:(0,p.jsxs)(`div`,{className:`perm-role-list`,children:[C.length===0&&!r&&(0,p.jsx)(`div`,{className:`perm-role-empty`,children:`No roles found`}),C.map(e=>{let t=a?.roleId===e.roleId,n=e.description&&e.description!==`N/A`?e.description:e.roleType===0?`Default role`:`Custom role`;return(0,p.jsxs)(`div`,{className:`perm-role-item${t?` active`:``}`,onClick:()=>o(e),children:[(0,p.jsx)(`div`,{className:`perm-role-item-name`,children:e.roleName}),(0,p.jsx)(`div`,{className:`perm-role-item-desc`,children:n})]},e.roleId)})]})})]}),(0,p.jsx)(Y,{className:`perm-right-card`,icon:(0,p.jsx)(f.LockOutlined,{}),title:`Module Permissions`,extra:(0,p.jsxs)(`span`,{style:{display:`flex`,alignItems:`center`,gap:10},children:[w&&(0,p.jsx)(`button`,{className:`perm-reset-btn`,onClick:x,children:`Reset labels`}),(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.SettingOutlined,{}),onClick:()=>m(!0),children:`Manage`})]}),bodyStyle:{padding:`12px 16px`},children:a?(0,p.jsx)(Uj,{role:a,moduleLabels:h,actionLabels:_,onModuleLabelSave:y,onActionLabelSave:b},a.roleId):(0,p.jsx)(`div`,{className:`perm-empty`,children:`Select a role from the left to manage its permissions.`})}),(0,p.jsx)(nM,{open:l,onClose:()=>m(!1)})]})}var{Title:iM,Text:aM}=d.Typography,oM=[{label:`In Progress`,value:107,sub:`Under review`,color:`blue`},{label:`Hired`,value:2,sub:`Onboarded`,color:`green`},{label:`Project Completed`,value:2,sub:`Project cycle closed`,color:`purple`},{label:`Archive`,value:2,sub:`No longer active`,color:`peach`}];function sM({items:e=oM}){return(0,p.jsx)(d.Card,{className:`onboarding-card`,title:(0,p.jsx)(iM,{level:5,children:`Onboarding`}),extra:(0,p.jsx)(d.Button,{type:`link`,children:`View all`}),children:(0,p.jsx)(d.Row,{gutter:[12,12],children:e.map(e=>(0,p.jsx)(d.Col,{xs:12,sm:6,md:6,lg:12,xl:12,children:(0,p.jsxs)(`div`,{className:`onboarding-item ${e.color}`,children:[(0,p.jsx)(aM,{className:`onboarding-item-label`,children:e.label}),(0,p.jsx)(d.Statistic,{value:e.value,className:`onboarding-stat`}),(0,p.jsx)(`div`,{className:`onboarding-item-footer`,children:(0,p.jsx)(aM,{className:`onboarding-item-sub`,children:e.sub})})]})},e.label))})})}var{Text:cM,Title:lM}=d.Typography,uM=[{group:`Dashboard`,items:[{id:`dashboard`,label:`Admin Dashboard`,icon:(0,p.jsx)(f.DashboardOutlined,{})}]},{group:`Settings`,items:[{id:`org`,label:`Organization`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Organization Settings`,desc:`Manage your company profile and location details`,cards:[{label:`Company Information`,icon:(0,p.jsx)(f.BankOutlined,{}),desc:`Manage company profile, address and business details.`},{label:`Location`,icon:(0,p.jsx)(f.BuildOutlined,{}),desc:`Manage office locations, branches and regions.`}]},{id:`users`,label:`Users`,icon:(0,p.jsx)(f.UserOutlined,{}),heading:`Users`,desc:`Manage platform users and configure their field views.`,component:`users`},{id:`teams`,label:`Teams`,icon:(0,p.jsx)(f.TeamOutlined,{}),heading:`Teams`,desc:`Organize users into teams and configure field visibility per team.`,component:`teams`},{id:`roles`,label:`Roles`,icon:(0,p.jsx)(f.SafetyOutlined,{}),heading:`Roles`,desc:`Control permissions and configure field visibility per role.`,component:`roles`},{id:`permissions`,label:`Permissions`,icon:(0,p.jsx)(f.LockOutlined,{}),heading:`Permissions`,desc:`Manage module-wise action permissions (view, add, edit, delete, and more) per role.`,component:`permissions`},{id:`templates`,label:`Templates`,icon:(0,p.jsx)(f.FileTextOutlined,{}),heading:`Templates`,desc:`Email and signature templates for communications`,component:`templates`},{id:`ai-services`,label:`AI Services`,icon:(0,p.jsx)(f.ThunderboltOutlined,{}),heading:`AI Services`,desc:`Register the AI/automation backends (base URL + auth) that admin-configured AI Actions call.`,component:`ai-services`},{id:`bgc-integration`,label:`Integrations`,icon:(0,p.jsx)(f.SafetyOutlined,{}),heading:`Integrations`,desc:`Manage manual and API integrations used across application workflows.`,component:`bgc-integration`}]},{group:`Clients`,items:[{id:`clients`,label:`Clients`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Clients`,desc:`Manage client accounts and settings`,cards:[{label:`Clients`,icon:(0,p.jsx)(f.BankOutlined,{}),desc:`Manage client companies and account details.`}]}]},{group:`Forms`,items:[{id:`form-groups`,label:`Form Groups`,icon:(0,p.jsx)(f.AppstoreAddOutlined,{}),heading:`Form Groups`,desc:`Define field groups for module add/edit forms with validations and dropdown sources.`,component:`form-groups`},{id:`detail-groups`,label:`Detail Groups`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),heading:`Detail Groups`,desc:`Customize the detail view per module: labels, prefix/suffix, colour, capitalization, reference lookups and merged fields.`,component:`detail-groups`},{id:`row-actions`,label:`Actions`,icon:(0,p.jsx)(f.ToolOutlined,{}),heading:`Actions`,desc:`Configure which action buttons appear per row in each module's list view, scoped per role.`,component:`row-actions`}]},{group:`Master`,items:[{id:`jobs`,label:`Jobs`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),heading:`Jobs Master`,desc:`Configure job sources and status types`,cards:[{label:`Sources`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Manage job source master values.`},{label:`Job Status`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),desc:`Configure job workflow status.`}]},{id:`candidates`,label:`Candidates`,icon:(0,p.jsx)(f.UserOutlined,{}),heading:`Candidates Master`,desc:`Skills, sources and work authorization settings`,cards:[{label:`Sources`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Manage candidate source values.`},{label:`Skills`,icon:(0,p.jsx)(f.SettingOutlined,{}),desc:`Manage skill master data.`},{label:`Work Authorization`,icon:(0,p.jsx)(f.SafetyOutlined,{}),desc:`Manage visa and authorization types.`}]},{id:`submissions`,label:`Submissions`,icon:(0,p.jsx)(f.FileTextOutlined,{}),heading:`Submissions Master`,desc:`Rejection reasons and submission status configuration`,cards:[{label:`Rejection Reasons`,icon:(0,p.jsx)(f.FileTextOutlined,{}),desc:`Manage common rejection reasons.`},{label:`Client Submission Status`,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),desc:`Manage client submission statuses.`}]},{id:`clientmaster`,label:`Client Master`,icon:(0,p.jsx)(f.BankOutlined,{}),heading:`Client Master`,desc:`Payment terms, client types and contact types`,cards:[{label:`Payment Terms`,icon:(0,p.jsx)(f.FileTextOutlined,{}),desc:`Manage billing and payment terms.`},{label:`Client Type`,icon:(0,p.jsx)(f.AppstoreOutlined,{}),desc:`Classify client business types.`},{label:`Client Contact Type`,icon:(0,p.jsx)(f.TeamOutlined,{}),desc:`Manage client contact categories.`}]}]}],dM=[{label:`Sourced`,count:312,color:`#378ADD`,pct:35},{label:`Screened`,count:223,color:`#7F77DD`,pct:25},{label:`Interview`,count:161,color:`#1D9E75`,pct:18},{label:`Offered`,count:107,color:`#EF9F27`,pct:12},{label:`Rejected`,count:89,color:`#E24B4A`,pct:10}],fM=[{name:`Tcs`,jobs:14,candidates:86},{name:`Empasis`,jobs:9,candidates:64},{name:`NovaSystems`,jobs:7,candidates:51},{name:`Brightwave`,jobs:5,candidates:38}],pM=[{text:`New candidate Ravi Kumar added to Java Developer role`,time:`2 min ago`,color:`#378ADD`},{text:`Submission approved by Acme Corp for Sr. React Dev`,time:`18 min ago`,color:`#1D9E75`},{text:`User Priya S. added to Recruiters team`,time:`1 hr ago`,color:`#7F77DD`},{text:`Job Data Analyst — TechFlow moved to archived`,time:`3 hr ago`,color:`#EF9F27`},{text:`Candidate rejected — work authorization mismatch`,time:`5 hr ago`,color:`#E24B4A`}];function mM(){return(0,p.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:16},children:[(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.DashboardOutlined,{}),title:`Admin Dashboard`,children:[(0,p.jsx)(`div`,{className:`admin-accent-bar`}),(0,p.jsx)(lM,{level:5,children:`Admin Dashboard`}),(0,p.jsx)(cM,{type:`secondary`,children:`Overview of jobs, candidates, onboarding and recent activity`})]}),(0,p.jsx)(`div`,{className:`admin-dashboard-stats`,children:(0,p.jsx)(Sj,{stats:[{label:`Total Jobs`,value:1697,icon:`fileText`},{label:`Active Jobs`,value:1685,icon:`checkCircle`},{label:`My Jobs`,value:600,icon:`user`},{label:`Total Candidates`,value:4320,icon:`team`},{label:`Submissions`,value:892,icon:`fileText`}]})}),(0,p.jsxs)(`div`,{className:`admin-dashboard-mid-row`,children:[(0,p.jsx)(sM,{}),(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Candidate Pipeline`,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12},children:`By stage (892 total)`}),(0,p.jsx)(`div`,{className:`admin-pipeline-bar`,children:dM.map(e=>(0,p.jsx)(`div`,{className:`admin-pipeline-seg`,style:{width:`${e.pct}%`,background:e.color}},e.label))}),(0,p.jsx)(`div`,{className:`admin-pipeline-legend`,children:dM.map(e=>(0,p.jsxs)(`div`,{className:`admin-pipeline-legend-item`,children:[(0,p.jsx)(`span`,{className:`admin-pipeline-dot`,style:{background:e.color}}),e.label,` `,e.count]},e.label))}),(0,p.jsx)(`div`,{className:`admin-divider`}),(0,p.jsx)(cM,{strong:!0,style:{fontSize:12},children:`Submission status`}),(0,p.jsxs)(`div`,{className:`admin-sub-status-list`,style:{marginTop:6},children:[(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Pending client review`}),(0,p.jsx)(`span`,{className:`admin-badge warn`,children:`312`})]}),(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Client approved`}),(0,p.jsx)(`span`,{className:`admin-badge success`,children:`248`})]}),(0,p.jsxs)(`div`,{className:`admin-sub-status-item`,children:[(0,p.jsx)(cM,{style:{fontSize:13},children:`Rejected`}),(0,p.jsx)(`span`,{className:`admin-badge danger`,children:`89`})]})]})]})]}),(0,p.jsxs)(`div`,{className:`admin-dashboard-bottom-row`,children:[(0,p.jsx)(Y,{icon:(0,p.jsx)(f.BankOutlined,{}),title:`Top Clients`,extra:(0,p.jsx)(d.Button,{type:`link`,size:`small`,children:`View all`}),children:fM.map(e=>(0,p.jsxs)(`div`,{className:`admin-client-row`,children:[(0,p.jsxs)(`div`,{className:`admin-client-left`,children:[(0,p.jsx)(`div`,{className:`admin-client-icon`,children:(0,p.jsx)(f.BankOutlined,{})}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`admin-client-name`,children:e.name}),(0,p.jsxs)(`div`,{className:`admin-client-sub`,children:[e.jobs,` open jobs`]})]})]}),(0,p.jsxs)(`div`,{className:`admin-client-right`,children:[(0,p.jsx)(`div`,{className:`admin-client-val`,children:e.candidates}),(0,p.jsx)(`div`,{className:`admin-client-sub`,children:`candidates`})]})]},e.name))}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.BellOutlined,{}),title:`Recent Activity`,children:pM.map((e,t)=>(0,p.jsxs)(`div`,{className:`admin-activity-row`,children:[(0,p.jsx)(`div`,{className:`admin-activity-dot`,style:{background:e.color}}),(0,p.jsxs)(`div`,{children:[(0,p.jsx)(`div`,{className:`admin-activity-text`,children:e.text}),(0,p.jsx)(`div`,{className:`admin-activity-time`,children:e.time})]})]},t))})]}),(0,p.jsx)(Y,{icon:(0,p.jsx)(f.SettingOutlined,{}),title:`Admin Configuration Overview`,extra:(0,p.jsx)(d.Button,{type:`link`,size:`small`,children:`Manage`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`Settings`}),[[`Organization`,2],[`User Settings`,4],[`Templates`,2]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsxs)(`span`,{className:`admin-badge info`,children:[t,` items`]})]},e))]}),(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`Master`}),[[`Jobs`,2],[`Candidates`,3],[`Submissions`,2]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsxs)(`span`,{className:`admin-badge info`,children:[t,` items`]})]},e))]}),(0,p.jsxs)(d.Col,{span:8,children:[(0,p.jsx)(cM,{type:`secondary`,style:{fontSize:12,fontWeight:500},children:`System`}),[[`Total Groups`,4],[`Total Modules`,9],[`Config Items`,19]].map(([e,t])=>(0,p.jsxs)(`div`,{className:`admin-cfg-overview-row`,children:[(0,p.jsx)(cM,{style:{fontSize:12},children:e}),(0,p.jsx)(cM,{strong:!0,style:{fontSize:12},children:t})]},e))]})]})})]})}function hM({activeSection:e,activeGroup:t,filteredCards:n,searchText:r,setSearchText:i,allItems:a,handleNav:o}){return(0,p.jsxs)(d.Row,{gutter:[16,16],children:[(0,p.jsx)(d.Col,{span:24,children:(0,p.jsxs)(Y,{icon:e?.icon,title:e?.heading,extra:(0,p.jsx)(d.Input,{className:`admin-search`,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search settings…`,allowClear:!0,value:r,onChange:e=>i(e.target.value)}),children:[(0,p.jsx)(`div`,{className:`admin-accent-bar`}),(0,p.jsx)(lM,{level:5,children:e?.heading}),(0,p.jsx)(cM,{type:`secondary`,children:e?.desc})]})}),(0,p.jsx)(d.Col,{xs:24,xl:16,style:{alignSelf:`flex-start`},children:(0,p.jsx)(Y,{icon:(0,p.jsx)(f.AppstoreOutlined,{}),title:`Configuration Items`,extra:(0,p.jsxs)(cM,{type:`secondary`,children:[n.length,` item`,n.length===1?``:`s`]}),children:(0,p.jsx)(d.Row,{gutter:[14,14],children:n.length>0?n.map(e=>(0,p.jsx)(d.Col,{xs:24,sm:12,xl:8,children:(0,p.jsxs)(`div`,{className:`admin-config-item`,children:[(0,p.jsx)(`div`,{className:`admin-config-top-bar`}),(0,p.jsxs)(`div`,{className:`admin-config-body`,children:[(0,p.jsx)(`div`,{className:`admin-config-icon`,children:e.icon}),(0,p.jsxs)(`div`,{className:`admin-config-text`,children:[(0,p.jsx)(`span`,{className:`admin-config-label`,children:e.label}),(0,p.jsx)(`span`,{className:`admin-config-desc`,children:e.desc})]})]}),(0,p.jsx)(`div`,{className:`admin-config-divider`}),(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`admin-config-manage`,icon:(0,p.jsx)(f.RightOutlined,{}),iconPosition:`end`,children:`Manage`})]})},e.label)):(0,p.jsx)(d.Col,{span:24,children:(0,p.jsx)(`div`,{className:`admin-config-empty`,children:(0,p.jsx)(d.Empty,{description:`No settings found`,image:d.Empty.PRESENTED_IMAGE_SIMPLE})})})})})}),(0,p.jsx)(d.Col,{xs:24,xl:8,style:{alignSelf:`flex-start`},children:(0,p.jsxs)(Y,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`Section Overview`,children:[(0,p.jsx)(`div`,{className:`admin-overview-list`,children:uM.filter(e=>e.group!==`Dashboard`).map(e=>{let n=e.group===t?.group;return(0,p.jsxs)(`div`,{className:`admin-overview-item${n?` active`:``}`,onClick:()=>{let t=e.items[0];t&&o(t.id)},children:[(0,p.jsxs)(`div`,{className:`admin-overview-left`,children:[(0,p.jsx)(`div`,{className:`admin-overview-icon`,children:e.items[0]?.icon}),(0,p.jsxs)(`div`,{className:`admin-overview-text`,children:[(0,p.jsx)(`span`,{className:`admin-overview-name`,children:e.group}),(0,p.jsxs)(`span`,{className:`admin-overview-sub`,children:[e.items.length,` module`,e.items.length===1?``:`s`]})]})]}),(0,p.jsx)(`span`,{className:`admin-overview-count${n?` active`:``}`,children:e.items.length})]},e.group)})}),(0,p.jsxs)(`div`,{className:`admin-overview-footer`,children:[(0,p.jsx)(`span`,{className:`admin-overview-footer-label`,children:`Total configuration items`}),(0,p.jsx)(`span`,{className:`admin-overview-footer-value`,children:a.filter(e=>e.cards).reduce((e,t)=>e+t.cards.length,0)})]})]})})]})}function gM(){let[e,t]=(0,u.useState)(`dashboard`),[n,r]=(0,u.useState)(``),i=(0,u.useMemo)(()=>uM.flatMap(e=>e.items),[]),a=(0,u.useMemo)(()=>i.find(t=>t.id===e),[i,e]),o=(0,u.useMemo)(()=>uM.find(t=>t.items.some(t=>t.id===e)),[e]),s=(0,u.useMemo)(()=>{if(!a?.cards)return[];let e=n.trim().toLowerCase();return e?a.cards.filter(t=>t.label.toLowerCase().includes(e)||t.desc.toLowerCase().includes(e)):a.cards},[a,n]),c=(0,u.useMemo)(()=>uM.map(e=>({key:e.group,type:`group`,label:e.group,children:e.items.map(e=>({key:e.id,icon:e.icon,label:e.label}))})),[]),l=e=>{t(e),r(``)};return e===`dashboard`||a?.heading,(0,p.jsxs)(`main`,{className:`admin-page`,children:[(0,p.jsx)(`div`,{className:`admin-breadcrumb`,children:(0,p.jsx)(d.Breadcrumb,{items:[{title:(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(f.HomeOutlined,{}),` Home`]})},{title:`Admin`}]})}),(0,p.jsxs)(d.Row,{gutter:[16,16],className:`admin-wrapper`,children:[(0,p.jsx)(d.Col,{xs:24,lg:6,xl:5,children:(0,p.jsxs)(Y,{title:`Admin Console`,icon:(0,p.jsx)(f.SettingOutlined,{}),children:[(0,p.jsxs)(`div`,{className:`admin-sidebar-banner`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-banner-title`,children:`Admin Panel`}),(0,p.jsx)(`span`,{className:`admin-sidebar-banner-sub`,children:`Configuration Center`}),(0,p.jsxs)(d.Row,{gutter:[8,0],children:[(0,p.jsx)(d.Col,{span:12,children:(0,p.jsxs)(`div`,{className:`admin-sidebar-pill`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-pill-label`,children:`Groups`}),(0,p.jsx)(`span`,{className:`admin-sidebar-pill-value`,children:uM.length})]})}),(0,p.jsx)(d.Col,{span:12,children:(0,p.jsxs)(`div`,{className:`admin-sidebar-pill`,children:[(0,p.jsx)(`span`,{className:`admin-sidebar-pill-label`,children:`Modules`}),(0,p.jsx)(`span`,{className:`admin-sidebar-pill-value`,children:i.length})]})})]})]}),(0,p.jsx)(d.Menu,{mode:`inline`,selectedKeys:[e],items:c,onClick:({key:e})=>l(e),className:`admin-sidebar-menu`})]})}),(0,p.jsx)(d.Col,{xs:24,lg:18,xl:19,children:e===`dashboard`?(0,p.jsx)(mM,{}):a?.component===`form-groups`?(0,p.jsx)(Py,{}):a?.component===`detail-groups`?(0,p.jsx)(Db,{}):a?.component===`row-actions`?(0,p.jsx)(Nx,{}):a?.component===`users`?(0,p.jsx)(Ej,{}):a?.component===`teams`?(0,p.jsx)(Mj,{}):a?.component===`roles`?(0,p.jsx)(Xj,{}):a?.component===`permissions`?(0,p.jsx)(rM,{}):a?.component===`templates`?(0,p.jsx)(Gx,{}):a?.component===`ai-services`?(0,p.jsx)(Yx,{}):a?.component===`bgc-integration`?(0,p.jsx)(fS,{}):(0,p.jsx)(hM,{activeSection:a,activeGroup:o,filteredCards:s,searchText:n,setSearchText:r,allItems:i,handleNav:l})})]})]})}var{Title:_M}=d.Typography;function vM(){let e=(0,h.useNavigate)(),{state:t}=(0,h.useLocation)(),n=t?.moduleName||`stickyNotes`,r=t?.title||`Sticky Notes`,i={...t?.request,params:{...t?.request?.params,limit:200,offset:0}};return(0,p.jsxs)(`div`,{children:[(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.ArrowLeftOutlined,{}),onClick:()=>e(-1),style:{marginBottom:12},children:`Back`}),(0,p.jsx)(It,{moduleName:n,title:r,columns:4,request:i,viewAll:!1})]})}var{Text:yM,Title:bM}=d.Typography,xM=10485760,SM=`/templates/test_cases_flow_template.base64.txt`,CM=`test_cases_flow_template.xlsx`,wM=`module | subModule | step_order | description | actions | key | value | expected | scenario`,TM={idle:0,module_set:1,encoding:1,validating:2,preview:3,inserting:3,done:4,error:1},EM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Bulk upload`,href:`/bulk-upload`}];function DM(e){return new Promise((t,n)=>{let r=new FileReader;r.onload=()=>t(String(r.result).split(`,`)[1]),r.onerror=n,r.readAsDataURL(e)})}function OM(e){return e.filter(e=>e.row_status===`valid`).map(e=>{let t={...e};return delete t.row_status,delete t.errors,t})}function kM(e){return e.flatMap(e=>(e.errors??[]).map(t=>({id:e.id,...t})))}function AM({errors:e}){return(0,p.jsx)(`div`,{className:`bulk-tooltip-errors`,children:(e??[]).map((e,t)=>(0,p.jsx)(`div`,{children:e.message},`${e.field}-${t}`))})}function jM({errors:e,expanded:t,onToggle:n,onSummaryClick:r}){return e.length===0?null:(0,p.jsxs)(`div`,{className:`bulk-error-banner`,children:[(0,p.jsxs)(`div`,{className:`bulk-error-summary`,children:[(0,p.jsxs)(`button`,{type:`button`,className:`bulk-error-summary-main`,onClick:r,"aria-label":`Scroll to first invalid row`,children:[(0,p.jsx)(f.ExclamationCircleOutlined,{className:`bulk-error-icon`}),(0,p.jsxs)(`span`,{children:[e.length,` validation error(s) found`]})]}),(0,p.jsx)(d.Button,{type:`link`,onClick:n,"aria-expanded":t,children:t?`Hide Errors`:`View Errors`})]}),t&&(0,p.jsx)(`div`,{className:`bulk-error-list`,role:`region`,"aria-label":`Validation error details`,children:e.map((e,t)=>(0,p.jsxs)(`div`,{className:`bulk-error-line`,children:[(0,p.jsxs)(`span`,{className:`bulk-row-chip`,children:[`Row `,e.id]}),(0,p.jsx)(`span`,{children:e.message})]},`${e.id}-${e.field}-${t}`))})]})}function MM({rows:e,view:t,onViewChange:n,onConfirm:r,onReset:i,saving:a,firstInvalidRowId:o,firstInvalidRowRef:s}){let c=e.filter(e=>e.row_status===`invalid`),l=t===`errors`?c:e,u=c.length>0||a;return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(d.Row,{justify:`space-between`,align:`middle`,gutter:[16,16],className:`bulk-table-toolbar`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space.Compact,{children:[(0,p.jsx)(d.Button,{type:t===`all`?`primary`:`default`,onClick:()=>n(`all`),children:`All rows`}),(0,p.jsx)(d.Button,{type:t===`errors`?`primary`:`default`,onClick:()=>n(`errors`),children:`Errors only`})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsxs)(yM,{type:`secondary`,children:[e.length,` row(s)`]})})]}),(0,p.jsx)(`div`,{className:`bulk-table-wrap`,children:(0,p.jsxs)(`table`,{className:`bulk-preview-table`,children:[(0,p.jsx)(`thead`,{children:(0,p.jsxs)(`tr`,{children:[(0,p.jsx)(`th`,{className:`bulk-col-row`,children:`Row`}),(0,p.jsx)(`th`,{className:`bulk-col-flow`,children:`Submodule`}),(0,p.jsx)(`th`,{className:`bulk-col-description`,children:`Description`}),(0,p.jsx)(`th`,{className:`bulk-col-keyword`,children:`Action`}),(0,p.jsx)(`th`,{className:`bulk-col-target`,children:`Key`}),(0,p.jsx)(`th`,{className:`bulk-col-status`,children:`Status`}),(0,p.jsx)(`th`,{className:`bulk-col-error`,children:`Error`})]})}),(0,p.jsx)(`tbody`,{children:l.map(e=>{let t=e.errors??[],n=e.row_status===`invalid`;return(0,p.jsxs)(`tr`,{ref:n&&e.id===o?s:null,className:n?`bulk-row-invalid`:``,children:[(0,p.jsx)(`td`,{children:e.id}),(0,p.jsx)(`td`,{title:e.submodule,children:e.submodule}),(0,p.jsx)(`td`,{title:e.description,children:e.description?e.description:(0,p.jsx)(`span`,{className:`bulk-empty-text`,children:`-empty-`})}),(0,p.jsx)(`td`,{children:(0,p.jsx)(`code`,{className:`bulk-code-chip`,children:e.actions})}),(0,p.jsx)(`td`,{title:e.key,children:e.key}),(0,p.jsx)(`td`,{children:n?(0,p.jsx)(d.Tag,{color:`red`,children:`Error`}):(0,p.jsx)(d.Tag,{color:`green`,children:`Valid`})}),(0,p.jsx)(`td`,{children:n?(0,p.jsx)(d.Tooltip,{title:(0,p.jsx)(AM,{errors:t}),placement:`left`,children:(0,p.jsxs)(`button`,{type:`button`,className:`bulk-error-info`,"aria-label":`View ${t.length} error(s) for row ${e.id}`,children:[(0,p.jsx)(f.InfoCircleOutlined,{}),(0,p.jsx)(d.Badge,{count:t.length,size:`small`})]})}):(0,p.jsx)(`span`,{className:`bulk-error-none`,children:`-`})})]},`${e.id}-${e.step_order}`)})})]})}),(0,p.jsxs)(d.Space,{className:`bulk-actions`,children:[(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:i,children:`Reset`}),(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.SaveOutlined,{}),loading:a,disabled:u,onClick:r,children:c.length>0?`Fix ${c.length} error(s) to proceed`:`Save to database`})]})]})}function NM(){let e=(0,h.useNavigate)(),r=(0,u.useMemo)(()=>t.l(),[]),i=(0,u.useRef)(null),a=(0,u.useRef)(null),[o,s]=(0,u.useState)([]),[c,l]=(0,u.useState)(``),[m,g]=(0,u.useState)(`idle`),[_,v]=(0,u.useState)(!1),[y,b]=(0,u.useState)(null),[x,S]=(0,u.useState)([]),[C,w]=(0,u.useState)(`all`),[T,E]=(0,u.useState)(null),[D,O]=(0,u.useState)(null),[k,A]=(0,u.useState)(!1),j=o.map(e=>({value:e.modulename,label:e.modulename})),M=kM(x),N=m===`encoding`||m===`validating`,P=!!c&&!N,F=TM[m]??0,I=x.find(e=>e.row_status===`invalid`)?.id,L=(0,u.useCallback)(()=>{l(``),g(`idle`),v(!1),b(null),S([]),w(`all`),E(null),O(null),i.current&&(i.current.value=``)},[]);(0,u.useEffect)(()=>{async function e(){try{let e=await eh({project:r?.name??``,activeOnly:!0});s(e?.items??[])}catch(e){console.error(e),d.message.error(`Unable to load modules.`)}}e()},[r?.name]);let R=e=>{l(e??``),S([]),O(null),E(null),b(null),A(!1),g(e?`module_set`:`idle`)},z=async e=>{if(!e||!P)return;let t=e.name.split(`.`).pop()?.toLowerCase();if(![`xlsx`,`csv`].includes(t)){g(`module_set`),E({message:`Invalid file type. Please upload an Excel .xlsx or CSV .csv file.`});return}if(e.size>xM){g(`module_set`),E({message:`File must be 10 MB or smaller.`});return}E(null),S([]),O(null),b({name:e.name,size:e.size}),g(`encoding`);try{let n=await DM(e);g(`validating`);let i=await Ym({filename:e.name,project:r?.name??``,module:c,file_base64:n,file_type:t});S(i?.rows??[]),w(`all`),g(`preview`)}catch(e){console.error(e),E(e.payload??{code:`NETWORK_ERROR`,message:e.message||`Could not reach the server.`}),g(`error`)}},B=async()=>{try{let e=await fetch(SM);if(!e.ok)throw Error(`Template file not found (${e.status})`);let t=(await e.text()).trim(),n=atob(t),r=new Uint8Array(n.length);for(let e=0;e<n.length;e+=1)r[e]=n.charCodeAt(e);let i=new Blob([r],{type:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`}),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=CM,document.body.appendChild(o),o.click(),o.remove(),URL.revokeObjectURL(a),d.message.success(`Sample template downloaded.`)}catch(e){console.error(e),d.message.error(`Unable to download sample template.`)}},V=async()=>{g(`inserting`),E(null);try{let t=await Xm({project:r?.name??``,module:c,uploaded_by:localStorage.getItem(`user_Email`)??``,rows:OM(x)});O(t),g(`done`),d.message.success(`Bulk upload saved. Redirecting to view test cases...`),window.setTimeout(()=>e(`/viewTestCase`),900)}catch(e){console.error(e),E(e.payload??{code:`NETWORK_ERROR`,message:e.message||`Could not reach the server.`}),g(`preview`)}},H=(0,u.useCallback)(()=>{a.current?.scrollIntoView({behavior:`smooth`,block:`center`})},[]),U=[`bulk-dropzone`,_?`bulk-dropzone-dragging`:``,y?`bulk-dropzone-has-file`:``,T&&m!==`preview`?`bulk-dropzone-error`:``,c?``:`bulk-dropzone-disabled`].filter(Boolean).join(` `);return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:EM})}),r?.name&&(0,p.jsx)(d.Col,{children:(0,p.jsx)(yM,{strong:!0,children:r.name})})]}),(0,p.jsxs)(`div`,{className:`zt-page zt-page-wide bulk-page`,children:[(0,p.jsxs)(`div`,{className:`bulk-header`,children:[(0,p.jsx)(bM,{level:3,children:`Bulk upload test cases`}),(0,p.jsxs)(d.Space,{direction:`vertical`,size:4,children:[(0,p.jsx)(yM,{type:`secondary`,children:wM}),(0,p.jsx)(yM,{type:`secondary`,children:`Use the sample template for the required columns. Uploaded rows are saved as Active by default.`})]})]}),(0,p.jsx)(`div`,{className:`bulk-stepbar`,children:[`Select`,`Upload`,`Validate`,`Save`].map((e,t)=>(0,p.jsxs)(`span`,{className:t<F?`bulk-step-active`:``,children:[t+1,` `,e]},e))}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:`1. Module selector`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,className:`bulk-module-select`,placeholder:`Choose a module`,options:j,value:c||void 0,onChange:R})}),c&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`2. File upload`,extra:(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.DownloadOutlined,{}),onClick:B,children:`Download Sample Template`}),children:[(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`First time uploading?`,description:`Download the sample template, keep the column names unchanged, fill your test steps, and upload either .xlsx or .csv.`,className:`bulk-inline-alert`}),(0,p.jsxs)(`button`,{type:`button`,className:U,disabled:!P,onClick:()=>i.current?.click(),onDragOver:e=>{e.preventDefault(),P&&v(!0)},onDragLeave:()=>v(!1),onDrop:e=>{e.preventDefault(),v(!1),z(e.dataTransfer.files?.[0])},children:[(0,p.jsx)(f.CloudUploadOutlined,{className:`bulk-upload-icon`}),y?(0,p.jsxs)(`span`,{className:`bulk-file-chip`,children:[y.name,` - `,Math.ceil(y.size/1024),` KB`]}):(0,p.jsx)(`span`,{children:`Drag & drop here, or click to browse`})]}),(0,p.jsx)(`input`,{ref:i,hidden:!0,type:`file`,accept:`.xlsx,.csv`,onChange:e=>z(e.target.files?.[0])}),N&&(0,p.jsx)(d.Progress,{percent:m===`encoding`?45:82,showInfo:!1,size:`small`}),T&&m!==`preview`&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:T.message,className:`bulk-inline-alert`})]}),x.length>0&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`3. Validation result`,children:[(0,p.jsx)(jM,{errors:M,expanded:k,onToggle:()=>A(e=>!e),onSummaryClick:H}),T&&m===`preview`&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:T.message,className:`bulk-inline-alert`}),(0,p.jsx)(MM,{rows:x,view:C,onViewChange:w,onConfirm:V,onReset:L,saving:m===`inserting`,firstInvalidRowId:I,firstInvalidRowRef:a})]}),D&&m===`done`&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:`4. Upload complete`,children:[(0,p.jsxs)(d.Row,{gutter:[16,16],className:`bulk-metrics`,children:[(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Total`}),(0,p.jsx)(`strong`,{children:x.length})]})}),(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Inserted`}),(0,p.jsx)(`strong`,{children:D.inserted??0})]})}),(0,p.jsx)(d.Col,{xs:24,md:8,children:(0,p.jsxs)(`div`,{children:[(0,p.jsx)(yM,{children:`Failed`}),(0,p.jsx)(`strong`,{children:D.failed??0})]})})]}),(0,p.jsx)(d.Alert,{type:`success`,showIcon:!0,icon:(0,p.jsx)(f.CheckCircleOutlined,{}),message:`${D.inserted??0} test cases saved to database - module: ${c}`,className:`bulk-inline-alert`}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:L,children:`Upload another file`})]})]})]})}var PM=[{value:`navigate`,label:`Navigate`},{value:`fill`,label:`Fill`},{value:`click`,label:`Click`},{value:`select`,label:`Select`},{value:`press_key`,label:`Press Key`},{value:`type_and_select`,label:`Type and Select`},{value:`type_and_select_modal`,label:`Type and Select (Modal)`},{value:`upload_file`,label:`Upload File`},{value:`check_checkbox`,label:`Check Checkbox`},{value:`check_filter_checkbox`,label:`Check Filter Checkbox`},{value:`select_page_size`,label:`Select Page Size`},{value:`check_n_checkboxes`,label:`Check N Checkboxes`},{value:`store_text`,label:`Store Text`},{value:`reset_session`,label:`Reset Session`},{value:`switch_to_new_tab`,label:`Switch To New Tab`},{value:`close_tab`,label:`Close Tab`},{value:`assert_visible`,label:`Assert Visible`},{value:`assert_hidden`,label:`Assert Hidden`},{value:`assert_text`,label:`Assert Text`},{value:`assert_url`,label:`Assert URL`},{value:`assert_body_contains`,label:`Assert Body Contains`},{value:`assert_button_disabled`,label:`Assert Button Disabled`},{value:`assert_field_error`,label:`Assert Field Error`},{value:`assert_field_accepted`,label:`Assert Field Accepted`},{value:`assert_children_disabled`,label:`Assert Children Disabled`},{value:`assert_children_visible`,label:`Assert Children Visible`},{value:`assert_element_count`,label:`Assert Element Count`},{value:`assert_toast`,label:`Assert Toast`},{value:`assert_toast_success`,label:`Assert Toast Success`},{value:`assert_toast_error`,label:`Assert Toast Error`},{value:`wait_for_visible`,label:`Wait For Visible`},{value:`wait_for_hidden`,label:`Wait For Hidden`},{value:`wait_for_text`,label:`Wait For Text`}],{Text:FM}=d.Typography,IM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/test-cases`}],LM={tags:`regression`,active:1},RM={module:{dbName:`Modules`,formField:`module`,label:`Module`}};function zM(e=[]){return e.map(e=>({value:e,label:e}))}function BM(e=``){return String(e??``).trim()}function VM(e=``){return BM(e).toLowerCase()}function HM(e=[]){let t=new Map;return e.forEach(e=>{let n=BM(e?.flow),r=n.toLowerCase();n&&!t.has(r)&&t.set(r,n)}),Array.from(t.values()).map(e=>({value:e,label:e}))}function UM(e=[],t,n){let r=BM(t).toLowerCase(),i=BM(n).toLowerCase();return e.reduce((e,t)=>{let n=BM(t?.module).toLowerCase(),a=BM(t?.flow).toLowerCase();if(n!==r||a!==i)return e;let o=Number(t?.step_order)||0;return Math.max(e,o)},0)+1}function WM({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(FM,{strong:!0,className:`v1-section-label`,children:t})]})}function GM(){let[e]=d.Form.useForm(),[t]=d.Form.useForm(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(!1),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)({open:!1,typeKey:`module`}),[b,x]=(0,u.useState)(!1),[S,C]=(0,u.useState)(!1),[w,T]=(0,u.useState)(!1),E=(0,h.useNavigate)(),D=RM[v.typeKey],O=(0,u.useMemo)(()=>zM(r),[r]),k=d.Form.useWatch(`module`,e),A=d.Form.useWatch(`flow`,e),j=!!BM(k),M=!!BM(A),N=!j,P=!j||!M,F=(e,t=[])=>{e===`module`&&i(t)},I=async()=>{m(!0);try{let e=await Wm(RM.module.dbName);i(e?.items??[])}catch(e){console.error(`Unable to load testing options:`,e),d.message.error(`Unable to load testing options.`)}finally{m(!1)}},L=(0,u.useCallback)(async t=>{let n=BM(t);if(o([]),c([]),e.setFieldsValue({step_order:void 0}),n){_(!0);try{let e=await Jm({limit:1e4,offset:0,module:n}),t=Array.isArray(e?.items)?e.items:[];o(t),c(HM(t))}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{_(!1)}}},[e]),R=(0,u.useCallback)(async(t,n,r)=>{let i=BM(t),a=BM(n);if(!i||!a){e.setFieldsValue({step_order:void 0});return}C(!0);try{e.setFieldsValue({step_order:UM(r,i,a)})}catch(e){console.error(`Unable to load step order:`,e),d.message.error(`Unable to load step order.`)}finally{C(!1)}},[e]);(0,u.useEffect)(()=>{Promise.resolve().then(I)},[]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>L(k))},[L,k]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>R(k,A,a))},[a,R,A,k]);let z=async t=>{let n={module:BM(t.module),flow:BM(t.flow),step_order:Number(t.step_order),description:BM(t.description),keyword:VM(t.keyword),target:BM(t.target),value:BM(t.value),expected:BM(t.expected),tags:t.tags?BM(t.tags):LM.tags,active:Number(t.active)};T(!0);try{await qm(n),d.message.success(`Test case details saved successfully.`),e.resetFields(),o([]),c([])}catch(e){console.error(`Unable to save test case:`,e),d.message.error(`Unable to save test case.`)}finally{T(!1)}},B=(t,n)=>{e.setFieldsValue({[t]:BM(n)})},V=t=>{e.setFieldsValue({module:BM(t),flow:void 0,step_order:void 0,keyword:void 0,description:void 0,target:void 0,tags:LM.tags,value:void 0,expected:void 0})},H=t=>{e.setFieldsValue({flow:BM(t),step_order:void 0})},U=e=>{let n=RM[e];y({open:!0,typeKey:e}),t.setFieldsValue({name:``,type:n.label})},W=()=>{y(e=>({...e,open:!1})),t.resetFields()},G=async()=>{try{let n=BM((await t.validateFields()).name),r=await Gm({name:n,type:D.dbName});F(v.typeKey,r?.items??[]),e.setFieldsValue({[D.formField]:n}),d.message.success(`${D.label} added successfully.`),W()}catch(e){if(e?.errorFields)return;console.error(`Unable to save testing option:`,e),d.message.error(`Unable to add ${D.label.toLowerCase()}.`)}finally{x(!1)}};return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:IM})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>E(`/zinnext-home`),children:`View Table`})})]}),(0,p.jsx)(`div`,{className:`v1-page`,children:(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,p.jsx)(`div`,{className:`v1-page-header`,children:(0,p.jsxs)(d.Space,{align:`center`,size:10,children:[(0,p.jsx)(f.ProfileOutlined,{className:`v1-outer-icon`}),(0,p.jsx)(`div`,{children:(0,p.jsx)(FM,{strong:!0,style:{fontSize:16},children:`Add Test Case`})})]})}),(0,p.jsx)(Y,{children:(0,p.jsxs)(d.Form,{form:e,className:`v1-form`,layout:`vertical`,colon:!1,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),initialValues:LM,onFinish:z,autoComplete:`off`,children:[(0,p.jsx)(d.Card,{className:`v1-card`,title:(0,p.jsx)(WM,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`Test Case Details`}),extra:(0,p.jsx)(FM,{type:`secondary`,className:`v1-card-subtitle`,children:`Module, flow, step order and execution data`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsxs)(d.Space.Compact,{style:{width:`100%`},children:[(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,style:{flex:1},children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,loading:l,optionFilterProp:`label`,placeholder:`Select module`,options:O,onChange:V})}),(0,p.jsx)(d.Button,{"aria-label":`Add module`,icon:(0,p.jsx)(f.PlusOutlined,{}),style:{marginTop:30},onClick:()=>U(`module`)})]})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Flow`,name:`flow`,children:(0,p.jsx)(d.AutoComplete,{maxLength:100,allowClear:!0,disabled:N,options:s,placeholder:g?`Loading flows`:`Enter flow`,onChange:H,filterOption:(e,t)=>t?.value?.toLowerCase().includes(e.toLowerCase())})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,validateTrigger:[`onBlur`,`onChange`],children:(0,p.jsx)(d.Input,{maxLength:10,disabled:!0,placeholder:S?`Loading step order`:`Step order`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`keyword`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,disabled:P,optionFilterProp:`label`,placeholder:`Select action`,options:PM,onChange:t=>e.setFieldsValue({keyword:VM(t)})})})}),(0,p.jsx)(d.Col,{xs:24,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:3,maxLength:255,disabled:P,placeholder:`Enter description`,showCount:!0,onBlur:e=>B(`description`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`target`,children:(0,p.jsx)(d.Input,{maxLength:255,disabled:P,placeholder:`Enter target`,onBlur:e=>B(`target`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Tags`,name:`tags`,children:(0,p.jsx)(d.Input,{maxLength:200,disabled:P,placeholder:`Enter tags`,prefix:(0,p.jsx)(f.TagsOutlined,{className:`v1-input-icon`}),onBlur:e=>B(`tags`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:P,placeholder:`Enter value`,onBlur:e=>B(`value`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:P,placeholder:`Enter expected result`,onBlur:e=>B(`expected`,e.target.value)})})})]})}),(0,p.jsx)(`div`,{className:`v1-form-actions`,children:(0,p.jsx)(d.Form.Item,{children:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:w,disabled:P,children:`Submit`}),(0,p.jsx)(d.Button,{onClick:()=>{e.resetFields(),o([]),c([])},children:`Reset`})]})})})]})}),(0,p.jsx)(d.Modal,{title:`Add ${D.label}`,open:v.open,confirmLoading:b,okText:`Add`,onCancel:W,onOk:()=>{x(!0),G()},destroyOnHidden:!0,children:(0,p.jsxs)(d.Form,{form:t,layout:`vertical`,colon:!1,className:`v1-form`,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),children:[(0,p.jsx)(d.Form.Item,{label:`Name`,name:`name`,children:(0,p.jsx)(d.Input,{maxLength:100,placeholder:`Enter ${D.label.toLowerCase()} name`,onBlur:e=>{t.setFieldsValue({name:BM(e.target.value)})}})}),(0,p.jsx)(d.Form.Item,{label:`Type`,name:`type`,children:(0,p.jsx)(d.Input,{disabled:!0})})]})})]})})]})}var{Text:KM}=d.Typography,qM=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`}];function JM(e=``){return String(e??``).trim()}function YM(e=[],t){return e.map(e=>({value:e.id,label:e[t]}))}var XM=[{label:`Step`,value:`step_order`,width:70},{label:`Action`,value:`actions`,width:140},{label:`Key`,value:`key`,width:160,ellipsis:!0},{label:`Value`,value:`value`,ellipsis:!0},{label:`Description`,value:`description`,ellipsis:!0},{label:`Scenario`,value:`scenario`,width:110,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`green`,children:`Positive`}):(0,p.jsx)(d.Tag,{color:`red`,children:`Negative`})}],ZM={key:!1,value:!1,expected:!1};function QM(e,t){return t?e[t]??ZM:ZM}function $M(e,t){e.setFields(t.map(e=>({name:e,errors:[]})))}function eN(){let[e]=d.Form.useForm(),r=(0,h.useNavigate)(),[i]=(0,h.useSearchParams)(),a=i.get(`edit`),o=!!a,s=(0,u.useMemo)(()=>t.l(),[]),[c,l]=(0,u.useState)([]),[m,g]=(0,u.useState)([]),[_,v]=(0,u.useState)([]),[y,b]=(0,u.useState)(PM),[x,S]=(0,u.useState)({}),[C,w]=(0,u.useState)(!1),[T,E]=(0,u.useState)(!1),[D,O]=(0,u.useState)(!1),[k,A]=(0,u.useState)(!1),[j,M]=(0,u.useState)(!1),N=d.Form.useWatch(`module`,e),P=d.Form.useWatch(`submodule`,e),F=d.Form.useWatch(`actions`,e),I=!!N,L=!!P,R=(0,u.useMemo)(()=>QM(x,F),[x,F]),z=(0,u.useMemo)(()=>YM(c,`modulename`),[c]),B=(0,u.useMemo)(()=>YM(m,`submodulename`),[m]),V=(0,u.useMemo)(()=>c.find(e=>e.id===N)?.modulename??``,[c,N]),H=(0,u.useMemo)(()=>m.find(e=>e.id===P)?.submodulename??``,[P,m]),U=(0,u.useCallback)(async()=>{try{let e=await Km();Array.isArray(e?.options)&&e.options.length>0&&b(e.options),e?.rules&&typeof e.rules==`object`&&S(e.rules)}catch(e){console.error(`Unable to load action field rules:`,e),d.message.error(`Unable to load action validation rules.`)}},[]),W=(0,u.useCallback)(async e=>{if(!e){l([]);return}w(!0);try{let t=await eh({project:e,activeOnly:!0});l(t?.items??[])}catch(e){console.error(`Unable to load modules:`,e),d.message.error(`Unable to load modules.`)}finally{w(!1)}},[]),G=(0,u.useCallback)(async(e,t)=>{if(!e||!t){g([]);return}E(!0);try{let n=await rh({project:e,module:t,activeOnly:!0});g(n?.items??[])}catch(e){console.error(`Unable to load submodules:`,e),d.message.error(`Unable to load submodules.`)}finally{E(!1)}},[]),ee=(0,u.useCallback)(async(t,n,r,i=``)=>{if(!t||!n||!r){v([]),e.setFieldsValue({step_order:void 0});return}O(!0);try{let[a,o]=await Promise.all([oh({product_parent_ID:t,module_parent_ID:n,submodule_parent_ID:r,actions:i,limit:1e3}),lh({product_parent_ID:t,module_parent_ID:n,submodule_parent_ID:r})]);v(a?.items??[]),e.setFieldsValue({step_order:o?.step_order??1})}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{O(!1)}},[e]),te=(0,u.useCallback)(async(e=``)=>{if(!(!s?.id||!N||!P)){O(!0);try{let t=await oh({product_parent_ID:s.id,module_parent_ID:N,submodule_parent_ID:P,actions:e,limit:1e3});v(t?.items??[])}catch(e){console.error(`Unable to load action flows:`,e),d.message.error(`Unable to load action steps.`)}finally{O(!1)}}},[s?.id,N,P]),ne=(0,u.useCallback)(async()=>{if(!(!a||!s?.name)){M(!0);try{let t=await ch(a);await G(s.name,t.module);let n=await oh({product_parent_ID:t.product_parent_ID,module_parent_ID:t.module_parent_ID,submodule_parent_ID:t.submodule_parent_ID,limit:1e3});v(n?.items??[]),e.setFieldsValue({module:t.module_parent_ID,submodule:t.submodule_parent_ID,step_order:t.step_order,actions:t.actions,key:t.key,value:t.value,expected:t.expected,description:t.description,scenario:t.scenario===1,active:Number(t.active)!==0})}catch(e){console.error(`Unable to load test flow:`,e),d.message.error(`Unable to load test flow for edit.`),r(`/viewTestCase`)}finally{M(!1)}}},[a,e,G,r,s?.name]);return(0,u.useEffect)(()=>{if(!s){r(`/select-project`,{replace:!0});return}Promise.resolve().then(async()=>{await U(),await W(s.name),a&&await ne()})},[s,r,U,W,a,ne]),s?(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:qM})}),(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(KM,{strong:!0,children:s.name})]})})]}),(0,p.jsx)(`div`,{className:`zt-page`,children:(0,p.jsxs)(d.Form,{form:e,layout:`vertical`,colon:!1,className:`v1-form`,initialValues:{scenario:!0,active:!0},onFinish:async t=>{let n={product_parent_ID:Number(s?.id),module_parent_ID:Number(t.module),submodule_parent_ID:Number(t.submodule),description:JM(t.description),actions:JM(t.actions),key:JM(t.key),value:JM(t.value),expected:JM(t.expected),scenario:+!!t.scenario,active:+!!t.active};A(!0);try{if(o){await uh(a,{...n,step_order:Number(t.step_order)}),d.message.success(`Test case updated successfully.`),r(`/viewTestCase`);return}await sh(n),d.message.success(`Step saved (#${t.step_order}).`),e.setFieldsValue({actions:void 0,key:void 0,value:void 0,expected:void 0,description:void 0}),await ee(n.product_parent_ID,n.module_parent_ID,n.submodule_parent_ID)}catch(e){console.error(`Unable to save test case:`,e),d.message.error(o?`Unable to update test case.`:`Unable to save step.`)}finally{A(!1)}},autoComplete:`off`,disabled:j,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:8,className:`zt-section-title`,children:[(0,p.jsx)(`span`,{className:`zt-step-tag`,children:`1`}),(0,p.jsx)(`span`,{children:`Module & Submodule`})]}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],align:`bottom`,children:[(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,loading:C,placeholder:`Select module`,options:z,onChange:t=>{let n=c.find(e=>e.id===t)?.modulename??``;e.setFieldsValue({module:t,submodule:void 0,step_order:void 0,actions:void 0,key:void 0,value:void 0,expected:void 0}),$M(e,[`actions`,`key`,`value`,`expected`]),g([]),v([]),G(s?.name,n)}})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Submodule`,name:`submodule`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,disabled:!I,loading:T,placeholder:I?`Select submodule`:`Select module first`,options:B,onChange:t=>{e.setFieldsValue({submodule:t,actions:void 0,key:void 0,value:void 0,expected:void 0}),$M(e,[`actions`,`key`,`value`,`expected`]),ee(s?.id,N,t)}})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Scenario`,name:`scenario`,valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{disabled:!L,checkedChildren:`Positive`,unCheckedChildren:`Negative`})})}),(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Active`,name:`active`,valuePropName:`checked`,children:(0,p.jsx)(d.Switch,{checkedChildren:`Active`,unCheckedChildren:`Inactive`})})})]})}),L&&(0,p.jsxs)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:8,className:`zt-section-title`,children:[(0,p.jsx)(`span`,{className:`zt-step-tag`,children:`2`}),(0,p.jsx)(f.FileTextOutlined,{}),(0,p.jsx)(`span`,{children:`Step Details`})]}),extra:(0,p.jsxs)(KM,{type:`secondary`,children:[V,` / `,H]}),children:[(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:6,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,children:(0,p.jsx)(d.Input,{disabled:!0,placeholder:D?`Loading…`:`Auto`})})}),(0,p.jsx)(d.Col,{xs:24,md:18,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`actions`,rules:[{required:!0,message:`Mandatory Field`}],children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:`Select action`,options:y,onChange:t=>{let n=QM(x,t);e.setFieldsValue({actions:t,key:n.key?e.getFieldValue(`key`):void 0,value:n.value?e.getFieldValue(`value`):void 0,expected:n.expected?e.getFieldValue(`expected`):void 0}),$M(e,[`key`,`value`,`expected`]),te(t||``)}})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`key`,rules:[{required:R.key,message:`Key is required for this action`}],children:(0,p.jsx)(d.Input,{maxLength:255,disabled:F&&!R.key,placeholder:F?R.key?`Required — Enter selector / locator`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,rules:[{required:R.value,message:`Value is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:1,autoSize:{minRows:1,maxRows:4},disabled:F&&!R.value,placeholder:F?R.value?`Required — Enter value`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,rules:[{required:R.expected,message:`Expected result is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:2,disabled:F&&!R.expected,placeholder:F?R.expected?`Required — Enter expected result`:`Not needed for this action`:`Select an action first`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:2,maxLength:255,showCount:!0,placeholder:`Enter description`})})})]}),(0,p.jsxs)(d.Space,{className:`zt-actions`,children:[(0,p.jsx)(d.Button,{onClick:()=>{if(o){r(`/viewTestCase`);return}e.resetFields(),g([]),v([]),E(!1),O(!1)},children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:k||j,children:o?`Update Test Case`:`Save & Continue`})]})]},`${N}-${P}`),L&&(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.TableOutlined,{}),(0,p.jsx)(`span`,{children:`Added Steps`})]}),extra:(0,p.jsx)(d.Tag,{children:F?`${_.length} ${F} step(s)`:`${_.length} step(s)`}),children:(0,p.jsx)(tl,{listName:`Added Steps`,loading:D,fields:XM,dataSource:_,current:1,pageSize:Math.max(_.length,1),total:_.length,rowSelection:!1,className:`zt-list-plain zt-list-static`})})]})})]}):null}var{Text:tN}=d.Typography,nN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Manage Modules`,href:`/manageModules`}];function rN(){let e=(0,h.useNavigate)(),r=(0,u.useMemo)(()=>t.l(),[]),[i,a]=(0,u.useState)([]),[o,s]=(0,u.useState)({}),[c,l]=(0,u.useState)(!1),[m,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(1),[C,w]=(0,u.useState)(10),T=(0,u.useCallback)(async e=>{if(!e){a([]);return}l(!0);try{let[t,n]=await Promise.all([eh({project:e}),rh({project:e})]);a(t?.items??[]);let r={};(n?.items??[]).forEach(e=>{let t=e.modulename;r[t]=(r[t]??0)+1}),s(r)}catch(e){console.error(e),d.message.error(`Unable to load modules.`)}finally{l(!1)}},[]);(0,u.useEffect)(()=>{if(!r){e(`/select-project`,{replace:!0});return}Promise.resolve().then(()=>T(r.name))},[r,e,T]);let E=async(e,t)=>{try{await nh(e.id,+!!t),a(n=>n.map(n=>n.id===e.id?{...n,active:+!!t}:n)),d.message.success(`Module ${t?`activated`:`deactivated`}.`)}catch(e){console.error(e),d.message.error(`Unable to update module status.`)}},D=async()=>{let e=_.trim();if(!e){d.message.warning(`Enter a module name.`);return}b(!0);try{await th({project:r.name,modulename:e}),d.message.success(`Module added.`),g(!1),v(``),S(1),T(r.name)}catch(e){console.error(e),d.message.error(`Unable to add module (maybe it already exists).`)}finally{b(!1)}},O=t=>{e(`/test-cases/zinnext/submodules?module=${encodeURIComponent(t.modulename)}`)};return r?(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:nN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/addTestCase`),children:`Back to Form`})})]}),(0,p.jsxs)(`div`,{className:`zt-page`,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-bar`,children:(0,p.jsxs)(d.Row,{gutter:[16,16],align:`middle`,justify:`space-between`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(`span`,{children:`Project:`}),(0,p.jsx)(tN,{strong:!0,children:r.name})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>g(!0),children:`Add Module`})})]})}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Modules`})]}),children:(0,p.jsx)(tl,{listName:`Modules`,loading:c,fields:[{label:`Module`,value:`modulename`},{label:`Submodules`,value:`submoduleCount`,width:140,render:(e,t)=>(0,p.jsxs)(d.Button,{type:`link`,className:`zt-count-link`,onClick:()=>O(t),children:[o[t.modulename]??0,` submodule(s)`]})},{label:`Active`,value:`active`,width:120,render:(e,t)=>(0,p.jsx)(d.Switch,{checked:e===1,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:e=>E(t,e)})}],dataSource:i,current:x,pageSize:C,total:i.length,onPageChange:S,onPageSizeChange:e=>{S(1),w(e)},rowSelection:!1,className:`zt-list-plain`})})]}),(0,p.jsx)(d.Modal,{title:`Add Module`,open:m,confirmLoading:y,okText:`Add`,onOk:D,onCancel:()=>{g(!1),v(``)},destroyOnHidden:!0,children:(0,p.jsxs)(d.Space,{direction:`vertical`,className:`zt-modal-stack`,children:[(0,p.jsxs)(tN,{type:`secondary`,children:[`Project: `,(0,p.jsx)(`b`,{children:r.name})]}),(0,p.jsx)(d.Input,{placeholder:`Enter module name`,maxLength:100,value:_,onChange:e=>v(e.target.value),onPressEnter:D})]})})]}):null}var{Text:iN}=d.Typography,aN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Manage Modules`,href:`/manageModules`},{label:`Manage Submodules`,href:`/test-cases/zinnext/submodules`}];function oN(){let e=(0,h.useNavigate)(),[r]=(0,h.useSearchParams)(),i=(0,u.useMemo)(()=>t.l(),[]),a=r.get(`module`)??``,[o,s]=(0,u.useState)([]),[c,l]=(0,u.useState)(!1),[m,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),[y,b]=(0,u.useState)(!1),[x,S]=(0,u.useState)(1),[C,w]=(0,u.useState)(10),T=(0,u.useCallback)(async(e,t)=>{if(!e||!t){s([]);return}l(!0);try{let n=await rh({project:e,module:t});s(n?.items??[])}catch(e){console.error(e),d.message.error(`Unable to load submodules.`)}finally{l(!1)}},[]);(0,u.useEffect)(()=>{if(!i){e(`/select-project`,{replace:!0});return}if(!a){e(`/manageModules`,{replace:!0});return}Promise.resolve().then(()=>T(i.name,a))},[i,a,e,T]);let E=async(e,t)=>{try{await ah(e.id,+!!t),s(n=>n.map(n=>n.id===e.id?{...n,active:+!!t}:n)),d.message.success(`Submodule ${t?`activated`:`deactivated`}.`)}catch(e){console.error(e),d.message.error(`Unable to update submodule status.`)}},D=async()=>{let e=_.trim();if(!e){d.message.warning(`Enter a submodule name.`);return}b(!0);try{await ih({project:i.name,modulename:a,submodulename:e}),d.message.success(`Submodule added.`),g(!1),v(``),S(1),T(i.name,a)}catch(e){console.error(e),d.message.error(`Unable to add submodule (maybe it already exists).`)}finally{b(!1)}};return!i||!a?null:(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:aN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/manageModules`),children:`Back to Modules`})})]}),(0,p.jsxs)(`div`,{className:`zt-page`,children:[(0,p.jsx)(d.Card,{className:`v1-card zt-bar`,children:(0,p.jsxs)(d.Row,{gutter:[16,16],align:`middle`,justify:`space-between`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsxs)(d.Space,{size:16,wrap:!0,className:`zt-section-title`,children:[(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(f.ProjectOutlined,{}),(0,p.jsx)(`span`,{children:`Project:`}),(0,p.jsx)(iN,{strong:!0,children:i.name})]}),(0,p.jsxs)(d.Space,{size:6,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Module:`}),(0,p.jsx)(iN,{strong:!0,children:a})]})]})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`primary`,icon:(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>g(!0),children:`Add Submodule`})})]})}),(0,p.jsx)(d.Card,{className:`v1-card zt-fall`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.AppstoreOutlined,{}),(0,p.jsx)(`span`,{children:`Submodules`})]}),children:(0,p.jsx)(tl,{listName:`Submodules`,loading:c,fields:[{label:`Submodule`,value:`submodulename`},{label:`Active`,value:`active`,width:120,render:(e,t)=>(0,p.jsx)(d.Switch,{checked:e===1,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:e=>E(t,e)})}],dataSource:o,current:x,pageSize:C,total:o.length,onPageChange:S,onPageSizeChange:e=>{S(1),w(e)},rowSelection:!1,className:`zt-list-plain`})})]}),(0,p.jsx)(d.Modal,{title:`Add Submodule`,open:m,confirmLoading:y,okText:`Add`,onOk:D,onCancel:()=>{g(!1),v(``)},destroyOnHidden:!0,children:(0,p.jsxs)(d.Space,{direction:`vertical`,className:`zt-modal-stack`,children:[(0,p.jsxs)(iN,{type:`secondary`,children:[`Project: `,(0,p.jsx)(`b`,{children:i.name}),` \xA0|\xA0 Module: `,(0,p.jsx)(`b`,{children:a})]}),(0,p.jsx)(d.Input,{placeholder:`Enter submodule name`,maxLength:100,value:_,onChange:e=>v(e.target.value),onPressEnter:D})]})})]})}var{Text:sN}=d.Typography,cN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/addTestCase`},{label:`Table`,href:`/viewTestCase`}];function lN(){let e=(0,h.useNavigate)(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)(0),[s,c]=(0,u.useState)(!1),l=(0,u.useMemo)(()=>t.l(),[]),[m,g]=(0,u.useState)(``),[_,v]=(0,u.useState)(1),[y,b]=(0,u.useState)(20),[x,S]=(0,u.useState)(null),C=(0,u.useCallback)(async(e={})=>{c(!0);try{let t=await oh({product_parent_ID:e.project??l?.id??``,search:e.search??m??``,limit:e.pageSize??y,offset:((e.page??_)-1)*(e.pageSize??y)});i(t?.items??[]),o(t?.total??0)}catch(e){console.error(e),d.message.error(`Unable to load test flows.`)}finally{c(!1)}},[l?.id,m,_,y]),w=e=>{d.Modal.confirm({title:`Delete Test Case`,icon:(0,p.jsx)(f.ExclamationCircleOutlined,{}),content:`Are you sure you want to delete this test case?`,okText:`Delete`,okButtonProps:{danger:!0,loading:x===e.id},cancelText:`Cancel`,async onOk(){S(e.id);try{await dh(e.id),d.message.success(`Test case deleted successfully.`);let t=r.length===1&&_>1?_-1:_;v(t),await C({page:t})}catch(e){throw console.error(`Unable to delete test flow:`,e),d.message.error(`Unable to delete test case.`),e}finally{S(null)}}})};return(0,u.useEffect)(()=>{Promise.resolve().then(()=>{if(!l?.id){e(`/select-project`,{replace:!0});return}C({page:1})})},[]),(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:cN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>e(`/addTestCase`),children:`Back to Form`})})]}),(0,p.jsx)(`div`,{className:`zt-page zt-page-wide`,children:(0,p.jsxs)(d.Card,{className:`v1-card`,title:(0,p.jsxs)(d.Space,{size:6,className:`zt-section-title`,children:[(0,p.jsx)(f.TableOutlined,{}),(0,p.jsx)(`span`,{children:`Test Flows`})]}),extra:(0,p.jsxs)(sN,{type:`secondary`,children:[a,` row(s)`]}),children:[(0,p.jsxs)(d.Space,{wrap:!0,className:`zt-toolbar`,children:[(0,p.jsx)(d.Input.Search,{allowClear:!0,className:`zt-search-filter`,placeholder:`Search module / key / description`,value:m,onChange:e=>g(e.target.value),onSearch:()=>{v(1),C({page:1})}}),(0,p.jsx)(d.Button,{icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>C(),children:`Refresh`})]}),(0,p.jsx)(tl,{listName:`Test Flows`,loading:s,fields:[{label:`Actions`,value:`rowActions`,width:112,fixed:`left`,sorter:!1,render:(t,n)=>(0,p.jsxs)(d.Space,{size:4,className:`zt-row-actions`,children:[(0,p.jsx)(d.Tooltip,{title:`Edit`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.EditOutlined,{}),onClick:()=>e(`/addTestCase?edit=${n.id}`)})}),(0,p.jsx)(d.Tooltip,{title:`Delete`,children:(0,p.jsx)(d.Button,{danger:!0,type:`text`,size:`small`,icon:(0,p.jsx)(f.DeleteOutlined,{}),loading:x===n.id,onClick:()=>w(n)})})]})},{label:`ID`,value:`id`,width:70,fixed:`left`},{label:`Project`,value:`project`,width:130},{label:`Module`,value:`module`,width:130},{label:`Submodule`,value:`submodule`,width:140},{label:`Step`,value:`step_order`,width:70},{label:`Action`,value:`actions`,width:140},{label:`Key`,value:`key`,width:160,ellipsis:!0},{label:`Value`,value:`value`,width:200,ellipsis:!0},{label:`Expected`,value:`expected`,width:180,ellipsis:!0},{label:`Description`,value:`description`,width:180,ellipsis:!0},{label:`Scenario`,value:`scenario`,width:110,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`green`,children:`Positive`}):(0,p.jsx)(d.Tag,{color:`red`,children:`Negative`})},{label:`Active`,value:`active`,width:90,render:e=>e===1?(0,p.jsx)(d.Tag,{color:`blue`,children:`Active`}):(0,p.jsx)(d.Tag,{children:`Inactive`})}],dataSource:r,current:_,pageSize:y,total:a,onPageChange:e=>{v(e),C({page:e})},onPageSizeChange:e=>{v(1),b(e),C({page:1,pageSize:e})},rowSelection:!1,className:`zt-list-plain`})]})})]})}var uN=[{label:`Home`,href:`/`},{label:`Test Cases`,href:`/test-cases`}];function dN(){return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsx)(n.Dt,{items:uN}),(0,p.jsx)(n.rt,{moduleName:`test-flows`,rowKey:`id`})]})}var{Text:fN}=d.Typography,pN=[{label:`Home`,href:`/`},{label:`LMS Cases`,href:`/lms-cases`}],mN={tags:`regression`,active:1},hN={module:{dbName:`Modules`,formField:`module`,label:`Module`}},gN={key:!1,value:!1,expected:!1};function _N(e,t){return t?e[t]??gN:gN}function vN(e,t){e.setFields(t.map(e=>({name:e,errors:[]})))}function yN(e=[]){return e.map(e=>({value:e,label:e}))}function bN(e=``){return String(e??``).trim()}function xN(e=[]){let t=new Map;return e.forEach(e=>{let n=bN(e?.flow),r=n.toLowerCase();n&&!t.has(r)&&t.set(r,n)}),Array.from(t.values()).map(e=>({value:e,label:e}))}function SN(e=[],t,n){let r=bN(t).toLowerCase(),i=bN(n).toLowerCase();return e.reduce((e,t)=>{let n=bN(t?.module).toLowerCase(),a=bN(t?.flow).toLowerCase();if(n!==r||a!==i)return e;let o=Number(t?.step_order)||0;return Math.max(e,o)},0)+1}function CN({icon:e,title:t}){return(0,p.jsxs)(d.Space,{size:10,align:`center`,children:[(0,p.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,p.jsx)(fN,{strong:!0,className:`v1-section-label`,children:t})]})}function wN(){let[e]=d.Form.useForm(),[t]=d.Form.useForm(),[r,i]=(0,u.useState)([]),[a,o]=(0,u.useState)([]),[s,c]=(0,u.useState)([]),[l,m]=(0,u.useState)(PM),[g,_]=(0,u.useState)({}),[v,y]=(0,u.useState)(!1),[b,x]=(0,u.useState)(!1),[S,C]=(0,u.useState)({open:!1,typeKey:`module`}),[w,T]=(0,u.useState)(!1),[E,D]=(0,u.useState)(!1),[O,k]=(0,u.useState)(!1),A=(0,h.useNavigate)(),j=hN[S.typeKey],M=(0,u.useMemo)(()=>yN(r),[r]),N=d.Form.useWatch(`module`,e),P=d.Form.useWatch(`flow`,e),F=d.Form.useWatch(`keyword`,e),I=!!bN(N),L=!!bN(P),R=!I,z=!I||!L,B=(0,u.useMemo)(()=>_N(g,F),[g,F]),V=(e,t=[])=>{e===`module`&&i(t)},H=async()=>{y(!0);try{let e=await Wm(hN.module.dbName);i(e?.items??[])}catch(e){console.error(`Unable to load testing options:`,e),d.message.error(`Unable to load testing options.`)}finally{y(!1)}},U=async()=>{try{let e=await Km();Array.isArray(e?.options)&&e.options.length>0&&m(e.options),e?.rules&&typeof e.rules==`object`&&_(e.rules)}catch(e){console.error(`Unable to load action field rules:`,e),d.message.error(`Unable to load action validation rules.`)}},W=(0,u.useCallback)(async t=>{let n=bN(t);if(o([]),c([]),e.setFieldsValue({step_order:void 0}),n){x(!0);try{let e=await Qm({limit:1e4,offset:0,module:n}),t=Array.isArray(e?.items)?e.items:[];o(t),c(xN(t))}catch(e){console.error(`Unable to load flows:`,e),d.message.error(`Unable to load flows.`)}finally{x(!1)}}},[e]),G=(0,u.useCallback)(async(t,n,r)=>{let i=bN(t),a=bN(n);if(!i||!a){e.setFieldsValue({step_order:void 0});return}D(!0);try{e.setFieldsValue({step_order:SN(r,i,a)})}catch(e){console.error(`Unable to load step order:`,e),d.message.error(`Unable to load step order.`)}finally{D(!1)}},[e]);(0,u.useEffect)(()=>{Promise.resolve().then(async()=>{await Promise.all([H(),U()])})},[]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>W(N))},[W,N]),(0,u.useEffect)(()=>{Promise.resolve().then(()=>G(N,P,a))},[a,G,P,N]);let ee=async t=>{let n={module:bN(t.module),flow:bN(t.flow),step_order:Number(t.step_order),description:bN(t.description),keyword:bN(t.keyword),target:bN(t.target),value:bN(t.value),expected:bN(t.expected),tags:t.tags?bN(t.tags):mN.tags,active:Number(t.active)};k(!0);try{await Zm(n),d.message.success(`LMS case details saved successfully.`),e.resetFields(),o([]),c([])}catch(e){console.error(`Unable to save LMS case:`,e),d.message.error(`Unable to save LMS case.`)}finally{k(!1)}},te=(t,n)=>{e.setFieldsValue({[t]:bN(n)})},ne=t=>{e.setFieldsValue({module:bN(t),flow:void 0,step_order:void 0,keyword:void 0,description:void 0,target:void 0,tags:mN.tags,value:void 0,expected:void 0}),vN(e,[`keyword`,`target`,`value`,`expected`])},re=t=>{e.setFieldsValue({flow:bN(t),step_order:void 0,keyword:void 0,target:void 0,value:void 0,expected:void 0}),vN(e,[`keyword`,`target`,`value`,`expected`])},ie=t=>{let n=_N(g,t);e.setFieldsValue({keyword:bN(t),target:n.key?e.getFieldValue(`target`):void 0,value:n.value?e.getFieldValue(`value`):void 0,expected:n.expected?e.getFieldValue(`expected`):void 0}),vN(e,[`target`,`value`,`expected`])},ae=e=>{let n=hN[e];C({open:!0,typeKey:e}),t.setFieldsValue({name:``,type:n.label})},oe=()=>{C(e=>({...e,open:!1})),t.resetFields()},se=async()=>{try{let n=bN((await t.validateFields()).name),r=await Gm({name:n,type:j.dbName});V(S.typeKey,r?.items??[]),e.setFieldsValue({[j.formField]:n}),d.message.success(`${j.label} added successfully.`),oe()}catch(e){if(e?.errorFields)return;console.error(`Unable to save testing option:`,e),d.message.error(`Unable to add ${j.label.toLowerCase()}.`)}finally{T(!1)}};return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsxs)(d.Row,{align:`middle`,justify:`space-between`,className:`breadcrumb-action-wrapper`,children:[(0,p.jsx)(d.Col,{children:(0,p.jsx)(n.Dt,{items:pN})}),(0,p.jsx)(d.Col,{children:(0,p.jsx)(d.Button,{type:`link`,onClick:()=>A(`/lms-home`),children:`View Table`})})]}),(0,p.jsx)(`div`,{className:`v1-page`,children:(0,p.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,p.jsx)(`div`,{className:`v1-page-header`,children:(0,p.jsxs)(d.Space,{align:`center`,size:10,children:[(0,p.jsx)(f.ProfileOutlined,{className:`v1-outer-icon`}),(0,p.jsx)(`div`,{children:(0,p.jsx)(fN,{strong:!0,style:{fontSize:16},children:`Add LMS Case`})})]})}),(0,p.jsx)(Y,{children:(0,p.jsxs)(d.Form,{form:e,className:`v1-form`,layout:`vertical`,colon:!1,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),initialValues:mN,onFinish:ee,autoComplete:`off`,children:[(0,p.jsx)(d.Card,{className:`v1-card`,title:(0,p.jsx)(CN,{icon:(0,p.jsx)(f.FileTextOutlined,{}),title:`LMS Case Details`}),extra:(0,p.jsx)(fN,{type:`secondary`,className:`v1-card-subtitle`,children:`Module, flow, step order and execution data`}),children:(0,p.jsxs)(d.Row,{gutter:[24,0],children:[(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsxs)(d.Space.Compact,{style:{width:`100%`},children:[(0,p.jsx)(d.Form.Item,{label:`Module`,name:`module`,style:{flex:1},children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,loading:v,optionFilterProp:`label`,placeholder:`Select module`,options:M,onChange:ne})}),(0,p.jsx)(d.Button,{"aria-label":`Add module`,icon:(0,p.jsx)(f.PlusOutlined,{}),style:{marginTop:30},onClick:()=>ae(`module`)})]})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Flow`,name:`flow`,children:(0,p.jsx)(d.AutoComplete,{maxLength:100,allowClear:!0,disabled:R,options:s,placeholder:b?`Loading flows`:`Enter flow`,onChange:re,filterOption:(e,t)=>t?.value?.toLowerCase().includes(e.toLowerCase())})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Step Order`,name:`step_order`,validateTrigger:[`onBlur`,`onChange`],children:(0,p.jsx)(d.Input,{maxLength:10,disabled:!0,placeholder:E?`Loading step order`:`Step order`})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Action`,name:`keyword`,children:(0,p.jsx)(d.Select,{allowClear:!0,showSearch:!0,disabled:z,optionFilterProp:`label`,placeholder:`Select action`,options:l,onChange:ie})})}),(0,p.jsx)(d.Col,{xs:24,children:(0,p.jsx)(d.Form.Item,{label:`Description`,name:`description`,children:(0,p.jsx)(d.Input.TextArea,{rows:3,maxLength:255,disabled:z,placeholder:`Enter description`,showCount:!0,onBlur:e=>te(`description`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Key`,name:`target`,rules:[{required:B.key,message:`Key is required for this action`}],children:(0,p.jsx)(d.Input,{maxLength:255,disabled:z||!!F&&!B.key,placeholder:z?`Select module and flow first`:F?B.key?`Required — Enter selector / locator`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`target`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Tags`,name:`tags`,children:(0,p.jsx)(d.Input,{maxLength:200,disabled:z,placeholder:`Enter tags`,prefix:(0,p.jsx)(f.TagsOutlined,{className:`v1-input-icon`}),onBlur:e=>te(`tags`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Value`,name:`value`,rules:[{required:B.value,message:`Value is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:z||!!F&&!B.value,placeholder:z?`Select module and flow first`:F?B.value?`Required — Enter value`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`value`,e.target.value)})})}),(0,p.jsx)(d.Col,{xs:24,md:12,children:(0,p.jsx)(d.Form.Item,{label:`Expected`,name:`expected`,rules:[{required:B.expected,message:`Expected result is required for this action`}],children:(0,p.jsx)(d.Input.TextArea,{rows:4,disabled:z||!!F&&!B.expected,placeholder:z?`Select module and flow first`:F?B.expected?`Required — Enter expected result`:`Not needed for this action`:`Select an action first`,onBlur:e=>te(`expected`,e.target.value)})})})]})}),(0,p.jsx)(`div`,{className:`v1-form-actions`,children:(0,p.jsx)(d.Form.Item,{children:(0,p.jsxs)(d.Space,{children:[(0,p.jsx)(d.Button,{type:`primary`,htmlType:`submit`,loading:O,disabled:z,children:`Submit`}),(0,p.jsx)(d.Button,{onClick:()=>{e.resetFields(),o([]),c([])},children:`Reset`})]})})})]})}),(0,p.jsx)(d.Modal,{title:`Add ${j.label}`,open:S.open,confirmLoading:w,okText:`Add`,onCancel:oe,onOk:()=>{T(!0),se()},destroyOnHidden:!0,children:(0,p.jsxs)(d.Form,{form:t,layout:`vertical`,colon:!1,className:`v1-form`,requiredMark:(e,{required:t})=>(0,p.jsxs)(p.Fragment,{children:[e,t&&(0,p.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),children:[(0,p.jsx)(d.Form.Item,{label:`Name`,name:`name`,children:(0,p.jsx)(d.Input,{maxLength:100,placeholder:`Enter ${j.label.toLowerCase()} name`,onBlur:e=>{t.setFieldsValue({name:bN(e.target.value)})}})}),(0,p.jsx)(d.Form.Item,{label:`Type`,name:`type`,children:(0,p.jsx)(d.Input,{disabled:!0})})]})})]})})]})}var TN=[{label:`Home`,href:`/`},{label:`LMS Cases`,href:`/lms-cases`}];function EN(){return(0,p.jsxs)(`main`,{className:`jobs-list-page`,children:[(0,p.jsx)(n.Dt,{items:TN}),(0,p.jsx)(n.rt,{moduleName:`lms-flows`,rowKey:`id`})]})}var DN=[`referenceId`,`ReferenceId`,`candidateId`,`CandidateId`,`entityId`,`EntityId`,`id`,`Id`,`_id`];function ON(e=DN){return function(t){if(!t||typeof t!=`object`)return``;for(let n of e){let e=t[n];if(e!=null&&e!==``)return String(e)}return``}}function kN(e,t=DN){if(!e||typeof e!=`object`)return[];let n=[];for(let r of t){let t=e[r];t!=null&&t!==``&&n.push(String(t))}return n}var AN=ON();function jN(e){return typeof e==`function`?e:typeof e==`string`?ON([e]):Array.isArray(e)?ON(e):AN}function MN(e,t,n){return!t||typeof t!=`object`?e:{...t,...e,id:e?.id??t?.id??n}}function NN(e,t,n={}){return{status:`success`,total:t,data:{data:e,...n}}}var PN=[`fields`,`fieldConfig`,`tabs`,`tabField`,`actionRules`,`actions`,`columnActions`];function FN(e){let t=e?.data??e,n={};for(let r of PN){let i=e?.[r]??t?.[r];i==null||Array.isArray(i)&&i.length===0||(n[r]=i)}return n}var IN=e=>String(e??``).replace(/[^a-zA-Z0-9]/g,``).toLowerCase();function LN(e,t,n){let r=(Array.isArray(n)?n:[n]).map(IN).filter(Boolean),i=r.length?e.findIndex(e=>r.includes(IN(e?.value))||r.includes(IN(e?.label))):-1;if(i===-1)return[...e,...t];let a=Number(e[i]?.order),o=Number.isFinite(a)?t.map((e,n)=>e.order==null||e.order===``?{...e,order:a+(n+1)/(t.length+1)}:e):t;return[...e.slice(0,i+1),...o,...e.slice(i+1)]}var RN=(e,t)=>n.Ot(e,t).rows,zN=(e,t)=>{let{rows:r,total:i}=n.Ot(e,t);return{rows:r,total:i}};function BN(e,t){return function(n,r,i,a={}){return e(t??n,r,i,a)}}function VN(e){return!e||typeof e!=`object`||typeof(e.fetchByKeys??e.fetch??e.function)!=`function`?null:{...e,fetchByKeys:typeof e.fetchByKeys==`function`?e.fetchByKeys:null,fetch:typeof e.fetch==`function`?e.fetch:null,function:typeof e.function==`function`?e.function:null,extractRows:typeof e.extractRows==`function`?e.extractRows:RN,mergeRow:typeof e.mergeRow==`function`?e.mergeRow:MN,fetchById:typeof e.fetchById==`function`?e.fetchById:null}}function HN({fetchSecondaryByKeys:e,fetchSecondary:t,extractSecondaryRows:n,fetchSecondaryById:r,secondaryKey:i,mergeRow:a,secondaryFetchLimit:o}){return!e&&!t&&!r?[]:[VN({key:i,fetchByKeys:e?(t,n,r)=>e(t,n,r):null,function:t?({moduleName:e,options:n})=>t(e,o,0,n):null,extractRows:n,fetchById:r,mergeRow:a})].filter(Boolean)}function UN(e){if(typeof e==`function`)return t=>{let n=e(t);return n==null||n===``?[]:[String(n)]};let t=typeof e==`string`?[e]:Array.isArray(e)&&e.length?e:DN;return e=>kN(e,t)}function WN(e,t){let n=new Map;return e.forEach(e=>{for(let r of t(e))n.has(r)||n.set(r,e)}),n}function GN({moduleName:e,limit:t,offset:n,options:r,keys:i,primaryResponse:a,primaryRows:o,pageRows:s,total:c,source:l}){return{moduleName:e,limit:t,offset:n,options:r,keys:i,primaryResponse:a,primaryRows:o,pageRows:s,total:c,source:l}}async function KN(e,t){if(typeof e.args==`function`){let n=e.args(t);return(e.fetch??e.function??e.fetchByKeys)(...Array.isArray(n)?n:[n])}if(Array.isArray(e.args))return(e.fetch??e.function??e.fetchByKeys)(...e.args);if(e.fetchByKeys&&Array.isArray(t.keys))return e.fetchByKeys(t.moduleName,t.keys,t.options,t);let n=e.fetch??e.function;return typeof n==`function`?n(t):null}function qN({fetchPrimaryPage:e,extractPrimaryPage:t=zN,fetchSecondaryByKeys:n,joinSources:r=[],fetchPrimary:i,extractPrimaryRows:a=RN,fetchSecondary:o,extractSecondaryRows:s=RN,fetchSecondaryById:c,primaryKey:l,secondaryKey:u,mergeRow:d=MN,secondaryFetchLimit:f=200,extraFields:p=[],extraFieldsAfter:m}){let h=Array.isArray(r)&&r.length?r.map(VN).filter(Boolean):HN({fetchSecondaryByKeys:n,fetchSecondary:o,extractSecondaryRows:s,fetchSecondaryById:c,secondaryKey:u,mergeRow:d,secondaryFetchLimit:f}),g=0;async function _(e,t,n,r){if(!e.fetchById||!r)return null;try{let i=await e.fetchById(n,r);return i&&t(i).includes(String(r))?i:null}catch(e){return console.error(`[mergedListApi] per-id join lookup failed for "${r}"`,e),null}}async function v(e,t,n,r,i){if(!n)return e;let a=t.extractRows(n,r)??[],o=jN(t.primaryKey??l),s=UN(t.key),c=WN(a,s);return Promise.all(e.map(async e=>{let n=o(e),a=c.get(n)??(i()?null:await _(t,s,r,n));return t.mergeRow(e,a,n)}))}async function y(e,t,n,r){let i=e;for(let e of t)i=await v(i,e.source,e.response,n,r);return i}function b(e,t,n){let r={};for(let e of n){if(!e)continue;let t=FN(e);for(let e of Object.keys(t))r[e]??(r[e]=t[e])}return p.length&&(r.fields=LN(r.fields??[],p,m)),NN(e,t,r)}async function x({moduleName:e,limit:t,offset:n,options:r,primaryResponse:i,primaryRows:a,pageRows:o,total:s}){return Promise.all(h.map(async c=>{try{let u=jN(c.primaryKey??l),d=[...new Set(o.map(u).filter(Boolean))];return c.fetchByKeys&&d.length===0?{source:c,response:null}:{source:c,response:await KN(c,GN({moduleName:e,limit:t,offset:n,options:r,keys:d,primaryResponse:i,primaryRows:a,pageRows:o,total:s,source:c}))}}catch(e){return console.error(`[mergedListApi] join fetch failed — rendering page without that join`,e),{source:c,response:null}}}))}async function S(n,r,i,a,o){let s=await e(n,r,i,a),c=t(s,n)??{},l=Array.isArray(c.rows)?c.rows:[],u=Number.isFinite(Number(c.total))?Number(c.total):l.length,d=await x({moduleName:n,limit:r,offset:i,options:a,primaryResponse:s,primaryRows:l,pageRows:l,total:u});return b(await y(l,d,n,o),u,[s,...d.map(e=>e.response)])}async function C(e,t,n,r,o){let s=await i(e,t,n,r),c=a(s,e)??[],l=c.length,u=c.slice(n,n+t),d=await x({moduleName:e,limit:t,offset:n,options:r,primaryResponse:s,primaryRows:c,pageRows:u,total:l});return b(await y(u,d,e,o),l,[s,...d.map(e=>e.response)])}return async function(t,n=10,r=0,i={}){let a=++g,o=()=>a!==g;return e?S(t,n,r,i,o):C(t,n,r,i,o)}}function JN(e,t,r={}){return qN({fetchPrimary:()=>UE(e,t),extractPrimaryRows:VE,fetchSecondary:n.Qt,fetchSecondaryById:WE,secondaryFetchLimit:r.moduleFetchLimit??200})}function YN(e){let t=String(e??``).trim().split(/[^a-zA-Z0-9]+/).filter(Boolean);return t.length?`${t.map((e,t)=>t===0?e.toLowerCase():e[0].toUpperCase()+e.slice(1).toLowerCase()).join(``)}Count`:``}function XN(e){let t=Array.isArray(e?.stages)?e.stages:[];if(!t.length)return e;let n={};for(let e of t){let t=YN(e?.stageName);t&&(n[t]=Number(e?.count)||0)}return{...n,...e}}var ZN=e=>{let t=Number(e?.targetSubmission??e?.targetSubmissions);return Number.isFinite(t)&&t>0?t:null};function QN({submittedCountField:e=`submittedCount`,progressField:t=`targetSubmissionProgress`}={}){return function(n,r,i){let a=MN(n,r,i),o=ZN(a);return o!=null&&(a[t]=`${Number(a?.[e])||0} of ${o}`),a}}function $N(e={}){let t=QN();return qN({primaryKey:`_id`,extraFields:e.extraFields,extraFieldsAfter:e.extraFieldsAfter,fetchPrimaryPage:n.Qt,joinSources:[{key:`entityId`,fetchByKeys:(e,t,n,r)=>{let i=Math.max(1,Number(r?.limit)||10);return HE(Math.floor((Number(r?.offset)||0)/i)+1,i)},extractRows:e=>(e?.items??[]).map(XN),mergeRow:(e,n,r)=>{let i=t(e,n,r);return n?._id&&(i.workflowId=n._id),i}}]})}async function eP(e,t=10,r=0,i={},a={}){let o=await $N(a)(e,t,r,i);return n.Ot(o,e)}async function tP(e,t,r,i=10,a=0,o={}){let s=await JN(e,t)(r,i,a,o);return n.Ot(s,r)}var nP=Object.freeze({OPTIONS:`options`,BOOLEAN:`boolean`,DATE:`date`,NUMBER_RANGE:`numberRange`,TEXT:`text`}),rP=Object.freeze([{label:`Yes`,value:`true`},{label:`No`,value:`false`}]);function iP(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function aP(e){return e.value??e.field??e.fieldName??e.name??e.label}function oP(e){let t=aP(e),n=String(e?.filterArrayValueField??``).trim();return n?`${t}.${n}`:t}function sP(e){let t=e?.isVisible??e?.is_visible??e?.visible;return t==null?!0:typeof t==`boolean`?t:typeof t==`string`?![`false`,`0`,`no`,`hide`,`hidden`].includes(t.toLowerCase()):!!t}function cP(e){switch(e?.filterInputType||(e?.type===`boolean`?`boolean`:null)||(e?.type===`date`?`datepicker`:null)||(e?.type===`number`?`number-range`:null)||`dropdown`){case`boolean`:return nP.BOOLEAN;case`datepicker`:return nP.DATE;case`number-range`:return nP.NUMBER_RANGE;case`text`:return nP.TEXT;default:return nP.OPTIONS}}function lP(e,t,n){if(String(e??``).trim().toLowerCase()!==`sourcecandidates`)return n;let r=String(aP(t)??``).trim().toLowerCase(),i=String(iP(t)??``).trim().toLowerCase();return[`firstname`,`candidatename`,`candidate_name`,`fullname`].includes(r)||i===`candidate name`?[`firstName`,`lastName`]:n.map(e=>{let t=String(e??``).trim();switch(t.toLowerCase()){case`customfields.diceprofiledata.firstname`:return`firstName`;case`customfields.diceprofiledata.lastname`:return`lastName`;default:return t}}).filter(Boolean)}function uP(e,t=``){let n=new Set;return(Array.isArray(e)?e:[]).filter(e=>e&&sP(e)).map(e=>{let n=lP(t,e,Array.isArray(e.filterGroupFields)?e.filterGroupFields:[]);return{key:aP(e),label:iP(e),filterField:oP(e),filterInputType:e.filterInputType,type:e.type,kind:cP(e),groupFields:n,fetchMeta:{dataSource:e.lookup?.collection?`lookup`:e.dataSource,groupName:e.groupName,lookup:e.lookup??null,groupFields:n,groupSeparator:e.filterGroupSeparator??` `,arrayLabelField:e.filterArrayLabelField??``,arrayValueField:e.filterArrayValueField??``}}}).filter(e=>{if(!e.key||!e.label)return!1;let t=String(e.key);return!n.has(t)&&(n.add(t),!0)})}function dP(e){return e!=null&&String(e).trim()!==``}var fP=new Set(Object.values(nP));function pP(e){let t=new Set;return(Array.isArray(e)?e:[]).filter(e=>e&&typeof e==`object`&&dP(e.key)).map(e=>{let t=fP.has(e.kind)?e.kind:nP.OPTIONS,n=Array.isArray(e.options)?e.options.map(e=>e&&typeof e==`object`?{value:e.value,label:String(e.label??e.value)}:{value:e,label:String(e)}).filter(e=>e.value!==void 0&&e.value!==null&&e.value!==``):null,r=t===nP.NUMBER_RANGE&&e.slider&&typeof e.slider==`object`?{min:Number.isFinite(Number(e.slider.min))?Number(e.slider.min):0,max:Number.isFinite(Number(e.slider.max))?Number(e.slider.max):100,step:Number(e.slider.step)>0?Number(e.slider.step):1,suffix:typeof e.slider.suffix==`string`?e.slider.suffix:``}:null;return{key:String(e.key),label:dP(e.label)?String(e.label):``,filterField:dP(e.field)?String(e.field):String(e.key),filterInputType:t===nP.TEXT?`text`:void 0,type:void 0,kind:t,groupFields:[],fetchMeta:{},host:!0,options:n,all:t===nP.OPTIONS&&dP(e.all)?String(e.all):``,slider:r&&r.max>r.min?r:null,placeholder:dP(e.placeholder)?String(e.placeholder):``,bare:e.bare===!0,more:e.more===!0,open:e.open!==!1}}).filter(e=>!e.label&&!e.bare||t.has(e.key)?!1:(t.add(e.key),!0))}function mP(e){let t=[],n=``;return(Array.isArray(e)?e:[]).forEach(e=>{if(e?.field===`$search`){typeof e.value==`string`&&e.value.trim()&&(n=e.value.trim());return}t.push(e)}),{filters:t,search:n}}function hP(e,t={},n={}){let r=[];return e.forEach(e=>{let i=t[e.key];if(i!=null){if(e.kind===nP.OPTIONS||e.kind===nP.BOOLEAN){let t=(Array.isArray(i)?i:[i]).filter(e=>e!=null&&e!==``);if(!t.length)return;let a=n[e.key]??{},o={};t.forEach(e=>{let t=a[String(e)];t!==void 0&&(o[String(e)]=t)}),r.push({operator:`and`,field:e.filterField,values:t,valueLabels:o,fieldLabel:e.label,filterInputType:e.filterInputType,groupFields:e.groupFields});return}if(e.kind===nP.DATE){let t=dP(i.from)?String(i.from):null,n=dP(i.to)?String(i.to):null;if(!t&&!n)return;r.push({operator:`and`,field:e.filterField,values:[t,n].filter(Boolean),from:t??void 0,to:n??void 0,fieldLabel:e.label,filterInputType:e.filterInputType});return}if(e.kind===nP.NUMBER_RANGE){let t=typeof i.min==`number`&&Number.isFinite(i.min)?i.min:null,n=typeof i.max==`number`&&Number.isFinite(i.max)?i.max:null;if(t===null&&n===null)return;r.push({operator:`and`,field:e.filterField,values:[t,n].filter(e=>e!=null),from:t==null?void 0:String(t),to:n==null?void 0:String(n),fieldLabel:e.label,filterInputType:e.filterInputType});return}if(e.kind===nP.TEXT){let t=typeof i==`string`?i.trim():``;if(!t)return;r.push({operator:`and`,field:e.filterField,value:t,values:[],fieldLabel:e.label,filterInputType:`text`})}}}),r}function gP(e,t=[]){let n={};return(Array.isArray(t)?t:[]).forEach(t=>{if(!t?.field)return;let r=e.find(e=>String(e.filterField)===String(t.field)||String(e.key)===String(t.field));if(r)switch(r.kind){case nP.OPTIONS:case nP.BOOLEAN:n[r.key]=Array.isArray(t.values)?[...t.values]:[];break;case nP.DATE:n[r.key]={from:t.from??null,to:t.to??null};break;case nP.NUMBER_RANGE:{let e=t.from!==void 0&&t.from!==null&&t.from!==``?Number(t.from):null,i=t.to!==void 0&&t.to!==null&&t.to!==``?Number(t.to):null;n[r.key]={min:Number.isFinite(e)?e:null,max:Number.isFinite(i)?i:null};break}case nP.TEXT:n[r.key]=typeof t.value==`string`?t.value:``}}),n}function _P(e){return(Array.isArray(e)?e:[]).filter(e=>e?.field).length}function vP(e){let t=(Array.isArray(e)?e:[]).filter(e=>e?.field).map(e=>({f:String(e.field),v:Array.isArray(e.values)?e.values.map(String).sort():[],a:e.from??null,b:e.to??null,t:e.value??null,k:e.filterInputType??null})).sort((e,t)=>e.f<t.f?-1:+(e.f>t.f));return JSON.stringify(t)}var yP=[`operator`,`field`,`values`,`from`,`to`,`value`,`filterInputType`,`groupFields`,`fieldLabel`,`valueLabels`],bP=50;function xP(e){let t=(Array.isArray(e)?e:[]).filter(e=>e?.field).slice(0,bP);return t.length?JSON.stringify(t.map(e=>{let t={};return yP.forEach(n=>{e[n]!==void 0&&(t[n]=e[n])}),t})):``}function SP(e){if(!e)return[];let t;try{t=JSON.parse(e)}catch{return[]}return Array.isArray(t)?t.slice(0,bP).filter(e=>e&&typeof e==`object`&&typeof e.field==`string`&&e.field.trim()!==``).map(e=>{let t={field:e.field,operator:e.operator===`or`?`or`:`and`};return t.values=Array.isArray(e.values)?e.values.filter(e=>[`string`,`number`,`boolean`].includes(typeof e)):[],[`from`,`to`,`value`,`filterInputType`,`fieldLabel`].forEach(n=>{typeof e[n]==`string`&&(t[n]=e[n])}),Array.isArray(e.groupFields)&&(t.groupFields=e.groupFields.filter(e=>typeof e==`string`)),e.valueLabels&&typeof e.valueLabels==`object`&&!Array.isArray(e.valueLabels)&&(t.valueLabels=Object.fromEntries(Object.entries(e.valueLabels).filter(([,e])=>typeof e==`string`))),t}):[]}var CP=[],wP=300;function TP({moduleName:e,view:t=``,scope:r=``,scopeConditions:i=CP,value:a=CP,onChange:o,title:s=`Filters`,collapsed:c=!1,onExpand:l,onCollapse:m,defaultExpandedCount:h=4,optionLimit:g=6,className:_=``,fields:v=null,optionCounts:y=null,moreLabel:b=`More Filters`}){let x=Array.isArray(v),{fields:S,loading:C,error:w}=n.Ut(x?``:e,{view:t}),T=x?JSON.stringify(v):``,E=(0,u.useMemo)(()=>T?pP(JSON.parse(T)):uP(S,e),[T,S,e]),D=!x&&C,O=x?null:w,k=E.map(e=>e.key).join(`|`),{valuesByField:A,loadingFields:j,fetchValues:M}=n.Tt(e),N=Array.isArray(i)&&i.length?JSON.stringify(i):``,P=(0,u.useMemo)(()=>N?{scopeConditions:JSON.parse(N)}:null,[N]),F=vP(a),[I,L]=(0,u.useState)(()=>gP(E,a)),[R,z]=(0,u.useState)(F),[B,V]=(0,u.useState)(`${F}#${k}`),H=`${F}#${k}`;H!==B&&(V(H),(B.split(`#`)[1]!==k||F!==R)&&(L(gP(E,a)),z(F)));let U=(0,u.useMemo)(()=>{let e={};return(Array.isArray(a)?a:[]).forEach(t=>{let n=E.find(e=>String(e.filterField)===String(t.field));n&&t.valueLabels&&(e[n.key]={...t.valueLabels})}),Object.entries(A).forEach(([t,n])=>{e[t]={...e[t]??{}},(n??[]).forEach(n=>{e[t][String(n.value)]=String(n.label??n.value)})}),e},[a,A,E]),W=(0,u.useRef)(null),G=(0,u.useRef)({draft:I,labelsByField:U,railFields:E,onChange:o});(0,u.useEffect)(()=>{G.current={draft:I,labelsByField:U,railFields:E,onChange:o}}),(0,u.useEffect)(()=>()=>clearTimeout(W.current),[]);let ee=(0,u.useCallback)(e=>{clearTimeout(W.current),W.current=null;let{labelsByField:t,railFields:n,onChange:r}=G.current,i=hP(n,e??G.current.draft,t);z(vP(i)),r?.(i)},[]),te=(0,u.useCallback)((e,t,{immediate:n=!1,deferred:r=!1}={})=>{let i={...G.current.draft,[e]:t};G.current={...G.current,draft:i},L(i),clearTimeout(W.current),W.current=null,!r&&(W.current=setTimeout(()=>ee(),n?0:wP))},[ee]),ne=(0,u.useCallback)(()=>{clearTimeout(W.current),L({}),G.current={...G.current,draft:{}},z(vP([])),G.current.onChange?.([])},[]),[re,ie]=(0,u.useState)(()=>new Set),[ae,oe]=(0,u.useState)(``);if(k&&ae!==k){oe(k);let e=new Set(x?E.filter(e=>e.bare||e.open&&!e.more).map(e=>e.key):E.slice(0,h).map(e=>e.key));E.forEach(t=>{I[t.key]!==void 0&&e.add(t.key)}),ie(e)}let se=(0,u.useRef)(new Set);(0,u.useEffect)(()=>{E.forEach(e=>{if(e.kind!==nP.OPTIONS||!re.has(e.key)||Array.isArray(e.options))return;let t=`${e.key}|${r}|${N}`;se.current.has(t)||(se.current.add(t),M(e.key,``,{...e.fetchMeta,scope:r,...P??{}}))})},[re,E,r,N,P,M]);let ce=e=>{ie(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},K=_P(a);return c?(0,p.jsx)(`aside`,{className:`cc-filter-rail cc-filter-rail--collapsed ${_}`.trim(),"aria-label":s,children:(0,p.jsx)(d.Tooltip,{title:K?`Show ${s.toLowerCase()} (${K} active)`:`Show ${s.toLowerCase()}`,placement:`right`,children:(0,p.jsx)(d.Button,{type:`text`,className:`cc-filter-rail__expand`,"aria-label":`Show ${s.toLowerCase()}`,"aria-expanded":!1,onClick:l,icon:(0,p.jsx)(d.Badge,{count:K,size:`small`,offset:[4,-4],children:(0,p.jsx)(f.DoubleRightOutlined,{})})})})}):(0,p.jsxs)(`aside`,{className:`cc-filter-rail ${_}`.trim(),"aria-label":s,children:[(0,p.jsxs)(`div`,{className:`cc-filter-rail__head`,children:[(0,p.jsxs)(`span`,{className:`cc-filter-rail__title`,children:[s,K>0&&(0,p.jsx)(`span`,{className:`cc-filter-rail__count`,children:K})]}),(0,p.jsxs)(`span`,{className:`cc-filter-rail__head-actions`,children:[(0,p.jsx)(d.Button,{type:`link`,size:`small`,onClick:ne,disabled:K===0&&Object.keys(I).length===0,children:`Clear All`}),m&&(0,p.jsx)(d.Tooltip,{title:`Hide ${s.toLowerCase()}`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,className:`cc-filter-rail__collapse`,icon:(0,p.jsx)(f.DoubleLeftOutlined,{}),"aria-label":`Hide ${s.toLowerCase()}`,"aria-expanded":!0,onClick:m})})]})]}),(0,p.jsxs)(`div`,{className:`cc-filter-rail__body`,children:[D&&E.length===0&&(0,p.jsxs)(`div`,{className:`cc-filter-rail__state`,children:[(0,p.jsx)(d.Spin,{size:`small`}),` `,(0,p.jsx)(`span`,{children:`Loading filters…`})]}),!D&&O&&(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`Filters could not be loaded`,description:String(O)}),!D&&!O&&E.length===0&&(0,p.jsx)(`div`,{className:`cc-filter-rail__state cc-filter-rail__state--muted`,children:`No filters are configured for this module. An administrator can add them under Configure → Filter.`}),E.map((e,t)=>{let n=re.has(e.key),i=I[e.key]!==void 0&&EP(e,I[e.key]),a=e.kind===nP.BOOLEAN?rP:e.options??A[e.key]??[],o=y&&typeof y==`object`?y[e.filterField]??y[e.key]??null:null,s=(0,p.jsx)(DP,{field:e,value:I[e.key],options:a,loading:j.has(e.key),labels:U[e.key]??{},optionLimit:g,counts:o,total:y?.total,onChange:(t,n)=>te(e.key,t,n),onCommit:()=>ee(),onSearch:t=>M(e.key,t,{...e.fetchMeta,scope:r,...P??{}})}),c=e.more&&!E.slice(0,t).some(e=>e.more);return e.bare?(0,p.jsx)(`div`,{className:`cc-filter-section cc-filter-section--bare`,children:s},e.key):(0,p.jsxs)(`section`,{className:`cc-filter-section${e.more?` cc-filter-section--more`:``}`,"data-first-more":c||void 0,children:[c&&(0,p.jsx)(`div`,{className:`cc-filter-rail__more-label`,children:b}),(0,p.jsxs)(`button`,{type:`button`,className:`cc-filter-section__toggle`,"aria-expanded":n,onClick:()=>ce(e.key),children:[(0,p.jsxs)(`span`,{className:`cc-filter-section__label`,children:[e.label,i&&(0,p.jsx)(`span`,{className:`cc-filter-section__dot`,"aria-label":`active`})]}),n?(0,p.jsx)(f.DownOutlined,{}):(0,p.jsx)(f.RightOutlined,{})]}),n&&(0,p.jsx)(`div`,{className:`cc-filter-section__content`,children:s})]},e.key)})]})]})}function EP(e,t){if(t==null)return!1;switch(e.kind){case nP.OPTIONS:case nP.BOOLEAN:return Array.isArray(t)&&t.length>0;case nP.DATE:return!!(t.from||t.to);case nP.NUMBER_RANGE:return t.min!=null||t.max!=null;case nP.TEXT:return typeof t==`string`&&t.trim()!==``;default:return!1}}function DP({field:e,value:t,options:n,loading:r,labels:i,optionLimit:a,counts:o,total:s,onChange:c,onCommit:l,onSearch:u}){if(e.kind===nP.DATE){let e=[t?.from?(0,m.default)(t.from):null,t?.to?(0,m.default)(t.to):null];return(0,p.jsx)(d.DatePicker.RangePicker,{size:`small`,allowEmpty:[!0,!0],value:e,onChange:e=>{let[t,n]=Array.isArray(e)?e:[null,null];c({from:t&&t.isValid()?t.format(`YYYY-MM-DD`):null,to:n&&n.isValid()?n.format(`YYYY-MM-DD`):null},{immediate:!0})},style:{width:`100%`}})}if(e.kind===nP.NUMBER_RANGE&&e.slider){let{min:n,max:r,step:i,suffix:a}=e.slider,o=t?.min??null,s=t?.max??null,l=(e,t)=>c({min:e===null||e<=n?null:e,max:t===null||t>=r?null:t}),u=e=>`${e}${a}`,f=e=>Number(String(e??``).replace(a,``).trim());return(0,p.jsxs)(`div`,{className:`cc-filter-range cc-filter-range--slider`,children:[(0,p.jsx)(d.Slider,{range:!0,min:n,max:r,step:i,value:[o??n,s??r],onChange:([e,t])=>l(e,t),tooltip:{formatter:u},"aria-label":e.label}),(0,p.jsxs)(`div`,{className:`cc-filter-range__boxes`,children:[(0,p.jsx)(d.InputNumber,{size:`small`,min:n,max:r,value:o??n,formatter:u,parser:f,onChange:e=>l(typeof e==`number`?e:null,s),"aria-label":`${e.label} minimum`}),(0,p.jsx)(d.InputNumber,{size:`small`,min:n,max:r,value:s??r,formatter:u,parser:f,onChange:e=>l(o,typeof e==`number`?e:null),"aria-label":`${e.label} maximum`})]})]})}if(e.kind===nP.NUMBER_RANGE){let n=t?.min??null,r=t?.max??null;return(0,p.jsxs)(`div`,{className:`cc-filter-range`,children:[(0,p.jsx)(d.InputNumber,{size:`small`,placeholder:`Min`,value:n,onChange:e=>c({min:typeof e==`number`?e:null,max:r}),"aria-label":`${e.label} minimum`}),(0,p.jsx)(`span`,{className:`cc-filter-range__sep`,children:`–`}),(0,p.jsx)(d.InputNumber,{size:`small`,placeholder:`Max`,value:r,onChange:e=>c({min:n,max:typeof e==`number`?e:null}),"aria-label":`${e.label} maximum`})]})}return e.kind===nP.TEXT?(0,p.jsx)(d.Input,{size:`small`,allowClear:!0,prefix:e.bare?(0,p.jsx)(f.SearchOutlined,{}):void 0,placeholder:e.placeholder||`Type keyword, press Enter`,value:typeof t==`string`?t:``,onChange:e=>{let t=e.target.value;t===``?c(``,{immediate:!0}):c(t,{deferred:!0})},onPressEnter:l,onBlur:l,"aria-label":e.label}):(0,p.jsx)(OP,{field:e,value:Array.isArray(t)?t:[],options:n,loading:r,labels:i,optionLimit:a,counts:o,total:s,searchable:e.kind===nP.OPTIONS&&!Array.isArray(e.options),onChange:c,onSearch:u})}function OP({field:e,value:t,options:n,loading:r,labels:i,optionLimit:a,counts:o=null,total:s,searchable:c,onChange:l,onSearch:m}){let[h,g]=(0,u.useState)(!1),[_,v]=(0,u.useState)(``),y=new Set(t.map(String)),b=new Set(n.map(e=>String(e.value))),x=t.filter(e=>!b.has(String(e))).map(e=>({value:e,label:i[String(e)]??String(e)})),S=[...x,...n],C=h?S:S.slice(0,Math.max(a,x.length)),w=S.length-C.length,T=e=>{let n=String(e);l(y.has(n)?t.filter(e=>String(e)!==n):[...t,e])};return(0,p.jsxs)(`div`,{className:`cc-filter-options`,children:[c&&(S.length>a||_)&&(0,p.jsx)(d.Input,{size:`small`,allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{}),placeholder:`Search ${String(e.label).toLowerCase()}…`,value:_,onChange:e=>{v(e.target.value),m(e.target.value)},className:`cc-filter-options__search`,"aria-label":`Search ${e.label}`}),r&&S.length===0?(0,p.jsx)(`div`,{className:`cc-filter-rail__state`,children:(0,p.jsx)(d.Spin,{size:`small`})}):S.length===0?(0,p.jsx)(`div`,{className:`cc-filter-rail__state cc-filter-rail__state--muted`,children:`No values`}):(0,p.jsxs)(`ul`,{className:`cc-filter-options__list`,children:[e.all&&(0,p.jsxs)(`li`,{className:`cc-filter-options__all`,children:[(0,p.jsx)(d.Checkbox,{checked:t.length===0,onChange:()=>l([]),children:(0,p.jsx)(`span`,{className:`cc-filter-options__label`,children:e.all})}),o&&Number.isFinite(Number(s))&&(0,p.jsx)(`span`,{className:`cc-filter-options__count`,children:Number(s)})]}),C.map(e=>(0,p.jsxs)(`li`,{children:[(0,p.jsx)(d.Checkbox,{checked:y.has(String(e.value)),onChange:()=>T(e.value),children:(0,p.jsx)(`span`,{className:`cc-filter-options__label`,title:String(e.label),children:String(e.label)})}),o&&(0,p.jsx)(`span`,{className:`cc-filter-options__count`,children:Number(o[String(e.value)]??0)})]},String(e.value)))]}),w>0&&(0,p.jsxs)(d.Button,{type:`link`,size:`small`,className:`cc-filter-options__more`,onClick:()=>g(!0),children:[`+ Show `,w,` more`]}),h&&S.length>a&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:`cc-filter-options__more`,onClick:()=>g(!1),children:`Show less`})]})}var kP=[],AP=250;function jP(e){try{return typeof structuredClone==`function`?structuredClone(e):JSON.parse(JSON.stringify(e))}catch{return e}}function MP({filters:e=kP,search:t=``,refreshTick:r=0,baseFetch:i=n.Qt,keepResponse:a=!1}={}){let o=`${vP(e)}|${String(t??``).trim()}`,[s]=(0,u.useState)(()=>({lastQuerySig:o,seq:0,inflight:0})),[c,l]=(0,u.useState)(null),[d,f]=(0,u.useState)(!1),[p,m]=(0,u.useState)(null);return{fetchData:(0,u.useMemo)(()=>NP({querySig:o,search:t,filters:e,baseFetch:i,store:s,setSnapshot:l,setLoading:f,setLastError:m,keepResponse:a}),[o,r,i,a]),snapshot:c,loading:d,error:p}}function NP({querySig:e,search:t,filters:r,baseFetch:i,store:a,setSnapshot:o,setLoading:s,setLastError:c,keepResponse:l=!1}){let u=e,d=l?e=>e:jP,f=String(t??``).trim(),p=Array.isArray(r)?r:kP,m=new Map,h=async(e,t,r,l)=>{a.seq+=1;let u=a.seq;a.inflight+=1,s(!0);try{let s=await i(e,t,r,{...l,search:f||l.search||``,filters:[...Array.isArray(l.filters)?l.filters:kP,...p]});if(u===a.seq){let i=n.Ot(s,e);o({rows:i.rows,total:i.total,fields:i.fields,limit:t,offset:r,page:Math.floor(r/Math.max(1,t))+1}),c(null)}return s}catch(e){throw u===a.seq&&c(e),e}finally{a.inflight=Math.max(0,a.inflight-1),a.inflight===0&&s(!1)}};return async(e,t,n,r={})=>{let i=n;a.lastQuerySig!==u&&(i=0,a.lastQuerySig=u);let o=JSON.stringify([e,t,i,r.scope??``,r.sort??``,r.sortDir??``,r.search??``,vP(r.filters),r.queryParams??null]),s=m.get(o);if(s&&(s.settledAt==null||Date.now()-s.settledAt<AP))return d(await s.promise);let c={settledAt:null};return c.promise=h(e,t,i,r).then(e=>(c.settledAt=Date.now(),e),e=>{throw m.delete(o),e}),m.set(o,c),d(await c.promise)}}function PP(e){for(let t of e.keys()){let e=/^p(\d+)$/.exec(t);if(e)return Math.max(1,Number(e[1])||1)}return 1}function FP(e,t){let n=new URLSearchParams(e);return[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),t>1&&n.set(`p${t}`,``),n}function IP(e,t,{enabled:n=!0,includeNewTabLinks:r=!1}={}){let i=(0,u.useRef)(t),a=(0,u.useRef)(r);(0,u.useEffect)(()=>{i.current=t,a.current=r});let o=(0,u.useCallback)(e=>{if(e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;let t=e.target?.closest?.(`a[href]`);if(!t||t.target===`_blank`&&!a.current)return;let n=t.closest(`tr[data-row-key], [data-record-id]`),r=n?.getAttribute(`data-row-key`)??n?.getAttribute(`data-record-id`);if(!r)return;let o;try{o=new URL(t.getAttribute(`href`),window.location.href)}catch{return}o.origin===window.location.origin&&decodeURIComponent(`${o.pathname}${o.search}`).includes(r)&&(e.preventDefault(),i.current?.(r))},[]);(0,u.useEffect)(()=>{let t=e.current;if(!(!t||!n))return t.addEventListener(`click`,o,!0),()=>t.removeEventListener(`click`,o,!0)},[e,n,o])}function LP({onOpenRecord:e,selectedRecordId:t,loading:r=!1,listProps:i={},component:a=n.rt,recordLinks:o=`inPlace`}){let s=(0,u.useRef)(null);return IP(s,e,{enabled:typeof e==`function`&&o!==`navigate`,includeNewTabLinks:!0}),(0,p.jsxs)(`div`,{ref:s,className:`cc-list-host`,"data-in-place-record-links":typeof e==`function`&&o!==`navigate`?``:void 0,children:[r&&(0,p.jsx)(`div`,{className:`cc-progress`,role:`progressbar`,"aria-label":`Loading`}),(0,p.jsx)(a,{...i,selectedRecordId:t,onRecordClick:typeof e==`function`?(t,n)=>e(String(n),t):void 0})]})}function RP({open:e=!1,onClose:t,width:n=380,ariaLabel:r=`Quick view`,placement:i=`right`,className:a=``,children:o}){let s=i===`left`;return(0,u.useEffect)(()=>{if(!e||typeof document>`u`)return;let n=e=>{e.key!==`Escape`||e.defaultPrevented||document.querySelector(`.ant-modal-wrap:not([style*="display: none"]) .ant-modal`)||t?.()};return document.addEventListener(`keydown`,n),()=>document.removeEventListener(`keydown`,n)},[e,t]),(0,p.jsx)(d.Drawer,{open:e,onClose:t,placement:s?`left`:`right`,size:n,mask:!1,keyboard:!1,closable:!1,rootClassName:`cc-quick-popover${s?` cc-quick-popover--left`:``} ${a}`.trim(),styles:{header:{display:`none`},body:{padding:0}},"aria-label":r,children:o})}function zP({open:e=!1,quickView:t=null,width:n=340,mode:r=`docked`,onClose:i,children:a,className:o=``}){return r===`overlay`?(0,p.jsxs)(`div`,{className:`cc-with-quick ${o}`.trim(),children:[(0,p.jsx)(`div`,{className:`cc-with-quick__list`,children:a}),(0,p.jsx)(RP,{open:e&&!!t,onClose:i,width:n,children:e?t:null})]}):(0,p.jsxs)(`div`,{className:`cc-with-quick${e?` cc-with-quick--open`:``} ${o}`.trim(),style:{"--cc-inline-quick-w":`${n}px`},children:[(0,p.jsx)(`div`,{className:`cc-with-quick__list`,children:a}),e&&t&&(0,p.jsx)(`div`,{className:`cc-with-quick__side`,children:t})]})}var BP=new Set([`file`,`files`,`upload`,`document`,`image`,`password`,`hidden`,`linkedrecordfile`]),VP=new Set([`date`,`datepicker`]),HP=140,UP=e=>e===!0||e===1||e===`1`||String(e).toLowerCase()===`true`;function WP(e){return e==null?!0:typeof e==`string`?e.trim()===``:Array.isArray(e)?e.length===0||e.every(WP):typeof e==`object`&&Object.keys(e).length===0}function GP(e){let t=String(e).replace(/<style[\s\S]*?<\/style>|<script[\s\S]*?<\/script>/gi,` `).replace(/<[^>]+>/g,` `).replace(/ /g,` `).replace(/&/g,`&`).replace(/</g,`<`).replace(/>/g,`>`).replace(/\s+/g,` `).trim();return t.length>HP?`${t.slice(0,139)}…`:t}function KP(e,t){if(WP(e))return``;if(Array.isArray(e))return GP(e.map(e=>KP(e,t)).filter(Boolean).join(`, `));if(typeof e==`object`)return KP(e.label??e.value??e.name??e.title??e.displayValue??``,t);if(typeof e==`boolean`)return e?`Yes`:`No`;if(VP.has(String(t??``).toLowerCase())){let t=String(e);if(/^0001-01-01/.test(t))return``;let n=/^(\d{4}-\d{2}-\d{2})/.exec(t);if(n){let e=(0,m.default)(n[1]);if(e.isValid())return e.format(`DD MMM YYYY`)}}return GP(e)}function qP(e,t=10){let n=[],r=new Set;for(let i of Array.isArray(e)?e:[])if(!(!i||UP(i.hideGroup)||UP(i.hideGroupInDetail))&&!(UP(i.addRow)||Array.isArray(i.rows)))for(let e of Array.isArray(i.fields)?i.fields:[]){if(n.length>=t)return n;let i=e?.field;if(!i||r.has(i)||e.show===0||e.show===`0`||e.show===!1||BP.has(String(e.type??``).toLowerCase()))continue;let a=KP(e.displayValue??e.value,e.type);a&&(r.add(i),n.push({key:i,label:e.label??i,text:a}))}return n}var JP={location:(0,p.jsx)(f.EnvironmentOutlined,{}),experience:(0,p.jsx)(f.ClockCircleOutlined,{}),employment:(0,p.jsx)(f.LaptopOutlined,{})};function YP(e){let t=String(e??``).replace(/\([^)]*\)/g,` `).split(/\s+/).filter(e=>/^[\p{L}\p{N}]/u.test(e));return t.length?`${t[0].charAt(0)}${t.length>1?t.at(-1).charAt(0):``}`.toUpperCase():``}function XP({moduleName:e,id:t,configName:r,title:i=`Quick View`,onOpenFull:a,onClose:o,extra:s=null,footerExtra:c=null,maxFields:l=10,refreshKey:m=0,openFullLabel:h=`Open full view`,showAvatar:g=!1,headOpenFull:_=!0,footerOpenFullLabel:v=`View full details`,fieldsTitle:y=`Key details`}){let[b,x]=(0,u.useState)({key:``,groups:null,error:null}),[S,C]=(0,u.useState)(0),w=`${e}|${t}|${m}|${S}`;(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;return n.Jt({module:e,id:t,view:`detail`}).then(e=>{r||x({key:w,groups:Array.isArray(e)?e:[],error:null})}).catch(e=>{r||x({key:w,groups:null,error:e})}),()=>{r=!0}},[e,t,w]);let T=b.key!==w,E=b.groups,D=(0,u.useMemo)(()=>E&&E.length?Aa(r||e,E):null,[E,r,e]),O=(0,u.useMemo)(()=>qP(E,l),[E,l]),k=D?.status,A=[...D?.titleIds??[],...D?.ids??[]];return(0,p.jsxs)(`aside`,{className:`cc-quick`,"aria-label":i,"aria-busy":T||void 0,children:[(0,p.jsxs)(`header`,{className:`cc-quick__head`,children:[(0,p.jsx)(`span`,{className:`cc-quick__panel-title`,children:i}),(0,p.jsxs)(`span`,{className:`cc-quick__head-actions`,children:[a&&_&&(0,p.jsx)(d.Button,{type:`primary`,ghost:!0,size:`small`,icon:(0,p.jsx)(f.ExpandOutlined,{}),onClick:a,children:h}),o&&(0,p.jsx)(d.Tooltip,{title:`Close (Esc)`,children:(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close quick view`,onClick:o})})]})]}),(0,p.jsx)(`div`,{className:`cc-quick__body`,children:b.error&&!E?(0,p.jsx)(d.Alert,{type:b.error.status===403||b.error.status===404?`warning`:`error`,showIcon:!0,message:b.error.status===403||b.error.status===404?`This record is not available to you.`:`The record could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:()=>C(e=>e+1),children:`Retry`})}):E?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`cc-quick__identity${g?` cc-quick__identity--avatar`:``}`,children:[g&&YP(D?.title)&&(0,p.jsx)(d.Avatar,{size:56,className:`cc-quick__avatar`,children:YP(D?.title)}),(0,p.jsxs)(`div`,{className:`cc-quick__identity-text`,children:[D?.eyebrow&&(0,p.jsx)(`div`,{className:`cc-quick__eyebrow`,children:D.eyebrow}),(0,p.jsxs)(`div`,{className:`cc-quick__title-row`,children:[(0,p.jsx)(`h3`,{className:`cc-quick__title`,children:D?.title??`-`}),k?.label&&(0,p.jsx)(d.Tag,{className:`cc-quick__status`,color:k.color,style:k.backgroundColor?{backgroundColor:k.backgroundColor,borderColor:k.backgroundColor,color:k.textColor}:void 0,children:k.label})]}),A.length>0&&(0,p.jsx)(`div`,{className:`cc-quick__ids`,children:A.map(e=>(0,p.jsxs)(`span`,{children:[(0,p.jsxs)(`span`,{className:`cc-quick__muted`,children:[e.label,`:`]}),` `,e.value]},e.label))}),(D?.meta??[]).length>0&&(0,p.jsx)(`ul`,{className:`cc-quick__meta`,children:D.meta.map((e,t)=>(0,p.jsxs)(`li`,{children:[JP[e.icon]?(0,p.jsx)(`span`,{className:`cc-quick__meta-icon`,"aria-hidden":!0,children:JP[e.icon]}):null,e.text??[e.label,e.value].filter(Boolean).join(`: `)]},t))})]})]}),s&&(0,p.jsx)(`div`,{className:`cc-quick__extra`,children:s}),O.length>0&&(0,p.jsxs)(`section`,{className:`cc-quick__section`,children:[(0,p.jsx)(`h4`,{className:`cc-quick__section-title`,children:y}),(0,p.jsx)(`dl`,{className:`cc-quick__fields`,children:O.map(e=>(0,p.jsxs)(`div`,{className:`cc-quick__field`,children:[(0,p.jsx)(`dt`,{children:e.label}),(0,p.jsx)(`dd`,{title:e.text,children:e.text})]},e.key))})]}),D?.timestamp?.value&&(0,p.jsxs)(`div`,{className:`cc-quick__muted cc-quick__stamp`,children:[D.timestamp.label,`: `,D.timestamp.value]})]}):(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:6}})}),(a||c)&&(0,p.jsxs)(`footer`,{className:`cc-quick__foot`,children:[c,a&&(0,p.jsx)(d.Button,{block:!0,size:`large`,onClick:a,children:v})]})]})}var ZP=Object.freeze([{field:`_id`,op:`none`,operator:`and`}]),QP=e=>String(e??``).trim();function $P(e){return(Array.isArray(e)?e:[]).filter(e=>e&&QP(e.field)).map(e=>({...e,operator:`and`}))}function eF(e,t){let n=QP(e?.field);if(!n)return null;if(e.via){let r=QP(e.via.module),i=(Array.isArray(e.via.fields)?e.via.fields:[e.via.field]).map(QP).filter(Boolean);if(!r||i.length===0)return null;let a=i.length===1?{field:i[0],op:`eq`,value:t,operator:`and`}:{field:`anyOf`,op:`anyOf`,operator:`and`,conditions:i.map(e=>({field:e,op:`eq`,value:t}))};return{field:n,op:`inFrom`,operator:`and`,source:{module:r,field:QP(e.via.select)||`_id`,filters:[a,...$P(e.via.filters)]}}}return QP(e.op).toLowerCase()===`in`?{field:n,op:`in`,values:[t],operator:`and`}:{field:n,op:`eq`,value:t,operator:`and`}}function tF(e,t){let n=QP(t);if(!e||!n)return ZP;let r;if(Array.isArray(e.anyOf)){let t=e.anyOf.map(e=>eF(e,n)).filter(Boolean);if(t.length===0)return ZP;r=t.length===1?t[0]:{field:`anyOf`,op:`anyOf`,operator:`and`,conditions:t.map(e=>{let t={...e};return delete t.operator,t})}}else if(r=eF(e,n),!r)return ZP;return[r,...$P(e.filters)]}function nF(e){return $P(e?.filters)}function rF(e,t){return JSON.stringify(tF(e,t))}function iF(e,t){if(!e||typeof e!=`object`)return e;let{subTabs:n,...r}=e;if(!t)return r;let i={...r};return typeof t.scope==`string`&&(i.scope=t.scope),t.queryParams&&typeof t.queryParams==`object`&&(i.queryParams={...r.queryParams??{},...t.queryParams}),Array.isArray(t.filters)&&t.filters.length&&(i.filters=[...Array.isArray(r.filters)?r.filters:[],...t.filters]),i}function aF(e){return(Array.isArray(e?.subTabs)?e.subTabs:[]).filter(e=>e&&String(e.key??``).trim())}var oF=new Map,sF=Object.freeze({field:`anyOf`,op:`anyOf`,operator:`and`,conditions:[]});function cF(e){return(Array.isArray(e)?e:[]).some(e=>String(e?.op??``).toLowerCase()===`anyof`)}function lF(e){let t=String(e??``);return oF.has(t)||oF.set(t,n.Qt(t,1,0,{scopeConditions:[sF]}).then(e=>{let r=n.Ot(e,t);return Number(r?.total)===0&&(r?.rows?.length??0)===0}).catch(()=>(oF.delete(t),!1))),oF.get(t)}async function uF(e,t,n){let r=tF(e,t);if(!cF(r)||await lF(n))return r;if(e?.fallback){let n=tF(e.fallback,t);if(!cF(n))return n}return null}var dF=80,fF=new Map,pF=`authToken`,mF=null;function hF(){try{return globalThis.localStorage?.getItem(pF)??``}catch{return``}}function gF(){let e=hF();mF!==null&&e!==mF&&fF.clear(),mF=e}function _F(e,t){for(fF.delete(e),fF.set(e,{at:Date.now(),promise:t});fF.size>dF;)fF.delete(fF.keys().next().value);return t.catch(()=>{fF.get(e)?.promise===t&&fF.delete(e)}),t}var vF=e=>e==null||e===``||Array.isArray(e)&&e.length===0||typeof e==`object`&&!Array.isArray(e)&&Object.keys(e).length===0;function yF(e){if(!e||typeof e!=`object`)return{};let t={};return Object.keys(e).sort().forEach(n=>{let r=e[n];vF(r)||(t[n]=r&&typeof r==`object`&&!Array.isArray(r)?yF(r):r)}),t}function bF(e,[t,n,r,i]=[]){return`${e}|${JSON.stringify([t,Number(n)||0,Number(r)||0,yF(i)])}`}function xF(e,{cacheMs:t=0,ns:n=``,windowMs:r=1500}={}){if(typeof e!=`function`||!(Number(t)>0))return e;let i=Date.now();return(...a)=>{gF();let o;try{o=bF(n,a)}catch{return e(...a)}let s=Date.now(),c=s-i<=r,l=fF.get(o);return c&&l&&s-l.at<t?l.promise:_F(o,Promise.resolve().then(()=>e(...a)))}}var SF=[`include`,`view`];function CF(e){if(!e||typeof e!=`object`)return null;let t=Object.fromEntries(Object.entries(e).filter(([e])=>!SF.includes(e)));return Object.keys(t).length?t:null}function wF(e,t,r=0,{cacheMs:i=0}={}){let a=JSON.stringify([t??``,(e??[]).map(e=>[e.key,e.module,e.relation??null,!!e.unscoped])]),[o,s]=(0,u.useState)({signature:``,counts:{}});(0,u.useEffect)(()=>{let[e,t]=JSON.parse(a);if(!t.length)return;let o=!1,c=xF(n.Qt,{cacheMs:i,ns:`count|${r}`,windowMs:1/0});return Promise.allSettled(t.map(async([,t,n,r])=>{let i=r?nF(n):await uF(n,e,t);if(!i)throw Error(`the server cannot apply this scope`);let a=typeof n?.scope==`string`?n.scope.trim():``,o=CF(n?.queryParams);return c(t,1,0,{scopeConditions:i,...a?{scope:a}:{},...o?{queryParams:o}:{}})})).then(e=>{if(o)return;let i={};e.forEach((e,r)=>{let a=t[r][0];if(e.status!==`fulfilled`){i[a]=null;return}let o=Number(n.Ot(e.value,t[r][1])?.total);i[a]=Number.isFinite(o)?o:null}),s({signature:`${a}|${r}`,counts:i})}),()=>{o=!0}},[a,r,i]);let c=o.signature===`${a}|${r}`;return{counts:o.counts,loading:!c}}var TF=[];function EF(e,t,n){if(!Array.isArray(e)||!t)return null;let r=(e,t)=>typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]:e?.id??e?._id??e?.key;return e.find((e,n)=>e&&typeof e==`object`&&String(r(e,n)??``)===String(t))??null}function DF({tabKey:e,active:t,module:r,accessModule:i=``,relation:a,parentId:o,title:s,showRail:c=!0,railMode:l=`docked`,railWidth:m=300,quickViewMode:g=`docked`,listComponent:_,listProps:v,renderQuickView:y,onOpenRecord:b,refreshKey:x=0,quickViewWidth:S=340,unscoped:C=!1,fetchData:w=null,keepFetchResponse:T=!1,recordLinks:E=`inPlace`,cacheMs:D=0,preload:O=!1,onPreloaded:k,openInPlace:A=!0,selectedParam:j=``,keepPageInUrl:M=!1}){let[N,P]=(0,h.useSearchParams)(),F=t??(!e||N.get(`tab`)===e),{canView:I}=n.Rt(i||r),[L,R]=(0,u.useState)(TF),[z,B]=(0,u.useState)(null),V=j?N.get(j)||null:z,H=(0,u.useCallback)(e=>{if(!j){B(e);return}P(t=>{let n=new URLSearchParams(t);return e?n.set(j,String(e)):n.delete(j),n},{replace:!0})},[j,P]),[U,W]=(0,u.useState)({id:``,row:null}),G=(0,u.useCallback)((e,t)=>W({id:String(e??``),row:t&&typeof t==`object`?t:null}),[]),[ee,te]=(0,u.useState)(!1),ne=PP(N),[re,ie]=(0,u.useState)(!1),[ae,oe]=(0,u.useState)(M&&F);!F&&ae&&oe(!1),!F&&re&&(ie(!1),ee&&te(!1)),F&&!re&&(ne===1||ae)&&ie(!0),(0,u.useEffect)(()=>{F&&!re&&ne>1&&P(e=>FP(e,1),{replace:!0})},[F,re,ne,P]);let se=JSON.stringify(a??null),ce=N.get(`sub`)??``,{relation:K,subTabs:le,activeSubKey:ue,subRelations:de}=(0,u.useMemo)(()=>{let e=JSON.parse(se),t=aF(e),n=t.find(e=>e.key===ce)??t[0]??null;return{relation:iF(e,n),subTabs:t,activeSubKey:n?.key??``,subRelations:t.map(t=>({key:t.key,module:r,relation:iF(e,t),unscoped:C}))}},[se,ce,r,C]),{counts:fe}=wF(F&&re||O&&D>0?de:TF,o,x,{cacheMs:D}),[pe,me]=(0,u.useState)(null);pe!==null&&pe===ue&&me(null);let he=pe??ue,q=(0,u.useCallback)(e=>{me(e),B(null),P(t=>{let n=FP(t,1);return n.set(`sub`,e),j&&n.delete(j),n},{replace:!0})},[j,P]),ge=C?`unscoped:${JSON.stringify(nF(K))}`:rF(K,o),_e=K?.fallback?rF(K.fallback,o):``,ve=(0,u.useMemo)(()=>C?nF(K):tF(K,o),[ge]),ye=(0,u.useMemo)(()=>_e?tF(K.fallback,o):null,[_e]),J=cF(ve),[be,xe]=(0,u.useState)({module:``,ok:null});(0,u.useEffect)(()=>{if(!J||!F&&!O)return;let e=!1;return lF(r).then(t=>{e||xe({module:r,ok:t})}),()=>{e=!0}},[J,F,O,r]);let Se=be.module===r&&be.ok!==null,Ce=J&&Se&&be.ok===!1&&ye&&!cF(ye),we=!J||Se&&(be.ok===!0||!!Ce),Te=J&&Se&&be.ok===!1&&!Ce,Ee=Ce?ye:ve,De=typeof K?.scope==`string`?K.scope.trim():``,Oe=K?.queryParams&&typeof K.queryParams==`object`?JSON.stringify(Object.fromEntries(Object.entries(K.queryParams).map(([e,t])=>[e,typeof t==`string`&&t.includes(`{id}`)?t.split(`{id}`).join(String(o??``)):t]))):``,ke=Array.isArray(K?.filterFields)?JSON.stringify(K.filterFields):``,Ae=(0,u.useMemo)(()=>ke?JSON.parse(ke):null,[ke]),[je,Me]=(0,u.useState)(null),Ne=typeof K?.queryParams?.view==`string`?K.queryParams.view.trim():``,Pe=(0,u.useMemo)(()=>{let e=Oe?JSON.parse(Oe):null,t=typeof w==`function`?w:n.Qt;return(n,r,i,a={})=>t(n,r,i,{...a,...De?{scope:De}:{},...e?{queryParams:{...a.queryParams??{},...e}}:{},scopeConditions:Ee})},[Ee,De,Oe,w]),Fe=`${De}|${Oe}|${JSON.stringify(Ee??null)}`,Ie=(0,u.useMemo)(()=>xF(Pe,{cacheMs:D,ns:`${e??``}|${r}|${C?``:o??``}|${x}|${Fe}`}),[Pe,D,e,r,C,o,x,Fe]),Le=(0,u.useMemo)(()=>Ae?async(...e)=>{let t=await Ie(...e),n=t?.data?.facets??t?.facets;return n&&typeof n==`object`&&Me(n),t}:Ie,[Ie,Ae]),Re=(0,u.useMemo)(()=>mP(L),[L]),{fetchData:ze,loading:Be}=MP({filters:Ae?Re.filters:L,...Ae&&Re.search?{search:Re.search}:{},refreshTick:x,baseFetch:Le,keepResponse:T}),Ve=Number(v?.initialPageSize)>0?Number(v.initialPageSize):10,He=Te||!I;(0,u.useEffect)(()=>{if(!O)return;if(!(D>0)||He){k?.(e);return}if(!we)return;let t=!1;return Promise.resolve().then(()=>Ie(r,Ve,0,{})).catch(()=>null).then(()=>{t||k?.(e)}),()=>{t=!0}},[O,D,He,we,Ie,r,Ve,k,e]);let Ue=c&&l===`popover`,We=_P(L),Ge=v?.toolbarExtra??null,Ke=(0,u.useMemo)(()=>Ue?(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(d.Tooltip,{title:We?`Filters (${We} active)`:`Filters`,children:(0,p.jsx)(d.Badge,{count:We,size:`small`,offset:[-4,4],children:(0,p.jsx)(d.Button,{className:`rh-filter-btn${ee||We?` is-active`:``}`,icon:(0,p.jsx)(f.FilterOutlined,{}),"aria-label":ee?`Hide filters`:`Show filters`,"aria-expanded":ee,"aria-haspopup":`dialog`,onClick:()=>te(e=>!e)})})}),Ge]}):Ge,[Ue,We,ee,Ge]),[qe,Je]=(0,u.useState)(null),Ye=v?.responseMapper,Xe=v?.rowKey,Ze=!!j,Qe=(0,u.useRef)(V);(0,u.useEffect)(()=>{Qe.current=V},[V]);let $e=(0,u.useMemo)(()=>{if(!Ze)return Ye;let e=typeof Ye==`function`?Ye:n.Ot;return(t,n)=>{let r=e(t,n);if(Array.isArray(r?.rows)){let e=r.rows;Je(e),W(t=>{let n=Qe.current;if(!n||t.id===String(n))return t;let r=EF(e,n,Xe);return r?{id:String(n),row:r}:t})}return r}},[Ze,Ye,Xe]),et=(0,u.useMemo)(()=>V?U.id===String(V)?U.row:EF(qe,V,Xe):null,[V,U,qe,Xe]),tt=(0,u.useMemo)(()=>({moduleName:r,fetchData:ze,showAdd:!1,showFilterButton:!c,showViewToggle:!1,autoCardForExternalRows:!1,showSummaryButton:!1,deferFieldConfig:!0,hideFilterButton:c,...v??{},toolbarExtra:Ke,dataKey:`${e??``}|${Fe}`,dataPending:pe!==null,redirectOnViewDenied:!1,...Ze?{responseMapper:$e}:{}}),[r,ze,c,v,Ke,e,Fe,pe,Ze,$e]),nt=(0,u.useCallback)(()=>H(null),[H]),rt=(0,u.useCallback)(()=>te(!1),[]),it=(0,u.useCallback)(()=>{V&&b?.(r,V,et)},[V,et,b,r]);if(O)return null;if(!F||!re)return(0,p.jsx)(`div`,{className:`rh-related rh-related--idle`});if(Te)return(0,p.jsx)(`div`,{className:`rh-related rh-related--no-rail`,"data-module":r,children:(0,p.jsxs)(`div`,{className:`rh-related__denied`,role:`alert`,children:[s??r,` cannot be listed: the running server does not support this tab's filter ("anyOf"). Update the server.`]})});if(!we)return(0,p.jsx)(`div`,{className:`rh-related rh-related--idle`});if(!I)return(0,p.jsx)(`div`,{className:`rh-related rh-related--no-rail`,"data-module":r,children:(0,p.jsxs)(`div`,{className:`rh-related__denied`,role:`status`,children:[`You do not have permission to view `,s??r,`. An administrator can grant view access to this module in Admin (menu permissions for your role).`]})});let at=V?y?.({module:r,id:V,record:et,onClose:nt,onOpenFull:b?it:void 0})??(0,p.jsx)(XP,{moduleName:r,id:V,onClose:nt,onOpenFull:b?it:void 0,refreshKey:x},V):null;return(0,p.jsxs)(`div`,{className:`rh-related${!c||Ue?` rh-related--no-rail`:``}`,"data-module":r,children:[c&&!Ue&&(0,p.jsx)(`aside`,{className:`rh-related__rail`,children:(0,p.jsx)(TP,{moduleName:r,view:Ne,scopeConditions:Ee,value:L,onChange:R,...Ae?{fields:Ae,optionCounts:je}:{}})}),Ue&&(0,p.jsx)(RP,{open:ee,onClose:rt,placement:`left`,width:m,ariaLabel:`Filters`,className:`rh-filter-popover`,children:(0,p.jsx)(TP,{moduleName:r,view:Ne,scopeConditions:Ee,value:L,onChange:R,onCollapse:rt,...Ae?{fields:Ae,optionCounts:je}:{}})}),(0,p.jsxs)(`section`,{className:`rh-related__main`,"aria-label":s??r,children:[le.length>0&&(0,p.jsx)(d.Segmented,{className:`rh-subtabs`,"aria-label":`${s??r} sections`,value:he,onChange:e=>{e!==he&&q(String(e))},style:{marginBottom:12},options:le.map(e=>{let t=fe[e.key];return{value:e.key,label:(0,p.jsxs)(d.Flex,{gap:6,align:`center`,children:[(0,p.jsx)(`span`,{children:e.label??e.key}),typeof t==`number`&&(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:t.toLocaleString()})]})}})}),(0,p.jsx)(zP,{open:!!V,quickView:at,width:S,mode:g===`overlay`?`overlay`:`docked`,onClose:nt,children:(0,p.jsx)(LP,{recordLinks:E,component:_,listProps:tt,loading:Be,selectedRecordId:V||void 0,onOpenRecord:A?(e,t)=>{H(String(e)),G(e,t)}:void 0})})]})]})}var OF=1,kF=50,AF=1e3,jF=3e4,MF=15e3,NF=45e3,PF=75e3,FF=300,IF=4401,LF=Object.freeze({IDLE:`idle`,CONNECTING:`connecting`,OPEN:`open`,RECONNECTING:`reconnecting`,UNAUTHORIZED:`unauthorized`,DISABLED:`disabled`,CLOSED:`closed`});function RF(e){let t=String(e??``).trim().toLowerCase();return t.length>3&&t.endsWith(`s`)&&!t.endsWith(`ss`)&&(t=t.slice(0,-1)),t}function zF(e){let t=RF(e);return t?`module:${t}`:``}function BF(e,t){let n=RF(e),r=String(t??``).trim();return n&&r?`record:${n}:${r}`:``}function VF(e){let t=String(e??``).trim();if(t===`tenant`)return t;if(t.startsWith(`module:`))return zF(t.slice(7));if(t.startsWith(`record:`)){let e=t.slice(7),n=e.indexOf(`:`);return n<=0?``:BF(e.slice(0,n),e.slice(n+1))}return``}function HF(e){let t=[`tenant`],n=RF(e?.module);return n&&(t.push(`module:${n}`),e?.id&&t.push(`record:${n}:${e.id}`)),t}function UF(e,t){let n=String(e??``).replace(/\/+$/,``),r;return r=/^https?:\/\//i.test(n)?n.replace(/^http/i,`ws`):typeof window<`u`&&window.location?`${window.location.protocol===`https:`?`wss:`:`ws:`}//${window.location.host}${n.startsWith(`/`)?``:`/`}${n}`:n,`${r}/realtime/ws?ticket=${encodeURIComponent(t)}`}function WF(e={}){let{getBaseUrl:t,getToken:n,fetchImpl:r=typeof fetch==`function`?(...e)=>fetch(...e):null,WebSocketImpl:i=typeof WebSocket==`function`?WebSocket:null,setTimeoutImpl:a=(e,t)=>setTimeout(e,t),clearTimeoutImpl:o=e=>clearTimeout(e),setIntervalImpl:s=(e,t)=>setInterval(e,t),clearIntervalImpl:c=e=>clearInterval(e),now:l=()=>Date.now(),random:u=Math.random}=e,d=new Map,f=new Set,p=new Set,m=new Set,h=[],g=i&&r?LF.IDLE:LF.DISABLED,_=null,v=0,y=0,b=null,x=null,S=0,C=0,w=!1,T=!1;function E(e){g!==e&&(g=e,f.forEach(t=>{try{t(e)}catch{}}))}function D(e){if(!_||_.readyState!==1)return!1;try{return _.send(JSON.stringify({v:OF,...e})),!0}catch{return!1}}function O(e,t){for(let n=0;n<t.length;n+=kF)D({op:e,topics:t.slice(n,n+kF)})}function k(e){return!e||!m.has(e)&&(m.add(e),h.push(e),h.length>FF&&m.delete(h.shift()),!0)}function A(e){if(!k(e.eventId))return;let t=new Set;HF(e).forEach(n=>{let r=d.get(n);r&&r.forEach(n=>{if(!t.has(n)){t.add(n);try{n(e)}catch(e){console.error(`[realtime] subscriber failed`,e)}}})})}function j(e){S=l();let t;try{t=JSON.parse(e)}catch{return}if(!(!t||typeof t!=`object`))switch(t.type){case`hello`:y=0,E(LF.OPEN),O(`subscribe`,[...d.keys()]),w&&p.forEach(e=>{try{e()}catch{}}),w=!0;return;case`ack`:case`pong`:case`error`:return;default:t.eventId&&t.type&&A(t)}}function M(){b!=null&&(o(b),b=null),x!=null&&(c(x),x=null)}function N(){let e=_;if(_=null,e){e.onopen=null,e.onmessage=null,e.onclose=null,e.onerror=null;try{e.close(1e3,`client closing`)}catch{}}}function P({immediate:e=!1}={}){if(T||d.size===0||g===LF.DISABLED||b!=null)return;let t=Math.min(jF,AF*2**Math.min(y,10)),n=Math.round(t*(.7+u()*.6)),r=e?0:n;y+=1,g!==LF.UNAUTHORIZED&&E(LF.RECONNECTING),b=a(()=>{b=null,I()},r)}async function F(){let e=await n?.();if(!e){let e=Error(`not signed in`);throw e.status=401,e}let i=await r(`${String(t())}/realtime/ticket`,{method:`POST`,headers:{Authorization:`Bearer ${e}`}});if(!i.ok){let e=Error(`ticket request failed: ${i.status}`);throw e.status=i.status,e}let a=await i.json(),o=a?.data?.ticket??a?.ticket;if(!o)throw Error(`ticket missing from response`);return o}async function I(){if(T||g===LF.DISABLED||d.size===0||_&&(_.readyState===0||_.readyState===1))return;let e=++v;E(w?LF.RECONNECTING:LF.CONNECTING);let n;try{n=await F()}catch(t){if(e!==v||T)return;(t?.status===401||t?.status===403)&&E(LF.UNAUTHORIZED),P();return}if(e!==v||T||d.size===0)return;let r;try{r=new i(UF(t(),n))}catch{P();return}_=r,S=l(),r.onmessage=e=>j(e.data),r.onerror=()=>{},r.onclose=e=>{_===r&&(_=null,x!=null&&(c(x),x=null),!T&&P({immediate:e?.code===IF&&y<2}))},x!=null&&c(x),x=s(()=>{if(_!==r)return;let e=l()-S;if(e>PF){N(),P({immediate:!0});return}e>NF&&l()-C>NF&&(C=l(),D({op:`ping`}))},MF)}function L(){T||g===LF.DISABLED||_||b!=null||I()}return{subscribe(e,t){let n=VF(e);if(!n||typeof t!=`function`)return()=>{};let r=d.get(n),i=!r;return r||(r=new Set,d.set(n,r)),r.add(t),i&&D({op:`subscribe`,topics:[n]}),L(),()=>{let e=d.get(n);e&&(e.delete(t),e.size===0&&(d.delete(n),D({op:`unsubscribe`,topics:[n]})),d.size===0&&(v+=1,M(),N(),g!==LF.DISABLED&&E(LF.IDLE)))}},onReconnect(e){return p.add(e),()=>p.delete(e)},onStatus(e){return f.add(e),()=>f.delete(e)},getStatus:()=>g,nudge(){T||g===LF.DISABLED||d.size===0||_&&_.readyState===1||(b!=null&&(o(b),b=null),y=0,I())},close(){T=!0,M(),N(),d.clear(),E(LF.CLOSED)},_debug:()=>({topics:[...d.keys()],attempts:y,hasSocket:!!_})}}var GF=(0,u.createContext)(null),KF=null,qF=0,JF=null,YF=1500;function XF(e){return KF||=WF({getBaseUrl:()=>String(t.S),getToken:()=>t.a().catch(()=>null),...e}),KF}function ZF(){qF+=1,JF!=null&&(clearTimeout(JF),JF=null)}function QF(){qF=Math.max(0,qF-1),!(qF>0||JF!=null)&&(JF=setTimeout(()=>{JF=null,qF===0&&KF&&(KF.close(),KF=null)},YF))}var $F=[],eI=2e3,tI=()=>()=>{},nI=()=>LF.DISABLED;function rI(){return(0,u.useContext)(GF)}function iI(){let e=(0,u.useContext)(GF);return(0,u.useSyncExternalStore)(e?e.onStatus:tI,e?e.getStatus:nI,nI)}function aI(e){return[...new Set((Array.isArray(e)?e:[e]).map(VF).filter(Boolean))].sort().join(`|`)}function oI(e,t,{enabled:n=!0}={}){let r=(0,u.useContext)(GF),i=(0,u.useRef)(t);(0,u.useEffect)(()=>{i.current=t});let a=aI(e??$F);(0,u.useEffect)(()=>{if(!r||!n||!a)return;let e=a.split(`|`).map(e=>r.subscribe(e,e=>i.current?.(e)));return()=>e.forEach(e=>e())},[r,n,a])}function sI(e,{enabled:t=!0}={}){let n=(0,u.useContext)(GF),r=(0,u.useRef)(e);(0,u.useEffect)(()=>{r.current=e}),(0,u.useEffect)(()=>{if(!(!n||!t))return n.onReconnect(()=>r.current?.())},[n,t])}function cI({topics:e=$F,enabled:n=!0,debounceMs:r=400,filter:i}={}){let[a,s]=(0,u.useState)({tick:0,lastEvent:null}),c=(0,u.useRef)(null),l=(0,u.useRef)(null),d=(0,u.useRef)(0),f=(0,u.useRef)(i);(0,u.useEffect)(()=>{f.current=i});let p=(0,u.useCallback)(()=>{c.current=null;let e=l.current;e&&(typeof document<`u`&&document.visibilityState===`hidden`||(l.current=null,t.p(),o.r(),s(t=>({tick:t.tick+1,lastEvent:e.event??t.lastEvent}))))},[]),m=(0,u.useCallback)(e=>{l.current||(d.current=Date.now()),l.current=e,c.current!=null&&clearTimeout(c.current);let t=Date.now()-d.current;c.current=setTimeout(p,Math.max(0,Math.min(r,eI-t)))},[r,p]);return oI(e,e=>{typeof f.current==`function`&&!f.current(e)||m({event:e})},{enabled:n}),sI(()=>m({reconnect:!0}),{enabled:n}),(0,u.useEffect)(()=>{if(!n||typeof document>`u`)return;let e=()=>{document.visibilityState===`visible`&&l.current&&p()};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[n,p]),(0,u.useEffect)(()=>()=>{c.current!=null&&clearTimeout(c.current)},[]),(0,u.useMemo)(()=>({tick:a.tick,lastEvent:a.lastEvent}),[a])}var lI={aim:f.AimOutlined,bank:f.BankOutlined,book:f.BookOutlined,calendar:f.CalendarOutlined,check:f.CheckCircleOutlined,clock:f.ClockCircleOutlined,close:f.CloseOutlined,delete:f.DeleteOutlined,download:f.DownloadOutlined,edit:f.EditOutlined,location:f.EnvironmentOutlined,export:f.ExportOutlined,view:f.EyeOutlined,file:f.FileTextOutlined,filter:f.FilterOutlined,id:f.IdcardOutlined,link:f.LinkOutlined,mail:f.MailOutlined,sms:f.MessageOutlined,message:f.MessageOutlined,more:f.MoreOutlined,phone:f.PhoneOutlined,call:f.PhoneOutlined,plus:f.PlusOutlined,refresh:f.ReloadOutlined,send:f.SendOutlined,team:f.TeamOutlined,user:f.UserOutlined,whatsapp:f.WhatsAppOutlined};function uI(e){if(!e)return;if(typeof e!=`string`)return e;let t=lI[e.trim().toLowerCase()];return t?(0,u.createElement)(t):void 0}var $=e=>e!=null&&String(e).trim()!==``;function dI(e){return Array.isArray(e)?e:e==null?[]:[e]}function fI(e,t){if(!(!e||typeof e!=`object`||!$(t)))return Object.prototype.hasOwnProperty.call(e,t)?e[t]:String(t).split(`.`).reduce((e,t)=>e?.[t],e)}function pI(e,t,n){if(typeof e==`function`)try{return e(t,n)}catch(e){console.warn(`[COMBAINED pages] config value failed:`,e);return}if(typeof e==`string`){let n=fI(t?.record,e);return n===void 0?fI(t,e):n}return e}function mI(e,t,n){return typeof e==`function`?pI(e,t,n):e}function hI(e){return e==null?``:Array.isArray(e)?e.map(hI).filter($).join(`, `):String(typeof e==`object`?e.label??e.value??e.name??e.title??``:e)}function gI(e,t,n){if(!e)return!1;let r=typeof e.permission==`string`?e.permission.trim().toLowerCase():``;return r&&n?.can&&n.can[r]===!1||e.adminAction!==void 0&&!Bc(e.adminAction,n?.module)?!1:e.visible===void 0||!!pI(e.visible,t,n)}function _I(e,t,n){return dI(e).filter(e=>e&&$(e.key)&&gI(e,t,n)).map(e=>{let r=!!pI(e.disabled,t,n),i=e.menu?_I(e.menu,t,n):null;return{key:String(e.key),label:hI(mI(e.label,t,n)),icon:uI(e.icon),type:e.type,className:typeof e.className==`string`?e.className:void 0,danger:!!e.danger,disabled:r,tooltip:hI(mI(e.tooltip,t,n)),note:hI(mI(e.note,t,n)),onClick:r||typeof e.onClick!=`function`?void 0:()=>e.onClick(t,n),menu:i&&i.length?i:null}})}function vI(e){let t=[`popover`,`docked`,`none`].includes(e?.filter)?e.filter:`popover`,n=[`popover`,`docked`].includes(e?.quickView)?e.quickView:`popover`;return{filter:t,quickView:n,railMode:t===`docked`?`docked`:`popover`,showRail:t!==`none`,quickViewMode:n===`docked`?`docked`:`overlay`,quickViewWidth:Number(e?.quickViewWidth)>0?Number(e.quickViewWidth):380,filterWidth:Number(e?.filterWidth)>0?Number(e.filterWidth):300}}function yI(e,t){return!e||typeof e!=`object`?null:e[t]&&typeof e[t]==`object`?e[t]:Array.isArray(e.sections)||e.identity?e:null}var bI=e=>e&&$(e.key)&&$(e.label);function xI(e){let t=[];return dI(e).forEach(e=>{if(!bI(e)){console.warn(`[DetailViewPage] tab skipped — it needs a key and a label:`,e);return}if(e.component||e.type===`overview`||e.type===`details`){t.push(e);return}if($(e.module)&&e.relation&&typeof e.relation==`object`){let{list:n,...r}=e;t.push(n?{...r,listComponent:n}:r);return}console.warn(`[DetailViewPage] tab "${e.key}" skipped — it needs { module, relation }, a component or type 'overview'.`)}),t}function SI(e){let t=String(e??``).split(/\s+/).filter(Boolean);return t.length?`${t[0][0]}${t.length>1?t.at(-1)[0]:``}`.toUpperCase():`?`}function CI(e){let t=[e?.value,e?.field,e?.fieldName,e?.name,e?.label].find(e=>e!=null&&String(e).trim()!==``);return t===void 0?``:String(t)}function wI(e,t=n.Ot){if(!e||typeof e!=`object`)return null;let r=dI(e.show).map(String).filter($),i=e.fields&&typeof e.fields==`object`?e.fields:{},a=dI(e.add).filter(e=>e&&$(e.key));return!r.length&&!Object.keys(i).length&&!a.length?null:{responseMapper:(e,n)=>{let o=t(e,n)??{},s=dI(o.rows).map(e=>{if(!a.length||!e||typeof e!=`object`)return e;let t={...e};return a.forEach(n=>{t[n.key]=typeof n.value==`function`?pI(n.value,e,{row:e}):fI(e,n.value??n.key)}),t}),c=a.map(e=>{let{value:t,after:n,...r}=e;return{...r,field:e.key,label:e.label??e.key,isVisible:!0,isVirtual:!0}}),l=e=>{let t=CI(e);return i[t]?{...e,...i[t]}:e},u;if(r.length){let e=new Map([...dI(o.fields),...c].map(e=>[CI(e),e]));u=r.map(t=>e.get(t)??(i[t]?{field:t,label:i[t].label??t}:null)).filter(Boolean).map((e,t)=>({...l(e),isVisible:!0,order:t}))}else u=dI(o.fields).map(l),c.forEach((e,t)=>{let n=$(a[t].after)?u.findIndex(e=>CI(e)===a[t].after):-1;n>=0?u.splice(n+1,0,e):u.push(e)}),u.some(e=>e.order!==void 0&&e.order!==null&&e.order!==``)&&(u=u.map((e,t)=>({...e,order:t})));return{...o,rows:s,fields:u}},...r.length?{defaultVisibleColumnCount:r.length}:{}}}function TI(e){let t=e=>String(e??``).trim().toLowerCase(),n=dI(e?.include).map(t).filter(Boolean),r=dI(e?.exclude).map(t).filter(Boolean);return!n.length&&!r.length?null:e=>{let i=[e?.name,e?.groupName,e?.label,e?.title].map(t).filter(Boolean);return!(n.length&&!i.some(e=>n.includes(e))||r.length&&i.some(e=>r.includes(e)))}}function EI(e){return!e||e.access===!1?``:e.access&&typeof e.access==`object`&&$(e.access.module)?String(e.access.module):$(e.module)&&e.relation&&typeof e.relation==`object`?String(e.module):``}function DI(e,t){return dI(e).filter(e=>{let n=EI(e);return!n||t(n)!==!1})}function OI(e){return!e||e.access===!1?``:e.access&&typeof e.access==`object`&&$(e.access.module)?String(e.access.module):$(e.module)?String(e.module):``}function kI(e,t,n){let r=new Set(dI(t).map(e=>e?.key));return dI(e).filter(e=>{let t=OI(e);return!t||n(t)!==!1}).map(e=>e?.tab&&!r.has(e.tab)?{...e,tab:void 0}:e)}var AI=4e3;function jI(e){if(typeof e?.clickFeedback==`boolean`)return e.clickFeedback;try{return window.__CORE_THEME_CONFIG__?.quickViewClickFeedback===!0}catch{return!1}}function MI(e){let t=(0,h.useLocation)(),n=`${t.key}|${t.pathname}|${t.search}`,[r,i]=(0,u.useState)(null),a=(0,u.useRef)(null);(0,u.useEffect)(()=>()=>clearTimeout(a.current),[]);let o=r&&r.at===n?r.key:null,s=()=>{clearTimeout(a.current),i(null)};return{wrap:(t,r)=>!e||typeof r!=`function`?r:(...e)=>{if(o)return;i({key:t,at:n}),clearTimeout(a.current),a.current=setTimeout(s,AI);let c;try{c=r(...e)}catch(e){throw s(),e}return c&&typeof c.then==`function`&&Promise.resolve(c).finally(s),c},busyKey:o,isBusy:e=>o===e,anyBusy:!!o,done:s}}var NI=n.kt.quickView;function PI(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function FI(e,{record:t,scope:r,module:i}){return!(!e||!e.key||e.showInQuickView!==!0||e.actionType===`group`||e.children?.length||!n.mn(e.permission,i)||e.permissionKey&&!n.pn(PI(t,`actionPermission.${e.permissionKey}`))||e.allowedTabs?.length&&r&&!e.allowedTabs.some(e=>String(e).toLowerCase()===String(r).toLowerCase()))}function II(e,{record:t,rules:r,scope:i}){let a=n.At(e,t,i),o=n.Nt(e.key,t,r,i,NI);return{key:String(e.key),label:a?a.label:e.label||String(e.key),action:e,disabled:!!(a||o),reason:a?a.label:o||``}}function LI({actions:e,actionRules:t,record:r,scope:i,module:a}={}){let o=Array.isArray(t)?t:[],s={record:r,scope:i,module:a,rules:o},c=(Array.isArray(e)?e:[]).filter(e=>FI(e,s)),l=[],u=n.Ft(r,o,i,NI),d=null;if(u){let t=c.find(e=>String(e.key)===u);t?d=II(t,s):(Array.isArray(e)?e:[]).some(e=>String(e?.key)===u)||l.push(`Quick View rule names primary action "${u}", which is not in the action library.`)}let f=c.filter(e=>!n.Mt(e.key,r,o,i,NI)).map(e=>({...II(e,s),selected:!!(d&&String(e.key)===d.key)}));return{primary:d,menu:f,warnings:l}}function RI({prompt:e,title:t,onSubmit:n,onCancel:r,busy:i=!1,danger:a=!1}){let o=qb(e)??qb({label:`Value`,required:!0}),[s,c]=(0,u.useState)(``),[l,f]=(0,u.useState)(!1),m=Yb(o,s),h=!i&&!m&&(!o.required||s.trim()!==``),g=()=>{f(!0),h&&n?.(s.trim())},_=e=>{if(e.key===`Escape`){e.stopPropagation(),r?.();return}e.key===`Enter`&&(!o.multiline||e.ctrlKey||e.metaKey)&&(e.preventDefault(),g())},v=`cc-action-input-${o.key}`,y=o.multiline?d.Input.TextArea:d.Input;return(0,p.jsxs)(`div`,{className:a?`cc-action-input cc-action-input--danger`:`cc-action-input`,"data-ct-part":`qv-action-input`,role:`group`,"aria-label":t||void 0,style:{padding:12,marginBottom:10,border:`1px solid ${a?`var(--ant-color-error-border, #ffccc7)`:`var(--ant-color-border, #d9d9d9)`}`,borderRadius:8},children:[t?(0,p.jsx)(d.Typography.Text,{strong:!0,type:a?`danger`:void 0,className:`cc-action-input__title`,style:{display:`block`,marginBottom:6},children:t}):null,(0,p.jsxs)(`label`,{htmlFor:v,style:{display:`block`,marginBottom:4},children:[o.label,o.required?(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{color:`var(--ant-color-error, #ff4d4f)`},children:` *`}):null]}),(0,p.jsx)(y,{id:v,autoFocus:!0,value:s,placeholder:o.placeholder||void 0,maxLength:o.maxLength||void 0,showCount:!!o.maxLength,autoSize:o.multiline?{minRows:2,maxRows:5}:void 0,disabled:i,"aria-required":o.required,"aria-invalid":!!(l&&m),onChange:e=>c(e.target.value),onBlur:()=>f(!0),onKeyDown:_}),l&&m?(0,p.jsx)(d.Typography.Text,{type:`danger`,className:`cc-action-input__error`,role:`alert`,style:{display:`block`,marginTop:4,fontSize:12},children:m}):null,(0,p.jsxs)(d.Flex,{gap:8,justify:`flex-end`,className:`cc-action-input__actions`,style:{marginTop:10},children:[(0,p.jsx)(d.Button,{onClick:()=>r?.(),disabled:i,children:`Cancel`}),(0,p.jsx)(d.Button,{type:`primary`,danger:a,onClick:g,disabled:!h,loading:i,children:o.submitLabel})]})]})}function zI({prompt:e,action:t,record:r,tab:i,onSubmit:a,onCancel:o,busy:s=!1}){let c=qb(e,t)??qb({label:`Value`,required:!0},t),[l,f]=(0,u.useState)(void 0),[m,h]=(0,u.useState)(``),[g,_]=(0,u.useState)(!1),v=Yb(c,l),y=!s&&!v,b=e=>n.ht(e,r,{action:t,tab:i}),x=b(c.title)||String(t?.label??``).trim()||c.label,S=!!t?.danger;return(0,p.jsxs)(d.Modal,{open:!0,centered:!0,width:480,className:`cc-action-input-modal cc-action-confirm--hero`,maskClosable:!1,onCancel:()=>o?.(),title:null,footer:[(0,p.jsx)(d.Button,{className:`cc-action-input-modal__cancel`,onClick:()=>o?.(),disabled:s,children:c.cancelLabel},`cancel`),(0,p.jsx)(d.Button,{type:`primary`,danger:S,loading:s,disabled:s,onClick:()=>{_(!0),y&&a?.(String(l??``).trim(),m.trim())},icon:c.icon?n.vt(c.icon,`cc-confirm-hero__btn-icon`):void 0,children:c.submitLabel},`ok`)],children:[(0,p.jsxs)(`div`,{className:`cc-confirm-hero__head`,children:[c.icon?n.vt(c.icon):null,(0,p.jsx)(d.Typography.Title,{level:4,className:`cc-confirm-hero__title`,children:x})]}),n._t(b(c.message),b(c.note)),(0,p.jsxs)(d.Form,{layout:`vertical`,className:`cc-action-input-modal__form`,requiredMark:!0,children:[(0,p.jsx)(d.Form.Item,{label:c.label,required:c.required,validateStatus:g&&v?`error`:void 0,help:g&&v?v:void 0,children:c.options.length?(0,p.jsx)(d.Select,{value:l,placeholder:c.placeholder||`Select`,options:c.options.map(e=>({value:e,label:e})),onChange:e=>{f(e),_(!0)},disabled:s,classNames:{popup:{root:`cc-action-input-modal__options`}},placement:`bottomLeft`,listHeight:320}):(0,p.jsx)(d.Input.TextArea,{value:l,placeholder:c.placeholder||void 0,maxLength:c.maxLength||void 0,autoSize:{minRows:2,maxRows:5},disabled:s,onChange:e=>f(e.target.value),onBlur:()=>_(!0)})}),c.comment?(0,p.jsx)(d.Form.Item,{label:c.comment.label,children:(0,p.jsx)(d.Input.TextArea,{value:m,placeholder:c.comment.placeholder||void 0,maxLength:c.comment.maxLength||void 0,showCount:!!c.comment.maxLength,autoSize:{minRows:3,maxRows:6},disabled:s,onChange:e=>h(e.target.value)})}):null]})]})}function BI({spec:e,data:t,ctx:r,style:i,feedback:a=!1}){let o=MI(a),[s,c]=(0,u.useState)(null),l=(0,u.useRef)(null),[m,h]=(0,u.useState)(0);(0,u.useLayoutEffect)(()=>{if(!s)return;let e=l.current?.closest?.(`.cc-qv-footer`)??l.current?.parentElement;h(e?.getBoundingClientRect?.().width||0)},[s]);let g=String(mI(e?.module,t,r)||r?.module||``),{actions:_,actionRules:v}=gc(g),y=typeof e?.scope==`function`?e.scope(t,r):mI(e?.scope,t,r),b=(typeof e?.record==`function`?e.record(t,r):null)??t?.record??null,x=typeof e?.facts==`function`?e.facts(t,r):null,{primary:S,menu:C,warnings:w}=LI({actions:_,actionRules:v,record:{...b??{},...x??{}},scope:y===null||y===``?void 0:String(y),module:g}),T=w.join(`
|
|
45
45
|
`);(0,u.useEffect)(()=>{T&&console.warn(`[QuickViewModuleActions] ${T}`)},[T]);let E=e?.layout===`buttons`;if(!S&&!(E&&C.length))return null;let D=String(b?._id?.$oid??b?._id??b?.id??``),O=(e,t=null)=>(D&&n.lt(g,D),bc(e.action,b,{navigate:r?.navigate,location:r?.location,module:g,onDone:()=>r?.refresh?.(),input:t})),k=e=>{if(!e||e.disabled)return;let t=()=>{if(qb(e.action?.inputPrompt)){o.done?.(),c(e);return}return O(e)};return n.yt(e.action)?n.pt(e.action,b,{tab:r?.tabLabel??r?.tab?.label??``}).then(e=>e?t():void 0):t()},A=(s?qb(s.action.inputPrompt,s.action):null)?.display===`modal`?(0,p.jsx)(zI,{prompt:s.action.inputPrompt,action:s.action,record:b,tab:r?.tabLabel??r?.tab?.label??``,onCancel:()=>c(null),onSubmit:(e,t)=>{let n=s;c(null),O(n,Xb(n.action.inputPrompt,e,t))}},s.key):null,j=s&&!A?(0,p.jsx)(`div`,{className:`cc-qv-action-input-layer`,style:{position:`absolute`,right:0,bottom:`100%`,width:m||`100%`,maxWidth:`none`,marginBottom:8,zIndex:3,background:`var(--ant-color-bg-container, #fff)`,borderRadius:8,boxShadow:`0 6px 16px rgba(0, 0, 0, 0.12)`},children:(0,p.jsx)(RI,{prompt:qb(s.action.inputPrompt,s.action),title:s.label,danger:!!s.action?.danger,onCancel:()=>c(null),onSubmit:e=>{let t=s;c(null),O(t,Xb(t.action.inputPrompt,e))}},s.key)}):null,M=j?{...i??{},position:`relative`}:i;if(E){let t=S?.key??(e?.primary?String(e.primary):``),n=(C.length?C:[S]).map((e,t)=>({item:e,i:t})).sort((e,n)=>(e.item.key===t)-(n.item.key===t)||e.i-n.i).map(({item:e})=>e);return(0,p.jsxs)(`div`,{ref:l,style:M,children:[j,A,(0,p.jsx)(d.Space,{className:`cc-qv-action-buttons`,style:{display:`flex`,width:`100%`},children:n.map(e=>{let n=(0,p.jsx)(d.Button,{type:e.key===t?`primary`:`default`,danger:!!e.action?.danger,disabled:e.disabled,loading:o.isBusy(e.key)||void 0,onClick:o.wrap(e.key,()=>k(e)),block:!0,children:e.label},e.key);return e.reason?(0,p.jsx)(d.Tooltip,{title:e.reason,children:n},e.key):n})})]})}let N=(0,p.jsx)(d.Button,{type:`primary`,danger:!!S.action?.danger,disabled:S.disabled,loading:o.anyBusy||void 0,"aria-busy":o.anyBusy||void 0,onClick:o.wrap(S.key,()=>k(S)),block:!0,children:S.label}),P=S.reason?(0,p.jsx)(d.Tooltip,{title:S.reason,children:N}):N;return C.length?(0,p.jsxs)(`div`,{ref:l,style:M,children:[j,A,(0,p.jsxs)(d.Space.Compact,{block:!0,children:[P,(0,p.jsx)(d.Dropdown,{trigger:[`click`],rootClassName:`cc-qv-action-menu`,menu:{items:C.map(e=>({key:e.key,label:e.label,disabled:e.disabled,title:e.reason||void 0,danger:!!e.action?.danger||void 0,className:[e.selected?`cc-qv-action--selected`:``,e.action?.danger?`cc-qv-action--danger`:``].filter(Boolean).join(` `)||void 0,extra:e.selected?(0,p.jsx)(f.CheckOutlined,{className:`cc-qv-action-check`,"aria-label":`current`}):void 0})),onClick:({key:e,domEvent:t})=>{t?.stopPropagation?.();let n=C.find(t=>t.key===e);n&&!n.disabled&&o.wrap(e,()=>k(n))()}},children:(0,p.jsx)(d.Button,{type:`primary`,danger:!!S.action?.danger,icon:(0,p.jsx)(f.DownOutlined,{}),"aria-label":`${S.label} options`})})]})]}):(0,p.jsxs)(`div`,{ref:l,style:M,children:[j,A,P]})}var{Text:VI,Title:HI}=d.Typography;function UI(e,t){return!(0,u.isValidElement)(e)||e.type!==`img`?e:(0,u.cloneElement)(e,{style:{maxWidth:t,maxHeight:t,objectFit:`contain`,verticalAlign:`middle`,flex:`0 0 auto`,...e.props.style??{}}})}var WI={action:22,callout:26,line:16,button:18},GI=new Set([`callout`,`steps`,`fields`,`timeline`,`custom`,`chips`,`list`,`metrics`,`tabs`]),KI={wrap:(e,t)=>t,isBusy:()=>!1,anyBusy:!1};function qI({button:e,block:t=!1,fb:n=KI}){let r=n.isBusy(e.key),i=(0,p.jsx)(d.Button,{className:e.className,type:e.type??`default`,danger:e.danger,icon:UI(e.icon,WI.button),disabled:e.disabled||!e.onClick,loading:r||void 0,"aria-busy":r||void 0,onClick:n.wrap(e.key,e.onClick),block:t,children:e.label});return e.menu?(0,p.jsxs)(d.Space.Compact,{block:t,children:[i,(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:e.menu.map(e=>({key:e.key,label:e.label,icon:UI(e.icon,WI.button),danger:e.danger,disabled:e.disabled||!e.onClick})),onClick:({key:t})=>{let r=e.menu.find(e=>e.key===t);return r?.onClick?n.wrap(e.key,r.onClick)():void 0}},children:(0,p.jsx)(d.Button,{type:e.type??`default`,icon:(0,p.jsx)(f.DownOutlined,{}),"aria-label":`${e.label} options`})})]}):i}var JI={display:`inline-flex`,alignItems:`center`,justifyContent:`center`,flex:`0 0 auto`,width:48,height:48,borderRadius:8,fontSize:22,color:`var(--ant-color-primary)`,background:`var(--ant-color-primary-bg)`};function YI({spec:e,data:t,ctx:n}){let r=hI(pI(e.name,t,n)),i=e.avatar!==!1,a=i?pI(e.avatar,t,n):null,o=i&&e.icon?uI(typeof e.icon==`function`?e.icon(t,n):e.icon):null,s=pI(e.badge,t,n),c=hI(s?.label??s),l=dI(pI(e.tags,t,n)).map((e,t)=>({key:t,label:hI(e?.label??e),color:e?.color})).filter(e=>$(e.label)),u=dI(e.lines).filter(e=>gI(e,t,n)).map((e,r)=>({key:r,icon:UI(uI(e.icon),WI.line),text:hI(pI(e.value??e,t,n))})).filter(e=>$(e.text)),m=dI(e.meta).map(e=>({label:mI(e.label,t,n),text:hI(pI(e.value,t,n))})).filter(e=>$(e.text));return(0,p.jsxs)(d.Flex,{gap:12,align:`flex-start`,className:`cc-qv-identity`,children:[o?(0,p.jsx)(`span`,{className:`cc-qv-identity__tile`,"aria-hidden":`true`,style:JI,children:o}):i&&(0,p.jsx)(d.Avatar,{size:64,src:$(a)?a:void 0,children:SI(r)}),(0,p.jsxs)(d.Flex,{vertical:!0,gap:2,flex:1,style:{minWidth:0},children:[l.length>0&&(0,p.jsx)(d.Flex,{gap:4,wrap:!0,className:`cc-qv-identity__tags`,children:l.map(e=>(0,p.jsx)(d.Tag,{color:e.color,style:{marginInlineEnd:0},children:e.label},e.key))}),(0,p.jsxs)(d.Flex,{justify:`space-between`,align:`flex-start`,gap:8,children:[(0,p.jsxs)(VI,{strong:!0,ellipsis:!0,children:[r||`—`,n.openFull&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,icon:(0,p.jsx)(f.ExportOutlined,{}),onClick:n.openFull,"aria-label":`Open full record`})]}),$(c)&&(0,p.jsx)(d.Tag,{color:s?.color,children:c})]}),u.map(e=>(0,p.jsxs)(VI,{type:`secondary`,children:[e.icon,` `,e.text]},e.key)),m.length>0&&(0,p.jsx)(VI,{type:`secondary`,children:m.map(e=>e.label?`${e.label}: ${e.text}`:e.text).join(` `)})]})]})}function XI({buttons:e,fb:t=KI}){return e.length?(0,p.jsx)(d.Flex,{justify:`space-around`,wrap:!0,gap:8,children:e.map(e=>(0,p.jsxs)(d.Flex,{vertical:!0,align:`center`,gap:2,children:[(0,p.jsx)(d.Tooltip,{title:e.tooltip||e.label,children:(0,p.jsx)(d.Button,{shape:`circle`,size:`large`,icon:UI(e.icon,WI.action),danger:e.danger,disabled:e.disabled||!e.onClick,loading:t.isBusy(e.key)||void 0,"aria-busy":t.isBusy(e.key)||void 0,onClick:t.wrap(e.key,e.onClick),"aria-label":e.label})}),$(e.note)&&(0,p.jsx)(VI,{type:`secondary`,style:{fontSize:12},children:e.note})]},e.key))}):null}function ZI({section:e,data:t,ctx:n,fb:r=KI}){let i=hI(mI(e.title,t,n)),a=String(e.type??``).trim(),o;if(!GI.has(a))o=(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`Quick View config: unknown section type "${a||`(none)`}".`});else if(a===`callout`){let r=pI(e.value,t,n),i=hI(r?.title??r),a=hI(r?.text),[s]=_I(e.button?[{key:`action`,type:`primary`,...e.button}]:[],t,n);o=(0,p.jsxs)(d.Flex,{vertical:!0,gap:10,children:[$(i)?(0,p.jsxs)(d.Flex,{gap:10,align:`flex-start`,children:[UI(uI(e.icon),WI.callout),(0,p.jsxs)(d.Flex,{vertical:!0,children:[(0,p.jsx)(VI,{strong:!0,children:i}),$(a)&&(0,p.jsx)(VI,{type:`secondary`,children:a})]})]}):(0,p.jsx)(VI,{type:`secondary`,children:mI(e.empty,t,n)??`Nothing yet.`}),s&&(0,p.jsx)(qI,{button:s,block:!0})]})}else if(a===`steps`){let r=dI(mI(e.steps,t,n)).map(e=>({title:(0,p.jsx)(VI,{style:{fontSize:12,whiteSpace:`nowrap`},children:hI(e)})})),i=Number(pI(e.current,t,n));o=(0,p.jsx)(d.Steps,{progressDot:!0,size:`small`,current:Number.isFinite(i)&&i>=0?i:-1,items:r})}else if(a===`fields`){let r=dI(e.fields).filter(e=>e&&gI(e,t,n)).map((r,i)=>{let a=hI(pI(r.value,t,n)),o=$(a)?a:e.empty??`—`,s=mI(r.label,t,n),c=r.icon?UI(uI(r.icon),WI.line):null;return{key:r.key??String(i),label:c?(0,p.jsxs)(`span`,{className:`cc-qv-field-label`,children:[c,(0,p.jsx)(`span`,{children:s})]}):s,children:r.tag&&$(a)?(0,p.jsx)(d.Tag,{color:pI(r.color,t,n),children:o}):o}});o=(0,p.jsx)(d.Descriptions,{column:1,size:`small`,items:r})}else if(a===`timeline`){let r=Number(e.limit)>0?Number(e.limit):3,i=dI(pI(e.items,t,n)).slice(0,r);o=i.length?(0,p.jsx)(d.Timeline,{items:i.map((e,t)=>({key:e?.key??String(t),...e?.icon?{dot:(0,p.jsx)(`span`,{className:`cc-qv-timeline-icon`,children:UI(uI(e.icon),WI.line)})}:{},children:(0,p.jsxs)(d.Flex,{vertical:!0,children:[(0,p.jsx)(VI,{strong:!0,children:hI(e?.title)}),$(hI(e?.time))&&(0,p.jsx)(VI,{type:`secondary`,children:hI(e.time)}),$(hI(e?.text))&&(0,p.jsx)(VI,{children:hI(e.text)})]})}))}):(0,p.jsx)(VI,{type:`secondary`,children:mI(e.empty,t,n)??`No activity yet.`})}else if(a===`chips`){let r=dI(pI(e.items,t,n)).map((e,t)=>({key:t,label:hI(e?.label??e),color:e?.color})).filter(e=>$(e.label));o=r.length?(0,p.jsx)(d.Flex,{gap:6,wrap:!0,className:`cc-qv-chips`,children:r.map(e=>(0,p.jsx)(d.Tag,{color:e.color,style:{marginInlineEnd:0},children:e.label},e.key))}):(0,p.jsx)(VI,{type:`secondary`,children:mI(e.empty,t,n)??`—`})}else if(a===`list`){let r=dI(pI(e.items,t,n)).filter(e=>e&&$(hI(e.title))),i=Number(e.limit)>0?Number(e.limit):r.length,a=r.slice(0,i),[s]=e.more?_I([{key:`more`,type:`link`,...e.more}],t,n):[];o=a.length?(0,p.jsxs)(d.Flex,{vertical:!0,gap:10,className:`cc-qv-list`,children:[a.map((t,n)=>{let r=t.tag&&typeof t.tag==`object`?t.tag:$(t.tag)?{label:t.tag}:null,i=hI(t.title);return(0,p.jsxs)(d.Flex,{gap:10,align:`center`,className:`cc-qv-list__item`,children:[e.avatars!==!1&&t.avatar!==!1&&(0,p.jsx)(d.Avatar,{size:32,children:SI($(t.avatar)?t.avatar:i)}),(0,p.jsxs)(d.Flex,{vertical:!0,flex:1,style:{minWidth:0},children:[(0,p.jsx)(VI,{strong:!0,ellipsis:!0,children:i}),$(hI(t.text))&&(0,p.jsx)(VI,{type:`secondary`,ellipsis:!0,children:hI(t.text)})]}),r&&$(hI(r.label))&&(0,p.jsx)(d.Tag,{color:r.color,style:{marginInlineEnd:0},children:hI(r.label)})]},t.key??n)}),s&&(0,p.jsx)(qI,{button:s})]}):(0,p.jsx)(VI,{type:`secondary`,children:mI(e.empty,t,n)??`Nothing yet.`})}else if(a===`metrics`){let r=dI(e.items).filter(e=>e&&gI(e,t,n)).map((e,r)=>({key:e.key??String(r),label:mI(e.label,t,n),value:hI(pI(e.value,t,n)),percent:Number(pI(e.percent,t,n)),note:hI(pI(e.note,t,n))})).filter(e=>$(e.value));o=r.length?(0,p.jsx)(d.Flex,{gap:12,wrap:!0,className:`cc-qv-metrics`,children:r.map(e=>(0,p.jsxs)(d.Flex,{vertical:!0,gap:2,className:`cc-qv-metric`,style:{flex:`1 1 120px`,minWidth:0},children:[(0,p.jsx)(VI,{type:`secondary`,style:{fontSize:12},children:e.label}),(0,p.jsx)(VI,{strong:!0,children:e.value}),Number.isFinite(e.percent)&&(0,p.jsx)(d.Progress,{percent:Math.max(0,Math.min(100,Math.round(e.percent))),showInfo:!1,size:`small`}),$(e.note)&&(0,p.jsx)(VI,{type:`secondary`,style:{fontSize:12},children:e.note})]},e.key))}):(0,p.jsx)(VI,{type:`secondary`,children:mI(e.empty,t,n)??`—`})}else o=a===`tabs`?(0,p.jsx)(QI,{section:e,data:t,ctx:n}):typeof e.render==`function`?e.render(t,n):null;let[s]=e.action?_I([{key:`section-action`,...e.action}],t,n):[],c=!!s&&e.actionPlacement===`header`,l=e.titleIcon?UI(uI(e.titleIcon),WI.line):null,u=$(i)?(0,p.jsx)(HI,{level:5,style:{margin:0},children:i}):null;return(0,p.jsxs)(d.Flex,{vertical:!0,gap:8,"data-qv-section":$(e.key)?String(e.key):a,children:[(l||c)&&(u||c)?(0,p.jsxs)(d.Flex,{align:`center`,gap:8,className:`cc-qv-section-head`,children:[l&&(0,p.jsx)(`span`,{className:`cc-qv-section-icon`,"data-tone":e.tone||void 0,"aria-hidden":`true`,children:l}),u,c&&(0,p.jsx)(d.Button,{type:`link`,size:`small`,className:[`cc-qv-section-action`,`cc-qv-section-action--header`,s.className].filter(Boolean).join(` `),disabled:s.disabled||!s.onClick,loading:r.isBusy(`section:${e.key??a}`)||void 0,onClick:r.wrap(`section:${e.key??a}`,s.onClick),style:{marginLeft:`auto`,paddingInline:0},children:s.label})]}):u,o,s&&!c&&(0,p.jsx)(d.Button,{block:!0,type:s.type,icon:UI(s.icon,WI.button),className:[`cc-qv-section-action`,s.className].filter(Boolean).join(` `),disabled:s.disabled||!s.onClick,loading:r.isBusy(`section:${e.key??a}`)||void 0,"aria-busy":r.isBusy(`section:${e.key??a}`)||void 0,onClick:r.wrap(`section:${e.key??a}`,s.onClick),children:s.label})]})}function QI({section:e,data:t,ctx:n}){let r=dI(e.items).filter(e=>e&&$(e.key)&&gI(e,t,n)).map(e=>({...e,sections:dI(e.sections).filter(e=>e&&gI(e,t,n))})).filter(e=>e.sections.length>0),[i,a]=(0,u.useState)(``);if(!r.length)return null;let o=r.find(e=>e.key===i)??r[0];return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,className:`cc-qv-tabs`,children:[(0,p.jsx)(d.Segmented,{className:`cc-qv-tabs__bar`,block:!0,value:o.key,onChange:e=>a(String(e)),options:r.map(e=>({value:e.key,label:mI(e.label,t,n)??e.key}))}),o.sections.map((e,r)=>(0,p.jsxs)(`div`,{children:[r>0&&(0,p.jsx)(d.Divider,{style:{margin:`0 0 12px`}}),(0,p.jsx)(ZI,{section:e,data:t,ctx:n})]},e.key??r))]})}function $I({config:e,module:t,id:n,record:r=null,onClose:i,onOpenFull:a,refreshKey:o=0,extraCtx:s=null}){let c=(0,h.useNavigate)(),l=(0,h.useLocation)(),[m,g]=(0,u.useState)({key:``,data:null,error:null}),[_,v]=(0,u.useState)(0),y=`${t}|${n}`,b=!!(r&&typeof r==`object`),[x,S]=(0,u.useState)(b?y:``);b&&x!==y&&S(y);let C=b||x===y,w=e?.reloadOnRow===!1?``:C?`|row`:`|-`,T=`${t}|${n}|${o}|${_}`,E=`${T}${w}`,D=typeof e?.load==`function`?e.load:null,O=e?.keepOnRefresh===!0;(0,u.useEffect)(()=>{if(!D||!n)return;let e=!1;return Promise.resolve().then(()=>D(n,{record:r,module:t,parentId:s?.parentId,parentModule:s?.parentModule})).then(t=>{e||g({key:E,ident:y,data:t??{},error:null})}).catch(t=>{e||g(O?e=>({key:E,ident:y,data:e.ident===y?e.data:null,error:t}):{key:E,ident:y,data:null,error:t})}),()=>{e=!0}},[D,n,t,E]);let k=!D||m.key===E,A=O&&!!D&&!k&&m.ident===y&&m.data!=null,j=!!D&&!k&&w===`|row`&&m.key===`${T}|-`&&m.data!=null,M=k||A||j,N=(0,u.useMemo)(()=>{let e=M&&D?m.data:null,t=r&&typeof r==`object`?r:null,n=e?.record&&typeof e.record==`object`?e.record:null;return{...e??{},record:t||n?{...t??{},...n??{}}:null}},[M,D,m.data,r]),P=Vc(),F=MI(jI(e)),I=(0,u.useMemo)(()=>({...s??{},id:n,module:t,record:r,navigate:c,location:l,close:i,openFull:a,refresh:()=>v(e=>e+1),adminActionsVersion:P}),[s,n,t,r,c,l,i,a,P]),L=O?dI(e?.footer).filter(e=>e&&$(e.key)&&e.moduleActions&&typeof e.moduleActions==`object`&&gI(e,N,I)).map(e=>String(mI(e.moduleActions.module,N,I)||t||``)).filter(Boolean).join(`
|
|
46
46
|
`):``,[R,z]=(0,u.useState)(``);(0,u.useEffect)(()=>{if(!L)return;let e=!1;return Promise.all(L.split(`
|
|
47
|
-
`).map(e=>mc(e))).then(()=>{e||z(L)}),()=>{e=!0}},[L]);let B=L!==``&&R!==L,V=A?(0,p.jsx)(`div`,{className:`cc-progress`,role:`progressbar`,"aria-label":`Refreshing`,style:{position:`absolute`,top:0,left:0,right:0}}):null,H=hI(mI(e?.title,N,I))||`Quick View`,U=e?.header===!1?null:(0,p.jsxs)(d.Flex,{justify:`space-between`,align:`center`,children:[(0,p.jsx)(HI,{level:5,style:{margin:0},children:H}),(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),onClick:i,"aria-label":`Close quick view`})]});if(!e)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`No Quick View is configured for "${t}".`})]});if(!N.record&&!M)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Skeleton,{active:!0,avatar:!0,paragraph:{rows:8}})]});if(!N.record)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`This record could not be loaded.`})]});if(typeof e.render==`function`)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:14,style:O?{padding:16,position:`relative`}:{padding:16},"aria-label":H,"aria-busy":A||void 0,role:`region`,children:[V,U,M?e.render(N,I):(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:6}})]});let W=_I(e.quickActions,N,I),G=dI(e.sections).filter(e=>e&&gI(e,N,I)),ee=dI(e.footer??(a?[{key:`full`,label:`Open full details`,onClick:()=>a()}]:[])).filter(e=>e&&$(e.key)).map(e=>e.moduleActions&&typeof e.moduleActions==`object`?gI(e,N,I)?{key:String(e.key),moduleActions:e.moduleActions}:null:_I([e],N,I)[0]??null).filter(Boolean),te=e.stickyFooter===!0,ne=te?{padding:`16px 16px 0`,minHeight:`100%`,boxSizing:`border-box`}:{padding:16},re=te?{position:`sticky`,bottom:0,zIndex:2,marginTop:`auto`,padding:`12px 0 16px`,background:`var(--ant-color-bg-container, #fff)`,borderTop:`1px solid var(--ant-color-split, rgba(5, 5, 5, 0.06))`}:void 0;return(0,p.jsxs)(d.Flex,{vertical:!0,gap:14,style:O?{...ne,position:`relative`}:ne,"aria-label":H,"aria-busy":A||void 0,role:`region`,children:[V,U,e.identity&&(0,p.jsx)(YI,{spec:e.identity,data:N,ctx:I}),(0,p.jsx)(XI,{buttons:W,fb:F}),m.error&&M&&(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`Some details could not be loaded.`}),!M&&(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:4},title:!1}),M&&G.map((e,t)=>(0,p.jsxs)(`div`,{children:[t>0&&(0,p.jsx)(d.Divider,{style:{margin:`0 0 12px`}}),(0,p.jsx)(ZI,{section:e,data:N,ctx:I,fb:F})]},e.key??t)),ee.length>0&&(0,p.jsx)(d.Flex,{gap:8,className:te?`cc-qv-footer cc-qv-footer--sticky`:`cc-qv-footer`,style:B?{...re??{},minHeight:`var(--ant-control-height, 32px)`,boxSizing:`content-box`}:re,children:ee.map(t=>t.moduleActions?(0,p.jsx)(BI,{spec:t.moduleActions,data:N,ctx:I,style:{flex:1},feedback:jI(e)},t.key):(0,p.jsx)(`div`,{style:{flex:1},children:(0,p.jsx)(qI,{button:t,block:!0,fb:F})},t.key))})]})}function eL({config:e,refreshKey:t=0}){let r=(0,h.useNavigate)(),i=(0,h.useLocation)(),a=e??{},o=a.module,s=vI(a.layout),c=a.strictPermissions===!0?{strict:!0,aliases:a.permissionAliases}:void 0,{canView:l,canAdd:f,canEdit:m,canDelete:g}=n.Rt(o,c),_=Vc(),[v,y]=(0,u.useState)(0),b=()=>y(e=>e+1),x=a.realtime?typeof a.realtime==`object`?a.realtime:{}:null,S=cI({topics:x?(typeof x.topics==`function`?dI(x.topics({module:o})):[$(o)?zF(o):``]).filter($):[],enabled:!!x,debounceMs:x?.debounceMs??600}),C=t+v+S.tick,w=dI(a.refreshEvents).filter($).join(`|`);(0,u.useEffect)(()=>{if(!w||typeof window>`u`)return;let e=w.split(`|`),t=()=>y(e=>e+1);return e.forEach(e=>window.addEventListener(e,t)),()=>e.forEach(e=>window.removeEventListener(e,t))},[w]);let T={module:o,navigate:r,location:i,refresh:b,can:{view:l,add:f,edit:m,delete:g},adminActionsVersion:_},E=_I(a.buttons,{record:null},T),D=typeof a.fullView==`function`?a.fullView:null,O=(e,t)=>{D&&r(D(t))},k=yI(a.quickView,o),A=({module:e,id:t,record:n,onClose:r,onOpenFull:i})=>k?(0,p.jsx)($I,{config:k,module:e,id:t,record:n,onClose:r,onOpenFull:D?i:void 0,refreshKey:C,extraCtx:{can:T.can,...a.context??{}}},`${e}:${t}`):null;if(!$(o))return null;let j={presentation:{title:a.title},...wI(a.columns)??{},...a.listProps??{}},M=$(a.title)||dI(a.breadcrumb).length||E.length;return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,children:[M?(0,p.jsxs)(d.Flex,{justify:`space-between`,align:`center`,gap:12,wrap:!0,children:[(0,p.jsxs)(d.Flex,{vertical:!0,gap:4,children:[dI(a.breadcrumb).length>0&&(0,p.jsx)(n.Dt,{items:a.breadcrumb}),$(a.title)&&(0,p.jsx)(d.Typography.Title,{level:4,style:{margin:0},children:a.title})]}),E.length>0&&(0,p.jsx)(d.Flex,{gap:8,wrap:!0,children:E.map(e=>{let t=(0,p.jsx)(d.Button,{type:e.type??`primary`,className:e.className,icon:e.icon,danger:e.danger,disabled:e.disabled||!e.onClick,onClick:e.onClick,children:e.label},e.key);return e.tooltip?(0,p.jsx)(d.Tooltip,{title:e.tooltip,children:t},e.key):t})})]}):null,typeof a.top==`function`?a.top(T):a.top??null,(0,p.jsx)(DF,{active:!0,unscoped:!0,fetchData:typeof a.fetch==`function`?a.fetch:null,recordLinks:a.recordLinks===`navigate`||a.quickView===!1?`navigate`:`inPlace`,openInPlace:a.quickView!==!1,module:o,relation:a.scope??{},title:a.title,showRail:s.showRail,railMode:s.railMode,railWidth:s.filterWidth,quickViewMode:s.quickViewMode,quickViewWidth:s.quickViewWidth,listComponent:a.list,listProps:j,renderQuickView:A,onOpenRecord:D?O:void 0,refreshKey:C,keepPageInUrl:a.keepPageInUrl===!0})]})}function tL({tabs:e=[],parentId:t,title:n=`Overview`,refreshKey:r=0}){let[i,a]=(0,h.useSearchParams)(),{counts:o,loading:s}=wF(e,t,r),c=e=>{let t=new URLSearchParams(i);t.set(`tab`,e),t.delete(`sub`),a(t,{replace:!0})};return(0,p.jsx)(`section`,{className:`rh-overview`,"aria-label":n,children:e.map(e=>{let t=o[e.key];return(0,p.jsxs)(`button`,{type:`button`,className:`rh-overview__card`,onClick:()=>c(e.key),children:[(0,p.jsx)(`span`,{className:`rh-overview__label`,children:e.label}),(0,p.jsx)(`strong`,{className:`rh-overview__value`,children:s&&t===void 0?`…`:t==null?`–`:t.toLocaleString()}),(0,p.jsx)(`span`,{className:`rh-overview__open`,children:`Open`})]},e.key)})})}var nL=(0,u.createContext)(null);function rL(){return(0,u.useContext)(nL)}var iL=[];function aL({moduleName:e,id:t,header:n,breadcrumb:r=null,headerActions:i=null,headerEndSlot:a=null,banner:o=null,onClose:s,tabs:l=iL,stats:m=iL,defaultTab:g,maxVisibleTabs:_=12,alwaysShowMore:v=!1,moreEmptyLabel:y=`No more sections`,listComponent:b,listPropsFor:x,renderQuickView:S,onOpenRecord:C,refreshKey:w=0,railMode:T,quickViewMode:E,railWidth:D,quickViewWidth:O,className:k=``,selectedParam:A=``,listCacheMs:j=0,preloadTabs:M=!1,preloadDelayMs:N=1200}){let[P,F]=(0,h.useSearchParams)(),I=i??a,L=l.map(e=>e.key),R=P.get(`tab`),z=g&&L.includes(g)?g:L[0],B=R&&L.includes(R)?R:z,V=e=>{if(!e||e===B)return;let t=new URLSearchParams(P);t.set(`tab`,e),[...t.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>t.delete(e)),t.delete(`sub`),A&&t.delete(A),F(t,{replace:!0})},H=(0,u.useMemo)(()=>l.filter(e=>e.module&&e.relation),[l]),{counts:U,loading:W}=wF(m,t,w),G=m.map(e=>({key:e.key,label:e.label,value:U[e.key],active:!!e.tab&&B===e.tab,onClick:e.tab?()=>V(e.tab):void 0})),ee=l.slice(0,_),te=l.slice(_),ne=te.some(e=>e.key===B),re=te.length?te.map(e=>({key:e.key,label:e.label})):[{key:`__none`,label:y,disabled:!0}],ie=(0,u.useMemo)(()=>({listComponent:b,listPropsFor:x,renderQuickView:S,onOpenRecord:C,refreshKey:w,relatedTabs:H,railMode:T,quickViewMode:E,activeTab:B}),[b,x,S,C,w,H,T,E,B]),ae=e=>({tabKey:e.key,module:e.module,relation:e.relation,parentId:t,title:e.label,showRail:e.rail!==!1,railMode:e.railMode??T,quickViewMode:e.quickViewMode??E,...e.railWidth??D?{railWidth:e.railWidth??D}:{},...e.quickViewWidth??O?{quickViewWidth:e.quickViewWidth??O}:{},listComponent:e.listComponent??b,listProps:x?.(e.module,e)??e.listProps,renderQuickView:S,onOpenRecord:C,refreshKey:w,cacheMs:e.cacheMs??j,...typeof e.fetch==`function`?{fetchData:e.fetch}:{},...e.recordLinks?{recordLinks:e.recordLinks}:{},...e.access&&typeof e.access==`object`&&e.access.module?{accessModule:String(e.access.module)}:{}}),oe=(0,u.useMemo)(()=>M?H.filter(e=>!e.component&&typeof e.render!=`function`&&(e.cacheMs??j)>0):[],[M,H,j]),[se,ce]=(0,u.useState)({id:t,ready:!1,done:[]});se.id!==t&&ce({id:t,ready:!1,done:[]}),(0,u.useEffect)(()=>{if(!oe.length)return;let e=null,n=()=>ce(e=>e.id===t?{...e,ready:!0}:e),r=setTimeout(()=>{typeof window<`u`&&typeof window.requestIdleCallback==`function`?e=window.requestIdleCallback(n,{timeout:1500}):n()},N);return()=>{clearTimeout(r),e!==null&&typeof window<`u`&&window.cancelIdleCallback?.(e)}},[oe.length,N,t]);let K=(0,u.useCallback)(e=>{ce(t=>t.done.includes(e)?t:{...t,done:[...t.done,e]})},[]),le=se.ready&&se.id===t?oe.find(e=>e.key!==B&&!se.done.includes(e.key))??null:null,ue=l.find(e=>e.key===B)??null,de=null,fe=typeof ue?.view==`function`?ue.view({id:t,moduleName:e,refreshKey:w,searchParams:P}):null;if(fe!=null&&fe!==!1)de=fe;else if(typeof ue?.render==`function`)de=ue.render({id:t,moduleName:e,refreshKey:w});else if(ue?.component){let n=ue.component;de=(0,p.jsx)(n,{id:t,moduleName:e,refreshKey:w})}else ue?.type===`overview`?de=(0,p.jsx)(tL,{tabs:H,parentId:t,title:ue.label,refreshKey:w}):ue?.module&&(de=(0,p.jsx)(DF,{active:!0,...ae(ue),...A?{selectedParam:A}:{}},ue.key));return(0,p.jsx)(nL.Provider,{value:ie,children:(0,p.jsxs)(`div`,{className:`rh-hub ${k}`.trim(),"data-module":e,children:[(r||s)&&(0,p.jsxs)(`div`,{className:`rh-hub__crumbs`,children:[(0,p.jsx)(`div`,{className:`rh-hub__crumbs-trail`,children:r}),s&&(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),onClick:s,"aria-label":`Close`})]}),o,(0,p.jsxs)(`div`,{className:`rh-hub__head`,children:[(0,p.jsx)(`div`,{className:`rh-hub__title`,children:n??(0,p.jsx)(ns,{moduleName:e,id:t,refreshKey:w,hideActions:!0})}),(m.length>0||I)&&(0,p.jsxs)(`div`,{className:`rh-hub__aside`,children:[m.length>0&&(0,p.jsx)(c.i,{items:G,loading:W,ariaLabel:`Summary`,className:`rh-hub__stats`}),I&&(0,p.jsx)(`div`,{className:`rh-hub__actions`,children:I})]})]}),(0,p.jsxs)(`nav`,{className:`rh-tabs`,role:`tablist`,"aria-label":`Sections`,children:[ee.map(e=>(0,p.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e.key===B,className:`rh-tabs__item${e.key===B?` is-active`:``}`,onClick:()=>V(e.key),children:e.label},e.key)),(te.length>0||v)&&(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:re,onClick:({key:e})=>V(e)},children:(0,p.jsxs)(`button`,{type:`button`,className:`rh-tabs__item rh-tabs__more${ne?` is-active`:``}`,children:[ne?l.find(e=>e.key===B)?.label:`More`,` `,(0,p.jsx)(f.DownOutlined,{})]})})]}),(0,p.jsxs)(`section`,{className:`rh-hub__body`,role:`tabpanel`,"aria-label":ue?.label,children:[de,le&&(0,p.jsx)(DF,{preload:!0,onPreloaded:K,...ae(le)},`preload:${le.key}`)]})]})})}var oL=[];function sL({tab:e,moduleName:t,id:n,refreshKey:r,onOpenTab:i=null}){let a=(0,u.useRef)(null),o=JSON.stringify(e.groups??null),[s]=(0,u.useState)(()=>TI(JSON.parse(o))),c=typeof e.decorate==`function`?e.decorate:null;(0,u.useEffect)(()=>{let e=a.current;if(!e||!c)return;let r=!1,i=()=>{if(!r){r=!0;try{c(e,{id:n,moduleName:t})}finally{r=!1}}};i();let o=new MutationObserver(()=>{o.disconnect(),i(),o.observe(e,{childList:!0,subtree:!0})});return o.observe(e,{childList:!0,subtree:!0}),()=>o.disconnect()},[c,n,t]);let l=null;return typeof e.empty==`function`?l=e.empty({id:n,moduleName:t}):typeof e.empty==`string`?l=(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:e.empty}):e.empty&&(l=e.empty),(0,p.jsx)(`div`,{ref:a,className:`rh-details`,"data-tab":e.key,children:(0,p.jsx)(Xi,{moduleName:t,id:n,refreshKey:r,groupFilter:s,emptyContent:l,onOpenTab:i})})}var cL=15e3,lL=4e3;function uL(e){let t={};return[`closeQuickView`,`highlight`,`ownWithinMs`].forEach(n=>{e&&e[n]!==void 0&&(t[n]=e[n])}),t}function dL({config:e,id:t,refreshKey:r=0}){let i=(0,h.useNavigate)(),a=(0,h.useLocation)(),[o,s]=(0,h.useSearchParams)(),c=e=>{e&&s(t=>{let n=new URLSearchParams(t);return n.set(`tab`,e),n.delete(`sub`),n.delete(`qv`),[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),n},{replace:!0})},l=e??{},f=l.module,m=vI(l.layout),g=l.strictPermissions===!0?{strict:!0,aliases:l.permissionAliases}:void 0,{canView:_,canAdd:v,canEdit:y,canDelete:b}=n.Rt(f,g),x=Vc(),S=l.tabAccess===`view`,C=n.zt(g),[w,T]=(0,u.useState)(0),[E,D]=(0,u.useState)(null),O=()=>T(e=>e+1),k=dI(l.refreshEvents).filter($).join(`|`);(0,u.useEffect)(()=>{if(!k||typeof window>`u`)return;let e=k.split(`|`),t=()=>T(e=>e+1);return e.forEach(e=>window.addEventListener(e,t)),()=>e.forEach(e=>window.removeEventListener(e,t))},[k]);let A={id:t,module:f,navigate:i,location:a,refresh:O,can:{view:_,add:v,edit:y,delete:b},adminActionsVersion:x},j={record:E},M=l.header?.onHeaderData,N=e=>{D(e??null),M?.(e)},P=_I(l.header?.moreActions,j,A).map(e=>({key:e.key,label:e.label,danger:e.danger,disabled:e.disabled,onClick:e.onClick})),F=_I(l.header?.buttons,j,A),I=F.length?(0,p.jsx)(p.Fragment,{children:F.map(e=>{let t=(0,p.jsx)(d.Button,{type:e.type??`primary`,className:e.className,icon:e.icon,danger:e.danger,disabled:e.disabled||!e.onClick,onClick:e.onClick,children:e.label},e.key);return e.tooltip?(0,p.jsx)(d.Tooltip,{title:e.tooltip,children:t},e.key):t})}):null,L=(S?DI(xI(l.tabs),C):xI(l.tabs)).map(e=>e.type===`details`?{...e,render:t=>(0,p.jsx)(sL,{tab:e,moduleName:t.moduleName,id:t.id,refreshKey:t.refreshKey,onOpenTab:c},e.key)}:Number(e.quickView?.width)>0?{...e,quickViewWidth:Number(e.quickView.width)}:e),R=l.fullView??null,z=l.quickView??null,B=o.get(`tab`),V=L.find(e=>e.key===B)??L.find(e=>e.key===l.defaultTab)??L[0]??null,H=typeof l.follow==`function`?l.follow:null,U=H?`qv`:``,W=U&&o.get(U)||``,G=l.realtime?typeof l.realtime==`object`?l.realtime:{}:null,ee=G?(typeof G.topics==`function`?dI(G.topics({id:t,module:f,tab:V?.key??``,openRecordId:W})):[BF(f,t),V?.module?zF(V.module):``,V?.module&&W?BF(V.module,W):``]).filter($):[],te=cI({topics:ee,enabled:!!G,debounceMs:G?.debounceMs??600}),ne=!!G?.highlight;oI(ee,e=>{let t=e?.id??e?.recordId;if(!t||!e?.module||/deleted/i.test(String(e?.type??``)))return;let r=L.find(t=>t.module&&RF(t.module)===RF(e.module));n.st(r?.module??e.module,t)},{enabled:!!G&&ne});let re=r+w+te.tick,ie=(e,t,n)=>{let r=R?.[e],a=typeof r==`function`?r(t,n??null):null;a&&i(a)},ae=H&&l.followThen&&typeof l.followThen==`object`?l.followThen:null,oe=(e,t)=>({presentation:{title:t.label},actionContext:{tab:t.label??``},...ae?.highlight?{highlightNew:!0}:{},...ne?{highlightUpdates:!0}:{},...wI(t.columns??l.columns?.[e])??{},...(typeof t.listProps==`function`?t.listProps({...A,tab:t,tabModule:e}):t.listProps)??{}}),se=({module:e,id:n,record:r,onClose:i,onOpenFull:a})=>{let o=(V?.module===e&&V?.quickView&&typeof V.quickView==`object`?V.quickView:null)??yI(z,e);return o?(0,p.jsx)($I,{config:o,module:e,id:n,record:r,onClose:i,onOpenFull:typeof R?.[e]==`function`?a:void 0,refreshKey:re,extraCtx:{parentId:t,parentModule:f,parent:E,tab:V?.key,tabLabel:V?.label??``,can:A.can}},`${V?.key??``}:${e}:${n}`):null},ce=ae?.highlight&&$(W)&&$(V?.module)?`${V.module}|${W}`:``;(0,u.useEffect)(()=>{if(!ce)return;let e=ce.indexOf(`|`);n.at(ce.slice(0,e),ce.slice(e+1))},[ce]);let K=`${w}|${te.tick}`,le=(0,u.useRef)(K),ue=(0,u.useRef)(null);(0,u.useEffect)(()=>{ue.current={follow:H,followThen:ae,openRecordId:W,activeTab:V,tabs:L,searchParams:o,setSearchParams:s,ctx:A}});let de=(0,u.useRef)(null),fe=(0,u.useRef)({sig:``,at:0}),pe=(0,u.useRef)(!0);(0,u.useEffect)(()=>(pe.current=!0,()=>{pe.current=!1}),[]);let me=()=>{try{return!!window.history.state?.usr?.background}catch{return!1}};if((0,u.useEffect)(()=>{le.current!==K&&(le.current=K,de.current={at:Date.now(),covered:me()});let e=de.current;if(!e)return;if(Date.now()-e.at>cL){de.current=null;return}if(me()){e.covered=!0;return}let t=ue.current;if(e.covered&&!t.openRecordId||(de.current=null,!t.follow||!t.openRecordId||!t.activeTab?.module))return;let r=t.searchParams.get(`sub`)||t.activeTab.relation?.subTabs?.[0]?.key||``;Promise.resolve(t.follow({module:t.activeTab.module,id:t.openRecordId,tab:t.activeTab.key,sub:r},t.ctx)).then(e=>{if(!pe.current||!e||!$(e.tab))return;let i=t.tabs.find(t=>t.key===e.tab);if(!i)return;let a=$(e.sub)?e.sub:``,o=`${t.openRecordId}|${i.key}|${a}`;if(fe.current.sig===o&&Date.now()-fe.current.at<lL)return;fe.current={sig:o,at:Date.now()};let s=i.relation?.subTabs?.[0]?.key||``;if(i.key===t.activeTab.key&&(a||s)===r)return;let c={...t.followThen??{},...uL(e)},l=!!t.followThen&&n.it(t.openRecordId,Number(c.ownWithinMs)>0?Number(c.ownWithinMs):void 0),u=l&&c.closeQuickView===!0;l&&c.highlight===!0&&n.ot(i.module??t.activeTab.module,$(e.id)?e.id:t.openRecordId),t.setSearchParams(e=>{let n=new URLSearchParams(e);return n.set(`tab`,i.key),a?n.set(`sub`,a):n.delete(`sub`),[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),u?n.delete(`qv`):n.set(`qv`,t.openRecordId),n},{replace:!0});let f=a?i.relation?.subTabs?.find(e=>e.key===a)?.label:``;d.message.info({key:`cc-detail-follow-moved`,content:$(e.notice)?e.notice:`Moved to ${i.label}${f?` › ${f}`:``}`})}).catch(()=>{})},[K,a]),!$(f)||!$(t))return null;let he=dI(l.breadcrumb).length?(0,p.jsx)(n.Dt,{items:l.breadcrumb}):null;return(0,p.jsx)(aL,{moduleName:f,id:t,breadcrumb:he,header:(0,p.jsx)(ns,{moduleName:f,id:t,onHeaderData:N,refreshKey:re,actionsInMore:l.header?.actionsInMore!==!1,moreActionsExtra:P.length?P:oL,actionsExtra:I}),tabs:L,stats:S?kI(l.stats??oL,L,C):l.stats??oL,defaultTab:l.defaultTab,maxVisibleTabs:l.maxVisibleTabs??12,alwaysShowMore:l.alwaysShowMore??!0,railMode:m.railMode,quickViewMode:m.quickViewMode,railWidth:m.filterWidth,quickViewWidth:m.quickViewWidth,listPropsFor:oe,renderQuickView:se,onOpenRecord:ie,refreshKey:re,listCacheMs:Number(l.listCacheMs)>0?Number(l.listCacheMs):0,preloadTabs:l.preloadTabs===!0,className:l.className??``,...U?{selectedParam:U}:{}})}function fL(e,t=new Date){let n=new Date(t);n.setHours(0,0,0,0),e===`week`&&n.setDate(n.getDate()-(n.getDay()+6)%7),e===`month`&&n.setDate(1);let r=new Date(t);return r.setHours(23,59,59,999),{key:e||`today`,from:n,to:r,fromIso:n.toISOString(),toIso:r.toISOString()}}var pL=new Intl.NumberFormat,mL=e=>e==null||!Number.isFinite(Number(e))?`–`:pL.format(Number(e));function hL(e,t,n,r=3){return dI(e).filter(e=>e?.attention&&Number.isFinite(t?.[e.key])).map(e=>({kpi:e,n:t[e.key]})).filter(({kpi:e,n:t})=>typeof e.attention.when==`function`?e.attention.when(t):t>0).sort((e,t)=>t.n-e.n).slice(0,r).map(({kpi:e,n:t})=>({key:e.key,n:t,text:typeof e.attention.text==`function`?e.attention.text(t,n):hI(mI(e.attention.text,{},n))||hI(mI(e.label,{},n)),to:typeof e.to==`function`?e.to(n):e.to}))}var gL=e=>String(e).padStart(2,`0`),_L=e=>`${e.getFullYear()}-${gL(e.getMonth()+1)}-${gL(e.getDate())}`;function vL(e,t=new Date){let n={today:14,week:28,month:90}[e]??14,r=new Date(t);r.setHours(0,0,0,0),r.setDate(r.getDate()-(n-1));let i=new Date(t);return i.setHours(23,59,59,999),{key:`last${n}`,days:n,from:r,to:i,fromIso:r.toISOString(),toIso:i.toISOString()}}function yL(e,t,n=e=>e.count){let r=new Map(dI(e).map(e=>[String(e.key),Number(n(e))||0])),i=[],a=new Date(t.from);for(let e=0;e<t.days;e+=1){let e=_L(a);i.push({key:e,value:r.get(e)??0,label:a.toLocaleDateString([],{day:`numeric`,month:`short`}),short:a.toLocaleDateString([],{day:`numeric`,month:`short`})}),a.setDate(a.getDate()+1)}return i}function bL(e,{labels:t,pick:n=e=>e.count,order:r}={}){let i=e=>e===`__other`?`Other`:e===``?`Not set`:typeof t==`function`?t(e)??e:t?.[e]??e,a=dI(e).map(e=>({key:String(e.key),label:String(i(String(e.key))),value:Number(n(e))||0}));if(Array.isArray(r)){let e=e=>{let t=r.indexOf(e);return t<0?r.length:t};a=a.sort((t,n)=>e(t.key)-e(n.key))}return a}function xL(e){let t=dI(e).map(Number).filter(Number.isFinite);if(t.length<2)return null;let n=Math.floor(t.length/2),r=t.slice(0,n).reduce((e,t)=>e+t,0),i=t.slice(t.length-n).reduce((e,t)=>e+t,0);return r===0?i===0?0:null:Math.round((i-r)/r*100)}var SL=new Intl.NumberFormat(void 0,{notation:`compact`,maximumFractionDigits:1}),CL=e=>e==null||!Number.isFinite(Number(e))?`–`:SL.format(Number(e)),wL=[`#4f6bed`,`#13a8a8`,`#f59f00`,`#e8590c`,`#7048e8`,`#2b8a3e`,`#d6336c`,`#868e96`],TL=e=>`var(--cc-dash-c${e%8+1}, ${wL[e%8]})`,EL=e=>e.reduce((e,t)=>e+(Number(t.value)||0),0);function DL({items:e,onSelect:t,format:n=mL,centerLabel:r=`Total`}){let[i,a]=(0,u.useState)(-1),o=EL(e),s=2*Math.PI*52,c=0,l=i>=0?e[i]:null;return(0,p.jsxs)(`div`,{className:`cc-chart cc-chart--donut`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:20},children:[(0,p.jsxs)(`svg`,{viewBox:`0 0 140 140`,width:`148`,height:`148`,role:`img`,"aria-label":e.map(e=>`${e.label} ${n(e.value)}`).join(`, `),style:{flex:`none`},children:[(0,p.jsx)(`circle`,{cx:`70`,cy:`70`,r:52,fill:`none`,stroke:`var(--cc-dash-track, #eef1f5)`,strokeWidth:`18`}),o>0&&e.map((e,r)=>{let l=Math.max(Number(e.value)||0,0)/o*s,u=(0,p.jsx)(`circle`,{cx:`70`,cy:`70`,r:52,fill:`none`,stroke:TL(r),strokeWidth:i===r?22:18,strokeDasharray:`${Math.max(l-1.5,0)} ${s}`,strokeDashoffset:-c,transform:`rotate(-90 70 70)`,style:{cursor:t?`pointer`:`default`,transition:`stroke-width 150ms ease`},onMouseEnter:()=>a(r),onMouseLeave:()=>a(-1),onClick:()=>t?.(e),children:(0,p.jsx)(`title`,{children:`${e.label}: ${n(e.value)}`})},e.key);return c+=l,u}),(0,p.jsx)(`text`,{x:`70`,y:`68`,textAnchor:`middle`,className:`cc-chart__center-value`,style:{fontSize:20,fontWeight:700,fill:`currentColor`},children:n(l?l.value:o)}),(0,p.jsx)(`text`,{x:`70`,y:`86`,textAnchor:`middle`,className:`cc-chart__center-label`,style:{fontSize:10,fill:`currentColor`,opacity:.65},children:(l?l.label:r).slice(0,18)})]}),(0,p.jsx)(`ul`,{className:`cc-chart__legend`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:6,flex:`1 1 160px`,minWidth:0},children:e.map((e,r)=>(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__legend-item`,disabled:!t,onClick:()=>t?.(e),onMouseEnter:()=>a(r),onMouseLeave:()=>a(-1),style:{display:`flex`,alignItems:`center`,gap:8,width:`100%`,padding:`2px 0`,font:`inherit`,background:`none`,border:0,textAlign:`start`,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{width:10,height:10,borderRadius:3,background:TL(r),flex:`none`}}),(0,p.jsx)(`span`,{className:`cc-chart__legend-label`,style:{flex:1,minWidth:0,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label}),(0,p.jsx)(`span`,{className:`cc-chart__legend-value`,style:{fontVariantNumeric:`tabular-nums`,fontWeight:600},children:n(e.value)}),(0,p.jsx)(`span`,{className:`cc-chart__legend-share`,style:{width:40,textAlign:`end`,opacity:.6,fontVariantNumeric:`tabular-nums`},children:o>0?`${Math.round(e.value/o*100)}%`:``})]})},e.key))})]})}function OL({items:e,onSelect:t,format:n=mL}){let r=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`ul`,{className:`cc-chart cc-chart--bar`,role:`list`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:10},children:e.map((e,i)=>(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__bar-row`,disabled:!t,onClick:()=>t?.(e),"aria-label":`${e.label}: ${n(e.value)}`,style:{display:`grid`,gridTemplateColumns:`minmax(80px, 34%) 1fr auto`,alignItems:`center`,gap:10,width:`100%`,padding:0,font:`inherit`,background:`none`,border:0,textAlign:`start`,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{className:`cc-chart__bar-label`,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label}),(0,p.jsx)(`span`,{className:`cc-chart__bar-track`,style:{height:10,borderRadius:5,background:`var(--cc-dash-track, #eef1f5)`,overflow:`hidden`},children:(0,p.jsx)(`span`,{className:`cc-chart__bar-fill`,style:{display:`block`,height:`100%`,width:`${(Number(e.value)||0)/r*100}%`,minWidth:e.value>0?4:0,borderRadius:5,background:TL(i),transition:`width 400ms ease`}})}),(0,p.jsx)(`span`,{className:`cc-chart__bar-value`,style:{fontVariantNumeric:`tabular-nums`,fontWeight:600},children:n(e.value)})]})},e.key))})}var kL=e=>e.map(([e,t],n)=>`${n?`L`:`M`}${e.toFixed(1)},${t.toFixed(1)}`).join(` `);function AL({items:e,height:t=180,format:n=mL,color:r=TL(0)}){let[i,a]=(0,u.useState)(-1),o=(0,u.useRef)(null),[s,c]=(0,u.useState)(600);(0,u.useEffect)(()=>{let e=o.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(([e])=>{let t=Math.round(e.contentRect.width);t>0&&c(t)});return t.observe(e),()=>t.disconnect()},[]);let l=t,d={l:36,r:8,t:12,b:22},f=Math.max(1,...e.map(e=>Number(e.value)||0)),m=f<=4?f:Math.ceil(f/4)*4,h=t=>d.l+(e.length>1?t/(e.length-1)*(s-d.l-d.r):(s-d.l-d.r)/2),g=e=>d.t+(1-(Number(e)||0)/m)*(l-d.t-d.b),_=e.map((e,t)=>[h(t),g(e.value)]),v=_.length?`${kL(_)} L${h(e.length-1)},${l-d.b} L${h(0)},${l-d.b} Z`:``,y=[0,.5,1].map(e=>Math.round(m*e)),b=Math.max(1,Math.ceil(e.length/Math.max(2,Math.floor(s/80)))),x=EL(e),S=i>=0?e[i]:null,C=`cc-area-${String(e[0]?.key??`x`).replace(/[^\w-]/g,``)}-${e.length}`;return(0,p.jsxs)(`div`,{ref:o,className:`cc-chart cc-chart--area`,style:{position:`relative`},children:[(0,p.jsxs)(`svg`,{viewBox:`0 0 ${s} ${l}`,width:`100%`,height:l,role:`img`,"aria-label":`Trend, ${e.length} points, total ${n(x)}, peak ${n(f)}`,onMouseLeave:()=>a(-1),onMouseMove:t=>{let n=t.currentTarget.getBoundingClientRect(),r=(t.clientX-n.left)/n.width*s,i=Math.round((r-d.l)/(s-d.l-d.r)*(e.length-1));a(Math.min(e.length-1,Math.max(0,i)))},children:[(0,p.jsx)(`defs`,{children:(0,p.jsxs)(`linearGradient`,{id:C,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,p.jsx)(`stop`,{offset:`0%`,stopColor:r,stopOpacity:`0.28`}),(0,p.jsx)(`stop`,{offset:`100%`,stopColor:r,stopOpacity:`0.02`})]})}),y.map(e=>(0,p.jsxs)(`g`,{children:[(0,p.jsx)(`line`,{x1:d.l,x2:s-d.r,y1:g(e),y2:g(e),stroke:`var(--cc-dash-grid, #e9edf2)`,strokeDasharray:e?`3 4`:``,vectorEffect:`non-scaling-stroke`}),(0,p.jsx)(`text`,{x:d.l-6,y:g(e)+3,textAnchor:`end`,style:{fontSize:10,fill:`currentColor`,opacity:.55},children:n(e)})]},e)),v?(0,p.jsx)(`path`,{d:v,fill:`url(#${C})`}):null,_.length?(0,p.jsx)(`path`,{d:kL(_),fill:`none`,stroke:r,strokeWidth:`2.25`,strokeLinejoin:`round`,vectorEffect:`non-scaling-stroke`}):null,e.map((t,n)=>(n%b===0&&e.length-1-n>=b/2||n===e.length-1)&&(0,p.jsx)(`text`,{x:h(n),y:l-6,textAnchor:n===0?`start`:n===e.length-1?`end`:`middle`,style:{fontSize:10,fill:`currentColor`,opacity:.55},children:t.short??t.label},t.key)),S?(0,p.jsxs)(`g`,{children:[(0,p.jsx)(`line`,{x1:h(i),x2:h(i),y1:d.t,y2:l-d.b,stroke:r,strokeOpacity:`0.35`,vectorEffect:`non-scaling-stroke`}),(0,p.jsx)(`circle`,{cx:h(i),cy:g(S.value),r:`4`,fill:`var(--cc-dash-surface, #fff)`,stroke:r,strokeWidth:`2`,vectorEffect:`non-scaling-stroke`})]}):null]}),S?(0,p.jsxs)(`div`,{className:`cc-chart__tip`,role:`status`,style:{position:`absolute`,top:0,left:`${h(i)/s*100}%`,transform:`translateX(${i>e.length/2?`-105%`:`5%`})`,pointerEvents:`none`,padding:`4px 8px`,borderRadius:6,fontSize:12,whiteSpace:`nowrap`,background:`var(--cc-dash-tip, rgba(23,32,44,.92))`,color:`#fff`},children:[S.label,`: `,(0,p.jsx)(`strong`,{children:n(S.value)})]}):null]})}function jL({items:e,height:t=180,format:n=mL,onSelect:r}){let i=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`div`,{className:`cc-chart cc-chart--column`,role:`list`,style:{display:`flex`,alignItems:`flex-end`,gap:8,height:t,paddingTop:18},children:e.map((e,t)=>(0,p.jsxs)(`button`,{type:`button`,role:`listitem`,disabled:!r,onClick:()=>r?.(e),"aria-label":`${e.label}: ${n(e.value)}`,style:{flex:1,minWidth:0,height:`100%`,display:`flex`,flexDirection:`column`,justifyContent:`flex-end`,alignItems:`center`,gap:4,padding:0,font:`inherit`,background:`none`,border:0,cursor:r?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{className:`cc-chart__col-value`,style:{fontSize:12,fontWeight:600,fontVariantNumeric:`tabular-nums`},children:n(e.value)}),(0,p.jsx)(`span`,{className:`cc-chart__col`,style:{width:`70%`,maxWidth:44,height:`${(Number(e.value)||0)/i*100}%`,minHeight:e.value>0?3:1,borderRadius:`6px 6px 2px 2px`,background:TL(t),transition:`height 400ms ease`}}),(0,p.jsx)(`span`,{className:`cc-chart__col-label`,style:{fontSize:11,opacity:.7,maxWidth:`100%`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label})]},e.key))})}function ML({items:e,onSelect:t,format:n=mL}){let r=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`ol`,{className:`cc-chart cc-chart--funnel`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:14},children:e.map((i,a)=>{let o=Number(i.value),s=a>0?Number(e[a-1].value):null,c=s>0&&Number.isFinite(o)?Math.round(o/s*100):null,l=c!==null&&c<=100?c:null,u=Number.isFinite(o)&&o>0?Math.max(2,o/r*100):0;return(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__funnel-row`,disabled:!t,onClick:()=>t?.(i),"aria-label":`${i.label}: ${n(i.value)}${l===null?``:`, ${l}% of ${e[a-1].label}`}`,style:{display:`grid`,gap:6,width:`100%`,padding:0,font:`inherit`,textAlign:`start`,background:`none`,border:0,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsxs)(`span`,{className:`cc-chart__funnel-head`,style:{display:`flex`,alignItems:`baseline`,gap:8,minWidth:0},children:[(0,p.jsx)(`span`,{className:`cc-chart__funnel-dot`,"aria-hidden":`true`,style:{flex:`none`,width:8,height:8,borderRadius:`50%`,background:TL(a),alignSelf:`center`}}),(0,p.jsx)(`span`,{className:`cc-chart__funnel-label`,style:{flex:1,minWidth:0,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,fontWeight:500},children:i.label}),l===null?null:(0,p.jsxs)(`span`,{className:`cc-chart__funnel-conv`,style:{fontSize:12,opacity:.65,whiteSpace:`nowrap`,fontVariantNumeric:`tabular-nums`},children:[l,`% of `,e[a-1].label]}),(0,p.jsx)(`strong`,{className:`cc-chart__funnel-value`,style:{fontVariantNumeric:`tabular-nums`,minWidth:48,textAlign:`end`},children:n(i.value)})]}),(0,p.jsx)(`span`,{className:`cc-chart__funnel-track`,"aria-hidden":`true`,style:{display:`block`,height:10,borderRadius:999,background:`rgba(127,127,127,0.14)`,overflow:`hidden`},children:(0,p.jsx)(`span`,{className:`cc-chart__funnel-bar`,style:{display:`block`,width:`${u}%`,height:`100%`,borderRadius:999,background:TL(a),transition:`width 400ms cubic-bezier(0.2, 0, 0, 1)`}})})]})},i.key)})})}function NL({values:e,color:t=TL(0),width:n=72,height:r=26}){if(!e?.length)return null;let i=Math.max(1,...e),a=e.map((t,a)=>[e.length>1?a/(e.length-1)*n:n/2,r-2-t/i*(r-4)]);return(0,p.jsxs)(`svg`,{className:`cc-chart cc-chart--spark`,width:n,height:r,viewBox:`0 0 ${n} ${r}`,"aria-hidden":`true`,style:{display:`block`,overflow:`visible`},children:[(0,p.jsx)(`path`,{d:`${kL(a)} L${n},${r} L0,${r} Z`,fill:t,fillOpacity:`0.12`}),(0,p.jsx)(`path`,{d:kL(a),fill:`none`,stroke:t,strokeWidth:`1.75`,strokeLinejoin:`round`,strokeLinecap:`round`})]})}var PL=[{key:`today`,label:`Today`},{key:`week`,label:`Week`,title:`This week (from Monday)`},{key:`month`,label:`Month`,title:`This month`}],FL={today:`Today`,week:`This week`,month:`This month`},IL=(e,t)=>(typeof e==`function`?e(t):e)??{},LL=(e,t,n)=>typeof e==`function`?e(n??t,t):e,RL=(()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone||``}catch{return``}})();function zL(e,t){let r=e?JSON.stringify([e,t]):``,[i,a]=(0,u.useState)({signature:``,groups:null,error:``}),[o,s]=(0,u.useState)(0);return(0,u.useEffect)(()=>{if(!e)return;let t=!0,{module:i,relation:o={},groupBy:s,groupDate:c,sum:l}=e,u=typeof o.scope==`string`?o.scope:``;return n.Qt(i,1,0,{scopeConditions:nF(o),...u?{scope:u}:{},queryParams:{...o.queryParams??{},groupBy:s,groupDate:c||``,groupTz:c?RL:``,groupSum:l||``}}).then(e=>{if(!t)return;let n=e?.data?.groups??e?.groups;a({signature:r,groups:n?.applied?dI(n.items):null,error:n?``:`unsupported`})}).catch(e=>{t&&a({signature:r,groups:null,error:e?.status===403?`forbidden`:`error`})}),()=>{t=!1}},[r,o]),{...i,loading:!!e&&i.signature!==r,retry:()=>s(e=>e+1)}}var BL=e=>typeof e==`function`?e:e===`compact`?CL:mL;function VL({panel:e,counts:t,kpis:n,loading:r,ctx:i,refreshKey:a}){let o=Array.isArray(e.stages),s=e.chart===`area`,c=vL(i.range.key),l=s?{...i,range:c}:i,u=o||!$(e.module)||!$(e.groupBy)?null:{module:e.module,relation:IL(e.relation,l),groupBy:e.groupBy,groupDate:s?`day`:e.groupDate,sum:e.sum,range:l.range.key},f=zL(u,a),m=BL(e.format),h=e.sum?e=>e.sum:e=>e.count,g=typeof e.to==`function`?t=>i.navigate(e.to(t,i)):$(e.to)?()=>i.navigate(e.to):void 0;if(o){if(r)return(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:3}});let a=dI(e.stages).map(e=>{let r=n.find(t=>t.key===e.kpi);return r?{key:e.kpi,label:hI(mI(e.label??r.label,{},i)),value:t[e.kpi],to:LL(r.to,i)}:null}).filter(Boolean),o=e=>i.navigate(e.to);return e.chart===`donut`?(0,p.jsx)(DL,{items:a,format:m,onSelect:o}):e.chart===`column`?(0,p.jsx)(jL,{items:a,format:m,onSelect:o}):e.chart===`bar`?(0,p.jsx)(OL,{items:a,format:m,onSelect:o}):(0,p.jsx)(ML,{items:a,format:m,onSelect:o})}if(!u)return(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`This chart needs a module and a groupBy field.`});if(f.loading)return(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:4}});if(f.error===`forbidden`)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:`You don't have access to this data.`});if(f.error===`error`)return(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`This chart could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,onClick:f.retry,children:`Retry`})});if(!f.groups)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:f.error===`unsupported`?`Chart data is not available from the server yet.`:`This field cannot be charted for your list.`});if(s){let e=yL(f.groups,c,h),t=e.reduce((e,t)=>e+t.value,0);return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`cc-dash-chart__summary`,style:{display:`flex`,alignItems:`baseline`,gap:8,marginBottom:8},children:[(0,p.jsx)(`span`,{className:`cc-dash-chart__total`,style:{fontSize:22,fontWeight:700},children:m(t)}),(0,p.jsxs)(`span`,{className:`cc-dash-chart__window`,style:{opacity:.65},children:[`in the last `,c.days,` days`]})]}),(0,p.jsx)(AL,{items:e,format:m})]})}let _=bL(f.groups,{labels:e.labels,pick:h,order:e.order});return!_.length||_.every(e=>!e.value)?(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:hI(mI(e.empty,{},i))||`No data for this period.`}):e.chart===`donut`?(0,p.jsx)(DL,{items:_,format:m,onSelect:g}):e.chart===`column`?(0,p.jsx)(jL,{items:_,format:m,onSelect:g}):(0,p.jsx)(OL,{items:_.slice(0,Number(e.max)||8),format:m,onSelect:g})}function HL({kpi:e,ctx:t,refreshKey:n}){let r=vL(`week`),i={...t,range:r},a=zL({module:e.module,relation:IL(e.relation,i),groupBy:e.trend.field||`createdAt`,groupDate:`day`,range:`trend`},n);if(a.loading||!a.groups)return null;let o=yL(a.groups,r).map(e=>e.value),s=xL(o),c=s>0,l=s===null||s===0?`flat`:(e.trend.goodWhen===`down`?!c:c)?`good`:`bad`;return(0,p.jsxs)(`span`,{className:`cc-dash-kpi__trend`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-end`,justifyContent:`space-between`,gap:4,width:`100%`,minWidth:0},children:[(0,p.jsxs)(`span`,{className:`cc-dash-kpi__delta is-${l}`,style:{fontSize:12,fontWeight:600,whiteSpace:`nowrap`},children:[s===null?`New`:(0,p.jsxs)(p.Fragment,{children:[c?(0,p.jsx)(f.ArrowUpOutlined,{}):s<0?(0,p.jsx)(f.ArrowDownOutlined,{}):null,` `,Math.abs(s),`%`]}),(0,p.jsx)(`span`,{className:`cc-dash-kpi__delta-note`,style:{fontWeight:400,opacity:.65},children:` vs prior 2 wks`})]}),(0,p.jsx)(NL,{values:o})]})}function UL(){return(0,p.jsxs)(`svg`,{className:`cc-dash-hero__art`,viewBox:`0 0 320 160`,"aria-hidden":`true`,focusable:`false`,style:{position:`absolute`,right:0,bottom:0,width:320,height:160,pointerEvents:`none`},children:[(0,p.jsx)(`circle`,{cx:`270`,cy:`30`,r:`90`,fill:`currentColor`,opacity:`0.06`}),(0,p.jsx)(`circle`,{cx:`300`,cy:`150`,r:`60`,fill:`currentColor`,opacity:`0.06`}),[[150,100],[180,76],[210,88],[240,52],[270,64],[300,30]].map(([e,t])=>(0,p.jsx)(`rect`,{x:e,y:t,width:`18`,height:160-t,rx:`5`,fill:`currentColor`,opacity:`0.1`},e)),(0,p.jsx)(`path`,{d:`M140 108 L189 80 L219 92 L249 56 L279 68 L309 34`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeLinejoin:`round`,opacity:`0.35`}),(0,p.jsx)(`circle`,{cx:`309`,cy:`34`,r:`5`,fill:`currentColor`,opacity:`0.5`})]})}function WL(e,t,n){let r=e.filter(e=>typeof e.count==`function`),i=JSON.stringify([r.map(e=>e.key),t.range.key,n]),[a,o]=(0,u.useState)({signature:``,counts:{}});return(0,u.useEffect)(()=>{if(!r.length)return;let e=!0;return Promise.allSettled(r.map(e=>e.count(t))).then(t=>{if(!e)return;let n={};t.forEach((e,t)=>{let i=e.status===`fulfilled`?Number(e.value):NaN;n[r[t].key]=Number.isFinite(i)?i:null}),o({signature:i,counts:n})}),()=>{e=!1}},[i]),{counts:a.counts,loading:r.length>0&&a.signature!==i}}function GL({kpi:e,value:t,loading:n,ctx:r,refreshKey:i}){let a=hI(mI(e.label,{},r)),o=hI(mI(e.help,{},r)),s=LL(e.to,r),c=(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`span`,{className:`cc-dash-kpi__label`,children:[a,o?(0,p.jsx)(d.Tooltip,{title:o,children:(0,p.jsx)(f.InfoCircleOutlined,{className:`cc-dash-kpi__help`,"aria-label":`About ${a}`,onClick:e=>e.stopPropagation()})}):null]}),n?(0,p.jsx)(d.Skeleton.Button,{active:!0,size:`small`,style:{width:56}}):(0,p.jsx)(`span`,{className:`cc-dash-kpi__value`,children:mL(t)}),r.rangeLabel?(0,p.jsx)(`span`,{className:`cc-dash-kpi__period`,style:{fontSize:12,opacity:.65},children:(e.period?e.period===`range`:typeof e.relation==`function`)?r.rangeLabel:`Right now`}):null,e.trend&&$(e.module)?(0,p.jsx)(HL,{kpi:e,ctx:r,refreshKey:i}):null]}),l={display:`flex`,flexDirection:`column`,gap:8,alignItems:`flex-start`,textAlign:`start`,minWidth:0,width:`100%`};return $(s)?(0,p.jsx)(`button`,{type:`button`,className:`cc-dash-kpi is-link`,style:{...l,cursor:`pointer`,font:`inherit`,background:`none`,border:0,padding:0},onClick:()=>r.navigate(s),"aria-label":`${a}: ${mL(t)}. Open the list`,children:c}):(0,p.jsx)(`div`,{className:`cc-dash-kpi`,style:l,children:c})}function KL({panel:e,counts:t,kpis:n,loading:r,ctx:i}){let a=dI(e.stages).map(e=>({...e,kpiDef:n.find(t=>t.key===e.kpi)})).filter(e=>e.kpiDef),o=a.map(e=>t[e.kpi]).filter(e=>Number.isFinite(e)).reduce((e,t)=>e+t,0);return r?(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:2}}):(0,p.jsxs)(`div`,{className:`cc-dash-stages`,children:[(0,p.jsx)(`div`,{className:`cc-dash-stages__bar`,role:`img`,"aria-label":a.map(e=>`${hI(mI(e.label??e.kpiDef.label,{},i))} ${mL(t[e.kpi])}`).join(`, `),style:{display:`flex`,height:10,borderRadius:5,overflow:`hidden`,gap:2},children:a.map((e,n)=>{let r=t[e.kpi];return(0,p.jsx)(`span`,{className:`cc-dash-stages__seg`,"data-i":n,style:{flex:o>0&&Number.isFinite(r)?Math.max(r,0):1,minWidth:Number.isFinite(r)&&r>0?6:2}},e.kpi)})}),(0,p.jsx)(`ol`,{className:`cc-dash-stages__list`,style:{listStyle:`none`,margin:`16px 0 0`,padding:0,display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(120px, 1fr))`,gap:12},children:a.map((e,n)=>{let r=hI(mI(e.label??e.kpiDef.label,{},i)),a=LL(e.kpiDef.to,i);return(0,p.jsx)(`li`,{className:`cc-dash-stages__item`,"data-i":n,children:(0,p.jsxs)(d.Button,{type:`text`,className:`cc-dash-stages__btn`,disabled:!$(a),onClick:()=>i.navigate(a),style:{height:`auto`,padding:4,display:`flex`,flexDirection:`column`,alignItems:`flex-start`},children:[(0,p.jsx)(`span`,{className:`cc-dash-stages__value`,children:mL(t[e.kpi])}),(0,p.jsx)(`span`,{className:`cc-dash-stages__label`,children:r})]})},e.kpi)})})]})}function qL({panel:e,ctx:t,refreshKey:r}){let i=IL(e.relation,t),a=JSON.stringify([e.module,i,e.limit,t.range.key,r]),[o,s]=(0,u.useState)({signature:``,rows:[],total:0,error:``}),[c,l]=(0,u.useState)(0);if((0,u.useEffect)(()=>{let t=!0,r=typeof i.scope==`string`?i.scope:``;return n.Qt(e.module,Number(e.limit)||5,0,{scopeConditions:nF(i),...r?{scope:r}:{},...i.queryParams?{queryParams:i.queryParams}:{},...i.sort?{sort:i.sort,sortDir:i.sortDir||`desc`}:{}}).then(r=>{if(!t)return;let i=n.Ot(r,e.module);s({signature:a,rows:dI(i?.rows),total:Number(i?.total)||0,error:``})}).catch(e=>{t&&s({signature:a,rows:[],total:0,error:e?.status===403?`forbidden`:e?.message||`error`})}),()=>{t=!1}},[a,c]),o.signature!==a)return(0,p.jsx)(d.Skeleton,{active:!0,title:!1,paragraph:{rows:4}});if(o.error===`forbidden`)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:`You don't have access to this list.`});if(o.error)return(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`This list could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,onClick:()=>l(e=>e+1),children:`Retry`})});if(!o.rows.length)return(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:hI(mI(e.empty,{},t))||`Nothing here right now.`});let m=LL(e.viewAll,t);return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`ul`,{className:`cc-dash-list`,style:{listStyle:`none`,margin:0,padding:0},children:o.rows.map((n,r)=>{let i=hI(pI(e.row?.title,n,t))||`—`,a=hI(pI(e.row?.meta,n,t)),o=hI(pI(e.row?.status,n,t)),s=LL(e.to,t,n);return(0,p.jsx)(`li`,{className:`cc-dash-list__row`,children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-dash-list__btn`,disabled:!$(s),onClick:()=>t.navigate(s),style:{display:`flex`,width:`100%`,alignItems:`center`,justifyContent:`space-between`,gap:12,minHeight:44,padding:`8px 0`,font:`inherit`,textAlign:`start`,background:`none`,border:0,cursor:$(s)?`pointer`:`default`},children:[(0,p.jsxs)(`span`,{style:{minWidth:0,display:`flex`,flexDirection:`column`},children:[(0,p.jsx)(`span`,{className:`cc-dash-list__title`,children:i}),a?(0,p.jsx)(`span`,{className:`cc-dash-list__meta`,children:a}):null]}),o?(0,p.jsx)(d.Tag,{className:`cc-dash-list__status`,style:{marginInlineEnd:0},children:o}):null]})},n?._id??n?.id??r)})}),$(m)?(0,p.jsxs)(d.Button,{type:`link`,className:`cc-dash-viewall`,onClick:()=>t.navigate(m),style:{paddingInline:0},children:[`View all `,o.total>o.rows.length?`(${mL(o.total)})`:``,` `,(0,p.jsx)(f.ArrowRightOutlined,{})]}):null]})}function JL({panel:e,ctx:t}){let n=dI(e.items).filter(e=>e&&$(e.key)&&gI(e,{},t));return(0,p.jsx)(`div`,{className:`cc-dash-links`,style:{display:`grid`,gridTemplateColumns:`repeat(auto-fill, minmax(140px, 1fr))`,gap:8},children:n.map(e=>{let n=uI(e.icon),r=LL(e.to,t);return(0,p.jsx)(d.Button,{className:`cc-dash-link`,onClick:()=>t.navigate(r),disabled:!$(r),style:{height:`auto`,minHeight:44,justifyContent:`flex-start`,whiteSpace:`normal`,textAlign:`start`},icon:n,children:(0,p.jsxs)(`span`,{children:[hI(mI(e.label,{},t)),e.note?(0,p.jsx)(`small`,{className:`cc-dash-link__note`,style:{display:`block`},children:hI(mI(e.note,{},t))}):null]})},e.key)})})}function YL({panel:e,...t}){let n=hI(mI(e.title,{},t.ctx)),r;switch(e.type){case`stages`:r=(0,p.jsx)(KL,{panel:e,...t});break;case`list`:r=(0,p.jsx)(qL,{panel:e,ctx:t.ctx,refreshKey:t.refreshKey});break;case`links`:r=(0,p.jsx)(JL,{panel:e,ctx:t.ctx});break;case`chart`:r=(0,p.jsx)(VL,{panel:e,...t});break;case`custom`:r=typeof e.render==`function`?e.render(t.ctx):null;break;default:r=(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`Unknown panel type "${String(e.type)}"`})}return(0,p.jsxs)(`section`,{className:`cc-dash-panel${e.span===2?` is-wide`:``}`,"data-panel":e.key,"data-chart":e.chart,"aria-label":n||void 0,style:{minWidth:0},children:[n?(0,p.jsx)(d.Typography.Title,{level:5,className:`cc-dash-panel__title`,style:{marginTop:0},children:n}):null,r]})}function XL({config:e,refreshKey:t=0}){let n=(0,h.useNavigate)(),r=(0,h.useLocation)();Vc();let i=dI(e?.ranges).length?dI(e.ranges):PL,[a,o]=(0,u.useState)(e?.defaultRange||i[0].key),[s,c]=(0,u.useState)(0),[l,m]=(0,u.useState)(()=>new Date),g=`${t}|${s}`,_={...e?.context??{},navigate:e=>$(e)&&n(e),location:r,range:fL(a),rangeLabel:i.length>1?FL[a]??hI(mI(i.find(e=>e.key===a)?.label,{},{})):``,refresh:()=>{c(e=>e+1),m(new Date)}},v=dI(e?.kpis).filter(e=>e&&$(e.key)&&gI(e,{},_)),y=wF(v.filter(e=>typeof e.count!=`function`&&$(e.module)).map(e=>({key:e.key,module:e.module,relation:IL(e.relation,_),unscoped:!0})),``,g,{cacheMs:3e4}),b=WL(v,_,g),x={...y.counts,...b.counts},S=y.loading||b.loading,C=S?[]:hL(v,x,_),w=dI(e?.panels).filter(e=>e&&$(e.key)&&gI(e,{},_)),T=w.filter(e=>e.area===`grid`),E=w.filter(e=>e.area!==`side`&&e.area!==`grid`),D=w.filter(e=>e.area===`side`),O=_I(e?.buttons,{},_),k=hI(mI(e?.title,{},_))||`Dashboard`,A=hI(mI(e?.greeting,{},_)),j=hI(mI(e?.subtitle,{},_)),M={counts:x,kpis:v,loading:S,ctx:_,refreshKey:g},N=hI(mI(e?.user?.name,{},_)).split(/\s+/).filter(Boolean).slice(0,2).map(e=>e[0].toUpperCase()).join(``),P=hI(mI(e?.user?.role,{},_)),F=new Date().toLocaleDateString([],{weekday:`long`,day:`numeric`,month:`long`,year:`numeric`}),I=dI(e?.links).filter(e=>e&&$(e.key)&&gI(e,{},_));return(0,p.jsxs)(`div`,{className:`cc-dash`,"data-profile":e?.key,children:[(0,p.jsxs)(`header`,{className:`cc-dash-hero`,style:{position:`relative`,overflow:`hidden`,display:`grid`,gap:16},children:[(0,p.jsx)(UL,{}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__top`,style:{position:`relative`,display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,justifyContent:`space-between`,gap:16},children:[(0,p.jsxs)(`div`,{className:`cc-dash-hero__who`,style:{display:`flex`,alignItems:`center`,gap:16,minWidth:0,flex:`1 1 320px`},children:[N?(0,p.jsx)(`span`,{className:`cc-dash-hero__avatar`,"aria-hidden":`true`,style:{flex:`none`,display:`grid`,placeItems:`center`,width:56,height:56,borderRadius:`50%`,fontWeight:700,fontSize:20},children:N}):null,(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(`div`,{className:`cc-dash-hero__eyebrow`,children:[F,P].filter(Boolean).join(` · `)}),(0,p.jsx)(d.Typography.Title,{level:2,className:`cc-dash-hero__title`,style:{margin:0},children:A||k}),j?(0,p.jsx)(`div`,{className:`cc-dash-hero__sub`,children:j}):null]})]}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__tools`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[i.length>1?(0,p.jsx)(d.Segmented,{className:`cc-dash-range`,value:a,onChange:e=>{o(e),m(new Date)},options:i.map(e=>({value:e.key,label:e.label,title:e.title??e.label}))}):null,(0,p.jsx)(d.Tooltip,{title:`Refresh the numbers`,children:(0,p.jsx)(d.Button,{className:`cc-dash-refresh`,icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:_.refresh,"aria-label":`Refresh`})}),O.map(e=>(0,p.jsx)(d.Button,{type:e.type,className:e.className,danger:e.danger,disabled:e.disabled,icon:e.icon,onClick:e.onClick,children:e.label},e.key))]})]}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__bottom`,style:{position:`relative`,display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`space-between`,gap:12},children:[(0,p.jsxs)(`div`,{className:`cc-dash-hero__chips`,style:{display:`flex`,flexWrap:`wrap`,gap:8},"aria-live":`polite`,children:[v.some(e=>e.attention)&&!S?(0,p.jsxs)(`span`,{className:`cc-dash-hero__chip ${C.length?`is-warn`:`is-ok`}`,children:[C.length?(0,p.jsx)(f.WarningOutlined,{"aria-hidden":`true`}):(0,p.jsx)(f.CheckCircleOutlined,{"aria-hidden":`true`}),C.length?` ${C.length} ${C.length===1?`thing needs`:`things need`} your attention`:` All caught up`]}):null,(0,p.jsxs)(`span`,{className:`cc-dash-hero__chip`,title:`When these numbers were last loaded. Press refresh to load them again.`,children:[(0,p.jsx)(f.ClockCircleOutlined,{"aria-hidden":`true`}),` Updated `,l.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})]})]}),I.length?(0,p.jsx)(`nav`,{className:`cc-dash-hero__links`,"aria-label":`Quick links`,style:{display:`flex`,flexWrap:`wrap`,gap:8},children:I.map(e=>(0,p.jsx)(d.Button,{className:`cc-dash-hero__link`,icon:uI(e.icon),onClick:()=>_.navigate(LL(e.to,_)),children:hI(mI(e.label,{},_))},e.key))}):null]})]}),v.some(e=>e.attention)&&(S||C.length>0)?(0,p.jsx)(`section`,{className:`cc-dash-attention${C.length?``:` is-clear`}`,"aria-label":`Needs attention`,"aria-live":`polite`,children:S?(0,p.jsx)(d.Skeleton.Input,{active:!0,size:`small`,style:{width:240}}):C.length?(0,p.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:8,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 260px), 1fr))`},children:C.map(e=>(0,p.jsxs)(`li`,{className:`cc-dash-attention__item`,style:{display:`flex`,alignItems:`center`,gap:12,minWidth:0},children:[(0,p.jsx)(f.WarningOutlined,{className:`cc-dash-attention__icon`,"aria-hidden":`true`}),(0,p.jsx)(`span`,{className:`cc-dash-attention__count`,children:mL(e.n)}),(0,p.jsx)(`span`,{className:`cc-dash-attention__text`,style:{flex:1,minWidth:0},children:e.text}),$(e.to)?(0,p.jsx)(d.Button,{size:`small`,className:`cc-dash-attention__review`,onClick:()=>_.navigate(e.to),children:`Review`}):null]},e.key))}):(0,p.jsxs)(`span`,{className:`cc-dash-attention__clear`,children:[(0,p.jsx)(f.CheckCircleOutlined,{"aria-hidden":`true`}),` All caught up. Nothing needs attention right now.`]})}):null,v.some(e=>e.show!==!1)?(0,p.jsx)(`section`,{className:`cc-dash-kpis`,"aria-label":`Key numbers`,style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 150px), 1fr))`},children:v.filter(e=>e.show!==!1).map(e=>(0,p.jsx)(GL,{kpi:e,value:x[e.key],loading:S&&x[e.key]===void 0,ctx:_,refreshKey:g},e.key))}):null,T.length?(0,p.jsx)(`div`,{className:`cc-dash-charts`,style:{display:`grid`,gap:16,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 320px), 1fr))`,alignItems:`stretch`},children:T.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}):null,E.length||D.length?(0,p.jsxs)(`div`,{className:`cc-dash-grid${D.length?` has-side`:``}`,style:{display:`grid`,gap:16,gridTemplateColumns:D.length?`repeat(auto-fit, minmax(min(100%, 340px), 1fr))`:`1fr`,alignItems:`start`},children:[(0,p.jsx)(`div`,{className:`cc-dash-main`,style:{display:`grid`,gap:16,minWidth:0},children:E.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}),D.length?(0,p.jsx)(`div`,{className:`cc-dash-side`,style:{display:`grid`,gap:16,minWidth:0},children:D.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}):null]}):null]})}var ZL={...lI,assessment:f.FormOutlined,audit:f.AuditOutlined,book:f.BookOutlined,calendar:f.CalendarOutlined,check:f.CheckCircleOutlined,clipboard:f.SnippetsOutlined,clock:f.ClockCircleOutlined,done:f.FileDoneOutlined,file:f.FileTextOutlined,pdf:f.FilePdfOutlined,read:f.ReadOutlined,team:f.TeamOutlined,users:f.UsergroupAddOutlined,video:f.VideoCameraOutlined,wallet:f.WalletOutlined};function QL(e){if(!e)return null;if(typeof e!=`string`)return e;let t=ZL[e.trim().toLowerCase()];return t?(0,u.createElement)(t):null}var $L=e=>`calc(${e} * var(--cc-ds-u, 1.5px))`,eR=(e,t)=>`max(${t}px, ${$L(e)})`,tR={neutral:[`#5b6475`,`#f1f3f7`],brand:[`var(--ant-color-primary, #1677ff)`,`var(--ant-color-primary-bg, #e6f4ff)`],green:[`#00c26b`,`#e6f9f0`],blue:[`#3b7cf6`,`#eaf1fe`],purple:[`#ab16f4`,`#f7e8fe`],orange:[`#f39a3d`,`#fff2e5`],teal:[`#12b5cb`,`#e6f8fb`],pink:[`#d6338a`,`#fde8f2`],red:[`#e5484d`,`#fdecec`]};Object.keys(tR);function nR(e){let t=tR[e]?e:`neutral`,[n,r]=tR[t];return{fg:`var(--cc-ds-tone-${t}-fg, ${n})`,bg:`var(--cc-ds-tone-${t}-bg, ${r})`}}var rR={ink:`var(--cc-ds-ink, #252744)`,value:`var(--cc-ds-value, #17202c)`,muted:`var(--cc-ds-muted, #8590aa)`,border:`var(--cc-ds-border, #ecedf7)`,surface:`var(--cc-ds-surface, #ffffff)`,link:`var(--cc-ds-link, var(--ant-color-primary, #1677ff))`,track:`var(--cc-ds-track, #eef0f6)`};function iR(e,t){if(typeof e==`number`&&Number.isFinite(e))try{return new Intl.NumberFormat(t).format(e)}catch{return String(e)}return typeof e==`boolean`?e?`Yes`:`No`:hI(e)}function aR(e,t,n,{locale:r,placeholder:i=`–`}={}){let a=iR(pI(e,t,n),r);return $(a)?a:i}function oR(e,t,n){let r=pI(e.items,t,n),i=Array.isArray(r)?r:[],a=e.map&&typeof e.map==`object`?e.map:null,o=Number.isFinite(e.limit)&&e.limit>=0?i.slice(0,e.limit):i;return a?o.map(e=>{if(!e||typeof e!=`object`)return e;let t={...e};return Object.entries(a).forEach(([n,r])=>{t[n]=fI(e,r)}),t}):o}var sR=(e,t)=>iR(e&&typeof e==`object`?e.text??e.label??e.title:e,t),cR=e=>(t,n,r,i)=>!oR(t,n,r).some(t=>t&&typeof t==`object`&&$(iR(t[e],i))),lR=(e,t,n)=>(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n)),uR={text:(e,t,n,r)=>!$(aR(e.value,t,n,{locale:r,placeholder:``})),fields:(e,t,n)=>lR(e,t,n).length===0,stats:(e,t,n)=>lR(e,t,n).length===0,list:(e,t,n,r)=>!oR(e,t,n).some(e=>$(sR(e,r))),tags:(e,t,n,r)=>!oR(e,t,n).some(e=>$(iR(e&&typeof e==`object`?e.label:e,r))),callout:(e,t,n,r)=>!$(mI(e.title,t,n))&&!$(aR(e.text,t,n,{locale:r,placeholder:``})),timeline:cR(`title`),people:cR(`name`),files:cR(`name`),progress:(e,t,n)=>!Number.isFinite(Number(pI(e.percent,t,n)))};function dR(e,t,n,r){return uR[e?.type]?.(e,t,n,r)??!1}var fR=e=>({display:`flex`,flexDirection:`column`,gap:$L(e),minWidth:0}),pR={body:{fontSize:eR(7.16,11),fontWeight:600,lineHeight:1.5,color:rR.muted},label:{fontSize:eR(6.6,11),fontWeight:600,lineHeight:1.5,color:rR.muted},value:{fontSize:eR(6.6,11),fontWeight:400,lineHeight:1.5,color:rR.value},small:{fontSize:eR(5.5,10),fontWeight:600,lineHeight:1.5,color:rR.muted},strong:{fontSize:eR(7.16,11),fontWeight:700,lineHeight:1.5,color:rR.ink},stat:{fontSize:eR(9.36,13),fontWeight:600,lineHeight:1.5,color:rR.ink},sub:{fontSize:eR(6.6,11),fontWeight:600,lineHeight:1.5,color:rR.ink,margin:0}};function mR({icon:e,tone:t,size:n=13}){let r=QL(e);if(!r)return null;let i=nR(t);return(0,p.jsx)(`span`,{className:`cc-details__badge`,"data-tone":t||`neutral`,"aria-hidden":`true`,style:{display:`inline-flex`,alignItems:`center`,justifyContent:`center`,flex:`none`,width:$L(n),height:$L(n),borderRadius:$L(n*.28),background:i.bg,color:i.fg,fontSize:$L(n*.58)},children:r})}function hR({block:e,data:t,ctx:n,locale:r}){let i=aR(e.value,t,n,{locale:r,placeholder:``}),a=Number.isFinite(e.lines)&&e.lines>0?e.lines:0,[o,s]=(0,u.useState)(!1),[c,l]=(0,u.useState)(!1),d=(0,u.useRef)(null);if((0,u.useLayoutEffect)(()=>{let e=d.current;!e||!a||o||l(e.scrollHeight-e.clientHeight>1)},[i,a,o]),!$(i))return null;let m=a&&!o?{display:`-webkit-box`,WebkitLineClamp:a,WebkitBoxOrient:`vertical`,overflow:`hidden`}:{},h=mI(e.more??`Show More`,t,n),g=mI(e.less??`Show Less`,t,n);return(0,p.jsxs)(`div`,{style:fR(3),children:[(0,p.jsx)(`p`,{ref:d,className:`cc-details__text`,style:{...pR.body,margin:0,whiteSpace:`pre-line`,...m},children:i}),a>0&&(c||o)&&$(h)&&(0,p.jsxs)(`button`,{type:`button`,className:`cc-details__more`,"aria-expanded":o,onClick:()=>s(e=>!e),style:{alignSelf:`flex-start`,padding:0,border:0,background:`none`,cursor:`pointer`,color:rR.link,fontSize:eR(6.05,11),fontWeight:600,display:`inline-flex`,alignItems:`center`,gap:$L(2)},children:[o?g:h,o?(0,p.jsx)(f.UpOutlined,{style:{fontSize:$L(4.5)}}):(0,p.jsx)(f.DownOutlined,{style:{fontSize:$L(4.5)}})]})]})}function gR({block:e,data:t,ctx:n,locale:r}){let i=(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n));if(!i.length)return null;let a=Number.isFinite(e.columns)&&e.columns>0?e.columns:1,o=6.6,s=Number.isFinite(e.minPairWidth)?e.minPairWidth:130,c=`calc((100% - ${a-1} * ${$L(o)}) / ${a})`,l=Number.isFinite(e.labelWidth)?$L(e.labelWidth):`minmax(0, 1fr)`;return(0,p.jsx)(`dl`,{className:`cc-details__fields`,style:{display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(max(${$L(s)}, ${c}), 1fr))`,columnGap:$L(o),rowGap:$L(2.2),margin:0},children:i.map(e=>(0,p.jsxs)(`div`,{className:`cc-details__field`,style:{display:`grid`,gridTemplateColumns:`${l} minmax(0, 1fr)`,columnGap:$L(4),minWidth:0},children:[(0,p.jsx)(`dt`,{style:{...pR.label,margin:0},children:mI(e.label,t,n)}),(0,p.jsx)(`dd`,{style:{...pR.value,margin:0,overflowWrap:`anywhere`},children:aR(e.value,t,n,{locale:r})})]},e.key??mI(e.label,t,n)))})}function _R({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).map(e=>e&&typeof e==`object`?e:{text:e}),a=e.variant||`bullet`,o=nR(e.tone||(a===`check`?`green`:`neutral`)),s=i.filter(e=>$(iR(e.text??e.label??e.title,r)));return s.length?(0,p.jsx)(`ul`,{className:`cc-details__list cc-details__list--${a}`,style:{...fR(a===`check`?3.3:1.6),listStyle:`none`,margin:0,padding:0},children:s.map((e,t)=>{let n=iR(e.text??e.label??e.title,r),i=iR(e.meta,r);return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`flex-start`,gap:$L(a===`check`?3.3:2.4),...a===`plain`?pR.value:pR.label,color:rR.muted},children:[a===`bullet`&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:`none`,width:$L(1.8),height:$L(1.8),marginTop:$L(3.2),borderRadius:`50%`,background:rR.muted}}),a===`check`&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:`none`,color:o.fg,fontSize:$L(7),lineHeight:1,marginTop:$L(1.2)},children:QL(`check`)}),(0,p.jsxs)(`span`,{style:{minWidth:0},children:[(0,p.jsx)(`span`,{className:`cc-details__item-text`,children:n}),$(i)&&(0,p.jsx)(`span`,{className:`cc-details__item-sep`,style:{margin:`0 ${$L(4)}`},"aria-hidden":`true`,children:`•`}),$(i)&&(0,p.jsx)(`span`,{className:`cc-details__item-meta`,children:i})]})]},`${t}-${n}`)})}):null}function vR({block:e,data:t,ctx:n,locale:r}){let i=mI(e.title,t,n),a=aR(e.text,t,n,{locale:r,placeholder:``});return!$(i)&&!$(a)?null:(0,p.jsxs)(`div`,{className:`cc-details__callout`,style:{display:`flex`,gap:$L(6.6),alignItems:`flex-start`},children:[(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:15.4}),(0,p.jsxs)(`div`,{style:fR(1.1),children:[$(i)&&(0,p.jsx)(`span`,{style:pR.strong,children:i}),$(a)&&(0,p.jsx)(`span`,{style:pR.small,children:a})]})]})}function yR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`);return i.length?(0,p.jsx)(`ol`,{className:`cc-details__timeline`,style:{listStyle:`none`,margin:0,padding:0,display:`flex`,flexDirection:`column`},children:i.map((e,t)=>(0,p.jsxs)(`li`,{style:{display:`flex`,gap:$L(6.6),minHeight:$L(e===i[i.length-1]?13:34.6)},children:[(0,p.jsxs)(`span`,{style:{display:`flex`,flexDirection:`column`,alignItems:`center`,flex:`none`},children:[(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:13.2}),t<i.length-1&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:1,width:$L(.55),background:rR.border,margin:`${$L(2)} 0`}})]}),(0,p.jsxs)(`span`,{style:{...fR(.5),paddingTop:$L(.6)},children:[(0,p.jsx)(`span`,{style:pR.strong,children:iR(e.title,r)}),$(iR(e.text,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(e.text,r)})]})]},`${t}-${iR(e.title,r)}`))}):null}function bR({block:e,data:t,ctx:n,locale:r}){let i=(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n));if(!i.length)return null;let a=e.variant===`tiles`;return(0,p.jsx)(`div`,{className:`cc-details__stats cc-details__stats--${a?`tiles`:`plain`}`,style:{display:`flex`,flexWrap:`wrap`,columnGap:$L(a?13:8.8),rowGap:$L(6.6),justifyContent:`space-between`},children:i.map(e=>{let i=aR(e.value,t,n,{locale:r}),o=e.valueTone?nR(e.valueTone).fg:rR.ink;return(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:$L(6.6),flex:a?`0 1 auto`:`1 0 auto`},children:[a&&(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:17.6}),(0,p.jsxs)(`span`,{style:fR(0),children:[(0,p.jsx)(`span`,{style:{...pR.stat,color:o,whiteSpace:`nowrap`},children:i}),(0,p.jsx)(`span`,{style:pR.small,children:mI(e.label,t,n)})]})]},e.key??mI(e.label,t,n))})})}function xR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`&&$(iR(e.name,r)));return i.length?(0,p.jsx)(`ul`,{className:`cc-details__people`,style:{...fR(2.2),listStyle:`none`,margin:0,padding:0},children:i.map((e,t)=>{let n=iR(e.name,r);return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`center`,gap:$L(4.4)},children:[(0,p.jsx)(d.Avatar,{src:$(e.avatar)?e.avatar:void 0,alt:``,style:{width:$L(15.4),height:$L(15.4),lineHeight:$L(15.4),fontSize:$L(6),flex:`none`},children:SI(n)}),(0,p.jsxs)(`span`,{style:fR(0),children:[(0,p.jsx)(`span`,{style:{...pR.strong,fontSize:eR(6.6,11)},children:n}),$(iR(e.subtitle,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(e.subtitle,r)})]})]},`${t}-${n}`)})}):null}function SR({block:e,data:t,ctx:n,locale:r}){let i=Number(pI(e.percent,t,n));if(!Number.isFinite(i))return null;let a=Math.max(0,Math.min(100,i)),o=aR(e.caption,t,n,{locale:r,placeholder:``}),s=nR(e.tone||`brand`);return(0,p.jsxs)(`div`,{className:`cc-details__progress`,style:fR(3.3),children:[(0,p.jsx)(`div`,{role:`progressbar`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a,style:{height:$L(2.2),borderRadius:$L(2),background:rR.track,overflow:`hidden`},children:(0,p.jsx)(`div`,{style:{width:`${a}%`,height:`100%`,borderRadius:`inherit`,background:s.fg}})}),$(o)&&(0,p.jsx)(`span`,{style:pR.small,children:o})]})}function CR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).map(e=>e&&typeof e==`object`?e:{label:e}).filter(e=>$(iR(e.label,r)));return i.length?(0,p.jsx)(`div`,{className:`cc-details__tags`,style:{display:`flex`,flexWrap:`wrap`,gap:$L(3.3)},children:i.map((t,n)=>{let i=nR(t.tone||e.tone||`neutral`);return(0,p.jsx)(`span`,{"data-tone":t.tone||e.tone||`neutral`,style:{display:`inline-flex`,alignItems:`center`,padding:`${$L(1.6)} ${$L(4.4)}`,borderRadius:$L(3),background:i.bg,color:e.tone||t.tone?i.fg:rR.muted,fontSize:eR(5.5,10),fontWeight:400,lineHeight:1.5},children:iR(t.label,r)},`${n}-${iR(t.label,r)}`)})}):null}function wR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`&&$(iR(e.name,r)));return i.length?(0,p.jsx)(`ul`,{className:`cc-details__files`,style:{...fR(5.5),listStyle:`none`,margin:0,padding:0},children:i.map((t,n)=>{let i=iR(t.name,r),a=$(t.href)&&/^(https?:|\/|blob:)/i.test(String(t.href))?String(t.href):``;return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`center`,gap:$L(5.5)},children:[(0,p.jsx)(mR,{icon:t.icon||`pdf`,tone:t.tone||e.tone||`pink`,size:13.2}),(0,p.jsxs)(`span`,{style:fR(0),children:[a?(0,p.jsx)(`a`,{href:a,target:`_blank`,rel:`noopener noreferrer`,style:{...pR.strong,fontSize:eR(6.6,11)},children:i}):(0,p.jsx)(`span`,{style:{...pR.strong,fontSize:eR(6.6,11)},children:i}),$(iR(t.meta,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(t.meta,r)})]})]},`${n}-${i}`)})}):null}function TR(){return(0,p.jsx)(`hr`,{"aria-hidden":`true`,style:{border:0,borderTop:`0.55px solid ${rR.border}`,margin:`${$L(2)} 0`,width:`100%`}})}function ER({block:e,data:t,ctx:n}){if(typeof e.render!=`function`)return null;try{return e.render(t,n)??null}catch(e){return console.warn(`[DETAILSSECTION] custom block failed:`,e),null}}function DR({block:e,data:t,ctx:n,locale:r,registry:i}){if(!e||!gI(e,t,n))return null;let a=i[e.type];if(!a)return console.warn(`[DETAILSSECTION] unknown block type "${e.type}"`),(0,p.jsxs)(`div`,{role:`alert`,className:`cc-details__unknown`,style:{...pR.small,color:nR(`red`).fg},children:[`Unknown block type “`,String(e.type),`”`]});let o=e.type===`callout`?``:mI(e.title,t,n),s=dR(e,t,n,r),c=mI(e.empty,t,n);return s&&!$(c)?null:(0,p.jsxs)(`div`,{className:`cc-details__block cc-details__block--${e.type}`,style:fR(3.3),children:[$(o)&&(0,p.jsx)(`h4`,{className:`cc-details__subtitle`,style:pR.sub,children:o}),s?(0,p.jsx)(`span`,{className:`cc-details__empty`,style:pR.small,children:c}):(0,p.jsx)(a,{block:e,data:t,ctx:n,locale:r})]})}var OR={text:hR,fields:gR,list:_R,callout:vR,timeline:yR,stats:bR,people:xR,progress:SR,tags:CR,files:wR,divider:TR,custom:ER};function kR(e,t,n,r,i=OR){return!e||!gI(e,t,n)?!1:!i[e.type]||!dR(e,t,n,r)||$(mI(e.empty,t,n))}var AR={gap:6,asideWidth:154,stackBelow:900,wrapBelow:640};function jR(e){let[t,n]=(0,u.useState)(0);return(0,u.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let r=()=>n(t.getBoundingClientRect().width||0);if(r(),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(r);return i.observe(t),()=>i.disconnect()},[e]),t}function MR(e,t,n){if(typeof e.onClick==`function`)return e.onClick(t,n);if($(e.tab)&&typeof n?.openTab==`function`)return n.openTab(String(e.tab));if($(e.href)){let t=String(e.href);if(/^https?:/i.test(t))return window.open(t,`_blank`,`noopener,noreferrer`);if(typeof n?.navigate==`function`)return n.navigate(t)}}function NR({card:e,data:t,ctx:n,locale:r,registry:i,style:a}){let o=mI(e.title,t,n),s=e.action&&gI(e.action,t,n)?e.action:null,c=s?mI(s.label,t,n):``,l=`cc-details-${e.key}`;return(0,p.jsxs)(`section`,{className:`cc-details__card ${e.className??``}`.trim(),"data-card":e.key,"aria-labelledby":$(o)?l:void 0,style:{display:`flex`,flexDirection:`column`,gap:$L(6.6),minWidth:0,boxSizing:`border-box`,padding:$L(8.81),borderRadius:$L(5.5),border:`0.55px solid ${rR.border}`,background:rR.surface,...a},children:[($(o)||$(c))&&(0,p.jsxs)(`header`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:$L(4)},children:[$(o)&&(0,p.jsxs)(`span`,{style:{display:`inline-flex`,alignItems:`center`,gap:$L(5.5),minWidth:0},children:[e.icon?(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:Number(e.iconSize)>0?Number(e.iconSize):17.6}):null,(0,p.jsx)(`h3`,{id:l,className:`cc-details__title`,style:{margin:0,fontSize:eR(8.81,12),fontWeight:600,lineHeight:1.5,color:rR.ink},children:o})]}),$(c)&&(0,p.jsxs)(`button`,{type:`button`,className:`cc-details__action`,onClick:()=>MR(s,t,n),style:{marginLeft:`auto`,padding:0,border:0,background:`none`,cursor:`pointer`,color:rR.link,fontSize:eR(6.05,11),fontWeight:400,lineHeight:1.5,whiteSpace:`nowrap`,display:`inline-flex`,alignItems:`center`,gap:$L(3)},children:[s.icon?(0,p.jsx)(`span`,{className:`cc-details__action-icon`,"aria-hidden":`true`,style:{display:`inline-flex`},children:QL(s.icon)}):null,c]})]}),(Array.isArray(e.blocks)?e.blocks:[]).map((e,a)=>(0,p.jsx)(DR,{block:e,data:t,ctx:n,locale:r,registry:i},e?.key??`${e?.type}-${a}`))]})}var PR=(e,t,n,r,i)=>!!e?.key&&gI(e,t,n)&&(Array.isArray(e.blocks)?e.blocks:[]).some(e=>kR(e,t,n,r,i));function FR({config:e,data:t={},ctx:n={},className:r=``}){Vc();let i=(0,u.useRef)(null),a=jR(i),o=e&&typeof e==`object`?e:{},s={...AR,...o.layout??{}},c=o.locale,l={...OR,...o.blocks&&typeof o.blocks==`object`?o.blocks:{}},d=$L(s.gap),f=a>0,m=f&&a<s.stackBelow,h=f&&a<s.wrapBelow,g=(Array.isArray(o.main)?o.main:[]).map(e=>(Array.isArray(e)?e:[e]).filter(e=>PR(e,t,n,c,l))).filter(e=>e.length>0),_=(Array.isArray(o.aside)?o.aside:[]).filter(e=>PR(e,t,n,c,l));if(!g.length&&!_.length)return null;let v=e=>Number.isFinite(e.width)&&e.width>0?e.width:1;return(0,p.jsxs)(`div`,{ref:i,className:`cc-details ${r}`.trim(),role:`region`,"aria-label":mI(o.label,t,n)||void 0,"data-layout":h?`single`:m?`stacked`:`wide`,style:{display:`flex`,flexDirection:m?`column`:`row`,alignItems:`flex-start`,gap:d,width:`100%`,boxSizing:`border-box`,fontFamily:`var(--cc-ds-font, inherit)`},children:[g.length>0&&(0,p.jsx)(`div`,{className:`cc-details__main`,style:{display:`flex`,flexDirection:`column`,gap:d,flex:`1 1 0`,minWidth:0,width:m?`100%`:void 0},children:g.map(e=>(0,p.jsx)(`div`,{className:`cc-details__row`,style:{display:`flex`,flexDirection:h?`column`:`row`,alignItems:`stretch`,gap:d},children:e.map(e=>(0,p.jsx)(NR,{card:e,data:t,ctx:n,locale:c,registry:l,style:{flex:h?`1 1 auto`:`${v(e)} 1 0`}},e.key))},e.map(e=>e.key).join(`|`)))}),_.length>0&&(0,p.jsx)(`aside`,{className:`cc-details__aside`,style:{display:m&&!h?`grid`:`flex`,flexDirection:`column`,gap:d,minWidth:0,gridTemplateColumns:m&&!h?`repeat(${Math.min(_.length,3)}, minmax(0, 1fr))`:void 0,width:m?`100%`:$L(s.asideWidth),flex:`none`,alignItems:m&&!h?`start`:`stretch`},children:_.map(e=>(0,p.jsx)(NR,{card:e,data:t,ctx:n,locale:c,registry:l},e.key))})]})}var IR=`.ant-modal-wrap:not([style*="display: none"]), .ant-drawer-open, .ant-picker-dropdown:not(.ant-picker-dropdown-hidden), .ant-select-dropdown:not(.ant-select-dropdown-hidden), .ant-dropdown:not(.ant-dropdown-hidden)`,LR=`cc-mdw-detail-window-width`,RR=32;function zR(e){try{let t=Number(localStorage.getItem(e));return Number.isFinite(t)&&t>0?t:null}catch{return null}}function BR(e,t){try{localStorage.setItem(e,String(Math.round(t)))}catch{}}function VR({topBar:e=null,rail:t=null,list:n=null,compactList:r=null,detail:i=null,detailOpen:a=!1,detailExpanded:o=!1,detailMode:s=`split`,detailWidth:c,onDetailWidthChange:l,defaultDetailWidth:d=720,minDetailWidth:f=480,maxDetailWidthRatio:m=.75,widthStorageKey:h=LR,railCollapsed:g=!1,railOverlay:_=!1,onCloseRailOverlay:v,onCloseDetail:y,railWidth:b=264,collapsedRailWidth:x=52,compactListWidth:S=340,className:C=``,ariaLabel:w=`Workspace`}){let T=s===`window`,E=(0,u.useRef)(null),D=(0,u.useRef)(null),O=(0,u.useRef)(null),[k,A]=(0,u.useState)(()=>zR(h)??d),j=c??k;(0,u.useEffect)(()=>{if(a){!O.current&&typeof document<`u`&&(O.current=document.activeElement),D.current?.focus({preventScroll:!0});return}let e=O.current;O.current=null,e&&typeof e.focus==`function`&&document.contains(e)&&e.focus({preventScroll:!0})},[a]),(0,u.useEffect)(()=>{if(!a||typeof document>`u`)return;let e=e=>{e.key!==`Escape`||e.defaultPrevented||document.querySelector(IR)||y?.()};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[a,y]);let M=(0,u.useCallback)(e=>{let t=E.current?.getBoundingClientRect().width||0,n=t>0?Math.max(f,t*m):1/0;return Math.round(Math.min(Math.max(e,f),n))},[f,m]),N=(0,u.useCallback)(e=>{let t=M(e);return l&&l(t),c??(A(t),BR(h,t)),t},[M,c,l,h]),P=e=>{if(e.button!==0)return;e.preventDefault();let t=E.current,n=t?.querySelector(`.cc-mdw__body`);if(!t||!n)return;let r=n.getBoundingClientRect().right,i=j,a=e=>{i=M(r-e.clientX-12),t.style.setProperty(`--cc-detail-window-w`,`${i}px`)},o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o),t.classList.remove(`cc-mdw--resizing`),N(i)};t.classList.add(`cc-mdw--resizing`),window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},F=e=>{e.key===`ArrowLeft`?(e.preventDefault(),N(j+RR)):e.key===`ArrowRight`&&(e.preventDefault(),N(j-RR))},I=a?o?`expanded`:`open`:`closed`,L=T?g:a||g,R=!T&&a&&_,z=!T&&a&&!!r,B={"--cc-rail-w":`${b}px`,"--cc-rail-collapsed-w":`${x}px`,"--cc-compact-list-w":`${S}px`,"--cc-detail-window-w":`${j}px`};return(0,p.jsxs)(`div`,{ref:E,className:[`cc-mdw`,`cc-mdw--${I}`,T?`cc-mdw--window`:`cc-mdw--split`,L?`cc-mdw--rail-collapsed`:``,R?`cc-mdw--rail-overlay`:``,t==null?`cc-mdw--no-rail`:``,C].filter(Boolean).join(` `),style:B,"aria-label":w,children:[e&&(0,p.jsx)(`div`,{className:`cc-mdw__top`,children:e}),(0,p.jsxs)(`div`,{className:`cc-mdw__body`,children:[t!=null&&(0,p.jsx)(`div`,{className:`cc-mdw__rail`,children:t}),R&&(0,p.jsx)(`button`,{type:`button`,className:`cc-mdw__rail-backdrop`,"aria-label":`Close filters`,onClick:v}),(0,p.jsxs)(`div`,{className:`cc-mdw__list`,"aria-hidden":I===`expanded`||void 0,children:[(0,p.jsx)(`div`,{className:`cc-mdw__list-full${z?` is-hidden`:``}`,children:n}),z&&(0,p.jsx)(`div`,{className:`cc-mdw__list-compact`,children:r})]}),(0,p.jsxs)(`section`,{ref:D,className:`cc-mdw__detail`,tabIndex:-1,"aria-hidden":!a||void 0,"aria-label":`Details`,children:[T&&a&&!o&&(0,p.jsx)(`div`,{className:`cc-mdw__resize`,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize details`,"aria-valuenow":j,"aria-valuemin":f,tabIndex:0,onPointerDown:P,onKeyDown:F}),a?i:null]})]})]})}function HR({primaryAction:e,menuActions:t=[],onAction:n,size:r=`large`,className:i=``}){if(!e)return null;let a=t.map(e=>({key:e.key,label:e.label,icon:e.icon,disabled:!!e.disabled})),o=(0,p.jsx)(d.Button,{type:`primary`,size:r,icon:e.icon??(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>n?.(e.key),children:e.label});return a.length?(0,p.jsxs)(d.Space.Compact,{className:`cc-create-btn ${i}`.trim(),children:[o,(0,p.jsx)(d.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:a,onClick:({key:e})=>n?.(e)},children:(0,p.jsx)(d.Button,{type:`primary`,size:r,icon:(0,p.jsx)(f.DownOutlined,{}),"aria-label":`More create options`})})]}):(0,p.jsx)(`span`,{className:`cc-create-btn ${i}`.trim(),children:o})}function UR({title:e=null,searchValue:t=``,onSearch:n,searchPlaceholder:r=`Search…`,minChars:i=3,debounceMs:a=350,primaryAction:o=null,menuActions:s=[],onAction:c,extra:l=null,className:m=``,showSearch:h=!0}){let[g,_]=(0,u.useState)(t??``),[v,y]=(0,u.useState)(t??``),b=(0,u.useRef)(t??``),x=(0,u.useRef)(null);(t??``)!==v&&(y(t??``),_(t??``)),(0,u.useEffect)(()=>{b.current=t??``},[t]),(0,u.useEffect)(()=>()=>clearTimeout(x.current),[]);let S=e=>{clearTimeout(x.current),x.current=null;let t=String(e??``).trim(),r=t.length>=i?t:``;t.length>0&&t.length<i||r!==b.current&&(b.current=r,n?.(r))},C=e=>{let t=e.target.value;if(_(t),clearTimeout(x.current),t.trim()===``){S(``);return}x.current=setTimeout(()=>S(t),a)},w=g.trim(),T=w.length>0&&w.length<i;return(0,p.jsxs)(`div`,{className:`cc-topbar ${m}`.trim(),children:[e&&(0,p.jsx)(`div`,{className:`cc-topbar__title`,children:e}),h&&(0,p.jsxs)(`div`,{className:`cc-topbar__search`,children:[(0,p.jsx)(d.Input,{allowClear:!0,size:`large`,prefix:(0,p.jsx)(f.SearchOutlined,{"aria-hidden":!0}),placeholder:r,value:g,onChange:C,onPressEnter:()=>S(g),"aria-label":r,"aria-describedby":T?`cc-topbar-hint`:void 0}),T&&(0,p.jsxs)(`span`,{id:`cc-topbar-hint`,className:`cc-topbar__hint`,children:[`Type at least `,i,` characters`]})]}),(0,p.jsxs)(`div`,{className:`cc-topbar__actions`,children:[l,(0,p.jsx)(HR,{primaryAction:o,menuActions:s,onAction:c})]})]})}function WR(e){return e===!0||e===1||e===`1`||String(e).toLowerCase()===`true`}function GR(e,t){if(!(!e||!t))return Object.prototype.hasOwnProperty.call(e,t)?e[t]:String(t).split(`.`).reduce((e,t)=>e?.[t],e)}function KR(e){return e==null||e===``?``:Array.isArray(e)?e.map(KR).filter(Boolean).join(`, `):typeof e==`object`?KR(e.label??e.value??e.name??e.title??``):String(e)}function qR(e){return e?.field??e?.value??e?.fieldName??e?.key??``}function JR(e){return(Array.isArray(e)?e:[]).filter(e=>qR(e)&&e.isVisible!==!1&&e.isVisible!==0&&e.isVisible!==`0`).slice().sort((e,t)=>Number(e.order??0)-Number(t.order??0))}function YR(e){let t=JR(e),n=t.find(e=>WR(e.isLink))??t[0]??null,r=t.find(e=>String(e.renderType??``).toLowerCase()===`badge`&&e!==n)??null;return{title:n,status:r,meta:t.filter(e=>e!==n&&e!==r).slice(0,2)}}function XR(e){let t=e?._id??e?.id;return t&&typeof t==`object`?String(t.$oid??``):t==null?``:String(t)}function ZR({snapshot:e,loading:t=!1,selectedId:n,onSelect:r,onPage:i,ariaLabel:a=`Records`,emptyText:o=`No records`}){let s=(0,u.useRef)(null),c=e?.rows??[],{title:l,status:m,meta:h}=(0,u.useMemo)(()=>YR(e?.fields),[e?.fields]),g=e?.page??1,_=e?.limit??10,v=e?.total??0,y=Math.max(1,Math.ceil(v/Math.max(1,_)));return(0,p.jsxs)(`div`,{className:`cc-compact-list`,children:[(0,p.jsxs)(`div`,{className:`cc-compact-list__head`,children:[(0,p.jsxs)(`span`,{children:[v.toLocaleString(),` `,v===1?`result`:`results`]}),t&&(0,p.jsx)(d.Spin,{size:`small`})]}),c.length===0?(0,p.jsx)(`div`,{className:`cc-compact-list__empty`,children:t?(0,p.jsx)(d.Spin,{}):(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})}):(0,p.jsx)(`ul`,{ref:s,className:`cc-compact-list__items`,role:`listbox`,"aria-label":a,onKeyDown:e=>{if(![`ArrowDown`,`ArrowUp`].includes(e.key))return;let t=[...s.current?.querySelectorAll(`[data-record-id]`)??[]],n=t.indexOf(document.activeElement),r=e.key===`ArrowDown`?Math.min(t.length-1,n+1):Math.max(0,n-1);t[r]&&(e.preventDefault(),t[r].focus())},children:c.map((e,t)=>{let i=XR(e),a=KR(GR(e,qR(l)))||`—`,o=m?KR(GR(e,qR(m))):``,s=h.map(t=>KR(GR(e,qR(t)))).filter(Boolean).join(` · `),c=i&&String(i)===String(n??``);return(0,p.jsxs)(`li`,{"data-record-id":i,role:`option`,"aria-selected":c,tabIndex:0,className:`cc-compact-item${c?` is-selected`:``}`,onClick:()=>i&&r?.(i,e),onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&i&&(t.preventDefault(),r?.(i,e))},children:[(0,p.jsxs)(`div`,{className:`cc-compact-item__row`,children:[(0,p.jsx)(d.Tooltip,{title:a,mouseEnterDelay:.6,children:(0,p.jsx)(`span`,{className:`cc-compact-item__title`,children:a})}),o&&(0,p.jsx)(d.Tag,{className:`cc-compact-item__status`,children:o})]}),s&&(0,p.jsx)(`div`,{className:`cc-compact-item__meta`,children:s})]},i||t)})}),y>1&&(0,p.jsxs)(`div`,{className:`cc-compact-list__pager`,children:[(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.LeftOutlined,{}),disabled:g<=1||t,onClick:()=>i?.(g-1),"aria-label":`Previous page`}),(0,p.jsxs)(`span`,{children:[g,` / `,y]}),(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.RightOutlined,{}),disabled:g>=y||t,onClick:()=>i?.(g+1),"aria-label":`Next page`})]})]})}var QR=[];function $R({component:e,id:t,moduleName:n,onDescriptionSaved:r,record:i}){return e?(0,p.jsx)(e,{id:t,moduleName:n,onDescriptionSaved:r,record:i}):null}function ez({tabs:e=[],activeKey:t,onChange:n,max:r=11,alwaysShowMore:i=!1,moreEmptyLabel:a=`Nothing more`}){let o=e.length>r?e.slice(0,r):e,s=e.length>r?e.slice(r):QR,c=s.some(e=>e.key===t);return(0,p.jsxs)(`div`,{className:`cc-detail__tabs`,role:`tablist`,"aria-label":`Record sections`,children:[o.map(e=>(0,p.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e.key===t,className:`cc-detail__tab-btn${e.key===t?` is-active`:``}`,onClick:()=>n(e.key),children:e.label??e.key},e.key)),(s.length>0||i)&&(0,p.jsx)(d.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:s.length?s.map(e=>({key:e.key,label:e.label??e.key})):[{key:`__empty`,label:a,disabled:!0}],selectable:!0,selectedKeys:c?[t]:[],onClick:({key:e})=>n(e)},children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-detail__tab-btn cc-detail__tab-more${c?` is-active`:``}`,"aria-haspopup":`menu`,children:[c?s.find(e=>e.key===t)?.label:`More`,` `,(0,p.jsx)(f.DownOutlined,{})]})})]})}function tz({moduleName:e,id:t,customConfigName:n,breadcrumb:r=null,stats:i=null,toolbarExtra:a=null,banner:o=null,expanded:s=!1,onToggleExpand:c,onClose:l,refreshKey:m=0,showActivity:g=!0,showNotes:v=!0,users:y=[],onHeaderData:b,onRecordLoaded:x,onHeaderAction:S,onTabChange:C,layout:w=`auto`,stackBelow:T=900,headerSlot:E=null,headerEndSlot:D=null,collapseLabel:O=`Show list`,tabsPlacement:k=`header`,maxVisibleTabs:A=11,alwaysShowMore:j=!1,moreEmptyLabel:M,extraTabs:N=QR,defaultTab:P=`details`}){let F=(0,u.useRef)(null),I=E!=null||D!=null,[L,R]=(0,u.useState)(null);(0,u.useEffect)(()=>{let e=F.current;if(!e||!I)return;let t=()=>{let t=e.querySelector(`.znx-dh-actions-col`);R(e=>e===t?e:t)};t();let n=new MutationObserver(t);return n.observe(e,{childList:!0,subtree:!0}),()=>n.disconnect()},[I]);let[z,B]=(0,u.useState)(null);(0,u.useEffect)(()=>{let e=F.current;if(!e||w!==`auto`||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(e=>{let t=e[0]?.contentRect?.width??0;t>0&&B(t<T)});return t.observe(e),()=>t.disconnect()},[w,T]);let V=w===`stacked`||w===`auto`&&z===!0,[H,U]=(0,h.useSearchParams)(),W=H.get(`tab`)||P,G=os(),[ee,te]=(0,u.useState)(0),[ne,re]=(0,u.useState)(null),[ie,ae]=(0,u.useState)(()=>new Set([W]));ie.has(W)||ae(new Set([...ie,W]));let oe=(0,u.useMemo)(()=>Oa(e)?.tabs??QR,[e]),se=(0,u.useMemo)(()=>N.length?[...oe,...N]:oe,[oe,N]),ce=Fn(se,{id:t,moduleName:e,record:ne}),K=e=>e===`details`||!se.some(t=>t.key===e&&typeof t.visibleWhen==`function`)||ce.some(t=>t.key===e),le=t=>N.find(e=>e.key===t)?.component??as(e,t),ue=(e,t)=>{let n=new URLSearchParams(H);n.set(`tab`,e),U(n,{replace:!0}),C?.(e,t)},de=e=>{re(e),x?.(e)},fe=m+G,pe=()=>te(e=>e+1),me=W===`details`||!K(W)||!le(W),he=k===`below`;return(0,p.jsxs)(`div`,{ref:F,className:`cc-detail${V?` cc-detail--stacked`:``}${he?` cc-detail--tabs-below`:``}`,children:[(0,p.jsxs)(`div`,{className:`cc-detail__toolbar`,children:[(0,p.jsx)(`nav`,{className:`cc-detail__crumbs`,"aria-label":`Breadcrumb`,children:r}),(0,p.jsxs)(`div`,{className:`cc-detail__toolbar-right`,children:[i,E&&!L?E:null,D&&!L?D:null,a,c&&(0,p.jsx)(d.Tooltip,{title:s?O:`Expand`,children:(0,p.jsx)(d.Button,{type:`text`,icon:s?(0,p.jsx)(f.CompressOutlined,{}):(0,p.jsx)(f.ExpandOutlined,{}),"aria-label":s?O:`Expand details`,onClick:c})}),l&&(0,p.jsx)(d.Tooltip,{title:`Close (Esc)`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close details`,onClick:l})})]})]}),(0,p.jsxs)(`div`,{className:`cc-detail__scroll`,children:[(0,p.jsx)(ns,{moduleName:e,customConfigName:n,id:t,defaultTab:W,onAction:S,onTabChange:ue,onHeaderData:b,onRecordLoaded:de,refreshKey:fe}),E&&L?(0,_.createPortal)((0,p.jsx)(`div`,{className:`cc-detail__header-slot`,children:E}),L):null,D&&L?(0,_.createPortal)((0,p.jsx)(`div`,{className:`cc-detail__header-end`,children:D}),L):null,he&&ce.length>0&&(0,p.jsx)(ez,{tabs:ce,activeKey:me?`details`:W,onChange:e=>ue(e),max:A,alwaysShowMore:j,moreEmptyLabel:M}),o,(0,p.jsx)(`div`,{className:`cc-detail__tab cc-detail__details v1-detail-page`,hidden:!me,children:(me||ie.has(`details`))&&(0,p.jsxs)(d.Row,{gutter:[16,16],align:`stretch`,className:`v1-detail-row`,children:[(0,p.jsx)(d.Col,{xs:24,xl:V?24:16,className:`v1-detail-col-main`,children:(0,p.jsx)(Xi,{moduleName:e,id:t,refreshKey:ee+fe,onDescriptionSaved:pe})}),(0,p.jsx)(d.Col,{xs:24,xl:V?24:8,className:`v1-detail-col-rail`,children:(0,p.jsx)(ln,{moduleName:e,id:t,users:y,showActivity:g,showNotes:v,refreshKey:fe})})]})}),[...ie].filter(e=>e!==`details`).map(n=>{let r=K(n)?le(n):null;return r?(0,p.jsx)(`div`,{className:`cc-detail__tab`,hidden:n!==W,children:(0,p.jsx)($R,{component:r,id:t,moduleName:e,onDescriptionSaved:pe,record:ne})},n):null})]})]})}function nz({items:e=[]}){return(0,p.jsx)(`ol`,{className:`cc-crumbs`,children:e.map((t,n)=>(0,p.jsxs)(`li`,{className:`cc-crumbs__item`,children:[n>0&&(0,p.jsx)(f.RightOutlined,{className:`cc-crumbs__sep`,"aria-hidden":!0}),t.onClick?(0,p.jsx)(`button`,{type:`button`,className:`cc-crumbs__link`,onClick:t.onClick,children:t.label}):(0,p.jsx)(`span`,{"aria-current":n===e.length-1?`page`:void 0,children:t.label})]},`${t.label}-${n}`))})}function rz(e,t,{max:r=12,refreshKey:i=0}={}){let a=`${e}|${t}|${i}`,[o,s]=(0,u.useState)({key:``,groups:null,error:null});return(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;return n.Jt({module:e,id:t,view:`detail`}).then(e=>{r||s({key:a,groups:Array.isArray(e)?e:[],error:null})}).catch(e=>{r||s({key:a,groups:null,error:e})}),()=>{r=!0}},[e,t,a]),{fields:(0,u.useMemo)(()=>qP(o.groups,r),[o.groups,r]),loading:o.key!==a,error:o.error}}function iz({open:e,title:t,extra:n=null,footer:r=null,onClose:i,width:a=320,className:o=``,children:s}){let c=(0,u.useRef)(null);return(0,u.useEffect)(()=>{e&&c.current?.focus({preventScroll:!0})},[e]),e?(0,p.jsxs)(`aside`,{ref:c,className:`cc-side-panel ${o}`.trim(),style:{"--cc-side-panel-w":`${a}px`},"aria-label":typeof t==`string`?t:`Quick view`,tabIndex:-1,onKeyDown:e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.stopPropagation(),i?.())},children:[(0,p.jsxs)(`header`,{className:`cc-side-panel__head`,children:[(0,p.jsx)(`span`,{className:`cc-side-panel__title`,children:t}),(0,p.jsxs)(`span`,{className:`cc-side-panel__extra`,children:[n,(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close quick view`,onClick:i})]})]}),(0,p.jsx)(`div`,{className:`cc-side-panel__body`,children:s}),r&&(0,p.jsx)(`footer`,{className:`cc-side-panel__foot`,children:r})]}):null}function az({open:e,moduleName:t,title:n,width:r=760,onClose:a,onCreated:o,formProps:s={}}){return(0,p.jsx)(d.Drawer,{open:e,title:n??`Add`,size:r,placement:`right`,onClose:a,mask:{closable:!1},keyboard:!1,destroyOnHidden:!0,className:`cc-add-drawer`,styles:{body:{paddingTop:8}},children:e&&t&&(0,p.jsx)(i.t,{...s,moduleName:t,embedded:!0,onCancel:a,onSuccess:(e,t)=>{o?.(e,t),a?.()}})})}var oz=`q`,sz=`f`,cz=`view`,lz=`lp`,uz=`full`,dz=[];function fz(e){if(e.get(cz)===uz)return;let t=PP(e);t>1&&e.set(lz,String(t)),[...e.keys()].filter(e=>/^p\d+$/.test(e)).forEach(t=>e.delete(t))}var pz={open:`Live`,connecting:`Connecting…`,reconnecting:`Reconnecting…`,unauthorized:`Live updates paused`,idle:`Live`};function mz(e){return e===`open`?`is-open`:e===`reconnecting`||e===`connecting`?`is-reconnecting`:``}function hz(){try{return Number(localStorage.getItem(`userId`))||0}catch{return 0}}function gz({listModule:e,detailModule:t,detailConfigName:n,title:r,basePath:i,listTabs:a,recordParam:o=`id`,searchPlaceholder:s=`Search…`,searchFields:c,createActions:l,relatedTopics:f=dz,quickViewTitle:m=`Quick View`,quickViewWidth:g=420,renderQuickViewExtra:_,renderQuickView:v,renderFullView:y,renderFullViewStats:b,fullViewBreadcrumbLabel:x=`Details`,listProps:S,topBarInFullView:C=!0,showTopBarSearch:w=!0,openRecordIn:T=`quick`,quickViewMode:E=`docked`,defaultRailCollapsed:D=!1,showRail:O=!0,listComponent:k,actionsInListToolbar:A=!1}){let{tab:j}=(0,h.useParams)(),M=(0,h.useNavigate)(),[N,P]=(0,h.useSearchParams)(),F=Array.isArray(a)&&a.length>0,I=F?a.find(e=>e.toLowerCase()===String(j??``).toLowerCase()):void 0,L=N.get(o)||``,R=T===`full`,z=!!L&&(R||N.get(cz)===uz),B=E===`overlay`,[V,H]=(0,u.useState)(D),U=N.get(oz)||``,W=N.get(sz)||``,G=(0,u.useMemo)(()=>SP(W),[W]),[ee,te]=(0,u.useState)(null),[ne,re]=(0,u.useState)(0),ie=os(),ae=cI({topics:[zF(e)]}),oe=cI({topics:L?[BF(e,L)]:dz,enabled:!!L}),se=cI({topics:L?[...f,BF(e,L)]:dz,enabled:!!L}),ce=iI(),{fetchData:K,loading:le}=MP({filters:G,search:U,refreshTick:ae.tick+ne}),ue=hz(),de=oe.lastEvent,fe=de&&de.actorId&&de.actorId!==ue?de.eventId:null,[pe,me]=(0,u.useState)(null),he=fe&&fe!==pe?fe:null;(0,u.useEffect)(()=>{if(!he)return;let e=setTimeout(()=>me(he),6e3);return()=>clearTimeout(e)},[he]);let q=(0,u.useCallback)((e,{replace:t=!1,resetPage:n=!1}={})=>{let r=new URLSearchParams(N);e(r),n&&(r=FP(r,1)),r.toString()!==N.toString()&&P(r,{replace:t})},[N,P]),ge=(0,u.useCallback)(e=>{e&&q(t=>{t.get(o)!==e&&(t.set(o,e),t.delete(`tab`),t.delete(`subTab`)),R?(fz(t),t.set(cz,uz)):t.delete(cz)})},[R,o,q]),_e=(0,u.useCallback)(e=>{let t=e&&typeof e==`object`&&typeof e.tab==`string`?e.tab:``;q(e=>{fz(e),e.set(cz,uz),t&&(e.set(`tab`,t),e.delete(`subTab`))})},[q]),ve=e=>{if(e.get(cz)!==uz&&!e.has(lz))return;let t=Number(e.get(lz))||1;[...e.keys()].filter(e=>/^p\d+$/.test(e)).forEach(t=>e.delete(t)),e.delete(lz),t>1&&e.set(`p${t}`,``)},ye=(0,u.useCallback)(()=>{q(e=>{ve(e),e.delete(cz),e.delete(`tab`),e.delete(`subTab`)})},[q]),J=(0,u.useCallback)(()=>{q(e=>{ve(e),e.delete(o),e.delete(cz),e.delete(`tab`),e.delete(`subTab`)})},[o,q]),be=(0,u.useCallback)(e=>{q(t=>{e?t.set(oz,e):t.delete(oz)},{replace:!0,resetPage:!0})},[q]),xe=(0,u.useCallback)(e=>{vP(e)!==vP(G)&&q(t=>{let n=xP(e);n?t.set(sz,n):t.delete(sz)},{resetPage:!0})},[G,q]),Se=(0,u.useCallback)(e=>{if(!F)return;let t=a.find(t=>t.toLowerCase()===String(e??``).trim().toLowerCase());if(!t||t===I)return;let n=FP(N,1).toString();M({pathname:`${i}/${t}`,search:n?`?${n}`:``})},[i,F,I,a,M,N]),Ce=(0,u.useMemo)(()=>l?.primary?[l.primary,...l.menu??[]]:[],[l]),we=(0,u.useCallback)(e=>{let t=Ce.find(t=>t.key===e);if(!t)return;let n=typeof t.formProps==`function`?t.formProps({recordId:L}):t.formProps;te({...t,resolvedFormProps:n??void 0})},[Ce,te,L]),Te=(0,u.useCallback)(e=>{d.message.success(`${String(ee?.label??`Record`).replace(/^Add\s+/i,``)} created`),re(e=>e+1),ee?.openCreatedRecord&&e&&ge(String(e))},[ee,ge,re]),Ee=(0,u.useMemo)(()=>({moduleName:e,...F?{selectedSource:I,onTabChange:Se}:{},fetchData:K,searchFields:c,showSearch:!1,showFilterButton:!1,showAdd:!1,showViewToggle:!1,autoCardForExternalRows:!1,showSummaryButton:!0,...S??{}}),[e,F,I,Se,K,c,S]),De=(0,u.useMemo)(()=>A?(0,p.jsxs)(`span`,{className:`cc-list-toolbar-actions`,children:[ce!==`disabled`&&(0,p.jsxs)(`span`,{className:`cc-live-pill`,"aria-live":`polite`,children:[(0,p.jsx)(`span`,{className:`cc-live-dot ${mz(ce)}`}),pz[ce]??`Offline`]}),(0,p.jsx)(HR,{primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,size:`middle`})]}):null,[A,ce,l,we]),Oe=(0,u.useMemo)(()=>De?{...Ee,toolbarExtra:De}:Ee,[Ee,De]);if(F&&!I){let e=N.toString();return(0,p.jsx)(h.Navigate,{to:{pathname:`${i}/${a[0]}`,search:e?`?${e}`:``},replace:!0})}let ke=he?(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`This record was just updated by someone else — the view has been refreshed.`,style:{margin:`0 0 12px`}}):null,Ae={id:L,listTab:I,isFull:z,recordTick:oe.tick+ne+ie,relatedTick:se.tick+ne+ie,onOpenFull:_e,onBackToQuick:R?null:ye,onClose:J,updatedBanner:ke,renderCreateButton:(e={})=>(0,p.jsx)(HR,{primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,...e})},je=null;L&&!z?je=v?v(Ae):(0,p.jsx)(XP,{moduleName:t,configName:n,id:L,title:m,refreshKey:Ae.recordTick,onOpenFull:_e,onClose:J,extra:_?_(Ae):null},L):L&&z&&(je=y?y(Ae):(0,p.jsx)(tz,{moduleName:t,customConfigName:n,id:L,expanded:!0,onToggleExpand:R?void 0:ye,collapseLabel:`Back to quick view`,onClose:J,refreshKey:Ae.recordTick,banner:ke,headerEndSlot:C?null:Ae.renderCreateButton({size:`middle`}),stats:b?b(Ae):null,breadcrumb:(0,p.jsx)(nz,{items:[{label:r,onClick:J},{label:x}]})},L));let Me=mz(ce);return(0,p.jsxs)(`div`,{className:`cc-module-workspace${k?` cc-module-workspace--host-list`:``}`,children:[(0,p.jsx)(VR,{ariaLabel:r,detailMode:`window`,defaultDetailWidth:g,minDetailWidth:340,maxDetailWidthRatio:.6,widthStorageKey:`cc-quickview-width:${e}`,detailOpen:B?z:!!L,detailExpanded:z,onCloseDetail:z&&!R?ye:J,railCollapsed:V,topBar:z&&!C||!z&&A?null:(0,p.jsx)(UR,{title:r,searchValue:U,onSearch:be,searchPlaceholder:s,showSearch:w,primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,extra:ce!==`disabled`&&(0,p.jsx)(d.Tooltip,{title:`Changes made by others appear here automatically`,children:(0,p.jsxs)(`span`,{className:`cc-live-pill`,"aria-live":`polite`,children:[(0,p.jsx)(`span`,{className:`cc-live-dot ${Me}`}),pz[ce]??`Offline`]})})}),rail:O?(0,p.jsx)(TP,{moduleName:e,scope:I??``,value:G,onChange:xe,collapsed:V,onExpand:()=>H(!1),onCollapse:()=>H(!0)}):null,list:z?null:(0,p.jsx)(LP,{component:k,listProps:Oe,loading:le,selectedRecordId:L||void 0,onOpenRecord:ge}),detail:B&&!z?null:je}),B&&(0,p.jsx)(RP,{open:!!L&&!z,onClose:J,width:g,ariaLabel:m,children:z?null:je}),(0,p.jsx)(az,{open:!!ee,moduleName:ee?.moduleName,title:ee?.title,onClose:()=>te(null),onCreated:Te,formProps:ee?.resolvedFormProps})]})}var _z=[];function vz(e){let t=[e,e?.data,e?.data?.data],n=t.map(e=>e?.total??e?.pagination?.total).find(e=>Number.isFinite(Number(e))&&e!==null&&e!==``),r=t.map(e=>e?.tabs).find(Array.isArray)??_z;return{total:n===void 0?null:Number(n),tabs:r}}var yz=[`module:candidates`,`module:submissions`];function bz({listProps:e,moduleName:t,filterModule:n,renderQuickView:r,quickViewWidth:i=340,railWidth:a=240,liveTopics:o=yz,renderHeader:s,resultsTitle:c,fallbackView:l,preferredView:d,viewSource:f=`default`,fill:m=!1,quickViewMode:g=`docked`,defaultRailCollapsed:_=!1,collapsedRailWidth:v=44,showRail:y=!0}){let[b,x]=(0,u.useState)(_),[S,C]=(0,u.useState)(_z),[w,T]=(0,u.useState)(``),[E,D]=(0,u.useState)(null),[O,k]=(0,u.useState)({total:null,tabs:_z,durationMs:null}),A=cI({topics:o,enabled:!!e?.fetchData,debounceMs:800}),j=e?.fetchData,{fetchData:M,loading:N}=MP({filters:S,baseFetch:(0,u.useMemo)(()=>typeof j==`function`?async(...e)=>{let t=typeof performance<`u`?performance.now():Date.now(),n=await j(...e),r=typeof performance<`u`?performance.now():Date.now();return k({...vz(n),durationMs:Math.max(0,r-t)}),n}:j,[j]),refreshTick:A.tick}),[P,F]=(0,h.useSearchParams)(),I=(0,u.useCallback)(e=>{if(vP(S)===vP(e))return;C(e),D(null);let t=FP(P,1);t.toString()!==P.toString()&&F(t,{replace:!0})},[S,P,F]),L=(0,u.useMemo)(()=>({...e??{},fetchData:M,showFilterButton:!1,...l&&f==="default"?{activeView:l}:{},...d&&f!==`user`?{activeView:d}:{},onTabChange:t=>{T(String(t??``)),D(null),e?.onTabChange?.(t)}}),[e,M,l,d,f]),R=E&&typeof r==`function`?r({id:E.id,record:E.record,onClose:()=>D(null)}):null;if(!e?.fetchData)return null;let z=g===`overlay`,B=!!R&&!z,V=typeof s==`function`?s({total:O.total,tabs:O.tabs,durationMs:O.durationMs,loading:N}):null;return(0,p.jsxs)(`div`,{className:`cc-search-ws${B?` cc-search-ws--quick`:``}${b?` cc-search-ws--rail-collapsed`:``}${y?``:` cc-search-ws--no-rail`}${V?` cc-search-ws--head`:``}${m?` cc-search-ws--fill`:``}`,style:{"--cc-search-rail-w":`${b?v:a}px`,"--cc-search-quick-w":`${i}px`},children:[V&&(0,p.jsx)(`div`,{className:`cc-search-ws__head`,children:V}),y&&(0,p.jsx)(`div`,{className:`cc-search-ws__rail`,children:(0,p.jsx)(TP,{moduleName:n||t,scope:w,value:S,onChange:I,title:`Filters`,collapsed:b,onExpand:()=>x(!1),onCollapse:()=>x(!0)})}),(0,p.jsxs)(`div`,{className:`cc-search-ws__results`,children:[typeof c==`function`&&O.total!==null&&(0,p.jsx)(`div`,{className:`cc-search-ws__results-title`,children:c(O.total)}),(0,p.jsx)(LP,{listProps:L,loading:N,selectedRecordId:E?.id,onOpenRecord:(e,t)=>D({id:String(e),record:t??null})})]}),B&&(0,p.jsx)(`div`,{className:`cc-search-ws__quick`,children:R}),z&&(0,p.jsx)(RP,{open:!!R,onClose:()=>D(null),width:i,children:R})]})}function xz(e){return(e??[]).filter(e=>e!=null&&String(e).trim()!==``)}function Sz({icon:e=(0,p.jsx)(f.SearchOutlined,{}),title:t=`Search`,criteria:n=[],details:r=[],badge:i=null,onEdit:a,editLabel:o=`Edit Search`,expanded:s=!1,onToggle:c,className:l=``}){let u=xz(n),m=xz(r);return(0,p.jsxs)(`section`,{className:`cc-search-summary ${l}`.trim(),"aria-label":`${t} summary`,children:[(0,p.jsx)(`span`,{className:`cc-search-summary__icon`,"aria-hidden":!0,children:e}),(0,p.jsxs)(`div`,{className:`cc-search-summary__text`,children:[(0,p.jsxs)(`div`,{className:`cc-search-summary__title`,children:[(0,p.jsxs)(`span`,{className:`cc-search-summary__lead`,children:[t,u.length?`:`:``]}),u.map((e,t)=>(0,p.jsx)(`span`,{className:`cc-search-summary__part`,children:e},`${e}-${t}`))]}),m.length>0&&(0,p.jsx)(`div`,{className:`cc-search-summary__details`,children:m.map((e,t)=>(0,p.jsx)(`span`,{className:`cc-search-summary__part`,children:e},`${e}-${t}`))})]}),(0,p.jsxs)(`div`,{className:`cc-search-summary__actions`,children:[i,a&&(0,p.jsx)(d.Button,{className:`cc-search-summary__edit`,onClick:a,children:o}),c&&(0,p.jsx)(d.Tooltip,{title:s?`Hide search form`:`Show search form`,children:(0,p.jsx)(d.Button,{className:`cc-search-summary__toggle`,icon:s?(0,p.jsx)(f.UpOutlined,{}):(0,p.jsx)(f.DownOutlined,{}),"aria-label":s?`Hide search form`:`Show search form`,"aria-expanded":s,onClick:c})})]})]})}function Cz(...e){try{for(let t of e){let e=(localStorage.getItem(t)||``).trim();if(e)return e}}catch{}return``}function wz(e){return String(e||``).split(` `).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function Tz(e){let t=String(e||``).split(` `).filter(Boolean);return t.length?`${t[0].charAt(0)}${t.length>1?t.at(-1).charAt(0):``}`.toUpperCase():`U`}function Ez(e){let t=`url("${String(e).replace(/"/g,`%22`)}")`;return{WebkitMaskImage:t,maskImage:t}}function Dz(){return(0,p.jsxs)(`span`,{className:`cc-frame__logo`,"aria-label":`Zinnext`,children:[(0,p.jsx)(`span`,{className:`cc-frame__logo-icon`,style:Ez(Tp)}),(0,p.jsx)(`span`,{className:`cc-frame__logo-text`,style:Ez(Ep)})]})}function Oz({value:e=``,placeholder:t,onSearch:n}){let[r,i]=(0,u.useState)(e),[a,o]=(0,u.useState)(e);return e!==a&&(o(e),i(e)),(0,p.jsx)(d.Input,{className:`cc-frame__search-input`,allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{"aria-hidden":!0}),placeholder:t,"aria-label":t,value:r,onChange:e=>{i(e.target.value),e.target.value===``&&n?.(``)},onPressEnter:()=>n?.(r.trim())})}function kz({navItems:e=[],brand:n=null,search:r=null,headerExtra:i=null,user:a=null,userMenuItems:o=[],loginPath:s=`/login`,children:c}){let l=(0,h.useLocation)(),m=(0,h.useNavigate)(),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)(l.pathname);v!==l.pathname&&(y(l.pathname),_(!1));let b=wz(a?.name||Cz(`userName`,`preferred_Username`)||`User`),x=a?.subtitle??Cz(`roleName`,`userRoleName`),S=[...o,...o.length?[{type:`divider`}]:[],{key:`cc-frame-logout`,icon:(0,p.jsx)(f.LogoutOutlined,{}),danger:!0,label:`Logout`,onClick:()=>{t.g(),m(s,{replace:!0})}}];return(0,p.jsxs)(`div`,{className:`cc-frame${g?` cc-frame--nav-open`:``}`,children:[(0,p.jsxs)(`header`,{className:`cc-frame__header`,children:[(0,p.jsx)(d.Button,{type:`text`,className:`cc-frame__nav-toggle`,icon:(0,p.jsx)(f.MenuOutlined,{}),"aria-label":g?`Close navigation`:`Open navigation`,"aria-expanded":g,onClick:()=>_(e=>!e)}),(0,p.jsx)(`div`,{className:`cc-frame__brand`,children:n??(0,p.jsx)(Dz,{})}),r&&(0,p.jsx)(`div`,{className:`cc-frame__search`,children:(0,p.jsx)(Oz,{value:r.value??``,placeholder:r.placeholder??`Search…`,onSearch:r.onSearch})}),(0,p.jsxs)(`div`,{className:`cc-frame__header-end`,children:[i,(0,p.jsx)(d.Dropdown,{menu:{items:S},trigger:[`click`],placement:`bottomRight`,children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-frame__user`,"aria-label":`Open user menu`,children:[(0,p.jsx)(d.Avatar,{size:40,className:`cc-frame__avatar`,children:Tz(b)}),(0,p.jsxs)(`span`,{className:`cc-frame__user-text`,children:[(0,p.jsx)(`span`,{className:`cc-frame__user-name`,children:b}),x?(0,p.jsx)(`span`,{className:`cc-frame__user-sub`,children:x}):null]}),(0,p.jsx)(f.DownOutlined,{className:`cc-frame__user-caret`,"aria-hidden":!0})]})})]})]}),(0,p.jsxs)(`nav`,{className:`cc-frame__nav`,"aria-label":`Main`,children:[(0,p.jsx)(`div`,{className:`cc-frame__nav-brand`,children:n??(0,p.jsx)(Dz,{})}),(0,p.jsx)(`ul`,{className:`cc-frame__nav-list`,children:e.map(e=>{let t=typeof e.match==`function`?e.match(l.pathname):l.pathname.startsWith(e.to);return(0,p.jsx)(`li`,{children:(0,p.jsxs)(h.Link,{to:e.to,className:`cc-frame__nav-item${t?` is-active`:``}`,"aria-current":t?`page`:void 0,children:[e.icon?(0,p.jsx)(`span`,{className:`cc-frame__nav-icon`,"aria-hidden":!0,children:e.icon}):null,(0,p.jsx)(`span`,{className:`cc-frame__nav-label`,children:e.label})]})},e.key)})})]}),g&&(0,p.jsx)(`button`,{type:`button`,className:`cc-frame__backdrop`,"aria-label":`Close navigation`,onClick:()=>_(!1)}),(0,p.jsx)(`main`,{className:`cc-frame__main`,children:(0,p.jsx)(`div`,{className:`cc-frame__content`,children:(0,p.jsx)(Am,{loginPath:s,children:(0,p.jsx)(Fm,{children:c??(0,p.jsx)(h.Outlet,{})})})})})]})}var Az=new Intl.NumberFormat;function jz(e){return e==null||typeof e==`string`&&e.trim()===``}function Mz(e,t){let n=(Array.isArray(e?.options)?e.options:[]).find(e=>String(e?.value??e)===String(t));return String(n&&typeof n==`object`?n.label??n.value??t:t)}function Nz(e,t){if(jz(t))return``;if(typeof t==`boolean`)return t?String(e?.label??e?.field??``):``;if(typeof t==`object`){if(typeof t.format==`function`)return t.format(`DD MMM YYYY`);if(`label`in t||`value`in t)return String(t.label??t.value??``);let e=t.from??t.min??t.start,n=t.to??t.max??t.end;return!jz(e)||!jz(n)?[e,n].filter(e=>!jz(e)).join(`–`):``}return Mz(e,t).trim()}function Pz(e={},t=[],{skip:n=[]}={}){let r=new Set(n);return(t??[]).flatMap(t=>{let n=t?.field;if(!n||r.has(n))return[];let i=e?.[n];if(jz(i))return[];if(El(t)){let{terms:e,expression:t}=Tl(i),n=e.map(e=>e.value).filter(Boolean);return n.length?[n.join(`, `)]:t.trim()?[t.trim()]:[]}if(Array.isArray(i)){let e=i.map(e=>Nz(t,e)).filter(Boolean);return e.length?[e.join(`, `)]:[]}let a=Nz(t,i);return a?[a]:[]})}function Fz(e){return!Number.isFinite(e)||e<0?``:e<1e4?`${(e/1e3).toFixed(1)} seconds`:`${Math.round(e/1e3)} seconds`}function Iz(e){return Number.isFinite(e)?Az.format(e):``}function Lz({enabled:e=!0,children:t}){let[n]=(0,u.useState)(()=>e?XF():null);return(0,u.useEffect)(()=>{if(!n)return;ZF();let e=()=>n.nudge(),t=()=>{document.visibilityState===`visible`&&e()};return window.addEventListener(`online`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`online`,e),document.removeEventListener(`visibilitychange`,t),QF()}},[n]),(0,p.jsx)(GF.Provider,{value:n,children:t})}async function Rz(e,t,n,r={}){return zz(e,tF(t,n),r)}async function zz(e,t,{limit:r=20,offset:i=0,sort:a=``,sortDir:o=``}={}){let s=Array.isArray(t)?t.filter(e=>e?.field):[];if(!e||s.length===0)return{rows:[],total:0};let c=await n.Qt(e,r,i,{sort:a,sortDir:o,scopeConditions:s}),l=n.Ot(c,e);return{rows:Array.isArray(l?.rows)?l.rows:[],total:Number(l?.total)||0}}typeof window<`u`&&(window.__CORE_THEME_BUILD__=`2026-11-10T09:16:52.275Z`);var Bz=ik,Vz=mh(gM),Hz=mh(vM),Uz=mh(NM),Wz=mh(GM),Gz=mh(eN),Kz=mh(rN),qz=mh(oN),Jz=mh(lN),Yz=mh(dN),Xz=mh(wN),Zz=mh(EN);exports.ACTION_RULE_SURFACES=n.kt,exports.ADMIN_API_URL=t.y,exports.ADMIN_APP_ID=t.b,exports.APP_ID=t.x,exports.AUTH_URL=t.S,exports.ActionInputBox=RI,exports.ActivityNotesCard=ln,exports.ActivityTab=rn,exports.AddBatchCandidatePopup=NO,exports.AddFormV1=i.t,exports.AddRecordDrawer=az,exports.AdminDashboard=ik,exports.AdminDashboardContent=AC,exports.AdminPage=Bz,exports.AppAlert=c.a,exports.AppButton=n.Gn,exports.AppShell=Lm,exports.ApprovalActionBar=Gd,exports.AssigneeAvatars=un,exports.AuthGuard=Am,exports.BILLING_STATUS_FLOW=Qa,exports.BOOLEAN_API_KEYS=ju,exports.BOOLEAN_PARSEABLE_API_KEYS=gl,exports.BUILT_IN_WIZARD_STEP_TYPES=n.et,exports.BULK_UPLOAD_DEFAULT_ACCEPT=dn,exports.BULK_UPLOAD_DEFAULT_MAX_SIZE_MB=fn,exports.Breadcrumb=n.Dt,exports.BulkUploadPage=Uz,exports.BulkUploadPanel=bn,exports.CANDIDATES_URL=t.C,exports.CONTRACT_C2C=gf,exports.CONTRACT_W2=hf,exports.CURRENCY_SYMBOLS=Ur,exports.CalendarCard=j,exports.CombinedDashboardPage=XL,exports.DASHBOARDPAGE=XL,exports.CombinedDetailViewPage=dL,exports.DETAILVIEWPAGE=dL,exports.CombinedHomePage=eL,exports.HOMEPAGE=eL,exports.CompactRecordList=ZR,exports.CoreThemeAdminApp=PC,exports.CoreThemeAdminRoutes=NC,exports.CreateActionButton=HR,exports.CustomPagination=n.si,exports.DEFAULT_HOURS_POLICY=pd,exports.DEFAULT_RESULTS_VIEW=Du,exports.DETAILSSECTION=FR,exports.DetailsSection=FR,exports.DETAILS_BLOCKS=OR,exports.DETAILS_ICONS=ZL,exports.DayLogModal=Ld,exports.DescriptionBlock=Nn,exports.DetailHeaderCard=ns,exports.DetailViewPage=ls,exports.DetailViewV1=Xi,exports.DocumentViewer=r.t,exports.DynamicCards=It,exports.DynamicPopup=tE,exports.DynamicPopupRoute=RO,exports.DynamicTabs=n.ui,exports.DynamicWizard=uc,exports.EditFormV1=ic,exports.FIELD_TYPE_REGISTRY=Zl,exports.FINANCE_APPROVAL_CONFIG=sf,exports.FINANCE_TYPE_CFO=$d,exports.FINANCE_TYPE_ONBOARDING_MANAGER=Qd,exports.FINANCE_TYPE_ONBOARDING_MANAGER_REAPPROVE=nf,exports.FINANCE_TYPE_ONLY_FINANCE=ef,exports.FINANCE_TYPE_SUBMISSION_MANAGER=Zd,exports.FINANCE_TYPE_SUBMISSION_MANAGER_REAPPROVE=tf,exports.FileListCard=xp,exports.FilterRail=TP,exports.FinanceApprovalPanel=ep,exports.FinanceAvatar=Po,exports.FinanceBadge=Ro,exports.FinanceDayCell=qd,exports.FinanceDivider=Eo,exports.FinanceEmployeeCell=Fo,exports.FinanceEmptyState=Co,exports.FinanceEquation=Do,exports.FinanceHistoryTimeline=jo,exports.FinanceHoursGrid=So,exports.FinanceKpiRow=xo,exports.FinanceLine=To,exports.FinanceListToolbar=fd,exports.FinanceMarginBadge=zo,exports.FinanceMoneyCell=Lo,exports.FinanceRecordsTable=Ho,exports.FinanceRowChevron=Bo,exports.FinanceSection=wo,exports.FinanceStatusPill=bo,exports.FinanceTextCell=Io,exports.FinanceTimesheetAnalysis=Yd,exports.FinanceWorkflowSteps=Oo,exports.HOURS_MESSAGES=md,exports.Header=Xp,exports.HierarchyUserFilter=Vt,exports.HubOverview=tL,exports.JOBS_URL=t.w,exports.LegacyAdminPage=Vz,exports.ListView=n.rt,exports.ListWithQuickView=zP,exports.LmsHomePage=Zz,exports.LmsTestForm=Xz,exports.Login=Rm,exports.MATCH_NOTHING=ZP,exports.MailPopup=dw,exports.ManageModules=Kz,exports.ManageSubmodules=qz,exports.MasterDetailWorkspace=VR,exports.ModuleRowActions=Tc,exports.ModuleWorkspace=gz,exports.NotesPanel=Wd,exports.NotesTab=cn,exports.OPEN_AS_OPTIONS=vu,exports.PAGE_ICONS=lI,exports.PAYROLL_STATUS_FLOW=$a,exports.POPUP_CONFIGS=wO,exports.PanelBreadcrumb=nz,exports.PanelTabs=ez,exports.ParamCardView=Yc,exports.ParamListView=tl,exports.PaymentInvoicePopup=JO,exports.PeriodBadgeTag=Ed,exports.PreviewPopup=Hw,exports.ProjectSelect=ph,exports.ProofUploadPreview=Ud,exports.QuickLogBar=Bd,exports.QuickLogSelectionBar=Rd,exports.QuickViewCard=$I,exports.QuickViewModuleActions=BI,exports.QuickViewPopover=RP,exports.RAIL_KIND=nP,exports.REALTIME_STATUS=LF,exports.RESULTS_VIEW_OPTIONS=Eu,exports.RealtimeProvider=Lz,exports.RecordDetailPanel=tz,exports.RecordHub=aL,exports.RecordQuickView=XP,exports.RecordSidePanel=iz,exports.RejectionReasonModal=zd,exports.RelatedModuleTab=DF,exports.SUBMISSIONS_URL=t.E,exports.SearchBuilderV1=rd,exports.SearchResultsWorkspace=bz,exports.SearchSummaryBanner=Sz,exports.SettingsPage=vj,exports.Sidebar=Em,exports.StatStrip=c.i,exports.StatusBadge=ad,exports.StatusBadgeTag=Td,exports.StickyNotesFullPage=Hz,exports.StylishDynamicTabs=sd,exports.TemplateEditor=ld,exports.TestForm=Wz,exports.TestingHomePage=Yz,exports.TimelineGroups=Yt,exports.TimesheetDayCell=Pd,exports.TipTapEditor=n.oi,exports.UserForm=rk,exports.VendorShareDrawer=HO,exports.ViewSummaryWidget=n.Et,exports.WIZARD_ACTIONS_CONTRACT_VERSION=n.N,exports.WIZARD_ACTIONS_PATH=n.P,exports.WIZARD_CONTENT_TYPES=n.L,exports.WizardAccessMatrixStep=n.R,exports.WizardActionError=n.F,exports.WizardActivityStep=n.z,exports.WizardChoiceCardsStep=n.B,exports.WizardDeclarationStep=n.V,exports.WizardListStep=n.H,exports.WizardPermissionMatrixStep=n.q,exports.WizardPopup=Jw,exports.WizardPreview=n.U,exports.WizardPreviewStep=n.J,exports.WizardStepContent=n.W,exports.WizardSuccessStep=n.G,exports.WizardUnknownContentStep=n.K,exports.WorkspaceAppFrame=kz,exports.WorkspaceListView=LP,exports.WorkspaceTopBar=UR,exports.ZinnextTableView=Jz,exports.ZinnextTestForm=Gz,exports.actedRecently=n.it,exports.actionRuleConditionMatches=n.jt,exports.adminActionAllowed=Bc,exports.appNow=n.di,exports.applyIntegrationStatus=n.Di,exports.approveSubmission=q,exports.attentionItems=hL,exports.buildAcceptAttr=_n,exports.buildBooleanRequest=Iu,exports.buildCsv=mo,exports.buildDailyRows=so,exports.buildDayGradient=Md,exports.buildFormWizardSteps=n.rn,exports.buildRateHistoryEntries=Vf,exports.buildRelationConditions=tF,exports.buildSearchRequest=Vu,exports.buildWeeklyRollup=uo,exports.canonicalModule=RF,exports.clearNewRecord=n.at,exports.clearSelectedProject=t.i,exports.colors=n.li,exports.computeFinance=Nf,exports.computeHoursPolicy=bd,exports.computeMarginBand=fo,exports.conditionMatches=n.r,exports.configureCoreTheme=t.D,exports.configuredFieldLabel=n.i,exports.configuredWizardSteps=sc,exports.confirmAction=n.pt,exports.countActiveRows=_P,exports.createAllWorkflowsListFetcher=$N,exports.createMergedListFetcher=qN,exports.createModuleListFetchAdapter=BN,exports.createRealtimeClient=WF,exports.createWorkflowStageListFetcher=JN,exports.currencySymbol=Wr,exports.dashboardRange=fL,exports.defaultMergeRow=MN,exports.deleteIntegrationConfig=n.Ri,exports.deriveDayStats=oo,exports.describeCapacity=Sd,exports.displayText=KR,exports.downloadCsv=vo,exports.draftToRows=hP,exports.evaluateShowIfWith=n.a,exports.fetchJsonWithAuth=t.o,exports.fetchRelatedRecords=Rz,exports.fetchScopedRecords=zz,exports.fillConfirmText=n.ht,exports.findEmployerRow=Df,exports.flattenGroups=Tf,exports.formatAmount=Xr,exports.formatApp=n.fi,exports.formatAppDateTime=n.pi,exports.formatFileSize=gn,exports.formatFinanceMoney=Hf,exports.formatHours=Ua,exports.formatMoney=Zr,exports.formatPercent=Ga,exports.formatRate=Qr,exports.formatSearchCount=Iz,exports.formatSearchDuration=Fz,exports.getActivity=n.Yr,exports.getAllWorkflowsModuleList=eP,exports.getAppTimeZone=n.mi,exports.getApprovalDate=Ya,exports.getBgcIntegrationConfig=n.na,exports.getBgcIntegrationSummary=n.ra,exports.getBillingActionStates=eo,exports.getBooleanEligibleTypes=ru,exports.getCurrentRoleName=t.c,exports.getFieldLabel=go,exports.getFieldType=$l,exports.getFileExtension=hn,exports.getFinanceApprovalConfig=ff,exports.getFormGroups=s.r,exports.getFormGroupsRaw=up,exports.getIntegrationConfig=n.ua,exports.getIntegrationConfigs=n.da,exports.getIntegrationSummary=n.fa,exports.getModuleConfig=Pe,exports.getModuleDataDetail=n.Zr,exports.getPayrollActionStates=to,exports.getPeriodBadgeConfig=Ie,exports.getSearchPopup=hu,exports.getSelectedProject=t.l,exports.getStoredToken=t.u,exports.getStoredUser=t.d,exports.getUserRoles=t.f,exports.getVMSApprove=ge,exports.getValueStyle=_o,exports.getWorkflowStageModuleList=tP,exports.getWorkflowSteps=no,exports.humanizeEvent=Ja,exports.indexFieldConfig=ho,exports.initialsOf=Ka,exports.inputPayload=Xb,exports.insertTokenAtCursor=bl,exports.invalidateGetCache=t.p,exports.isBooleanEligible=eu,exports.isBooleanParsable=vl,exports.isTester=t.m,exports.isWizardConfigEnabled=n.in,exports.isWizardConfigReady=n.an,exports.listPropsForColumns=wI,exports.logout=t.g,exports.makeSearchFetcher=Wu,exports.mapListResponse=n.Ot,exports.marginIncludesReferral=mf,exports.markNewRecord=n.ot,exports.matchLocationTax=Mf,exports.mergeWizardSubmitValues=n.on,exports.moduleTopic=zF,exports.moduleViewAllowed=n.Lt,Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return fs}}),exports.newRecordMarks=n.ct,exports.normalizeConfirm=n.yt,exports.normalizeContract=kf,exports.normalizeInputPrompt=qb,exports.normalizePageLayout=vI,exports.parseRows=SP,exports.pickCompactFields=YR,exports.quickViewFields=qP,exports.quickViewValueText=KP,Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return xn}}),exports.rateUnitLabel=Kr,exports.rateUnitShort=Jr,exports.readActionButtons=Su,exports.readPageParam=PP,exports.reconcileHours=xd,exports.recordActionRun=n.lt,exports.recordIdOf=XR,exports.recordTopic=BF,exports.registerFieldType=Ql,exports.registerSearchPopup=mu,exports.registerWizardPreview=n.tt,exports.registerWizardStepType=n.nt,exports.rejectSubmission=ve,exports.relationSignature=rF,exports.resolveActivityMeta=en,exports.resolveAndCompute=Pf,exports.resolveDayKind=vd,exports.resolveFinanceInputs=jf,exports.resolveMergeKey=AN,exports.resolveMergedListKey=AN,exports.resolveOpenAs=bu,exports.resolvePageButtons=_I,exports.resolvePageIcon=uI,exports.resolvePageValue=pI,exports.resolveQuickViewActions=LI,exports.resolveRejectionReason=pf,exports.resolveResultsSearchPlaceholder=Au,exports.resolveResultsView=ku,exports.resolveSubmissionFinance=dp,exports.rowsSignature=vP,exports.rowsToDraft=gP,exports.ruleAppliesToSurface=n.Pt,exports.rulePrimaryAction=n.Ft,exports.runModuleAction=bc,exports.runWizardAction=n.I,exports.safeWizardActionRoute=n.Y,exports.saveBgcIntegrationConfig=n.Ia,exports.saveIntegrationConfig=n.za,exports.scopeConditionsFor=uF,exports.searchCriteriaParts=Pz,exports.serializeRows=xP,exports.setSelectedProject=t.v,exports.showIfConditions=n.s,exports.stageCountKey=YN,exports.supportsAnyOf=lF,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return zm}}),exports.testIntegrationConnection=n.qa,exports.toApp=n.gi,exports.toNumber=Yr,exports.toRailFields=uP,exports.topicsForEvent=HF,exports.tzLabel=n._i,exports.tzShortLabel=n.vi,exports.unregisterSearchPopup=gu,exports.unscopedConditions=nF,exports.useAdminAction=Hc,exports.useAdminActionsVersion=Vc,exports.useConfiguredWizardSteps=lc,exports.useDropdownFields=n.Vt,exports.useDropdownValues=n.Tt,exports.useEditForm=Sp,exports.useFieldConfig=n.Ht,exports.useFilterFields=n.Ut,exports.useInPlaceRecordLinks=IP,exports.useLiveRefresh=cI,exports.useMenuPermission=n.Rt,exports.useModuleActions=gc,exports.useModuleViewAccess=n.zt,exports.useNewRecordMarks=n.ut,exports.useRealtimeClient=rI,exports.useRealtimeReconnect=sI,exports.useRealtimeStatus=iI,exports.useRealtimeTopics=oI,exports.useRecordFields=rz,exports.useRecordHub=rL,exports.useRecordRefresh=os,exports.useRelatedCounts=wF,exports.useWorkspaceList=MP,exports.validateBooleanQuery=yl,exports.validateBulkFile=vn,exports.validateInputValue=Yb,exports.withAdminAppId=t.O,exports.withAppId=t.k,exports.withAuthGuard=mh,exports.withPageParam=FP,exports.withSubTab=iF;
|
|
47
|
+
`).map(e=>mc(e))).then(()=>{e||z(L)}),()=>{e=!0}},[L]);let B=L!==``&&R!==L,V=A?(0,p.jsx)(`div`,{className:`cc-progress`,role:`progressbar`,"aria-label":`Refreshing`,style:{position:`absolute`,top:0,left:0,right:0}}):null,H=hI(mI(e?.title,N,I))||`Quick View`,U=e?.header===!1?null:(0,p.jsxs)(d.Flex,{justify:`space-between`,align:`center`,children:[(0,p.jsx)(HI,{level:5,style:{margin:0},children:H}),(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),onClick:i,"aria-label":`Close quick view`})]});if(!e)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`No Quick View is configured for "${t}".`})]});if(!N.record&&!M)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Skeleton,{active:!0,avatar:!0,paragraph:{rows:8}})]});if(!N.record)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,style:{padding:16},children:[U,(0,p.jsx)(d.Alert,{type:`error`,showIcon:!0,message:`This record could not be loaded.`})]});if(typeof e.render==`function`)return(0,p.jsxs)(d.Flex,{vertical:!0,gap:14,style:O?{padding:16,position:`relative`}:{padding:16},"aria-label":H,"aria-busy":A||void 0,role:`region`,children:[V,U,M?e.render(N,I):(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:6}})]});let W=_I(e.quickActions,N,I),G=dI(e.sections).filter(e=>e&&gI(e,N,I)),ee=dI(e.footer??(a?[{key:`full`,label:`Open full details`,onClick:()=>a()}]:[])).filter(e=>e&&$(e.key)).map(e=>e.moduleActions&&typeof e.moduleActions==`object`?gI(e,N,I)?{key:String(e.key),moduleActions:e.moduleActions}:null:_I([e],N,I)[0]??null).filter(Boolean),te=e.stickyFooter===!0,ne=te?{padding:`16px 16px 0`,minHeight:`100%`,boxSizing:`border-box`}:{padding:16},re=te?{position:`sticky`,bottom:0,zIndex:2,marginTop:`auto`,padding:`12px 0 16px`,background:`var(--ant-color-bg-container, #fff)`,borderTop:`1px solid var(--ant-color-split, rgba(5, 5, 5, 0.06))`}:void 0;return(0,p.jsxs)(d.Flex,{vertical:!0,gap:14,style:O?{...ne,position:`relative`}:ne,"aria-label":H,"aria-busy":A||void 0,role:`region`,children:[V,U,e.identity&&(0,p.jsx)(YI,{spec:e.identity,data:N,ctx:I}),(0,p.jsx)(XI,{buttons:W,fb:F}),m.error&&M&&(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`Some details could not be loaded.`}),!M&&(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:4},title:!1}),M&&G.map((e,t)=>(0,p.jsxs)(`div`,{children:[t>0&&(0,p.jsx)(d.Divider,{style:{margin:`0 0 12px`}}),(0,p.jsx)(ZI,{section:e,data:N,ctx:I,fb:F})]},e.key??t)),ee.length>0&&(0,p.jsx)(d.Flex,{gap:8,className:te?`cc-qv-footer cc-qv-footer--sticky`:`cc-qv-footer`,style:B?{...re??{},minHeight:`var(--ant-control-height, 32px)`,boxSizing:`content-box`}:re,children:ee.map(t=>t.moduleActions?(0,p.jsx)(BI,{spec:t.moduleActions,data:N,ctx:I,style:{flex:1},feedback:jI(e)},t.key):(0,p.jsx)(`div`,{style:{flex:1},children:(0,p.jsx)(qI,{button:t,block:!0,fb:F})},t.key))})]})}function eL({config:e,refreshKey:t=0}){let r=(0,h.useNavigate)(),i=(0,h.useLocation)(),a=e??{},o=a.module,s=vI(a.layout),c=a.strictPermissions===!0?{strict:!0,aliases:a.permissionAliases}:void 0,{canView:l,canAdd:f,canEdit:m,canDelete:g}=n.Rt(o,c),_=Vc(),[v,y]=(0,u.useState)(0),b=()=>y(e=>e+1),x=a.realtime?typeof a.realtime==`object`?a.realtime:{}:null,S=cI({topics:x?(typeof x.topics==`function`?dI(x.topics({module:o})):[$(o)?zF(o):``]).filter($):[],enabled:!!x,debounceMs:x?.debounceMs??600}),C=t+v+S.tick,w=dI(a.refreshEvents).filter($).join(`|`);(0,u.useEffect)(()=>{if(!w||typeof window>`u`)return;let e=w.split(`|`),t=()=>y(e=>e+1);return e.forEach(e=>window.addEventListener(e,t)),()=>e.forEach(e=>window.removeEventListener(e,t))},[w]);let T={module:o,navigate:r,location:i,refresh:b,can:{view:l,add:f,edit:m,delete:g},adminActionsVersion:_},E=_I(a.buttons,{record:null},T),D=typeof a.fullView==`function`?a.fullView:null,O=(e,t)=>{D&&r(D(t))},k=yI(a.quickView,o),A=({module:e,id:t,record:n,onClose:r,onOpenFull:i})=>k?(0,p.jsx)($I,{config:k,module:e,id:t,record:n,onClose:r,onOpenFull:D?i:void 0,refreshKey:C,extraCtx:{can:T.can,...a.context??{}}},`${e}:${t}`):null;if(!$(o))return null;let j={presentation:{title:a.title},...wI(a.columns)??{},...a.listProps??{}},M=$(a.title)||dI(a.breadcrumb).length||E.length;return(0,p.jsxs)(d.Flex,{vertical:!0,gap:12,children:[M?(0,p.jsxs)(d.Flex,{justify:`space-between`,align:`center`,gap:12,wrap:!0,children:[(0,p.jsxs)(d.Flex,{vertical:!0,gap:4,children:[dI(a.breadcrumb).length>0&&(0,p.jsx)(n.Dt,{items:a.breadcrumb}),$(a.title)&&(0,p.jsx)(d.Typography.Title,{level:4,style:{margin:0},children:a.title})]}),E.length>0&&(0,p.jsx)(d.Flex,{gap:8,wrap:!0,children:E.map(e=>{let t=(0,p.jsx)(d.Button,{type:e.type??`primary`,className:e.className,icon:e.icon,danger:e.danger,disabled:e.disabled||!e.onClick,onClick:e.onClick,children:e.label},e.key);return e.tooltip?(0,p.jsx)(d.Tooltip,{title:e.tooltip,children:t},e.key):t})})]}):null,typeof a.top==`function`?a.top(T):a.top??null,(0,p.jsx)(DF,{active:!0,unscoped:!0,fetchData:typeof a.fetch==`function`?a.fetch:null,keepFetchResponse:a.fetchKeepsRows===!0,recordLinks:a.recordLinks===`navigate`||a.quickView===!1?`navigate`:`inPlace`,openInPlace:a.quickView!==!1,module:o,relation:a.scope??{},title:a.title,showRail:s.showRail,railMode:s.railMode,railWidth:s.filterWidth,quickViewMode:s.quickViewMode,quickViewWidth:s.quickViewWidth,listComponent:a.list,listProps:j,renderQuickView:A,onOpenRecord:D?O:void 0,refreshKey:C,keepPageInUrl:a.keepPageInUrl===!0})]})}function tL({tabs:e=[],parentId:t,title:n=`Overview`,refreshKey:r=0}){let[i,a]=(0,h.useSearchParams)(),{counts:o,loading:s}=wF(e,t,r),c=e=>{let t=new URLSearchParams(i);t.set(`tab`,e),t.delete(`sub`),a(t,{replace:!0})};return(0,p.jsx)(`section`,{className:`rh-overview`,"aria-label":n,children:e.map(e=>{let t=o[e.key];return(0,p.jsxs)(`button`,{type:`button`,className:`rh-overview__card`,onClick:()=>c(e.key),children:[(0,p.jsx)(`span`,{className:`rh-overview__label`,children:e.label}),(0,p.jsx)(`strong`,{className:`rh-overview__value`,children:s&&t===void 0?`…`:t==null?`–`:t.toLocaleString()}),(0,p.jsx)(`span`,{className:`rh-overview__open`,children:`Open`})]},e.key)})})}var nL=(0,u.createContext)(null);function rL(){return(0,u.useContext)(nL)}var iL=[];function aL({moduleName:e,id:t,header:n,breadcrumb:r=null,headerActions:i=null,headerEndSlot:a=null,banner:o=null,onClose:s,tabs:l=iL,stats:m=iL,defaultTab:g,maxVisibleTabs:_=12,alwaysShowMore:v=!1,moreEmptyLabel:y=`No more sections`,listComponent:b,listPropsFor:x,renderQuickView:S,onOpenRecord:C,refreshKey:w=0,railMode:T,quickViewMode:E,railWidth:D,quickViewWidth:O,className:k=``,selectedParam:A=``,listCacheMs:j=0,preloadTabs:M=!1,preloadDelayMs:N=1200}){let[P,F]=(0,h.useSearchParams)(),I=i??a,L=l.map(e=>e.key),R=P.get(`tab`),z=g&&L.includes(g)?g:L[0],B=R&&L.includes(R)?R:z,V=e=>{if(!e||e===B)return;let t=new URLSearchParams(P);t.set(`tab`,e),[...t.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>t.delete(e)),t.delete(`sub`),A&&t.delete(A),F(t,{replace:!0})},H=(0,u.useMemo)(()=>l.filter(e=>e.module&&e.relation),[l]),{counts:U,loading:W}=wF(m,t,w),G=m.map(e=>({key:e.key,label:e.label,value:U[e.key],active:!!e.tab&&B===e.tab,onClick:e.tab?()=>V(e.tab):void 0})),ee=l.slice(0,_),te=l.slice(_),ne=te.some(e=>e.key===B),re=te.length?te.map(e=>({key:e.key,label:e.label})):[{key:`__none`,label:y,disabled:!0}],ie=(0,u.useMemo)(()=>({listComponent:b,listPropsFor:x,renderQuickView:S,onOpenRecord:C,refreshKey:w,relatedTabs:H,railMode:T,quickViewMode:E,activeTab:B}),[b,x,S,C,w,H,T,E,B]),ae=e=>({tabKey:e.key,module:e.module,relation:e.relation,parentId:t,title:e.label,showRail:e.rail!==!1,railMode:e.railMode??T,quickViewMode:e.quickViewMode??E,...e.railWidth??D?{railWidth:e.railWidth??D}:{},...e.quickViewWidth??O?{quickViewWidth:e.quickViewWidth??O}:{},listComponent:e.listComponent??b,listProps:x?.(e.module,e)??e.listProps,renderQuickView:S,onOpenRecord:C,refreshKey:w,cacheMs:e.cacheMs??j,...typeof e.fetch==`function`?{fetchData:e.fetch}:{},...e.recordLinks?{recordLinks:e.recordLinks}:{},...e.access&&typeof e.access==`object`&&e.access.module?{accessModule:String(e.access.module)}:{}}),oe=(0,u.useMemo)(()=>M?H.filter(e=>!e.component&&typeof e.render!=`function`&&(e.cacheMs??j)>0):[],[M,H,j]),[se,ce]=(0,u.useState)({id:t,ready:!1,done:[]});se.id!==t&&ce({id:t,ready:!1,done:[]}),(0,u.useEffect)(()=>{if(!oe.length)return;let e=null,n=()=>ce(e=>e.id===t?{...e,ready:!0}:e),r=setTimeout(()=>{typeof window<`u`&&typeof window.requestIdleCallback==`function`?e=window.requestIdleCallback(n,{timeout:1500}):n()},N);return()=>{clearTimeout(r),e!==null&&typeof window<`u`&&window.cancelIdleCallback?.(e)}},[oe.length,N,t]);let K=(0,u.useCallback)(e=>{ce(t=>t.done.includes(e)?t:{...t,done:[...t.done,e]})},[]),le=se.ready&&se.id===t?oe.find(e=>e.key!==B&&!se.done.includes(e.key))??null:null,ue=l.find(e=>e.key===B)??null,de=null,fe=typeof ue?.view==`function`?ue.view({id:t,moduleName:e,refreshKey:w,searchParams:P}):null;if(fe!=null&&fe!==!1)de=fe;else if(typeof ue?.render==`function`)de=ue.render({id:t,moduleName:e,refreshKey:w});else if(ue?.component){let n=ue.component;de=(0,p.jsx)(n,{id:t,moduleName:e,refreshKey:w})}else ue?.type===`overview`?de=(0,p.jsx)(tL,{tabs:H,parentId:t,title:ue.label,refreshKey:w}):ue?.module&&(de=(0,p.jsx)(DF,{active:!0,...ae(ue),...A?{selectedParam:A}:{}},ue.key));return(0,p.jsx)(nL.Provider,{value:ie,children:(0,p.jsxs)(`div`,{className:`rh-hub ${k}`.trim(),"data-module":e,children:[(r||s)&&(0,p.jsxs)(`div`,{className:`rh-hub__crumbs`,children:[(0,p.jsx)(`div`,{className:`rh-hub__crumbs-trail`,children:r}),s&&(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),onClick:s,"aria-label":`Close`})]}),o,(0,p.jsxs)(`div`,{className:`rh-hub__head`,children:[(0,p.jsx)(`div`,{className:`rh-hub__title`,children:n??(0,p.jsx)(ns,{moduleName:e,id:t,refreshKey:w,hideActions:!0})}),(m.length>0||I)&&(0,p.jsxs)(`div`,{className:`rh-hub__aside`,children:[m.length>0&&(0,p.jsx)(c.i,{items:G,loading:W,ariaLabel:`Summary`,className:`rh-hub__stats`}),I&&(0,p.jsx)(`div`,{className:`rh-hub__actions`,children:I})]})]}),(0,p.jsxs)(`nav`,{className:`rh-tabs`,role:`tablist`,"aria-label":`Sections`,children:[ee.map(e=>(0,p.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e.key===B,className:`rh-tabs__item${e.key===B?` is-active`:``}`,onClick:()=>V(e.key),children:e.label},e.key)),(te.length>0||v)&&(0,p.jsx)(d.Dropdown,{trigger:[`click`],menu:{items:re,onClick:({key:e})=>V(e)},children:(0,p.jsxs)(`button`,{type:`button`,className:`rh-tabs__item rh-tabs__more${ne?` is-active`:``}`,children:[ne?l.find(e=>e.key===B)?.label:`More`,` `,(0,p.jsx)(f.DownOutlined,{})]})})]}),(0,p.jsxs)(`section`,{className:`rh-hub__body`,role:`tabpanel`,"aria-label":ue?.label,children:[de,le&&(0,p.jsx)(DF,{preload:!0,onPreloaded:K,...ae(le)},`preload:${le.key}`)]})]})})}var oL=[];function sL({tab:e,moduleName:t,id:n,refreshKey:r,onOpenTab:i=null}){let a=(0,u.useRef)(null),o=JSON.stringify(e.groups??null),[s]=(0,u.useState)(()=>TI(JSON.parse(o))),c=typeof e.decorate==`function`?e.decorate:null;(0,u.useEffect)(()=>{let e=a.current;if(!e||!c)return;let r=!1,i=()=>{if(!r){r=!0;try{c(e,{id:n,moduleName:t})}finally{r=!1}}};i();let o=new MutationObserver(()=>{o.disconnect(),i(),o.observe(e,{childList:!0,subtree:!0})});return o.observe(e,{childList:!0,subtree:!0}),()=>o.disconnect()},[c,n,t]);let l=null;return typeof e.empty==`function`?l=e.empty({id:n,moduleName:t}):typeof e.empty==`string`?l=(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:e.empty}):e.empty&&(l=e.empty),(0,p.jsx)(`div`,{ref:a,className:`rh-details`,"data-tab":e.key,children:(0,p.jsx)(Xi,{moduleName:t,id:n,refreshKey:r,groupFilter:s,emptyContent:l,onOpenTab:i})})}var cL=15e3,lL=4e3;function uL(e){let t={};return[`closeQuickView`,`highlight`,`ownWithinMs`].forEach(n=>{e&&e[n]!==void 0&&(t[n]=e[n])}),t}function dL({config:e,id:t,refreshKey:r=0}){let i=(0,h.useNavigate)(),a=(0,h.useLocation)(),[o,s]=(0,h.useSearchParams)(),c=e=>{e&&s(t=>{let n=new URLSearchParams(t);return n.set(`tab`,e),n.delete(`sub`),n.delete(`qv`),[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),n},{replace:!0})},l=e??{},f=l.module,m=vI(l.layout),g=l.strictPermissions===!0?{strict:!0,aliases:l.permissionAliases}:void 0,{canView:_,canAdd:v,canEdit:y,canDelete:b}=n.Rt(f,g),x=Vc(),S=l.tabAccess===`view`,C=n.zt(g),[w,T]=(0,u.useState)(0),[E,D]=(0,u.useState)(null),O=()=>T(e=>e+1),k=dI(l.refreshEvents).filter($).join(`|`);(0,u.useEffect)(()=>{if(!k||typeof window>`u`)return;let e=k.split(`|`),t=()=>T(e=>e+1);return e.forEach(e=>window.addEventListener(e,t)),()=>e.forEach(e=>window.removeEventListener(e,t))},[k]);let A={id:t,module:f,navigate:i,location:a,refresh:O,can:{view:_,add:v,edit:y,delete:b},adminActionsVersion:x},j={record:E},M=l.header?.onHeaderData,N=e=>{D(e??null),M?.(e)},P=_I(l.header?.moreActions,j,A).map(e=>({key:e.key,label:e.label,danger:e.danger,disabled:e.disabled,onClick:e.onClick})),F=_I(l.header?.buttons,j,A),I=F.length?(0,p.jsx)(p.Fragment,{children:F.map(e=>{let t=(0,p.jsx)(d.Button,{type:e.type??`primary`,className:e.className,icon:e.icon,danger:e.danger,disabled:e.disabled||!e.onClick,onClick:e.onClick,children:e.label},e.key);return e.tooltip?(0,p.jsx)(d.Tooltip,{title:e.tooltip,children:t},e.key):t})}):null,L=(S?DI(xI(l.tabs),C):xI(l.tabs)).map(e=>e.type===`details`?{...e,render:t=>(0,p.jsx)(sL,{tab:e,moduleName:t.moduleName,id:t.id,refreshKey:t.refreshKey,onOpenTab:c},e.key)}:Number(e.quickView?.width)>0?{...e,quickViewWidth:Number(e.quickView.width)}:e),R=l.fullView??null,z=l.quickView??null,B=o.get(`tab`),V=L.find(e=>e.key===B)??L.find(e=>e.key===l.defaultTab)??L[0]??null,H=typeof l.follow==`function`?l.follow:null,U=H?`qv`:``,W=U&&o.get(U)||``,G=l.realtime?typeof l.realtime==`object`?l.realtime:{}:null,ee=G?(typeof G.topics==`function`?dI(G.topics({id:t,module:f,tab:V?.key??``,openRecordId:W})):[BF(f,t),V?.module?zF(V.module):``,V?.module&&W?BF(V.module,W):``]).filter($):[],te=cI({topics:ee,enabled:!!G,debounceMs:G?.debounceMs??600}),ne=!!G?.highlight;oI(ee,e=>{let t=e?.id??e?.recordId;if(!t||!e?.module||/deleted/i.test(String(e?.type??``)))return;let r=L.find(t=>t.module&&RF(t.module)===RF(e.module));n.st(r?.module??e.module,t)},{enabled:!!G&&ne});let re=r+w+te.tick,ie=(e,t,n)=>{let r=R?.[e],a=typeof r==`function`?r(t,n??null):null;a&&i(a)},ae=H&&l.followThen&&typeof l.followThen==`object`?l.followThen:null,oe=(e,t)=>({presentation:{title:t.label},actionContext:{tab:t.label??``},...ae?.highlight?{highlightNew:!0}:{},...ne?{highlightUpdates:!0}:{},...wI(t.columns??l.columns?.[e])??{},...(typeof t.listProps==`function`?t.listProps({...A,tab:t,tabModule:e}):t.listProps)??{}}),se=({module:e,id:n,record:r,onClose:i,onOpenFull:a})=>{let o=(V?.module===e&&V?.quickView&&typeof V.quickView==`object`?V.quickView:null)??yI(z,e);return o?(0,p.jsx)($I,{config:o,module:e,id:n,record:r,onClose:i,onOpenFull:typeof R?.[e]==`function`?a:void 0,refreshKey:re,extraCtx:{parentId:t,parentModule:f,parent:E,tab:V?.key,tabLabel:V?.label??``,can:A.can}},`${V?.key??``}:${e}:${n}`):null},ce=ae?.highlight&&$(W)&&$(V?.module)?`${V.module}|${W}`:``;(0,u.useEffect)(()=>{if(!ce)return;let e=ce.indexOf(`|`);n.at(ce.slice(0,e),ce.slice(e+1))},[ce]);let K=`${w}|${te.tick}`,le=(0,u.useRef)(K),ue=(0,u.useRef)(null);(0,u.useEffect)(()=>{ue.current={follow:H,followThen:ae,openRecordId:W,activeTab:V,tabs:L,searchParams:o,setSearchParams:s,ctx:A}});let de=(0,u.useRef)(null),fe=(0,u.useRef)({sig:``,at:0}),pe=(0,u.useRef)(!0);(0,u.useEffect)(()=>(pe.current=!0,()=>{pe.current=!1}),[]);let me=()=>{try{return!!window.history.state?.usr?.background}catch{return!1}};if((0,u.useEffect)(()=>{le.current!==K&&(le.current=K,de.current={at:Date.now(),covered:me()});let e=de.current;if(!e)return;if(Date.now()-e.at>cL){de.current=null;return}if(me()){e.covered=!0;return}let t=ue.current;if(e.covered&&!t.openRecordId||(de.current=null,!t.follow||!t.openRecordId||!t.activeTab?.module))return;let r=t.searchParams.get(`sub`)||t.activeTab.relation?.subTabs?.[0]?.key||``;Promise.resolve(t.follow({module:t.activeTab.module,id:t.openRecordId,tab:t.activeTab.key,sub:r},t.ctx)).then(e=>{if(!pe.current||!e||!$(e.tab))return;let i=t.tabs.find(t=>t.key===e.tab);if(!i)return;let a=$(e.sub)?e.sub:``,o=`${t.openRecordId}|${i.key}|${a}`;if(fe.current.sig===o&&Date.now()-fe.current.at<lL)return;fe.current={sig:o,at:Date.now()};let s=i.relation?.subTabs?.[0]?.key||``;if(i.key===t.activeTab.key&&(a||s)===r)return;let c={...t.followThen??{},...uL(e)},l=!!t.followThen&&n.it(t.openRecordId,Number(c.ownWithinMs)>0?Number(c.ownWithinMs):void 0),u=l&&c.closeQuickView===!0;l&&c.highlight===!0&&n.ot(i.module??t.activeTab.module,$(e.id)?e.id:t.openRecordId),t.setSearchParams(e=>{let n=new URLSearchParams(e);return n.set(`tab`,i.key),a?n.set(`sub`,a):n.delete(`sub`),[...n.keys()].filter(e=>/^p\d+$/.test(e)).forEach(e=>n.delete(e)),u?n.delete(`qv`):n.set(`qv`,t.openRecordId),n},{replace:!0});let f=a?i.relation?.subTabs?.find(e=>e.key===a)?.label:``;d.message.info({key:`cc-detail-follow-moved`,content:$(e.notice)?e.notice:`Moved to ${i.label}${f?` › ${f}`:``}`})}).catch(()=>{})},[K,a]),!$(f)||!$(t))return null;let he=dI(l.breadcrumb).length?(0,p.jsx)(n.Dt,{items:l.breadcrumb}):null;return(0,p.jsx)(aL,{moduleName:f,id:t,breadcrumb:he,header:(0,p.jsx)(ns,{moduleName:f,id:t,onHeaderData:N,refreshKey:re,actionsInMore:l.header?.actionsInMore!==!1,moreActionsExtra:P.length?P:oL,actionsExtra:I}),tabs:L,stats:S?kI(l.stats??oL,L,C):l.stats??oL,defaultTab:l.defaultTab,maxVisibleTabs:l.maxVisibleTabs??12,alwaysShowMore:l.alwaysShowMore??!0,railMode:m.railMode,quickViewMode:m.quickViewMode,railWidth:m.filterWidth,quickViewWidth:m.quickViewWidth,listPropsFor:oe,renderQuickView:se,onOpenRecord:ie,refreshKey:re,listCacheMs:Number(l.listCacheMs)>0?Number(l.listCacheMs):0,preloadTabs:l.preloadTabs===!0,className:l.className??``,...U?{selectedParam:U}:{}})}function fL(e,t=new Date){let n=new Date(t);n.setHours(0,0,0,0),e===`week`&&n.setDate(n.getDate()-(n.getDay()+6)%7),e===`month`&&n.setDate(1);let r=new Date(t);return r.setHours(23,59,59,999),{key:e||`today`,from:n,to:r,fromIso:n.toISOString(),toIso:r.toISOString()}}var pL=new Intl.NumberFormat,mL=e=>e==null||!Number.isFinite(Number(e))?`–`:pL.format(Number(e));function hL(e,t,n,r=3){return dI(e).filter(e=>e?.attention&&Number.isFinite(t?.[e.key])).map(e=>({kpi:e,n:t[e.key]})).filter(({kpi:e,n:t})=>typeof e.attention.when==`function`?e.attention.when(t):t>0).sort((e,t)=>t.n-e.n).slice(0,r).map(({kpi:e,n:t})=>({key:e.key,n:t,text:typeof e.attention.text==`function`?e.attention.text(t,n):hI(mI(e.attention.text,{},n))||hI(mI(e.label,{},n)),to:typeof e.to==`function`?e.to(n):e.to}))}var gL=e=>String(e).padStart(2,`0`),_L=e=>`${e.getFullYear()}-${gL(e.getMonth()+1)}-${gL(e.getDate())}`;function vL(e,t=new Date){let n={today:14,week:28,month:90}[e]??14,r=new Date(t);r.setHours(0,0,0,0),r.setDate(r.getDate()-(n-1));let i=new Date(t);return i.setHours(23,59,59,999),{key:`last${n}`,days:n,from:r,to:i,fromIso:r.toISOString(),toIso:i.toISOString()}}function yL(e,t,n=e=>e.count){let r=new Map(dI(e).map(e=>[String(e.key),Number(n(e))||0])),i=[],a=new Date(t.from);for(let e=0;e<t.days;e+=1){let e=_L(a);i.push({key:e,value:r.get(e)??0,label:a.toLocaleDateString([],{day:`numeric`,month:`short`}),short:a.toLocaleDateString([],{day:`numeric`,month:`short`})}),a.setDate(a.getDate()+1)}return i}function bL(e,{labels:t,pick:n=e=>e.count,order:r}={}){let i=e=>e===`__other`?`Other`:e===``?`Not set`:typeof t==`function`?t(e)??e:t?.[e]??e,a=dI(e).map(e=>({key:String(e.key),label:String(i(String(e.key))),value:Number(n(e))||0}));if(Array.isArray(r)){let e=e=>{let t=r.indexOf(e);return t<0?r.length:t};a=a.sort((t,n)=>e(t.key)-e(n.key))}return a}function xL(e){let t=dI(e).map(Number).filter(Number.isFinite);if(t.length<2)return null;let n=Math.floor(t.length/2),r=t.slice(0,n).reduce((e,t)=>e+t,0),i=t.slice(t.length-n).reduce((e,t)=>e+t,0);return r===0?i===0?0:null:Math.round((i-r)/r*100)}var SL=new Intl.NumberFormat(void 0,{notation:`compact`,maximumFractionDigits:1}),CL=e=>e==null||!Number.isFinite(Number(e))?`–`:SL.format(Number(e)),wL=[`#4f6bed`,`#13a8a8`,`#f59f00`,`#e8590c`,`#7048e8`,`#2b8a3e`,`#d6336c`,`#868e96`],TL=e=>`var(--cc-dash-c${e%8+1}, ${wL[e%8]})`,EL=e=>e.reduce((e,t)=>e+(Number(t.value)||0),0);function DL({items:e,onSelect:t,format:n=mL,centerLabel:r=`Total`}){let[i,a]=(0,u.useState)(-1),o=EL(e),s=2*Math.PI*52,c=0,l=i>=0?e[i]:null;return(0,p.jsxs)(`div`,{className:`cc-chart cc-chart--donut`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:20},children:[(0,p.jsxs)(`svg`,{viewBox:`0 0 140 140`,width:`148`,height:`148`,role:`img`,"aria-label":e.map(e=>`${e.label} ${n(e.value)}`).join(`, `),style:{flex:`none`},children:[(0,p.jsx)(`circle`,{cx:`70`,cy:`70`,r:52,fill:`none`,stroke:`var(--cc-dash-track, #eef1f5)`,strokeWidth:`18`}),o>0&&e.map((e,r)=>{let l=Math.max(Number(e.value)||0,0)/o*s,u=(0,p.jsx)(`circle`,{cx:`70`,cy:`70`,r:52,fill:`none`,stroke:TL(r),strokeWidth:i===r?22:18,strokeDasharray:`${Math.max(l-1.5,0)} ${s}`,strokeDashoffset:-c,transform:`rotate(-90 70 70)`,style:{cursor:t?`pointer`:`default`,transition:`stroke-width 150ms ease`},onMouseEnter:()=>a(r),onMouseLeave:()=>a(-1),onClick:()=>t?.(e),children:(0,p.jsx)(`title`,{children:`${e.label}: ${n(e.value)}`})},e.key);return c+=l,u}),(0,p.jsx)(`text`,{x:`70`,y:`68`,textAnchor:`middle`,className:`cc-chart__center-value`,style:{fontSize:20,fontWeight:700,fill:`currentColor`},children:n(l?l.value:o)}),(0,p.jsx)(`text`,{x:`70`,y:`86`,textAnchor:`middle`,className:`cc-chart__center-label`,style:{fontSize:10,fill:`currentColor`,opacity:.65},children:(l?l.label:r).slice(0,18)})]}),(0,p.jsx)(`ul`,{className:`cc-chart__legend`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:6,flex:`1 1 160px`,minWidth:0},children:e.map((e,r)=>(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__legend-item`,disabled:!t,onClick:()=>t?.(e),onMouseEnter:()=>a(r),onMouseLeave:()=>a(-1),style:{display:`flex`,alignItems:`center`,gap:8,width:`100%`,padding:`2px 0`,font:`inherit`,background:`none`,border:0,textAlign:`start`,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{width:10,height:10,borderRadius:3,background:TL(r),flex:`none`}}),(0,p.jsx)(`span`,{className:`cc-chart__legend-label`,style:{flex:1,minWidth:0,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label}),(0,p.jsx)(`span`,{className:`cc-chart__legend-value`,style:{fontVariantNumeric:`tabular-nums`,fontWeight:600},children:n(e.value)}),(0,p.jsx)(`span`,{className:`cc-chart__legend-share`,style:{width:40,textAlign:`end`,opacity:.6,fontVariantNumeric:`tabular-nums`},children:o>0?`${Math.round(e.value/o*100)}%`:``})]})},e.key))})]})}function OL({items:e,onSelect:t,format:n=mL}){let r=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`ul`,{className:`cc-chart cc-chart--bar`,role:`list`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:10},children:e.map((e,i)=>(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__bar-row`,disabled:!t,onClick:()=>t?.(e),"aria-label":`${e.label}: ${n(e.value)}`,style:{display:`grid`,gridTemplateColumns:`minmax(80px, 34%) 1fr auto`,alignItems:`center`,gap:10,width:`100%`,padding:0,font:`inherit`,background:`none`,border:0,textAlign:`start`,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{className:`cc-chart__bar-label`,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label}),(0,p.jsx)(`span`,{className:`cc-chart__bar-track`,style:{height:10,borderRadius:5,background:`var(--cc-dash-track, #eef1f5)`,overflow:`hidden`},children:(0,p.jsx)(`span`,{className:`cc-chart__bar-fill`,style:{display:`block`,height:`100%`,width:`${(Number(e.value)||0)/r*100}%`,minWidth:e.value>0?4:0,borderRadius:5,background:TL(i),transition:`width 400ms ease`}})}),(0,p.jsx)(`span`,{className:`cc-chart__bar-value`,style:{fontVariantNumeric:`tabular-nums`,fontWeight:600},children:n(e.value)})]})},e.key))})}var kL=e=>e.map(([e,t],n)=>`${n?`L`:`M`}${e.toFixed(1)},${t.toFixed(1)}`).join(` `);function AL({items:e,height:t=180,format:n=mL,color:r=TL(0)}){let[i,a]=(0,u.useState)(-1),o=(0,u.useRef)(null),[s,c]=(0,u.useState)(600);(0,u.useEffect)(()=>{let e=o.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(([e])=>{let t=Math.round(e.contentRect.width);t>0&&c(t)});return t.observe(e),()=>t.disconnect()},[]);let l=t,d={l:36,r:8,t:12,b:22},f=Math.max(1,...e.map(e=>Number(e.value)||0)),m=f<=4?f:Math.ceil(f/4)*4,h=t=>d.l+(e.length>1?t/(e.length-1)*(s-d.l-d.r):(s-d.l-d.r)/2),g=e=>d.t+(1-(Number(e)||0)/m)*(l-d.t-d.b),_=e.map((e,t)=>[h(t),g(e.value)]),v=_.length?`${kL(_)} L${h(e.length-1)},${l-d.b} L${h(0)},${l-d.b} Z`:``,y=[0,.5,1].map(e=>Math.round(m*e)),b=Math.max(1,Math.ceil(e.length/Math.max(2,Math.floor(s/80)))),x=EL(e),S=i>=0?e[i]:null,C=`cc-area-${String(e[0]?.key??`x`).replace(/[^\w-]/g,``)}-${e.length}`;return(0,p.jsxs)(`div`,{ref:o,className:`cc-chart cc-chart--area`,style:{position:`relative`},children:[(0,p.jsxs)(`svg`,{viewBox:`0 0 ${s} ${l}`,width:`100%`,height:l,role:`img`,"aria-label":`Trend, ${e.length} points, total ${n(x)}, peak ${n(f)}`,onMouseLeave:()=>a(-1),onMouseMove:t=>{let n=t.currentTarget.getBoundingClientRect(),r=(t.clientX-n.left)/n.width*s,i=Math.round((r-d.l)/(s-d.l-d.r)*(e.length-1));a(Math.min(e.length-1,Math.max(0,i)))},children:[(0,p.jsx)(`defs`,{children:(0,p.jsxs)(`linearGradient`,{id:C,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,p.jsx)(`stop`,{offset:`0%`,stopColor:r,stopOpacity:`0.28`}),(0,p.jsx)(`stop`,{offset:`100%`,stopColor:r,stopOpacity:`0.02`})]})}),y.map(e=>(0,p.jsxs)(`g`,{children:[(0,p.jsx)(`line`,{x1:d.l,x2:s-d.r,y1:g(e),y2:g(e),stroke:`var(--cc-dash-grid, #e9edf2)`,strokeDasharray:e?`3 4`:``,vectorEffect:`non-scaling-stroke`}),(0,p.jsx)(`text`,{x:d.l-6,y:g(e)+3,textAnchor:`end`,style:{fontSize:10,fill:`currentColor`,opacity:.55},children:n(e)})]},e)),v?(0,p.jsx)(`path`,{d:v,fill:`url(#${C})`}):null,_.length?(0,p.jsx)(`path`,{d:kL(_),fill:`none`,stroke:r,strokeWidth:`2.25`,strokeLinejoin:`round`,vectorEffect:`non-scaling-stroke`}):null,e.map((t,n)=>(n%b===0&&e.length-1-n>=b/2||n===e.length-1)&&(0,p.jsx)(`text`,{x:h(n),y:l-6,textAnchor:n===0?`start`:n===e.length-1?`end`:`middle`,style:{fontSize:10,fill:`currentColor`,opacity:.55},children:t.short??t.label},t.key)),S?(0,p.jsxs)(`g`,{children:[(0,p.jsx)(`line`,{x1:h(i),x2:h(i),y1:d.t,y2:l-d.b,stroke:r,strokeOpacity:`0.35`,vectorEffect:`non-scaling-stroke`}),(0,p.jsx)(`circle`,{cx:h(i),cy:g(S.value),r:`4`,fill:`var(--cc-dash-surface, #fff)`,stroke:r,strokeWidth:`2`,vectorEffect:`non-scaling-stroke`})]}):null]}),S?(0,p.jsxs)(`div`,{className:`cc-chart__tip`,role:`status`,style:{position:`absolute`,top:0,left:`${h(i)/s*100}%`,transform:`translateX(${i>e.length/2?`-105%`:`5%`})`,pointerEvents:`none`,padding:`4px 8px`,borderRadius:6,fontSize:12,whiteSpace:`nowrap`,background:`var(--cc-dash-tip, rgba(23,32,44,.92))`,color:`#fff`},children:[S.label,`: `,(0,p.jsx)(`strong`,{children:n(S.value)})]}):null]})}function jL({items:e,height:t=180,format:n=mL,onSelect:r}){let i=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`div`,{className:`cc-chart cc-chart--column`,role:`list`,style:{display:`flex`,alignItems:`flex-end`,gap:8,height:t,paddingTop:18},children:e.map((e,t)=>(0,p.jsxs)(`button`,{type:`button`,role:`listitem`,disabled:!r,onClick:()=>r?.(e),"aria-label":`${e.label}: ${n(e.value)}`,style:{flex:1,minWidth:0,height:`100%`,display:`flex`,flexDirection:`column`,justifyContent:`flex-end`,alignItems:`center`,gap:4,padding:0,font:`inherit`,background:`none`,border:0,cursor:r?`pointer`:`default`,color:`inherit`},children:[(0,p.jsx)(`span`,{className:`cc-chart__col-value`,style:{fontSize:12,fontWeight:600,fontVariantNumeric:`tabular-nums`},children:n(e.value)}),(0,p.jsx)(`span`,{className:`cc-chart__col`,style:{width:`70%`,maxWidth:44,height:`${(Number(e.value)||0)/i*100}%`,minHeight:e.value>0?3:1,borderRadius:`6px 6px 2px 2px`,background:TL(t),transition:`height 400ms ease`}}),(0,p.jsx)(`span`,{className:`cc-chart__col-label`,style:{fontSize:11,opacity:.7,maxWidth:`100%`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`},children:e.label})]},e.key))})}function ML({items:e,onSelect:t,format:n=mL}){let r=Math.max(1,...e.map(e=>Number(e.value)||0));return(0,p.jsx)(`ol`,{className:`cc-chart cc-chart--funnel`,style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:14},children:e.map((i,a)=>{let o=Number(i.value),s=a>0?Number(e[a-1].value):null,c=s>0&&Number.isFinite(o)?Math.round(o/s*100):null,l=c!==null&&c<=100?c:null,u=Number.isFinite(o)&&o>0?Math.max(2,o/r*100):0;return(0,p.jsx)(`li`,{children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-chart__funnel-row`,disabled:!t,onClick:()=>t?.(i),"aria-label":`${i.label}: ${n(i.value)}${l===null?``:`, ${l}% of ${e[a-1].label}`}`,style:{display:`grid`,gap:6,width:`100%`,padding:0,font:`inherit`,textAlign:`start`,background:`none`,border:0,cursor:t?`pointer`:`default`,color:`inherit`},children:[(0,p.jsxs)(`span`,{className:`cc-chart__funnel-head`,style:{display:`flex`,alignItems:`baseline`,gap:8,minWidth:0},children:[(0,p.jsx)(`span`,{className:`cc-chart__funnel-dot`,"aria-hidden":`true`,style:{flex:`none`,width:8,height:8,borderRadius:`50%`,background:TL(a),alignSelf:`center`}}),(0,p.jsx)(`span`,{className:`cc-chart__funnel-label`,style:{flex:1,minWidth:0,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,fontWeight:500},children:i.label}),l===null?null:(0,p.jsxs)(`span`,{className:`cc-chart__funnel-conv`,style:{fontSize:12,opacity:.65,whiteSpace:`nowrap`,fontVariantNumeric:`tabular-nums`},children:[l,`% of `,e[a-1].label]}),(0,p.jsx)(`strong`,{className:`cc-chart__funnel-value`,style:{fontVariantNumeric:`tabular-nums`,minWidth:48,textAlign:`end`},children:n(i.value)})]}),(0,p.jsx)(`span`,{className:`cc-chart__funnel-track`,"aria-hidden":`true`,style:{display:`block`,height:10,borderRadius:999,background:`rgba(127,127,127,0.14)`,overflow:`hidden`},children:(0,p.jsx)(`span`,{className:`cc-chart__funnel-bar`,style:{display:`block`,width:`${u}%`,height:`100%`,borderRadius:999,background:TL(a),transition:`width 400ms cubic-bezier(0.2, 0, 0, 1)`}})})]})},i.key)})})}function NL({values:e,color:t=TL(0),width:n=72,height:r=26}){if(!e?.length)return null;let i=Math.max(1,...e),a=e.map((t,a)=>[e.length>1?a/(e.length-1)*n:n/2,r-2-t/i*(r-4)]);return(0,p.jsxs)(`svg`,{className:`cc-chart cc-chart--spark`,width:n,height:r,viewBox:`0 0 ${n} ${r}`,"aria-hidden":`true`,style:{display:`block`,overflow:`visible`},children:[(0,p.jsx)(`path`,{d:`${kL(a)} L${n},${r} L0,${r} Z`,fill:t,fillOpacity:`0.12`}),(0,p.jsx)(`path`,{d:kL(a),fill:`none`,stroke:t,strokeWidth:`1.75`,strokeLinejoin:`round`,strokeLinecap:`round`})]})}var PL=[{key:`today`,label:`Today`},{key:`week`,label:`Week`,title:`This week (from Monday)`},{key:`month`,label:`Month`,title:`This month`}],FL={today:`Today`,week:`This week`,month:`This month`},IL=(e,t)=>(typeof e==`function`?e(t):e)??{},LL=(e,t,n)=>typeof e==`function`?e(n??t,t):e,RL=(()=>{try{return Intl.DateTimeFormat().resolvedOptions().timeZone||``}catch{return``}})();function zL(e,t){let r=e?JSON.stringify([e,t]):``,[i,a]=(0,u.useState)({signature:``,groups:null,error:``}),[o,s]=(0,u.useState)(0);return(0,u.useEffect)(()=>{if(!e)return;let t=!0,{module:i,relation:o={},groupBy:s,groupDate:c,sum:l}=e,u=typeof o.scope==`string`?o.scope:``;return n.Qt(i,1,0,{scopeConditions:nF(o),...u?{scope:u}:{},queryParams:{...o.queryParams??{},groupBy:s,groupDate:c||``,groupTz:c?RL:``,groupSum:l||``}}).then(e=>{if(!t)return;let n=e?.data?.groups??e?.groups;a({signature:r,groups:n?.applied?dI(n.items):null,error:n?``:`unsupported`})}).catch(e=>{t&&a({signature:r,groups:null,error:e?.status===403?`forbidden`:`error`})}),()=>{t=!1}},[r,o]),{...i,loading:!!e&&i.signature!==r,retry:()=>s(e=>e+1)}}var BL=e=>typeof e==`function`?e:e===`compact`?CL:mL;function VL({panel:e,counts:t,kpis:n,loading:r,ctx:i,refreshKey:a}){let o=Array.isArray(e.stages),s=e.chart===`area`,c=vL(i.range.key),l=s?{...i,range:c}:i,u=o||!$(e.module)||!$(e.groupBy)?null:{module:e.module,relation:IL(e.relation,l),groupBy:e.groupBy,groupDate:s?`day`:e.groupDate,sum:e.sum,range:l.range.key},f=zL(u,a),m=BL(e.format),h=e.sum?e=>e.sum:e=>e.count,g=typeof e.to==`function`?t=>i.navigate(e.to(t,i)):$(e.to)?()=>i.navigate(e.to):void 0;if(o){if(r)return(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:3}});let a=dI(e.stages).map(e=>{let r=n.find(t=>t.key===e.kpi);return r?{key:e.kpi,label:hI(mI(e.label??r.label,{},i)),value:t[e.kpi],to:LL(r.to,i)}:null}).filter(Boolean),o=e=>i.navigate(e.to);return e.chart===`donut`?(0,p.jsx)(DL,{items:a,format:m,onSelect:o}):e.chart===`column`?(0,p.jsx)(jL,{items:a,format:m,onSelect:o}):e.chart===`bar`?(0,p.jsx)(OL,{items:a,format:m,onSelect:o}):(0,p.jsx)(ML,{items:a,format:m,onSelect:o})}if(!u)return(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`This chart needs a module and a groupBy field.`});if(f.loading)return(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:4}});if(f.error===`forbidden`)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:`You don't have access to this data.`});if(f.error===`error`)return(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`This chart could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,onClick:f.retry,children:`Retry`})});if(!f.groups)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:f.error===`unsupported`?`Chart data is not available from the server yet.`:`This field cannot be charted for your list.`});if(s){let e=yL(f.groups,c,h),t=e.reduce((e,t)=>e+t.value,0);return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`div`,{className:`cc-dash-chart__summary`,style:{display:`flex`,alignItems:`baseline`,gap:8,marginBottom:8},children:[(0,p.jsx)(`span`,{className:`cc-dash-chart__total`,style:{fontSize:22,fontWeight:700},children:m(t)}),(0,p.jsxs)(`span`,{className:`cc-dash-chart__window`,style:{opacity:.65},children:[`in the last `,c.days,` days`]})]}),(0,p.jsx)(AL,{items:e,format:m})]})}let _=bL(f.groups,{labels:e.labels,pick:h,order:e.order});return!_.length||_.every(e=>!e.value)?(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:hI(mI(e.empty,{},i))||`No data for this period.`}):e.chart===`donut`?(0,p.jsx)(DL,{items:_,format:m,onSelect:g}):e.chart===`column`?(0,p.jsx)(jL,{items:_,format:m,onSelect:g}):(0,p.jsx)(OL,{items:_.slice(0,Number(e.max)||8),format:m,onSelect:g})}function HL({kpi:e,ctx:t,refreshKey:n}){let r=vL(`week`),i={...t,range:r},a=zL({module:e.module,relation:IL(e.relation,i),groupBy:e.trend.field||`createdAt`,groupDate:`day`,range:`trend`},n);if(a.loading||!a.groups)return null;let o=yL(a.groups,r).map(e=>e.value),s=xL(o),c=s>0,l=s===null||s===0?`flat`:(e.trend.goodWhen===`down`?!c:c)?`good`:`bad`;return(0,p.jsxs)(`span`,{className:`cc-dash-kpi__trend`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`flex-end`,justifyContent:`space-between`,gap:4,width:`100%`,minWidth:0},children:[(0,p.jsxs)(`span`,{className:`cc-dash-kpi__delta is-${l}`,style:{fontSize:12,fontWeight:600,whiteSpace:`nowrap`},children:[s===null?`New`:(0,p.jsxs)(p.Fragment,{children:[c?(0,p.jsx)(f.ArrowUpOutlined,{}):s<0?(0,p.jsx)(f.ArrowDownOutlined,{}):null,` `,Math.abs(s),`%`]}),(0,p.jsx)(`span`,{className:`cc-dash-kpi__delta-note`,style:{fontWeight:400,opacity:.65},children:` vs prior 2 wks`})]}),(0,p.jsx)(NL,{values:o})]})}function UL(){return(0,p.jsxs)(`svg`,{className:`cc-dash-hero__art`,viewBox:`0 0 320 160`,"aria-hidden":`true`,focusable:`false`,style:{position:`absolute`,right:0,bottom:0,width:320,height:160,pointerEvents:`none`},children:[(0,p.jsx)(`circle`,{cx:`270`,cy:`30`,r:`90`,fill:`currentColor`,opacity:`0.06`}),(0,p.jsx)(`circle`,{cx:`300`,cy:`150`,r:`60`,fill:`currentColor`,opacity:`0.06`}),[[150,100],[180,76],[210,88],[240,52],[270,64],[300,30]].map(([e,t])=>(0,p.jsx)(`rect`,{x:e,y:t,width:`18`,height:160-t,rx:`5`,fill:`currentColor`,opacity:`0.1`},e)),(0,p.jsx)(`path`,{d:`M140 108 L189 80 L219 92 L249 56 L279 68 L309 34`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeLinejoin:`round`,opacity:`0.35`}),(0,p.jsx)(`circle`,{cx:`309`,cy:`34`,r:`5`,fill:`currentColor`,opacity:`0.5`})]})}function WL(e,t,n){let r=e.filter(e=>typeof e.count==`function`),i=JSON.stringify([r.map(e=>e.key),t.range.key,n]),[a,o]=(0,u.useState)({signature:``,counts:{}});return(0,u.useEffect)(()=>{if(!r.length)return;let e=!0;return Promise.allSettled(r.map(e=>e.count(t))).then(t=>{if(!e)return;let n={};t.forEach((e,t)=>{let i=e.status===`fulfilled`?Number(e.value):NaN;n[r[t].key]=Number.isFinite(i)?i:null}),o({signature:i,counts:n})}),()=>{e=!1}},[i]),{counts:a.counts,loading:r.length>0&&a.signature!==i}}function GL({kpi:e,value:t,loading:n,ctx:r,refreshKey:i}){let a=hI(mI(e.label,{},r)),o=hI(mI(e.help,{},r)),s=LL(e.to,r),c=(0,p.jsxs)(p.Fragment,{children:[(0,p.jsxs)(`span`,{className:`cc-dash-kpi__label`,children:[a,o?(0,p.jsx)(d.Tooltip,{title:o,children:(0,p.jsx)(f.InfoCircleOutlined,{className:`cc-dash-kpi__help`,"aria-label":`About ${a}`,onClick:e=>e.stopPropagation()})}):null]}),n?(0,p.jsx)(d.Skeleton.Button,{active:!0,size:`small`,style:{width:56}}):(0,p.jsx)(`span`,{className:`cc-dash-kpi__value`,children:mL(t)}),r.rangeLabel?(0,p.jsx)(`span`,{className:`cc-dash-kpi__period`,style:{fontSize:12,opacity:.65},children:(e.period?e.period===`range`:typeof e.relation==`function`)?r.rangeLabel:`Right now`}):null,e.trend&&$(e.module)?(0,p.jsx)(HL,{kpi:e,ctx:r,refreshKey:i}):null]}),l={display:`flex`,flexDirection:`column`,gap:8,alignItems:`flex-start`,textAlign:`start`,minWidth:0,width:`100%`};return $(s)?(0,p.jsx)(`button`,{type:`button`,className:`cc-dash-kpi is-link`,style:{...l,cursor:`pointer`,font:`inherit`,background:`none`,border:0,padding:0},onClick:()=>r.navigate(s),"aria-label":`${a}: ${mL(t)}. Open the list`,children:c}):(0,p.jsx)(`div`,{className:`cc-dash-kpi`,style:l,children:c})}function KL({panel:e,counts:t,kpis:n,loading:r,ctx:i}){let a=dI(e.stages).map(e=>({...e,kpiDef:n.find(t=>t.key===e.kpi)})).filter(e=>e.kpiDef),o=a.map(e=>t[e.kpi]).filter(e=>Number.isFinite(e)).reduce((e,t)=>e+t,0);return r?(0,p.jsx)(d.Skeleton,{active:!0,paragraph:{rows:2}}):(0,p.jsxs)(`div`,{className:`cc-dash-stages`,children:[(0,p.jsx)(`div`,{className:`cc-dash-stages__bar`,role:`img`,"aria-label":a.map(e=>`${hI(mI(e.label??e.kpiDef.label,{},i))} ${mL(t[e.kpi])}`).join(`, `),style:{display:`flex`,height:10,borderRadius:5,overflow:`hidden`,gap:2},children:a.map((e,n)=>{let r=t[e.kpi];return(0,p.jsx)(`span`,{className:`cc-dash-stages__seg`,"data-i":n,style:{flex:o>0&&Number.isFinite(r)?Math.max(r,0):1,minWidth:Number.isFinite(r)&&r>0?6:2}},e.kpi)})}),(0,p.jsx)(`ol`,{className:`cc-dash-stages__list`,style:{listStyle:`none`,margin:`16px 0 0`,padding:0,display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(120px, 1fr))`,gap:12},children:a.map((e,n)=>{let r=hI(mI(e.label??e.kpiDef.label,{},i)),a=LL(e.kpiDef.to,i);return(0,p.jsx)(`li`,{className:`cc-dash-stages__item`,"data-i":n,children:(0,p.jsxs)(d.Button,{type:`text`,className:`cc-dash-stages__btn`,disabled:!$(a),onClick:()=>i.navigate(a),style:{height:`auto`,padding:4,display:`flex`,flexDirection:`column`,alignItems:`flex-start`},children:[(0,p.jsx)(`span`,{className:`cc-dash-stages__value`,children:mL(t[e.kpi])}),(0,p.jsx)(`span`,{className:`cc-dash-stages__label`,children:r})]})},e.kpi)})})]})}function qL({panel:e,ctx:t,refreshKey:r}){let i=IL(e.relation,t),a=JSON.stringify([e.module,i,e.limit,t.range.key,r]),[o,s]=(0,u.useState)({signature:``,rows:[],total:0,error:``}),[c,l]=(0,u.useState)(0);if((0,u.useEffect)(()=>{let t=!0,r=typeof i.scope==`string`?i.scope:``;return n.Qt(e.module,Number(e.limit)||5,0,{scopeConditions:nF(i),...r?{scope:r}:{},...i.queryParams?{queryParams:i.queryParams}:{},...i.sort?{sort:i.sort,sortDir:i.sortDir||`desc`}:{}}).then(r=>{if(!t)return;let i=n.Ot(r,e.module);s({signature:a,rows:dI(i?.rows),total:Number(i?.total)||0,error:``})}).catch(e=>{t&&s({signature:a,rows:[],total:0,error:e?.status===403?`forbidden`:e?.message||`error`})}),()=>{t=!1}},[a,c]),o.signature!==a)return(0,p.jsx)(d.Skeleton,{active:!0,title:!1,paragraph:{rows:4}});if(o.error===`forbidden`)return(0,p.jsx)(d.Typography.Text,{type:`secondary`,children:`You don't have access to this list.`});if(o.error)return(0,p.jsx)(d.Alert,{type:`warning`,showIcon:!0,message:`This list could not be loaded.`,action:(0,p.jsx)(d.Button,{size:`small`,onClick:()=>l(e=>e+1),children:`Retry`})});if(!o.rows.length)return(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:hI(mI(e.empty,{},t))||`Nothing here right now.`});let m=LL(e.viewAll,t);return(0,p.jsxs)(p.Fragment,{children:[(0,p.jsx)(`ul`,{className:`cc-dash-list`,style:{listStyle:`none`,margin:0,padding:0},children:o.rows.map((n,r)=>{let i=hI(pI(e.row?.title,n,t))||`—`,a=hI(pI(e.row?.meta,n,t)),o=hI(pI(e.row?.status,n,t)),s=LL(e.to,t,n);return(0,p.jsx)(`li`,{className:`cc-dash-list__row`,children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-dash-list__btn`,disabled:!$(s),onClick:()=>t.navigate(s),style:{display:`flex`,width:`100%`,alignItems:`center`,justifyContent:`space-between`,gap:12,minHeight:44,padding:`8px 0`,font:`inherit`,textAlign:`start`,background:`none`,border:0,cursor:$(s)?`pointer`:`default`},children:[(0,p.jsxs)(`span`,{style:{minWidth:0,display:`flex`,flexDirection:`column`},children:[(0,p.jsx)(`span`,{className:`cc-dash-list__title`,children:i}),a?(0,p.jsx)(`span`,{className:`cc-dash-list__meta`,children:a}):null]}),o?(0,p.jsx)(d.Tag,{className:`cc-dash-list__status`,style:{marginInlineEnd:0},children:o}):null]})},n?._id??n?.id??r)})}),$(m)?(0,p.jsxs)(d.Button,{type:`link`,className:`cc-dash-viewall`,onClick:()=>t.navigate(m),style:{paddingInline:0},children:[`View all `,o.total>o.rows.length?`(${mL(o.total)})`:``,` `,(0,p.jsx)(f.ArrowRightOutlined,{})]}):null]})}function JL({panel:e,ctx:t}){let n=dI(e.items).filter(e=>e&&$(e.key)&&gI(e,{},t));return(0,p.jsx)(`div`,{className:`cc-dash-links`,style:{display:`grid`,gridTemplateColumns:`repeat(auto-fill, minmax(140px, 1fr))`,gap:8},children:n.map(e=>{let n=uI(e.icon),r=LL(e.to,t);return(0,p.jsx)(d.Button,{className:`cc-dash-link`,onClick:()=>t.navigate(r),disabled:!$(r),style:{height:`auto`,minHeight:44,justifyContent:`flex-start`,whiteSpace:`normal`,textAlign:`start`},icon:n,children:(0,p.jsxs)(`span`,{children:[hI(mI(e.label,{},t)),e.note?(0,p.jsx)(`small`,{className:`cc-dash-link__note`,style:{display:`block`},children:hI(mI(e.note,{},t))}):null]})},e.key)})})}function YL({panel:e,...t}){let n=hI(mI(e.title,{},t.ctx)),r;switch(e.type){case`stages`:r=(0,p.jsx)(KL,{panel:e,...t});break;case`list`:r=(0,p.jsx)(qL,{panel:e,ctx:t.ctx,refreshKey:t.refreshKey});break;case`links`:r=(0,p.jsx)(JL,{panel:e,ctx:t.ctx});break;case`chart`:r=(0,p.jsx)(VL,{panel:e,...t});break;case`custom`:r=typeof e.render==`function`?e.render(t.ctx):null;break;default:r=(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`Unknown panel type "${String(e.type)}"`})}return(0,p.jsxs)(`section`,{className:`cc-dash-panel${e.span===2?` is-wide`:``}`,"data-panel":e.key,"data-chart":e.chart,"aria-label":n||void 0,style:{minWidth:0},children:[n?(0,p.jsx)(d.Typography.Title,{level:5,className:`cc-dash-panel__title`,style:{marginTop:0},children:n}):null,r]})}function XL({config:e,refreshKey:t=0}){let n=(0,h.useNavigate)(),r=(0,h.useLocation)();Vc();let i=dI(e?.ranges).length?dI(e.ranges):PL,[a,o]=(0,u.useState)(e?.defaultRange||i[0].key),[s,c]=(0,u.useState)(0),[l,m]=(0,u.useState)(()=>new Date),g=`${t}|${s}`,_={...e?.context??{},navigate:e=>$(e)&&n(e),location:r,range:fL(a),rangeLabel:i.length>1?FL[a]??hI(mI(i.find(e=>e.key===a)?.label,{},{})):``,refresh:()=>{c(e=>e+1),m(new Date)}},v=dI(e?.kpis).filter(e=>e&&$(e.key)&&gI(e,{},_)),y=wF(v.filter(e=>typeof e.count!=`function`&&$(e.module)).map(e=>({key:e.key,module:e.module,relation:IL(e.relation,_),unscoped:!0})),``,g,{cacheMs:3e4}),b=WL(v,_,g),x={...y.counts,...b.counts},S=y.loading||b.loading,C=S?[]:hL(v,x,_),w=dI(e?.panels).filter(e=>e&&$(e.key)&&gI(e,{},_)),T=w.filter(e=>e.area===`grid`),E=w.filter(e=>e.area!==`side`&&e.area!==`grid`),D=w.filter(e=>e.area===`side`),O=_I(e?.buttons,{},_),k=hI(mI(e?.title,{},_))||`Dashboard`,A=hI(mI(e?.greeting,{},_)),j=hI(mI(e?.subtitle,{},_)),M={counts:x,kpis:v,loading:S,ctx:_,refreshKey:g},N=hI(mI(e?.user?.name,{},_)).split(/\s+/).filter(Boolean).slice(0,2).map(e=>e[0].toUpperCase()).join(``),P=hI(mI(e?.user?.role,{},_)),F=new Date().toLocaleDateString([],{weekday:`long`,day:`numeric`,month:`long`,year:`numeric`}),I=dI(e?.links).filter(e=>e&&$(e.key)&&gI(e,{},_));return(0,p.jsxs)(`div`,{className:`cc-dash`,"data-profile":e?.key,children:[(0,p.jsxs)(`header`,{className:`cc-dash-hero`,style:{position:`relative`,overflow:`hidden`,display:`grid`,gap:16},children:[(0,p.jsx)(UL,{}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__top`,style:{position:`relative`,display:`flex`,flexWrap:`wrap`,alignItems:`flex-start`,justifyContent:`space-between`,gap:16},children:[(0,p.jsxs)(`div`,{className:`cc-dash-hero__who`,style:{display:`flex`,alignItems:`center`,gap:16,minWidth:0,flex:`1 1 320px`},children:[N?(0,p.jsx)(`span`,{className:`cc-dash-hero__avatar`,"aria-hidden":`true`,style:{flex:`none`,display:`grid`,placeItems:`center`,width:56,height:56,borderRadius:`50%`,fontWeight:700,fontSize:20},children:N}):null,(0,p.jsxs)(`div`,{style:{minWidth:0},children:[(0,p.jsx)(`div`,{className:`cc-dash-hero__eyebrow`,children:[F,P].filter(Boolean).join(` · `)}),(0,p.jsx)(d.Typography.Title,{level:2,className:`cc-dash-hero__title`,style:{margin:0},children:A||k}),j?(0,p.jsx)(`div`,{className:`cc-dash-hero__sub`,children:j}):null]})]}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__tools`,style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:8},children:[i.length>1?(0,p.jsx)(d.Segmented,{className:`cc-dash-range`,value:a,onChange:e=>{o(e),m(new Date)},options:i.map(e=>({value:e.key,label:e.label,title:e.title??e.label}))}):null,(0,p.jsx)(d.Tooltip,{title:`Refresh the numbers`,children:(0,p.jsx)(d.Button,{className:`cc-dash-refresh`,icon:(0,p.jsx)(f.ReloadOutlined,{}),onClick:_.refresh,"aria-label":`Refresh`})}),O.map(e=>(0,p.jsx)(d.Button,{type:e.type,className:e.className,danger:e.danger,disabled:e.disabled,icon:e.icon,onClick:e.onClick,children:e.label},e.key))]})]}),(0,p.jsxs)(`div`,{className:`cc-dash-hero__bottom`,style:{position:`relative`,display:`flex`,flexWrap:`wrap`,alignItems:`center`,justifyContent:`space-between`,gap:12},children:[(0,p.jsxs)(`div`,{className:`cc-dash-hero__chips`,style:{display:`flex`,flexWrap:`wrap`,gap:8},"aria-live":`polite`,children:[v.some(e=>e.attention)&&!S?(0,p.jsxs)(`span`,{className:`cc-dash-hero__chip ${C.length?`is-warn`:`is-ok`}`,children:[C.length?(0,p.jsx)(f.WarningOutlined,{"aria-hidden":`true`}):(0,p.jsx)(f.CheckCircleOutlined,{"aria-hidden":`true`}),C.length?` ${C.length} ${C.length===1?`thing needs`:`things need`} your attention`:` All caught up`]}):null,(0,p.jsxs)(`span`,{className:`cc-dash-hero__chip`,title:`When these numbers were last loaded. Press refresh to load them again.`,children:[(0,p.jsx)(f.ClockCircleOutlined,{"aria-hidden":`true`}),` Updated `,l.toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`})]})]}),I.length?(0,p.jsx)(`nav`,{className:`cc-dash-hero__links`,"aria-label":`Quick links`,style:{display:`flex`,flexWrap:`wrap`,gap:8},children:I.map(e=>(0,p.jsx)(d.Button,{className:`cc-dash-hero__link`,icon:uI(e.icon),onClick:()=>_.navigate(LL(e.to,_)),children:hI(mI(e.label,{},_))},e.key))}):null]})]}),v.some(e=>e.attention)&&(S||C.length>0)?(0,p.jsx)(`section`,{className:`cc-dash-attention${C.length?``:` is-clear`}`,"aria-label":`Needs attention`,"aria-live":`polite`,children:S?(0,p.jsx)(d.Skeleton.Input,{active:!0,size:`small`,style:{width:240}}):C.length?(0,p.jsx)(`ul`,{style:{listStyle:`none`,margin:0,padding:0,display:`grid`,gap:8,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 260px), 1fr))`},children:C.map(e=>(0,p.jsxs)(`li`,{className:`cc-dash-attention__item`,style:{display:`flex`,alignItems:`center`,gap:12,minWidth:0},children:[(0,p.jsx)(f.WarningOutlined,{className:`cc-dash-attention__icon`,"aria-hidden":`true`}),(0,p.jsx)(`span`,{className:`cc-dash-attention__count`,children:mL(e.n)}),(0,p.jsx)(`span`,{className:`cc-dash-attention__text`,style:{flex:1,minWidth:0},children:e.text}),$(e.to)?(0,p.jsx)(d.Button,{size:`small`,className:`cc-dash-attention__review`,onClick:()=>_.navigate(e.to),children:`Review`}):null]},e.key))}):(0,p.jsxs)(`span`,{className:`cc-dash-attention__clear`,children:[(0,p.jsx)(f.CheckCircleOutlined,{"aria-hidden":`true`}),` All caught up. Nothing needs attention right now.`]})}):null,v.some(e=>e.show!==!1)?(0,p.jsx)(`section`,{className:`cc-dash-kpis`,"aria-label":`Key numbers`,style:{display:`grid`,gap:12,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 150px), 1fr))`},children:v.filter(e=>e.show!==!1).map(e=>(0,p.jsx)(GL,{kpi:e,value:x[e.key],loading:S&&x[e.key]===void 0,ctx:_,refreshKey:g},e.key))}):null,T.length?(0,p.jsx)(`div`,{className:`cc-dash-charts`,style:{display:`grid`,gap:16,gridTemplateColumns:`repeat(auto-fit, minmax(min(100%, 320px), 1fr))`,alignItems:`stretch`},children:T.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}):null,E.length||D.length?(0,p.jsxs)(`div`,{className:`cc-dash-grid${D.length?` has-side`:``}`,style:{display:`grid`,gap:16,gridTemplateColumns:D.length?`repeat(auto-fit, minmax(min(100%, 340px), 1fr))`:`1fr`,alignItems:`start`},children:[(0,p.jsx)(`div`,{className:`cc-dash-main`,style:{display:`grid`,gap:16,minWidth:0},children:E.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}),D.length?(0,p.jsx)(`div`,{className:`cc-dash-side`,style:{display:`grid`,gap:16,minWidth:0},children:D.map(e=>(0,p.jsx)(YL,{panel:e,...M},e.key))}):null]}):null]})}var ZL={...lI,assessment:f.FormOutlined,audit:f.AuditOutlined,book:f.BookOutlined,calendar:f.CalendarOutlined,check:f.CheckCircleOutlined,clipboard:f.SnippetsOutlined,clock:f.ClockCircleOutlined,done:f.FileDoneOutlined,file:f.FileTextOutlined,pdf:f.FilePdfOutlined,read:f.ReadOutlined,team:f.TeamOutlined,users:f.UsergroupAddOutlined,video:f.VideoCameraOutlined,wallet:f.WalletOutlined};function QL(e){if(!e)return null;if(typeof e!=`string`)return e;let t=ZL[e.trim().toLowerCase()];return t?(0,u.createElement)(t):null}var $L=e=>`calc(${e} * var(--cc-ds-u, 1.5px))`,eR=(e,t)=>`max(${t}px, ${$L(e)})`,tR={neutral:[`#5b6475`,`#f1f3f7`],brand:[`var(--ant-color-primary, #1677ff)`,`var(--ant-color-primary-bg, #e6f4ff)`],green:[`#00c26b`,`#e6f9f0`],blue:[`#3b7cf6`,`#eaf1fe`],purple:[`#ab16f4`,`#f7e8fe`],orange:[`#f39a3d`,`#fff2e5`],teal:[`#12b5cb`,`#e6f8fb`],pink:[`#d6338a`,`#fde8f2`],red:[`#e5484d`,`#fdecec`]};Object.keys(tR);function nR(e){let t=tR[e]?e:`neutral`,[n,r]=tR[t];return{fg:`var(--cc-ds-tone-${t}-fg, ${n})`,bg:`var(--cc-ds-tone-${t}-bg, ${r})`}}var rR={ink:`var(--cc-ds-ink, #252744)`,value:`var(--cc-ds-value, #17202c)`,muted:`var(--cc-ds-muted, #8590aa)`,border:`var(--cc-ds-border, #ecedf7)`,surface:`var(--cc-ds-surface, #ffffff)`,link:`var(--cc-ds-link, var(--ant-color-primary, #1677ff))`,track:`var(--cc-ds-track, #eef0f6)`};function iR(e,t){if(typeof e==`number`&&Number.isFinite(e))try{return new Intl.NumberFormat(t).format(e)}catch{return String(e)}return typeof e==`boolean`?e?`Yes`:`No`:hI(e)}function aR(e,t,n,{locale:r,placeholder:i=`–`}={}){let a=iR(pI(e,t,n),r);return $(a)?a:i}function oR(e,t,n){let r=pI(e.items,t,n),i=Array.isArray(r)?r:[],a=e.map&&typeof e.map==`object`?e.map:null,o=Number.isFinite(e.limit)&&e.limit>=0?i.slice(0,e.limit):i;return a?o.map(e=>{if(!e||typeof e!=`object`)return e;let t={...e};return Object.entries(a).forEach(([n,r])=>{t[n]=fI(e,r)}),t}):o}var sR=(e,t)=>iR(e&&typeof e==`object`?e.text??e.label??e.title:e,t),cR=e=>(t,n,r,i)=>!oR(t,n,r).some(t=>t&&typeof t==`object`&&$(iR(t[e],i))),lR=(e,t,n)=>(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n)),uR={text:(e,t,n,r)=>!$(aR(e.value,t,n,{locale:r,placeholder:``})),fields:(e,t,n)=>lR(e,t,n).length===0,stats:(e,t,n)=>lR(e,t,n).length===0,list:(e,t,n,r)=>!oR(e,t,n).some(e=>$(sR(e,r))),tags:(e,t,n,r)=>!oR(e,t,n).some(e=>$(iR(e&&typeof e==`object`?e.label:e,r))),callout:(e,t,n,r)=>!$(mI(e.title,t,n))&&!$(aR(e.text,t,n,{locale:r,placeholder:``})),timeline:cR(`title`),people:cR(`name`),files:cR(`name`),progress:(e,t,n)=>!Number.isFinite(Number(pI(e.percent,t,n)))};function dR(e,t,n,r){return uR[e?.type]?.(e,t,n,r)??!1}var fR=e=>({display:`flex`,flexDirection:`column`,gap:$L(e),minWidth:0}),pR={body:{fontSize:eR(7.16,11),fontWeight:600,lineHeight:1.5,color:rR.muted},label:{fontSize:eR(6.6,11),fontWeight:600,lineHeight:1.5,color:rR.muted},value:{fontSize:eR(6.6,11),fontWeight:400,lineHeight:1.5,color:rR.value},small:{fontSize:eR(5.5,10),fontWeight:600,lineHeight:1.5,color:rR.muted},strong:{fontSize:eR(7.16,11),fontWeight:700,lineHeight:1.5,color:rR.ink},stat:{fontSize:eR(9.36,13),fontWeight:600,lineHeight:1.5,color:rR.ink},sub:{fontSize:eR(6.6,11),fontWeight:600,lineHeight:1.5,color:rR.ink,margin:0}};function mR({icon:e,tone:t,size:n=13}){let r=QL(e);if(!r)return null;let i=nR(t);return(0,p.jsx)(`span`,{className:`cc-details__badge`,"data-tone":t||`neutral`,"aria-hidden":`true`,style:{display:`inline-flex`,alignItems:`center`,justifyContent:`center`,flex:`none`,width:$L(n),height:$L(n),borderRadius:$L(n*.28),background:i.bg,color:i.fg,fontSize:$L(n*.58)},children:r})}function hR({block:e,data:t,ctx:n,locale:r}){let i=aR(e.value,t,n,{locale:r,placeholder:``}),a=Number.isFinite(e.lines)&&e.lines>0?e.lines:0,[o,s]=(0,u.useState)(!1),[c,l]=(0,u.useState)(!1),d=(0,u.useRef)(null);if((0,u.useLayoutEffect)(()=>{let e=d.current;!e||!a||o||l(e.scrollHeight-e.clientHeight>1)},[i,a,o]),!$(i))return null;let m=a&&!o?{display:`-webkit-box`,WebkitLineClamp:a,WebkitBoxOrient:`vertical`,overflow:`hidden`}:{},h=mI(e.more??`Show More`,t,n),g=mI(e.less??`Show Less`,t,n);return(0,p.jsxs)(`div`,{style:fR(3),children:[(0,p.jsx)(`p`,{ref:d,className:`cc-details__text`,style:{...pR.body,margin:0,whiteSpace:`pre-line`,...m},children:i}),a>0&&(c||o)&&$(h)&&(0,p.jsxs)(`button`,{type:`button`,className:`cc-details__more`,"aria-expanded":o,onClick:()=>s(e=>!e),style:{alignSelf:`flex-start`,padding:0,border:0,background:`none`,cursor:`pointer`,color:rR.link,fontSize:eR(6.05,11),fontWeight:600,display:`inline-flex`,alignItems:`center`,gap:$L(2)},children:[o?g:h,o?(0,p.jsx)(f.UpOutlined,{style:{fontSize:$L(4.5)}}):(0,p.jsx)(f.DownOutlined,{style:{fontSize:$L(4.5)}})]})]})}function gR({block:e,data:t,ctx:n,locale:r}){let i=(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n));if(!i.length)return null;let a=Number.isFinite(e.columns)&&e.columns>0?e.columns:1,o=6.6,s=Number.isFinite(e.minPairWidth)?e.minPairWidth:130,c=`calc((100% - ${a-1} * ${$L(o)}) / ${a})`,l=Number.isFinite(e.labelWidth)?$L(e.labelWidth):`minmax(0, 1fr)`;return(0,p.jsx)(`dl`,{className:`cc-details__fields`,style:{display:`grid`,gridTemplateColumns:`repeat(auto-fit, minmax(max(${$L(s)}, ${c}), 1fr))`,columnGap:$L(o),rowGap:$L(2.2),margin:0},children:i.map(e=>(0,p.jsxs)(`div`,{className:`cc-details__field`,style:{display:`grid`,gridTemplateColumns:`${l} minmax(0, 1fr)`,columnGap:$L(4),minWidth:0},children:[(0,p.jsx)(`dt`,{style:{...pR.label,margin:0},children:mI(e.label,t,n)}),(0,p.jsx)(`dd`,{style:{...pR.value,margin:0,overflowWrap:`anywhere`},children:aR(e.value,t,n,{locale:r})})]},e.key??mI(e.label,t,n)))})}function _R({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).map(e=>e&&typeof e==`object`?e:{text:e}),a=e.variant||`bullet`,o=nR(e.tone||(a===`check`?`green`:`neutral`)),s=i.filter(e=>$(iR(e.text??e.label??e.title,r)));return s.length?(0,p.jsx)(`ul`,{className:`cc-details__list cc-details__list--${a}`,style:{...fR(a===`check`?3.3:1.6),listStyle:`none`,margin:0,padding:0},children:s.map((e,t)=>{let n=iR(e.text??e.label??e.title,r),i=iR(e.meta,r);return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`flex-start`,gap:$L(a===`check`?3.3:2.4),...a===`plain`?pR.value:pR.label,color:rR.muted},children:[a===`bullet`&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:`none`,width:$L(1.8),height:$L(1.8),marginTop:$L(3.2),borderRadius:`50%`,background:rR.muted}}),a===`check`&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:`none`,color:o.fg,fontSize:$L(7),lineHeight:1,marginTop:$L(1.2)},children:QL(`check`)}),(0,p.jsxs)(`span`,{style:{minWidth:0},children:[(0,p.jsx)(`span`,{className:`cc-details__item-text`,children:n}),$(i)&&(0,p.jsx)(`span`,{className:`cc-details__item-sep`,style:{margin:`0 ${$L(4)}`},"aria-hidden":`true`,children:`•`}),$(i)&&(0,p.jsx)(`span`,{className:`cc-details__item-meta`,children:i})]})]},`${t}-${n}`)})}):null}function vR({block:e,data:t,ctx:n,locale:r}){let i=mI(e.title,t,n),a=aR(e.text,t,n,{locale:r,placeholder:``});return!$(i)&&!$(a)?null:(0,p.jsxs)(`div`,{className:`cc-details__callout`,style:{display:`flex`,gap:$L(6.6),alignItems:`flex-start`},children:[(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:15.4}),(0,p.jsxs)(`div`,{style:fR(1.1),children:[$(i)&&(0,p.jsx)(`span`,{style:pR.strong,children:i}),$(a)&&(0,p.jsx)(`span`,{style:pR.small,children:a})]})]})}function yR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`);return i.length?(0,p.jsx)(`ol`,{className:`cc-details__timeline`,style:{listStyle:`none`,margin:0,padding:0,display:`flex`,flexDirection:`column`},children:i.map((e,t)=>(0,p.jsxs)(`li`,{style:{display:`flex`,gap:$L(6.6),minHeight:$L(e===i[i.length-1]?13:34.6)},children:[(0,p.jsxs)(`span`,{style:{display:`flex`,flexDirection:`column`,alignItems:`center`,flex:`none`},children:[(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:13.2}),t<i.length-1&&(0,p.jsx)(`span`,{"aria-hidden":`true`,style:{flex:1,width:$L(.55),background:rR.border,margin:`${$L(2)} 0`}})]}),(0,p.jsxs)(`span`,{style:{...fR(.5),paddingTop:$L(.6)},children:[(0,p.jsx)(`span`,{style:pR.strong,children:iR(e.title,r)}),$(iR(e.text,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(e.text,r)})]})]},`${t}-${iR(e.title,r)}`))}):null}function bR({block:e,data:t,ctx:n,locale:r}){let i=(Array.isArray(e.items)?e.items:[]).filter(e=>e&&gI(e,t,n));if(!i.length)return null;let a=e.variant===`tiles`;return(0,p.jsx)(`div`,{className:`cc-details__stats cc-details__stats--${a?`tiles`:`plain`}`,style:{display:`flex`,flexWrap:`wrap`,columnGap:$L(a?13:8.8),rowGap:$L(6.6),justifyContent:`space-between`},children:i.map(e=>{let i=aR(e.value,t,n,{locale:r}),o=e.valueTone?nR(e.valueTone).fg:rR.ink;return(0,p.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:$L(6.6),flex:a?`0 1 auto`:`1 0 auto`},children:[a&&(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:17.6}),(0,p.jsxs)(`span`,{style:fR(0),children:[(0,p.jsx)(`span`,{style:{...pR.stat,color:o,whiteSpace:`nowrap`},children:i}),(0,p.jsx)(`span`,{style:pR.small,children:mI(e.label,t,n)})]})]},e.key??mI(e.label,t,n))})})}function xR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`&&$(iR(e.name,r)));return i.length?(0,p.jsx)(`ul`,{className:`cc-details__people`,style:{...fR(2.2),listStyle:`none`,margin:0,padding:0},children:i.map((e,t)=>{let n=iR(e.name,r);return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`center`,gap:$L(4.4)},children:[(0,p.jsx)(d.Avatar,{src:$(e.avatar)?e.avatar:void 0,alt:``,style:{width:$L(15.4),height:$L(15.4),lineHeight:$L(15.4),fontSize:$L(6),flex:`none`},children:SI(n)}),(0,p.jsxs)(`span`,{style:fR(0),children:[(0,p.jsx)(`span`,{style:{...pR.strong,fontSize:eR(6.6,11)},children:n}),$(iR(e.subtitle,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(e.subtitle,r)})]})]},`${t}-${n}`)})}):null}function SR({block:e,data:t,ctx:n,locale:r}){let i=Number(pI(e.percent,t,n));if(!Number.isFinite(i))return null;let a=Math.max(0,Math.min(100,i)),o=aR(e.caption,t,n,{locale:r,placeholder:``}),s=nR(e.tone||`brand`);return(0,p.jsxs)(`div`,{className:`cc-details__progress`,style:fR(3.3),children:[(0,p.jsx)(`div`,{role:`progressbar`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a,style:{height:$L(2.2),borderRadius:$L(2),background:rR.track,overflow:`hidden`},children:(0,p.jsx)(`div`,{style:{width:`${a}%`,height:`100%`,borderRadius:`inherit`,background:s.fg}})}),$(o)&&(0,p.jsx)(`span`,{style:pR.small,children:o})]})}function CR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).map(e=>e&&typeof e==`object`?e:{label:e}).filter(e=>$(iR(e.label,r)));return i.length?(0,p.jsx)(`div`,{className:`cc-details__tags`,style:{display:`flex`,flexWrap:`wrap`,gap:$L(3.3)},children:i.map((t,n)=>{let i=nR(t.tone||e.tone||`neutral`);return(0,p.jsx)(`span`,{"data-tone":t.tone||e.tone||`neutral`,style:{display:`inline-flex`,alignItems:`center`,padding:`${$L(1.6)} ${$L(4.4)}`,borderRadius:$L(3),background:i.bg,color:e.tone||t.tone?i.fg:rR.muted,fontSize:eR(5.5,10),fontWeight:400,lineHeight:1.5},children:iR(t.label,r)},`${n}-${iR(t.label,r)}`)})}):null}function wR({block:e,data:t,ctx:n,locale:r}){let i=oR(e,t,n).filter(e=>e&&typeof e==`object`&&$(iR(e.name,r)));return i.length?(0,p.jsx)(`ul`,{className:`cc-details__files`,style:{...fR(5.5),listStyle:`none`,margin:0,padding:0},children:i.map((t,n)=>{let i=iR(t.name,r),a=$(t.href)&&/^(https?:|\/|blob:)/i.test(String(t.href))?String(t.href):``;return(0,p.jsxs)(`li`,{style:{display:`flex`,alignItems:`center`,gap:$L(5.5)},children:[(0,p.jsx)(mR,{icon:t.icon||`pdf`,tone:t.tone||e.tone||`pink`,size:13.2}),(0,p.jsxs)(`span`,{style:fR(0),children:[a?(0,p.jsx)(`a`,{href:a,target:`_blank`,rel:`noopener noreferrer`,style:{...pR.strong,fontSize:eR(6.6,11)},children:i}):(0,p.jsx)(`span`,{style:{...pR.strong,fontSize:eR(6.6,11)},children:i}),$(iR(t.meta,r))&&(0,p.jsx)(`span`,{style:pR.small,children:iR(t.meta,r)})]})]},`${n}-${i}`)})}):null}function TR(){return(0,p.jsx)(`hr`,{"aria-hidden":`true`,style:{border:0,borderTop:`0.55px solid ${rR.border}`,margin:`${$L(2)} 0`,width:`100%`}})}function ER({block:e,data:t,ctx:n}){if(typeof e.render!=`function`)return null;try{return e.render(t,n)??null}catch(e){return console.warn(`[DETAILSSECTION] custom block failed:`,e),null}}function DR({block:e,data:t,ctx:n,locale:r,registry:i}){if(!e||!gI(e,t,n))return null;let a=i[e.type];if(!a)return console.warn(`[DETAILSSECTION] unknown block type "${e.type}"`),(0,p.jsxs)(`div`,{role:`alert`,className:`cc-details__unknown`,style:{...pR.small,color:nR(`red`).fg},children:[`Unknown block type “`,String(e.type),`”`]});let o=e.type===`callout`?``:mI(e.title,t,n),s=dR(e,t,n,r),c=mI(e.empty,t,n);return s&&!$(c)?null:(0,p.jsxs)(`div`,{className:`cc-details__block cc-details__block--${e.type}`,style:fR(3.3),children:[$(o)&&(0,p.jsx)(`h4`,{className:`cc-details__subtitle`,style:pR.sub,children:o}),s?(0,p.jsx)(`span`,{className:`cc-details__empty`,style:pR.small,children:c}):(0,p.jsx)(a,{block:e,data:t,ctx:n,locale:r})]})}var OR={text:hR,fields:gR,list:_R,callout:vR,timeline:yR,stats:bR,people:xR,progress:SR,tags:CR,files:wR,divider:TR,custom:ER};function kR(e,t,n,r,i=OR){return!e||!gI(e,t,n)?!1:!i[e.type]||!dR(e,t,n,r)||$(mI(e.empty,t,n))}var AR={gap:6,asideWidth:154,stackBelow:900,wrapBelow:640};function jR(e){let[t,n]=(0,u.useState)(0);return(0,u.useLayoutEffect)(()=>{let t=e.current;if(!t)return;let r=()=>n(t.getBoundingClientRect().width||0);if(r(),typeof ResizeObserver>`u`)return;let i=new ResizeObserver(r);return i.observe(t),()=>i.disconnect()},[e]),t}function MR(e,t,n){if(typeof e.onClick==`function`)return e.onClick(t,n);if($(e.tab)&&typeof n?.openTab==`function`)return n.openTab(String(e.tab));if($(e.href)){let t=String(e.href);if(/^https?:/i.test(t))return window.open(t,`_blank`,`noopener,noreferrer`);if(typeof n?.navigate==`function`)return n.navigate(t)}}function NR({card:e,data:t,ctx:n,locale:r,registry:i,style:a}){let o=mI(e.title,t,n),s=e.action&&gI(e.action,t,n)?e.action:null,c=s?mI(s.label,t,n):``,l=`cc-details-${e.key}`;return(0,p.jsxs)(`section`,{className:`cc-details__card ${e.className??``}`.trim(),"data-card":e.key,"aria-labelledby":$(o)?l:void 0,style:{display:`flex`,flexDirection:`column`,gap:$L(6.6),minWidth:0,boxSizing:`border-box`,padding:$L(8.81),borderRadius:$L(5.5),border:`0.55px solid ${rR.border}`,background:rR.surface,...a},children:[($(o)||$(c))&&(0,p.jsxs)(`header`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,gap:$L(4)},children:[$(o)&&(0,p.jsxs)(`span`,{style:{display:`inline-flex`,alignItems:`center`,gap:$L(5.5),minWidth:0},children:[e.icon?(0,p.jsx)(mR,{icon:e.icon,tone:e.tone,size:Number(e.iconSize)>0?Number(e.iconSize):17.6}):null,(0,p.jsx)(`h3`,{id:l,className:`cc-details__title`,style:{margin:0,fontSize:eR(8.81,12),fontWeight:600,lineHeight:1.5,color:rR.ink},children:o})]}),$(c)&&(0,p.jsxs)(`button`,{type:`button`,className:`cc-details__action`,onClick:()=>MR(s,t,n),style:{marginLeft:`auto`,padding:0,border:0,background:`none`,cursor:`pointer`,color:rR.link,fontSize:eR(6.05,11),fontWeight:400,lineHeight:1.5,whiteSpace:`nowrap`,display:`inline-flex`,alignItems:`center`,gap:$L(3)},children:[s.icon?(0,p.jsx)(`span`,{className:`cc-details__action-icon`,"aria-hidden":`true`,style:{display:`inline-flex`},children:QL(s.icon)}):null,c]})]}),(Array.isArray(e.blocks)?e.blocks:[]).map((e,a)=>(0,p.jsx)(DR,{block:e,data:t,ctx:n,locale:r,registry:i},e?.key??`${e?.type}-${a}`))]})}var PR=(e,t,n,r,i)=>!!e?.key&&gI(e,t,n)&&(Array.isArray(e.blocks)?e.blocks:[]).some(e=>kR(e,t,n,r,i));function FR({config:e,data:t={},ctx:n={},className:r=``}){Vc();let i=(0,u.useRef)(null),a=jR(i),o=e&&typeof e==`object`?e:{},s={...AR,...o.layout??{}},c=o.locale,l={...OR,...o.blocks&&typeof o.blocks==`object`?o.blocks:{}},d=$L(s.gap),f=a>0,m=f&&a<s.stackBelow,h=f&&a<s.wrapBelow,g=(Array.isArray(o.main)?o.main:[]).map(e=>(Array.isArray(e)?e:[e]).filter(e=>PR(e,t,n,c,l))).filter(e=>e.length>0),_=(Array.isArray(o.aside)?o.aside:[]).filter(e=>PR(e,t,n,c,l));if(!g.length&&!_.length)return null;let v=e=>Number.isFinite(e.width)&&e.width>0?e.width:1;return(0,p.jsxs)(`div`,{ref:i,className:`cc-details ${r}`.trim(),role:`region`,"aria-label":mI(o.label,t,n)||void 0,"data-layout":h?`single`:m?`stacked`:`wide`,style:{display:`flex`,flexDirection:m?`column`:`row`,alignItems:`flex-start`,gap:d,width:`100%`,boxSizing:`border-box`,fontFamily:`var(--cc-ds-font, inherit)`},children:[g.length>0&&(0,p.jsx)(`div`,{className:`cc-details__main`,style:{display:`flex`,flexDirection:`column`,gap:d,flex:`1 1 0`,minWidth:0,width:m?`100%`:void 0},children:g.map(e=>(0,p.jsx)(`div`,{className:`cc-details__row`,style:{display:`flex`,flexDirection:h?`column`:`row`,alignItems:`stretch`,gap:d},children:e.map(e=>(0,p.jsx)(NR,{card:e,data:t,ctx:n,locale:c,registry:l,style:{flex:h?`1 1 auto`:`${v(e)} 1 0`}},e.key))},e.map(e=>e.key).join(`|`)))}),_.length>0&&(0,p.jsx)(`aside`,{className:`cc-details__aside`,style:{display:m&&!h?`grid`:`flex`,flexDirection:`column`,gap:d,minWidth:0,gridTemplateColumns:m&&!h?`repeat(${Math.min(_.length,3)}, minmax(0, 1fr))`:void 0,width:m?`100%`:$L(s.asideWidth),flex:`none`,alignItems:m&&!h?`start`:`stretch`},children:_.map(e=>(0,p.jsx)(NR,{card:e,data:t,ctx:n,locale:c,registry:l},e.key))})]})}var IR=`.ant-modal-wrap:not([style*="display: none"]), .ant-drawer-open, .ant-picker-dropdown:not(.ant-picker-dropdown-hidden), .ant-select-dropdown:not(.ant-select-dropdown-hidden), .ant-dropdown:not(.ant-dropdown-hidden)`,LR=`cc-mdw-detail-window-width`,RR=32;function zR(e){try{let t=Number(localStorage.getItem(e));return Number.isFinite(t)&&t>0?t:null}catch{return null}}function BR(e,t){try{localStorage.setItem(e,String(Math.round(t)))}catch{}}function VR({topBar:e=null,rail:t=null,list:n=null,compactList:r=null,detail:i=null,detailOpen:a=!1,detailExpanded:o=!1,detailMode:s=`split`,detailWidth:c,onDetailWidthChange:l,defaultDetailWidth:d=720,minDetailWidth:f=480,maxDetailWidthRatio:m=.75,widthStorageKey:h=LR,railCollapsed:g=!1,railOverlay:_=!1,onCloseRailOverlay:v,onCloseDetail:y,railWidth:b=264,collapsedRailWidth:x=52,compactListWidth:S=340,className:C=``,ariaLabel:w=`Workspace`}){let T=s===`window`,E=(0,u.useRef)(null),D=(0,u.useRef)(null),O=(0,u.useRef)(null),[k,A]=(0,u.useState)(()=>zR(h)??d),j=c??k;(0,u.useEffect)(()=>{if(a){!O.current&&typeof document<`u`&&(O.current=document.activeElement),D.current?.focus({preventScroll:!0});return}let e=O.current;O.current=null,e&&typeof e.focus==`function`&&document.contains(e)&&e.focus({preventScroll:!0})},[a]),(0,u.useEffect)(()=>{if(!a||typeof document>`u`)return;let e=e=>{e.key!==`Escape`||e.defaultPrevented||document.querySelector(IR)||y?.()};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[a,y]);let M=(0,u.useCallback)(e=>{let t=E.current?.getBoundingClientRect().width||0,n=t>0?Math.max(f,t*m):1/0;return Math.round(Math.min(Math.max(e,f),n))},[f,m]),N=(0,u.useCallback)(e=>{let t=M(e);return l&&l(t),c??(A(t),BR(h,t)),t},[M,c,l,h]),P=e=>{if(e.button!==0)return;e.preventDefault();let t=E.current,n=t?.querySelector(`.cc-mdw__body`);if(!t||!n)return;let r=n.getBoundingClientRect().right,i=j,a=e=>{i=M(r-e.clientX-12),t.style.setProperty(`--cc-detail-window-w`,`${i}px`)},o=()=>{window.removeEventListener(`pointermove`,a),window.removeEventListener(`pointerup`,o),t.classList.remove(`cc-mdw--resizing`),N(i)};t.classList.add(`cc-mdw--resizing`),window.addEventListener(`pointermove`,a),window.addEventListener(`pointerup`,o)},F=e=>{e.key===`ArrowLeft`?(e.preventDefault(),N(j+RR)):e.key===`ArrowRight`&&(e.preventDefault(),N(j-RR))},I=a?o?`expanded`:`open`:`closed`,L=T?g:a||g,R=!T&&a&&_,z=!T&&a&&!!r,B={"--cc-rail-w":`${b}px`,"--cc-rail-collapsed-w":`${x}px`,"--cc-compact-list-w":`${S}px`,"--cc-detail-window-w":`${j}px`};return(0,p.jsxs)(`div`,{ref:E,className:[`cc-mdw`,`cc-mdw--${I}`,T?`cc-mdw--window`:`cc-mdw--split`,L?`cc-mdw--rail-collapsed`:``,R?`cc-mdw--rail-overlay`:``,t==null?`cc-mdw--no-rail`:``,C].filter(Boolean).join(` `),style:B,"aria-label":w,children:[e&&(0,p.jsx)(`div`,{className:`cc-mdw__top`,children:e}),(0,p.jsxs)(`div`,{className:`cc-mdw__body`,children:[t!=null&&(0,p.jsx)(`div`,{className:`cc-mdw__rail`,children:t}),R&&(0,p.jsx)(`button`,{type:`button`,className:`cc-mdw__rail-backdrop`,"aria-label":`Close filters`,onClick:v}),(0,p.jsxs)(`div`,{className:`cc-mdw__list`,"aria-hidden":I===`expanded`||void 0,children:[(0,p.jsx)(`div`,{className:`cc-mdw__list-full${z?` is-hidden`:``}`,children:n}),z&&(0,p.jsx)(`div`,{className:`cc-mdw__list-compact`,children:r})]}),(0,p.jsxs)(`section`,{ref:D,className:`cc-mdw__detail`,tabIndex:-1,"aria-hidden":!a||void 0,"aria-label":`Details`,children:[T&&a&&!o&&(0,p.jsx)(`div`,{className:`cc-mdw__resize`,role:`separator`,"aria-orientation":`vertical`,"aria-label":`Resize details`,"aria-valuenow":j,"aria-valuemin":f,tabIndex:0,onPointerDown:P,onKeyDown:F}),a?i:null]})]})]})}function HR({primaryAction:e,menuActions:t=[],onAction:n,size:r=`large`,className:i=``}){if(!e)return null;let a=t.map(e=>({key:e.key,label:e.label,icon:e.icon,disabled:!!e.disabled})),o=(0,p.jsx)(d.Button,{type:`primary`,size:r,icon:e.icon??(0,p.jsx)(f.PlusOutlined,{}),onClick:()=>n?.(e.key),children:e.label});return a.length?(0,p.jsxs)(d.Space.Compact,{className:`cc-create-btn ${i}`.trim(),children:[o,(0,p.jsx)(d.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:a,onClick:({key:e})=>n?.(e)},children:(0,p.jsx)(d.Button,{type:`primary`,size:r,icon:(0,p.jsx)(f.DownOutlined,{}),"aria-label":`More create options`})})]}):(0,p.jsx)(`span`,{className:`cc-create-btn ${i}`.trim(),children:o})}function UR({title:e=null,searchValue:t=``,onSearch:n,searchPlaceholder:r=`Search…`,minChars:i=3,debounceMs:a=350,primaryAction:o=null,menuActions:s=[],onAction:c,extra:l=null,className:m=``,showSearch:h=!0}){let[g,_]=(0,u.useState)(t??``),[v,y]=(0,u.useState)(t??``),b=(0,u.useRef)(t??``),x=(0,u.useRef)(null);(t??``)!==v&&(y(t??``),_(t??``)),(0,u.useEffect)(()=>{b.current=t??``},[t]),(0,u.useEffect)(()=>()=>clearTimeout(x.current),[]);let S=e=>{clearTimeout(x.current),x.current=null;let t=String(e??``).trim(),r=t.length>=i?t:``;t.length>0&&t.length<i||r!==b.current&&(b.current=r,n?.(r))},C=e=>{let t=e.target.value;if(_(t),clearTimeout(x.current),t.trim()===``){S(``);return}x.current=setTimeout(()=>S(t),a)},w=g.trim(),T=w.length>0&&w.length<i;return(0,p.jsxs)(`div`,{className:`cc-topbar ${m}`.trim(),children:[e&&(0,p.jsx)(`div`,{className:`cc-topbar__title`,children:e}),h&&(0,p.jsxs)(`div`,{className:`cc-topbar__search`,children:[(0,p.jsx)(d.Input,{allowClear:!0,size:`large`,prefix:(0,p.jsx)(f.SearchOutlined,{"aria-hidden":!0}),placeholder:r,value:g,onChange:C,onPressEnter:()=>S(g),"aria-label":r,"aria-describedby":T?`cc-topbar-hint`:void 0}),T&&(0,p.jsxs)(`span`,{id:`cc-topbar-hint`,className:`cc-topbar__hint`,children:[`Type at least `,i,` characters`]})]}),(0,p.jsxs)(`div`,{className:`cc-topbar__actions`,children:[l,(0,p.jsx)(HR,{primaryAction:o,menuActions:s,onAction:c})]})]})}function WR(e){return e===!0||e===1||e===`1`||String(e).toLowerCase()===`true`}function GR(e,t){if(!(!e||!t))return Object.prototype.hasOwnProperty.call(e,t)?e[t]:String(t).split(`.`).reduce((e,t)=>e?.[t],e)}function KR(e){return e==null||e===``?``:Array.isArray(e)?e.map(KR).filter(Boolean).join(`, `):typeof e==`object`?KR(e.label??e.value??e.name??e.title??``):String(e)}function qR(e){return e?.field??e?.value??e?.fieldName??e?.key??``}function JR(e){return(Array.isArray(e)?e:[]).filter(e=>qR(e)&&e.isVisible!==!1&&e.isVisible!==0&&e.isVisible!==`0`).slice().sort((e,t)=>Number(e.order??0)-Number(t.order??0))}function YR(e){let t=JR(e),n=t.find(e=>WR(e.isLink))??t[0]??null,r=t.find(e=>String(e.renderType??``).toLowerCase()===`badge`&&e!==n)??null;return{title:n,status:r,meta:t.filter(e=>e!==n&&e!==r).slice(0,2)}}function XR(e){let t=e?._id??e?.id;return t&&typeof t==`object`?String(t.$oid??``):t==null?``:String(t)}function ZR({snapshot:e,loading:t=!1,selectedId:n,onSelect:r,onPage:i,ariaLabel:a=`Records`,emptyText:o=`No records`}){let s=(0,u.useRef)(null),c=e?.rows??[],{title:l,status:m,meta:h}=(0,u.useMemo)(()=>YR(e?.fields),[e?.fields]),g=e?.page??1,_=e?.limit??10,v=e?.total??0,y=Math.max(1,Math.ceil(v/Math.max(1,_)));return(0,p.jsxs)(`div`,{className:`cc-compact-list`,children:[(0,p.jsxs)(`div`,{className:`cc-compact-list__head`,children:[(0,p.jsxs)(`span`,{children:[v.toLocaleString(),` `,v===1?`result`:`results`]}),t&&(0,p.jsx)(d.Spin,{size:`small`})]}),c.length===0?(0,p.jsx)(`div`,{className:`cc-compact-list__empty`,children:t?(0,p.jsx)(d.Spin,{}):(0,p.jsx)(d.Empty,{image:d.Empty.PRESENTED_IMAGE_SIMPLE,description:o})}):(0,p.jsx)(`ul`,{ref:s,className:`cc-compact-list__items`,role:`listbox`,"aria-label":a,onKeyDown:e=>{if(![`ArrowDown`,`ArrowUp`].includes(e.key))return;let t=[...s.current?.querySelectorAll(`[data-record-id]`)??[]],n=t.indexOf(document.activeElement),r=e.key===`ArrowDown`?Math.min(t.length-1,n+1):Math.max(0,n-1);t[r]&&(e.preventDefault(),t[r].focus())},children:c.map((e,t)=>{let i=XR(e),a=KR(GR(e,qR(l)))||`—`,o=m?KR(GR(e,qR(m))):``,s=h.map(t=>KR(GR(e,qR(t)))).filter(Boolean).join(` · `),c=i&&String(i)===String(n??``);return(0,p.jsxs)(`li`,{"data-record-id":i,role:`option`,"aria-selected":c,tabIndex:0,className:`cc-compact-item${c?` is-selected`:``}`,onClick:()=>i&&r?.(i,e),onKeyDown:t=>{(t.key===`Enter`||t.key===` `)&&i&&(t.preventDefault(),r?.(i,e))},children:[(0,p.jsxs)(`div`,{className:`cc-compact-item__row`,children:[(0,p.jsx)(d.Tooltip,{title:a,mouseEnterDelay:.6,children:(0,p.jsx)(`span`,{className:`cc-compact-item__title`,children:a})}),o&&(0,p.jsx)(d.Tag,{className:`cc-compact-item__status`,children:o})]}),s&&(0,p.jsx)(`div`,{className:`cc-compact-item__meta`,children:s})]},i||t)})}),y>1&&(0,p.jsxs)(`div`,{className:`cc-compact-list__pager`,children:[(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.LeftOutlined,{}),disabled:g<=1||t,onClick:()=>i?.(g-1),"aria-label":`Previous page`}),(0,p.jsxs)(`span`,{children:[g,` / `,y]}),(0,p.jsx)(d.Button,{size:`small`,icon:(0,p.jsx)(f.RightOutlined,{}),disabled:g>=y||t,onClick:()=>i?.(g+1),"aria-label":`Next page`})]})]})}var QR=[];function $R({component:e,id:t,moduleName:n,onDescriptionSaved:r,record:i}){return e?(0,p.jsx)(e,{id:t,moduleName:n,onDescriptionSaved:r,record:i}):null}function ez({tabs:e=[],activeKey:t,onChange:n,max:r=11,alwaysShowMore:i=!1,moreEmptyLabel:a=`Nothing more`}){let o=e.length>r?e.slice(0,r):e,s=e.length>r?e.slice(r):QR,c=s.some(e=>e.key===t);return(0,p.jsxs)(`div`,{className:`cc-detail__tabs`,role:`tablist`,"aria-label":`Record sections`,children:[o.map(e=>(0,p.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":e.key===t,className:`cc-detail__tab-btn${e.key===t?` is-active`:``}`,onClick:()=>n(e.key),children:e.label??e.key},e.key)),(s.length>0||i)&&(0,p.jsx)(d.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:s.length?s.map(e=>({key:e.key,label:e.label??e.key})):[{key:`__empty`,label:a,disabled:!0}],selectable:!0,selectedKeys:c?[t]:[],onClick:({key:e})=>n(e)},children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-detail__tab-btn cc-detail__tab-more${c?` is-active`:``}`,"aria-haspopup":`menu`,children:[c?s.find(e=>e.key===t)?.label:`More`,` `,(0,p.jsx)(f.DownOutlined,{})]})})]})}function tz({moduleName:e,id:t,customConfigName:n,breadcrumb:r=null,stats:i=null,toolbarExtra:a=null,banner:o=null,expanded:s=!1,onToggleExpand:c,onClose:l,refreshKey:m=0,showActivity:g=!0,showNotes:v=!0,users:y=[],onHeaderData:b,onRecordLoaded:x,onHeaderAction:S,onTabChange:C,layout:w=`auto`,stackBelow:T=900,headerSlot:E=null,headerEndSlot:D=null,collapseLabel:O=`Show list`,tabsPlacement:k=`header`,maxVisibleTabs:A=11,alwaysShowMore:j=!1,moreEmptyLabel:M,extraTabs:N=QR,defaultTab:P=`details`}){let F=(0,u.useRef)(null),I=E!=null||D!=null,[L,R]=(0,u.useState)(null);(0,u.useEffect)(()=>{let e=F.current;if(!e||!I)return;let t=()=>{let t=e.querySelector(`.znx-dh-actions-col`);R(e=>e===t?e:t)};t();let n=new MutationObserver(t);return n.observe(e,{childList:!0,subtree:!0}),()=>n.disconnect()},[I]);let[z,B]=(0,u.useState)(null);(0,u.useEffect)(()=>{let e=F.current;if(!e||w!==`auto`||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(e=>{let t=e[0]?.contentRect?.width??0;t>0&&B(t<T)});return t.observe(e),()=>t.disconnect()},[w,T]);let V=w===`stacked`||w===`auto`&&z===!0,[H,U]=(0,h.useSearchParams)(),W=H.get(`tab`)||P,G=os(),[ee,te]=(0,u.useState)(0),[ne,re]=(0,u.useState)(null),[ie,ae]=(0,u.useState)(()=>new Set([W]));ie.has(W)||ae(new Set([...ie,W]));let oe=(0,u.useMemo)(()=>Oa(e)?.tabs??QR,[e]),se=(0,u.useMemo)(()=>N.length?[...oe,...N]:oe,[oe,N]),ce=Fn(se,{id:t,moduleName:e,record:ne}),K=e=>e===`details`||!se.some(t=>t.key===e&&typeof t.visibleWhen==`function`)||ce.some(t=>t.key===e),le=t=>N.find(e=>e.key===t)?.component??as(e,t),ue=(e,t)=>{let n=new URLSearchParams(H);n.set(`tab`,e),U(n,{replace:!0}),C?.(e,t)},de=e=>{re(e),x?.(e)},fe=m+G,pe=()=>te(e=>e+1),me=W===`details`||!K(W)||!le(W),he=k===`below`;return(0,p.jsxs)(`div`,{ref:F,className:`cc-detail${V?` cc-detail--stacked`:``}${he?` cc-detail--tabs-below`:``}`,children:[(0,p.jsxs)(`div`,{className:`cc-detail__toolbar`,children:[(0,p.jsx)(`nav`,{className:`cc-detail__crumbs`,"aria-label":`Breadcrumb`,children:r}),(0,p.jsxs)(`div`,{className:`cc-detail__toolbar-right`,children:[i,E&&!L?E:null,D&&!L?D:null,a,c&&(0,p.jsx)(d.Tooltip,{title:s?O:`Expand`,children:(0,p.jsx)(d.Button,{type:`text`,icon:s?(0,p.jsx)(f.CompressOutlined,{}):(0,p.jsx)(f.ExpandOutlined,{}),"aria-label":s?O:`Expand details`,onClick:c})}),l&&(0,p.jsx)(d.Tooltip,{title:`Close (Esc)`,children:(0,p.jsx)(d.Button,{type:`text`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close details`,onClick:l})})]})]}),(0,p.jsxs)(`div`,{className:`cc-detail__scroll`,children:[(0,p.jsx)(ns,{moduleName:e,customConfigName:n,id:t,defaultTab:W,onAction:S,onTabChange:ue,onHeaderData:b,onRecordLoaded:de,refreshKey:fe}),E&&L?(0,_.createPortal)((0,p.jsx)(`div`,{className:`cc-detail__header-slot`,children:E}),L):null,D&&L?(0,_.createPortal)((0,p.jsx)(`div`,{className:`cc-detail__header-end`,children:D}),L):null,he&&ce.length>0&&(0,p.jsx)(ez,{tabs:ce,activeKey:me?`details`:W,onChange:e=>ue(e),max:A,alwaysShowMore:j,moreEmptyLabel:M}),o,(0,p.jsx)(`div`,{className:`cc-detail__tab cc-detail__details v1-detail-page`,hidden:!me,children:(me||ie.has(`details`))&&(0,p.jsxs)(d.Row,{gutter:[16,16],align:`stretch`,className:`v1-detail-row`,children:[(0,p.jsx)(d.Col,{xs:24,xl:V?24:16,className:`v1-detail-col-main`,children:(0,p.jsx)(Xi,{moduleName:e,id:t,refreshKey:ee+fe,onDescriptionSaved:pe})}),(0,p.jsx)(d.Col,{xs:24,xl:V?24:8,className:`v1-detail-col-rail`,children:(0,p.jsx)(ln,{moduleName:e,id:t,users:y,showActivity:g,showNotes:v,refreshKey:fe})})]})}),[...ie].filter(e=>e!==`details`).map(n=>{let r=K(n)?le(n):null;return r?(0,p.jsx)(`div`,{className:`cc-detail__tab`,hidden:n!==W,children:(0,p.jsx)($R,{component:r,id:t,moduleName:e,onDescriptionSaved:pe,record:ne})},n):null})]})]})}function nz({items:e=[]}){return(0,p.jsx)(`ol`,{className:`cc-crumbs`,children:e.map((t,n)=>(0,p.jsxs)(`li`,{className:`cc-crumbs__item`,children:[n>0&&(0,p.jsx)(f.RightOutlined,{className:`cc-crumbs__sep`,"aria-hidden":!0}),t.onClick?(0,p.jsx)(`button`,{type:`button`,className:`cc-crumbs__link`,onClick:t.onClick,children:t.label}):(0,p.jsx)(`span`,{"aria-current":n===e.length-1?`page`:void 0,children:t.label})]},`${t.label}-${n}`))})}function rz(e,t,{max:r=12,refreshKey:i=0}={}){let a=`${e}|${t}|${i}`,[o,s]=(0,u.useState)({key:``,groups:null,error:null});return(0,u.useEffect)(()=>{if(!e||!t)return;let r=!1;return n.Jt({module:e,id:t,view:`detail`}).then(e=>{r||s({key:a,groups:Array.isArray(e)?e:[],error:null})}).catch(e=>{r||s({key:a,groups:null,error:e})}),()=>{r=!0}},[e,t,a]),{fields:(0,u.useMemo)(()=>qP(o.groups,r),[o.groups,r]),loading:o.key!==a,error:o.error}}function iz({open:e,title:t,extra:n=null,footer:r=null,onClose:i,width:a=320,className:o=``,children:s}){let c=(0,u.useRef)(null);return(0,u.useEffect)(()=>{e&&c.current?.focus({preventScroll:!0})},[e]),e?(0,p.jsxs)(`aside`,{ref:c,className:`cc-side-panel ${o}`.trim(),style:{"--cc-side-panel-w":`${a}px`},"aria-label":typeof t==`string`?t:`Quick view`,tabIndex:-1,onKeyDown:e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.stopPropagation(),i?.())},children:[(0,p.jsxs)(`header`,{className:`cc-side-panel__head`,children:[(0,p.jsx)(`span`,{className:`cc-side-panel__title`,children:t}),(0,p.jsxs)(`span`,{className:`cc-side-panel__extra`,children:[n,(0,p.jsx)(d.Button,{type:`text`,size:`small`,icon:(0,p.jsx)(f.CloseOutlined,{}),"aria-label":`Close quick view`,onClick:i})]})]}),(0,p.jsx)(`div`,{className:`cc-side-panel__body`,children:s}),r&&(0,p.jsx)(`footer`,{className:`cc-side-panel__foot`,children:r})]}):null}function az({open:e,moduleName:t,title:n,width:r=760,onClose:a,onCreated:o,formProps:s={}}){return(0,p.jsx)(d.Drawer,{open:e,title:n??`Add`,size:r,placement:`right`,onClose:a,mask:{closable:!1},keyboard:!1,destroyOnHidden:!0,className:`cc-add-drawer`,styles:{body:{paddingTop:8}},children:e&&t&&(0,p.jsx)(i.t,{...s,moduleName:t,embedded:!0,onCancel:a,onSuccess:(e,t)=>{o?.(e,t),a?.()}})})}var oz=`q`,sz=`f`,cz=`view`,lz=`lp`,uz=`full`,dz=[];function fz(e){if(e.get(cz)===uz)return;let t=PP(e);t>1&&e.set(lz,String(t)),[...e.keys()].filter(e=>/^p\d+$/.test(e)).forEach(t=>e.delete(t))}var pz={open:`Live`,connecting:`Connecting…`,reconnecting:`Reconnecting…`,unauthorized:`Live updates paused`,idle:`Live`};function mz(e){return e===`open`?`is-open`:e===`reconnecting`||e===`connecting`?`is-reconnecting`:``}function hz(){try{return Number(localStorage.getItem(`userId`))||0}catch{return 0}}function gz({listModule:e,detailModule:t,detailConfigName:n,title:r,basePath:i,listTabs:a,recordParam:o=`id`,searchPlaceholder:s=`Search…`,searchFields:c,createActions:l,relatedTopics:f=dz,quickViewTitle:m=`Quick View`,quickViewWidth:g=420,renderQuickViewExtra:_,renderQuickView:v,renderFullView:y,renderFullViewStats:b,fullViewBreadcrumbLabel:x=`Details`,listProps:S,topBarInFullView:C=!0,showTopBarSearch:w=!0,openRecordIn:T=`quick`,quickViewMode:E=`docked`,defaultRailCollapsed:D=!1,showRail:O=!0,listComponent:k,actionsInListToolbar:A=!1}){let{tab:j}=(0,h.useParams)(),M=(0,h.useNavigate)(),[N,P]=(0,h.useSearchParams)(),F=Array.isArray(a)&&a.length>0,I=F?a.find(e=>e.toLowerCase()===String(j??``).toLowerCase()):void 0,L=N.get(o)||``,R=T===`full`,z=!!L&&(R||N.get(cz)===uz),B=E===`overlay`,[V,H]=(0,u.useState)(D),U=N.get(oz)||``,W=N.get(sz)||``,G=(0,u.useMemo)(()=>SP(W),[W]),[ee,te]=(0,u.useState)(null),[ne,re]=(0,u.useState)(0),ie=os(),ae=cI({topics:[zF(e)]}),oe=cI({topics:L?[BF(e,L)]:dz,enabled:!!L}),se=cI({topics:L?[...f,BF(e,L)]:dz,enabled:!!L}),ce=iI(),{fetchData:K,loading:le}=MP({filters:G,search:U,refreshTick:ae.tick+ne}),ue=hz(),de=oe.lastEvent,fe=de&&de.actorId&&de.actorId!==ue?de.eventId:null,[pe,me]=(0,u.useState)(null),he=fe&&fe!==pe?fe:null;(0,u.useEffect)(()=>{if(!he)return;let e=setTimeout(()=>me(he),6e3);return()=>clearTimeout(e)},[he]);let q=(0,u.useCallback)((e,{replace:t=!1,resetPage:n=!1}={})=>{let r=new URLSearchParams(N);e(r),n&&(r=FP(r,1)),r.toString()!==N.toString()&&P(r,{replace:t})},[N,P]),ge=(0,u.useCallback)(e=>{e&&q(t=>{t.get(o)!==e&&(t.set(o,e),t.delete(`tab`),t.delete(`subTab`)),R?(fz(t),t.set(cz,uz)):t.delete(cz)})},[R,o,q]),_e=(0,u.useCallback)(e=>{let t=e&&typeof e==`object`&&typeof e.tab==`string`?e.tab:``;q(e=>{fz(e),e.set(cz,uz),t&&(e.set(`tab`,t),e.delete(`subTab`))})},[q]),ve=e=>{if(e.get(cz)!==uz&&!e.has(lz))return;let t=Number(e.get(lz))||1;[...e.keys()].filter(e=>/^p\d+$/.test(e)).forEach(t=>e.delete(t)),e.delete(lz),t>1&&e.set(`p${t}`,``)},ye=(0,u.useCallback)(()=>{q(e=>{ve(e),e.delete(cz),e.delete(`tab`),e.delete(`subTab`)})},[q]),J=(0,u.useCallback)(()=>{q(e=>{ve(e),e.delete(o),e.delete(cz),e.delete(`tab`),e.delete(`subTab`)})},[o,q]),be=(0,u.useCallback)(e=>{q(t=>{e?t.set(oz,e):t.delete(oz)},{replace:!0,resetPage:!0})},[q]),xe=(0,u.useCallback)(e=>{vP(e)!==vP(G)&&q(t=>{let n=xP(e);n?t.set(sz,n):t.delete(sz)},{resetPage:!0})},[G,q]),Se=(0,u.useCallback)(e=>{if(!F)return;let t=a.find(t=>t.toLowerCase()===String(e??``).trim().toLowerCase());if(!t||t===I)return;let n=FP(N,1).toString();M({pathname:`${i}/${t}`,search:n?`?${n}`:``})},[i,F,I,a,M,N]),Ce=(0,u.useMemo)(()=>l?.primary?[l.primary,...l.menu??[]]:[],[l]),we=(0,u.useCallback)(e=>{let t=Ce.find(t=>t.key===e);if(!t)return;let n=typeof t.formProps==`function`?t.formProps({recordId:L}):t.formProps;te({...t,resolvedFormProps:n??void 0})},[Ce,te,L]),Te=(0,u.useCallback)(e=>{d.message.success(`${String(ee?.label??`Record`).replace(/^Add\s+/i,``)} created`),re(e=>e+1),ee?.openCreatedRecord&&e&&ge(String(e))},[ee,ge,re]),Ee=(0,u.useMemo)(()=>({moduleName:e,...F?{selectedSource:I,onTabChange:Se}:{},fetchData:K,searchFields:c,showSearch:!1,showFilterButton:!1,showAdd:!1,showViewToggle:!1,autoCardForExternalRows:!1,showSummaryButton:!0,...S??{}}),[e,F,I,Se,K,c,S]),De=(0,u.useMemo)(()=>A?(0,p.jsxs)(`span`,{className:`cc-list-toolbar-actions`,children:[ce!==`disabled`&&(0,p.jsxs)(`span`,{className:`cc-live-pill`,"aria-live":`polite`,children:[(0,p.jsx)(`span`,{className:`cc-live-dot ${mz(ce)}`}),pz[ce]??`Offline`]}),(0,p.jsx)(HR,{primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,size:`middle`})]}):null,[A,ce,l,we]),Oe=(0,u.useMemo)(()=>De?{...Ee,toolbarExtra:De}:Ee,[Ee,De]);if(F&&!I){let e=N.toString();return(0,p.jsx)(h.Navigate,{to:{pathname:`${i}/${a[0]}`,search:e?`?${e}`:``},replace:!0})}let ke=he?(0,p.jsx)(d.Alert,{type:`info`,showIcon:!0,message:`This record was just updated by someone else — the view has been refreshed.`,style:{margin:`0 0 12px`}}):null,Ae={id:L,listTab:I,isFull:z,recordTick:oe.tick+ne+ie,relatedTick:se.tick+ne+ie,onOpenFull:_e,onBackToQuick:R?null:ye,onClose:J,updatedBanner:ke,renderCreateButton:(e={})=>(0,p.jsx)(HR,{primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,...e})},je=null;L&&!z?je=v?v(Ae):(0,p.jsx)(XP,{moduleName:t,configName:n,id:L,title:m,refreshKey:Ae.recordTick,onOpenFull:_e,onClose:J,extra:_?_(Ae):null},L):L&&z&&(je=y?y(Ae):(0,p.jsx)(tz,{moduleName:t,customConfigName:n,id:L,expanded:!0,onToggleExpand:R?void 0:ye,collapseLabel:`Back to quick view`,onClose:J,refreshKey:Ae.recordTick,banner:ke,headerEndSlot:C?null:Ae.renderCreateButton({size:`middle`}),stats:b?b(Ae):null,breadcrumb:(0,p.jsx)(nz,{items:[{label:r,onClick:J},{label:x}]})},L));let Me=mz(ce);return(0,p.jsxs)(`div`,{className:`cc-module-workspace${k?` cc-module-workspace--host-list`:``}`,children:[(0,p.jsx)(VR,{ariaLabel:r,detailMode:`window`,defaultDetailWidth:g,minDetailWidth:340,maxDetailWidthRatio:.6,widthStorageKey:`cc-quickview-width:${e}`,detailOpen:B?z:!!L,detailExpanded:z,onCloseDetail:z&&!R?ye:J,railCollapsed:V,topBar:z&&!C||!z&&A?null:(0,p.jsx)(UR,{title:r,searchValue:U,onSearch:be,searchPlaceholder:s,showSearch:w,primaryAction:l?.primary??null,menuActions:l?.menu??[],onAction:we,extra:ce!==`disabled`&&(0,p.jsx)(d.Tooltip,{title:`Changes made by others appear here automatically`,children:(0,p.jsxs)(`span`,{className:`cc-live-pill`,"aria-live":`polite`,children:[(0,p.jsx)(`span`,{className:`cc-live-dot ${Me}`}),pz[ce]??`Offline`]})})}),rail:O?(0,p.jsx)(TP,{moduleName:e,scope:I??``,value:G,onChange:xe,collapsed:V,onExpand:()=>H(!1),onCollapse:()=>H(!0)}):null,list:z?null:(0,p.jsx)(LP,{component:k,listProps:Oe,loading:le,selectedRecordId:L||void 0,onOpenRecord:ge}),detail:B&&!z?null:je}),B&&(0,p.jsx)(RP,{open:!!L&&!z,onClose:J,width:g,ariaLabel:m,children:z?null:je}),(0,p.jsx)(az,{open:!!ee,moduleName:ee?.moduleName,title:ee?.title,onClose:()=>te(null),onCreated:Te,formProps:ee?.resolvedFormProps})]})}var _z=[];function vz(e){let t=[e,e?.data,e?.data?.data],n=t.map(e=>e?.total??e?.pagination?.total).find(e=>Number.isFinite(Number(e))&&e!==null&&e!==``),r=t.map(e=>e?.tabs).find(Array.isArray)??_z;return{total:n===void 0?null:Number(n),tabs:r}}var yz=[`module:candidates`,`module:submissions`];function bz({listProps:e,moduleName:t,filterModule:n,renderQuickView:r,quickViewWidth:i=340,railWidth:a=240,liveTopics:o=yz,renderHeader:s,resultsTitle:c,fallbackView:l,preferredView:d,viewSource:f=`default`,fill:m=!1,quickViewMode:g=`docked`,defaultRailCollapsed:_=!1,collapsedRailWidth:v=44,showRail:y=!0}){let[b,x]=(0,u.useState)(_),[S,C]=(0,u.useState)(_z),[w,T]=(0,u.useState)(``),[E,D]=(0,u.useState)(null),[O,k]=(0,u.useState)({total:null,tabs:_z,durationMs:null}),A=cI({topics:o,enabled:!!e?.fetchData,debounceMs:800}),j=e?.fetchData,{fetchData:M,loading:N}=MP({filters:S,baseFetch:(0,u.useMemo)(()=>typeof j==`function`?async(...e)=>{let t=typeof performance<`u`?performance.now():Date.now(),n=await j(...e),r=typeof performance<`u`?performance.now():Date.now();return k({...vz(n),durationMs:Math.max(0,r-t)}),n}:j,[j]),refreshTick:A.tick}),[P,F]=(0,h.useSearchParams)(),I=(0,u.useCallback)(e=>{if(vP(S)===vP(e))return;C(e),D(null);let t=FP(P,1);t.toString()!==P.toString()&&F(t,{replace:!0})},[S,P,F]),L=(0,u.useMemo)(()=>({...e??{},fetchData:M,showFilterButton:!1,...l&&f==="default"?{activeView:l}:{},...d&&f!==`user`?{activeView:d}:{},onTabChange:t=>{T(String(t??``)),D(null),e?.onTabChange?.(t)}}),[e,M,l,d,f]),R=E&&typeof r==`function`?r({id:E.id,record:E.record,onClose:()=>D(null)}):null;if(!e?.fetchData)return null;let z=g===`overlay`,B=!!R&&!z,V=typeof s==`function`?s({total:O.total,tabs:O.tabs,durationMs:O.durationMs,loading:N}):null;return(0,p.jsxs)(`div`,{className:`cc-search-ws${B?` cc-search-ws--quick`:``}${b?` cc-search-ws--rail-collapsed`:``}${y?``:` cc-search-ws--no-rail`}${V?` cc-search-ws--head`:``}${m?` cc-search-ws--fill`:``}`,style:{"--cc-search-rail-w":`${b?v:a}px`,"--cc-search-quick-w":`${i}px`},children:[V&&(0,p.jsx)(`div`,{className:`cc-search-ws__head`,children:V}),y&&(0,p.jsx)(`div`,{className:`cc-search-ws__rail`,children:(0,p.jsx)(TP,{moduleName:n||t,scope:w,value:S,onChange:I,title:`Filters`,collapsed:b,onExpand:()=>x(!1),onCollapse:()=>x(!0)})}),(0,p.jsxs)(`div`,{className:`cc-search-ws__results`,children:[typeof c==`function`&&O.total!==null&&(0,p.jsx)(`div`,{className:`cc-search-ws__results-title`,children:c(O.total)}),(0,p.jsx)(LP,{listProps:L,loading:N,selectedRecordId:E?.id,onOpenRecord:(e,t)=>D({id:String(e),record:t??null})})]}),B&&(0,p.jsx)(`div`,{className:`cc-search-ws__quick`,children:R}),z&&(0,p.jsx)(RP,{open:!!R,onClose:()=>D(null),width:i,children:R})]})}function xz(e){return(e??[]).filter(e=>e!=null&&String(e).trim()!==``)}function Sz({icon:e=(0,p.jsx)(f.SearchOutlined,{}),title:t=`Search`,criteria:n=[],details:r=[],badge:i=null,onEdit:a,editLabel:o=`Edit Search`,expanded:s=!1,onToggle:c,className:l=``}){let u=xz(n),m=xz(r);return(0,p.jsxs)(`section`,{className:`cc-search-summary ${l}`.trim(),"aria-label":`${t} summary`,children:[(0,p.jsx)(`span`,{className:`cc-search-summary__icon`,"aria-hidden":!0,children:e}),(0,p.jsxs)(`div`,{className:`cc-search-summary__text`,children:[(0,p.jsxs)(`div`,{className:`cc-search-summary__title`,children:[(0,p.jsxs)(`span`,{className:`cc-search-summary__lead`,children:[t,u.length?`:`:``]}),u.map((e,t)=>(0,p.jsx)(`span`,{className:`cc-search-summary__part`,children:e},`${e}-${t}`))]}),m.length>0&&(0,p.jsx)(`div`,{className:`cc-search-summary__details`,children:m.map((e,t)=>(0,p.jsx)(`span`,{className:`cc-search-summary__part`,children:e},`${e}-${t}`))})]}),(0,p.jsxs)(`div`,{className:`cc-search-summary__actions`,children:[i,a&&(0,p.jsx)(d.Button,{className:`cc-search-summary__edit`,onClick:a,children:o}),c&&(0,p.jsx)(d.Tooltip,{title:s?`Hide search form`:`Show search form`,children:(0,p.jsx)(d.Button,{className:`cc-search-summary__toggle`,icon:s?(0,p.jsx)(f.UpOutlined,{}):(0,p.jsx)(f.DownOutlined,{}),"aria-label":s?`Hide search form`:`Show search form`,"aria-expanded":s,onClick:c})})]})]})}function Cz(...e){try{for(let t of e){let e=(localStorage.getItem(t)||``).trim();if(e)return e}}catch{}return``}function wz(e){return String(e||``).split(` `).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function Tz(e){let t=String(e||``).split(` `).filter(Boolean);return t.length?`${t[0].charAt(0)}${t.length>1?t.at(-1).charAt(0):``}`.toUpperCase():`U`}function Ez(e){let t=`url("${String(e).replace(/"/g,`%22`)}")`;return{WebkitMaskImage:t,maskImage:t}}function Dz(){return(0,p.jsxs)(`span`,{className:`cc-frame__logo`,"aria-label":`Zinnext`,children:[(0,p.jsx)(`span`,{className:`cc-frame__logo-icon`,style:Ez(Tp)}),(0,p.jsx)(`span`,{className:`cc-frame__logo-text`,style:Ez(Ep)})]})}function Oz({value:e=``,placeholder:t,onSearch:n}){let[r,i]=(0,u.useState)(e),[a,o]=(0,u.useState)(e);return e!==a&&(o(e),i(e)),(0,p.jsx)(d.Input,{className:`cc-frame__search-input`,allowClear:!0,prefix:(0,p.jsx)(f.SearchOutlined,{"aria-hidden":!0}),placeholder:t,"aria-label":t,value:r,onChange:e=>{i(e.target.value),e.target.value===``&&n?.(``)},onPressEnter:()=>n?.(r.trim())})}function kz({navItems:e=[],brand:n=null,search:r=null,headerExtra:i=null,user:a=null,userMenuItems:o=[],loginPath:s=`/login`,children:c}){let l=(0,h.useLocation)(),m=(0,h.useNavigate)(),[g,_]=(0,u.useState)(!1),[v,y]=(0,u.useState)(l.pathname);v!==l.pathname&&(y(l.pathname),_(!1));let b=wz(a?.name||Cz(`userName`,`preferred_Username`)||`User`),x=a?.subtitle??Cz(`roleName`,`userRoleName`),S=[...o,...o.length?[{type:`divider`}]:[],{key:`cc-frame-logout`,icon:(0,p.jsx)(f.LogoutOutlined,{}),danger:!0,label:`Logout`,onClick:()=>{t.g(),m(s,{replace:!0})}}];return(0,p.jsxs)(`div`,{className:`cc-frame${g?` cc-frame--nav-open`:``}`,children:[(0,p.jsxs)(`header`,{className:`cc-frame__header`,children:[(0,p.jsx)(d.Button,{type:`text`,className:`cc-frame__nav-toggle`,icon:(0,p.jsx)(f.MenuOutlined,{}),"aria-label":g?`Close navigation`:`Open navigation`,"aria-expanded":g,onClick:()=>_(e=>!e)}),(0,p.jsx)(`div`,{className:`cc-frame__brand`,children:n??(0,p.jsx)(Dz,{})}),r&&(0,p.jsx)(`div`,{className:`cc-frame__search`,children:(0,p.jsx)(Oz,{value:r.value??``,placeholder:r.placeholder??`Search…`,onSearch:r.onSearch})}),(0,p.jsxs)(`div`,{className:`cc-frame__header-end`,children:[i,(0,p.jsx)(d.Dropdown,{menu:{items:S},trigger:[`click`],placement:`bottomRight`,children:(0,p.jsxs)(`button`,{type:`button`,className:`cc-frame__user`,"aria-label":`Open user menu`,children:[(0,p.jsx)(d.Avatar,{size:40,className:`cc-frame__avatar`,children:Tz(b)}),(0,p.jsxs)(`span`,{className:`cc-frame__user-text`,children:[(0,p.jsx)(`span`,{className:`cc-frame__user-name`,children:b}),x?(0,p.jsx)(`span`,{className:`cc-frame__user-sub`,children:x}):null]}),(0,p.jsx)(f.DownOutlined,{className:`cc-frame__user-caret`,"aria-hidden":!0})]})})]})]}),(0,p.jsxs)(`nav`,{className:`cc-frame__nav`,"aria-label":`Main`,children:[(0,p.jsx)(`div`,{className:`cc-frame__nav-brand`,children:n??(0,p.jsx)(Dz,{})}),(0,p.jsx)(`ul`,{className:`cc-frame__nav-list`,children:e.map(e=>{let t=typeof e.match==`function`?e.match(l.pathname):l.pathname.startsWith(e.to);return(0,p.jsx)(`li`,{children:(0,p.jsxs)(h.Link,{to:e.to,className:`cc-frame__nav-item${t?` is-active`:``}`,"aria-current":t?`page`:void 0,children:[e.icon?(0,p.jsx)(`span`,{className:`cc-frame__nav-icon`,"aria-hidden":!0,children:e.icon}):null,(0,p.jsx)(`span`,{className:`cc-frame__nav-label`,children:e.label})]})},e.key)})})]}),g&&(0,p.jsx)(`button`,{type:`button`,className:`cc-frame__backdrop`,"aria-label":`Close navigation`,onClick:()=>_(!1)}),(0,p.jsx)(`main`,{className:`cc-frame__main`,children:(0,p.jsx)(`div`,{className:`cc-frame__content`,children:(0,p.jsx)(Am,{loginPath:s,children:(0,p.jsx)(Fm,{children:c??(0,p.jsx)(h.Outlet,{})})})})})]})}var Az=new Intl.NumberFormat;function jz(e){return e==null||typeof e==`string`&&e.trim()===``}function Mz(e,t){let n=(Array.isArray(e?.options)?e.options:[]).find(e=>String(e?.value??e)===String(t));return String(n&&typeof n==`object`?n.label??n.value??t:t)}function Nz(e,t){if(jz(t))return``;if(typeof t==`boolean`)return t?String(e?.label??e?.field??``):``;if(typeof t==`object`){if(typeof t.format==`function`)return t.format(`DD MMM YYYY`);if(`label`in t||`value`in t)return String(t.label??t.value??``);let e=t.from??t.min??t.start,n=t.to??t.max??t.end;return!jz(e)||!jz(n)?[e,n].filter(e=>!jz(e)).join(`–`):``}return Mz(e,t).trim()}function Pz(e={},t=[],{skip:n=[]}={}){let r=new Set(n);return(t??[]).flatMap(t=>{let n=t?.field;if(!n||r.has(n))return[];let i=e?.[n];if(jz(i))return[];if(El(t)){let{terms:e,expression:t}=Tl(i),n=e.map(e=>e.value).filter(Boolean);return n.length?[n.join(`, `)]:t.trim()?[t.trim()]:[]}if(Array.isArray(i)){let e=i.map(e=>Nz(t,e)).filter(Boolean);return e.length?[e.join(`, `)]:[]}let a=Nz(t,i);return a?[a]:[]})}function Fz(e){return!Number.isFinite(e)||e<0?``:e<1e4?`${(e/1e3).toFixed(1)} seconds`:`${Math.round(e/1e3)} seconds`}function Iz(e){return Number.isFinite(e)?Az.format(e):``}function Lz({enabled:e=!0,children:t}){let[n]=(0,u.useState)(()=>e?XF():null);return(0,u.useEffect)(()=>{if(!n)return;ZF();let e=()=>n.nudge(),t=()=>{document.visibilityState===`visible`&&e()};return window.addEventListener(`online`,e),document.addEventListener(`visibilitychange`,t),()=>{window.removeEventListener(`online`,e),document.removeEventListener(`visibilitychange`,t),QF()}},[n]),(0,p.jsx)(GF.Provider,{value:n,children:t})}async function Rz(e,t,n,r={}){return zz(e,tF(t,n),r)}async function zz(e,t,{limit:r=20,offset:i=0,sort:a=``,sortDir:o=``}={}){let s=Array.isArray(t)?t.filter(e=>e?.field):[];if(!e||s.length===0)return{rows:[],total:0};let c=await n.Qt(e,r,i,{sort:a,sortDir:o,scopeConditions:s}),l=n.Ot(c,e);return{rows:Array.isArray(l?.rows)?l.rows:[],total:Number(l?.total)||0}}typeof window<`u`&&(window.__CORE_THEME_BUILD__=`2026-11-10T12:36:49.787Z`);var Bz=ik,Vz=mh(gM),Hz=mh(vM),Uz=mh(NM),Wz=mh(GM),Gz=mh(eN),Kz=mh(rN),qz=mh(oN),Jz=mh(lN),Yz=mh(dN),Xz=mh(wN),Zz=mh(EN);exports.ACTION_RULE_SURFACES=n.kt,exports.ADMIN_API_URL=t.y,exports.ADMIN_APP_ID=t.b,exports.APP_ID=t.x,exports.AUTH_URL=t.S,exports.ActionInputBox=RI,exports.ActivityNotesCard=ln,exports.ActivityTab=rn,exports.AddBatchCandidatePopup=NO,exports.AddFormV1=i.t,exports.AddRecordDrawer=az,exports.AdminDashboard=ik,exports.AdminDashboardContent=AC,exports.AdminPage=Bz,exports.AppAlert=c.a,exports.AppButton=n.Gn,exports.AppShell=Lm,exports.ApprovalActionBar=Gd,exports.AssigneeAvatars=un,exports.AuthGuard=Am,exports.BILLING_STATUS_FLOW=Qa,exports.BOOLEAN_API_KEYS=ju,exports.BOOLEAN_PARSEABLE_API_KEYS=gl,exports.BUILT_IN_WIZARD_STEP_TYPES=n.et,exports.BULK_UPLOAD_DEFAULT_ACCEPT=dn,exports.BULK_UPLOAD_DEFAULT_MAX_SIZE_MB=fn,exports.Breadcrumb=n.Dt,exports.BulkUploadPage=Uz,exports.BulkUploadPanel=bn,exports.CANDIDATES_URL=t.C,exports.CONTRACT_C2C=gf,exports.CONTRACT_W2=hf,exports.CURRENCY_SYMBOLS=Ur,exports.CalendarCard=j,exports.CombinedDashboardPage=XL,exports.DASHBOARDPAGE=XL,exports.CombinedDetailViewPage=dL,exports.DETAILVIEWPAGE=dL,exports.CombinedHomePage=eL,exports.HOMEPAGE=eL,exports.CompactRecordList=ZR,exports.CoreThemeAdminApp=PC,exports.CoreThemeAdminRoutes=NC,exports.CreateActionButton=HR,exports.CustomPagination=n.si,exports.DEFAULT_HOURS_POLICY=pd,exports.DEFAULT_RESULTS_VIEW=Du,exports.DETAILSSECTION=FR,exports.DetailsSection=FR,exports.DETAILS_BLOCKS=OR,exports.DETAILS_ICONS=ZL,exports.DayLogModal=Ld,exports.DescriptionBlock=Nn,exports.DetailHeaderCard=ns,exports.DetailViewPage=ls,exports.DetailViewV1=Xi,exports.DocumentViewer=r.t,exports.DynamicCards=It,exports.DynamicPopup=tE,exports.DynamicPopupRoute=RO,exports.DynamicTabs=n.ui,exports.DynamicWizard=uc,exports.EditFormV1=ic,exports.FIELD_TYPE_REGISTRY=Zl,exports.FINANCE_APPROVAL_CONFIG=sf,exports.FINANCE_TYPE_CFO=$d,exports.FINANCE_TYPE_ONBOARDING_MANAGER=Qd,exports.FINANCE_TYPE_ONBOARDING_MANAGER_REAPPROVE=nf,exports.FINANCE_TYPE_ONLY_FINANCE=ef,exports.FINANCE_TYPE_SUBMISSION_MANAGER=Zd,exports.FINANCE_TYPE_SUBMISSION_MANAGER_REAPPROVE=tf,exports.FileListCard=xp,exports.FilterRail=TP,exports.FinanceApprovalPanel=ep,exports.FinanceAvatar=Po,exports.FinanceBadge=Ro,exports.FinanceDayCell=qd,exports.FinanceDivider=Eo,exports.FinanceEmployeeCell=Fo,exports.FinanceEmptyState=Co,exports.FinanceEquation=Do,exports.FinanceHistoryTimeline=jo,exports.FinanceHoursGrid=So,exports.FinanceKpiRow=xo,exports.FinanceLine=To,exports.FinanceListToolbar=fd,exports.FinanceMarginBadge=zo,exports.FinanceMoneyCell=Lo,exports.FinanceRecordsTable=Ho,exports.FinanceRowChevron=Bo,exports.FinanceSection=wo,exports.FinanceStatusPill=bo,exports.FinanceTextCell=Io,exports.FinanceTimesheetAnalysis=Yd,exports.FinanceWorkflowSteps=Oo,exports.HOURS_MESSAGES=md,exports.Header=Xp,exports.HierarchyUserFilter=Vt,exports.HubOverview=tL,exports.JOBS_URL=t.w,exports.LegacyAdminPage=Vz,exports.ListView=n.rt,exports.ListWithQuickView=zP,exports.LmsHomePage=Zz,exports.LmsTestForm=Xz,exports.Login=Rm,exports.MATCH_NOTHING=ZP,exports.MailPopup=dw,exports.ManageModules=Kz,exports.ManageSubmodules=qz,exports.MasterDetailWorkspace=VR,exports.ModuleRowActions=Tc,exports.ModuleWorkspace=gz,exports.NotesPanel=Wd,exports.NotesTab=cn,exports.OPEN_AS_OPTIONS=vu,exports.PAGE_ICONS=lI,exports.PAYROLL_STATUS_FLOW=$a,exports.POPUP_CONFIGS=wO,exports.PanelBreadcrumb=nz,exports.PanelTabs=ez,exports.ParamCardView=Yc,exports.ParamListView=tl,exports.PaymentInvoicePopup=JO,exports.PeriodBadgeTag=Ed,exports.PreviewPopup=Hw,exports.ProjectSelect=ph,exports.ProofUploadPreview=Ud,exports.QuickLogBar=Bd,exports.QuickLogSelectionBar=Rd,exports.QuickViewCard=$I,exports.QuickViewModuleActions=BI,exports.QuickViewPopover=RP,exports.RAIL_KIND=nP,exports.REALTIME_STATUS=LF,exports.RESULTS_VIEW_OPTIONS=Eu,exports.RealtimeProvider=Lz,exports.RecordDetailPanel=tz,exports.RecordHub=aL,exports.RecordQuickView=XP,exports.RecordSidePanel=iz,exports.RejectionReasonModal=zd,exports.RelatedModuleTab=DF,exports.SUBMISSIONS_URL=t.E,exports.SearchBuilderV1=rd,exports.SearchResultsWorkspace=bz,exports.SearchSummaryBanner=Sz,exports.SettingsPage=vj,exports.Sidebar=Em,exports.StatStrip=c.i,exports.StatusBadge=ad,exports.StatusBadgeTag=Td,exports.StickyNotesFullPage=Hz,exports.StylishDynamicTabs=sd,exports.TemplateEditor=ld,exports.TestForm=Wz,exports.TestingHomePage=Yz,exports.TimelineGroups=Yt,exports.TimesheetDayCell=Pd,exports.TipTapEditor=n.oi,exports.UserForm=rk,exports.VendorShareDrawer=HO,exports.ViewSummaryWidget=n.Et,exports.WIZARD_ACTIONS_CONTRACT_VERSION=n.N,exports.WIZARD_ACTIONS_PATH=n.P,exports.WIZARD_CONTENT_TYPES=n.L,exports.WizardAccessMatrixStep=n.R,exports.WizardActionError=n.F,exports.WizardActivityStep=n.z,exports.WizardChoiceCardsStep=n.B,exports.WizardDeclarationStep=n.V,exports.WizardListStep=n.H,exports.WizardPermissionMatrixStep=n.q,exports.WizardPopup=Jw,exports.WizardPreview=n.U,exports.WizardPreviewStep=n.J,exports.WizardStepContent=n.W,exports.WizardSuccessStep=n.G,exports.WizardUnknownContentStep=n.K,exports.WorkspaceAppFrame=kz,exports.WorkspaceListView=LP,exports.WorkspaceTopBar=UR,exports.ZinnextTableView=Jz,exports.ZinnextTestForm=Gz,exports.actedRecently=n.it,exports.actionRuleConditionMatches=n.jt,exports.adminActionAllowed=Bc,exports.appNow=n.di,exports.applyIntegrationStatus=n.Di,exports.approveSubmission=q,exports.attentionItems=hL,exports.buildAcceptAttr=_n,exports.buildBooleanRequest=Iu,exports.buildCsv=mo,exports.buildDailyRows=so,exports.buildDayGradient=Md,exports.buildFormWizardSteps=n.rn,exports.buildRateHistoryEntries=Vf,exports.buildRelationConditions=tF,exports.buildSearchRequest=Vu,exports.buildWeeklyRollup=uo,exports.canonicalModule=RF,exports.clearNewRecord=n.at,exports.clearSelectedProject=t.i,exports.colors=n.li,exports.computeFinance=Nf,exports.computeHoursPolicy=bd,exports.computeMarginBand=fo,exports.conditionMatches=n.r,exports.configureCoreTheme=t.D,exports.configuredFieldLabel=n.i,exports.configuredWizardSteps=sc,exports.confirmAction=n.pt,exports.countActiveRows=_P,exports.createAllWorkflowsListFetcher=$N,exports.createMergedListFetcher=qN,exports.createModuleListFetchAdapter=BN,exports.createRealtimeClient=WF,exports.createWorkflowStageListFetcher=JN,exports.currencySymbol=Wr,exports.dashboardRange=fL,exports.defaultMergeRow=MN,exports.deleteIntegrationConfig=n.Ri,exports.deriveDayStats=oo,exports.describeCapacity=Sd,exports.displayText=KR,exports.downloadCsv=vo,exports.draftToRows=hP,exports.evaluateShowIfWith=n.a,exports.fetchJsonWithAuth=t.o,exports.fetchRelatedRecords=Rz,exports.fetchScopedRecords=zz,exports.fillConfirmText=n.ht,exports.findEmployerRow=Df,exports.flattenGroups=Tf,exports.formatAmount=Xr,exports.formatApp=n.fi,exports.formatAppDateTime=n.pi,exports.formatFileSize=gn,exports.formatFinanceMoney=Hf,exports.formatHours=Ua,exports.formatMoney=Zr,exports.formatPercent=Ga,exports.formatRate=Qr,exports.formatSearchCount=Iz,exports.formatSearchDuration=Fz,exports.getActivity=n.Yr,exports.getAllWorkflowsModuleList=eP,exports.getAppTimeZone=n.mi,exports.getApprovalDate=Ya,exports.getBgcIntegrationConfig=n.na,exports.getBgcIntegrationSummary=n.ra,exports.getBillingActionStates=eo,exports.getBooleanEligibleTypes=ru,exports.getCurrentRoleName=t.c,exports.getFieldLabel=go,exports.getFieldType=$l,exports.getFileExtension=hn,exports.getFinanceApprovalConfig=ff,exports.getFormGroups=s.r,exports.getFormGroupsRaw=up,exports.getIntegrationConfig=n.ua,exports.getIntegrationConfigs=n.da,exports.getIntegrationSummary=n.fa,exports.getModuleConfig=Pe,exports.getModuleDataDetail=n.Zr,exports.getPayrollActionStates=to,exports.getPeriodBadgeConfig=Ie,exports.getSearchPopup=hu,exports.getSelectedProject=t.l,exports.getStoredToken=t.u,exports.getStoredUser=t.d,exports.getUserRoles=t.f,exports.getVMSApprove=ge,exports.getValueStyle=_o,exports.getWorkflowStageModuleList=tP,exports.getWorkflowSteps=no,exports.humanizeEvent=Ja,exports.indexFieldConfig=ho,exports.initialsOf=Ka,exports.inputPayload=Xb,exports.insertTokenAtCursor=bl,exports.invalidateGetCache=t.p,exports.isBooleanEligible=eu,exports.isBooleanParsable=vl,exports.isTester=t.m,exports.isWizardConfigEnabled=n.in,exports.isWizardConfigReady=n.an,exports.listPropsForColumns=wI,exports.logout=t.g,exports.makeSearchFetcher=Wu,exports.mapListResponse=n.Ot,exports.marginIncludesReferral=mf,exports.markNewRecord=n.ot,exports.matchLocationTax=Mf,exports.mergeWizardSubmitValues=n.on,exports.moduleTopic=zF,exports.moduleViewAllowed=n.Lt,Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return fs}}),exports.newRecordMarks=n.ct,exports.normalizeConfirm=n.yt,exports.normalizeContract=kf,exports.normalizeInputPrompt=qb,exports.normalizePageLayout=vI,exports.parseRows=SP,exports.pickCompactFields=YR,exports.quickViewFields=qP,exports.quickViewValueText=KP,Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return xn}}),exports.rateUnitLabel=Kr,exports.rateUnitShort=Jr,exports.readActionButtons=Su,exports.readPageParam=PP,exports.reconcileHours=xd,exports.recordActionRun=n.lt,exports.recordIdOf=XR,exports.recordTopic=BF,exports.registerFieldType=Ql,exports.registerSearchPopup=mu,exports.registerWizardPreview=n.tt,exports.registerWizardStepType=n.nt,exports.rejectSubmission=ve,exports.relationSignature=rF,exports.resolveActivityMeta=en,exports.resolveAndCompute=Pf,exports.resolveDayKind=vd,exports.resolveFinanceInputs=jf,exports.resolveMergeKey=AN,exports.resolveMergedListKey=AN,exports.resolveOpenAs=bu,exports.resolvePageButtons=_I,exports.resolvePageIcon=uI,exports.resolvePageValue=pI,exports.resolveQuickViewActions=LI,exports.resolveRejectionReason=pf,exports.resolveResultsSearchPlaceholder=Au,exports.resolveResultsView=ku,exports.resolveSubmissionFinance=dp,exports.rowsSignature=vP,exports.rowsToDraft=gP,exports.ruleAppliesToSurface=n.Pt,exports.rulePrimaryAction=n.Ft,exports.runModuleAction=bc,exports.runWizardAction=n.I,exports.safeWizardActionRoute=n.Y,exports.saveBgcIntegrationConfig=n.Ia,exports.saveIntegrationConfig=n.za,exports.scopeConditionsFor=uF,exports.searchCriteriaParts=Pz,exports.serializeRows=xP,exports.setSelectedProject=t.v,exports.showIfConditions=n.s,exports.stageCountKey=YN,exports.supportsAnyOf=lF,Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return zm}}),exports.testIntegrationConnection=n.qa,exports.toApp=n.gi,exports.toNumber=Yr,exports.toRailFields=uP,exports.topicsForEvent=HF,exports.tzLabel=n._i,exports.tzShortLabel=n.vi,exports.unregisterSearchPopup=gu,exports.unscopedConditions=nF,exports.useAdminAction=Hc,exports.useAdminActionsVersion=Vc,exports.useConfiguredWizardSteps=lc,exports.useDropdownFields=n.Vt,exports.useDropdownValues=n.Tt,exports.useEditForm=Sp,exports.useFieldConfig=n.Ht,exports.useFilterFields=n.Ut,exports.useInPlaceRecordLinks=IP,exports.useLiveRefresh=cI,exports.useMenuPermission=n.Rt,exports.useModuleActions=gc,exports.useModuleViewAccess=n.zt,exports.useNewRecordMarks=n.ut,exports.useRealtimeClient=rI,exports.useRealtimeReconnect=sI,exports.useRealtimeStatus=iI,exports.useRealtimeTopics=oI,exports.useRecordFields=rz,exports.useRecordHub=rL,exports.useRecordRefresh=os,exports.useRelatedCounts=wF,exports.useWorkspaceList=MP,exports.validateBooleanQuery=yl,exports.validateBulkFile=vn,exports.validateInputValue=Yb,exports.withAdminAppId=t.O,exports.withAppId=t.k,exports.withAuthGuard=mh,exports.withPageParam=FP,exports.withSubTab=iF;
|
|
48
48
|
//# sourceMappingURL=index.cjs.map
|