@realtek/core-theme 0.0.172 → 0.0.173

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("./Breadcrumb-lNe2H5ny.cjs"),t=require("./authApi-DDxHOLb_.cjs"),n=require("./diceCandidateMapper-MB-yyU21.cjs");let r=require("react");r=e.Pn(r,1);let i=require("antd"),a=require("@ant-design/icons"),o=require("react/jsx-runtime"),s=require("react-router-dom"),c=require("dayjs");c=e.Pn(c,1);let l=require("prop-types");l=e.Pn(l,1);async function u(e,{method:n=`POST`,params:r={},body:i={}}={}){let a={"Content-Type":`application/json`,Authorization:`Bearer ${await t.r()}`},o=new URLSearchParams({moduleName:e});Object.entries(r).forEach(([e,t])=>{t!=null&&t!==``&&o.append(e,String(t))});let s={method:n,headers:a};(n===`POST`||n===`PUT`)&&(s.body=JSON.stringify(i??{}));let c=await fetch(`${t.v}/dashboard/cards?${o.toString()}`,s);if(!c.ok)throw Error(`API ${c.status}: ${c.statusText}`);return c.json()}async function d(e={}){let n=await t.r(),r=await fetch(`${t.v}/dynamic-common-count`,{method:`POST`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`},body:JSON.stringify(e)});if(!r.ok)throw Error(`API ${r.status}: ${r.statusText}`);return r.json()}async function f(e={}){let n=await t.r(),r=await fetch(`${t.v}/dashboard-calendar`,{method:`POST`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`},body:JSON.stringify(e)});if(!r.ok)throw Error(`API ${r.status}: ${r.statusText}`);return r.json()}async function p(){return t.t(t.v,`/users/hierarchy-tree`)}var{Title:m,Text:h}=i.Typography,g=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],_=[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],v=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],y={green:`#22c55e`,red:`#ef4444`,orange:`#f97316`,blue:`#3b82f6`};function b(e){return y[e]||e||`#586888`}function x(e){return String(e).padStart(2,`0`)}function S(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 C(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(e.slice(r,r+t));return n}function w(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 T(e=[]){let t={};return e.forEach(e=>{t[e.date]=(e.events||[]).map(e=>{let{text:t,author:n}=w(e.description);return{color:e.color,label:e.label,title:e.title,text:t,author:n}})}),t}function E({events:e}){return(0,o.jsx)(`div`,{style:{maxWidth:280,maxHeight:260,overflowY:`auto`},children:e.map((t,n)=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8,padding:`6px 0`,borderBottom:n<e.length-1?`1px solid #f0f0f0`:`none`},children:[(0,o.jsx)(`span`,{className:`calendar-dot`,style:{background:b(t.color),marginTop:6,flexShrink:0}}),(0,o.jsxs)(`div`,{style:{minWidth:0},children:[(0,o.jsx)(h,{strong:!0,style:{fontSize:13,display:`block`},children:t.title||t.label}),t.text&&(0,o.jsx)(h,{style:{fontSize:12,color:`#555`,whiteSpace:`pre-line`,wordBreak:`break-word`},children:t.text}),t.author&&(0,o.jsxs)(h,{style:{fontSize:11,color:`#999`,display:`block`,marginTop:2},children:[`— `,t.author]})]})]},n))})}function D({userIds:e=[],days:t=void 0,startDay:n=`Sun`,renderDayContent:s=void 0,onDayClick:c=void 0,headerExtra:l=void 0,legend:u=void 0,readonly:d=!1,className:p=``,monthLabel:y=void 0,year:w=void 0,month:D=void 0,onPrevMonth:O=void 0,onNextMonth:k=void 0,prevDisabled:A=!1,nextDisabled:j=!1}){let M=t!==void 0||s!==void 0||c!==void 0,N=new Date,[P,F]=(0,r.useState)({year:N.getFullYear(),month:N.getMonth()}),I=w!=null&&D!=null?{year:Number(w),month:Number(D)-1}:P,[L,R]=(0,r.useState)({}),[z,B]=(0,r.useState)([]),[V,H]=(0,r.useState)(!1),[U,W]=(0,r.useState)(null),G=JSON.stringify(e),ee=n===`Mon`?_:g,te=(0,r.useCallback)(async()=>{H(!0);try{let t=await f({userIds:e});t?.status&&t?.data?(B(t.data.legend||[]),R(T(t.data.days||[]))):(B([]),R({}))}catch(e){console.error(`CalendarCard fetch error:`,e)}finally{H(!1)}},[G]);(0,r.useEffect)(()=>{M||te()},[M,te]),(0,r.useEffect)(()=>(window.addEventListener(`dashboard-calendar:refresh`,te),()=>window.removeEventListener(`dashboard-calendar:refresh`,te)),[te]);let K=O??(()=>F(e=>e.month===0?{year:e.year-1,month:11}:{...e,month:e.month-1})),ne=k??(()=>F(e=>e.month===11?{year:e.year+1,month:0}:{...e,month:e.month+1})),re=C(S(I.year,I.month,n),7),q={};t!==void 0&&(t||[]).forEach(e=>{e?.date&&(q[e.date]=e)});let J=u??z,ie=y??`${v[I.month]} ${I.year}`;return(0,o.jsx)(i.Card,{className:`calendar-card${p?` ${p}`:``}`,title:(0,o.jsxs)(`div`,{className:`calendar-header-title`,children:[(0,o.jsx)(a.CalendarOutlined,{}),(0,o.jsx)(m,{level:5,style:{margin:0},children:ie})]}),extra:(0,o.jsxs)(`div`,{className:`calendar-nav`,style:{display:`flex`,alignItems:`center`,gap:6},children:[l,(0,o.jsx)(i.Tooltip,{title:`Previous month`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.LeftOutlined,{}),size:`small`,onClick:K,disabled:A})}),(0,o.jsx)(i.Tooltip,{title:`Next month`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.RightOutlined,{}),size:`small`,onClick:ne,disabled:j})})]}),children:(0,o.jsxs)(i.Spin,{spinning:V,children:[(0,o.jsx)(i.Row,{gutter:[6,0],className:`calendar-day-names`,children:ee.map(e=>(0,o.jsx)(i.Col,{flex:`1`,className:`calendar-day-name`,children:e},e))}),(0,o.jsx)(`div`,{className:`calendar-weeks`,children:re.map((e,t)=>(0,o.jsx)(i.Row,{gutter:[6,6],align:`top`,className:`calendar-week-row`,children:e.map((e,t)=>{if(!e.cur||e.day===null)return(0,o.jsx)(i.Col,{flex:`1`,children:(0,o.jsx)(`div`,{className:`calendar-cell calendar-cell--filler`})},t);let n=`${I.year}-${x(I.month+1)}-${x(e.day)}`,r=e.day===N.getDate()&&I.month===N.getMonth()&&I.year===N.getFullYear();if(M){let a=q[n]??null;return s?(0,o.jsx)(i.Col,{flex:`1`,children:s(n,a,{isToday:r,readonly:d})},t):(0,o.jsx)(i.Col,{flex:`1`,children:(0,o.jsx)(`div`,{className:[`calendar-cell`,r?`today`:``,d?`calendar-cell--readonly`:``].filter(Boolean).join(` `),onClick:()=>!d&&c?.(n,a),style:{cursor:d?`default`:`pointer`},children:(0,o.jsx)(`div`,{className:`calendar-cell-inner`,children:(0,o.jsx)(h,{className:`calendar-cell-number`,children:e.day})})})},t)}let a=L[n]||[],l=[...new Set(a.map(e=>e.color))].slice(0,3);return(0,o.jsx)(i.Col,{flex:`1`,children:(0,o.jsx)(`div`,{className:`calendar-cell${r?` today`:``}`,children:(0,o.jsxs)(`div`,{className:`calendar-cell-inner`,children:[(0,o.jsx)(h,{className:`calendar-cell-number`,children:e.day}),a.length>0&&(0,o.jsx)(i.Popover,{open:U===n,trigger:`click`,content:(0,o.jsx)(E,{events:a}),placement:`topRight`,destroyTooltipOnHide:!0,onOpenChange:e=>W(e?n:null),children:(0,o.jsx)(`div`,{className:`calendar-cell-dots`,children:l.map((e,t)=>(0,o.jsx)(`span`,{className:`calendar-dot`,style:{background:b(e)}},t))})})]})})},t)})},t))}),J.length>0&&(0,o.jsx)(`div`,{className:`calendar-legend`,children:J.map(({label:e,color:t,icon:n})=>(0,o.jsxs)(`div`,{className:`calendar-legend-item`,children:[n?(0,o.jsx)(`span`,{className:`calendar-legend-icon`,children:n}):(0,o.jsx)(`span`,{className:`calendar-legend-dot`,style:{background:b(t)}}),(0,o.jsx)(h,{children:e})]},e))})]})})}function O(e){return e!=null}function k(e){let t=String(e);return t.charAt(0).toUpperCase()+t.slice(1)}function A(e,t){if(!e||typeof e!=`object`)return null;let n=e.key??e.value??e.id??String(t),r=e.title??e.tabTitle??e.label??e.name,a=e.count??e.countValue;return!n||!r?null:{...e,key:String(n),label:(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(`span`,{children:k(r)}),O(a)&&(0,o.jsx)(i.Badge,{className:`dynamic-tabs-count`,count:a,overflowCount:2**53-1})]})}}function j({tabs:e=[],activeKey:t,onChange:n,className:r,extra:a}){let s=e.map(A).filter(Boolean);return s.length?(0,o.jsx)(i.Tabs,{activeKey:s.some(e=>e.key===t)?t:s[0].key,className:r,items:s,onChange:n,tabBarExtraContent:a}):null}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;async function F(e,n,r){return P(await t.i(t.v,`/module-data-update`,{method:`PUT`,body:JSON.stringify({module:e,ids:n,updates:{status:r}})}))}async function I(e,n){let r=Array.isArray(n)?n:[n],i=await Promise.all(r.filter(Boolean).map(n=>t.i(t.v,`/module/delete/${encodeURIComponent(n)}?module=${encodeURIComponent(e)}`,{method:`DELETE`})));return i[i.length-1]??{}}async function L(e){return P(await t.i(t.b,`/joblist`,{method:`POST`,body:JSON.stringify({...M(),searchQuery:e,userId:N()})}))}async function R(e=``){return t.t(t.b,`/users/any${e?`?search=${encodeURIComponent(e)}`:``}`)}async function z({relatedIds:e,module:n,title:r,targetDate:i,notes:a}){return t.i(t.b,`/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 B(e,{title:n,targetDate:r,notes:i}){return t.i(t.b,`/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 V(e){return t.i(t.b,`/notes/${encodeURIComponent(e)}/resolve`,{method:`PUT`})}async function H({jobId:e,candidateIds:n,hiringStage:r}){return t.i(t.b,`/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 U(){return P(await t.i(t.v,`/masters/dropdown?masterName=candidateGroups&offset=0&limit=50`))}async function W({candidateIds:e,groupId:n,groupName:r}){return P(await t.i(t.y,`/actions/update-group`,{method:`PUT`,body:JSON.stringify({candidateIds:e,groupId:n,groupName:r})}))}async function G({jobIds:e,rate:n,priority:r}){return t.i(t.b,`/assign?type=self`,{method:`PUT`,body:JSON.stringify({multiJobId:Array.isArray(e)?e:[e],userId:N(),schemaVersion:1,...M(),jobPayDetails:n??{},priority:r==null?`false`:String(r),priorityFrom:null,recruitersData:[]})})}function ee(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 te(){let e=await t.t(t.b,`/users/manager`);return(Array.isArray(e)?e:e?[e]:[]).map(ee).filter(Boolean)}async function K(e){return e?t.t(t.b,`/self-assign?jobId=${encodeURIComponent(e)}`):null}function ne(e){let t=Number(e);if(!Number.isInteger(t)||t<=0)throw Error(`A valid user must be selected before assigning the job`);return t}function re(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 q({jobIds:e,userId:t,rate:n,priority:r,removedIds:i,existingRecruiters:a}){let o=new Set((i??[]).map(String)),s=(a??[]).map(re).filter(e=>e!==null&&!o.has(String(e)));return{multiJobId:Array.isArray(e)?e:[e],userId:ne(t),schemaVersion:1,...M(),jobPayDetails:n??{},priority:String(r??!1),priorityFrom:``,recruitersData:s}}async function J(e){return t.i(t.b,`/assign?type=other`,{method:`PUT`,body:JSON.stringify(q(e))})}async function ie({submissionId:e,isMail:n=!1}){return P(await t.i(t.v,`/submissions/move-to-onboarding`,{method:`POST`,body:JSON.stringify({submissionId:e,isMail:!!n})}))}async function ae(e,n){return P(await t.i(t.v,`/submissions/approve`,{method:`POST`,body:JSON.stringify({submissionId:e,...n})}))}async function oe(e){return P(await t.i(t.v,`/submissions/vms-approve?submissionId=${encodeURIComponent(e)}`))}async function Y({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i}){return P(await t.i(t.v,`/submissions/reject`,{method:`POST`,body:JSON.stringify({submissionId:e,rejectReasonId:n,rejectReason:r,rejectReasonComments:i})}))}async function se({jobId:e,applicantId:n}){return P(await t.i(t.v,`/submissions/exists?${new URLSearchParams({jobId:String(e??``),applicantId:String(n??``)}).toString()}`))??{exists:!1}}async function ce({jobId:e,candidateIds:n}){return t.i(t.b,`/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()})})}var le={jobsCount:[`total`,`Total Jobs`,`active`,`Active Jobs`,`myAssignedCount`,`My Jobs`],submissionCount:[`Selected`,`Submitted to client`,`Submitted to Client`,`Not Submitted`,`Approved`]};function ue(e){return le[e]??null}var de={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:ue(`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:ue(`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:ue(`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,c.default)(e.weekStart).format(`MMM D`):``,r=e.weekEnd?(0,c.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`}},fe=[`blue`,`green`,`purple`,`peach`,`red`,`gray`],pe=[`purple`,`peach`,`green`],me=[`#1d4ed8`,`#ef4444`,`#16a34a`,`#9333ea`,`#f59e0b`,`#0891b2`],he={blue:`#1d4ed8`,green:`#16a34a`,purple:`#9333ea`,peach:`#f97316`,red:`#ef4444`,gray:`#6b7280`};function ge(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.cardConfig)??{};return{...de,...e}}function _e({current:t,pageSize:n,total:r,onChange:a,onPageSizeChange:s}){let c=Math.min((t-1)*n+1,r),l=Math.min(t*n,r);return(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,className:`custom-pagination`,style:{color:e.jn.textSecondary},children:[(0,o.jsxs)(i.Space,{size:5,align:`center`,children:[(0,o.jsx)(e.An,{variant:`body`,color:`secondary`,children:`Show`}),(0,o.jsx)(i.Select,{value:n,size:`small`,style:{width:72},popupMatchSelectWidth:72,onChange:e=>{s(e),a(1)},options:[{value:10,label:`10`},{value:12,label:`12`},{value:25,label:`25`},{value:50,label:`50`},{value:100,label:`100`}]}),(0,o.jsx)(e.An,{variant:`body`,color:`secondary`,children:`/ page`})]}),(0,o.jsxs)(i.Space,{size:16,align:`center`,children:[(0,o.jsx)(e.An,{variant:`body`,color:`secondary`,children:`Showing ${c} - ${l} of ${r}`}),(0,o.jsx)(i.Pagination,{current:t,pageSize:n,total:r,showSizeChanger:!1,showQuickJumper:!1,showLessItems:!0,onChange:a})]})]})}var{Title:ve,Text:ye}=i.Typography;function be(e,t){return Array.isArray(t)?t.map(t=>be(e,t)).filter(xe).join(` `):typeof t==`string`&&t.includes(`.`)?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e[t]}var xe=e=>e!=null&&e!==``;function X(e,t,n={}){return{...n,...e.styles?.[t]||{}}}function Se(e){return xe(e.title)?(0,o.jsx)(ve,{level:5,style:X(e,`headerTitle`),children:e.title}):void 0}function Ce(e,t){return xe(e.title)?t:void 0}function we(e){return[`blue`,`green`,`purple`,`peach`,`red`,`gray`].includes(Fe(e))}function Te(e,t){let n=t||``,r=X(e,`card`);return xe(n)?we(n)?{className:n,style:r}:{className:``,style:{...r,background:n,borderColor:e.styles?.card?.borderColor||n}}:{className:``,style:r}}function Ee(e,t){return t?t.split(`.`).reduce((e,t)=>e==null?e:e[t],e):e}function De(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 Oe(e){if(!xe(e))return null;let t=new Date(e);return isNaN(t)||t.getFullYear()<=1?null:t.toLocaleDateString(`en-GB`,{day:`2-digit`,month:`long`,year:`numeric`})}function ke(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 Ae(e){return Math.max(1,Math.floor(24/(e||4)))}function je(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 Me(e,t){let n=je(e.layout),r=e.columns??n.columns??t,i=e.maxCount??n.maxCount;return{columns:r,span:Ae(r),maxCount:i}}function Ne(e,t){return t?e.slice(0,t):e}function Pe(e,t){return e.color?e.color===`auto`?fe[t%fe.length]:e.color:``}var Fe=e=>String(e??``).trim().toLowerCase();function Ie(e,t){return(Array.isArray(t)?t:[t]).some(t=>xe(t)&&Fe(t)===Fe(e))}function Le(e,t){if(!e.colorMap)return null;let n=Object.keys(e.colorMap).find(e=>Ie(e,t));return n?e.colorMap[n]:null}function Re(e,t,n){if(!e.labelMap)return n;let r=Object.keys(e.labelMap).find(e=>Ie(e,t));return r?e.labelMap[r]:n}function ze(e,t){if(!e.valueMap)return null;let n=Object.keys(e.valueMap).find(e=>Ie(e,t));return n?e.valueMap[n]:null}function Be(e,t){return!Array.isArray(e.show)||e.show.length===0?!0:e.show.some(e=>Ie(e,t))}function Ve(e,t,n){return Be(e,t)?Array.isArray(e.hide)?e.hide.some(e=>typeof e==`number`?e===n:Ie(e,t)):!1:!0}function He(e,t){for(let n of ke(e,`titleKey`)){let e=be(t,n);if(xe(e))return e}return null}function Ue(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:De(e),value:Number(t)}))}function We(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 Ge(e,t){let n=Ue(e),r=t.totalKey,i=r?be(e||{},r):void 0,a=r&&xe(i)&&!isNaN(i),o=n.map((e,t)=>({...e,_i:t})).filter(e=>!(a&&Ie(r,[e.key,e.label]))).filter(e=>!Ve(t,[e.key,e.label],e._i)).map((e,n)=>{let r=Le(t,[e.key,e.label]),i=r?he[Fe(r)]||r:me[e._i%me.length];return{label:Re(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:Ne(o,Me(t,1).maxCount)}}function Ke({item:e,group:t,color:n}){let r=n=>ke(t,n).map(t=>be(e,t)).filter(xe),a=r(`titleKey`),s=r(`countKey`),c=r(`nameKey`),l=r(`valueKey`),u=Te(t,n);return(0,o.jsxs)(i.Card,{className:`dyn-card-item ${u.className}`.trim(),style:u.style,bordered:!0,children:[a.map((e,n)=>(0,o.jsx)(ye,{className:`dyn-card-title`,style:X(t,`cardTitle`),children:e},`t${n}`)),s.map((e,n)=>(0,o.jsx)(i.Statistic,{value:e,className:`dyn-card-stat`,valueStyle:X(t,`cardValue`)},`c${n}`)),c.map((e,n)=>(0,o.jsx)(ye,{className:`dyn-card-name`,style:X(t,`cardName`),children:e},`n${n}`)),l.length>0&&(0,o.jsx)(`div`,{className:`dyn-card-footer`,style:X(t,`cardFooter`),children:l.map((e,n)=>(0,o.jsx)(ye,{className:`dyn-card-sub`,style:X(t,`cardSub`),children:e},`v${n}`))})]})}function qe({group:e}){let{span:t,maxCount:n}=Me(e,4),r=Ne((Array.isArray(e.list)?e.list:[]).map((t,n)=>({item:t,name:He(e,t),_i:n})).filter(t=>!Ve(e,t.name,t._i)),n);return(0,o.jsx)(i.Card,{className:`dyn-card-section`,style:X(e,`section`),title:Se(e),extra:Ce(e,(0,o.jsxs)(ye,{type:`secondary`,style:X(e,`headerExtra`),children:[r.length,` cards`]})),children:(0,o.jsx)(i.Row,{gutter:[16,16],children:r.map(n=>{let r=Le(e,n.name)||Pe(e,n._i);return(0,o.jsx)(i.Col,{xs:24,sm:12,md:t>=12?12:t*2,lg:t,xl:t,children:(0,o.jsx)(Ke,{item:n.item,group:e,color:r})},n._i)})})})}function Je({group:e,items:t}){let{span:n,maxCount:r}=Me(e,4),a=Ne(t.map((e,t)=>({...e,_i:t})).filter(t=>!Ve(e,[t.key,t.label],t._i)),r);return(0,o.jsx)(i.Card,{className:`dyn-card-section`,style:X(e,`section`),title:Se(e),extra:Ce(e,(0,o.jsxs)(ye,{type:`secondary`,style:X(e,`headerExtra`),children:[a.length,` cards`]})),children:(0,o.jsx)(i.Row,{gutter:[16,16],children:a.map(t=>{let r=Te(e,Le(e,[t.key,t.label])||Pe(e,t._i));return(0,o.jsx)(i.Col,{xs:24,sm:12,md:n>=12?12:n*2,lg:n,xl:n,children:(0,o.jsxs)(i.Card,{className:`dyn-card-item ${r.className}`.trim(),style:r.style,bordered:!0,children:[(0,o.jsx)(ye,{className:`dyn-card-title`,style:X(e,`cardTitle`),children:Re(e,[t.key,t.label],t.label)}),(0,o.jsx)(i.Statistic,{value:t.value,groupSeparator:e.groupSeparator??`,`,className:`dyn-card-stat`,valueStyle:X(e,`cardValue`)}),xe(ze(e,[t.key,t.label]))&&(0,o.jsx)(ye,{className:`dyn-card-sub`,style:X(e,`cardSub`),children:ze(e,[t.key,t.label])})]})},t._i)})})})}function Ye({group:e,data:t}){let{total:n,rows:r}=Ge(t,e),s=e.tooltipText;return(0,o.jsxs)(i.Card,{className:`submission-card`,style:X(e,`card`),children:[xe(e.title)&&(0,o.jsxs)(i.Row,{justify:`space-between`,align:`middle`,className:`submission-header`,style:X(e,`submissionHeader`),children:[(0,o.jsx)(i.Col,{children:(0,o.jsxs)(ye,{className:`submission-title`,style:X(e,`submissionTitle`),children:[e.title,` `,s&&(0,o.jsx)(i.Tooltip,{title:s,children:(0,o.jsx)(a.InfoCircleOutlined,{className:`submission-info-icon`,style:X(e,`infoIcon`)})})]})}),(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{className:`submission-total`,style:X(e,`submissionTotal`),children:Number(n||0).toLocaleString()})})]}),(0,o.jsx)(`div`,{className:`submission-rows`,style:X(e,`submissionRows`),children:r.map((t,r)=>(0,o.jsxs)(`div`,{children:[(0,o.jsxs)(i.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:X(e,`submissionRowHeader`),children:[(0,o.jsx)(i.Col,{children:(0,o.jsx)(i.Row,{align:`middle`,gutter:6,children:(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{className:`submission-row-label`,style:X(e,`submissionRowLabel`),children:t.label})})})}),(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{className:`submission-row-value`,style:X(e,`submissionRowValue`),children:t.value})})]}),(0,o.jsx)(`div`,{className:`submission-bar-track`,style:X(e,`submissionBarTrack`),children:(0,o.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${t.value/(n||1)*100}%`,background:t.barColor}})})]},`${t.label}-${r}`))})]})}function Xe(e){if(!xe(e))return`-`;let t=new Date(e);return!Number.isNaN(t.getTime())&&/date|time/i.test(String(e))?t.toLocaleString(void 0,{dateStyle:`medium`,timeStyle:`short`}):String(e)}function Ze({group:e,data:t}){let n=e.totalKey??`totalScore`,r=e.maxKey??`maximumScore`,a=e.statusKey??`status`,s=e.attemptDateKey??`attemptDate`,c=e.timeTakenKey??`timeTaken`,l=e.rankKey??`rank`,u=Number(be(t||{},n)??0),d=Number(be(t||{},r)??100)||100,f=Math.max(0,Math.min(100,Math.round(u/d*100))),p=Ge(t,{...e,totalKey:n,hide:[...Array.isArray(e.hide)?e.hide:[],r,a,s,c,l]}).rows,m=[{key:a,label:e.statusLabel??`Status`},{key:s,label:e.attemptDateLabel??`Attempt Date`},{key:c,label:e.timeTakenLabel??`Time Taken`},{key:l,label:e.rankLabel??`Rank`}].filter(e=>xe(be(t||{},e.key)));return(0,o.jsxs)(i.Card,{className:`assessment-card`,style:X(e,`card`),title:Se(e),children:[(0,o.jsxs)(`div`,{className:`assessment-card__top`,children:[(0,o.jsx)(i.Progress,{type:`circle`,percent:f,format:()=>`${Number(u||0).toLocaleString()}/${d.toLocaleString()}`,strokeColor:e.scoreColor??`#6d4aff`,trailColor:e.trailColor??`#edf0f5`}),(0,o.jsx)(`dl`,{className:`assessment-card__meta`,children:m.map(e=>(0,o.jsxs)(`div`,{className:`assessment-card__meta-row`,children:[(0,o.jsx)(`dt`,{children:e.label}),(0,o.jsx)(`dd`,{children:Xe(be(t||{},e.key))})]},e.key))})]}),(0,o.jsx)(`div`,{className:`submission-rows assessment-card__rows`,style:X(e,`submissionRows`),children:p.map(t=>(0,o.jsxs)(`div`,{children:[(0,o.jsxs)(i.Row,{justify:`space-between`,align:`middle`,className:`submission-row-header`,style:X(e,`submissionRowHeader`),children:[(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{className:`submission-row-label`,style:X(e,`submissionRowLabel`),children:t.label})}),(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{className:`submission-row-value`,style:X(e,`submissionRowValue`),children:t.value})})]}),(0,o.jsx)(`div`,{className:`submission-bar-track`,style:X(e,`submissionBarTrack`),children:(0,o.jsx)(`div`,{className:`submission-bar-fill`,style:{width:`${Math.max(0,Math.min(100,Number(t.value)/d*100))}%`,background:t.barColor}})})]},t.label))})]})}function Qe(e,t={},n={}){let r=xe(e)?e:t.fallback;if(!xe(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 $e({group:e,data:t}){let n=Array.isArray(t);return(0,o.jsxs)(i.Card,{className:`timesheet-summary-card`,size:`small`,children:[xe(e.title)&&(e.plainHeader?(0,o.jsx)(ye,{type:`secondary`,style:{fontSize:12,fontWeight:600},children:e.title}):(0,o.jsxs)(`div`,{className:`timesheet-summary-card__head`,children:[(0,o.jsx)(ve,{level:5,style:{margin:0},children:e.title}),e.headerExtra]})),!n&&(0,o.jsx)(`div`,{className:`timesheet-summary-card__metrics`,children:(e.rows??[]).map(n=>(0,o.jsxs)(`div`,{className:`timesheet-summary-card__metric-row`,children:[(0,o.jsxs)(ye,{type:`secondary`,style:{fontSize:12},children:[n.label,` `,n.sublabel&&(0,o.jsx)(`span`,{style:{fontSize:11},children:n.sublabel})]}),(0,o.jsx)(ye,{strong:!0,style:{fontSize:13,whiteSpace:`nowrap`,color:n.valueColor},children:Qe(be(t??{},n.key),n,e)})]},n.key))}),n&&t.length>0&&(0,o.jsx)(`div`,{className:`timesheet-summary-card__weekly`,children:t.map((t,n)=>(0,o.jsxs)(`div`,{className:`timesheet-summary-card__week-row`,children:[(0,o.jsx)(ye,{type:`secondary`,style:{fontSize:12},children:e.listRows?.itemLabel?e.listRows.itemLabel(t,n):`Row ${n+1}`}),(0,o.jsx)(ye,{strong:!0,style:{fontSize:12},children:Qe(be(t,e.listRows?.itemValueKey),e.listRows,e)})]},n))})]})}function et({group:e,data:t}){return(0,o.jsx)(i.Card,{className:`timesheet-summary-card`,size:`small`,children:(0,o.jsx)(`div`,{className:`timesheet-summary-card__bars`,children:(e.rows??[]).map(n=>(0,o.jsxs)(`div`,{className:`timesheet-summary-card__bar`,style:{background:n.bg},children:[(0,o.jsx)(ye,{style:{fontSize:12,color:n.color,fontWeight:500},children:n.label}),(0,o.jsx)(ye,{strong:!0,style:{fontSize:13,color:n.color},children:Qe(be(t??{},n.key),n,e)})]},n.key))})})}function tt({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,o.jsx)(`div`,{className:r,children:Array.from({length:e},(e,t)=>(0,o.jsxs)(`div`,{className:`finance-kpi fin-kpi--skeleton`,children:[(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--label`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--value`})]},t))})}return(0,o.jsx)(`div`,{className:r,children:n.map(e=>(0,o.jsxs)(`div`,{className:`finance-kpi fin-kpi--${e.tone??`neutral`}`,children:[e.icon?(0,o.jsx)(`span`,{className:`fin-kpi__icon`,children:e.icon}):null,(0,o.jsxs)(`span`,{className:`fin-kpi__body`,children:[(0,o.jsx)(`span`,{className:`finance-kpi__label`,children:e.label}),(0,o.jsx)(`strong`,{className:`finance-kpi__value`,children:e.value}),e.sub??e.hint?(0,o.jsx)(`span`,{className:`finance-kpi__hint`,children:e.sub??e.hint}):null]})]},e.key??e.label))})}function nt(e,t){return Fe(be(t,e.pillKey||`status`))===`resolved`}function rt(e,t){let{start:n,end:r}=e.dateRange||{};if(!n||!r)return!0;let i=be(t,e.footerRightKey||`createdAt`);if(!xe(i))return!0;let a=new Date(i);return isNaN(a)?!0:a>=n&&a<=r}function it(e,t,n){let r=t.dateKey?Oe(be(e,t.dateKey)):null;return{type:Le(t,t.colorBy?be(e,t.colorBy):null)||(t.color&&t.color!==`auto`?t.color:pe[n%pe.length]),pill:t.pillKey?be(e,t.pillKey):null,heading:t.headingKey?be(e,t.headingKey):null,body:t.bodyKey?be(e,t.bodyKey):null,footerLeft:t.footerLeftKey?be(e,t.footerLeftKey):null,footerRight:t.footerRightKey?Oe(be(e,t.footerRightKey)):null,dot:r?`#f97316`:null,date:r}}function at({text:e,lines:t,style:n}){let a=(0,r.useRef)(null),[s,c]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=a.current;if(!e)return;let t=0,n=()=>{t=requestAnimationFrame(()=>{let t=e.scrollHeight-e.clientHeight>1;c(e=>e===t?e:t)})};n();let r=new ResizeObserver(n);return r.observe(e),()=>{cancelAnimationFrame(t),r.disconnect()}},[e,t]);let l=(0,o.jsx)(`div`,{ref:a,className:`sticky-note-body${t?` clamp-${t}`:``}`,style:n,children:e});return(0,o.jsx)(i.Popover,{trigger:`hover`,placement:`topLeft`,overlayClassName:`sticky-note-popover`,content:s?(0,o.jsx)(`div`,{className:`sticky-note-popover-content`,children:e}):null,open:s?void 0:!1,children:l})}function ot({group:e}){let t=(0,s.useNavigate)(),n=(0,s.useLocation)(),c=()=>t(`/popup/sticky-notes`,{state:{background:n,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{}}}),l=e=>t(`/popup/sticky-notes`,{state:{background:n,selectedIds:[],selectedRecords:[],moduleName:`general`,popupContext:{editingNoteId:e._id??e.id,editingHeading:e.title,editingComments:e.notes,editingTargetDate:e.reminder?.time||void 0}}}),[u,d]=(0,r.useState)(new Set),f=async e=>{let t=e._id??e.id;d(e=>new Set(e).add(t));try{await V(t),i.message.success(`Note resolved`)}catch{i.message.error(`Failed to resolve note`),d(e=>{let n=new Set(e);return n.delete(t),n})}},{span:p,maxCount:m}=Me(e,2),h=t=>e.colorBy?be(t,e.colorBy):e.headingKey?be(t,e.headingKey):null,g=(Array.isArray(e.list)?e.list:[]).filter(e=>!u.has(e._id??e.id)).map((e,t)=>({item:e,_i:t})).filter(({item:t,_i:n})=>!Ve(e,h(t),n)).filter(({item:t})=>rt(e,t)),[_,v]=(0,r.useState)(`todo`),y=g.filter(({item:t})=>!nt(e,t)),b=g.filter(({item:t})=>nt(e,t)),x=e.showTabs,S=x?_===`resolved`?b:y:g,[C,w]=(0,r.useState)(e.pageSize||12),[T,E]=(0,r.useState)(1);(0,r.useEffect)(()=>{E(1)},[_,e.dateRange]);let D=Math.max(1,Math.ceil(S.length/C));(0,r.useEffect)(()=>{E(e=>Math.min(e,D))},[D]);let O=x?S.slice((T-1)*C,T*C):Ne(g,m);return(0,o.jsxs)(i.Card,{className:`sticky-card`,style:X(e,`section`),title:Se(e),extra:Ce(e,(0,o.jsxs)(`div`,{className:`sticky-card-actions`,children:[e.headerExtra,(0,o.jsx)(i.Tooltip,{title:`Add note`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.PlusOutlined,{}),size:`small`,onClick:c})}),xe(e.viewAllUrl)&&(0,o.jsx)(i.Button,{type:`link`,size:`small`,onClick:()=>t(e.viewAllUrl,{state:{moduleName:e.moduleName,title:e.title,request:e.request}}),children:`View all`})]})),children:[x&&(0,o.jsx)(j,{activeKey:_,onChange:v,tabs:[{key:`todo`,title:`To-do`,count:y.length},{key:`resolved`,title:`Resolved Notes`,count:b.length}]}),O.length===0?(0,o.jsx)(i.Empty,{description:`No notes found`}):(0,o.jsx)(`div`,{className:x?`sticky-notes-scroll`:void 0,children:(0,o.jsx)(i.Row,{gutter:[12,12],children:O.map(({item:t,_i:n})=>{let r=it(t,e,n),s=Te(e,r.type);return(0,o.jsx)(i.Col,{xs:24,sm:24,md:p>=12?12:p*2,lg:p,xl:p,children:(0,o.jsxs)(`div`,{className:`sticky-note ${s.className}`.trim(),style:s.style,children:[(0,o.jsxs)(i.Space,{size:4,className:`sticky-note-hover-actions`,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>l(t)})}),(0,o.jsx)(i.Tooltip,{title:`Resolve`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.CheckCircleOutlined,{}),onClick:()=>f(t)})})]}),(0,o.jsxs)(i.Space,{size:8,align:`center`,className:`sticky-note-pill-row`,children:[xe(r.pill)&&(0,o.jsxs)(i.Tag,{style:X(e,`stickyPill`),children:[r.dot&&(0,o.jsx)(`span`,{className:`sticky-note-dot`,style:{background:r.dot}}),r.pill]}),r.date&&(0,o.jsx)(ye,{className:`sticky-note-date`,style:X(e,`stickyDate`),children:r.date})]}),xe(r.heading)&&(0,o.jsx)(ye,{strong:!0,className:`sticky-note-heading`,style:X(e,`stickyHeading`),children:r.heading}),xe(r.body)&&(0,o.jsx)(at,{text:r.body,lines:e.bodyLines,style:X(e,`stickyBody`)}),(0,o.jsxs)(i.Row,{justify:`space-between`,align:`middle`,className:`sticky-note-footer`,style:X(e,`stickyFooter`),children:[(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{style:X(e,`stickyFooterText`),children:r.footerLeft})}),(0,o.jsx)(i.Col,{children:(0,o.jsx)(ye,{style:X(e,`stickyFooterText`),children:r.footerRight})})]})]})},n)})})}),x&&S.length>0&&(0,o.jsx)(`div`,{className:`sticky-notes-pagination`,children:(0,o.jsx)(_e,{current:T,pageSize:C,total:S.length,onChange:E,onPageSizeChange:w})})]})}function st({group:e,children:t}){let n=e.frameClassName||`dyn-frame`,r=e.viewAll?(0,o.jsx)(`a`,{className:`dyn-frame-view-all`,children:typeof e.viewAll==`string`?e.viewAll:`View all`}):void 0;return(0,o.jsxs)(i.Card,{className:n,title:e.frameTitle,extra:r,children:[t,e.footer&&(0,o.jsx)(`div`,{className:`${n}-footer`})]})}function ct({group:e,data:t}){let n=e.frame?{...e,title:void 0}:e,r=n.variant===`sticky`?(0,o.jsx)(ot,{group:{...n,list:Array.isArray(t)?t:[]}}):n.variant===`counts`?(0,o.jsx)(Je,{group:n,items:Ue(t)}):n.variant===`submission`?(0,o.jsx)(Ye,{group:n,data:t}):n.variant===`assessment`?(0,o.jsx)(Ze,{group:n,data:t}):n.variant===`metrics`?(0,o.jsx)($e,{group:n,data:t}):n.variant===`bars`?(0,o.jsx)(et,{group:n,data:t}):n.variant===`kpi`?(0,o.jsx)(tt,{group:n,data:t}):(0,o.jsx)(qe,{group:{...n,list:Array.isArray(t)?t:[]}});return e.frame?(0,o.jsx)(st,{group:e,children:r}):r}function lt({moduleName:e,title:t,maxCount:n,layout:a,columns:s,request:c,viewAll:l=!0,staticData:f,showTabs:p,dateRange:m,headerExtra:h,loading:g}){let _=ge()[e],v=(0,r.useMemo)(()=>{if(!_)return _;let r={title:t,maxCount:n,layout:a,columns:s,showTabs:p,dateRange:m,headerExtra:h,loading:g},i={..._,moduleName:e};for(let e in r)xe(r[e])&&(i[e]=r[e]);return c&&(i.request={..._.request,...c,params:{..._.request?.params,...c.params},body:{..._.request?.body,...c.body}}),l||(i.viewAllUrl=void 0),i},[_,t,n,a,s,c?JSON.stringify(c):``,l,p,m,h,g]),[y,b]=(0,r.useState)({moduleName:null,resp:null,error:null}),[x,S]=(0,r.useState)(0);(0,r.useEffect)(()=>{if(!v?.refreshEvent)return;let e=()=>S(e=>e+1);return window.addEventListener(v.refreshEvent,e),()=>window.removeEventListener(v.refreshEvent,e)},[v?.refreshEvent]),(0,r.useEffect)(()=>{if(!v)return;if(f!==void 0){b({moduleName:e,resp:We(f,v),error:null});return}if(v.dynamicCommonCount){let t=!0;return d(v.dynamicCommonCount).then(n=>{t&&b({moduleName:e,resp:We(n,v),error:null})}).catch(n=>{t&&b({moduleName:e,resp:null,error:n})}),()=>{t=!1}}if(!v.request)return;let t=!0;return u(e,v.request).then(n=>{t&&b({moduleName:e,resp:n,error:null})}).catch(n=>{t&&b({moduleName:e,resp:null,error:n})}),()=>{t=!1}},[e,v,f,x]);let C=y.moduleName!==e,w=C?null:y.error,T=C?null:y.resp;return v?C?(0,o.jsx)(i.Card,{className:`dyn-card-section`,style:X(v,`section`),title:Se(v),children:(0,o.jsx)(`div`,{style:{textAlign:`center`,padding:24},children:(0,o.jsx)(i.Spin,{})})}):w?(0,o.jsx)(i.Card,{className:`dyn-card-section`,style:X(v,`section`),title:Se(v),children:(0,o.jsx)(i.Empty,{description:`Failed to load: ${w.message}`})}):(0,o.jsx)(ct,{group:v,data:Ee(T,v.listPath)}):(0,o.jsx)(i.Empty,{description:`Unknown dashboard module: ${e}`})}function ut({moduleName:e,title:t,layout:n,columns:r,maxCount:a,request:s,viewAll:c,staticData:l,showTabs:u,dateRange:d,headerExtra:f,loading:p}){return e?(0,o.jsx)(`div`,{className:`dyn-cards`,children:(0,o.jsx)(lt,{moduleName:e,title:t,layout:n,columns:r,maxCount:a,request:s,viewAll:c,staticData:l,showTabs:u,dateRange:d,headerExtra:f,loading:p})}):(0,o.jsx)(i.Empty,{description:`DynamicCards: a moduleName prop is required`})}var{Text:dt}=i.Typography;function ft(e){return(e??[]).map(e=>({key:e.userId,title:e.isSelf?`${e.name} (You)`:e.name,searchText:`${e.name} ${e.email??``}`.toLowerCase(),children:ft(e.children)}))}function pt(e,t){let n=[];for(let r of e){let e=pt(r.children??[],t);(r.searchText.includes(t)||e.length>0)&&n.push({...r,children:e})}return n}function mt(e,t=[]){for(let n of e)t.push(n.key),mt(n.children??[],t);return t}function ht({value:e=[],onChange:t}){let[n,s]=(0,r.useState)(null),[c,l]=(0,r.useState)(!0),[u,d]=(0,r.useState)(null),[f,m]=(0,r.useState)(``),[h,g]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=!0;return p().then(t=>{e&&s(ft(t?.users))}).catch(t=>{e&&d(t)}).finally(()=>{e&&l(!1)}),()=>{e=!1}},[]);let _=f.trim().toLowerCase(),v=(0,r.useMemo)(()=>_&&n?pt(n,_):n,[n,_]),y=_?{expandedKeys:mt(v??[])}:{};return(0,o.jsx)(i.Popover,{content:(0,o.jsxs)(`div`,{style:{width:280},children:[(0,o.jsx)(i.Input.Search,{placeholder:`Search users`,allowClear:!0,value:f,onChange:e=>m(e.target.value),style:{marginBottom:8}}),c&&(0,o.jsx)(`div`,{style:{padding:24,textAlign:`center`},children:(0,o.jsx)(i.Spin,{size:`small`})}),u&&(0,o.jsx)(i.Empty,{description:`Could not load users`}),!c&&!u&&(v?.length?(0,o.jsx)(`div`,{style:{maxHeight:280,overflow:`auto`},children:(0,o.jsx)(i.Tree,{checkable:!0,selectable:!1,defaultExpandAll:!0,treeData:v,checkedKeys:e,onCheck:(e,n)=>t(n.checkedNodes.map(e=>e.key)),...y})}):(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`No users`})),e.length>0&&(0,o.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginTop:8,paddingTop:8,borderTop:`1px solid #f0f0f0`},children:[(0,o.jsxs)(dt,{type:`secondary`,children:[e.length,` selected`]}),(0,o.jsx)(i.Button,{type:`link`,size:`small`,onClick:()=>t([]),children:`Clear`})]})]}),trigger:`click`,placement:`bottomRight`,open:h,onOpenChange:g,children:(0,o.jsx)(i.Badge,{count:e.length,size:`small`,offset:[-4,4],children:(0,o.jsxs)(i.Button,{icon:(0,o.jsx)(a.FilterOutlined,{}),children:[`Filter by `,(0,o.jsx)(a.DownOutlined,{style:{fontSize:10}})]})})})}function gt(e,t={}){let n=Array.isArray(e?.autoValueRules)?e.autoValueRules:[];for(let e of n){let n=Array.isArray(e?.whenRoleId)?e.whenRoleId.map(Number):[],r=Array.isArray(e?.whenUserId)?e.whenUserId.map(Number):[],i=t.roleId!==void 0&&n.includes(t.roleId),a=t.userId!==void 0&&r.includes(t.userId);if(i||a)return{matched:!0,value:e.value}}return{matched:!1,value:void 0}}function _t(e){return String(e??``).replace(/^__mw__.*?__/,``).replace(/\[\d+\]$/,``).trim()||`file`}async function vt(e,n,r=[],i={}){if(!e)throw Error(`moduleName is required to upload documents`);if(!n)throw Error(`refId (created record id) is required to upload documents`);if(!r.length)return{data:[],total:0};let a=await t.r(),o=new FormData;r.forEach(({formKey:e,file:t})=>{let n=t?.name??void 0;o.append(_t(e),t,n)}),i&&Object.keys(i).length>0&&o.append(`metadata`,JSON.stringify(i));let s=new URLSearchParams({module:e,refId:String(n)}),c=await fetch(`${t.v}/documents/upload?${s.toString()}`,{method:`POST`,headers:{Authorization:`Bearer ${a}`},body:o}),l=(c.headers.get(`content-type`)||``).includes(`application/json`)?await c.json():await c.text();if(!c.ok){let e=Error(l?.error||l?.message||`API ${c.status}: ${c.statusText}`);throw e.status=c.status,e.data=l,e}return l?.data??l}var yt=`authToken`,bt=`authUser`,xt=`authLoginSession`,St=[`access_token`,`refresh_token`,`id_token`,`token_type`,`expires_in`,`refresh_expires_in`,`menu`,`footermenu`,`menuPermission`,`default_values`,`roleId`,`companyName`,`preferred_Username`,`user_Email`,`userName`,`userId`,`tenantId`,`businessId`,`businessUnitId`,`activeKey`,`ct_project_id`,`ct_project_name`],Ct=`test-flows`,wt=[{value:`module`,label:`Module`,isVisible:!0,type:`text`},{value:`flow`,label:`Flow`,isVisible:!0,type:`text`},{value:`step_order`,label:`Step Order`,isVisible:!0,type:`number`},{value:`keyword`,label:`Action`,isVisible:!0,type:`text`},{value:`description`,label:`Description`,isVisible:!0,type:`text`},{value:`target`,label:`Key`,isVisible:!0,type:`text`},{value:`tags`,label:`Tags`,isVisible:!0,type:`text`},{value:`value`,label:`Value`,isVisible:!0,type:`text`},{value:`expected`,label:`Expected`,isVisible:!0,type:`text`}],Tt=`lms-flows`,Et=[{value:`module`,label:`Module`,isVisible:!0,type:`text`},{value:`flow`,label:`Flow`,isVisible:!0,type:`text`},{value:`step_order`,label:`Step Order`,isVisible:!0,type:`number`},{value:`keyword`,label:`Action`,isVisible:!0,type:`text`},{value:`description`,label:`Description`,isVisible:!0,type:`text`},{value:`target`,label:`Key`,isVisible:!0,type:`text`},{value:`tags`,label:`Tags`,isVisible:!0,type:`text`},{value:`value`,label:`Value`,isVisible:!0,type:`text`},{value:`expected`,label:`Expected`,isVisible:!0,type:`text`}];function Dt(){let e=localStorage.getItem(yt),t=sessionStorage.getItem(xt)===`1`;return e&&t?e:null}async function Ot({jobId:e,limit:n=10,offset:r=0,sortBy:i=`new`,type:a=`myVendor`}){return await It(t.b,`/vendor/hotlist`,{method:`POST`,body:JSON.stringify({jobId:e,limit:n,offset:r,sortBy:i,type:a})})}async function kt(e){let n=await It(t.y,`/get-bulkmail-details?jobId=${encodeURIComponent(e)}`);return n.data??n}async function At({jobId:e,toMail:n,ccMail:r,bccMail:i,subject:a,contents:o}){let s=localStorage.getItem(`tenantId`)||`93c782a4aa626175e5d11afa`,c=localStorage.getItem(`businessId`)||`83c782a4aa626175e5d11afa`,l=localStorage.getItem(`businessUnitId`)||`63b57588fd768a839dbc0f63`,u=new FormData;u.append(`json`,JSON.stringify({schemaVersion:1,tenantId:s,businessId:c,businessUnitId:l,jobId:e,toMail:n,ccMail:r,bccMail:i,contents:o,subject:a}));let{"Content-Type":d,...f}=await Ft(),p=await fetch(`${t.y}/send-bulkmail`,{method:`POST`,headers:f,body:u});if(p.status===401&&jt(),!p.ok)throw Error(`API ${p.status}: ${p.statusText}`);let m=await p.text();return m?JSON.parse(m):{}}function jt(){localStorage.removeItem(yt),localStorage.removeItem(bt),St.forEach(e=>localStorage.removeItem(e)),sessionStorage.removeItem(xt),window.dispatchEvent(new Event(`auth:logout`))}function Mt(e=``){let t=String(e??``).trim();return t===`myJobs`||t===`allJobs`?t:``}function Nt(t){let n=String(e.En(t)??``).trim().toLowerCase();return n===`job`||n===`jobs`}async function Pt(){let e=Dt();if(e)return e;let t=Error(`Authentication required`);throw t.status=401,t}async function Ft(){return{"Content-Type":`application/json`,Authorization:`Bearer ${await Pt()}`}}async function It(e,t,n={}){let r=await Ft(),i={...n,headers:{...r,...n.headers}},a=await fetch(`${e}${t}`,i);if(a.status===401&&jt(),!a.ok){let e=Error(`API ${a.status}: ${a.statusText}`);throw e.status=a.status,e}return a.json()}async function Lt(e,t){let n=await It(e,t);return n.data??n}async function Rt(e){return Lt(t.x,e)}async function zt(e){return Lt(t.v,e)}async function Bt(t){return t===Ct?wt:t===Tt?Et:Rt(`/filter-dropdown-fields?module=${encodeURIComponent(e.En(t))}`)}async function Vt(t,{configType:n,userId:r,roleId:i}={}){if(t===Ct)return wt;if(t===Tt)return Et;let a=new URLSearchParams({module:e.En(t)});return n&&a.set(`configType`,n),r!=null&&a.set(`userId`,String(r)),i!=null&&a.set(`roleId`,String(i)),zt(`/admin/field-config?${a}`)}async function Ht({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)),zt(`/test-flows?${s.toString()}`)}async function Ut({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)),zt(`/lms-flows?${s.toString()}`)}async function Wt(n,r=10,i=0,a={}){let{scope:o=``,sort:s=``,sortDir:c=``,search:l=``,filters:u=[],queryParams:d={}}=a;if(n===Ct){let e=await Ht({limit:r,offset:i}),t=Array.isArray(e?.items)?e.items:[],n=Number(e?.total)||0;return{items:t,total:n,limit:r,offset:i,tabs:[{key:`all`,title:`Test Cases`,count:n}]}}if(n===Tt){let e=await Ut({limit:r,offset:i}),t=Array.isArray(e?.items)?e.items:[],n=Number(e?.total)||0;return{items:t,total:n,limit:r,offset:i,tabs:[{key:`all`,title:`LMS Cases`,count:n}]}}let f=new URLSearchParams({module:e.En(n),limit:String(r),offset:String(i)}),p=Nt(n)?Mt(o):String(o??``).trim();p&&f.set(`scope`,p),s&&f.set(`sort`,s),c&&f.set(`sortDir`,c),String(l??``).trim()&&f.set(`search`,String(l).trim());let m=Xt(u.filter(e=>e?.field));m.length&&f.set(`filters`,JSON.stringify(m)),Object.entries(d??{}).forEach(([e,t])=>{t!=null&&String(t).trim()!==``&&f.set(e,String(t))});let h=await It(t.v,`/module-data-list?${f.toString()}`),g=Gt(h),_=g.some(e=>Jt(e)),v=g.some(e=>Yt(e));if(_||v)try{let{transformDiceResponseToInternalFormat:e}=await Promise.resolve().then(()=>require("./diceCandidateMapper-CCsJWM_a.cjs")),t=e(h,h),n=t?.data?.data??[];return{items:n,total:qt(h,p)||qt(t,p)||n.length,limit:r,offset:i,tabs:t?.data?.tabs??h?.tabs??h?.data?.tabs??[],fields:t?.data?.fields??h?.fields??h?.data?.fields??[],tabField:t?.data?.tabField??h?.tabField??h?.data?.tabField??``,actionRules:t?.data?.actionRules??h?.data?.actionRules??[],actions:t?.data?.actions??h?.data?.actions??[],columnActions:t?.data?.columnActions??h?.data?.columnActions??[]}}catch(e){console.error(`[getModuleDataList] Dice transformation failed:`,e)}return h}function Gt(e){let t=e?.data??e,n=Array.isArray(t)?t:t?.rows??t?.records??t?.items??t?.list??t?.data??e?.items??e?.records??[];return Array.isArray(n)?n:[]}function Kt(...e){for(let t of e){let e=Number(t);if(Number.isFinite(e))return e}}function qt(e,t=``){let n=e?.data??e,r=Gt(e),i=e?.count,a=n?.count,o=String(t??``).trim().toLowerCase();if(i&&typeof i==`object`){let e=Kt(o?i[o]:void 0,i.total,i.searchCount,i.count);if(e!==void 0)return e}if(a&&typeof a==`object`){let e=Kt(o?a[o]:void 0,a.total,a.searchCount,a.count);if(e!==void 0)return e}return Kt(e?.total,typeof i==`object`?void 0:i,e?.totalCount,n?.total,typeof a==`object`?void 0:a,n?.totalCount,r.length)??0}function Jt(e){let t=e?.skills??e?.technicalSkills??e?.primarySkills;return!Array.isArray(t)||t.length===0?!1:t.some(e=>e&&typeof e==`object`&&(`skill`in e||`lastUsed`in e))}function Yt(e){return[e?.sourceType,e?.profileSource,e?.selectedSource,e?.customFields?.sourceType,e?.customFields?.profileSource].flat().some(e=>String(e??``).trim().toLowerCase()===`dice`)||!!e?.customFields?.diceProfileData}function Xt(e){let t=[];for(let n of e){if(!n.field)continue;let e=n.operator===`or`?`or`:`and`;if(n.operator===`isEmpty`){t.push({field:n.field,op:`isEmpty`,operator:`and`});continue}if(n.operator===`notEmpty`){t.push({field:n.field,op:`notEmpty`,operator:`and`});continue}if(n.filterInputType===`text`){let r=typeof n.value==`string`?n.value.trim():``;r&&t.push({field:n.field,op:`contains`,value:r,operator:e});continue}if(n.from||n.to){n.from&&t.push({field:n.field,op:`gte`,value:String(n.from),operator:e}),n.to&&t.push({field:n.field,op:`lte`,value:String(n.to),operator:`and`});continue}Array.isArray(n.values)&&n.values.length>0&&t.push({field:n.field,op:`in`,values:n.values.map(String),operator:e})}return t}async function Zt(t,n,r=``,i={}){let{limit:a=50,offset:o=0,dataSource:s,groupName:c,lookup:l}=i,u=new URLSearchParams({module:e.En(t),field:n,value:r,limit:String(a),offset:String(o)});return s&&u.set(`dataSource`,s),s===`group`&&c&&u.set(`groupName`,c),s===`lookup`&&l?.collection&&(u.set(`lookupCollection`,l.collection),l.displayField&&u.set(`lookupField`,l.displayField)),Rt(`/filter-dropdown-values?${u}`)}function Qt(e){let t=e?.data??e,n=Array.isArray(t)?t:Array.isArray(t?.groups)?t.groups:Array.isArray(e?.groups)?e.groups:[],r=t?.recordMeta??e?.recordMeta;return r&&typeof r==`object`&&(n.recordMeta=r),n}async function $t({module:e,id:n,view:r}={}){if(!e)throw Error(`module is required to fetch form groups`);let i=await Ft(),a=new URLSearchParams({module:e});n&&a.set(`id`,String(n)),r&&a.set(`view`,String(r));let o=await fetch(`${t.v}/admin/form-groups?${a.toString()}`,{method:`GET`,headers:i});if(!o.ok)throw Error(`API ${o.status}: ${o.statusText}`);return Qt(await o.json())}async function en({searchQuery:e,candidateId:n}){let r=localStorage.getItem(`tenantId`)||`93c782a4aa626175e5d11afa`,i=localStorage.getItem(`businessId`)||`83c782a4aa626175e5d11afa`,a=localStorage.getItem(`businessUnitId`)||`63b57588fd768a839dbc0f63`,o=Number(localStorage.getItem(`userId`))||1;return It(t.b,`/joblist`,{method:`POST`,body:JSON.stringify({tenantId:r,businessId:i,businessUnitId:a,searchQuery:e,userId:o,candidateId:Array.isArray(n)?n:[n]})})}async function tn(e=``){return Lt(t.b,`/users/any${e?`?search=${encodeURIComponent(e)}`:``}`)}function nn(e){if(!e||typeof e!=`string`)return null;try{let t=e.split(`.`)[1];if(!t)return null;let n=t.replace(/-/g,`+`).replace(/_/g,`/`),r=n.padEnd(Math.ceil(n.length/4)*4,`=`);return JSON.parse(atob(r))}catch{return null}}function rn(){return nn(localStorage.getItem(`access_token`)||localStorage.getItem(`authToken`))??{}}function an(){let e=rn();return{userId:e.userId??e.user_id??e.USER_ID,roleId:e.roleId??e.role_id??e.ROLE_ID}}function on(){let e=an();return{userId:e.userId??localStorage.getItem(`userId`)??void 0,roleId:e.roleId??localStorage.getItem(`roleId`)??void 0}}function sn(e){let[t,n]=(0,r.useState)([]),[i,a]=(0,r.useState)(!1),[o,s]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if(!e)return;let t=!1;return a(!0),s(null),Bt(e).then(e=>{t||n(Array.isArray(e)?e:[])}).catch(e=>{t||s(e.message)}).finally(()=>{t||a(!1)}),()=>{t=!0}},[e]),{fields:t,loading:i,error:o}}function cn(e){let[t,n]=(0,r.useState)(null),[i,a]=(0,r.useState)(!1),[o,s]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if(!e)return;let t=!1;return a(!0),s(null),Vt(e).then(e=>{t||n(Array.isArray(e)?e:null)}).catch(e=>{t||s(e.message)}).finally(()=>{t||a(!1)}),()=>{t=!0}},[e]),{config:t,loading:i,error:o}}function ln(e){let[t,n]=(0,r.useState)([]),[i,a]=(0,r.useState)(!1),[o,s]=(0,r.useState)(null);return(0,r.useEffect)(()=>{if(!e)return;let t=!1;a(!0),s(null);let{userId:r,roleId:i}=on(),o=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};return Vt(e,{configType:`filter`,userId:r,roleId:i}).then(async t=>{let n=(Array.isArray(t)?t:t?.visibleFields??[]).filter(o);if(n.length>0)return n;let r=await Bt(e);return Array.isArray(r)?r.filter(o):[]}).then(e=>{t||n(Array.isArray(e)?e:[])}).catch(e=>{t||s(e.message)}).finally(()=>{t||a(!1)}),()=>{t=!0}},[e]),{fields:t,loading:i,error:o}}var un={campaign:`campaingns`,campaigns:`campaingns`};function dn(e,t){return e===t||`${e}s`===t||`${t}s`===e}function fn(e){try{let t=localStorage.getItem(`menu`);if(!t)return null;let n=JSON.parse(t);if(!Array.isArray(n))return null;let r=n.find(t=>{let n=String(t?.key??``).trim().toLowerCase();return n&&dn(e,n)});return r?String(r.key).trim().toLowerCase():null}catch{return null}}function pn(e){try{let t=localStorage.getItem(`menuPermission`);if(!t||!e)return{};let n=JSON.parse(t);if(!n||typeof n!=`object`)return{};let r=String(e).trim().toLowerCase(),i=un[r]??fn(r)??r;return n[Object.keys(n).find(e=>e.trim().toLowerCase()===i)]??{}}catch{return{}}}function mn(e){return e==null?!0:Number(e)!==0&&e!==!1&&e!==`0`}function hn(e){return(0,r.useMemo)(()=>{let t=pn(e);return{canView:mn(t.view),canAdd:mn(t.add),canEdit:mn(t.edit),canDelete:mn(t.delete)}},[e])}function gn(e){return[e?.key,e?.label,e?.name].filter(Boolean).join(` `).trim().toLowerCase()}function _n(e){let t=String(e?.permissionKey??``).trim().toLowerCase();if([`add`,`edit`,`delete`].includes(t))return t;if(e?.danger)return`delete`;let n=gn(e);return/(^|[\s_-])edit([\s_-]|$)/.test(n)?`edit`:/(^|[\s_-])(add|create)([\s_-]|$)/.test(n)?`add`:null}function vn(e,t){if(!t||typeof t!=`string`||!e)return;if(t in e)return e[t];let n=t.split(`.`).reduce((e,t)=>e?.[t],e);if(n!==void 0)return n;let r=t.split(`.`).pop();return r===t?void 0:e[r]}function yn(e){return String(e??``).trim().toLowerCase()}function bn(e){return e==null||e===``||Array.isArray(e)&&e.length===0}function xn(e,t,n){let r=e?.operator,i=r===`scope`?n:vn(t,e?.field),a=e?.value,o=yn(i),s=yn(a);return r===`eq`||r===`scope`?o===s:r===`ne`?o!==s:r===`isEmpty`?bn(i):r===`notEmpty`?!bn(i):r===`fieldEq`?o===yn(vn(t,e?.compareField)):r===`contains`?Array.isArray(i)?i.some(e=>yn(e).includes(s)):o.includes(s):!1}function Sn(e,t,n,r){let i=Array.isArray(n)?n:[];return i.length?i.some(n=>n?.isActive!==!1&&(n?.blockedActions??[]).map(String).includes(String(e))&&(n?.conditions??[]).every(e=>xn(e,t,r))):!1}function Cn(e,t,n,r){let i=(Array.isArray(n)?n:[]).find(n=>n?.isActive!==!1&&(n?.disabledActions??[]).map(String).includes(String(e))&&(n?.conditions??[]).every(e=>xn(e,t,r)));return i?i.description||`${e} is temporarily unavailable`:null}function wn(e,t,n,r){let i=Array.isArray(t)?t:[];return i.length?i.some(t=>Sn(e,t,n,r)):!1}var Tn=e.Nn({actionRules:()=>jn,actions:()=>Mn,columnActions:()=>Nn,default:()=>Pn,fields:()=>kn,rows:()=>En,synthesizeFieldsFromRows:()=>!0,tabField:()=>An,tabs:()=>On,total:()=>Dn,visibilityFlag:()=>null}),En={sources:[`payload`],paths:[`rows`,`records`,`items`,`list`,`data`]},Dn={sources:[`response`,`payload`],paths:[`total`,`count`,`totalCount`]},On={sources:[`response`,`payload`],paths:[`tabs`,`tabList`]},kn={sources:[`response`,`payload`],paths:[`fields`,`fieldConfig`]},An={sources:[`payload`],paths:[`tabField`]},jn={sources:[`payload`],paths:[`actionRules`]},Mn={sources:[`payload`],paths:[`actions`]},Nn={sources:[`payload`],paths:[`columnActions`]},Pn={rows:En,total:Dn,tabs:On,fields:kn,tabField:An,actionRules:jn,actions:Mn,columnActions:Nn,synthesizeFieldsFromRows:!0,visibilityFlag:null},Fn=Object.assign({"../../config/responseMappings/default.json":Tn});function In(e){if(!e)return null;for(let t of Object.keys(Fn))if(t.split(`/`).pop().replace(/\.json$/,``)===e){let e=Fn[t];return e.default??e}return null}function Ln(e){let t=In(e);return t?{...Pn,...t}:Pn}function Rn(e,t){return String(t).split(`.`).reduce((e,t)=>e?.[t],e)}function zn(e,t,n){if(!n)return;let r={response:e,payload:t};for(let e of n.sources)for(let t of n.paths){let n=Rn(r[e],t);if(n!==void 0)return n}}function Bn(...e){for(let t of e){let e=Number(t);if(Number.isFinite(e))return e}}function Vn(e){return e.replace(/([A-Z])/g,` $1`).replace(/^./,e=>e.toUpperCase())}var Hn=/token|password|passwd|secret|apikey|api_key|auth|credential|salary|ssn|ein\b/i;function Un(e){return Hn.test(e)}function Wn(e){let t=e[0];return t?Object.keys(t).filter(e=>!e.startsWith(`_`)&&!Un(e)&&typeof t[e]!=`object`).map(e=>({value:e,field:e,label:Vn(e),isVisible:!0})):[]}function Gn(e,t){return t?e.filter(e=>e[t]===1||e[t]===!0||e[t]===void 0).map(e=>({...e,isVisible:!0})):e}var Kn=5e3,qn=300,Jn=100,Yn=100,Xn=300,Zn=100;function Qn(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function $n(e,t){return Array.isArray(e)?e.slice(0,t):[]}function er(e,t){return $n(e,t).filter(Qn)}function tr(e,t){return er(e,t).filter(e=>typeof e.value==`string`||typeof e.field==`string`)}var nr=/^\s*(javascript|data|vbscript|file):/i,rr=[`url`,`href`,`routeUrl`,`routeURL`];function ir(e){let t={...e};for(let e of rr)typeof t[e]==`string`&&nr.test(t[e])&&delete t[e];return t}function ar(e,t){return er(e,t).map(ir)}function or(e,t){return e.flatMap(e=>{let n=Rn(e,t);return n==null?[]:(Array.isArray(n)?n:[n]).filter(e=>e!=null).map(e=>Qn(e)?e:{value:e})})}function sr(t,n){let{baseModule:r,nestedPath:i}=e.Dn(n),a=Ln(r),o=t?.data??t,s=$n(Array.isArray(o)?o:zn(t,o,a.rows),Kn);i&&(s=$n(or(s,i),Kn),console.log(`[mapListResponse] module "${r}" → nested path "${i}": ${s.length} row(s)`));let c=zn(t,o,a.total),l=Qn(c)?Bn(c.total,c.searchCount,c.count):c,u=Number(l??s.length)||0,d=er(zn(t,o,a.tabs),Jn),f=i?[]:zn(t,o,a.fields),p=Array.isArray(f)?f:[];p.length===0&&(i||a.synthesizeFieldsFromRows)&&(p=Wn(s)),p=tr(p,qn),a.visibilityFlag&&(p=Gn(p,a.visibilityFlag));let m=zn(t,o,a.tabField);return{rows:s,total:u,tabs:d,fields:p,tabField:typeof m==`string`?m:``,actionRules:ar(zn(t,o,a.actionRules),Xn),actions:ar(zn(t,o,a.actions),Yn),columnActions:ar(zn(t,o,a.columnActions),Zn)}}var cr={jobs:{module:`jobs`,keys:[`jobRecruitmentStatus`,`jobStatus`],dateField:`createdAt`},candidates:{module:`candidates`,keys:[`candidateSummary`],items:[{key:`created`,label:`Created`,collection:`candidates`,countType:`documents`,dateField:`createdAt`},{key:`submitted`,label:`Submitted`,collection:`submissions`,countType:`distinct`,distinctField:`applicantId`,dateField:`submittedAt`},{key:`onboarded`,label:`Onboarded`,collection:`onboarding`,countType:`distinct`,distinctField:`candidateId`,dateField:`onboardingActivity.activityTime`,filters:{onboardingObStage:[`Completed`]}}]},submissions:{module:`submissions`,keys:[`internalSubmissionStatus.internalSubmissionStatusText`,`clientSubmissionStatus.clientSubmissionStatusText`],dateField:`submittedAt`}},lr={jobSummary:[{label:`Open`,field:`jobStatus`,keys:[`open`,`active`]},{label:`Partially Fulfilled`,field:`jobRecruitmentStatus`,keys:[`partially fulfilled`,`partiallyFulfilled`]},{label:`Fulfilled`,field:`jobRecruitmentStatus`,keys:[`fulfilled`]},{label:`In-active / Closed`,field:`jobStatus`,keys:[`closed`,`inactive`,`in-active`]}]};function ur(e){return String(e??``).trim().toLowerCase()}function dr(e,t){return{label:e,count:Number.isFinite(Number(t))?Number(t):0}}function fr(e){return Array.isArray(e?.counts)?e.counts:[]}function pr(e,t){return e?.key===t?e:(Array.isArray(e?.fields)?e.fields:[]).find(e=>e?.key===t)??{}}function mr(e,t){let n=Array.isArray(t)?t:[t],r=Array.isArray(e?.counts)?e.counts:[],i=n.filter(Boolean).map(ur),a=r.find(e=>[e?.key,e?.label].map(ur).some(e=>i.includes(e)));if(a)return Number(a.count)||0;for(let t of n){let n=e?.[t];if(Number.isFinite(Number(n)))return Number(n)}return 0}function hr(e,t){let n=(Array.isArray(t)?t:[t].filter(Boolean)).map(ur);return fr(e).reduce((e,t)=>{let r=ur(t?.key??t?.label);return n.includes(r)?e+(Number(t?.count)||0):e},0)}function gr(e){let t=ur(e);return t.includes(`candidate`)?cr.candidates:t.includes(`submission`)?cr.submissions:t.includes(`job`)?cr.jobs:null}function _r(e){return lr[e]??null}function vr(e){return Array.isArray(e?.counts)||e?.openCount!==void 0||e?.myAssignedCount!==void 0?[dr(`Open`,mr(e,[`openCount`,`open`])),dr(`Partially Fulfilled`,mr(e,[`partiallyFulfilledCount`,`partially fulfilled`])),dr(`Fulfilled`,mr(e,[`fulfilledCount`,`fulfilled`])),dr(`In-active / Closed`,mr(e,[`closedCount`,`closed`,`inactive`,`in active`]))]:(_r(`jobSummary`)??[]).map(t=>{let n=pr(e,t.field);return dr(t.label,hr(n,t.keys??[]))})}function yr(e){return fr(e).map(({label:e,key:t,count:n})=>dr(e||t,n))}function br(e){let t=Array.isArray(e?.fields)?e.fields:[],n=t.find(e=>e.key===`clientSubmissionStatus.clientSubmissionStatusText`)??{},r=t.find(e=>e.key===`internalSubmissionStatus.internalSubmissionStatusText`)??{},i=e=>Array.isArray(e.counts)?e.counts.map(({label:e,count:t})=>dr(e,t)):[],a=Number(n.total)||0,o=Number(r.total)||0;return{total:a+o,clientCount:a,internalCount:o,clientBreakdown:i(n),internalBreakdown:i(r)}}var{RangePicker:xr}=i.DatePicker,Sr=[{value:`today`,label:`Today`},{value:`yesterday`,label:`Yesterday`},{value:`last-7-days`,label:`Last 7 Days`},{value:`last-30-days`,label:`Last 30 Days`},{value:`this-month`,label:`This Month`},{value:`last-month`,label:`Last Month`},{value:`custom-range`,label:`Custom Range`}];function Cr(e){return e.closest(`.view-summary-card`)??document.body}function wr(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,`0`)}-${String(e.getDate()).padStart(2,`0`)}`}function Tr(e,t){let n=new Date(e);return n.setDate(n.getDate()+t),n}function Er(e){let t=new Date,n=new Date(t.getFullYear(),t.getMonth(),1),r=new Date(t.getFullYear(),t.getMonth()-1,1),i=new Date(t.getFullYear(),t.getMonth(),0);if(e===`today`)return{startDate:t,endDate:t};if(e===`yesterday`){let e=Tr(t,-1);return{startDate:e,endDate:e}}return e===`last-30-days`?{startDate:Tr(t,-29),endDate:t}:e===`this-month`?{startDate:n,endDate:t}:e===`last-month`?{startDate:r,endDate:i}:{startDate:Tr(t,-6),endDate:t}}function Dr(e,t){if(e===`custom-range`){let[e,n]=t??[];return!e||!n?null:{startDate:e.format(`YYYY-MM-DD`),endDate:n.format(`YYYY-MM-DD`)}}let n=Er(e);return{startDate:wr(n.startDate),endDate:wr(n.endDate)}}function Or(e){return String(e??``).trim().toLowerCase()}function kr(e){return String(e??``).replace(/[-_]+/g,` `).replace(/\s+/g,` `).trim().replace(/\b\w/g,e=>e.toUpperCase())}function Ar(e){let t=Or(e);return t.includes(`candidate`)?`Candidate`:t.includes(`submission`)?`Submission`:t.includes(`job`)?`Job`:kr(e||`List`)}function jr(e){return e?.data??e}function Mr(e,t){let n={module:e.module,dateRange:{startDate:t.startDate,endDate:t.endDate}};return e.summary&&(n.summary=e.summary),Array.isArray(e.items)&&e.items.length>0&&(n.items=e.items),Array.isArray(e.keys)&&e.keys.length>0&&(n.keys=e.keys),e.dateField&&(n.dateRange.key=e.dateField),n}function Nr({moduleName:t,open:n,onClose:s}){let c=Ar(t),l=Or(t),u=l.includes(`submission`),f=l.includes(`job`),p=l.includes(`candidate`),m=gr(t),h=u?`last-30-days`:`last-7-days`,[g,_]=(0,r.useState)(h),[v,y]=(0,r.useState)(null),[b,x]=(0,r.useState)(null),[S,C]=(0,r.useState)(null),[w,T]=(0,r.useState)(null),[E,D]=(0,r.useState)(``),O=vr(b),k=yr(S),A=br(w),j=Math.max(A.total,1),M=Math.round(A.internalCount/j*100),N=Math.max(0,100-M),P=g===`custom-range`;return(0,r.useEffect)(()=>{n&&(_(h),y(null))},[h,n]),(0,r.useEffect)(()=>{if(!n||!m)return;let e=Dr(g,v);if(!e)return;let t=!1;return D(``),d(Mr(m,e)).then(e=>{if(t)return;let n=jr(e);if(f){x(n),C(null),T(null);return}if(p){C(n),x(null),T(null);return}T(n),x(null),C(null)}).catch(e=>{t||(x(null),C(null),T(null),D(e.message||`Could not load summary`))}),()=>{t=!0}},[v,p,f,u,n,g,m]),n?(0,o.jsxs)(`div`,{className:`view-summary-layer`,role:`presentation`,children:[(0,o.jsx)(`div`,{className:`view-summary-scrim`}),(0,o.jsxs)(i.Card,{"aria-label":`${c} summary`,bordered:!1,className:`view-summary-card view-summary-card--${u?`submission`:`simple`}`,children:[(0,o.jsx)(i.Button,{"aria-label":`Close summary`,className:`view-summary-close`,icon:(0,o.jsx)(a.CloseOutlined,{}),type:`text`,onClick:s}),(0,o.jsxs)(`header`,{className:`view-summary-header`,children:[(0,o.jsxs)(e.An,{className:`view-summary-title`,color:`primary`,size:`md`,tag:`h2`,variant:`h2`,weight:`medium`,children:[c,` Summary`]}),(0,o.jsx)(i.Select,{"aria-label":`Summary date range`,className:`view-summary-range`,popupClassName:`view-summary-range-dropdown`,getPopupContainer:Cr,popupMatchSelectWidth:!1,value:g,options:Sr,onChange:e=>{_(e),e!==`custom-range`&&y(null)}})]}),u?(0,o.jsxs)(o.Fragment,{children:[P&&(0,o.jsx)(xr,{allowClear:!0,className:`view-summary-custom-range view-summary-custom-range--full`,format:`MMM DD, YYYY`,getPopupContainer:Cr,placeholder:[`Start date`,`End date`],value:v,onChange:y}),(0,o.jsxs)(`section`,{className:`view-summary-submission-top`,"aria-label":`Submission totals`,children:[(0,o.jsxs)(`div`,{className:`view-summary-donut`,style:{"--summary-internal":`${M}%`,"--summary-client":`${N}%`},children:[(0,o.jsx)(e.An,{color:`success`,size:`2xl`,tag:`span`,variant:`metric`,weight:`semibold`,children:A.total}),(0,o.jsx)(e.An,{color:`success`,size:`xs`,tag:`span`,variant:`caption`,weight:`semibold`,children:`Total`})]}),(0,o.jsxs)(`div`,{className:`view-summary-legend`,children:[(0,o.jsxs)(e.An,{color:`muted`,size:`sm`,tag:`span`,variant:`body`,weight:`regular`,children:[(0,o.jsx)(`i`,{className:`view-summary-dot view-summary-dot--internal`}),`Internal`,(0,o.jsx)(e.An,{color:`primary`,size:`sm`,tag:`b`,variant:`body`,weight:`regular`,children:A.internalCount})]}),(0,o.jsxs)(e.An,{color:`muted`,size:`sm`,tag:`span`,variant:`body`,weight:`regular`,children:[(0,o.jsx)(`i`,{className:`view-summary-dot view-summary-dot--client`}),`Client`,(0,o.jsx)(e.An,{color:`primary`,size:`sm`,tag:`b`,variant:`body`,weight:`regular`,children:A.clientCount})]})]})]}),(0,o.jsx)(`div`,{className:`view-summary-divider`}),(0,o.jsxs)(`section`,{className:`view-summary-breakdown`,children:[(0,o.jsx)(e.An,{className:`view-summary-subtitle`,color:`primary`,size:`md`,tag:`h3`,variant:`h4`,weight:`medium`,children:`Internal Breakdown`}),A.internalBreakdown.length>0?A.internalBreakdown.map(t=>(0,o.jsxs)(`div`,{className:`view-summary-row view-summary-row--bullet`,children:[(0,o.jsxs)(e.An,{color:`muted`,size:`sm`,tag:`span`,variant:`body`,weight:`regular`,children:[(0,o.jsx)(`i`,{className:`view-summary-dot view-summary-dot--internal`}),t.label]}),(0,o.jsx)(e.An,{color:`primary`,size:`sm`,tag:`b`,variant:`body`,weight:`regular`,children:t.count})]},`internal-${t.label}`)):(0,o.jsx)(e.An,{color:`muted`,size:`sm`,tag:`p`,variant:`body`,weight:`regular`,children:`No internal data found`}),(0,o.jsx)(e.An,{className:`view-summary-subtitle`,color:`primary`,size:`md`,tag:`h3`,variant:`h4`,weight:`medium`,children:`Client Breakdown`}),A.clientBreakdown.length>0?A.clientBreakdown.map(t=>(0,o.jsxs)(`div`,{className:`view-summary-row view-summary-row--bullet`,children:[(0,o.jsxs)(e.An,{color:`muted`,size:`sm`,tag:`span`,variant:`body`,weight:`regular`,children:[(0,o.jsx)(`i`,{className:`view-summary-dot view-summary-dot--client`}),t.label]}),(0,o.jsx)(e.An,{color:`primary`,size:`sm`,tag:`b`,variant:`body`,weight:`regular`,children:t.count})]},`client-${t.label}`)):(0,o.jsx)(e.An,{color:`muted`,size:`sm`,tag:`p`,variant:`body`,weight:`regular`,children:`No client data found`}),E&&(0,o.jsx)(e.An,{color:`danger`,size:`xs`,tag:`p`,variant:`caption`,children:E})]})]}):(0,o.jsxs)(`section`,{className:`view-summary-breakdown`,children:[(0,o.jsxs)(`div`,{className:`view-summary-section-head`,children:[(0,o.jsxs)(e.An,{className:`view-summary-section-title`,color:`primary`,size:`md`,tag:`h3`,variant:`h3`,weight:`medium`,children:[`All `,c]}),P&&(0,o.jsx)(xr,{allowClear:!0,className:`view-summary-custom-range`,format:`MMM DD, YYYY`,getPopupContainer:Cr,placeholder:[`Start date`,`End date`],value:v,onChange:y})]}),(0,o.jsx)(`div`,{className:`view-summary-divider`}),l.includes(`job`)&&(0,o.jsx)(e.An,{className:`view-summary-breakdown-title`,color:`primary`,size:`sm`,tag:`h4`,variant:`h4`,weight:`regular`,children:`Breakdown`}),(p?k:O).map(t=>(0,o.jsxs)(`div`,{className:`view-summary-row`,children:[(0,o.jsx)(e.An,{color:`muted`,size:`sm`,tag:`span`,variant:`body`,children:t.label}),(0,o.jsx)(e.An,{color:`primary`,size:`sm`,tag:`b`,variant:`body`,children:t.count})]},t.label)),E&&(0,o.jsx)(e.An,{color:`danger`,size:`xs`,tag:`p`,variant:`caption`,children:E})]})]})]}):null}function Pr({children:e,className:t=``,icon:n,to:r,variant:a=`default`,...c}){let l=(0,o.jsx)(i.Button,{className:`app-button app-button--${a} ${t}`.trim(),icon:n,...c,children:e});return r?(0,o.jsx)(s.Link,{className:`app-button-link`,to:r,children:l}):l}function Fr(e){let[t,n]=(0,r.useState)({}),[i,a]=(0,r.useState)(new Set),o=(0,r.useRef)({}),s=(e,t)=>{a(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})};return{valuesByField:t,loadingFields:i,fetchValues:(0,r.useCallback)((t,r=``,i={})=>{if(!t||!e)return;o.current[t]&&clearTimeout(o.current[t]);let a=r?300:0;o.current[t]=setTimeout(async()=>{s(t,!0);try{let a=await Zt(e,t,r,i),o=Array.isArray(a)?a.map(e=>({label:String(e.label),value:e.value})):[];n(e=>({...e,[t]:o}))}catch{}finally{s(t,!1)}},a)},[e])}}var Ir=[{label:`Last 7 days`,getDates:()=>[(0,c.default)().subtract(6,`day`),(0,c.default)()]},{label:`This month`,getDates:()=>[(0,c.default)().startOf(`month`),(0,c.default)()]},{label:`Overdue`,getDates:()=>[null,(0,c.default)().subtract(1,`day`)]}];function Lr({value:e,onChange:t,disabled:n}){return(0,o.jsxs)(i.Flex,{vertical:!0,gap:4,children:[(0,o.jsx)(i.DatePicker.RangePicker,{value:e,onChange:t,disabled:n,style:{width:`100%`},allowEmpty:[!0,!0],disabledDate:e=>e&&e.isAfter((0,c.default)(),`day`)}),!n&&(0,o.jsx)(i.Space,{size:4,wrap:!0,children:Ir.map(({label:e,getDates:n})=>(0,o.jsx)(i.Tag,{className:`filter-date-shortcut`,onClick:()=>t?.(n()),children:e},e))})]})}var Rr=[{label:`AND`,value:`and`},{label:`OR`,value:`or`},{label:`Is Empty`,value:`isEmpty`},{label:`Not Empty`,value:`notEmpty`}],zr=[{label:`Yes`,value:`true`},{label:`No`,value:`false`}];function Br({value:e,onChange:t,disabled:n}){let[r,a]=Array.isArray(e)?e:[void 0,void 0];return(0,o.jsxs)(i.Flex,{gap:8,children:[(0,o.jsx)(i.InputNumber,{disabled:n,placeholder:`Min`,value:r,onChange:e=>t?.([e,a]),style:{flex:1}}),(0,o.jsx)(i.InputNumber,{disabled:n,placeholder:`Max`,value:a,onChange:e=>t?.([r,e]),style:{flex:1}})]})}var Vr={operator:`and`,field:void 0,values:[]};function Hr({filterInputType:e,fieldType:t,disabled:n,loading:r,valueOptions:a,onSearch:s,onOpen:c}){let l=e||(t===`boolean`?`boolean`:null)||(t===`date`?`datepicker`:null)||(t===`number`?`number-range`:null)||`dropdown`;return l===`boolean`?(0,o.jsx)(i.Select,{allowClear:!0,disabled:n,mode:`multiple`,options:zr,placeholder:`Select value`}):l===`text`?(0,o.jsx)(i.Input,{disabled:n,placeholder:`Type keyword...`,allowClear:!0}):l===`datepicker`?(0,o.jsx)(Lr,{disabled:n}):l===`number-range`?(0,o.jsx)(Br,{disabled:n}):l===`checkbox`?(0,o.jsx)(i.Spin,{spinning:r,children:(0,o.jsx)(i.Checkbox.Group,{disabled:n,options:a,style:{display:`flex`,flexWrap:`wrap`,gap:`4px 16px`}})}):l===`radio`?(0,o.jsx)(i.Spin,{spinning:r,children:(0,o.jsx)(i.Radio.Group,{disabled:n,options:a,style:{display:`flex`,flexWrap:`wrap`,gap:`4px 16px`}})}):(0,o.jsx)(i.Select,{allowClear:!0,disabled:n,loading:r,mode:`multiple`,options:a,placeholder:n?`Select field first`:`Select values`,showSearch:!0,filterOption:!1,onSearch:s,onDropdownVisibleChange:c})}function Ur(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function Wr(e){return e.value??e.field??e.fieldName??e.name??e.label}function Gr(e,t){let n=t.find(t=>t.value===e.field),r=e.filterInputType??n?.filterInputType,i=r===`datepicker`||!r&&n?.type===`date`,a=r===`text`,o=e.values??[];return a?o=e.value??``:i&&(o=[e.from?(0,c.default)(e.from):null,e.to?(0,c.default)(e.to):null]),{field:e.field,operator:e.operator??`and`,values:o,locked:n?.isDefaultFilter??!1}}function Kr({moduleName:t,open:n=!1,filters:s=[],onClose:c,onApply:l,onReset:u}){let[d]=i.Form.useForm(),f=i.Form.useWatch(`filters`,d)??[],{fields:p,loading:m,error:h}=ln(n?t:null),g=(0,r.useMemo)(()=>(p??[]).map(e=>({label:Ur(e),value:Wr(e),type:e.type,filterInputType:e.filterInputType,dataSource:e.dataSource,groupName:e.groupName,lookup:e.lookup??null,isDefaultFilter:e.isDefaultFilter===1||e.isDefaultFilter===`1`||e.isDefaultFilter===!0})).filter(e=>e.label&&e.value),[p]),_=(0,r.useMemo)(()=>g.filter(e=>e.isDefaultFilter),[g]),v=(0,r.useMemo)(()=>_.map(e=>String(e.value)).sort().join(`|`),[_]),y=g,{valuesByField:b,loadingFields:x,fetchValues:S}=Fr(t);function C(e){let t=g.find(t=>t.value===e),n=t?.filterInputType;!e||n===`datepicker`||n===`number-range`||n===`text`||!n&&[`boolean`,`date`,`number`].includes(t?.type)||S(e,``,{dataSource:t?.lookup?.collection?`lookup`:t?.dataSource,groupName:t?.groupName,lookup:t?.lookup})}function w(){return _.length>0?_.map(e=>({operator:`and`,field:e.value,values:[],locked:e.isDefaultFilter})):[Vr]}function T(e=[]){let t=e.filter(e=>e?.field),n=new Set(t.map(e=>String(e.field))),r=[..._.filter(e=>!n.has(String(e.value))).map(e=>({operator:`and`,field:e.value,values:[],locked:!0})),...t].map(e=>({...e,locked:_.some(t=>String(t.value)===String(e.field))}));return r.length>0?r:[Vr]}let E=(0,r.useRef)(!1),D=(0,r.useRef)(s);(0,r.useEffect)(()=>{if(s===D.current)return;if(D.current=s,E.current){E.current=!1;return}let e=T((s??[]).filter(e=>e.field).map(e=>Gr(e,g)));d.setFieldsValue({filters:e}),e.forEach(e=>C(e.field))},[s,g]);let O=(0,r.useRef)(!1),k=(0,r.useRef)(``),A=(0,r.useRef)(t),j=(0,r.useRef)(!1);(0,r.useEffect)(()=>{t!==A.current&&(A.current=t,O.current=!1,k.current=``,j.current=!1)},[t]),(0,r.useEffect)(()=>{if(!n)return;let e=k.current!==v;if(O.current&&!e)return;let t=j.current&&!m,r=!m&&g.length>0;if(j.current=m,!t&&!r)return;let i=O.current;O.current=!0,k.current=v;let a=d.getFieldValue(`filters`)??[],o=T(i||a.length>0?a:w());d.setFieldsValue({filters:o}),o.forEach(e=>C(e.field))},[n,m,g,v]);function M(){E.current=!0;let e=w();d.setFieldsValue({filters:e}),e.forEach(e=>C(e.field)),l?.({moduleName:t,filters:[]}),u?.(),c?.()}function N(){E.current=!0;let e=(d.getFieldsValue().filters??[]).filter(e=>!P(e)).map(e=>{let t={...e};delete t.locked;let n=g.find(e=>e.value===t.field),r=n?.label??t.field,i=n?.filterInputType,a=i===`datepicker`||n?.type===`date`,o=i===`number-range`||!i&&n?.type===`number`,s=i===`text`;if(a){let[e,n]=Array.isArray(t.values)?t.values:[],a=e=>e?typeof e.format==`function`?e.format(`YYYY-MM-DD`):typeof e.toISOString==`function`||e instanceof Date?e.toISOString().substring(0,10):null:null,o=a(e),s=a(n);return{...t,values:[o,s].filter(Boolean),from:o??void 0,to:s??void 0,fieldLabel:r,filterInputType:i}}if(o){let[e,n]=Array.isArray(t.values)?t.values:[];return{...t,values:[e,n].filter(e=>e!=null),from:e==null?void 0:String(e),to:n==null?void 0:String(n),fieldLabel:r,filterInputType:i}}if(s){let e=typeof t.values==`string`?t.values.trim():``;return{...t,value:e,values:[],fieldLabel:r,filterInputType:i}}return{...t,values:t.values??[],fieldLabel:r,filterInputType:i}});l?.({moduleName:t,filters:e}),c?.()}function P(e){if(!e?.field)return!0;if(e.operator===`isEmpty`||e.operator===`notEmpty`)return!1;let{values:t}=e;return typeof t==`string`?t.trim()===``:Array.isArray(t)?t.length===0||t.every(e=>e==null||e===``):!0}let F=f.length===0||f.every(P);function I(e,t){let n=d.getFieldValue(`filters`)??[];d.setFieldValue(`filters`,n.map((t,n)=>n===e?{...t,values:[]}:t));let r=g.find(e=>e.value===t),i=r?.filterInputType;!t||i===`datepicker`||i===`number-range`||i===`text`||!i&&[`boolean`,`date`,`number`].includes(r?.type)||S(t,``,{dataSource:r?.lookup?.collection?`lookup`:r?.dataSource,groupName:r?.groupName,lookup:r?.lookup})}return(0,o.jsxs)(i.Drawer,{title:(0,o.jsx)(e.An,{variant:`card-title`,color:`primary`,children:`Filters`}),placement:`right`,width:720,open:n,onClose:c,rootClassName:`dynamic-field-filter`,maskClosable:!1,footer:(0,o.jsxs)(i.Space,{className:`dynamic-field-filter__footer`,children:[(0,o.jsx)(Pr,{onClick:M,children:`Reset`}),(0,o.jsx)(Pr,{variant:`primary`,onClick:N,disabled:F,children:`Apply`})]}),children:[h&&(0,o.jsx)(i.Alert,{type:`error`,message:`Could not load filter fields`,description:h,style:{marginBottom:16},showIcon:!0}),(0,o.jsx)(i.Spin,{spinning:m,tip:`Loading fields…`,children:(0,o.jsx)(i.Form,{form:d,layout:`vertical`,className:`dynamic-field-filter__form`,initialValues:{filters:[Vr]},children:(0,o.jsx)(i.Form.List,{name:`filters`,children:(t,{add:n,remove:r})=>(0,o.jsxs)(i.Space,{direction:`vertical`,className:`dynamic-field-filter__rows`,children:[t.map((n,s)=>{let c=f[s]?.field,l=f[s]?.operator,u=g.find(e=>e.value===c),d=u?.isDefaultFilter===!0,p=!c||l===`isEmpty`||l===`notEmpty`,h=u?.type??`text`,_=u?.filterInputType,v=b[c]??[],C=x.has(c),w=new Set(f.filter((e,t)=>t!==s).map(e=>e?.field).filter(Boolean).map(String)),T=d?g.filter(e=>e.value===c):y.filter(e=>!w.has(String(e.value)));return(0,o.jsxs)(i.Space,{direction:`vertical`,className:`dynamic-field-filter__row`,children:[t.length>1&&!d&&(0,o.jsx)(Pr,{variant:`danger`,htmlType:`button`,icon:(0,o.jsx)(a.DeleteOutlined,{}),"aria-label":`Remove filter row`,className:`dynamic-field-filter__remove`,onClick:()=>r(n.name)}),s>0&&(0,o.jsx)(i.Flex,{justify:`center`,children:(0,o.jsx)(i.Form.Item,{name:[n.name,`operator`],rules:[{required:!0,message:`Select condition`}],className:`dynamic-field-filter__operator`,children:(0,o.jsx)(i.Select,{options:Rr,placeholder:`Condition`})})}),(0,o.jsxs)(i.Flex,{align:`end`,gap:`middle`,wrap:!0,children:[(0,o.jsx)(i.Form.Item,{label:(0,o.jsx)(e.An,{variant:`label`,color:`secondary`,children:`Field`}),style:{flex:1,minWidth:220},children:d?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.An,{variant:`body`,className:`dynamic-field-filter__locked-field`,children:u?.label??c}),(0,o.jsx)(i.Form.Item,{name:[n.name,`field`],noStyle:!0,children:(0,o.jsx)(i.Input,{type:`hidden`})})]}):(0,o.jsx)(i.Form.Item,{name:[n.name,`field`],rules:[{required:!0,message:`Select field`}],noStyle:!0,children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,placeholder:`Select field`,options:T,optionFilterProp:`label`,loading:m,onChange:e=>I(n.name,e)})})}),(0,o.jsx)(i.Form.Item,{label:(0,o.jsx)(e.An,{variant:`label`,color:`secondary`,children:`Values`}),name:[n.name,`values`],style:{flex:1,minWidth:220},children:Hr({filterInputType:_,fieldType:h,disabled:p,loading:C,valueOptions:v,onSearch:e=>{c&&S(c,e,{dataSource:u?.lookup?.collection?`lookup`:u?.dataSource,groupName:u?.groupName,lookup:u?.lookup})},onOpen:e=>{e&&c&&S(c,``,{dataSource:u?.lookup?.collection?`lookup`:u?.dataSource,groupName:u?.groupName,lookup:u?.lookup})}})})]})]},n.key)}),(0,o.jsx)(Pr,{htmlType:`button`,variant:`soft`,icon:(0,o.jsx)(a.PlusOutlined,{}),disabled:y.length>0&&f.filter(e=>e?.field).length>=y.length,onClick:()=>n(Vr),children:`Add Row`})]})})})})]})}var qr=`data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M6.00035%204.69941C4.74567%204.69941%203.72701%205.71807%203.72701%206.97275C3.72701%208.22745%204.74567%209.24609%206.00035%209.24609C7.25503%209.24609%208.2737%208.22745%208.2737%206.97275C8.2737%205.71807%207.25503%204.69941%206.00035%204.69941ZM6.00035%205.87128C6.60827%205.87128%207.10182%206.36485%207.10182%206.97275C7.10182%207.58067%206.60827%208.07422%206.00035%208.07422C5.39243%208.07422%204.89888%207.58067%204.89888%206.97275C4.89888%206.36485%205.39243%205.87128%206.00035%205.87128ZM2.06843%206.41445C2.85434%204.9331%204.16742%203.92578%206.00035%203.92578C7.83328%203.92578%209.14637%204.9331%209.93227%206.41445C10.0838%206.70013%2010.4388%206.80902%2010.7245%206.65745C11.0102%206.50587%2011.1191%206.15091%2010.9675%205.86523C9.97758%203.9994%208.30902%202.75391%206.00035%202.75391C3.69169%202.75391%202.02312%203.9994%201.03322%205.86523C0.881648%206.15091%200.990538%206.50587%201.27619%206.65745C1.56187%206.80902%201.91686%206.70013%202.06843%206.41445Z'%20fill='%23586888'/%3e%3c/svg%3e`,Jr=`data:image/svg+xml,%3csvg%20width='14'%20height='14'%20viewBox='0%200%2014%2014'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cmask%20id='path-1-inside-1_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-1-inside-1_8856_23533)'/%3e%3cmask%20id='path-2-inside-2_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-2-inside-2_8856_23533)'/%3e%3cline%20x1='7.375'%20y1='2.93555'%20x2='12.225'%20y2='2.93555'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='5.83398'%20x2='12.225'%20y2='5.83398'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='8.87305'%20x2='12.225'%20y2='8.87305'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='11.7227'%20x2='12.225'%20y2='11.7227'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3c/svg%3e`,{Text:Yr}=i.Typography;function Xr(e){return Qr(e?.label,e?.fieldLabel,e?.name,e?.fieldName,e?.value,e?.field)}function Zr(e){return Qr(e?.value,e?.field,e?.fieldName,e?.name,e?.label)}function Qr(...e){return e.find(e=>e!=null&&String(e).trim()!==``)}function $r(e,t){if(!(!t||typeof t!=`string`))return t.split(`.`).reduce((e,t)=>e?.[t],e)}function ei(e,t){return t===`id`?e?.id??e?._id:e?.[t]??$r(e,t)}function ti(e){if(Array.isArray(e))return e.some(ti);if(e==null)return!1;let t=String(e).trim().toLowerCase();return t?![`all`,`internal`].includes(t):!1}function ni(e){let t=Object.keys(e??{}).find(e=>/^customFields\.[^.]*profiledata\./i.test(e)&&!/^customFields\.internalprofiledata\./i.test(e));if(t)return t.replace(/^customFields\./i,``).replace(/profiledata\..*$/i,``);let n=e?.customFields;if(!n||typeof n!=`object`)return``;let r=Object.keys(n).find(e=>/profiledata$/i.test(e)&&!/^internalprofiledata$/i.test(e)&&n[e]&&typeof n[e]==`object`);return r?r.replace(/profiledata$/i,``):``}function ri(e){if(typeof e?.isVisible==`boolean`&&!e.isVisible||typeof e?.isVisible==`string`&&e.isVisible.toLowerCase()===`false`)return!1;let t=Zr(e);return!t||typeof t!=`string`?!1:/^customFields\.[^.]*profiledata\./i.test(t)&&!/^customFields\.internalprofiledata\./i.test(t)}function ii(e){return[e?.sourceType,e?.profileSource,e?.selectedSource,e?.customFields?.sourceType,e?.customFields?.profileSource].some(ti)||!!ni(e)}function ai(e,t){let n=ei(e,t);return n==null||n===``?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}function oi(e){if(!e)return``;let t=e instanceof Date?e:new Date(e);if(Number.isNaN(t.getTime()))return String(e);let n=new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`2-digit`,year:`numeric`,hour:`2-digit`,minute:`2-digit`,hour12:!0}).formatToParts(t),r=e=>n.find(t=>t.type===e)?.value??``;return`${`${r(`month`)} ${r(`day`)},${r(`year`)}`} | ${`${r(`hour`)}:${r(`minute`)} ${r(`dayPeriod`)}`}`}function si(e){return String(e||`U`).trim().charAt(0).toUpperCase()||`U`}function ci(e,t){let n=t.find(t=>{let n=ei(e,t);return n!=null&&n!==``});return n?ai(e,n):``}function li(e,t){let n=ei(t,e.key),r=Array.isArray(n)?n:n?[n]:[],i=e.renderConfig??{},a=[i.nameField,i.labelField,`recruiterName`,`name`,`fullName`,`displayName`,`userName`,`email`,`recruiterEmail`].filter(Boolean),o=[i.metaField,i.dateField,i.assignedDateField,`assignedDateTime`,`assignedDate`,`createdAt`].filter(Boolean);return r.map((e,t)=>{let n=typeof e==`object`&&e?e:{value:e},r=ci(n,a)||String(e||`User`),i=ci(n,o);return{key:ci(n,[`recruiterId`,`id`,`_id`,`email`,`recruiterEmail`])||`${r}-${t}`,name:r,initial:si(r),meta:oi(i)}})}function ui({item:e}){return(0,o.jsxs)(`div`,{className:`job-avatar-tooltip`,children:[(0,o.jsx)(`div`,{className:`job-avatar-tooltip-name`,children:e.name}),e.meta&&(0,o.jsx)(`div`,{className:`job-avatar-tooltip-meta`,children:e.meta})]})}function di({items:e}){return(0,o.jsx)(`div`,{className:`job-avatar-more-tooltip`,children:e.map(e=>(0,o.jsx)(ui,{item:e},e.key))})}function fi(e){return typeof e==`boolean`?e:typeof e==`string`?e.toLowerCase()===`true`:!!e}function pi(e){return e==null?``:Array.isArray(e)?e.join(`,`):typeof e==`object`?Object.values(e).join(` `):String(e)}function mi(e,t){return e?String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(pi(ei(t,n)))).replace(/:([A-Za-z_][\w.]*)/g,(e,n)=>encodeURIComponent(pi(ei(t,n)))):``}function hi(e){return/^(https?:\/\/|\/)/i.test(String(e))}function gi(e,t){let n=String(e??``).trim().toLowerCase();if(n===`blank`||n===`_blank`)return`_blank`;if(n===`self`||n===`_self`)return`_self`;if(n)return e;if(/^https?:\/\//i.test(String(t)))return`_blank`}function _i(e){return/^https?:\/\//i.test(String(e))}function vi(e,t,n){let r=e.routeUrl??e.routeURL??e.linkTemplate??e.linkUrl??e.href??e.url??e.action;return r?mi(r,t):hi(n)?String(n):``}function yi(e,t){if(!t||t.length<3||!e||typeof e!=`string`||e===`-`)return e;let n=e.toLowerCase(),r=t.toLowerCase(),i=[],a=0;for(;a<=e.length;){let s=n.indexOf(r,a);if(s===-1){i.push(e.slice(a));break}s>a&&i.push(e.slice(a,s)),i.push((0,o.jsx)(`mark`,{className:`search-highlight`,style:{backgroundColor:`#ffff00`,color:`inherit`,padding:0,borderRadius:2},children:e.slice(s,s+t.length)},s)),a=s+t.length}return i}function bi(e,t,n,r=``){let a=vi(e,t,n),c=gi(e.linkTarget,a),l=yi(n,r);return _i(a)?(0,o.jsx)(i.Tooltip,{title:n===`-`?void 0:n,children:(0,o.jsx)(`a`,{className:`job-cell-link job-cell-value`,href:a,rel:c===`_blank`?`noreferrer`:void 0,target:c,children:l})}):(0,o.jsx)(i.Tooltip,{title:n===`-`?void 0:n,children:(0,o.jsx)(s.Link,{className:`job-cell-link job-cell-value`,target:c,to:a||`#`,children:l})})}function xi(e){if(e==null||e===``)return`-`;let t=e instanceof Date?e:new Date(e);return Number.isNaN(t.getTime())?ai({value:e},`value`):`${new Intl.DateTimeFormat(`en-US`,{month:`short`,timeZone:`UTC`}).format(t)} ${String(t.getUTCDate()).padStart(2,`0`)}, ${t.getUTCFullYear()}`}function Si(e){return/date/i.test(`${e.key??``} ${e.label??``} ${e.type??``}`)}function Ci(e,t){return typeof e!=`string`||e.trim()===``?``:e.replace(/\{\{\s*([^}]+?)\s*\}\}/g,(e,n)=>{let r=ai(t,n.trim());return r===`-`?``:String(r)}).replace(/\s+/g,` `).trim()}function wi(e,t){let n=ei(t,e.key);return Ci(e.displayTemplate,t)||(Si(e)?xi(n):ai(t,e.key))}function Ti(e){return e===`-`||typeof e!=`string`||!e.trim()?e:e.replace(/\b([A-Za-z])([A-Za-z]*)\b/g,(e,t,n)=>e.length>1&&e===e.toUpperCase()?e:`${t.toUpperCase()}${n.toLowerCase()}`)}function Ei(e){return typeof e!=`string`||!e.includes(`-`)?e:e.replace(/(^|\s)-\s*(\d+)(?=\s*[A-Za-z])/,`$10-$2`).replace(/(\d+)\s*-\s*(?=[A-Za-z])/,`$1-0 `)}function Di(e){let t=e.map((e,t)=>({field:e,index:t}));return t.some(({field:e})=>e.order!==void 0&&e.order!==null&&e.order!==``)?[...t].sort((e,t)=>{let n=Number(e.field.order),r=Number(t.field.order),i=Number.isFinite(n),a=Number.isFinite(r);return i&&a&&n!==r?n-r:i===a?e.index-t.index:i?-1:1}).map(({field:e})=>e):e}function Oi(e){return e.iconUrl??e.iconURL??e.icon??e.iconPath}function ki(e){return Array.isArray(e)?e.map((e,t)=>({...e,key:e.key??e.name??e.label??e.routeUrl??e.type??String(t),label:e.label??e.name??e.title??e.type??`Action`,iconUrl:Oi(e)})).filter(e=>e.iconUrl):[]}function Ai(e,t){let n=e?.showIfField??e?.visibleWhenField;if(!n)return!0;let r=e?.showIfValue??e?.visibleWhenValue??``;return Xi(ei(t,n))===Xi(r)}function ji(e,t={}){let n=_n(e);return n===`add`?t.canAdd!==!1:n===`edit`?t.canEdit!==!1:n===`delete`?t.canDelete!==!1:!0}function Mi(e,t,n){let r=mi(e.routeUrl??e.routeURL??e.url??e.href,t),a=Xi(e.type),c=(0,o.jsx)(`img`,{src:e.iconUrl,alt:e.label,className:`job-field-action-icon`}),l=`job-field-action-button`;return a===`popup`&&r?(0,o.jsx)(i.Tooltip,{title:e.label,children:(0,o.jsx)(`button`,{"aria-label":e.label,className:l,type:`button`,onClick:()=>n?.(r,t),children:c})},e.key):r&&(a===`page`||r.startsWith(`/`))?(0,o.jsx)(i.Tooltip,{title:e.label,children:(0,o.jsx)(s.Link,{"aria-label":e.label,className:l,to:r,children:c})},e.key):r?(0,o.jsx)(i.Tooltip,{title:e.label,children:(0,o.jsx)(`a`,{"aria-label":e.label,className:l,href:r,rel:`noreferrer`,target:`_blank`,children:c})},e.key):(0,o.jsx)(i.Tooltip,{title:e.label,children:(0,o.jsx)(`button`,{"aria-label":e.label,className:l,type:`button`,children:c})},e.key)}function Ni(e){let t=Array.isArray(e.secondaryFields)?e.secondaryFields:[],n=e.secondaryField?[e.secondaryField]:[];return[...t,...n].filter((e,t,n)=>e&&n.indexOf(e)===t)}function Pi(e,t){let n=e.secondarySeparator??` `,r=Ni(e).map(e=>ai(t,e)).filter(e=>e!==`-`);return r.length?r.join(` ${n} `):``}function Fi(e){return Ti(Ei(e))}function Ii(e,t){if(!Array.isArray(e.valueStyles))return null;let n=Xi(t);return e.valueStyles.find(e=>Xi(e?.value)===n||Xi(e?.label)===n)??null}function Li(e){let t=e?.color,n=e?.bg??e?.background??e?.backgroundColor;return{...t?{"--job-cell-badge-color":t}:{},...n?{"--job-cell-badge-bg":n}:{}}}function Ri(e){return Xi(e?.varient??e?.variant).replace(/[^a-z0-9-]/g,`-`)}function zi(e,t){let n=Ii(e,t),r=n??e.commonStyle??{},a=n?.label??t,s=(typeof a==`string`?a.trim():a)||`-`,c=Ri(r),l=[`job-cell-badge`,`job-cell-value`,c?`job-cell-badge--${c}`:``].filter(Boolean).join(` `),u=!n&&typeof s==`string`&&s.includes(`,`)?s.split(`,`).map(e=>e.trim()).filter(Boolean):null,d=u&&u.length>1?`${u.slice(0,1).join(`, `)} +${u.length-1}`:s,f=Li(r);return(0,o.jsx)(i.Tooltip,{title:s===`-`?void 0:s,children:(0,o.jsx)(i.Tag,{className:l,style:f,children:d})})}function Bi(e,t){let n=li(e,t),r=n.slice(0,2),a=n.slice(2);return n.length?(0,o.jsxs)(`span`,{className:`job-avatar-group`,children:[r.map((e,t)=>(0,o.jsx)(i.Tooltip,{overlayClassName:`job-avatar-tooltip-overlay`,title:(0,o.jsx)(ui,{item:e}),children:(0,o.jsx)(i.Avatar,{className:`job-avatar job-avatar--${t+1}`,children:e.initial})},e.key)),a.length>0&&(0,o.jsx)(i.Tooltip,{overlayClassName:`job-avatar-tooltip-overlay job-avatar-more-tooltip-overlay`,title:(0,o.jsx)(di,{items:a}),children:(0,o.jsxs)(i.Avatar,{className:`job-avatar job-avatar--more`,children:[`+`,a.length]})})]}):(0,o.jsx)(Yr,{className:`job-cell-primary job-cell-value`,children:`-`})}function Vi(e,t,n=``,r,a={}){if(Xi(e.renderType)===`avatar`)return Bi(e,t);let s=Fi(wi(e,t)),c=ki(e.actionButtons).filter(e=>Ai(e,t)).filter(e=>ji(e,a)),l=Fi(Pi(e,t));return(0,o.jsxs)(`span`,{className:`job-cell-content`,children:[(0,o.jsxs)(`span`,{className:`job-cell-main-line`,children:[Xi(e.renderType)===`badge`&&s!==`-`?zi(e,s):!fi(e.isLink)||s===`-`?(0,o.jsx)(i.Tooltip,{title:s===`-`?void 0:s,children:(0,o.jsx)(Yr,{className:`job-cell-primary job-cell-value`,children:yi(s,n)})}):bi(e,t,s,n),c.length>0&&(0,o.jsx)(`span`,{className:`job-field-actions`,children:c.map(e=>Mi(e,t,r))})]}),l&&(0,o.jsx)(i.Tooltip,{title:l,children:(0,o.jsx)(`span`,{className:`job-cell-secondary`,children:yi(l,n)})})]})}var Hi=130,Ui=230,Wi=7.2,Gi=26,Ki=8,qi=44,Ji=20;function Yi(e,t){let n=String(e.label??``).length*Ki+qi;if(Xi(e.renderType)===`avatar`)return Math.max(Math.round(n),120);let r=0;for(let n of t){let t=String(Fi(wi(e,n))??``),i=String(Fi(Pi(e,n))??``);r=Math.max(r,t.length,i.length)}let i=Xi(e.renderType)===`badge`?24:0,a=r*Wi+Gi+i;return Math.round(Math.min(Math.max(n,a,Hi),Ui))}function Xi(e){return String(e??``).trim().toLowerCase()}function Zi(e,t){return e?.key??e?.value??e?.id??(t===void 0?void 0:String(t))}function Qi(e){return[`all`,``].includes(Xi(e))}function $i(e,t,n,r,i){if(Qi(t))return!0;let a=Xi(n?.filterValue??n?.status??n?.title??n?.tabTitle??n?.name??(typeof n?.label==`string`?n.label:void 0)??n?.value??n?.key??t),o=n?.field??n?.fieldName??n?.filterField??n?.dataIndex??i;if(o)return Xi(ai(e,o))===a;let s=r.filter(e=>{let t=Xi(e.key),n=Xi(e.label);return t.includes(`status`)||n.includes(`status`)});return(s.length?s:r).some(t=>Xi(ai(e,t.key))===a)}function ea(e,t,n){return typeof n==`function`?n(e,t):typeof n==`string`?e?.[n]:e.id??e._id??e.key??t}function ta(e){return!!e?.closest?.(`a,button,input,textarea,select,label,[role="button"],[role="menuitem"],.ant-checkbox,.ant-radio,.ant-dropdown,.ant-dropdown-trigger,.ant-table-selection-column,.job-field-actions,.job-row-eye-button`)}function na(e){return e.label??e.name??e.title??e.value}function ra(e,t){return e.key??e.value??e.route??e.name??String(t)}var ia={delete:(0,o.jsx)(a.DeleteOutlined,{}),edit:(0,o.jsx)(a.EditOutlined,{}),mail:(0,o.jsx)(a.MailOutlined,{}),shareAlt:(0,o.jsx)(a.ShareAltOutlined,{}),swap:(0,o.jsx)(a.RightOutlined,{}),thunderbolt:(0,o.jsx)(a.ThunderboltOutlined,{}),userAdd:(0,o.jsx)(a.UserAddOutlined,{}),userSwitch:(0,o.jsx)(a.UserSwitchOutlined,{})};function aa(e){let t={key:e.key,label:e.label,icon:ia[e.icon]??void 0,danger:e.danger||void 0};return e.children?.length&&(t.children=e.children.map(aa)),t}function oa(e,t){return e.filter(t).map(e=>e.children?.length?{...e,children:oa(e.children,t)}:e)}function sa(e){let t=[];for(let n of e)t.push(n),n.children?.length&&t.push(...sa(n.children));return t}function ca(e){return Array.isArray(e)?e.map((e,t)=>{let n=na(e),r=ra(e,t);return!n||!r?null:{...e,key:String(r),label:n,route:e.route||e.routeTemplate||(e.actionType===`modal`&&(e.popupKey||r)?`/popup/${e.popupKey||r}`:``),children:e.children?.length?ca(e.children):void 0}}).filter(Boolean):[]}function la(t,n){return!t.permissionKey||!n.length?!0:n.every(n=>e.u($r(n,`actionPermission.${t.permissionKey}`)))}function ua(e,t){return t?e===`asc`?`desc`:e===`desc`?``:`asc`:`asc`}function da(e){return e===`asc`?`Ascending`:e===`desc`?`Descending`:`Neutral`}function fa({label:e,sortDir:t,sortable:n,onSort:r}){if(!n)return(0,o.jsx)(`span`,{className:`job-table-header-label`,children:e});let s=da(t);return(0,o.jsxs)(`div`,{className:`job-table-header-content`,children:[(0,o.jsx)(`span`,{className:`job-table-header-label`,title:typeof e==`string`?e:void 0,children:e}),(0,o.jsx)(i.Tooltip,{title:s,mouseEnterDelay:.08,overlayClassName:`job-sort-tooltip`,children:(0,o.jsx)(`button`,{type:`button`,className:`job-table-sort-trigger${t?` job-table-sort-trigger--active`:``}`,"aria-label":`Sort ${typeof e==`string`?e:`column`}, ${s}`,onClick:e=>{e.preventDefault(),e.stopPropagation(),r?.()},children:(0,o.jsxs)(`span`,{className:`job-table-sort-icon-stack`,children:[(0,o.jsx)(a.CaretUpOutlined,{className:`job-table-sort-icon job-table-sort-icon--up${t===`asc`?` job-table-sort-icon--active`:``}`}),(0,o.jsx)(a.CaretDownOutlined,{className:`job-table-sort-icon job-table-sort-icon--down${t===`desc`?` job-table-sort-icon--active`:``}`})]})})})]})}function pa({moduleName:e,activeTabScope:t,pageSize:n,sort:r,sortDir:i,queryParams:a}){return[e??``,t??``,n,r??``,i??``,a?JSON.stringify(a):``].join(`|`)}function ma(e){let t=Number(e);return Number.isInteger(t)&&t>0?t:1}function ha(e){for(let t of e.keys()){let e=/^p(\d+)$/.exec(t);if(e)return ma(e[1])}return 1}function ga(e){[...e.keys()].forEach(t=>{(/^p\d+$/.test(t)||t===`page`)&&e.delete(t)})}var _a=[],va={};function ya({record:e,fields:t,selected:n,onSelect:r,onPreview:a,onRecordClick:s,isControlled:c,selectionMode:l=`checkbox`,onPopupAction:u,permissions:d}){let f=t.find(e=>e.cardRole===`name`),p=t.find(e=>e.cardRole===`action`),m=t.find(e=>e.cardRole===`headerAction`),h=t.filter(e=>e!==f&&e!==p&&e!==m),g=f?ai(e,Zr(f)):``,_=p?.render?p.render(ei(e,Zr(p)),e):null,v=m?.render?m.render(ei(e,Zr(m)),e):null;return(0,o.jsxs)(`div`,{className:`param-card${n?` param-card--selected`:``}`,"aria-selected":n,onClick:e=>{ta(e.target)||s?.()},role:s?`button`:void 0,tabIndex:s?0:void 0,onKeyDown:e=>{!s||e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),s())},children:[(0,o.jsx)(`div`,{className:`param-card__header`,children:(0,o.jsxs)(`div`,{className:`param-card__name-row`,children:[l===`checkbox`&&(0,o.jsx)(i.Checkbox,{checked:n,onChange:r,onClick:e=>e.stopPropagation(),className:`param-card__checkbox`}),a&&(0,o.jsx)(`button`,{type:`button`,className:`job-row-eye-button`,"aria-label":`Preview`,onClick:e=>{e.stopPropagation(),a()},children:(0,o.jsx)(`img`,{src:`data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M6.00035%204.69941C4.74567%204.69941%203.72701%205.71807%203.72701%206.97275C3.72701%208.22745%204.74567%209.24609%206.00035%209.24609C7.25503%209.24609%208.2737%208.22745%208.2737%206.97275C8.2737%205.71807%207.25503%204.69941%206.00035%204.69941ZM6.00035%205.87128C6.60827%205.87128%207.10182%206.36485%207.10182%206.97275C7.10182%207.58067%206.60827%208.07422%206.00035%208.07422C5.39243%208.07422%204.89888%207.58067%204.89888%206.97275C4.89888%206.36485%205.39243%205.87128%206.00035%205.87128ZM2.06843%206.41445C2.85434%204.9331%204.16742%203.92578%206.00035%203.92578C7.83328%203.92578%209.14637%204.9331%209.93227%206.41445C10.0838%206.70013%2010.4388%206.80902%2010.7245%206.65745C11.0102%206.50587%2011.1191%206.15091%2010.9675%205.86523C9.97758%203.9994%208.30902%202.75391%206.00035%202.75391C3.69169%202.75391%202.02312%203.9994%201.03322%205.86523C0.881648%206.15091%200.990538%206.50587%201.27619%206.65745C1.56187%206.80902%201.91686%206.70013%202.06843%206.41445Z'%20fill='%23586888'/%3e%3c/svg%3e`,alt:``,className:`job-row-eye-icon`})}),(0,o.jsx)(Yr,{className:`param-card__name`,children:g}),v&&(0,o.jsx)(`div`,{className:`param-card__header-actions`,children:v})]})}),h.length>0&&(0,o.jsx)(`div`,{className:`param-card__body-fields`,children:h.map(t=>{let n=Zr(t),r=ei(e,n),i=c&&typeof t.render==`function`?t.render(r,e):Vi(t,e,``,u,d);return(0,o.jsxs)(`div`,{className:`param-card__field-row`,children:[(0,o.jsx)(Yr,{className:`param-card__field-label`,children:Xr(t)}),(0,o.jsx)(`div`,{className:`param-card__field-value`,children:i})]},n)})}),(0,o.jsx)(`div`,{className:`param-card__divider`}),(0,o.jsxs)(`div`,{className:`param-card__footer`,children:[(0,o.jsx)(`div`,{className:`param-card__footer-left`}),(0,o.jsx)(`div`,{className:`param-card__footer-right`,children:_})]})]})}function ba(e){return!!(e.operator===`isEmpty`||e.operator===`notEmpty`||e.value||e.from||e.to||Array.isArray(e.values)&&e.values.length>0)}function xa(e){return e.fieldLabel?e.fieldLabel:(e.field??``).replace(/([A-Z])/g,` $1`).replace(/^(.)/,e=>e.toUpperCase()).trim()}function Sa(e){if(e.operator===`isEmpty`)return`Is Empty`;if(e.operator===`notEmpty`)return`Not Empty`;if(e.value)return`"${e.value}"`;if(e.from&&e.to)return`${e.from} to ${e.to}`;if(e.from)return`from ${e.from}`;if(e.to)return`to ${e.to}`;if(Array.isArray(e.values)&&e.values.length>0){let t=e.values.slice(0,2).join(`, `);return e.values.length>2?`${t} +${e.values.length-2}`:t}return``}function Ca({filters:e,onRemove:t,onClearAll:n}){let r=(e??[]).map((e,t)=>({row:e,originalIdx:t})).filter(({row:e})=>e.field&&ba(e));return r.length===0?null:(0,o.jsxs)(i.Flex,{gap:6,wrap:`wrap`,align:`center`,className:`filter-chips-bar`,children:[(0,o.jsx)(Yr,{className:`filter-chips-bar__label`,children:`Filters:`}),r.map(({row:e,originalIdx:n})=>(0,o.jsxs)(i.Tag,{closable:!0,onClose:()=>t(n),className:`filter-chip`,children:[(0,o.jsx)(`span`,{className:`filter-chip__field`,children:xa(e)}),(0,o.jsx)(`span`,{className:`filter-chip__sep`,children:`: `}),(0,o.jsx)(`span`,{className:`filter-chip__value`,children:Sa(e)})]},`${e.field}-${n}`)),r.length>1&&(0,o.jsx)(i.Button,{type:`link`,size:`small`,onClick:n,className:`filter-chips-clear`,children:`Clear all`})]})}function wa({moduleName:n,actions:c=[],actionRules:l=[],breadcrumbItems:u=[],dataSource:d=[],className:f=``,initialPageSize:p=10,onAction:m,onSummaryClick:h,rowKey:g,showSummaryButton:_=!1,summaryButtonLabel:v=`View Summary`,summaryRoute:y,tabs:b,tableClassName:x=`job-list-table`,fields:S=_a,listName:C=``,loading:w=!1,total:T,current:E,pageSize:D,onPageChange:O,onPageSizeChange:k,onSearch:A,showSearch:M=!0,searchPlaceholder:N=`Min 3 Chars, press Enter to search`,searchFields:P=_a,showViewToggle:F=!1,activeView:I=`list`,onViewChange:L,createAction:R,onRecordClick:z,selectedRecordId:B,selectionMode:V=`checkbox`,compact:H=!1,onSelectionChange:U,selectedSource:W,onTabChange:G,fetchData:ee=Wt,responseMapper:te=sr,queryParams:K=va,defaultVisibleColumnCount:ne=6,showAdd:re=!0}){let q=(0,s.useNavigate)(),J=(0,s.useLocation)(),ie=e.En(n),{canView:ae,canAdd:oe,canEdit:Y,canDelete:se}=hn(ie),ce=(0,r.useMemo)(()=>K??va,[JSON.stringify(K??va)]),[le]=(0,s.useSearchParams)(),ue=ha(le),[de,fe]=(0,r.useState)(`all`),[pe,me]=(0,r.useState)(``),[he,ge]=(0,r.useState)(``),[ve,ye]=(0,r.useState)(!1),[be,xe]=(0,r.useState)([]),[X,Se]=(0,r.useState)([]),[Ce,we]=(0,r.useState)([]),[Te,Ee]=(0,r.useState)(0),[De,Oe]=(0,r.useState)({current:ue,pageSize:p}),[ke,Ae]=(0,r.useState)({sort:``,sortDir:``}),[je,Me]=(0,r.useState)([]),[Ne,Pe]=(0,r.useState)(!1),[Fe,Ie]=(0,r.useState)([]),Le=(0,r.useRef)(null),[Re,ze]=(0,r.useState)(0),Be=(0,r.useRef)();(0,r.useEffect)(()=>{let e=Le.current;if(!e||typeof ResizeObserver>`u`)return;let t=new ResizeObserver(e=>{let t=e[0]?.contentRect?.width;typeof t==`number`&&ze(t)});return t.observe(e),()=>t.disconnect()},[]);let Ve=(e,t)=>String(ea(e,t,g)),He=(e,t)=>String(Ve(e,t))===String(B??``),Ue=(e,t)=>{let n=Ve(e,t);n&&z?.(e,n)},We=(e,t)=>{Se(e),we(t),U?.(e,t)},[Ge,Ke]=(0,r.useState)(d),[qe,Je]=(0,r.useState)(d.length),[Ye,Xe]=(0,r.useState)([]),[Ze,Qe]=(0,r.useState)([]),[$e,et]=(0,r.useState)(``),[tt,nt]=(0,r.useState)([]),[rt,it]=(0,r.useState)([]),[at,ot]=(0,r.useState)(!1),[st,ct]=(0,r.useState)(null),[lt,ut]=(0,r.useState)(null),[dt,ft]=(0,r.useState)(!1),pt=!!(O||k||A),mt=pt?d:Ge,ht=pt?T??0:qe,gt=pt?S:Ze,_t=(0,r.useMemo)(()=>mt.some(e=>ii(e)),[mt]),vt=(0,r.useMemo)(()=>gt.some(e=>ri(e)),[gt]),yt=_t||vt?`card`:I,bt=c.length>0?c:tt,xt=l.length>0?l:rt,St=(0,r.useMemo)(()=>ca(bt),[bt]),Ct=(0,r.useMemo)(()=>new Map(sa(St).map(e=>[e.key,e])),[St]),wt=(0,r.useMemo)(()=>oa(St,t=>{let n=_n(t);return n===`add`&&!oe||n===`edit`&&!Y||n===`delete`&&!se||!e.d(t.permission,ie)||t.showInList===!1?!1:t.allowedTabs?t.allowedTabs.some(e=>Xi(e)===Xi(de)):!0}),[St,de,oe,Y,se,ie]),Tt=(0,r.useMemo)(()=>oa(wt,e=>(X.length===1||e.allowMultiple||e.danger)&&la(e,Ce)&&!wn(e.key,Ce,xt,de)),[de,xt,X.length,Ce,wt]),Et=typeof n==`string`?n.trim().length>0:!!n,Dt=Et?`/${ie}-create${R?`?action=${encodeURIComponent(R)}`:``}`:``;(0,r.useEffect)(()=>{Et&&!ae&&q(`/`,{replace:!0})},[ae,Et,q]);let Ot=(e,{replace:t=!1}={})=>{let n=new URLSearchParams(le);ga(n);let r=[n.toString(),e>1?`p${e}`:``].filter(Boolean).join(`&`);r!==J.search.replace(/^\?/,``)&&q({pathname:J.pathname,search:r?`?${r}`:``},{replace:t})},kt=(e,t)=>{Oe(t=>({...t,current:e})),Ot(e,t)},At=()=>{kt(1,{replace:!0})},{config:jt,loading:Mt,error:Nt}=cn(!pt&&Et?n:null),Pt=(0,r.useCallback)(e=>{let t=ke.sort===e,n=ua(ke.sortDir,t),r=n?String(e):``;Ae({sort:r,sortDir:n}),typeof A==`function`&&A(r,n),At()},[A,At,ke.sort,ke.sortDir]);(0,r.useEffect)(()=>{Oe(e=>e.current===ue?e:{...e,current:ue})},[ue]),(0,r.useEffect)(()=>{pt&&Oe(e=>{let t=ma(E??e.current),n=Number(D)>0?Number(D):e.pageSize;return e.current===t&&e.pageSize===n?e:{current:t,pageSize:n}})},[E,D,pt]);let Ft=J.state?.refreshTimestamp;(0,r.useEffect)(()=>{Ft&&(We([],[]),Ee(e=>e+1))},[Ft]);let It=(0,r.useMemo)(()=>[...Array.isArray(b)?b:[],...Ye].find((e,t)=>String(Zi(e,t))===de),[de,Ye,b]),Lt=It?.field??It?.fieldName??It?.filterField??It?.dataIndex??$e,Rt=Qi(de)?``:de,zt=!Rt&&!Qi(de)&&Xi(Lt).length>0,Bt=he.trim().length>=3,Vt=Bt?he.trim():``,Ht=be.some(e=>e.field),Ut=pa({moduleName:n,activeTabScope:Rt,pageSize:De.pageSize,sort:ke.sort,sortDir:ke.sortDir,queryParams:ce}),Gt=De.current===1&&lt?.key===Ut;(0,r.useEffect)(()=>{if(pt)return;if(!Et){Ke([]),Je(0),Xe([]),Qe([]),et(``),nt([]),it([]),ct(null);return}let e=!1,t=Bt&&qe>De.pageSize,r=t?qe:De.pageSize,a=t?0:(De.current-1)*De.pageSize;return ot(!(!Bt&&!Ht&&De.current===1&&Gt)),ct(null),ee(n,r,a,{scope:Rt,sort:ke.sort,sortDir:ke.sortDir,search:Vt,filters:be,queryParams:ce}).then(t=>{if(e)return;let{rows:r,total:i,tabs:a,fields:o,tabField:s,actions:c,actionRules:l}=te(t,n);Ke(r),Je(i),Xe(a),Qe(o),et(s),nt(c),it(l),!Bt&&!Ht&&De.current===1&&ut({key:Ut,rows:r,total:i,tabs:a,fields:o,tabField:s,actions:c,actionRules:l})}).catch(t=>{e||(Ke([]),Je(0),Xe([]),Qe([]),et(``),nt([]),it([]),ct(t.message),Et&&i.message.error(`Invalid module name or data could not be loaded.`))}).finally(()=>{e||ot(!1)}),()=>{e=!0}},[Vt,Rt,be,Ut,ee,Ht,Bt,Et,Gt,n,qe,De.current,De.pageSize,Te,te,ke.sort,ke.sortDir,ce]);let Kt=(0,r.useMemo)(()=>{let e=pt&&Array.isArray(S)&&S.length,t=!pt&&Array.isArray(Ze)&&Ze.length,n=!Nt&&Array.isArray(jt)&&jt.length,r=e?S:t?Ze:n?jt:[],i=new Map(Ze.map(e=>[Zr(e),e]).filter(([e])=>e));return Di(r.map(e=>{let t=Zr(e),n=i.get(t)??{};return{...n,...e,key:t,label:Xr(e)??Xr(n)}}).filter(e=>e.key&&e.label))},[jt,Nt,S,pt,Ze]),qt=(0,r.useMemo)(()=>Kt.filter(e=>typeof e.isVisible==`boolean`?e.isVisible:typeof e.isVisible==`string`?e.isVisible.toLowerCase()===`true`:!0).map(e=>({key:e.key,label:e.label})),[Kt]),Jt=qt.map(e=>e.key),Yt=je.filter(e=>Jt.includes(e)),Xt=Yt.length?Yt:qt.slice(0,ne).map(e=>e.key),Zt=Math.min(ne,qt.length),Qt=Xt.length>ne,$t=(0,r.useMemo)(()=>Kt.filter(e=>!e.cardHidden&&(e.tableHidden||Xt.includes(e.key))),[Kt,Xt]),en=(0,r.useMemo)(()=>{let e=pe.toLowerCase(),t=mt,n=zt?t.filter(e=>$i(e,de,It,Kt,Lt)):t,r=P.length?Kt.filter(e=>P.includes(e.key)):Kt;return!e||e.length<3?n:n.filter(t=>r.some(n=>String(ai(t,n.key)).toLowerCase().includes(e)||Ni(n).some(n=>String(ai(t,n)).toLowerCase().includes(e))))},[de,It,Lt,zt,mt,Kt,pe,P]),tn=(0,r.useMemo)(()=>{if(!Bt)return en;let e=(De.current-1)*De.pageSize;return en.slice(e,e+De.pageSize)},[en,Bt,De.current,De.pageSize]),nn=Bt?en.length:ht,rn=he.trim().length>=3,an=String(en.length).padStart(2,`0`),on=ht>0||mt.length>0,sn=Et?st?`Invalid module name or data could not be loaded.`:Nt?`Field configuration failed to load.`:`No data found.`:`Please provide a module name to view data.`,ln=(0,r.useMemo)(()=>{let e=Array.isArray(b)?b:[];return e.length?e:Ye.length?Ye:[{key:`all`,title:n??`List`,count:nn}]},[n,Ye,nn,b]);(0,r.useEffect)(()=>{if(ln.length&&!ln.some(e=>String(e?.key??e?.value??e?.id)===de)){let e=ln[0]?.key??ln[0]?.value??ln[0]?.id;e&&fe(String(e))}},[de,ln]),(0,r.useEffect)(()=>{if(W===void 0||!ln.length||W===Be.current)return;Be.current=W;let e=ln.find((e,t)=>Xi(Zi(e,t))===Xi(W)),t=e?String(Zi(e)):``;t&&fe(e=>t===e?e:t)},[ln,W]);let un=e=>{q(`/popup/preview`,{state:{background:J,moduleName:ie,record:e,fields:Kt}})},dn=(e,t)=>{let n=mi(e,t),r=n.startsWith(`/`)?n:`/${n}`,i=t?._id??t?.id;q(r,{state:{background:J,selectedIds:i===void 0?[]:[i],selectedRecords:[t],moduleName:ie,popupContext:{},popupAction:{}}})},fn=(0,r.useMemo)(()=>{let e={dataIndex:`icons`,key:`icons`,visibilityKey:`jobsGroup`,fixed:`left`,width:25,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,className:`job-row-icons`,children:[(0,o.jsx)(`button`,{type:`button`,className:`job-row-eye-button`,"aria-label":`Preview job`,onClick:()=>un(t),children:(0,o.jsx)(`img`,{src:qr,alt:``,className:`job-row-eye-icon`})}),t.hasLinkedIn&&(0,o.jsx)(i.Tooltip,{title:`LinkedIn`,children:(0,o.jsx)(a.LinkedinFilled,{className:`job-row-linkedin-icon`})})]})},t=Kt.filter(e=>Xt.includes(e.key)).map((e,t)=>{let n=ke.sort===e.key?ke.sortDir:``;return{title:fa({label:e.label,sortDir:n,sortable:on,onSort:()=>Pt(e.key)}),dataIndex:e.key,key:e.key,fixed:t===0?`left`:void 0,ellipsis:{showTitle:!1},width:Yi(e,tn),render:(t,n)=>Vi(e,n,he,dn,{canAdd:oe,canEdit:Y,canDelete:se})}});if(!(Qt||pt)&&Re>0&&t.length>0){let n=e.width+(on&&V===`checkbox`?48:0)+Ji,r=t.reduce((e,t)=>e+t.width,0),i=Re-n-r;i>0&&r>0&&t.forEach(e=>{e.width=Math.floor(e.width+i*(e.width/r))})}return[e,...t]},[de,oe,se,Y,he,xt,Pt,Qt,on,pt,J,n,q,Kt,tn,V,ke.sort,ke.sortDir,Re,wt,Xt]),pn=(0,r.useCallback)(e=>{if(fe(e),Se([]),we([]),At(),typeof G==`function`){let t=ln.find((t,n)=>String(Zi(t,n))===e),n=t?.key??t?.value??t?.id??e;Be.current=n,G(n)}},[G,ln]);function mn(e,n,r){let a=Ct.get(String(e));if(a&&a.actionType!==`group`){if(typeof m==`function`&&m({key:a.key,label:a.label,selectedIds:n,selectedRecords:r}),typeof a.onClick==`function`){a.onClick({action:a,selectedIds:n,selectedRecords:r});return}if(a.actionType===`copy`){let e=r.map(e=>$r(e,a.copyField||`id`)??e?._id).filter(e=>e!=null);navigator.clipboard.writeText(e.join(`
2
- `)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(a.actionType===`api`&&a.apiPath){let e=r[0]??{},o=mi(a.apiPath,e);t.i(t.v,o.startsWith(`/`)?o:`/${o}`,{method:a.apiMethod||`POST`,body:[`GET`,`DELETE`].includes(String(a.apiMethod).toUpperCase())?void 0:JSON.stringify({ids:n,records:r})}).then(()=>{i.message.success(`${a.label} completed`),Ee(e=>e+1)}).catch(e=>i.message.error(e.message||`${a.label} failed`));return}if(a.route){let e=r[0]??{},t=mi(a.route,e),i=t.startsWith(`/`)?t:`/${t}`;if(a.route.startsWith(`/popup/`)||a.route.startsWith(`popup/`)){q(i,{state:{background:J,selectedIds:n,selectedRecords:r,moduleName:ie,popupContext:a.popupState??{},popupAction:{key:a.key,apiMethod:a.apiMethod,apiPath:a.apiPath,defaultTemplateId:a.defaultTemplateId},...a.popupState}});return}q(i)}}}function gn({key:e}){mn(e,X,Ce)}let vn=Xt.length===qt.length,yn=Xt.length>0&&!vn,bn=(e,t)=>{Me(n=>{let r=qt.slice(0,ne).map(e=>e.key),i=n.length?n:r;return t?i.includes(e)?i:[...i,e]:i.length<=Zt?i:i.filter(t=>t!==e)})},xn=()=>{if(typeof h==`function`){h();return}if(y){q(y);return}ft(!0)};(0,r.useEffect)(()=>{if(!dt)return;let e=e=>{e.key===`Escape`&&ft(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[dt]);let Sn=()=>{Gt&&(Ke(lt.rows),Je(lt.total),Xe(lt.tabs),Qe(lt.fields),et(lt.tabField),nt(lt.actions??[]),it(lt.actionRules??[]),ct(null),ot(!1))},Cn=e=>{let t=e.target.value,n=t.trim().length<3,r=be.some(e=>e.field);n&&(ge(``),r||Sn()),me(t),At()},Tn=()=>{let e=pe.trim();e.length>=3&&(ge(e),At())},En=()=>{Sn(),xe([]),We([],[]),At()};(0,r.useEffect)(()=>{yt===`card`&&(Ie([]),We([],[]))},[De.current,De.pageSize,de,yt]);let Dn=e=>{Ie(t=>{let n=t.includes(e)?t.filter(t=>t!==e):[...t,e];return We(n,tn.filter((e,t)=>n.includes(String(ea(e,t,g))))),n})},On=(0,o.jsxs)(`div`,{className:`column-visibility-menu`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(i.Checkbox,{checked:vn,indeterminate:yn,onChange:e=>{Me(e.target.checked?qt.map(e=>e.key):qt.slice(0,ne).map(e=>e.key))},children:`Select All`}),(0,o.jsx)(`div`,{className:`column-visibility-menu__list`,children:qt.map(e=>(0,o.jsx)(i.Checkbox,{checked:Xt.includes(e.key),disabled:Xt.includes(e.key)&&Xt.length<=Zt,onChange:t=>bn(e.key,t.target.checked),children:e.label},e.key))})]});return(0,o.jsxs)(`div`,{className:`antd dynamic-list-view${H?` list-view--compact`:``} ${f}`.trim(),children:[u.length>0&&(0,o.jsx)(`div`,{className:`job-list-header`,children:(0,o.jsx)(e.t,{items:u})}),(0,o.jsx)(i.Card,{className:`job-tabs-card`,children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsx)(j,{activeKey:de,tabs:ln,onChange:pn}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[on&&(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:N,value:pe,onChange:Cn,onPressEnter:Tn,allowClear:!0,className:`job-search-input`}),!pt&&oe&&re&&(0,o.jsx)(i.Tooltip,{title:`Add`,children:(0,o.jsx)(i.Button,{"aria-label":`Add`,className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{Dt&&q(Dt)}})}),on&&(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Badge,{count:be.filter(e=>e.field&&ba(e)).length,size:`small`,offset:[-2,2],children:(0,o.jsx)(i.Button,{"aria-label":`Filter`,className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{}),onClick:()=>ye(!0)})})}),F&&on&&(0,o.jsxs)(i.Flex,{align:`center`,gap:6,children:[(0,o.jsx)(i.Tooltip,{title:`List View`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${yt===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>{L?.(`list`),Ie([]),We([],[])}})}),(0,o.jsx)(i.Tooltip,{title:`Card View`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${yt===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>{L?.(`card`),Ie([]),We([],[])}})})]}),_&&on&&(0,o.jsx)(i.Button,{className:`job-summary-button`,type:`primary`,onClick:xn,children:v})]})]})}),on&&(0,o.jsx)(o.Fragment,{children:(0,o.jsx)(i.Card,{className:`job-toolbar-card`,children:(0,o.jsxs)(i.Flex,{className:`p-flex`,align:`center`,justify:`space-between`,children:[(0,o.jsxs)(i.Flex,{align:`center`,gap:3,children:[yt===`card`&&(0,o.jsx)(i.Checkbox,{checked:tn.length>0&&Fe.length>=tn.length,indeterminate:Fe.length>0&&Fe.length<tn.length,className:`param-card-view__select-all`,onChange:()=>{if(Fe.length>0)Ie([]),We([],[]);else{let e=tn.map((e,t)=>String(ea(e,t,g)));Ie(e),We(e,[...tn])}},children:`Select All`}),(0,o.jsx)(i.Dropdown,{open:Ne,onOpenChange:Pe,trigger:[`click`],dropdownRender:()=>On,placement:`bottomLeft`,overlayClassName:`column-visibility-dropdown`,children:(0,o.jsx)(i.Button,{"aria-label":`Display columns`,type:`text`,icon:(0,o.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%3cmask%20id='path-1-inside-1_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-1-inside-1_8856_23533)'/%3e%3cmask%20id='path-2-inside-2_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-2-inside-2_8856_23533)'/%3e%3cline%20x1='7.375'%20y1='2.93555'%20x2='12.225'%20y2='2.93555'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='5.83398'%20x2='12.225'%20y2='5.83398'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='8.87305'%20x2='12.225'%20y2='8.87305'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='11.7227'%20x2='12.225'%20y2='11.7227'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3c/svg%3e`,alt:``,className:`job-action-list-icon`}),size:`small`,className:`job-actions-button job-column-display-button`,children:(0,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})})}),Tt.length>0&&X.length>0&&(0,o.jsx)(i.Dropdown,{menu:{items:Tt.map(aa),onClick:gn},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[(0,o.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,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),X.length>0&&(0,o.jsxs)(Yr,{className:`job-selected-count`,children:[`Selected (`,X.length,`)`]})]}),rn&&(0,o.jsxs)(Yr,{className:`job-search-results-count`,children:[`Search Results (`,an,`)`]})]})})}),Ht&&(0,o.jsx)(Ca,{filters:be,onRemove:e=>{xe(be.filter((t,n)=>n!==e)),At()},onClearAll:En}),(0,o.jsx)(`div`,{ref:Le,className:`job-table-measure`,children:(0,o.jsx)(i.Spin,{spinning:pt?w:Mt||at,children:yt===`card`?tn.length===0?(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:sn,className:`param-card-view__empty`,children:!pt&&oe&&re&&Dt&&!st&&(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>q(Dt),children:`Add New`})}):(0,o.jsx)(`div`,{className:`param-card-view__grid`,children:tn.map((e,t)=>{let n=String(ea(e,t,g));return(0,o.jsx)(ya,{record:e,fields:$t,selected:V===`checkbox`?Fe.includes(n):He(e,t),isControlled:pt,onPreview:()=>un(e),onSelect:()=>Dn(n),onPopupAction:dn,onRecordClick:z?()=>Ue(e,t):void 0,selectionMode:V,permissions:{canAdd:oe,canEdit:Y,canDelete:se}},n)})}):(0,o.jsx)(i.Table,{rowSelection:on&&V===`checkbox`?{type:`checkbox`,fixed:!0,columnWidth:48,selectedRowKeys:X,onChange:(e,t)=>{We(e,t)},columnTitle:(()=>{let e=tn.length,t=e>0&&X.length>=e,n=X.length>0&&!t;return(0,o.jsx)(i.Checkbox,{checked:t,indeterminate:n,onChange:()=>{n||t?We([],[]):We(tn.map((e,t)=>ea(e,t,g)),[...tn])}})})()}:void 0,columns:fn,dataSource:tn,size:`middle`,tableLayout:`fixed`,scroll:{x:Qt||pt?`max-content`:void 0,y:`calc(100vh - 300px)`},pagination:!1,locale:{emptyText:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:sn})},className:`${x} ${H?`list-view-table--compact`:``}`.trim(),onRow:z?(e,t)=>({onClick:n=>{ta(n.target)||Ue(e,t)},"aria-selected":He(e,t)}):void 0,rowClassName:B==null?void 0:(e,t)=>He(e,t)?`list-view-row--active`:``,rowKey:(e,t)=>ea(e,t,g)})})}),on?(0,o.jsx)(_e,{current:De.current,pageSize:De.pageSize,total:nn,onChange:(e,t)=>{if(pt&&typeof O==`function`){O(e,t??De.pageSize);return}kt(e)},onPageSizeChange:e=>{if(pt&&typeof k==`function`){k(e);return}Oe({current:1,pageSize:e}),Ot(1,{replace:!0})}}):void 0,(0,o.jsx)(Kr,{moduleName:ie,open:ve,filters:be,onClose:()=>ye(!1),onApply:({filters:e})=>{xe(e),At()},onReset:En}),(0,o.jsx)(Nr,{moduleName:ie,open:dt,rows:Ge,tabs:ln,total:nn,onClose:()=>ft(!1)})]})}async function Ta({isFromSubmission:e,jobId:n,submissionId:r,search:i=``}={}){let a={search:i};e?a.submissionId=r:a.jobId=n;let o=await t.i(t.y,`/quicksubmit/list`,{method:`POST`,body:JSON.stringify(a)});return o.data??o}async function Ea(e){if(!e)throw Error(`Dice candidate ID is required`);let n=await t.r(),r=`${t.v}/dicemigrate/${encodeURIComponent(String(e))}`;process.env.NODE_ENV===`development`&&console.log(`[DiceMigration] Request URL:`,r);let i=await fetch(r,{method:`GET`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}}),a=await i.json().catch(()=>null);if(!i.ok){let e=Error(a?.message??a?.error??`Failed to migrate candidate (${i.status})`);throw e.status=i.status,e}return a}function Da(e){return e&&typeof e==`object`?Da(e.value??e.key??e.id??e.label??e.name):String(e??``).trim().toLowerCase()}function Oa(e){return(Array.isArray(e)?e:[e]).flat().map(Da).filter((e,t,n)=>e&&e!==`all`&&n.indexOf(e)===t)}function ka(e,t=`internal`){let n=Oa(e);if(n.includes(`internal`))return`internal`;let r=Da(t);return n[0]?n[0]:r||(t===``?``:`internal`)}function Aa(e){return String(e??``).replace(/[-_]+/g,` `).replace(/\s+/g,` `).trim().replace(/\b\w/g,e=>e.toUpperCase())}function ja(e){return Da(e?.key??e?.value??e?.id??e?.source??e?.name??e?.title??e?.label)}function Ma(e){let t=e?.count??e?.countValue,n=Number(t);return Number.isFinite(n)?n:void 0}function Na(e,t,n,r,i){if(e===r){let n=Number(t?.[e]);if(Number.isFinite(n))return n;let r=Number(i);if(Number.isFinite(r))return r}let a=n.get(e);if(a!==void 0)return a}function Pa({sources:e=[],activeSource:t=`internal`,activeCount:n=0,responseCounts:r={},currentTabs:i=[],backendTabs:a=[]}={}){let o=new Map((Array.isArray(i)?i:[]).map(e=>[ja(e),Ma(e)]).filter(([e,t])=>e&&t!==void 0)),s=new Map;(Array.isArray(a)?a:[]).forEach(e=>{let t=ja(e);t&&s.set(t,{key:t,title:e.title??e.label??e.name??Aa(t),...Ma(e)===void 0?{}:{count:Ma(e)}})});let c=Oa(e);return(c.length?c:[t]).forEach(e=>{if(!e||s.has(e))return;let i=Na(e,r,o,t,n);s.set(e,{key:e,title:Aa(e),...i===void 0?{}:{count:i}})}),Array.from(s.values())}function Fa(e){return[e?.sourceType,e?.profileSource,e?.selectedSource,e?.source,e?.provider,e?.customFields?.sourceType,e?.customFields?.profileSource,e?.customFields?.source,e?.customFields?.provider].flat().map(Da).filter(Boolean)}function Ia(e,t,n){let r=Da(t);return r?Fa(e).includes(r)?!0:typeof n==`function`?n(e):!1:!1}var La=[{source:`dice`,field:`__sourceAction_dice_migrate`,label:`Action`,buttonLabel:`Migrate`,completedLabel:`Migrated`,successMessage:`Candidate migrated successfully.`,errorMessage:`Failed to migrate candidate.`,isRecordFromSource:e=>!!e?.customFields?.diceProfileData,getRecordId:n.i,execute:Ea}];function Ra({rows:e=[],selectedSource:t=``}={}){return La.filter(n=>Da(t)===n.source||e.some(e=>Ia(e,n.source,n.isRecordFromSource)))}function za(e,t,n=``){return Da(n)===e.source||Ia(t,e.source,e.isRecordFromSource)}function Ba(e,t){let n=e?.getRecordId?.(t);return n?`${e.source}:${e.field}:${n}`:``}async function Va(e,t){let n=e?.getRecordId?.(t);if(!n)throw Error(`${e?.buttonLabel??`Action`} ID is required`);return e.execute(n,t)}var Ha=e.Nn({default:()=>Ho}),{Text:Ua}=i.Typography,{TextArea:Wa}=i.Input,Ga=[],Ka=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],qa={email:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`}),contactNumber:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),phone:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),currentLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),preferredLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),skills:(0,o.jsx)(a.TagsOutlined,{className:`v1-input-icon`}),firstName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),lastName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`})},Ja=e=>e===!0||e===1||e===`1`,Ya=(t,n)=>(t?.edit===void 0||Ja(t.edit))&&(!t?.editablePermission||e.d(t.editablePermission,n));function Xa(e=[]){return e.map(e=>typeof e==`string`?{label:e,value:e}:{label:e.label??e.name??e.value,value:e.value??e.id??e.name??e.label})}function Za(e){return String(e??``).split(`.`).map(e=>e.trim()).filter(Boolean)}function Qa(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function $a({form:t,field:n,absoluteName:a}){let[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(null),d=(0,r.useRef)(null),f=i.Form.useWatch(n.verifyResultField?Qa(a,n.verifyResultField):[`__noop_verify__`],{form:t,preserve:!0}),p=i.Form.useWatch(a,t);return(0,r.useEffect)(()=>{let e=String(p??``).trim();if(f===!0&&d.current===null&&e){d.current=e;return}f===!0&&d.current!==null&&e!==d.current&&(n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),void 0),d.current=null)},[a,p,n.verifyResultField,n.verifyTimestampField,t,f]),n.verifyAction===`email`?f===!0?l&&!l.mailboxConfirmed&&(l.catchAll||l.result===`risky`)?(0,o.jsx)(i.Tooltip,{title:l.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,o.jsx)(Ua,{type:`warning`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifyUnconfirmedLabel||`Accepted`})}):(0,o.jsx)(Ua,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifySuccessLabel||`Valid`}):(0,o.jsx)(i.Button,{size:`small`,loading:s,onClick:async()=>{let r=String(p??``).trim();if(!r){i.message.warning(`Enter an email first`);return}c(!0);try{let o=await e.bn(r);d.current=o.valid?r:null,u(o.valid?o:null),n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),o.valid),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),o.valid?new Date().toISOString():void 0),o.valid?o.mailboxConfirmed?i.message.success(`Email verified — the mail server confirmed this mailbox`):i.message.warning(o.reason||`The domain can receive mail, but this exact mailbox could not be confirmed`):i.message.error(o.reason?`Invalid email: ${o.reason}`:`Email could not be verified`)}catch(e){d.current=null,u(null),n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),void 0),i.message.error(e?.message||`Could not verify email`)}finally{c(!1)}},className:`v1-verify-field-wrap`,children:f===!1?n.verifyRetryLabel||`Re Verify`:n.verifyIdleLabel||`Verify Email`}):null}function eo({form:t,field:n,siblingPrefix:r,locked:a,combined:s=!1}){let c=e.i(n,i.Form.useWatch(e.n(n?.labelWhen,r),t),s);return s?c:(0,o.jsx)(zo,{field:n,label:c,locked:a})}function to({form:e,groups:t,action:n,disabled:r,loading:a,onFire:s}){let c=i.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}),l=i.Form.useWatch(n?.enabledWhen?.field,e),u=!n?.enabledWhen?.field||io(n.enabledWhen,l);return(0,o.jsx)(i.Button,{type:n?.tone===`primary`?`primary`:`default`,onClick:s,disabled:r||c||!u,loading:a,children:n?.label||`Submit`})}function no({form:e,groups:t,disabled:n,loading:r,onClick:a,children:s}){let c=i.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});return(0,o.jsx)(i.Button,{type:`primary`,onClick:a,disabled:n||c,loading:r,children:s})}function ro({form:e,rules:t,watchPath:n,targetPath:a,resetOnNoMatch:o=!0}){let s=i.Form.useWatch(n,e),c=(0,r.useRef)(void 0);return(0,r.useEffect)(()=>{let n=t.find(e=>String(s??``)===String(e.value??``));if(n){e.setFieldValue(a,n.setValue),c.current=n.setValue;return}if(o&&c.current!==void 0){let t=e.getFieldValue(a);String(t??``)===String(c.current??``)&&e.setFieldValue(a,void 0),c.current=void 0}},[s]),null}function io(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 Ja(t);case`falsy`:return!Ja(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}}function ao({form:e,showIf:t,render:n}){return io(t,i.Form.useWatch(t.field,e))?n():null}function oo(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function so(e){return e==null||e===``?!1:Array.isArray(e)?e.length>0&&e.some(so):typeof e==`object`?Object.values(e).some(so):!0}function co(e){return Array.isArray(e)?e:Array.isArray(e?.groups)?e.groups:Array.isArray(e?.data)?e.data:Array.isArray(e?.data?.groups)?e.data.groups:Ga}function lo(t=[],n,r,i){let a=i??new Set;return[...co(t)].filter(t=>!Ja(t.hideGroup)&&e.Y(r,t.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(t=>({...t,fields:[...t.fields??[]].map(e=>a.has(e.field)?{...e,show:1,req:1}:e).filter(i=>String(i.field??``).trim()!==``&&(i.show===void 0||Ja(i.show))&&i.showOnAdd!==!1&&!Ja(i.clientScope)&&(!i.visiblePermission||e.d(i.visiblePermission,n))&&e.q(r,t.name,i.field)).map(n=>e.J(r,t.name,n.field)?n:{...n,disabled:!0}).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function uo(e){if(!Array.isArray(e))return null;let t={};return e.forEach(e=>{e.addRow||(e.fields??[]).forEach(e=>{!e.field||e.value===void 0||e.value===null||(t[e.field]=e.value,e.payloadKey&&e.payloadKey!==e.field&&(t[e.payloadKey]=e.value))})}),Object.keys(t).length>0?t:null}function fo(t,n){if(!(!t||!n))for(let r of[n.prefillFrom,n.field,n.payloadKey]){if(!r)continue;let n=t[r];if(n??=e.H(t,r),n!=null)return n}}function po(e){if(Array.isArray(e))return e;if(!e||typeof e!=`object`)return[];let t=e.uploadedFileName??e.name??Object.entries(e).find(([e])=>e.endsWith(`UploadName`))?.[1]??``,n=e.location??e.url??Object.entries(e).find(([e])=>e.endsWith(`CopyLocation`))?.[1]??``;return!t&&!n?[]:[{uid:n||t||`-1`,name:t||`file`,status:`done`,url:n,existing:!0}]}var mo=e=>e==null||e===``,ho=e=>String(e).replace(/<[^>]*>/g,``).replace(/&nbsp;/g,` `).replace(/&amp;/g,`&`).replace(/&lt;/g,`<`).replace(/&gt;/g,`>`).trim(),go=({label:e,message:t,value:n,compare:r,text:i})=>({validator:(a,o)=>mo(o)||r(Number(o),Number(n))?Promise.resolve():Promise.reject(Error(t??`${e} ${i} ${n}`))});function _o(e){if(!e)return null;if(typeof e.valueOf==`function`){let t=e.valueOf();return Number.isNaN(t)?null:t}let t=new Date(e).getTime();return Number.isNaN(t)?null:t}function vo(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.startOf(`day`).valueOf():null}function yo(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.hour()*60+t.minute():null}function bo(e,t){let n=String(t).split(`.`).filter(Boolean);if(!Array.isArray(e))return n.length>1?n:t;if(n.length>1){if(e.length>=3&&typeof e[1]==`number`){let t=e.slice(0,2),r=n[0]===String(e[0])?n.slice(1):n;return[...t,...r]}return n}let r=[...e];return r[r.length-1]=n[0],r}var xo=({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||mo(l))return Promise.resolve();let d=i.getFieldValue(bo(a,u));if(mo(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}`))}}),So={noPastDate:({label:e,message:t})=>({validator:(n,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=new Date;return a.setHours(0,0,0,0),i<a.getTime()?Promise.reject(Error(t??`${e} cannot be a past date`)):Promise.resolve()}}),noFutureDate:({label:e,message:t})=>({validator:(n,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=new Date;return a.setHours(23,59,59,999),i>a.getTime()?Promise.reject(Error(t??`${e} cannot be a future date`)):Promise.resolve()}}),minAge:({label:e,message:t,value:n})=>({validator:(e,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=Number(n??18),o=new Date;return o.setFullYear(o.getFullYear()-a),o.setHours(23,59,59,999),i>o.getTime()?Promise.reject(Error(t??`Must be at least ${a} years old`)):Promise.resolve()}}),dateAfterField:({field:e,label:t,message:n,value:r,rule:i,form:a,name:o})=>({validator:async(e,s)=>{let c=r??i.compareField??i.field;if(!c)return Promise.resolve();let l=bo(o,c),u=a.getFieldValue(l);if(mo(u)||mo(s))return Promise.resolve();let d=vo(u),f=vo(s);return d===null||f===null?Promise.resolve():f<d?Promise.reject(Error(n??`${t} should not be before Start Date`)):Promise.resolve()}}),dateBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=vo(s),d=vo(l);return u===null||d===null||u<=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or before ${c}`))}}),timeAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=yo(s),d=yo(l);return u===null||d===null||u>d?Promise.resolve():Promise.reject(Error(t??`${e} must be after ${c}`))}}),timeBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=yo(s),d=yo(l);return u===null||d===null||u<d?Promise.resolve():Promise.reject(Error(t??`${e} must be before ${c}`))}}),greaterThanField:e=>xo({...e,compare:(e,t)=>e>=t,text:`must be greater than or equal to`}),strictGreaterThanField:e=>xo({...e,compare:(e,t)=>e>t,text:`must be greater than`}),strictLessThanField:e=>xo({...e,compare:(e,t)=>e<t,text:`must be less than`}),lessThanOrEqualField:e=>xo({...e,compare:(e,t)=>e<=t,text:`must be less than or equal to`}),maxFieldWithFallback:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{if(mo(s))return Promise.resolve();let c=String(n??r.compareFields??``).split(`,`).map(e=>e.trim()).filter(Boolean).find(e=>!mo(i.getFieldValue(bo(a,e))));if(!c)return Promise.resolve();let l=Number(i.getFieldValue(bo(a,c))),u=Number(s);return Number.isNaN(l)||Number.isNaN(u)||u<=l?Promise.resolve():Promise.reject(Error(t??`${e} must not exceed ${c}`))}}),required:({field:e,message:t})=>({validator:(n,r)=>{let i=r==null||r===``||Array.isArray(r)&&r.length===0;return!i&&e?.type===`text-editor`&&(i=ho(r)===``),i?Promise.reject(Error(t??`Mandatory Field`)):Promise.resolve()}}),email:({label:t,message:n})=>e.v(t,n),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})=>({pattern:/^[0-9]{10}$/,message:e??`Phone number must contain exactly 10 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`?go({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`?ho(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`?go({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`?ho(a):String(a);return o===``||o.length<=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must not exceed ${r} characters`))}}};function Co(e,t,n,r){let i=typeof e==`string`?{type:e}:e,a=i.type??i.rule??i.name,o=i.value??i.length??i.min??i.max,s=t.label??t.field??`Field`,c=So[a];return c?c({field:t,label:s,message:i.message,rule:i,value:o,form:n,name:r}):i}function wo(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function To(e){return Ja(e?.req)?!0:(e?.validations??e?.validation??e?.rules??[]).some(e=>(typeof e==`string`?e:e?.type)===`required`)}function Eo(t,n,r,i=!1){let a=t.label??t.field??`Field`,o=t.validations??t.validation??t.rules??[],s=o.some(e=>(typeof e==`string`?e:e?.type)===`required`),c=o.some(e=>(typeof e==`string`?e:e?.type)===`email`),l=[];return!i&&Ja(t.req)&&!s&&(t.disabledByField?l.push({validator:(e,i)=>Ja(n.getFieldValue(wo(r,t.disabledByField)))?Promise.resolve():i==null||i===``?Promise.reject(Error(`Mandatory Field`)):Promise.resolve()}):l.push({required:!0,message:`Mandatory Field`})),(t.type===`email`||t.formatter===`email`)&&!c&&l.push(e.v(a)),t.type===`number`&&l.push(Ja(t.decimal)?{pattern:/^\d+(\.\d+)?$/,message:`${a} must be a number`}:{pattern:/^[0-9]+$/,message:`${a} must be a number`}),[...l,...o.map(e=>Co(e,t,n,r)),e.K(t)]}function Do(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]}function Oo(e){let t=e.len??Do(e,`len`),n=e.min??Do(e,`min`),r=e.max??Do(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 ko(e,t,n){let r=e.validations??e.validation??e.rules??[],i=[];for(let e of r){let r=typeof e==`string`?e:e?.type;if(r===`noPastDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(0,0,0,0),_o(e)<t.getTime()}),r===`noFutureDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(23,59,59,999),_o(e)>t.getTime()}),r===`minAge`){let t=Number(e?.value??18);i.push(e=>{if(!e)return!1;let n=new Date;return n.setFullYear(n.getFullYear()-t),n.setHours(23,59,59,999),_o(e)>n.getTime()})}if(r===`dateAfterField`||r===`dateBeforeField`){let a=e?.value??e?.compareField??e?.field;if(!a)continue;i.push(e=>{if(!e)return!1;let i=t.getFieldValue(bo(n,a));if(mo(i))return!1;let o=vo(e),s=vo(i);return o===null||s===null?!1:r===`dateAfterField`?o<s:o>s})}}return i.length?e=>i.some(t=>t(e)):void 0}function Ao(e){let t=e.validations??e.validation??e.rules??[];for(let e of t){let t=typeof e==`string`?e:e?.type;if(t===`minAge`){let t=Number(e?.value??18);return(0,c.default)().subtract(t,`year`)}if(t===`noFutureDate`||t===`noPastDate`)return(0,c.default)()}}function jo(e,t){return t?t===`phone`||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 Mo(e=``){let t=String(e).toLowerCase();return t===`job`?`jobs`:t===`candidate`?`candidates`:t===`submissions`?`submission`:t}var No=new Set([`selectedSource`,`source`,`sourceType`,`scope`]);function Po(e){return e==null?!1:typeof e==`string`?e.trim().length>0:typeof e==`number`?Number.isFinite(e):typeof e==`boolean`?e:c.default.isDayjs(e)?e.isValid():Array.isArray(e)?e.some(Po):typeof e==`object`?`value`in e||`label`in e||`name`in e?Po(e.value??e.label??e.name):Object.entries(e).some(([e,t])=>!No.has(e)&&Po(t)):!1}function Fo(e={}){return Object.entries(e??{}).some(([e,t])=>!No.has(e)&&Po(t))}function Io(t,n,r={},i=``){let a=new FormData;e.B(t,n,{scope:`flat`,module:i}).forEach(({formKey:e,file:t})=>{a.append(e,t)});let o={...r,...e.R(t,n,{module:i})};return o.schemaVersion=1,a.append(`json`,JSON.stringify(o)),a}function Lo({field:n,form:s,name:c,moduleName:l,value:u,checked:d,onChange:f,scopeValues:p={},onAiUpload:m,formDisabled:h}){let g=n.type??`text`,_=!Ya(n,l),[v,y]=(0,r.useState)(null),[b,x]=(0,r.useState)(!1),[S,C]=(0,r.useState)(``),[w,T]=(0,r.useState)(``),[E,D]=(0,r.useState)(``),[O,k]=(0,r.useState)(0),[A,j]=(0,r.useState)({open:!1,docs:[],index:0}),[M,N]=(0,r.useState)(null),P=(0,r.useRef)([]),F=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`,I=n.lookupFilterValueFrom?Za(n.lookupFilterValueFrom):[`__lookup_filter_${n.field}`],L=n.lookupFilterValueFrom&&F?[...c.slice(0,2),...Za(n.lookupFilterValueFrom)]:[`__noop_row_filter__`],R=i.Form.useWatch(I,s),z=i.Form.useWatch(L,s),B=mo(z)?R:z,V=n.disabledByField?Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.disabledByField]:[n.disabledByField]:[`__noop_disabled_watch__`],H=i.Form.useWatch(V,s),U=n.disabledIf?.field?Za(n.disabledIf.field):[`__noop_disabled_if__`],W=n.disabledIf?.field&&F?[...c.slice(0,2),...Za(n.disabledIf.field)]:[`__noop_disabled_if_row__`],G=i.Form.useWatch(U,s),ee=i.Form.useWatch(W,s),te=n.disabledIf?.field?e.r(n.disabledIf,mo(ee)?G:ee):!1,K=_||!!n.disabled||te||(n.disabledByField?Ja(H):!1)||!!h,ne=n.lookupFilterValueFrom?p[n.lookupFilterValueFrom]:void 0,re=mo(ne)?B:ne;(0,r.useEffect)(()=>{if(g===`location`){let e=!1;x(!0);async function r(){try{let r=await t.i(t.v,`/admin/location-dropdown-values?${new URLSearchParams({search:S,limit:String(n.limit??50),offset:`0`})}`),i=r?.data??r??[];e||y(Xa(Array.isArray(i)?i:[]))}catch(t){console.error(`[AddFormV1] Failed to fetch locations for "${n.field}":`,t),e||y([])}finally{e||x(!1)}}return r(),()=>{e=!0}}let r=n.dataSource;if(![`select`,`radio`,`checkbox`].includes(g)||!r||r===`static`)return;if(r===`lookup`&&n.lookupFilterField&&mo(re)){y([]),x(!1);return}let i=!1;x(!0);async function a(){try{let a=[];if(r===`master`||r===`module`)a=await e.Cn(l,n.field,r===`master`?E:``,n.limit??50,0,{dataSource:r,masterName:n.masterName,groupName:n.groupName});else if(r===`lookup`){let e=new URLSearchParams({collection:n.lookupCollection??``,displayField:n.displayField??``,valueField:n.valueField??`_id`});n.displayField2&&e.set(`displayField2`,n.displayField2),w&&e.set(`search`,w),n.lookupFilterField&&!mo(re)&&(e.set(`filterField`,n.lookupFilterField),e.set(`filterValue`,String(re))),n.extraFields?.length&&e.set(`extraFields`,n.extraFields.join(`,`));let r=await t.i(t.v,`/admin/lookup-dropdown-values?${e}`);a=r?.data??r??[],n.optionsRequireExtraField&&(a=a.filter(e=>e?.extraData?.[n.optionsRequireExtraField]===!0))}else if(r===`group`){let e=(n.groupName??``).toLowerCase().trim();if(e===`users`||e===`user`){let e=await t.i(t.v,`/get-all-users?limit=500&offset=0`),n=e?.data?.users??e?.users??e?.data??[];a=Array.isArray(n)?n.map(e=>({label:[e.firstName,e.lastName].filter(Boolean).join(` `).trim()||e.userName||e.email||String(e.userId),value:e.userId??e.id})):[]}}i||(P.current=Array.isArray(a)?a:[],y(Xa(P.current)))}catch(e){console.error(`[AddFormV1] Failed to fetch options for "${n.field}":`,e),i||y([])}finally{i||x(!1)}}return a(),()=>{i=!0}},[g,n.dataSource,n.field,n.limit,n.lookupCollection,n.displayField,n.displayField2,n.valueField,n.lookupFilterField,re,n.groupName,n.masterName,S,w,E,l,n.extraFields,n.optionsRequireExtraField,O]);let q=Xa(n.options??n.values??[]),J=v??q,ie=(n.multiSelect?`multiple`:n.mode??(Ja(n.multiple)?`multiple`:void 0))??(e.V(n)===`array`?`multiple`:void 0),ae=[`select`,`location`].includes(g),oe=n.hidePlaceholder?void 0:n.placeholder??`${ae?`Select`:`Enter`} ${String(n.label??``).toLowerCase()}`,Y=Oo(n),se=e=>{f?.(e),setTimeout(()=>{s.validateFields([c]).catch(()=>{})},0)},ce=e.f({field:n,form:s,name:c,moduleName:l,scopeValues:p,ownValue:u,onDone:(t,r)=>{k(e=>e+1);let i=e.V(n)!==`array`&&!n.multiSelect&&!n.multiple;t===`create`&&r!=null&&i&&se(e.G(n)?{value:r}:r)}}),le=n.validator?.type?{...n.validator,title:n.validator.title||n.label||`Field`}:null,ue={...Y,disabled:K,placeholder:oe,prefix:n.icon?null:qa[n.field],value:u??``,onChange:t=>{let r=n.formatter?jo(t.target.value,n.formatter):t.target.value;if(le){let{cleaned:t,error:n}=e.g(r,le,`change`);N(n),r=t}se(r)},...le&&{onBlur:t=>{let{cleaned:n,error:r}=e.g(t.target.value,le,`blur`);N(r),n!==t.target.value&&se(n)},onKeyPress:t=>{let n=e._(le.type);if(!n||t.which===0||t.keyCode===8||t.keyCode===13)return;let r=String.fromCharCode(t.which??t.keyCode);if(!n.test(r)){t.preventDefault();let e=`${le.title} — invalid character.`;N(e),setTimeout(()=>N(t=>t===e?null:t),1800)}},maxLength:le.maxLength??Y.maxLength}};if(g===`tagify`)return(0,o.jsx)(i.Select,{value:u,allowClear:!0,disabled:K,mode:`tags`,placeholder:oe,onChange:se});if(g===`location`)return(0,o.jsx)(i.Select,{value:u,allowClear:!0,showSearch:!0,filterOption:!1,disabled:K,loading:b,options:J,placeholder:oe,notFoundContent:b?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:C,onFocus:()=>C(e=>e),onChange:se});if(g===`select`){let t=n.dataSource===`lookup`,r=n.dataSource===`master`,a=t||r,l=n.dataSource===`group`,d=e.G(n),f=e.W(n,u,J);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Select,{value:f,labelInValue:d||void 0,allowClear:!0,showSearch:a||l||void 0,optionFilterProp:`label`,filterOption:a?!1:void 0,disabled:K,loading:b,mode:ie,options:J,placeholder:oe,notFoundContent:b?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:t?T:r?D:void 0,onChange:e=>{if(se(e),n.autofillFrom?.length){let t=e&&!Array.isArray(e)&&typeof e==`object`?e.value:e,r=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`;if(e==null)n.autofillFrom.forEach(({targetField:e})=>{let t=r?[...c.slice(0,2),...Za(e)]:Za(e);s.setFieldValue(t,null)});else if(P.current.length>0){let e=n.valueField??`_id`,i=P.current.find(n=>oo(n,e)===t||n._id===t||n.id===t||n.value===t);i&&n.autofillFrom.forEach(({optionKey:e,targetField:t})=>{let n=oo(i,e)??i.extraData?.[e]??null,a=r?[...c.slice(0,2),...Za(t)]:Za(t);s.setFieldValue(a,n)})}}},dropdownRender:ce.footer?e=>(0,o.jsxs)(o.Fragment,{children:[e,ce.footer]}):void 0}),ce.modal]})}if(g===`radio`)return(0,o.jsx)(i.Radio.Group,{value:u,disabled:K,options:J,onChange:e=>se(e.target.value)});if(g===`checkbox`)return J.length>0?(0,o.jsx)(i.Checkbox.Group,{value:u,disabled:K,options:J,onChange:se}):(0,o.jsx)(i.Checkbox,{checked:!!(d??u),disabled:K,onChange:e=>{let t=e.target.checked;if(se(t),n.linkedClearField&&t){let e=Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.linkedClearField]:[n.linkedClearField];s.setFieldValue(e,null)}},children:n.checkboxLabel??n.label});if(g===`text-editor`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.kn,{value:u??s.getFieldValue(c)??``,disabled:K,placeholder:oe,onChange:t=>{if(le){let{error:n}=e.g(t,le,`change`);N(n)}se(t)}}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]});if(g===`textarea`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(Wa,{...ue,rows:n.rows??3,className:`v1-scroll-textarea`}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]});if(g===`date`)return(0,o.jsx)(i.DatePicker,{disabled:K,placeholder:oe,style:{width:`100%`},suffixIcon:(0,o.jsx)(a.CalendarOutlined,{}),value:u??null,disabledDate:ko(n,s,c),defaultPickerValue:Ao(n),onChange:e=>se(e)});if(g===`time`)return(0,o.jsx)(i.TimePicker,{disabled:K,placeholder:oe,style:{width:`100%`},value:u??null,onChange:e=>se(e)});if(g===`file`){let t=n.validations??n.validation??n.rules??[],r=t.find(e=>(typeof e==`string`?e:e?.type)===`fileType`),s=t.find(e=>(typeof e==`string`?e:e?.type)===`fileSize`),c=t.find(e=>(typeof e==`string`?e:e?.type)===`maxFiles`),l=e.m(n),d=l?l.exts.map(e=>`.${e}`).join(`,`):r?.value?r.value.split(`,`).map(e=>`.${e.trim().replace(/^\./,``)}`).join(`,`):void 0,f=s?Number(s?.value??5):void 0,p=c?Number(c?.value??1):Ja(n.multiple)?n.maxCount??5:1,h=Array.isArray(u)?u:[],g=h.length<p,_=e=>e?e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`:``,v=e=>{let t=(e??``).split(`.`).pop()?.toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-type-icon v1-file-icon-pdf`}):[`doc`,`docx`].includes(t)?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-type-icon v1-file-icon-word`}):[`xls`,`xlsx`,`csv`].includes(t)?(0,o.jsx)(a.FileExcelOutlined,{className:`v1-file-type-icon v1-file-icon-excel`}):[`jpg`,`jpeg`,`png`,`gif`,`svg`,`webp`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-type-icon v1-file-icon-image`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-type-icon v1-file-icon-default`})},y=e=>{se(h.filter((t,n)=>n!==e))},b=(e,t)=>{j({open:!0,docs:h.map(e=>{let t=e.url??e.thumbUrl??``;return!t&&e.originFileObj instanceof File&&(t=URL.createObjectURL(e.originFileObj)),{url:t,name:e.name??`file`}}).filter(e=>e.url),index:t??0})},x=p>1,S=p-h.length,C=[l?l.hint:d?d.split(`,`).map(e=>e.replace(`.`,``).toUpperCase()).join(`, `):null,f?`up to ${f} MB`:null].filter(Boolean).join(` `),w=x&&h.length>0?[C,`${S} of ${p} remaining`].filter(Boolean).join(` • `):C,T=h.length>0?`Add ${x?`more files`:`file`}`:n.buttonLabel??`Upload ${n.label??`File`}`,E=e=>{if(h.length>=p)return i.Upload.LIST_IGNORE;if(d){let t=(e.name.split(`.`).pop()??``).toLowerCase();if(!d.split(`,`).map(e=>e.replace(/^\./,``).toLowerCase()).includes(t))return i.message.error(l?l.error:r?.message??`Only ${r.value} files are allowed`),i.Upload.LIST_IGNORE}return f!==void 0&&e.size/1024/1024>f?(i.message.error(s?.message??`File must be smaller than ${f} MB`),i.Upload.LIST_IGNORE):!1},D=({fileList:e})=>{let t=e.slice(0,p);if(se(t),m&&t.length>h.length){let e=t[t.length-1];e?.originFileObj&&m(e.originFileObj)}},O={accept:d,fileList:h,showUploadList:!1,multiple:!0,maxCount:p,beforeUpload:E,onChange:D,disabled:K},k=h.map((e,t)=>(0,o.jsxs)(`div`,{className:`v1-file-item`,children:[(0,o.jsx)(`div`,{className:`v1-file-item-icon`,children:v(e.name)}),(0,o.jsxs)(`div`,{className:`v1-file-item-info`,children:[(0,o.jsx)(`span`,{className:`v1-file-item-name`,children:e.name}),(0,o.jsx)(`span`,{className:`v1-file-item-meta`,children:e.existing?`Previously uploaded`:`${_(e.size)}${e.size?` • `:``}Uploaded just now`})]}),(0,o.jsxs)(i.Space,{size:6,className:`v1-file-item-actions`,children:[(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),onClick:()=>b(e,t),className:`v1-file-view-btn`,children:`View`}),(0,o.jsx)(i.Button,{size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>y(t),className:`v1-file-delete-btn`})]})]},e.uid??t)),M=(0,o.jsx)(e.On,{documents:A.docs,open:A.open,onClose:()=>j(e=>({...e,open:!1})),initialIndex:A.index});if(x){let e=h.length>0?`Upload more ${n.label??`files`}`:n.buttonLabel??`Upload ${n.label??`File`}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[g&&(0,o.jsx)(i.Upload,{...O,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-center${K?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsxs)(`div`,{className:`v1-upload-dropzone-title-row`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon v1-upload-cloud-icon-sm`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title v1-upload-dropzone-title-blue`,children:e})]}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:`Drag & drop or click to upload`}),C&&(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:C})]})}),h.length>0&&(0,o.jsx)(`div`,{className:`v1-file-grid`,children:k}),g&&h.length>0&&(0,o.jsx)(i.Upload,{...O,style:{display:`inline-block`},children:(0,o.jsx)(i.Button,{type:`link`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),className:`v1-add-more-files-btn`,children:`Add more files`})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[h.length>0&&(0,o.jsx)(`div`,{className:`v1-file-rows-single`,children:k}),g&&(0,o.jsx)(i.Upload,{accept:d,fileList:h,showUploadList:!1,multiple:!1,maxCount:1,beforeUpload:E,onChange:D,disabled:K,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-single${K?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title`,children:T}),w&&(0,o.jsxs)(`span`,{className:`v1-upload-dropzone-sub`,children:[`— `,w]})]})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Input,{...ue,type:g===`number`?`number`:g,...g===`number`&&Ja(n.decimal)?{step:`any`}:{},...n.suffix?{suffix:n.suffix}:{}}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]})}function Ro({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(Ua,{strong:!0,className:`v1-section-label`,children:t})]})}function zo({field:e,label:t,locked:n}){if(!t)return t;let r=Ja(e?.infoEnabled)&&!mo(e?.infoText);return!r&&!n?t:(0,o.jsxs)(`span`,{className:`v1-field-label-with-info`,children:[(0,o.jsx)(`span`,{children:t}),r&&(0,o.jsx)(i.Tooltip,{title:e.infoText,children:(0,o.jsx)(a.InfoCircleOutlined,{className:`v1-field-info-icon`})}),n&&(0,o.jsx)(i.Tooltip,{title:`You don't have permission to edit this field`,children:(0,o.jsx)(a.LockOutlined,{className:`v1-field-info-icon`})})]})}function Bo({group:e}){return!Ja(e?.infoEnabled)||mo(e?.infoText)?null:(0,o.jsx)(Ua,{type:`secondary`,className:`v1-group-info-message`,children:e.infoText})}function Vo({group:e}){return!Ja(e?.toggleEnabled)||mo(e?.toggleField)?null:(0,o.jsxs)(i.Space,{size:6,align:`center`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(Ua,{type:`secondary`,className:`v1-combine-toggle-label`,children:e.toggleLabel||`Toggle`}),(0,o.jsx)(i.Form.Item,{name:e.toggleField,valuePropName:`checked`,initialValue:!!e.toggleValue,noStyle:!0,children:(0,o.jsx)(i.Switch,{size:`small`})})]})}function Ho({moduleName:n,action:c,clientId:l,region:u,formGroups:d,loading:f=!1,error:p=``,breadcrumbItems:m=[],formType:h=`add`,submitText:g,cancelPath:_=`/candidates`,onSubmit:v,initialRecord:y=null,prefillFromUrl:b=!1,extraPayload:x=null,presetClientId:S=null,listViewProps:C={},selectedScope:w=``,searchActionContext:T=null,embedded:E=!1,onSuccess:D=null,onCancel:O=null}){let k=h===`search`,A=g??(k?`Search`:`Create`),j=(0,s.useNavigate)(),M=(0,s.useParams)(),[N]=(0,s.useSearchParams)(),[P]=i.Form.useForm(),F=i.Form.useWatch([],P),[I,L]=(0,r.useState)(!1),[R,z]=(0,r.useState)({}),[B,V]=(0,r.useState)([]),[H,U]=(0,r.useState)(!!n),[W,G]=(0,r.useState)(``),[ee,te]=(0,r.useState)(``),[K,ne]=(0,r.useState)(!1),[re,q]=(0,r.useState)({searched:!1,rows:[],total:0,fields:[],actions:[],actionRules:[],loading:!1}),[J,ie]=(0,r.useState)({current:1,pageSize:10}),[ae,oe]=(0,r.useState)({}),[Y,se]=(0,r.useState)(`internal`),[ce,le]=(0,r.useState)([]),[ue,de]=(0,r.useState)({}),[fe,pe]=(0,r.useState)([]),[me,he]=(0,r.useState)(l??``),[ge,_e]=(0,r.useState)(u??``),[ve,ye]=(0,r.useState)(null),[be,xe]=(0,r.useState)(!1),[X,Se]=(0,r.useState)(null),[Ce,we]=(0,r.useState)(()=>new Set),Te=n?B:d??Ga,Ee=n?H:f,De=n?W:p,Oe=l||S||me,ke=u||ge;(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{if(!t){if(!n){Se(null);return}e.Gt({roleId:localStorage.getItem(`roleId`)},n,{clientId:Oe,region:ke}).then(e=>{t||Se(Array.isArray(e)&&e.length?e:null)}).catch(()=>{t||Se(null)})}}),()=>{t=!0}},[n,Oe,ke]),(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{if(!t){if(!n){we(new Set);return}e.Vt(n).then(e=>{t||we(new Set(Array.isArray(e)?e:[]))}).catch(()=>{t||we(new Set)})}}),()=>{t=!0}},[n]);let Ae=(0,r.useMemo)(()=>lo(Te,n,X,Ce),[Te,n,X,Ce]),je=(0,r.useMemo)(()=>e.P(Ae),[Ae]),Me=(0,r.useRef)({}),Ne=(0,r.useRef)(null),Pe=(0,r.useMemo)(()=>Ae.flatMap(e=>e.formActions??[]),[Ae]),Fe=e.x({form:P,groups:Ae,module:n}),[Ie,Le]=(0,r.useState)(`list`),Re=k&&!Fo(F),{hasClientScope:ze,clientGateMessage:Be,clientGateResetOnChange:Ve}=(0,r.useMemo)(()=>{let e=co(Te).flatMap(e=>e.fields??[]).find(e=>Ja(e.clientScope));return e?{hasClientScope:!0,clientGateMessage:e.clientGateMessage||``,clientGateResetOnChange:Ja(e.clientGateResetOnChange)}:{hasClientScope:!1,clientGateMessage:``,clientGateResetOnChange:!1}},[Te]),He=e=>{if(Ve){P.resetFields();let e=P.getFieldsValue(!0);P.setFieldsValue(Object.fromEntries(Object.keys(e).map(e=>[e,void 0]))),q({searched:!1,rows:[],total:0,fields:[],loading:!1}),ie({current:1,pageSize:10})}he(e??``)},Ue=ze&&!Oe;(0,r.useEffect)(()=>{!ze||S||e.xt({limit:200}).then(pe).catch(()=>pe([]))},[ze,S]),(0,r.useEffect)(()=>{if(!n)return;let t=!1;async function r(){try{U(!0),G(``);let r=k?await e.jt(n,`search`,c):await e.Sn({module:n,action:c,clientId:Oe,region:ke});t||(V(co(k?r?.[0]:r)),k&&te(r?.[0]?.label||``))}catch(e){console.error(`Failed to fetch ${n} form groups:`,e),t||G(e?.message||`Failed to fetch form groups`)}finally{t||U(!1)}}return r(),()=>{t=!0}},[n,c,k,Oe,ke]);let We=(0,r.useMemo)(()=>{if(!b)return null;let e=N.get(`candidateId`)||``,t=N.get(`submissionId`)||``,n=String(N.get(`isFromSubmission`))===`true`,r=M.jobId&&M.jobId!==`_`?M.jobId:N.get(`jobId`)||``,i=n&&t?{module:`submissions`,id:t}:e?{module:`candidates`,id:e}:null,a={};return e&&(a.applicantId=e),r&&(a.jobId=r),{source:i,linkage:Object.keys(a).length?a:null}},[b,N,M]);(0,r.useEffect)(()=>{let t=We?.source;if(!t)return;let n=!1;async function r(){try{xe(!0);let r=await e.Sn({module:t.module,id:t.id});n||ye(co(r))}catch(e){console.error(`Failed to fetch prefill data:`,e),n||ye([])}finally{n||xe(!1)}}return r(),()=>{n=!0}},[We]);let Ge=(0,r.useMemo)(()=>ve?Object.fromEntries(ve.filter(e=>e.addRow&&Array.isArray(e.rows)&&e.rows.length>0).map(e=>[e.payloadKey||e.name,e.rows])):{},[ve]),Ke=(0,r.useMemo)(()=>uo(ve),[ve]),qe=(0,r.useMemo)(()=>{let e=new Set;return Ae.forEach(t=>(t.fields??[]).forEach(t=>{t.prefillFromModule&&e.add(Mo(t.prefillFromModule))})),[...e]},[Ae]),[Je,Ye]=(0,r.useState)({});(0,r.useEffect)(()=>{let t=We?.linkage;if(!t||qe.length===0)return;let n=!1,r=e=>e===`jobs`?t.jobId:e===`candidates`?t.applicantId:void 0;return qe.forEach(async t=>{let i=r(t);if(i)try{let r=uo(co(await e.Sn({module:t,id:i})));!n&&r&&Ye(e=>({...e,[t]:r}))}catch(e){console.error(`Context prefill fetch failed for ${t}:`,e)}}),()=>{n=!0}},[qe,We]),(0,r.useEffect)(()=>{let t=y??Ke;if(!t&&Object.keys(Je).length===0||Ee||Ae.length===0)return;let n={};Ae.forEach(r=>{if(r.toggleEnabled&&r.toggleField&&t){let e=fo(t,{field:r.toggleField});e!=null&&(n[r.toggleField]=!!e)}r.addRow||(r.fields??[]).forEach(r=>{if(!r.field||Ja(r.addRow))return;let i=r.prefillFromModule?Je[Mo(r.prefillFromModule)]:t;if(!i)return;let a=fo(i,r);if(a!=null)if(r.type===`file`){let e=po(a);e.length>0&&(n[r.field]=e)}else n[r.field]=e.L(r,a)})}),Object.keys(n).length>0&&P.setFieldsValue(n)},[y,Ke,Je,Ee,Ae,P]);let Xe={...ze&&Oe?{clientId:Oe}:{},...We?.linkage??x??{}},Ze=!Ue&&!Ee&&(!We?.source||ve!==null&&!be),Qe=t=>{let n=Ge[t.payloadKey||t.name],r=Math.max(0,Number(t.minRows??0)||0);if(!n||n.length===0){let e=t.initialRows===void 0?r:Math.max(r,Math.max(0,Number(t.initialRows)||0));return Array.from({length:e},()=>({}))}let i=n.map(n=>{let r={};return(t.fields??[]).forEach(t=>{if(!t.field||t.type===`file`)return;let i=fo(n,t);i!=null&&(r[t.field]=Ja(t.addRow)?e.z(t,i):e.L(t,i))}),Object.keys(r).length>0?r:{}});for(;i.length<r;)i.push({});return i},$e=(0,r.useMemo)(()=>{let t={};return Ae.forEach(e=>{e.addRow&&(t[e.name]=Qe(e))}),e.I(je,t)},[Ae,Ge,je]),et=e=>z(t=>({...t,[e]:!t[e]})),tt=()=>{P.resetFields(),z({}),se(`internal`),le([])},nt=(0,r.useCallback)(async(t,r,a={})=>{if(!k)return;let o=Number(a.pageSize)>0?Number(a.pageSize):J.pageSize,s=Number(a.current),c=Number.isFinite(s)&&s>0?Math.floor(s):1;try{oe(t),ie({current:c,pageSize:o}),q(e=>({...e,loading:!0,searched:!0}));let i=Oa(t?.selectedSource),a=r?ka(r,Y):i.includes(`internal`)?`internal`:ka(t?.selectedSource,Y),s={...t,selectedSource:a};console.log(`[AddFormV1] Calling searchModuleData with scope:`,a);let l=await e.Tn(n||`candidates`,s,{limit:o,offset:(c-1)*o},{scope:a});se(a),q({searched:!0,rows:l.rows,total:l.total,fields:l.fields,actions:l.actions??[],actionRules:l.actionRules??[],loading:!1}),le(e=>Pa({sources:i,activeSource:a,activeCount:l.total,responseCounts:l.counts,currentTabs:e,backendTabs:l.tabs}))}catch(e){console.error(`Search failed:`,e),i.message.error(e?.message||`Failed to search records`),q({searched:!0,rows:[],total:0,fields:[],actions:[],actionRules:[],loading:!1})}},[k,n,Y,J.pageSize]),rt=(0,r.useCallback)(async(e,t)=>{let n=Ba(e,t);de(e=>({...e,[n]:{...e[n]??{},loading:!0}}));try{let r=await Va(e,t);i.message.success(r?.message??r?.data?.message??e.successMessage??`Action completed successfully.`),de(e=>({...e,[n]:{loading:!1,completed:!0}}))}catch(t){i.message.error(t?.message||e.errorMessage||`Action failed.`),de(e=>({...e,[n]:{...e[n]??{},loading:!1}}))}finally{de(e=>({...e,[n]:{...e[n]??{},loading:!1}}))}},[]),it=(0,r.useCallback)(e=>{let t=ka(e,Y);se(t),ie({current:1,pageSize:J.pageSize}),Object.keys(ae).length>0&&nt(ae,t,{current:1,pageSize:J.pageSize})},[J.pageSize,ae,nt,Y]),at=(0,r.useCallback)((e,t)=>{let n=Number(t)>0?Number(t):J.pageSize,r=Number(e)>0?Number(e):1;if(Object.keys(ae).length===0){ie({current:r,pageSize:n});return}nt(ae,Y,{current:r,pageSize:n})},[nt,ae,J.pageSize,Y]),ot=(0,r.useCallback)(e=>{let t=Number(e)>0?Number(e):J.pageSize;if(Object.keys(ae).length===0){ie({current:1,pageSize:t});return}nt(ae,Y,{current:1,pageSize:t})},[nt,ae,J.pageSize,Y]),st=async t=>{if(k){await nt(t);return}if(v){await v(t);return}if(!n){console.log(`Form values:`,t);return}try{ne(!0);let r=await e.xn(n,Io(t,Ae,Xe??{},n));if(r?.status===!1){i.message.error(e.o(Ae,n,`add`,r?.error||r?.message||r?.data));return}let a=e.B(t,Ae,{scope:`addRow`,indexed:!0,module:n}),o=r?.id??r?.data?.id??r?.data?._id??r?._id;if(a.length>0&&o)try{await e.nt(n,o,{...Xe??{},...e.R(t,Ae,{module:n})},a)}catch(e){console.error(`Document file attach (post-create update) failed:`,e),i.message.warning(`Record created, but attaching document files failed. Edit the record to re-upload.`)}let s=e.B(t,Ae,{module:n});if(s.length>0&&o)try{await vt(n,o,s)}catch(e){console.error(`Document registry upload failed:`,e),i.message.warning(`Record created, but saving its document records failed.`)}let c=e.s(Ae,n,`add`);if(c&&i.message.success(c),P.resetFields(),E&&D){D(o,t);return}let l=Ne.current??e.c(Ae);if(!l){let e=Mo(n);e===`jobs`?j(`/jobs`):e===`candidates`?j(`/candidates`):e===`onboarding`?j(`/onboarding`):e===`submission`&&j(`/submissions`)}else if(l.mode===`back`)j(-1);else if(l.mode===`route`||l.mode===`detail`){let n=e.l(l.target,o,t);n&&j(n)}}catch(t){console.error(`Failed to create ${n}:`,t),i.message.error(e.o(Ae,n,`add`,t?.data?.error||t?.data?.message||t?.message))}finally{ne(!1),Ne.current=null}},ct=(e,t)=>(e.validations??e.validation??e.rules??[]).filter(e=>{let t=typeof e==`string`?e:e?.type;return[`dateAfterField`,`greaterThanField`,`strictGreaterThanField`,`strictLessThanField`,`lessThanOrEqualField`,`maxFieldWithFallback`,`dateBeforeField`,`timeAfterField`,`timeBeforeField`].includes(t)}).map(e=>String(e.value??e.compareField??e.field??``).split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>bo(t,e))).flat().filter(Boolean),lt=(e,t,n)=>{if(!e?.field)return!0;let r=t(n==null?[e.field]:[...Array.isArray(n)?n:[n],e.field]);switch(e.operator){case`eq`:return String(r??``)===String(e.value??``);case`neq`:return String(r??``)!==String(e.value??``);case`truthy`:return r!=null&&r!==``&&r!==!1;case`falsy`:return r==null||r===``||r===!1;case`notEmpty`:return Array.isArray(r)?r.length>0:!!r;case`in`:return String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));case`notIn`:return!String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));default:return!0}},[ut,dt]=(0,r.useState)({}),ft=e=>String(e?.field??``),pt=(0,r.useMemo)(()=>t.a(),[]),mt=(t,a,s,c={})=>{let l=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):null,u=l??t.field,d=a===void 0?u:[a,...l??[t.field]],f=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],...Array.isArray(d)?d:[d]]:d,p=t.type===`checkbox`&&(t.options&&t.options.length>0||t.dataSource&&t.dataSource!==`static`),m=!p&&t.type===`checkbox`?`checked`:`value`,h=!!t.editablePermission&&!e.d(t.editablePermission,n),g=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],a]:null,_=e=>g&&(!c.rowFieldKeys||c.rowFieldKeys.has(e))?g:null,v=c.inline||c.hideLabel||!p&&t.type===`checkbox`?``:(0,o.jsx)(eo,{form:P,field:t,siblingPrefix:t.labelWhen?.field?_(t.labelWhen.field):g,locked:h}),y=ct(t,f),b=c.inline||t.type===`file`&&Ja(t.multiple)||t.type===`text-editor`?24:t.col??12,x=gt(t,pt),S=a===void 0&&t.type!==`file`&&x.matched&&x.value!==void 0&&x.value!==``?x.value:a===void 0&&t.type!==`file`&&t.defaultValue!==void 0&&t.defaultValue!==``?t.defaultValue:void 0,C=(t.aiActions||[]).filter(e=>e.trigger===`click`),w=(t.aiActions||[]).find(e=>e.trigger===`upload`),T=(0,o.jsx)(i.Form.Item,{label:v,name:d,extra:t.helpText?(0,o.jsx)(Ua,{type:`secondary`,className:`v1-field-help-text`,children:t.helpText}):void 0,required:To(t),rules:Eo(t,P,f,k),dependencies:y,valuePropName:m,initialValue:S,getValueFromEvent:t.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,validateTrigger:[`onBlur`,`onChange`],children:(0,o.jsx)(Lo,{field:t,form:P,name:f,moduleName:n,scopeValues:{clientId:Oe},onAiUpload:w?e=>Fe.runAction(c.groupNameForActions,t,w,e):void 0,formDisabled:Fe.busy})}),E=C.length>0?(()=>{let n=e.b(C),r=r=>(0,o.jsx)(e.y,{position:r,actions:n[r],aiActions:Fe,groupName:c.groupNameForActions,field:t},r);return(0,o.jsxs)(`div`,{className:`v1-ai-action-wrap`,children:[r(`top-left`),r(`top-center`),r(`top-right`),T,r(`bottom-left`),r(`bottom-center`),r(`bottom-right`)]})})():T,D=t.verifyAction?(0,o.jsxs)(`div`,{className:`v1-verify-field-row`,children:[E,(0,o.jsx)($a,{form:P,field:t,absoluteName:f})]}):E,O=c.inline?{flex:`${Number(t.combineWidth)>0?Number(t.combineWidth):1} 1 0`,maxWidth:`none`}:void 0,A=t.prefillWhen?.length?(0,o.jsx)(ro,{form:P,rules:t.prefillWhen,watchPath:_(t.prefillWhen[0].field)?[...g,t.prefillWhen[0].field]:Za(t.prefillWhen[0].field),targetPath:f,resetOnNoMatch:t.prefillWhenReset!==!1},`${t.field}-prefillWhen`):null;return t.showIf?.field?(0,o.jsxs)(r.Fragment,{children:[A,(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>lt(t.showIf,e,_(t.showIf.field))?(0,o.jsx)(i.Col,{xs:24,md:b,style:O,className:c.inline?`v1-combine-cell`:void 0,children:D}):null})]},t.field):(0,o.jsxs)(r.Fragment,{children:[A,(0,o.jsx)(i.Col,{xs:24,md:b,style:O,className:c.inline?`v1-combine-cell`:void 0,children:D})]},t.field)},ht=t=>{let r=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],s=!!t.editablePermission&&!e.d(t.editablePermission,n),c=(0,o.jsx)(zo,{field:t,label:t.label,locked:s}),l=e.U(t),u=Array.isArray(t.subFields)&&t.subFields.length>0,d=u?t.subFields.map(e=>({...e,show:1,edit:1})):null,f=Math.max(0,Number(t.minRows??0)||0),p=t.maxRows!==void 0&&t.maxRows!==``&&Number(t.maxRows)>0?Number(t.maxRows):0,m=e.z(t,fo(y??Ke??{},t));return(0,o.jsx)(i.Col,{xs:24,md:24,children:(0,o.jsx)(i.Form.Item,{label:c,required:To(t),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:r,initialValue:m,rules:[{validator:async(e,n=[])=>{if(To(t)&&!(u?n.some(e=>so(e)):n.some(e=>e!=null&&e!==``&&!(Array.isArray(e)&&e.length===0))))throw Error(`Mandatory Field`);if(f>0&&n.length<f)throw Error(`Keep at least ${f} ${u?`row`:`value`}${f>1?`s`:``}.`)}}],children:(e,{add:s,remove:c},{errors:m})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:s,name:p})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>c(p),disabled:e.length<=f,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:u?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(d,p,r[0],!1,t.field)}):(0,o.jsx)(i.Form.Item,{name:[p],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:Eo(l,P,[...r,p],k),children:(0,o.jsx)(Lo,{field:l,form:P,name:[...r,p],moduleName:n,scopeValues:{clientId:Oe},formDisabled:Fe.busy})})})]},s)),(!p||e.length<p)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>s(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:m})]})})})},t.field)},_t=(t,r,s)=>{let c=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],l=!!t.editablePermission&&!e.d(t.editablePermission,n),u=(0,o.jsx)(zo,{field:t,label:t.label,locked:l}),d=e.U(t),f=Array.isArray(t.subFields)&&t.subFields.length>0,p=f?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=[r,...c],_=[...Array.isArray(s)?s:[s],r,...c],v=e.z(t,void 0);return(0,o.jsx)(i.Col,{xs:24,md:f?24:t.col??24,children:(0,o.jsx)(i.Form.Item,{label:u,required:To(t),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:g,initialValue:v,rules:f?[{validator:async(e,n=[])=>{if(To(t)&&!n.some(e=>so(e)))throw Error(`Mandatory Field`);if(m>0&&n.length<m)throw Error(`Keep at least ${m} row${m>1?`s`:``}.`)}}]:[],children:(e,{add:r,remove:s},{errors:c})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:r,name:c})=>{let l=[..._,c];return(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>s(c),disabled:e.length<=m,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:f?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(p,c,_,!1,t.field)}):(0,o.jsx)(i.Form.Item,{name:[c],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:Eo(d,P,l,k),children:(0,o.jsx)(Lo,{field:d,form:P,name:l,moduleName:n,scopeValues:{clientId:Oe},formDisabled:Fe.busy})})})]},r)}),(!h||e.length<h)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>r(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:c})]})})})},`${s}-${r}-${t.field}`)},yt=(e,t,n,r=!1,a)=>{let s=new Set,c=[],l=new Set(e.map(e=>e.field).filter(Boolean));return e.forEach(u=>{if(Ja(u.addRow)&&t===void 0){c.push(ht(u));return}if(Ja(u.addRow)&&t!==void 0){c.push(_t(u,t,n));return}let d=u.combineKey?.trim?.();if(!d){c.push(mt(u,t,n,{hideLabel:r,groupNameForActions:a,rowFieldKeys:l}));return}let f=`${n??`root`}:${t??`root`}:${d}`;if(s.has(f))return;let p=e.filter(e=>e.combineKey===d);p.forEach(e=>s.add(`${n??`root`}:${t??`root`}:${e.combineKey}`));let m=(0,o.jsx)(eo,{form:P,field:p.find(e=>e.combineLabel)??u,siblingPrefix:n!==void 0&&t!==void 0?[...Array.isArray(n)?n:[n],t]:null,combined:!0}),h=p.find(e=>e.combineToggleTarget)?.combineToggleTarget,g=p.find(e=>e.combineToggleLabel)?.combineToggleLabel??`Show range`,_=f,v=p.some(e=>Ja(e.combineWrap)),y=Number(p.find(e=>[12,24].includes(Number(e.combineSpan)))?.combineSpan),b=h?p.find(e=>ft(e)===h):null,x=b?.field?.includes?.(`.`)?b.field.split(`.`):[b?.field].filter(Boolean),S=b?n!==void 0&&t!==void 0?[n,t,...x]:x.length>1?x:b.field:null,C=p.some(e=>To(e)),w=[12,24].includes(y)?y:p.length>=3?24:12;c.push((0,o.jsx)(i.Col,{xs:24,md:w,children:(0,o.jsx)(i.Form.Item,{label:m,required:C,colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let r=S?!mo(e(S)):!1,a=ut[_]??r,s=h&&!a?p.filter(e=>ft(e)!==h):p;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Row,{gutter:[8,0],align:`top`,wrap:v,className:`v1-combine-row${v?` v1-combine-row-wrap`:``}`,children:s.map(e=>mt(e,t,n,{inline:!0}))}),h&&(0,o.jsxs)(`div`,{className:`v1-combine-range`,children:[(0,o.jsx)(i.Switch,{size:`small`,checked:a,onChange:e=>{!e&&S&&(P.setFieldValue(S,void 0),P.validateFields([S]).catch(()=>{})),dt(t=>({...t,[_]:e}))}}),(0,o.jsx)(Ua,{type:`secondary`,className:`v1-combine-toggle-label`,children:g})]})]})}})})},f))}),c},bt=(0,r.useMemo)(()=>{if(re.fields?.length)return re.fields;let e=re.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})):[]},[re.fields,re.rows]),xt=e=>!Array.isArray(e)||e.length===0?`card`:e.some(e=>[e?.sourceType,e?.profileSource,e?.selectedSource,e?.customFields?.sourceType,e?.customFields?.profileSource].some(e=>{if(e==null)return!1;let t=String(e).trim().toLowerCase();return t?![`all`,`internal`].includes(t):!1}))?`list`:`card`;(0,r.useMemo)(()=>xt(re.rows),[re.rows]);let St=(0,r.useMemo)(()=>{let e=Ra({rows:re.rows,selectedSource:Y});if(!e.length)return bt;let t=new Set(e.map(e=>e.field));return[...bt.filter(e=>e.cardRole!==`action`&&!t.has(e.value)),...e.map(e=>({value:e.field,field:e.field,label:e.label??`Action`,cardRole:`action`,isVisible:!0,tableHidden:!0,sorter:!1,render:(t,n)=>{if(!za(e,n,Y))return null;let r=Ba(e,n),a=ue[r]??{},s=!r||a.completed;return(0,o.jsx)(i.Button,{type:`primary`,size:`small`,loading:a.loading,disabled:s,onClick:()=>rt(e,n),children:a.completed?e.completedLabel:e.buttonLabel})}}))]},[rt,bt,re.rows,Y,ue]),Ct=(0,r.useMemo)(()=>{if(!T)return re.actions;let e=t=>({...t,popupState:{...T,...t.popupState},...t.children?{children:t.children.map(e)}:{}});return(re.actions??[]).map(e)},[re.actions,T]),wt=(t,n)=>{let r=t.name??t.id??String(n),s=t.name??r,c=e.F(je,s),l=!!c&&c.leaderName!==s,u=c?Ae.find(e=>e.name===c.leaderName)??t:t,d=Math.max(0,Number(u.minRows??0)||0),f=Math.max(0,Number(u.maxRows??0)||0),p=c?c.memberNames:[s],m=()=>{p.forEach(e=>Me.current[e]?.add())},h=e=>{p.forEach(t=>Me.current[t]?.remove(e))},g=t.addRow?(0,o.jsx)(i.Form.List,{name:s,initialValue:$e[s]??[],rules:l?[]:[{validator:async(e,n=[])=>{if(!(Ja(t.toggleEnabled)&&t.toggleField&&P.getFieldValue(t.toggleField))){if(d>0&&n.length<d)throw Error(`Keep at least ${d} row${d>1?`s`:``}.`);if(Ja(t.requireOne)&&n.some(e=>!so(e)))throw Error(`Fill at least one field in each added row.`)}}}],children:(e,{add:n,remove:r},{errors:c})=>(Me.current[s]={add:n,remove:r},(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[(0,o.jsx)(`div`,{className:`v1-addrow-topbar`,children:l?(0,o.jsxs)(Ua,{type:`secondary`,className:`v1-addrow-linked-hint`,children:[`Rows added via `,u.label??u.name]}):(!f||e.length<f)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:m,className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Row`}`})}),Ja(t.sharedRowLabels)&&e.length>0&&(0,o.jsx)(i.Row,{gutter:[24,0],className:`v1-addrow-header`,children:t.fields.map(e=>(0,o.jsx)(i.Col,{md:e.col??12,className:`v1-addrow-header-label`,children:e.label},ft(e)))}),e.map(({key:n,name:r})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>h(r),disabled:e.length<=d,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(t.fields,r,s,Ja(t.sharedRowLabels),s)})})]},n)),(0,o.jsx)(i.Form.ErrorList,{errors:c})]}))}):(0,o.jsx)(i.Row,{gutter:[24,0],children:yt(t.fields,void 0,void 0,!1,s)});return(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card`,title:(0,o.jsx)(Ro,{icon:Ka[n%Ka.length],title:k?ee||t.label:t.label??t.name??`Details`}),extra:(0,o.jsxs)(i.Space,{size:8,align:`center`,className:`v1-group-actions`,children:[(0,o.jsx)(Bo,{group:t}),(0,o.jsx)(Vo,{group:t}),(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:R[r]?(0,o.jsx)(a.DownOutlined,{}):(0,o.jsx)(a.UpOutlined,{}),onClick:e=>{e.stopPropagation(),et(r)}})]}),children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let n=Ja(t.toggleEnabled)&&t.toggleField&&!!e(t.toggleField);return(0,o.jsx)(`div`,{style:{display:R[r]||n?`none`:`block`},children:g})}})},r)};return(0,o.jsxs)(`main`,{children:[m.length>0&&(0,o.jsx)(e.t,{items:m}),(0,o.jsxs)(`div`,{className:`v1-edit-page`,children:[ze&&!S&&(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card v1-client-gate-card`,children:(0,o.jsxs)(i.Space,{direction:`vertical`,size:12,style:{width:`100%`},children:[(0,o.jsx)(Ro,{icon:(0,o.jsx)(a.UserOutlined,{}),title:`Select Client`}),Be&&(0,o.jsx)(Ua,{type:`secondary`,children:Be}),(0,o.jsx)(i.Row,{gutter:[16,0],children:(0,o.jsx)(i.Col,{xs:24,md:14,children:(0,o.jsx)(i.Select,{showSearch:!0,allowClear:!0,placeholder:`Select client`,style:{width:`100%`},value:Oe||void 0,optionFilterProp:`label`,options:fe.map(e=>({value:e._id??e.id,label:e.clientName??e.name??e.clientRefrenceId??e._id})).filter(e=>e.value),onChange:He})})})]})}),(0,o.jsx)(`div`,{className:`v1-page-inner`,children:(0,o.jsx)(i.Spin,{spinning:!Ze&&!Ue||Fe.busy,description:Fe.busy?`Running AI action…`:`Loading form fields...`,children:(0,o.jsxs)(i.Form,{form:P,layout:`vertical`,colon:!1,className:`v1-form`,disabled:Fe.busy,requiredMark:(e,{required:t})=>(0,o.jsxs)(o.Fragment,{children:[e,t&&(0,o.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),onFinish:st,onFinishFailed:t=>{z({}),e.a(t,P)},children:[Ze&&Ae.map((e,t)=>e.showIf?.field?(0,o.jsx)(ao,{form:P,showIf:e.showIf,render:()=>wt(e,t)},e.name??`grp-${t}`):wt(e,t)),Ze&&!De&&Ae.length===0&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:k?`No search configuration found.`:`No form fields are configured.`}),Ze&&k&&(0,o.jsx)(`div`,{className:`v1-search-form-actions`,children:(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:tt,disabled:!Ae.length,children:`Reset`}),(0,o.jsx)(i.Button,{onClick:()=>j(_),children:`Back`}),(0,o.jsx)(i.Button,{type:`primary`,htmlType:`submit`,disabled:K||!Ae.length||Re,loading:K,children:A})]})})]})})}),!k&&(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(Ua,{type:`secondary`,children:`All Unsaved Changes will be lost if you cancel and reload.`}),(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:()=>E&&O?O():j(_),children:`Cancel`}),Pe.map((e,t)=>(0,o.jsx)(to,{form:P,groups:Ae,action:e,disabled:!Ze||K||!Ae.length,loading:K,onFire:()=>{Ne.current=e.afterSubmit??{mode:`stay`},P.submit()}},`${e.label??`action`}-${t}`)),(0,o.jsx)(no,{form:P,groups:Ae,onClick:()=>{Ne.current=null,P.submit()},disabled:!Ze||K||!Ae.length,loading:K,children:A})]})]}),k&&re.searched&&(0,o.jsx)(wa,{moduleName:n,breadcrumbItems:[],dataSource:re.rows,fields:St,total:re.total,loading:re.loading,current:J.current,pageSize:J.pageSize,showViewToggle:!0,activeView:Ie,onViewChange:Le,onPageChange:at,onPageSizeChange:ot,showSearch:!1,tabs:ce,selectedSource:Y,onTabChange:it,actions:Ct,actionRules:re.actionRules})]})]})}function Uo({className:e=``,variant:t=`default`,showIcon:n=!0,...r}){return(0,o.jsx)(i.Alert,{className:`app-alert app-alert--${t} ${e}`.trim(),showIcon:n,...r})}function Wo(e){let t=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=Math.round((t(new Date)-t(e))/864e5);return n<=0?`Today`:n===1?`1 Day ago`:`${n} Days ago`}function Go(e=[],t){let n=new Map;return e.forEach(e=>{let r=new Date(t(e));if(Number.isNaN(r.getTime()))return;let i=r.toDateString();n.has(i)||n.set(i,{date:r,items:[]}),n.get(i).items.push(e)}),[...n.values()].sort((e,t)=>t.date-e.date)}function Ko(e){return new Date(e).toLocaleDateString(`en-US`,{year:`numeric`,month:`long`,day:`numeric`})}function qo(e){return new Date(e).toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`})}function Jo(e){return new Date(e).toLocaleTimeString(`en-US`,{hour:`numeric`,minute:`numeric`,hour12:!0})}function Yo({row:e,last:t,getTime:n,getAuthor:r,getMeta:i,renderBody:a}){let s=n(e),c=r?.(e),l=i?.(e);return(0,o.jsxs)(`div`,{className:`znx-an-item`,children:[(0,o.jsxs)(`div`,{className:`znx-an-rail`,children:[l?(0,o.jsx)(`span`,{className:`znx-an-icon-dot znx-an-icon-dot--${l.tone}`,title:l.label,children:l.icon}):(0,o.jsx)(`span`,{className:`znx-an-dot`}),!t&&(0,o.jsx)(`span`,{className:`znx-an-line`})]}),(0,o.jsxs)(`div`,{className:`znx-an-content`,children:[a(e),(0,o.jsxs)(`div`,{className:`znx-an-meta`,title:`${Ko(s)} at ${Jo(s)}`,children:[c&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`span`,{className:`znx-an-author`,children:c}),(0,o.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`})]}),(0,o.jsx)(`span`,{className:`znx-an-time`,children:Jo(s)}),(0,o.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`}),(0,o.jsx)(`span`,{className:`znx-an-date`,children:qo(s)})]})]})]})}function Xo({rows:e=[],getTime:t,getKey:n,getAuthor:r,getMeta:a,renderBody:s,emptyText:c=`Nothing here yet.`,grouped:l=!0}){if(!l)return e.length?(0,o.jsx)(`div`,{className:`znx-an-flat`,children:e.map((i,c)=>(0,o.jsx)(Yo,{row:i,last:c===e.length-1,getTime:t,getAuthor:r,getMeta:a,renderBody:s},n(i,c)))}):(0,o.jsx)(`div`,{className:`znx-an-empty`,children:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:c})});let u=Go(e,t);return u.length?(0,o.jsx)(i.Collapse,{className:`znx-an-collapse`,defaultActiveKey:[`0`],ghost:!0,items:u.map((e,i)=>({key:String(i),label:(0,o.jsxs)(`span`,{className:`znx-an-group`,children:[(0,o.jsx)(`span`,{className:`znx-an-group-day`,children:Wo(e.date)}),(0,o.jsx)(`span`,{className:`znx-an-group-date`,children:qo(e.date)}),(0,o.jsx)(`span`,{className:`znx-an-group-count`,children:e.items.length})]}),children:e.items.map((i,c)=>(0,o.jsx)(Yo,{row:i,last:c===e.items.length-1,getTime:t,getAuthor:r,getMeta:a,renderBody:s},n(i,c)))}))}):(0,o.jsx)(`div`,{className:`znx-an-empty`,children:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:c})})}var Zo={add:`created`,create:`created`,created:`created`,update:`updated`,updated:`updated`,edit:`updated`,edited:`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`,resubmit:`resubmitted`,resubmitted:`resubmitted`,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`},Qo={created:{tone:`success`,icon:(0,o.jsx)(a.PlusOutlined,{}),label:`Created`},updated:{tone:`info`,icon:(0,o.jsx)(a.EditOutlined,{}),label:`Updated`},note:{tone:`neutral`,icon:(0,o.jsx)(a.MessageOutlined,{}),label:`Note`},assigned:{tone:`purple`,icon:(0,o.jsx)(a.UserSwitchOutlined,{}),label:`Assigned`},submitted:{tone:`info`,icon:(0,o.jsx)(a.SendOutlined,{}),label:`Submitted`},resubmitted:{tone:`purple`,icon:(0,o.jsx)(a.RedoOutlined,{}),label:`Re-submitted`},approved:{tone:`success`,icon:(0,o.jsx)(a.CheckOutlined,{}),label:`Approved`},rejected:{tone:`danger`,icon:(0,o.jsx)(a.CloseOutlined,{}),label:`Rejected`},reopened:{tone:`neutral`,icon:(0,o.jsx)(a.UndoOutlined,{}),label:`Reopened`},deleted:{tone:`danger`,icon:(0,o.jsx)(a.DeleteOutlined,{}),label:`Deleted`},status:{tone:`warning`,icon:(0,o.jsx)(a.SwapOutlined,{}),label:`Status changed`},document:{tone:`info`,icon:(0,o.jsx)(a.PaperClipOutlined,{}),label:`Document`},scheduled:{tone:`warning`,icon:(0,o.jsx)(a.ClockCircleOutlined,{}),label:`Scheduled`},default:{tone:`neutral`,icon:(0,o.jsx)(a.HistoryOutlined,{}),label:`Activity`}},$o=[[/\breject/i,`rejected`],[/\bapprov/i,`approved`],[/\bresubmit/i,`resubmitted`],[/\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 es(e,t){let n=String(e||``).trim().toLowerCase();if(n&&Zo[n])return Zo[n];let r=String(t||``);for(let[e,t]of $o)if(e.test(r))return t;return`default`}function ts(e={},t=``){return Qo[es(e.activityType??e.action,t||e.activityComments)]??Qo.default}function ns(e=``){if(typeof document>`u`)return String(e);let t=document.createElement(`div`);return t.innerHTML=e,t.textContent||t.innerText||``}var rs=[{id:`a1`,activityTime:new Date().toISOString(),activityComments:`Job <b>created</b> and assigned to the recruitment team.`},{id:`a2`,activityTime:new Date(Date.now()-2*864e5).toISOString(),activityComments:`Status changed to <b>Active</b>.`}];function is({activity:e,grouped:t=!0}){return(0,o.jsx)(`div`,{className:`znx-an-body`,children:(0,o.jsx)(`div`,{className:`znx-an-scroll`,children:(0,o.jsx)(Xo,{rows:(0,r.useMemo)(()=>Array.isArray(e)?e:rs,[e]),grouped:t,getTime:e=>e.activityTime??e.createdAt,getKey:(e,t)=>e.id??e._id??t,emptyText:`No activity here.`,getMeta:e=>ts(e,e.activityComments),renderBody:e=>{let t=ts(e,e.activityComments);return(0,o.jsxs)(`div`,{className:`znx-an-comment`,children:[(0,o.jsx)(`span`,{className:`znx-an-tag znx-an-tag--${t.tone}`,children:t.label}),ns(e.activityComments)]})}})})})}function as({assignees:e,extraAssignees:t}){return(0,o.jsxs)(i.Avatar.Group,{maxCount:3,size:`small`,children:[e.map((e,t)=>(0,o.jsx)(i.Tooltip,{title:e.initials,children:(0,o.jsx)(i.Avatar,{size:`small`,style:{backgroundColor:e.color,fontSize:10,fontWeight:600,cursor:`default`},children:e.initials})},t)),t>0&&(0,o.jsxs)(i.Avatar,{size:`small`,style:{backgroundColor:`#d9d9d9`,color:`#555`,fontSize:10},children:[`+`,t]})]})}var os=e.Nn({getJobById:()=>ms,getJobDetailView:()=>ss,updateJobDescription:()=>hs});async function ss(e){let n=await t.r(),r=new URLSearchParams({jobId:String(e)}),i=await fetch(`${t.b}/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 cs={email:`zinnext@realtekconsulting.net`,user_pwd:`Admin@123*`},ls=null;async function us(){return ls||(ls=fetch(`${t.v}/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(cs)}).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(()=>{ls=null}),ls)}async function ds(){return(t.c()??localStorage.getItem(`authToken`))||us()}async function fs(e){let n=await ds(),r=await fetch(`${t.v}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(r.status===401&&(localStorage.removeItem(`authToken`),n=await us(),r=await fetch(`${t.v}${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 ps(e,n){let r=await ds(),i=await fetch(`${t.v}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)});if(i.status===401&&(localStorage.removeItem(`authToken`),r=await us(),i=await fetch(`${t.v}${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 ms(e){return fs(`/jobs/${e}`)}async function hs(e,t){return ps(`/jobs/${e}`,{rawDescription:t})}var{Text:gs}=i.Typography,_s=2;function vs({jobId:e,sections:t=[],meta:n=[],rawDescription:s=``,onSaved:c}){let[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(!1),[p,m]=(0,r.useState)(``),[h,g]=(0,r.useState)(!1),_=[...t].sort((e,t)=>(e.displayOrder??0)-(t.displayOrder??0)),v=l?_:_.slice(0,_s),y=_.length>_s;function b(){m(s),f(!0)}function x(){f(!1),m(``)}async function S(){if(!p.trim()){i.message.warning(`Please enter a job description`);return}g(!0);try{await hs(e,p.trim());let t=await ms(e);c?.(t),f(!1),m(``),i.message.success(`Description updated successfully`)}catch{i.message.error(`Failed to update description`)}finally{g(!1)}}return d?(0,o.jsxs)(i.Space,{direction:`vertical`,style:{width:`100%`},size:8,children:[(0,o.jsx)(i.Input.TextArea,{rows:10,value:p,onChange:e=>m(e.target.value),placeholder:`Paste raw job description here...`}),(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{type:`primary`,loading:h,onClick:S,children:`Save & Parse`}),(0,o.jsx)(i.Button,{onClick:x,children:`Cancel`})]})]}):(0,o.jsxs)(`div`,{className:`desc-block`,children:[(0,o.jsx)(`div`,{className:`desc-block-toolbar`,children:(0,o.jsx)(a.EditOutlined,{className:`desc-edit-icon`,onClick:b})}),!t.length&&!n.length?(0,o.jsx)(gs,{type:`secondary`,children:`No description available.`}):(0,o.jsxs)(`div`,{className:`jdv-ats-desc`,children:[n.length>0&&(0,o.jsx)(`div`,{className:`jdv-ats-meta-grid`,children:n.map(({fieldKey:e,fieldLabel:t,value:n})=>(0,o.jsxs)(`div`,{className:`jdv-ats-meta-row`,children:[(0,o.jsx)(`span`,{className:`jdv-ats-meta-key`,children:t}),(0,o.jsx)(`span`,{className:`jdv-ats-meta-val`,children:n})]},e))}),(0,o.jsx)(`div`,{className:`jdv-ats-sections`,children:v.map(({sectionKey:e,sectionTitle:t,renderType:n,content:r=[]})=>n===`education`?(0,o.jsxs)(`div`,{className:`education-block`,children:[(0,o.jsxs)(`div`,{className:`education-header`,children:[(0,o.jsx)(`span`,{children:`🎓`}),(0,o.jsx)(`span`,{children:t})]}),(0,o.jsx)(`ul`,{className:`education-list`,children:r.map((e,t)=>(0,o.jsx)(`li`,{className:`education-list-item`,children:e},t))})]},e):(0,o.jsxs)(`div`,{className:`jdv-ats-section`,children:[(0,o.jsx)(`div`,{className:`jdv-ats-section-hd`,children:(0,o.jsx)(`span`,{children:t})}),n===`chips`?(0,o.jsx)(i.Space,{size:[6,6],wrap:!0,style:{marginTop:8},children:r.map((e,t)=>(0,o.jsx)(i.Tag,{className:`jdv-skill-tag`,children:e},t))}):(0,o.jsx)(`ul`,{className:`jdv-ats-bullets`,children:r.map((e,t)=>(0,o.jsx)(`li`,{className:`jdv-ats-bullet-item`,children:e},t))})]},e))}),y&&(0,o.jsx)(`span`,{className:`jdv-desc-toggle`,onClick:()=>u(e=>!e),children:l?`Show less`:`Show more (${t.length-_s} more sections)`})]})]})}function ys(){return Number(localStorage.getItem(`userId`))||0}function bs(e,{id:t,moduleName:n,record:i}={}){let a=(0,r.useMemo)(()=>Array.isArray(e)?e:[],[e]),o=(0,r.useMemo)(()=>a.filter(e=>typeof e?.visibleWhen==`function`),[a]),[s,c]=(0,r.useState)({});return(0,r.useEffect)(()=>{if(!o.length)return;let e=!1,r={id:t,moduleName:n,record:i,currentUserId:ys()};return o.forEach(n=>{let i=`${t}:${n.key}`;Promise.resolve().then(()=>n.visibleWhen(r)).then(t=>{e||c(e=>({...e,[i]:t!==!1}))}).catch(()=>{e||c(e=>({...e,[i]:!0}))})}),()=>{e=!0}},[o,t,n,i]),(0,r.useMemo)(()=>a.filter(e=>typeof e?.visibleWhen==`function`?s[`${t}:${e.key}`]===!0:!0),[a,s,t])}var xs={USD:`$`,INR:`₹`,EUR:`€`,GBP:`£`,AUD:`$`,CAD:`$`},Ss=e=>e==null||e===``||Array.isArray(e)&&e.length===0,Cs=e=>!Ss(e);function ws(e){let t=Es(e);return t.charAt(0).toUpperCase()+t.slice(1)}function Ts(e){return e&&typeof e==`object`&&!Array.isArray(e)&&`id`in e&&`value`in e?e.id??e.value:e}function Es(e){return Array.isArray(e)?e.filter(e=>!Ss(e)).map(e=>Es(e)).filter(Boolean).join(`, `):e&&typeof e==`object`&&`id`in e&&`value`in e?String(e.value??e.id??``):String(e??``)}function Ds(e){return Ss(e)?``:xs[String(e).toUpperCase()]??String(e)}function Os(e){if(Ss(e))return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:`${t.toLocaleDateString(`en-US`,{month:`short`,day:`2-digit`,year:`numeric`})} | ${t.toLocaleTimeString(`en-US`,{hour:`2-digit`,minute:`2-digit`,hour12:!0}).replace(/\s/g,``).toUpperCase()}`}function ks({start:e,end:t,sym:n=``,unit:r}={}){return Ss(e)||Number(e)<=0?``:`${n}${!Ss(t)&&Number(t)>0?`${e} - ${t}`:`${e}`}${Ss(r)?``:`/${r}`}`}function As(e){let t=Es(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 js=e.Nn({candidateConfig:()=>Ms,default:()=>Ms}),Ms={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:ws(e(`status`)),color:As(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:Ns},{icon:`employment`,field:`workAuthorisation`},{icon:`rate`,prefix:`Expected: `,compute:Ps}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}};function Ns({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 Ps({val:e}){let t=e(`expectedPayDetails`)??{};return ks({start:t.expectedPay??e(`expectedPay`),sym:t.expectedPayCurrencySymbol??Ds(t.expectedPayCurrency),unit:t.expectedPayUnit})}var{Text:Fs}=i.Typography,Is=e=>e==null||e===``,Ls=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/;function Rs(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 zs(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 Bs(e,t){if(Is(e))return``;let n=String(e);return t===!1?n:zs(n)?Rs(n):n}function Vs(e,t,n){return Object.values(e).filter(e=>!Is(e)&&typeof e!=`object`).map(e=>Bs(e,t)).join(n)}function Hs(e,t){if(!e)return e;switch(t){case`upper`:return String(e).toUpperCase();case`lower`:return String(e).toLowerCase();case`title`:return Rs(e);default:return e}}var Us=e=>e&&typeof e==`object`&&!Array.isArray(e)&&`value`in e&&`id`in e;function Ws(e,t,n){return Is(e)?``:Us(e)?Bs(e.value??e.id,t):Array.isArray(e)?e.map(e=>Us(e)?Bs(e.value??e.id,t):e&&typeof e==`object`?Vs(e,t,n):Bs(e,t)).filter(Boolean).join(n):typeof e==`boolean`?e?`Yes`:`No`:typeof e==`object`?Vs(e,t,n):Bs(e,t)}function Gs(e,t,n){if(Array.isArray(e))return e.map(e=>Us(e)?Bs(e.value??e.id,t):e&&typeof e==`object`?Vs(e,t,n):Bs(e,t)).filter(e=>e!==``);if(typeof e==`string`)return e.split(`,`).map(e=>Bs(e.trim(),t)).filter(Boolean);let r=Ws(e,t,n);return r?[r]:[]}function Ks({name:e}){let t=String(e||``).split(`.`).pop().toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-chip__icon`}):t===`doc`||t===`docx`?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-chip__icon`}):[`png`,`jpg`,`jpeg`,`gif`,`webp`,`bmp`,`svg`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-chip__icon`}):[`txt`,`csv`,`json`,`md`].includes(t)?(0,o.jsx)(a.FileTextOutlined,{className:`v1-file-chip__icon`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-chip__icon`})}Ks.propTypes={name:l.default.string};function qs(e){return e?.renderType&&e.renderType!==`auto`?e.renderType:e?.documentPreview===!0?`document`:e?.displayAs===`tag`?`tag`:e?.displayAs===`text`?`text`:`auto`}function Js({value:t,mode:n,empty:s,style:c}){let[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(0),p=e.k(t);if(!p.length)return(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:c,children:s});let m=p.filter(e=>e.url);return n===`text`?(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:c,children:p.map(e=>e.name).join(`, `)}):n===`tag`?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:p.map((e,t)=>(0,o.jsx)(i.Tag,{icon:(0,o.jsx)(a.PaperClipOutlined,{}),children:e.name},t))}):n===`link`||n===`download`?(0,o.jsx)(`span`,{className:`v1-detail-value v1-doc-list`,children:(0,o.jsx)(`span`,{className:`v1-file-list`,children:p.map((e,t)=>e.url?(0,o.jsxs)(`a`,{className:`v1-file-chip`,href:e.url,target:`_blank`,rel:`noopener noreferrer`,download:n===`download`?e.name||``:void 0,title:e.name,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),n===`download`?(0,o.jsx)(a.DownloadOutlined,{className:`v1-file-chip__action`}):(0,o.jsx)(a.LinkOutlined,{className:`v1-file-chip__action`})]},t):(0,o.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No file location`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))})}):(0,o.jsxs)(`div`,{className:`v1-detail-value v1-doc-list`,children:[(0,o.jsx)(`div`,{className:`v1-file-list`,children:p.map((e,t)=>e.url?(0,o.jsxs)(`button`,{type:`button`,className:`v1-file-chip`,onClick:()=>{f(m.indexOf(e)),u(!0)},title:`Preview ${e.name}`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),(0,o.jsx)(a.EyeOutlined,{className:`v1-file-chip__action`})]},t):(0,o.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No preview available for this file`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))}),(0,o.jsx)(e.On,{documents:m,open:l,onClose:()=>u(!1),initialIndex:d})]})}Js.propTypes={value:l.default.any,mode:l.default.string,empty:l.default.string,style:l.default.object};function Ys(e,t){let n=Number(String(e).replace(/[^0-9.-]/g,``));return Number.isNaN(n)?String(e):`${t.currencySymbol??``}${n.toLocaleString(void 0,{maximumFractionDigits:2})}`}function Xs({field:t}){let{value:n,type:r,prefix:s=``,suffix:l=``,color:u=``,capitalize:d}=t??{},f=t?.renderOptions??{},p=e.M(),m=p.emptyPlaceholder,h=p.separator||`, `,g=u?{color:u}:void 0,_=f.tagColor||u||void 0,v=f.textTransform&&f.textTransform!==`none`?f.textTransform:null,y=e=>`${s?`${s} `:``}${e}${l?` ${l}`:``}`,b=e=>v?Hs(e,v):e,x=e=>(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:g,children:b(e)}),S=e=>(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:(0,o.jsx)(i.Tag,{color:_,children:b(e)})}),C=qs(t);if(C!==`document`&&Is(n)&&!f.showEmpty)return x(m);switch(C){case`document`:return(0,o.jsx)(Js,{value:n,mode:f.documentMode||`preview`,empty:m,style:g});case`text`:return x(y(Ws(n,d,h)));case`tag`:case`chip`:return S(y(Ws(n,d,h)));case`badge`:{let e=b(Ws(n,d,h));return(0,o.jsx)(`span`,{className:`v1-detail-value`,children:(0,o.jsx)(i.Badge,{color:_||`blue`,text:e})})}case`tags`:case`multitag`:case`skills`:{let e=Gs(n,d,h);return e.length?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:e.map((e,t)=>(0,o.jsx)(i.Tag,{color:_,children:b(e)},t))}):x(m)}case`link`:{let t=Ws(n,!1,h);return(0,o.jsx)(`a`,{className:`v1-detail-value v1-doc-link`,href:/^https?:\/\//i.test(t)?t:e.O(t)||t,target:`_blank`,rel:`noopener noreferrer`,children:b(y(t))})}case`email`:{let e=Ws(n,!1,h);return(0,o.jsxs)(`a`,{className:`v1-detail-value`,href:`mailto:${e}`,children:[(0,o.jsx)(a.MailOutlined,{}),` `,e]})}case`phone`:{let e=Ws(n,!1,h);return(0,o.jsxs)(`a`,{className:`v1-detail-value`,href:`tel:${e.replace(/[^0-9+]/g,``)}`,children:[(0,o.jsx)(a.PhoneOutlined,{}),` `,e]})}case`date`:{let e=(0,c.default)(n),t=f.dateFormat||p.dateFormat;return x(y(e.isValid()?e.format(t):Ws(n,d,h)))}case`currency`:return x(y(Ys(n,f)));case`budget`:{let e=Ys(n,f),t=f.unit?String(f.unit):``,r=t&&f.budgetUnitMap?f.budgetUnitMap[t]??t:t;return x(`${e}${r?`/${r}`:``}`)}case`html`:return(0,o.jsx)(`span`,{className:`v1-detail-value`,style:g,dangerouslySetInnerHTML:{__html:String(n??``)}});default:break}if(Is(n))return x(m);let w=r===`date`,T=typeof n==`string`&&Ls.test(n.trim());if(w||T){let e=(0,c.default)(n);if(e.isValid())return x(y(e.format(p.dateFormat)))}if(Us(n))return x(y(Bs(n.value??n.id,d)));if(Array.isArray(n)){let e=Gs(n,d,h);return e.length?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:e.map((e,t)=>(0,o.jsx)(i.Tag,{color:_,children:e},t))}):x(m)}return x(typeof n==`boolean`?n?p.booleanTrueLabel:p.booleanFalseLabel:typeof n==`object`?Vs(n,d,h)||m:y(Bs(n,d)))}Xs.propTypes={field:l.default.object};var{Text:Zs}=i.Typography,Qs=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],$s=e=>e===!0||e===1||e===`1`,ec=[`jobDescription`,`description`,`rawDescription`,`jobDescriptionText`];function tc(e=[]){for(let t of e)for(let e of t.fields??[]){let t=ec.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 nc(e=[]){return[...e].filter(e=>!$s(e.hideGroup)&&!$s(e.hideGroupInDetail)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(e=>({...e,fields:[...e.fields??[]].filter(e=>String(e.field??``).trim()!==``&&(e.show===void 0||$s(e.show))).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function rc({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(Zs,{strong:!0,className:`v1-section-label`,children:t})]})}function ic({value:e}){let t=String(e??``);return/<[a-z][\s\S]*>/i.test(t)?(0,o.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`normal`,lineHeight:1.7},dangerouslySetInnerHTML:{__html:t}}):(0,o.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`pre-wrap`,lineHeight:1.7},children:t})}function ac({moduleName:t,id:n,refreshKey:s=0,onDescriptionSaved:c}){let[l,u]=(0,r.useState)([]),[d,f]=(0,r.useState)(!!t),[p,m]=(0,r.useState)(``),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)(``),[y,b]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!t)return;let r=!1;async function i(){try{f(!0),m(``);let[i]=await Promise.all([$t({module:t,id:n,view:`detail`}),e.N()]);r||u(Array.isArray(i)?i:[])}catch(e){console.error(`Failed to fetch ${t} detail fields:`,e),r||m(e?.message||`Failed to fetch detail fields`)}finally{r||f(!1)}}return i(),()=>{r=!0}},[t,n,s]);let x=(0,r.useMemo)(()=>nc(l),[l]),S=t===`job`,C=(0,r.useMemo)(()=>S?tc(l):null,[S,l]),w=()=>{g(!1),v(``)},T=async()=>{if(!_.trim()){i.message.warning(`Please enter a job description`);return}b(!0);try{await hs(n,_.trim()),g(!1),v(``),f(!0);let e=await $t({module:t,id:n,view:`detail`});u(Array.isArray(e)?e:[]),i.message.success(`Description updated and parsed successfully`),c?.()}catch{i.message.error(`Failed to update description`)}finally{b(!1),f(!1)}},E=(e,t=``)=>(0,o.jsx)(i.Col,{xs:24,sm:12,lg:e.detailCol??e.col??8,children:(0,o.jsxs)(`div`,{className:`v1-detail-field`,children:[(0,o.jsx)(Zs,{type:`secondary`,className:`v1-detail-label`,children:e.label??e.field}),(0,o.jsx)(Xs,{field:e})]})},`${e.field}${t}`),D=(t,n)=>t.type===`file`||t.type===`document`?{...t,renderType:`document`,value:n}:{...t,value:e.H(n,t.field)},O=(e,t,n)=>{let r=e.name??e.id??String(t),a=Array.isArray(e.rows)?e.rows:[];return(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:Qs[t%Qs.length],title:e.label??e.name??`Details`}),children:a.length===0?(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`No ${e.label??`records`} added`}):a.map((t,r)=>(0,o.jsxs)(`div`,{className:`v1-detail-addrow-item`,children:[a.length>1&&(0,o.jsxs)(Zs,{strong:!0,className:`v1-detail-addrow-index`,children:[e.label??`Record`,` `,r+1]}),(0,o.jsx)(i.Row,{gutter:[20,18],children:n.map(e=>E(D(e,t),`-${r}`))})]},r))},r)};return(0,o.jsx)(i.Spin,{spinning:d,tip:`Loading detail fields...`,children:(0,o.jsxs)(`div`,{className:`v1-detail-left`,children:[p&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:`Unable to load detail fields`,description:p,className:`v1-detail-alert`}),!d&&!p&&x.length===0&&(0,o.jsx)(i.Empty,{description:`No detail fields are configured.`}),x.map((e,t)=>{let n=e.name??e.id??String(t),r=C?e.fields.filter(e=>e.field!==C.key):e.fields;return r.length?e.addRow?O(e,t,r):(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:Qs[t%Qs.length],title:e.label??e.name??`Details`}),children:(0,o.jsx)(i.Row,{gutter:[20,18],children:r.map(e=>E(e))})},n):null}),S&&C?.value&&(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:(0,o.jsx)(a.FileTextOutlined,{}),title:`Description`}),children:h?(0,o.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:12},children:[(0,o.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,o.jsx)(i.Input.TextArea,{rows:10,value:_,onChange:e=>v(e.target.value),placeholder:C.hidePlaceholder?void 0:C.placeholder,style:{fontSize:13,lineHeight:1.65,border:`none`,boxShadow:`none`,resize:`vertical`,padding:`12px 14px`}})}),(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8},children:[(0,o.jsx)(Pr,{variant:`primary`,size:`small`,loading:y,onClick:T,children:`Save & Parse`}),(0,o.jsx)(Pr,{size:`small`,onClick:w,children:`Cancel`})]})]}):(0,o.jsx)(ic,{value:C.value})})]})})}function oc(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 sc=[{id:`n1`,createdAt:new Date().toISOString(),author:`You`,notes:`Shortlisted 3 candidates, sharing profiles with @Hiring Manager today.`}];function cc(e=``){return e.split(/(\s+)/).map((e,t)=>e.startsWith(`@`)&&e.length>1?(0,o.jsx)(`span`,{className:`znx-an-mention`,children:e},t):(0,o.jsx)(`span`,{children:e},t))}function lc({notes:e,users:t=[],onAddNote:n}){let[a]=i.Form.useForm(),[s,c]=(0,r.useState)(()=>Array.isArray(e)?e:sc),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)(!1),h=(0,r.useRef)(null),g=Array.isArray(e)?e:s,_=(0,r.useMemo)(()=>t.map(e=>({value:e.display??e.value,label:e.display??e.label})),[t]),v=d??_;return(0,o.jsxs)(`div`,{className:`znx-an-body`,children:[(0,o.jsxs)(i.Form,{form:a,onFinish:async({note:e})=>{let t=(e??``).trim();if(t){u(!0);try{n?await n(t):c(e=>[{id:`local-${Date.now()}`,createdAt:new Date().toISOString(),author:`You`,notes:t},...e]),a.resetFields(),i.message.success(`Notes added successfully`)}catch{i.message.error(`Something went wrong, please try again.`)}finally{u(!1)}}},className:`znx-an-composer`,children:[(0,o.jsx)(i.Form.Item,{name:`note`,rules:[{required:!0,message:`Notes is required`}],style:{marginBottom:0},children:(0,o.jsx)(i.Mentions,{rows:3,prefix:`@`,options:v,loading:p,filterOption:!1,onSearch:e=>{clearTimeout(h.current),m(!0),h.current=setTimeout(()=>{tn(e).then(e=>{f((Array.isArray(e)?e:e?.items??e?.list??e?.data??[]).map(oc))}).catch(()=>f([])).finally(()=>m(!1))},300)},placeholder:`Add your notes on the job, use '@' to mention`})}),(0,o.jsx)(`div`,{className:`znx-an-composer-actions`,children:(0,o.jsx)(i.Button,{type:`primary`,size:`small`,htmlType:`submit`,loading:l,children:`Post`})})]}),(0,o.jsx)(`div`,{className:`znx-an-scroll`,children:(0,o.jsx)(Xo,{rows:g,getTime:e=>e.createdAt??e.activityTime,getKey:(e,t)=>e.id??e._id??t,getAuthor:e=>e.author,emptyText:`No notes here.`,renderBody:e=>(0,o.jsx)(`div`,{className:`znx-an-comment`,children:cc(e.notes)})})})]})}function uc({moduleName:t,id:n,users:a=[],showActivity:s=!0,showNotes:c=!0,defaultActiveKey:l=`activity`,refreshKey:u=0}){let[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)(null);(0,r.useEffect)(()=>{if(!t||!n)return;let r=!1;async function i(){let[i,a]=await Promise.all([s?e.Z(t,n).catch(()=>[]):Promise.resolve(null),c?e.et(n).catch(()=>[]):Promise.resolve(null)]);r||(f(i),m(a))}return i(),()=>{r=!0}},[t,n,s,c,u]);let h=(0,r.useCallback)(async r=>{if(!n)return;await e.X({relatedId:n,notes:r,notesFor:t});let[i,a]=await Promise.all([e.et(n).catch(()=>[]),s?e.Z(t,n).catch(()=>[]):Promise.resolve(d)]);m(i),s&&f(a)},[n,t,s,d]),g=[s&&{key:`activity`,title:`Activity`,count:Array.isArray(d)?d.length:void 0,children:(0,o.jsx)(is,{activity:d})},c&&{key:`notes`,title:`Notes`,count:Array.isArray(p)?p.length:void 0,children:(0,o.jsx)(lc,{notes:p,users:a,onAddNote:n?h:void 0})}].filter(Boolean),[_,v]=(0,r.useState)(g.some(e=>e.key===l)?l:g[0]?.key);return(0,o.jsx)(i.Card,{className:`znx-an-card`,styles:{body:{padding:0}},children:(0,o.jsx)(j,{className:`znx-an-tabs`,tabs:g,activeKey:_,onChange:v})})}uc.propTypes={moduleName:l.default.string,id:l.default.string,users:l.default.array,showActivity:l.default.bool,showNotes:l.default.bool,defaultActiveKey:l.default.string,refreshKey:l.default.oneOfType([l.default.number,l.default.string])};var dc=e.Nn({buildJobHeaderData:()=>yc,default:()=>fc,jobConfig:()=>fc}),fc={module:`job`,tabs:[{key:`details`,label:`Details`},{key:`candidates`,label:`Candidates`}],tabContent:{details:{render:({id:e,refreshKey:t,onDescriptionSaved:n})=>r.default.createElement(i.Row,{gutter:[16,16],align:`stretch`},r.default.createElement(i.Col,{key:`main`,xs:24,lg:16},r.default.createElement(ac,{moduleName:`job`,id:e,refreshKey:t,onDescriptionSaved:n})),r.default.createElement(i.Col,{key:`side`,xs:24,lg:8},r.default.createElement(uc,{moduleName:`job`,id:e})))}},header:{title:`jobTitle`,eyebrow:({val:e})=>{let t=[];return Cs(mc(e))&&t.push(Es(mc(e))),Cs(hc(e))&&t.push(`MSP Id ${Es(hc(e))}`),t.length?t.join(` - `):Cs(e(`jobReferenceId`))?String(e(`jobReferenceId`)):``},clientName:({val:e})=>mc(e),titleIds:[],status:{field:`jobStatus`},ids:[{label:`Zinnext Job ID`,field:`jobReferenceId`},{label:`Client Rate`,compute:_c}],meta:[{icon:`location`,field:`jobLocation`},{icon:`experience`,compute:gc},{icon:`employment`,fields:[`employmentType`,`jobRemoteStatus`],join:` · `}],stats:[{label:`Target submissions`,field:[`targetSubmission`,`targetSubmissions`]},{label:`In Pipeline`,compute:vc,always:!0}],timestamp:{label:`Created Date`,field:[`createdAt`,`jobCreatedDateTime`,`createdDate`]}}},pc=(e,...t)=>t.map(t=>e(t)).find(Cs),mc=e=>pc(e,`clientName`,`client.name`,`client`,`clientId`,`accountName`),hc=e=>pc(e,`mspReqId`,`mspreqId`,`msReqId`,`mspId`,`mspRequirementId`);function gc({val:e}){let t=e(`experience.experienceRequiredFrom`);if(!Cs(t))return``;let n=e(`experience.experienceRequiredTo`);return`${t}${Cs(n)?` - ${n}`:``} years`}function _c({val:e}){let t=e(`jobPayDetails`)??{},n=t.clientBudgetStart??pc(e,`clientBudgetStart`,`clientRateStart`);return Cs(n)?ks({start:n,end:t.clientBudgetEnd??pc(e,`clientBudgetEnd`,`clientRateEnd`),sym:t.clientBudgetCurrencySymbol??Ds(t.clientBudgetCurrency)??``,unit:t.clientBudgetUnit??pc(e,`clientBudgetUnit`)}):``}function vc({val:e}){let t=e(`submissions`),n=pc(e,`pipelineCount`,`PipelineCount`,`inPipeline`,`inPipelineCount`)??(Array.isArray(t)?t.length:void 0);return Cs(n)?n:0}function yc({val:e,has:t}){let n,r=[];t(e(`jobReferenceId`))&&(n=String(e(`jobReferenceId`)));let i=[e(`jobTitle`)].filter(t).map(Es).join(` `)||`-`,a=null;if(t(e(`jobSource`))&&(a={label:ws(e(`jobSource`)),color:`#10b981`,textColor:`#ffffff`}),t(e(`jobLocation`))&&r.push({icon:`location`,text:Es(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`),Es(e(`jobRemoteStatus`))].filter(t).join(` - `);o&&r.push({icon:`employment`,text:o});let s=t(e(`clientId`))?Ts(e(`clientId`)):null;return{eyebrow:n,title:i,status:a,meta:r,clientId:s}}var bc=e.Nn({default:()=>xc,submissionConfig:()=>xc}),xc={module:`submission`,tabs:[],header:{title:[`firstName`,`lastName`],eyebrow:({val:e,has:t})=>[Sc(e),e(`jobTitle`)].filter(t).map(Es).join(` - `),clientName:({val:e})=>Sc(e),status:({val:e,has:t})=>{let n=e(`internalSubmissionStatus`)??{},r=n.internalSubmissionStatusText;return t(r)?{label:ws(r),color:{positive:`success`,negative:`error`,neutral:`default`}[n.internalSubmissionStatusType]??As(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:Cc},{icon:`rate`,prefix:`Candidate rate: `,compute:wc}],timestamp:{label:`Created Date`,field:[`submittedAt`,`createdAt`,`createdDate`]}}},Sc=e=>e(`clientName`)??e(`client.name`);function Cc({val:e}){let t=e(`clientBudget`)??e(`candidateBudget`)??{};return ks({start:t.clientBudgetStart??t.candidateBudgetStart,end:t.clientBudgetEnd??t.candidateBudgetEnd,sym:t.clientBudgetCurrencySymbol??t.candidateBudgetCurrencySymbol??Ds(t.clientBudgetCurrency??t.candidateBudgetCurrency),unit:t.clientBudgetUnit??t.candidateBudgetUnit??`Hour`})}function wc({val:e}){let t=e(`candidateRate`)??{},n=e(`proposedRate`)??{};return ks({start:t.candidateAcceptedRate,sym:t.candidateAcceptedCurrencySymbol??Ds(t.candidateAcceptedCurrency),unit:t.candidateAcceptedPayUnit??`Hour`})||ks({start:n.candidateProposedRate,sym:n.candidateProposedRateCurrencySymbol??Ds(n.candidateProposedRateCurrency),unit:n.candidateProposedRateUnit??`Hour`})}var Tc=e.Nn({default:()=>Ec,submissionJobConfig:()=>Ec}),Ec={module:`submissionJob`,tabs:[],buildData:yc};function Dc(e,t){let n=Array.isArray(t)?t:[t];for(let t of n)if(Cs(e(t)))return e(t)}function Oc(e,t,n=` `){return t.map(t=>e(t)).filter(Cs).map(Es).join(n)}function kc(e,t){let{val:n}=e,r;if(typeof t.compute==`function`)r=t.compute(e);else if(t.join)r=Oc(n,t.fields??[],t.join);else{let e=Dc(n,t.field);r=Cs(e)?Es(e):``}return Cs(r)?`${t.prefix??``}${Es(r)}${t.suffix??``}`:``}function Ac(e){return typeof e==`function`?{compute:e}:typeof e==`string`||Array.isArray(e)?{field:e}:e}function jc(e={},t){let{val:n}=t,r={};if(e.title!==void 0&&(r.title=Oc(n,Array.isArray(e.title)?e.title:[e.title])||`-`),e.eyebrow!==void 0&&(r.eyebrow=kc(t,Ac(e.eyebrow))||void 0),e.clientName!==void 0&&(r.clientName=kc(t,Ac(e.clientName))||void 0),e.status!==void 0)if(typeof e.status==`function`)r.status=e.status(t)??null;else{let t=Dc(n,e.status.field);r.status=Cs(t)?{label:ws(t),color:As(t)}:null}let i=(e=[])=>e.map(e=>{let r=typeof e.compute==`function`?e.compute(t):Es(Dc(n,e.field)??``);return{label:e.label,value:r}}).filter(e=>Cs(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:kc(t,e)})).filter(e=>Cs(e.text))),e.stats!==void 0&&(r.stats=e.stats.map(e=>{let r=typeof e.compute==`function`?e.compute(t):Dc(n,e.field),i=Cs(r)?Es(r):e.always?Es(e.fallback??0):void 0;return{label:e.label,value:i}}).filter(e=>e.value!==void 0)),e.timestamp!==void 0){let t=Os(Dc(n,e.timestamp.field));r.timestamp=Cs(t)?{label:e.timestamp.label,value:t}:null}return r}var Mc=Object.assign({"./modules/candidateConfig.js":js,"./modules/jobConfig.js":dc,"./modules/submissionConfig.js":bc,"./modules/submissionJobConfig.js":Tc}),Nc={};Object.values(Mc).forEach(e=>{let t=e.default??Object.values(e)[0];t?.module&&(Nc[t.module]=t)});var Pc={job:`job`,jobs:`job`,candidate:`candidate`,candidates:`candidate`,applicant:`candidate`,applicants:`candidate`,submission:`submission`,submissions:`submission`,vendor:`vendor`,vendors:`vendor`,onboarding:`onboarding`};function Fc(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.detailConfig)??{};return Object.keys(e).length?{...Nc,...e}:Nc}function Ic(e=``,t=Nc){let n=String(e).trim();if(t[n])return n;let r=n.toLowerCase();if(t[r])return r;let i=Pc[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 Lc(e=[]){let t=new Map;return e.forEach(e=>{(e.fields??[]).forEach(e=>{t.has(e.field)||t.set(e.field,e)})}),t}function Rc(e,t){for(let n of t)if(n.includes(`+`)){let t=n.split(`+`).map(t=>e(t)).filter(Cs).map(Es).join(` `);if(t)return t}else if(Cs(e(n)))return e(n)}function zc({val:e}){let t=Rc(e,[`jobTitle`,`firstName+lastName`,`name`,`fullName`,`title`,`clientName`,`vendorCompanyName`,`companyName`])||`-`,n=Rc(e,[`clientName`,`source`,`designation`,`jobReferenceId`,`applicantRefrenceId`]),r=Cs(n)?Es(n):void 0,i=Rc(e,[`status`,`jobStatus`,`submissionStatus`,`stage`]),a=Cs(i)?{label:ws(i),color:As(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=Rc(e,n);Cs(r)&&o.push({label:t,value:Es(r)})});let s=[],c=Rc(e,[`jobLocation`,`currentLocation`,`location`]);Cs(c)&&s.push({icon:`location`,text:Es(c)});let l=Rc(e,[`designation`]);Cs(l)&&s.push({icon:`designation`,text:Es(l)});let u=Os(Rc(e,[`createdAt`,`submittedAt`,`createdDate`]));return{eyebrow:r,title:t,status:a,ids:o,meta:s,timestamp:Cs(u)?{label:`Created Date`,value:u}:null}}function Bc(e){let t=Fc();return t[Ic(e,t)]??null}function Vc(e,t=[]){if(!t.length)return null;let n=Fc(),r=n[Ic(e,n)],i=Lc(t),a=e=>{let n=i.get(e);if(!n){let n=t.recordMeta;return n&&(e===`createdAt`||e===`updatedAt`)?n[e]:void 0}return Ss(n.value)&&[`status`,`jobStatus`,`submissionStatus`].includes(e)&&!Ss(n.defaultValue)?n.defaultValue:n.value},o=zc({val:a,has:Cs}),s=r?.buildData?r.buildData({val:a,has:Cs})??{}:r?.header?jc(r.header,{val:a,has:Cs}):{},c=(e,t)=>Array.isArray(e)?e:t??[];return{eyebrow:s.eyebrow??o.eyebrow,title:s.title??o.title??`-`,clientName:s.clientName??null,clientId:s.clientId??null,status:s.status??o.status??null,titleIds:c(s.titleIds,o.titleIds),meta:c(s.meta,o.meta),ids:c(s.ids,o.ids),stats:s.stats??[],timestamp:s.timestamp??o.timestamp??null,tabs:r?.tabs??[]}}var Hc={location:(0,o.jsx)(a.EnvironmentOutlined,{}),designation:(0,o.jsx)(a.SolutionOutlined,{}),experience:(0,o.jsx)(a.ClockCircleOutlined,{}),employment:(0,o.jsx)(a.LaptopOutlined,{}),rate:(0,o.jsx)(a.DollarOutlined,{}),source:(0,o.jsx)(a.AimOutlined,{}),resume:(0,o.jsx)(a.FileTextOutlined,{}),edit:(0,o.jsx)(a.EditOutlined,{}),approve:(0,o.jsx)(a.CheckCircleOutlined,{}),reject:(0,o.jsx)(a.CloseCircleOutlined,{})};function Uc(e){return Array.isArray(e)?e.map(Uc):e&&typeof e==`object`&&`id`in e&&`value`in e?e.id??e.value:e}function Wc(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]=Uc(e.value));return n}function Gc(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function Kc(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(Gc(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(Gc(t?.[n])))}function qc(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function Jc(e){return String(e??``).trim().toLowerCase()}function Yc(e,t,n,r){return Sn(e.key,t,n,r)}function Xc(e,t,n){let r=e?.doneWhen;return!r||!r.field||!xn(r,t,n)?null:{label:e.doneLabel||e.label,tone:e.doneTone||`success`}}function Zc(e,t,n,r){return Cn(e.key,t,n,r)}function Qc(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 $c(t,n){let r=(t??[]).flatMap(e=>e.fields??[]),i=!n||/resume|cv/i.test(n),a=r.find(e=>e.field===n)??(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||n||`Document`,type:e?`html`:`text`,content:a.value}]}let s=e.k(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||n||`Document`,type:e?`html`:`text`,content:a.value}]}return[]}function el({moduleName:n,id:c,customConfigName:l,onAction:u,onTabChange:d,onHeaderData:f,hideActions:p=!1,defaultTab:m,refreshKey:h=0}){let g=(0,s.useNavigate)(),_=(0,s.useLocation)(),[v,y]=(0,r.useState)([]),[b,x]=(0,r.useState)([]),[S,C]=(0,r.useState)([]),[w,T]=(0,r.useState)(!1),[E,D]=(0,r.useState)([]),O=l||n;(0,r.useEffect)(()=>{if(!n)return;let t=!1;async function r(){try{let[r,i]=await Promise.all([$t({module:n,id:c,view:`detail`}),e.Q(O).catch(()=>({actions:[],actionRules:[]})),e.N()]);t||(y(Array.isArray(r)?r:[]),x(i.actions??[]),C(i.actionRules??[]))}catch(e){console.error(`Failed to fetch ${n} header fields:`,e),t||(y([]),x([]),C([]))}}return r(),()=>{t=!0}},[n,O,c,h]);let k=(0,r.useMemo)(()=>Vc(O,v),[O,v]);(0,r.useEffect)(()=>{k&&f&&f(k)},[k]);let{eyebrow:A,title:j=`-`,status:M,titleIds:N=[],meta:P=[],ids:F=[],tabs:I=[],stats:L=[],timestamp:R=null}=k??{},{canAdd:z,canEdit:B,canDelete:V}=hn(n),H=(0,r.useMemo)(()=>Wc(v,c),[v,c]),U=bs(I,{id:c,moduleName:n,record:H}),W=Bc(O)?.resolveScope,[G,ee]=(0,r.useState)(void 0);(0,r.useEffect)(()=>{if(typeof W!=`function`||!c)return;let e=!1,t=Number(localStorage.getItem(`userId`))||0;return Promise.resolve().then(()=>W({id:c,moduleName:n,record:H,currentUserId:t})).then(t=>{e||ee(t??null)}).catch(()=>{e||ee(null)}),()=>{e=!0}},[W,c,n,v]);let te=typeof W!=`function`||G!==void 0,K=(0,r.useMemo)(()=>te?b.filter(e=>e.showInDetail??e.showInList).map(Qc).filter(e=>!Yc(e,H,S,G??void 0)):[],[S,b,H,G,te]);function ne(t){let n=_n(t);if(n===`add`&&!z||n===`edit`&&!B||n===`delete`&&!V||!e.d(t.permission,O))return!1;if(t.permissionKey){let e=qc(H,`actionPermission.${t.permissionKey}`);if(e===!1||e===0||e===`0`)return!1}return!0}let[re,q]=(0,r.useState)({sourceDefaultTab:m,selectedTab:m}),J=re.sourceDefaultTab===m?re.selectedTab:m,ie=U.some(e=>e.key===J)?J:U[0]?.key,ae=e=>!e.allowedTabs?.length||e.allowedTabs.some(e=>Jc(e)===Jc(ie)),oe=K.filter(e=>e.detailPlacement===`primary`&&ne(e)&&ae(e)),Y=K.filter(e=>e.detailPlacement!==`primary`&&ne(e)&&ae(e));if(!k)return null;let se=e=>{let r=[...oe,...Y].find(t=>t.key===e);if(r?.actionType===`document`&&r.documentField){let e=$c(v,r.documentField);e.length?(D(e),T(!0)):i.message.warning(`No ${(r.label||`document`).toLowerCase()} available`);return}if(r?.actionType===`copy`){let e=qc(H,r.copyField||`id`);navigator.clipboard.writeText(Gc(e)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(r?.actionType===`api`&&r.apiPath){let e=Kc(r.apiPath,H),n=String(r.apiMethod||`POST`).toUpperCase();t.i(t.v,e.startsWith(`/`)?e:`/${e}`,{method:n,body:[`GET`,`DELETE`].includes(n)?void 0:JSON.stringify({ids:[c],record:H})}).then(()=>i.message.success(`${r.label} completed`)).catch(e=>i.message.error(e.message||`${r.label} failed`));return}if(r?.route){let e=typeof r.route==`function`?r.route(c):Kc(r.route,Wc(v,c));if(r.linkTarget===`_blank`){window.open(e,`_blank`,`noopener`);return}e.startsWith(`/popup/`)?g(e,{state:{background:_,moduleName:n,selectedIds:[c],selectedRecords:[H],popupContext:r.popupState??{},popupAction:{key:r.key,apiMethod:r.apiMethod,apiPath:r.apiPath,defaultTemplateId:r.defaultTemplateId},...r.popupState}}):g(e);return}u?.(e,{moduleName:n,id:c,action:r})},ce=e=>{q({sourceDefaultTab:m,selectedTab:e}),d?.(e,{moduleName:n,id:c})},le=Y.map(e=>{let t=Xc(e,H,G??void 0),n=!t&&Zc(e,H,S,G??void 0);return{key:e.key,label:t?t.label:e.label,danger:e.danger,disabled:!!t||!!n,title:n||void 0,onClick:t||n?void 0:()=>se(e.key)}});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(i.Card,{className:`znx-dh-card`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-top`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-left`,children:[A&&(0,o.jsx)(`div`,{className:`znx-dh-eyebrow`,children:A}),(0,o.jsxs)(`div`,{className:`znx-dh-titlerow`,children:[(0,o.jsx)(`span`,{className:`znx-dh-title`,children:j}),N.map(e=>(0,o.jsxs)(`span`,{className:`znx-dh-titleid`,children:[(0,o.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label)),M&&(0,o.jsx)(i.Tag,{color:M.color,className:`znx-dh-status`,style:{backgroundColor:M.backgroundColor??M.color,borderColor:M.backgroundColor??M.color,color:M.textColor},children:M.label})]}),F.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-ids`,children:F.map(e=>(0,o.jsxs)(`span`,{className:`znx-dh-id`,children:[(0,o.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label))}),P.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-meta`,children:P.map((e,t)=>(0,o.jsxs)(`span`,{className:`znx-dh-meta-item`,children:[e.icon&&Hc[e.icon]&&(0,o.jsx)(`span`,{className:`znx-dh-meta-icon`,children:Hc[e.icon]}),(0,o.jsx)(`span`,{children:e.text})]},t))})]}),!p&&(0,o.jsxs)(`div`,{className:`znx-dh-actions-col`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-actions`,children:[oe.map(e=>{let t=Xc(e,H,G??void 0),n=!t&&Zc(e,H,S,G??void 0),r=(0,o.jsx)(i.Button,{type:`text`,disabled:!!t||!!n,className:`znx-dh-btn znx-dh-btn--${t?t.tone:e.tone??`primary`}${t?` znx-dh-btn--done`:``}`,icon:t?(0,o.jsx)(a.CheckCircleOutlined,{}):e.icon?Hc[e.icon]:void 0,onClick:t||n?void 0:()=>se(e.key),children:t?t.label:e.label},e.key);return n?(0,o.jsx)(i.Tooltip,{title:n,children:(0,o.jsx)(`span`,{children:r})},e.key):r}),Y.length>0&&(0,o.jsx)(i.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:le},children:(0,o.jsx)(i.Button,{type:`text`,className:`znx-dh-more`,icon:(0,o.jsx)(a.MoreOutlined,{})})})]}),L.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-stats`,children:L.map(e=>(0,o.jsxs)(`div`,{className:`znx-dh-stat`,children:[(0,o.jsx)(`span`,{className:`znx-dh-stat-value`,children:e.value}),(0,o.jsx)(`span`,{className:`znx-dh-stat-label`,children:e.label})]},e.label))}),R?.value&&(0,o.jsxs)(`div`,{className:`znx-dh-created`,children:[`Created on `,R.value]})]})]}),U.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-tabs`,children:U.map(e=>(0,o.jsx)(`button`,{type:`button`,className:`znx-dh-tab${ie===e.key?` is-active`:``}`,onClick:()=>ce(e.key),children:e.label},e.key))})]}),(0,o.jsx)(e.On,{documents:E,open:w,onClose:()=>T(!1)})]})}var tl={};function nl(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.tabContentRegistry)??{};if(!Object.keys(e).length)return tl;let t={...tl};return Object.entries(e).forEach(([e,n])=>{t[e]={...t[e]??{},...n}}),t}function rl(e,t){return!t||t===`details`?null:nl()[e]?.[t]??null}function il(){return(0,s.useLocation)().state?.__refreshedAt??0}function al({component:e,id:t,moduleName:n,onDescriptionSaved:r}){return e?(0,o.jsx)(e,{id:t,moduleName:n,onDescriptionSaved:r}):null}var{Text:ol}=i.Typography;function sl({moduleName:e,id:t,backPath:n=``,showFooter:a=!0,users:c=[],showActivity:l=!0,showNotes:u=!0,onHeaderAction:d,onHeaderTabChange:f,onHeaderData:p}){let m=(0,s.useNavigate)(),h=(0,s.useParams)(),[g,_]=(0,s.useSearchParams)(),v=(0,s.useLocation)(),y=t||h.id||g.get(`jobId`)||g.get(`id`)||v.state?.record?._id||v.state?.record?.id,b=g.get(`tab`)||`details`,[x,S]=(0,r.useState)(0),C=il(),w=(e,t)=>{let n=new URLSearchParams(g);n.set(`tab`,e),_(n,{replace:!0}),f?.(e,t)},T=()=>S(e=>e+1),E=(e,t)=>{d?.(e,t)},D=(0,r.useMemo)(()=>Bc(e)?.tabs??[],[e]),O=bs(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,r.useMemo)(()=>k?rl(e,b):null,[e,b,k]);return(0,o.jsxs)(`div`,{className:`v1-page v1-detail-page`,children:[(0,o.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,o.jsx)(el,{moduleName:e,id:y,defaultTab:b,onAction:E,onTabChange:w,onHeaderData:p,refreshKey:C}),A?(0,o.jsx)(al,{component:A,id:y,moduleName:e,onDescriptionSaved:T}):(0,o.jsxs)(i.Row,{gutter:[16,16],align:`stretch`,children:[(0,o.jsx)(i.Col,{xs:24,lg:16,children:(0,o.jsx)(ac,{moduleName:e,id:y,refreshKey:x+C,onDescriptionSaved:T})}),(0,o.jsx)(i.Col,{xs:24,lg:8,children:(0,o.jsx)(uc,{moduleName:e,id:y,users:c,showActivity:l,showNotes:u,refreshKey:C})})]})]}),n&&a&&(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(ol,{type:`secondary`,children:y?`Record ID: ${y}`:`Detail view`}),(0,o.jsx)(i.Button,{onClick:()=>m(n),children:`Back`})]})]})}sl.propTypes={moduleName:l.default.string,id:l.default.string,backPath:l.default.string,showFooter:l.default.bool,users:l.default.array,showActivity:l.default.bool,showNotes:l.default.bool,onHeaderAction:l.default.func,onHeaderTabChange:l.default.func,onHeaderData:l.default.func};var cl={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`],relocation:[`Yes`,`No`],source:[`LinkedIn`,`Referral`,`Dice`,`Indeed`,`Monster`,`Vendor`,`Other`]};function ll(e={}){return cl[e.field]??[]}var ul=e.Nn({default:()=>$l}),{Text:dl}=i.Typography,{TextArea:fl}=i.Input;function pl(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function ml({form:t,field:n,absoluteName:a}){let[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(null),d=(0,r.useRef)(null),f=i.Form.useWatch(n.verifyResultField?pl(a,n.verifyResultField):[`__noop_verify__`],{form:t,preserve:!0}),p=i.Form.useWatch(a,t);return(0,r.useEffect)(()=>{let e=String(p??``).trim();if(f===!0&&d.current===null&&e){d.current=e;return}f===!0&&d.current!==null&&e!==d.current&&(n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),void 0),d.current=null)},[a,p,n.verifyResultField,n.verifyTimestampField,t,f]),n.verifyAction===`email`?f===!0?l&&!l.mailboxConfirmed&&(l.catchAll||l.result===`risky`)?(0,o.jsx)(i.Tooltip,{title:l.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,o.jsx)(dl,{type:`warning`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifyUnconfirmedLabel||`Accepted`})}):(0,o.jsx)(dl,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifySuccessLabel||`Valid`}):(0,o.jsx)(i.Button,{size:`small`,loading:s,onClick:async()=>{let r=String(p??``).trim();if(!r){i.message.warning(`Enter an email first`);return}c(!0);try{let o=await e.bn(r);d.current=o.valid?r:null,u(o.valid?o:null),n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),o.valid),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),o.valid?new Date().toISOString():void 0),o.valid?o.mailboxConfirmed?i.message.success(`Email verified — the mail server confirmed this mailbox`):i.message.warning(o.reason||`The domain can receive mail, but this exact mailbox could not be confirmed`):i.message.error(o.reason?`Invalid email: ${o.reason}`:`Email could not be verified`)}catch(e){d.current=null,u(null),n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),void 0),i.message.error(e?.message||`Could not verify email`)}finally{c(!1)}},className:`v1-verify-field-wrap`,children:f===!1?n.verifyRetryLabel||`Re Verify`:n.verifyIdleLabel||`Verify Email`}):null}function hl({form:t,field:n,siblingPrefix:r,locked:a,combined:s=!1}){let c=e.i(n,i.Form.useWatch(e.n(n?.labelWhen,r),t),s);return s?c:(0,o.jsx)(kl,{field:n,label:c,locked:a})}function gl({form:e,groups:t,disabled:n,loading:r,onClick:a,children:s}){let c=i.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});return(0,o.jsx)(i.Button,{type:`primary`,onClick:a,disabled:n||c,loading:r,children:s})}function _l({form:e,rules:t,watchPath:n,targetPath:a,resetOnNoMatch:o=!0}){let s=i.Form.useWatch(n,e),c=(0,r.useRef)(void 0);return(0,r.useEffect)(()=>{let n=t.find(e=>String(s??``)===String(e.value??``));if(n){e.setFieldValue(a,n.setValue),c.current=n.setValue;return}if(o&&c.current!==void 0){let t=e.getFieldValue(a);String(t??``)===String(c.current??``)&&e.setFieldValue(a,void 0),c.current=void 0}},[s]),null}var vl=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],yl={email:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`}),contactNumber:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),phone:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),currentLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),preferredLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),designation:(0,o.jsx)(a.SolutionOutlined,{className:`v1-input-icon`}),skills:(0,o.jsx)(a.TagsOutlined,{className:`v1-input-icon`}),firstName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),lastName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),jobTitle:(0,o.jsx)(a.SolutionOutlined,{className:`v1-input-icon`}),jobLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),vendorEmail:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`})},bl=e=>e===!0||e===1||e===`1`,xl=(t,n)=>(t?.edit===void 0||bl(t.edit))&&(!t?.editablePermission||e.d(t.editablePermission,n)),Sl=e=>e==null||e===``;function Cl(e){return e==null||e===``?!1:Array.isArray(e)?e.length>0&&e.some(Cl):typeof e==`object`?Object.values(e).some(Cl):!0}function wl(e=``){let t=String(e).toLowerCase();return t===`job`?`jobs`:t===`candidate`?`candidates`:t===`submissions`?`submission`:t}function Tl(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 El(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 bl(t);case`falsy`:return!bl(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}}function Dl({form:e,showIf:t,render:n}){return El(t,i.Form.useWatch(t.field,e))?n():null}function Ol(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function kl({field:e,label:t,locked:n}){if(!t)return t;let r=bl(e?.infoEnabled)&&!Sl(e?.infoText);return!r&&!n?t:(0,o.jsxs)(`span`,{className:`v1-field-label-with-info`,children:[(0,o.jsx)(`span`,{children:t}),r&&(0,o.jsx)(i.Tooltip,{title:e.infoText,children:(0,o.jsx)(a.InfoCircleOutlined,{className:`v1-field-info-icon`})}),n&&(0,o.jsx)(i.Tooltip,{title:`You don't have permission to edit this field`,children:(0,o.jsx)(a.LockOutlined,{className:`v1-field-info-icon`})})]})}function Al({group:e}){return!bl(e?.infoEnabled)||Sl(e?.infoText)?null:(0,o.jsx)(dl,{type:`secondary`,className:`v1-group-info-message`,children:e.infoText})}function jl({group:e}){return!bl(e?.toggleEnabled)||Sl(e?.toggleField)?null:(0,o.jsxs)(i.Space,{size:6,align:`center`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(dl,{type:`secondary`,className:`v1-combine-toggle-label`,children:e.toggleLabel||`Toggle`}),(0,o.jsx)(i.Form.Item,{name:e.toggleField,valuePropName:`checked`,initialValue:!!e.toggleValue,noStyle:!0,children:(0,o.jsx)(i.Switch,{size:`small`})})]})}function Ml(t=[],n,r,i){let a=i??new Set;return[...t].filter(t=>!bl(t.hideGroup)&&e.Y(r,t.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(t=>({...t,fields:[...t.fields??[]].map(e=>a.has(e.field)?{...e,show:1,req:1}:e).filter(i=>String(i.field??``).trim()!==``&&(i.show===void 0||bl(i.show))&&(!i.visiblePermission||e.d(i.visiblePermission,n))&&e.q(r,t.name,i.field)).map(n=>e.J(r,t.name,n.field)?n:{...n,disabled:!0}).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function Nl(e){return String(e??``).replace(/<[^>]*>/g,``).replace(/&nbsp;/g,` `).replace(/&amp;/g,`&`).replace(/&lt;/g,`<`).replace(/&gt;/g,`>`).trim()}function Pl(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 Fl=({label:e,message:t,value:n,compare:r,text:i})=>({validator:(a,o)=>Sl(o)||r(Number(o),Number(n))?Promise.resolve():Promise.reject(Error(t??`${e} ${i} ${n}`))});function Il(e,t){let n=String(t).split(`.`).filter(Boolean);if(!Array.isArray(e))return n.length>1?n:t;if(n.length>1){if(e.length>=3&&typeof e[1]==`number`){let t=e.slice(0,2),r=n[0]===String(e[0])?n.slice(1):n;return[...t,...r]}return n}let r=[...e];return r[r.length-1]=n[0],r}function Ll(e){if(!e)return null;if(typeof e.valueOf==`function`){let t=e.valueOf();return Number.isNaN(t)?null:t}let t=new Date(e).getTime();return Number.isNaN(t)?null:t}function Rl(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.startOf(`day`).valueOf():null}function zl(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.hour()*60+t.minute():null}var Bl=({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||Sl(l))return Promise.resolve();let d=i.getFieldValue(Il(a,u));if(Sl(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}`))}}),Vl={noPastDate:({label:e,message:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=new Date;return i.setHours(0,0,0,0),Ll(r)<i.getTime()?Promise.reject(Error(t??`${e} cannot be a past date`)):Promise.resolve()}}),noFutureDate:({label:e,message:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=new Date;return i.setHours(23,59,59,999),Ll(r)>i.getTime()?Promise.reject(Error(t??`${e} cannot be a future date`)):Promise.resolve()}}),minAge:({message:e,value:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=Number(t??18),a=new Date;return a.setFullYear(a.getFullYear()-i),a.setHours(23,59,59,999),Ll(r)>a.getTime()?Promise.reject(Error(e??`Must be at least ${i} years old`)):Promise.resolve()}}),dateAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=Rl(s),d=Rl(l);return u===null||d===null||u>=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or after ${c}`))}}),dateBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=Rl(s),d=Rl(l);return u===null||d===null||u<=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or before ${c}`))}}),timeAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=zl(s),d=zl(l);return u===null||d===null||u>d?Promise.resolve():Promise.reject(Error(t??`${e} must be after ${c}`))}}),timeBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=zl(s),d=zl(l);return u===null||d===null||u<d?Promise.resolve():Promise.reject(Error(t??`${e} must be before ${c}`))}}),greaterThanField:e=>Bl({...e,compare:(e,t)=>e>=t,text:`must be greater than or equal to`}),strictGreaterThanField:e=>Bl({...e,compare:(e,t)=>e>t,text:`must be greater than`}),strictLessThanField:e=>Bl({...e,compare:(e,t)=>e<t,text:`must be less than`}),lessThanOrEqualField:e=>Bl({...e,compare:(e,t)=>e<=t,text:`must be less than or equal to`}),maxFieldWithFallback:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{if(Sl(s))return Promise.resolve();let c=String(n??r.compareFields??``).split(`,`).map(e=>e.trim()).filter(Boolean).find(e=>!Sl(i.getFieldValue(Il(a,e))));if(!c)return Promise.resolve();let l=Number(i.getFieldValue(Il(a,c))),u=Number(s);return Number.isNaN(l)||Number.isNaN(u)||u<=l?Promise.resolve():Promise.reject(Error(t??`${e} must not exceed ${c}`))}}),required:({field:e,message:t,form:n,name:r})=>({validator:(i,a)=>{if(e?.disabledByField&&n&&r&&bl(n.getFieldValue(Ul(r,e.disabledByField))))return Promise.resolve();let o=a==null||a===``||Array.isArray(a)&&a.length===0;return!o&&e?.type===`text-editor`&&(o=Nl(a)===``),o?Promise.reject(Error(t??`Mandatory Field`)):Promise.resolve()}}),email:({label:t,message:n})=>e.v(t,n),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})=>({pattern:/^[0-9]{10}$/,message:e??`Phone number must contain exactly 10 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`?Fl({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`?Nl(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`?Fl({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`?Nl(a):String(a);return o===``||o.length<=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must not exceed ${r} characters`))}}};function Hl(e,t,n,r){let i=typeof e==`string`?{type:e}:e,a=i.type??i.rule??i.name,o=i.value??i.length??i.min??i.max,s=t.label??t.field??`Field`,c=Vl[a];return c?c({field:t,label:s,message:i.message,rule:i,value:o,form:n,name:r}):i}function Ul(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function Wl(e){return bl(e?.req)?!0:(e?.validations??e?.validation??e?.rules??[]).some(e=>(typeof e==`string`?e:e?.type)===`required`)}function Gl(t,n,r,i=!1){let a=t.label??t.field??`Field`,o=t.validations??t.validation??t.rules??[],s=o.some(e=>(typeof e==`string`?e:e?.type)===`required`),c=o.some(e=>(typeof e==`string`?e:e?.type)===`email`),l=[];return!i&&bl(t.req)&&!s&&l.push(Vl.required({field:t,message:`Mandatory Field`,form:n,name:r})),(t.type===`email`||t.formatter===`email`)&&!c&&l.push(e.v(a)),t.type===`number`&&l.push(bl(t.decimal)?{pattern:/^\d+(\.\d+)?$/,message:`${a} must be a number`}:{pattern:/^[0-9]+$/,message:`${a} must be a number`}),[...l,...o.map(e=>Hl(e,t,n,r)),e.K(t)]}function Kl(e,t){let n=new Set([`greaterThanField`,`strictGreaterThanField`,`strictLessThanField`,`lessThanOrEqualField`,`maxFieldWithFallback`,`dateAfterField`,`dateBeforeField`,`timeAfterField`,`timeBeforeField`]);return(e.validations??e.validation??e.rules??[]).filter(e=>n.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=>Il(t,e)))}function ql(e){let t=e.len??Pl(e,`len`),n=e.min??Pl(e,`min`),r=e.max??Pl(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 Jl(e,t,n){let r=e.validations??e.validation??e.rules??[],i=[];for(let e of r){let r=typeof e==`string`?e:e?.type;if(r===`noPastDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(0,0,0,0),Ll(e)<t.getTime()}),r===`noFutureDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(23,59,59,999),Ll(e)>t.getTime()}),r===`minAge`){let t=Number(e?.value??18);i.push(e=>{if(!e)return!1;let n=new Date;return n.setFullYear(n.getFullYear()-t),n.setHours(23,59,59,999),Ll(e)>n.getTime()})}if(r===`dateAfterField`||r===`dateBeforeField`){let a=e?.value??e?.compareField??e?.field;if(!a)continue;i.push(e=>{if(!e)return!1;let i=t.getFieldValue(Il(n,a));if(Sl(i))return!1;let o=Rl(e),s=Rl(i);return o===null||s===null?!1:r===`dateAfterField`?o<s:o>s})}}return i.length?e=>i.some(t=>t(e)):void 0}function Yl(e){let t=e.validations??e.validation??e.rules??[];for(let e of t){let t=typeof e==`string`?e:e?.type;if(t===`minAge`)return(0,c.default)().subtract(Number(e?.value??18),`year`);if(t===`noFutureDate`||t===`noPastDate`)return(0,c.default)()}}function Xl(e,t){return t?t===`phone`||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 Zl({field:n,form:s,name:c,value:l,checked:u,fileList:d,moduleName:f,initialValue:p,scopeValues:m={},onAiUpload:h,formDisabled:g}){let _=n.type??`text`,v=!xl(n,f),[y,b]=(0,r.useState)(null),[x,S]=(0,r.useState)(!1),[C,w]=(0,r.useState)(``),[T,E]=(0,r.useState)(``),[D,O]=(0,r.useState)(``),[k,A]=(0,r.useState)({open:!1,docs:[],index:0}),[j,M]=(0,r.useState)(null),[N,P]=(0,r.useState)(0),F=(0,r.useRef)([]),I=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`,L=n.lookupFilterValueFrom?e.w(n.lookupFilterValueFrom):[`__lookup_filter_${n.field}`],R=n.lookupFilterValueFrom&&I?[...c.slice(0,2),...e.w(n.lookupFilterValueFrom)]:[`__noop_row_filter__`],z=i.Form.useWatch(L,s),B=i.Form.useWatch(R,s),V=Sl(B)?z:B,H=n.lookupFilterValueFrom?m[n.lookupFilterValueFrom]:void 0,U=Sl(H)?V:H,W=n.disabledByField?Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.disabledByField]:[n.disabledByField]:[`__noop_disabled_watch__`],G=i.Form.useWatch(W,s),ee=n.disabledIf?.field?e.w(n.disabledIf.field):[`__noop_disabled_if__`],te=n.disabledIf?.field&&I?[...c.slice(0,2),...e.w(n.disabledIf.field)]:[`__noop_disabled_if_row__`],K=i.Form.useWatch(ee,s),ne=i.Form.useWatch(te,s),re=n.disabledIf?.field?e.r(n.disabledIf,Sl(ne)?K:ne):!1,q=v||!!n.disabled||re||(n.disabledByField?bl(G):!1)||!!g;(0,r.useEffect)(()=>{if(_===`location`){let e=!1;async function r(){try{S(!0);let r=await t.i(t.v,`/admin/location-dropdown-values?${new URLSearchParams({search:C,limit:String(n.limit??50),offset:`0`})}`),i=r?.data??r??[];e||b(Tl(Array.isArray(i)?i:[]))}catch(t){console.error(`[EditFormV1] Failed to fetch locations for "${n.field}":`,t),e||b([])}finally{e||S(!1)}}return r(),()=>{e=!0}}let r=n.dataSource;if(![`select`,`radio`,`checkbox`].includes(_)||!r||r===`static`)return;if(r===`lookup`&&n.lookupFilterField&&Sl(U)){b([]),S(!1);return}let i=!1;async function a(){try{S(!0);let a=[];if(r===`master`||r===`module`)a=await e.Cn(f,n.field,r===`master`?D:``,n.limit??50,0,{dataSource:r,masterName:n.masterName,groupName:n.groupName});else if(r===`lookup`){let e=new URLSearchParams({collection:n.lookupCollection??``,displayField:n.displayField??``,valueField:n.valueField??`_id`});n.displayField2&&e.set(`displayField2`,n.displayField2),T&&e.set(`search`,T),n.lookupFilterField&&!Sl(U)&&(e.set(`filterField`,n.lookupFilterField),e.set(`filterValue`,String(U))),n.extraFields?.length&&e.set(`extraFields`,n.extraFields.join(`,`));let r=await t.i(t.v,`/admin/lookup-dropdown-values?${e}`);a=r?.data??r??[],n.optionsRequireExtraField&&(a=a.filter(e=>e?.extraData?.[n.optionsRequireExtraField]===!0))}else if(r===`group`){let e=String(n.groupName??``).toLowerCase().trim();if(e===`users`||e===`user`){let e=await t.i(t.v,`/get-all-users?limit=500&offset=0`),n=e?.data?.users??e?.users??e?.data??[];a=Array.isArray(n)?n.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||(F.current=Array.isArray(a)?a:[],b(Tl(F.current)))}catch(e){console.error(`[EditFormV1] Failed to fetch options for "${n.field}":`,e),i||b([])}finally{i||S(!1)}}return a(),()=>{i=!0}},[_,n.dataSource,n.field,n.lookupCollection,n.displayField,n.displayField2,n.valueField,n.lookupFilterField,U,n.groupName,n.masterName,n.limit,C,T,D,f,n.extraFields,n.optionsRequireExtraField,N]);let J=Tl([n.options,n.values].find(e=>Array.isArray(e)&&e.length>0)??ll(n)),ie=y??J,ae=(n.multiSelect?`multiple`:n.mode??(bl(n.multiple)?`multiple`:void 0))??(e.V(n)===`array`?`multiple`:void 0),oe=[`select`,`location`].includes(_),Y=n.hidePlaceholder?void 0:n.placeholder??`${oe?`Select`:`Enter`} ${String(n.label??``).toLowerCase()}`,se=ql(n),ce=()=>{setTimeout(()=>{s.validateFields([c]).catch(()=>{})})},le=e=>{s.setFieldValue(c,e),ce()},ue=e.f({field:n,form:s,name:c,moduleName:f,scopeValues:m,ownValue:l,onDone:(t,r)=>{P(e=>e+1);let i=e.V(n)!==`array`&&!n.multiSelect&&!n.multiple;t===`create`&&r!=null&&i&&le(e.G(n)?{value:r}:r)}}),de=n.validator?.type?{...n.validator,title:n.validator.title||n.label||`Field`}:null,fe={...se,value:l,disabled:q,placeholder:Y,prefix:n.icon?null:yl[n.field],onChange:t=>{let r=n.formatter?Xl(t.target.value,n.formatter):t.target.value;if(de){let{cleaned:t,error:n}=e.g(r,de,`change`);M(n),r=t}le(r)},...de&&{onBlur:t=>{let{cleaned:n,error:r}=e.g(t.target.value,de,`blur`);M(r),n!==t.target.value&&le(n)},onKeyPress:t=>{let n=e._(de.type);if(!n||t.which===0||t.keyCode===8||t.keyCode===13)return;let r=String.fromCharCode(t.which??t.keyCode);if(!n.test(r)){t.preventDefault();let e=`${de.title} — invalid character.`;M(e),setTimeout(()=>M(t=>t===e?null:t),1800)}},maxLength:de.maxLength??se.maxLength}};if(_===`tagify`)return(0,o.jsx)(i.Select,{value:l,allowClear:!0,disabled:q,mode:`tags`,placeholder:Y,onChange:le});if(_===`location`)return(0,o.jsx)(i.Select,{value:l,allowClear:!0,showSearch:!0,filterOption:!1,disabled:q,loading:x,options:ie,placeholder:Y,notFoundContent:x?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:w,onFocus:()=>w(e=>e),onChange:le});if(_===`select`){let t=n.dataSource===`lookup`,r=n.dataSource===`master`,a=t||r,u=n.dataSource===`group`,d=e.G(n),f=e.W(n,l,ie);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Select,{value:f,allowClear:!0,disabled:q,loading:x,labelInValue:d||void 0,showSearch:a||u||void 0,optionFilterProp:`label`,filterOption:a?!1:void 0,mode:ae,options:ie,placeholder:Y,notFoundContent:x?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:t?E:r?O:void 0,onChange:t=>{if(le(t),n.autofillFrom?.length){let r=t&&!Array.isArray(t)&&typeof t==`object`?t.value:t,i=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`;if(t==null)n.autofillFrom.forEach(({targetField:t})=>{let n=i?[...c.slice(0,2),...e.w(t)]:e.w(t);s.setFieldValue(n,null)});else if(F.current.length>0){let t=n.valueField??`_id`,a=F.current.find(e=>Ol(e,t)===r||e._id===r||e.id===r||e.value===r);a&&n.autofillFrom.forEach(({optionKey:t,targetField:n})=>{let r=Ol(a,t)??a.extraData?.[t]??null,o=i?[...c.slice(0,2),...e.w(n)]:e.w(n);s.setFieldValue(o,r)})}}},dropdownRender:ue.footer?e=>(0,o.jsxs)(o.Fragment,{children:[e,ue.footer]}):void 0}),ue.modal]})}if(_===`radio`)return(0,o.jsx)(i.Radio.Group,{value:l,disabled:q,options:ie,onChange:e=>le(e.target.value)});if(_===`checkbox`)return ie.length>0?(0,o.jsx)(i.Checkbox.Group,{value:l,disabled:q,options:ie,onChange:le}):(0,o.jsx)(i.Checkbox,{checked:u,disabled:q,onChange:e=>{let t=e.target.checked;if(le(t),n.linkedClearField&&t){let e=Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.linkedClearField]:[n.linkedClearField];s.setFieldValue(e,null)}},children:n.checkboxLabel??n.label});if(_===`text-editor`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.kn,{value:l??p??``,disabled:q,placeholder:Y,onChange:t=>{if(de){let{error:n}=e.g(t,de,`change`);M(n)}le(t)}}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]});if(_===`textarea`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(fl,{...fe,rows:n.rows??3,className:`v1-scroll-textarea`}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]});if(_===`date`)return(0,o.jsx)(i.DatePicker,{value:l,disabled:q,placeholder:Y,style:{width:`100%`},suffixIcon:(0,o.jsx)(a.CalendarOutlined,{}),disabledDate:Jl(n,s,c),defaultPickerValue:Yl(n),onChange:e=>le(e)});if(_===`time`)return(0,o.jsx)(i.TimePicker,{value:l,disabled:q,placeholder:Y,style:{width:`100%`},onChange:e=>le(e)});if(_===`file`){let t=n.validations??n.validation??n.rules??[],r=t.find(e=>(typeof e==`string`?e:e?.type)===`fileType`),s=t.find(e=>(typeof e==`string`?e:e?.type)===`fileSize`),c=t.find(e=>(typeof e==`string`?e:e?.type)===`maxFiles`),u=e.m(n),d=u?u.exts.map(e=>`.${e}`).join(`,`):r?.value?r.value.split(`,`).map(e=>`.${e.trim().replace(/^\./,``)}`).join(`,`):void 0,f=s?Number(s?.value??5):void 0,p=c?Number(c?.value??1):bl(n.multiple)?n.maxCount??5:1,m=Array.isArray(l)?l:[],g=m.length<p,_=e=>e?e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`:``,v=e=>{let t=(e??``).split(`.`).pop()?.toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-type-icon v1-file-icon-pdf`}):[`doc`,`docx`].includes(t)?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-type-icon v1-file-icon-word`}):[`xls`,`xlsx`,`csv`].includes(t)?(0,o.jsx)(a.FileExcelOutlined,{className:`v1-file-type-icon v1-file-icon-excel`}):[`jpg`,`jpeg`,`png`,`gif`,`svg`,`webp`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-type-icon v1-file-icon-image`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-type-icon v1-file-icon-default`})},y=e=>{le(m.filter((t,n)=>n!==e))},b=(t,n)=>{A({open:!0,docs:m.map(t=>{let n=t.url??t.thumbUrl??``;return!n&&t.originFileObj instanceof File&&(n=URL.createObjectURL(t.originFileObj)),n&&!n.startsWith(`http`)&&!n.startsWith(`blob:`)&&(n=e.O(n)),{url:n,name:t.name??`file`}}).filter(e=>e.url),index:n??0})},x=p>1,S=p-m.length,C=[u?u.hint:d?d.split(`,`).map(e=>e.replace(`.`,``).toUpperCase()).join(`, `):null,f?`up to ${f} MB`:null].filter(Boolean).join(` `),w=x&&m.length>0?[C,`${S} of ${p} remaining`].filter(Boolean).join(` • `):C,T=m.length>0?`Add ${x?`more files`:`file`}`:n.buttonLabel??`Upload ${n.label??`File`}`,E=e=>{if(m.length>=p)return i.Upload.LIST_IGNORE;if(d){let t=(e.name.split(`.`).pop()??``).toLowerCase();if(!d.split(`,`).map(e=>e.replace(/^\./,``).toLowerCase()).includes(t))return i.message.error(u?u.error:r?.message??`Only ${r.value} files are allowed`),i.Upload.LIST_IGNORE}return f!==void 0&&e.size/1024/1024>f?(i.message.error(s?.message??`File must be smaller than ${f} MB`),i.Upload.LIST_IGNORE):!1},D=({fileList:e})=>{let t=e.slice(0,p);if(le(t),h&&t.length>m.length){let e=t[t.length-1];e?.originFileObj&&h(e.originFileObj)}},O={accept:d,fileList:m,showUploadList:!1,multiple:!0,maxCount:p,beforeUpload:E,onChange:D,disabled:q},j=m.map((e,t)=>(0,o.jsxs)(`div`,{className:`v1-file-item`,children:[(0,o.jsx)(`div`,{className:`v1-file-item-icon`,children:v(e.name)}),(0,o.jsxs)(`div`,{className:`v1-file-item-info`,children:[(0,o.jsx)(`span`,{className:`v1-file-item-name`,children:e.name}),(0,o.jsx)(`span`,{className:`v1-file-item-meta`,children:e.existing?`Previously uploaded`:`${_(e.size)}${e.size?` • `:``}Uploaded just now`})]}),(0,o.jsxs)(i.Space,{size:6,className:`v1-file-item-actions`,children:[(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),onClick:()=>b(e,t),className:`v1-file-view-btn`,children:`View`}),(0,o.jsx)(i.Button,{size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>y(t),className:`v1-file-delete-btn`})]})]},e.uid??t)),M=(0,o.jsx)(e.On,{documents:k.docs,open:k.open,onClose:()=>A(e=>({...e,open:!1})),initialIndex:k.index});if(x){let e=m.length>0?`Upload more ${n.label??`files`}`:n.buttonLabel??`Upload ${n.label??`File`}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[g&&(0,o.jsx)(i.Upload,{...O,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-center${q?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsxs)(`div`,{className:`v1-upload-dropzone-title-row`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon v1-upload-cloud-icon-sm`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title v1-upload-dropzone-title-blue`,children:e})]}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:`Drag & drop or click to upload`}),C&&(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:C})]})}),m.length>0&&(0,o.jsx)(`div`,{className:`v1-file-grid`,children:j}),g&&m.length>0&&(0,o.jsx)(i.Upload,{...O,style:{display:`inline-block`},children:(0,o.jsx)(i.Button,{type:`link`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),className:`v1-add-more-files-btn`,children:`Add more files`})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[m.length>0&&(0,o.jsx)(`div`,{className:`v1-file-rows-single`,children:j}),g&&(0,o.jsx)(i.Upload,{accept:d,fileList:m,showUploadList:!1,multiple:!1,maxCount:1,beforeUpload:E,onChange:D,disabled:q,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-single${q?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title`,children:T}),w&&(0,o.jsxs)(`span`,{className:`v1-upload-dropzone-sub`,children:[`— `,w]})]})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Input,{...fe,type:_===`number`?`number`:_,..._===`number`&&bl(n.decimal)?{step:`any`}:{},...n.suffix?{suffix:n.suffix}:{}}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]})}function Ql({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(dl,{strong:!0,className:`v1-section-label`,children:t})]})}function $l({moduleName:t,recordId:n,clientId:c,region:l,breadcrumbItems:u=[],submitText:d=`Save Changes`,cancelPath:f,onSuccess:p,fieldNameMap:m={},onFileUpload:h=null,onBeforeSubmit:g=null,extraPayload:_=null,embedded:v=!1,onCancel:y=null}){let b=(0,s.useNavigate)(),[x]=i.Form.useForm(),[S,C]=(0,r.useState)({}),[w,T]=(0,r.useState)([]),[E,D]=(0,r.useState)(!1),[O,k]=(0,r.useState)(``),[A,j]=(0,r.useState)(!1),[M,N]=(0,r.useState)(``),[P,F]=(0,r.useState)(null),[I,L]=(0,r.useState)(()=>new Set);(0,r.useEffect)(()=>{let n=!1;return queueMicrotask(()=>{if(!n){if(!t){F(null);return}e.Gt({roleId:localStorage.getItem(`roleId`)},t,{clientId:c,region:l}).then(e=>{n||F(Array.isArray(e)&&e.length?e:null)}).catch(()=>{n||F(null)})}}),()=>{n=!0}},[t,c,l]),(0,r.useEffect)(()=>{let n=!1;return queueMicrotask(()=>{if(!n){if(!t){L(new Set);return}e.Vt(t).then(e=>{n||L(new Set(Array.isArray(e)?e:[]))}).catch(()=>{n||L(new Set)})}}),()=>{n=!0}},[t]);let R=(0,r.useMemo)(()=>Ml(w,t,P,I),[w,t,P,I]),z=(0,r.useMemo)(()=>e.P(R),[R]),B=(0,r.useRef)({}),V=e.x({form:x,groups:R,module:t}),H=(0,r.useMemo)(()=>{let t={};return R.forEach(n=>{n.addRow&&(t[n.name]=e.C(n))}),e.I(z,t)},[R,z]),U={jobs:{list:`Jobs`,path:`/jobs`,edit:`Edit Job`},candidates:{list:`Candidates`,path:`/candidates`,edit:`Edit Candidate`},submissions:{list:`Submissions`,path:`/submissions`,edit:`Edit Submission`}},W=v?[]:u.length>0?u:(()=>{let e=U[wl(t)];return e?[{label:`Home`,href:`/`},{label:e.list,href:e.path},{label:e.edit}]:[]})();(0,r.useEffect)(()=>{if(!t||!n)return;let r=!1;async function i(){try{D(!0),k(``),N(``);let i=await e.Sn({module:t,id:n,clientId:c,region:l});if(r)return;T(Array.isArray(i)?i:[])}catch(e){console.error(`Failed to fetch ${t} edit data:`,e),r||k(e?.message||`Failed to load record`)}finally{r||D(!1)}}return i(),()=>{r=!0}},[t,n,c,l]),(0,r.useEffect)(()=>{E||R.length===0||e.S(x,R)},[E,R,x]);let G=e=>{C(t=>({...t,[e]:!t[e]}))};function ee(n){let r=e.R(n,R,{module:t});return Object.entries(m).forEach(([e,t])=>{r[e]!==void 0&&(r[t]=r[e],delete r[e])}),r}async function te(r){if(!(g&&await Promise.resolve().then(()=>g(r)).catch(()=>!1)===!1))try{j(!0),N(``);let a=e.B(r,R,{indexed:!0,module:t});if(h&&h.useLegacyUpload){let e=R.flatMap(e=>e.fields??[]).filter(e=>e.type===`file`);for(let t of e){let e=r[t.field];if(!Array.isArray(e))continue;let i=e.filter(e=>e.originFileObj instanceof File);try{await Promise.all(i.map(e=>h(t.field,e.originFileObj,n)))}catch(e){console.warn(`File upload failed — continuing with save:`,e)}}}await e.nt(t,n,{...ee(r),..._??{}},h?.useLegacyUpload?[]:a);let o=e.s(R,t,`edit`);if(o&&i.message.success(o),p)p(n,r);else{let t=e.c(R);t?t.mode===`back`?b(-1):(t.mode===`route`||t.mode===`detail`)&&b(e.l(t.target,n,r)||f||-1):b(f||-1)}}catch(n){console.error(`Failed to update ${t}:`,n);let r=e.o(R,t,`edit`,n?.message);N(r),i.message.error(r)}finally{j(!1)}}let K=t=>{C({}),e.a(t,x)},[ne,re]=(0,r.useState)({}),q=e=>String(e?.field??``),J=(e,t,n)=>{if(!e?.field)return!0;let r=t(n==null?[e.field]:[...Array.isArray(n)?n:[n],e.field]);switch(e.operator){case`eq`:return String(r??``)===String(e.value??``);case`neq`:return String(r??``)!==String(e.value??``);case`truthy`:return r!=null&&r!==``&&r!==!1;case`falsy`:return r==null||r===``||r===!1;case`notEmpty`:return Array.isArray(r)?r.length>0:!!r;case`in`:return String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));case`notIn`:return!String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));default:return!0}},ie=(n,a,s,l={})=>{let u=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):null,d=u??n.field,f=a===void 0?d:[a,...u??[n.field]],p=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],...Array.isArray(f)?f:[f]]:f,m=n.type===`checkbox`&&(n.options&&n.options.length>0||n.dataSource&&n.dataSource!==`static`),h=!m&&n.type===`checkbox`?`checked`:`value`,g=!!n.editablePermission&&!e.d(n.editablePermission,t),_=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],a]:null,v=e=>_&&(!l.rowFieldKeys||l.rowFieldKeys.has(e))?_:null,y=l.inline||l.hideLabel||!m&&n.type===`checkbox`?``:(0,o.jsx)(hl,{form:x,field:n,siblingPrefix:n.labelWhen?.field?v(n.labelWhen.field):_,locked:g}),b=l.inline||n.type===`text-editor`||n.type===`file`&&bl(n.multiple)?24:n.col??12,S=Kl(n,p),C=l.inline?{flex:`${Number(n.combineWidth)>0?Number(n.combineWidth):1} 1 0`,maxWidth:`none`}:void 0,w=(n.aiActions||[]).filter(e=>e.trigger===`click`),T=(n.aiActions||[]).find(e=>e.trigger===`upload`),E=(0,o.jsx)(i.Form.Item,{label:y,name:f,extra:n.helpText?(0,o.jsx)(dl,{type:`secondary`,className:`v1-field-help-text`,children:n.helpText}):void 0,required:Wl(n),rules:Gl(n,x,p),dependencies:S,valuePropName:h,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,validateTrigger:[`onBlur`,`onChange`],children:(0,o.jsx)(Zl,{field:n,form:x,name:p,moduleName:t,initialValue:n.value,scopeValues:{clientId:c},onAiUpload:T?e=>V.runAction(l.groupNameForActions,n,T,e):void 0,formDisabled:V.busy})}),D=w.length>0?(()=>{let t=e.b(w),r=r=>(0,o.jsx)(e.y,{position:r,actions:t[r],aiActions:V,groupName:l.groupNameForActions,field:n},r);return(0,o.jsxs)(`div`,{className:`v1-ai-action-wrap`,children:[r(`top-left`),r(`top-center`),r(`top-right`),E,r(`bottom-left`),r(`bottom-center`),r(`bottom-right`)]})})():E,O=n.verifyAction?(0,o.jsxs)(`div`,{className:`v1-verify-field-row`,children:[D,(0,o.jsx)(ml,{form:x,field:n,absoluteName:p})]}):D,k=n.prefillWhen?.length?(0,o.jsx)(_l,{form:x,rules:n.prefillWhen,watchPath:v(n.prefillWhen[0].field)?[..._,n.prefillWhen[0].field]:e.w(n.prefillWhen[0].field),targetPath:p,resetOnNoMatch:n.prefillWhenReset!==!1},`${n.field}-prefillWhen`):null;return n.showIf?.field?(0,o.jsxs)(r.default.Fragment,{children:[k,(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>J(n.showIf,e,v(n.showIf.field))?(0,o.jsx)(i.Col,{xs:24,md:b,style:C,className:l.inline?`v1-combine-cell`:void 0,children:O}):null})]},n.field):(0,o.jsxs)(r.default.Fragment,{children:[k,(0,o.jsx)(i.Col,{xs:24,md:b,style:C,className:l.inline?`v1-combine-cell`:void 0,children:O})]},n.field)},ae=n=>{let r=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):[n.field],s=!!n.editablePermission&&!e.d(n.editablePermission,t),l=(0,o.jsx)(kl,{field:n,label:n.label,locked:s}),u=e.U(n),d=Array.isArray(n.subFields)&&n.subFields.length>0,f=d?n.subFields.map(e=>({...e,show:1,edit:1})):null,p=Math.max(0,Number(n.minRows??0)||0),m=n.maxRows!==void 0&&n.maxRows!==``&&Number(n.maxRows)>0?Number(n.maxRows):0,h=e.z(n,n.value);return(0,o.jsx)(i.Col,{xs:24,md:24,children:(0,o.jsx)(i.Form.Item,{label:l,required:Wl(n),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:r,initialValue:h,rules:[{validator:async(e,t=[])=>{if(Wl(n)&&!(d?t.some(e=>Cl(e)):t.some(e=>e!=null&&e!==``&&!(Array.isArray(e)&&e.length===0))))throw Error(`Mandatory Field`);if(p>0&&t.length<p)throw Error(`Keep at least ${p} ${d?`row`:`value`}${p>1?`s`:``}.`)}}],children:(e,{add:s,remove:l},{errors:h})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:s,name:m})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>l(m),disabled:e.length<=p,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:d?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(f,m,r[0],!1,n.field)}):(0,o.jsx)(i.Form.Item,{name:[m],noStyle:!0,valuePropName:n.type===`checkbox`&&!n.options?.length?`checked`:`value`,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Gl(u,x,[...r,m],!1),children:(0,o.jsx)(Zl,{field:u,form:x,name:[...r,m],moduleName:t,scopeValues:{clientId:c},formDisabled:V.busy})})})]},s)),(!m||e.length<m)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>s(),className:`v1-addrow-add-btn`,children:n.addLabel??`Add ${n.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:h})]})})})},n.field)},oe=(n,r,s)=>{let l=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):[n.field],u=!!n.editablePermission&&!e.d(n.editablePermission,t),d=(0,o.jsx)(kl,{field:n,label:n.label,locked:u}),f=e.U(n),p=Array.isArray(n.subFields)&&n.subFields.length>0,m=p?n.subFields.map(e=>({...e,show:1,edit:1})):null,h=Math.max(0,Number(n.minRows??0)||0),g=n.maxRows!==void 0&&n.maxRows!==``&&Number(n.maxRows)>0?Number(n.maxRows):0,_=[r,...l],v=[...Array.isArray(s)?s:[s],r,...l],y=e.z(n,void 0);return(0,o.jsx)(i.Col,{xs:24,md:p?24:n.col??24,children:(0,o.jsx)(i.Form.Item,{label:d,required:Wl(n),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:_,initialValue:y,rules:p?[{validator:async(e,t=[])=>{if(Wl(n)&&!t.some(e=>Cl(e)))throw Error(`Mandatory Field`);if(h>0&&t.length<h)throw Error(`Keep at least ${h} row${h>1?`s`:``}.`)}}]:[],children:(e,{add:r,remove:s},{errors:l})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:r,name:l})=>{let u=[...v,l];return(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>s(l),disabled:e.length<=h,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:p?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(m,l,v,!1,n.field)}):(0,o.jsx)(i.Form.Item,{name:[l],noStyle:!0,valuePropName:n.type===`checkbox`&&!n.options?.length?`checked`:`value`,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Gl(f,x,u,!1),children:(0,o.jsx)(Zl,{field:f,form:x,name:u,moduleName:t,scopeValues:{clientId:c},formDisabled:V.busy})})})]},r)}),(!g||e.length<g)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>r(),className:`v1-addrow-add-btn`,children:n.addLabel??`Add ${n.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:l})]})})})},`${s}-${r}-${n.field}`)},Y=(e,t,n,r=!1,a)=>{let s=new Set,c=[],l=new Set(e.map(e=>e.field).filter(Boolean));return e.forEach(u=>{if(bl(u.addRow)&&t===void 0){c.push(ae(u));return}if(bl(u.addRow)&&t!==void 0){c.push(oe(u,t,n));return}let d=u.combineKey?.trim?.();if(!d){c.push(ie(u,t,n,{hideLabel:r,groupNameForActions:a,rowFieldKeys:l}));return}let f=`${n??`root`}:${t??`root`}:${d}`;if(s.has(f))return;let p=e.filter(e=>e.combineKey===d);p.forEach(e=>s.add(`${n??`root`}:${t??`root`}:${e.combineKey}`));let m=(0,o.jsx)(hl,{form:x,field:p.find(e=>e.combineLabel)??u,siblingPrefix:n!==void 0&&t!==void 0?[...Array.isArray(n)?n:[n],t]:null,combined:!0}),h=p.find(e=>e.combineToggleTarget)?.combineToggleTarget,g=p.find(e=>e.combineToggleLabel)?.combineToggleLabel??`Show range`,_=p.some(e=>bl(e.combineWrap)),v=Number(p.find(e=>[12,24].includes(Number(e.combineSpan)))?.combineSpan),y=h?p.find(e=>q(e)===h):null,b=y?.field?.includes?.(`.`)?y.field.split(`.`):[y?.field].filter(Boolean),S=y?n!==void 0&&t!==void 0?[n,t,...b]:b.length>1?b:y.field:null,C=p.some(e=>Wl(e)),w=[12,24].includes(v)?v:p.length>=3?24:12;c.push((0,o.jsx)(i.Col,{xs:24,md:w,children:(0,o.jsx)(i.Form.Item,{label:m,required:C,colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let r=S?!Sl(e(S)):!1,a=ne[f]??r,s=h&&!a?p.filter(e=>q(e)!==h):p;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Row,{gutter:[8,0],align:`top`,wrap:_,className:`v1-combine-row${_?` v1-combine-row-wrap`:``}`,children:s.map(e=>ie(e,t,n,{inline:!0}))}),h&&(0,o.jsxs)(`div`,{className:`v1-combine-range`,children:[(0,o.jsx)(i.Switch,{size:`small`,checked:a,onChange:e=>{!e&&S&&(x.setFieldValue(S,void 0),x.validateFields([S]).catch(()=>{})),re(t=>({...t,[f]:e}))}}),(0,o.jsx)(dl,{type:`secondary`,className:`v1-combine-toggle-label`,children:g})]})]})}})})},f))}),c},se=(t,n)=>{let r=t.name??t.id??String(n),s=t.name??r,c=e.F(z,s),l=!!c&&c.leaderName!==s,u=c?R.find(e=>e.name===c.leaderName)??t:t,d=Math.max(0,Number(u.minRows??0)||0),f=Math.max(0,Number(u.maxRows??0)||0),p=c?c.memberNames:[s],m=()=>{p.forEach(e=>B.current[e]?.add())},h=e=>{p.forEach(t=>B.current[t]?.remove(e))},g=t.addRow?(0,o.jsx)(i.Form.List,{name:s,initialValue:H[t.name]??[],rules:l?[]:[{validator:async(e,n=[])=>{if(!(bl(t.toggleEnabled)&&t.toggleField&&x.getFieldValue(t.toggleField))){if(d>0&&n.length<d)throw Error(`Keep at least ${d} row${d>1?`s`:``}.`);if(bl(t.requireOne)&&n.some(e=>!Cl(e)))throw Error(`Fill at least one field in each added row.`)}}}],children:(e,{add:n,remove:r},{errors:c})=>(B.current[s]={add:n,remove:r},(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[(0,o.jsx)(`div`,{className:`v1-addrow-topbar`,children:l?(0,o.jsxs)(dl,{type:`secondary`,className:`v1-addrow-linked-hint`,children:[`Rows added via `,u.label??u.name]}):(!f||e.length<f)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:m,className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Row`}`})}),bl(t.sharedRowLabels)&&e.length>0&&(0,o.jsx)(i.Row,{gutter:[24,0],className:`v1-addrow-header`,children:t.fields.map(e=>(0,o.jsx)(i.Col,{md:e.col??12,className:`v1-addrow-header-label`,children:e.label},q(e)))}),e.map(({key:n,name:r})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),disabled:e.length<=d,onClick:()=>h(r),className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(t.fields,r,s,bl(t.sharedRowLabels),s)})})]},n)),(0,o.jsx)(i.Form.ErrorList,{errors:c})]}))}):(0,o.jsx)(i.Row,{gutter:[24,0],children:Y(t.fields,void 0,void 0,!1,s)});return(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card`,title:(0,o.jsx)(Ql,{icon:vl[n%vl.length],title:t.label??t.name??`Details`}),extra:(0,o.jsxs)(i.Space,{size:8,align:`center`,className:`v1-group-actions`,children:[(0,o.jsx)(Al,{group:t}),(0,o.jsx)(jl,{group:t}),(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:S[r]?(0,o.jsx)(a.DownOutlined,{}):(0,o.jsx)(a.UpOutlined,{}),onClick:e=>{e.stopPropagation(),G(r)}})]}),children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let n=bl(t.toggleEnabled)&&t.toggleField&&!!e(t.toggleField);return(0,o.jsx)(`div`,{style:{display:S[r]||n?`none`:`block`},children:g})}})},r)};return(0,o.jsxs)(`main`,{children:[W.length>0&&(0,o.jsx)(e.t,{items:W}),(0,o.jsxs)(`div`,{className:`v1-edit-page`,children:[(0,o.jsx)(`div`,{className:`v1-page-inner`,children:(0,o.jsxs)(i.Spin,{spinning:E||V.busy,tip:V.busy?`Running AI action…`:`Loading form fields...`,children:[O&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:O,style:{marginBottom:16}}),M&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:M,style:{marginBottom:16}}),(0,o.jsxs)(i.Form,{form:x,layout:`vertical`,colon:!1,className:`v1-form`,disabled:V.busy,requiredMark:(e,{required:t})=>(0,o.jsxs)(o.Fragment,{children:[e,t&&(0,o.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),onFinish:te,onFinishFailed:K,children:[R.map((e,t)=>e.showIf?.field?(0,o.jsx)(Dl,{form:x,showIf:e.showIf,render:()=>se(e,t)},e.name??`grp-${t}`):se(e,t)),!E&&!O&&R.length===0&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:`No form fields are configured.`})]})]})}),(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(dl,{type:`secondary`,children:`All unsaved changes will be lost if you cancel and reload.`}),(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:()=>v&&y?y():b(f||-1),children:`Cancel`}),(0,o.jsx)(gl,{form:x,groups:R,onClick:()=>x.submit(),disabled:E||A,loading:A,children:d})]})]})]})]})}var eu=new Map;function tu(t){let[n,i]=(0,r.useState)({actions:[],actionRules:[]});return(0,r.useEffect)(()=>{if(!t)return;let n=!1;return eu.has(t)||eu.set(t,e.Q(t).catch(()=>(eu.delete(t),{actions:[],actionRules:[]}))),eu.get(t).then(e=>{n||i(e)}),()=>{n=!0}},[t]),n}var nu={delete:(0,o.jsx)(a.DeleteOutlined,{}),edit:(0,o.jsx)(a.EditOutlined,{}),mail:(0,o.jsx)(a.MailOutlined,{}),shareAlt:(0,o.jsx)(a.ShareAltOutlined,{}),swap:(0,o.jsx)(a.RightOutlined,{}),thunderbolt:(0,o.jsx)(a.ThunderboltOutlined,{}),userAdd:(0,o.jsx)(a.UserAddOutlined,{}),userSwitch:(0,o.jsx)(a.UserSwitchOutlined,{})};function ru(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function iu(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(ru(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(ru(t?.[n]??(n===`_id`?t?.id:n===`id`?t?._id:void 0))))}function au(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function ou(e,t,n,r){let i=Cn(e.key,t,n,r),a={key:e.key,label:e.label||e.key,icon:nu[e.icon]??void 0,danger:e.danger||void 0,disabled:!!i,title:i||void 0};return e.children?.length&&(a.children=e.children.map(e=>ou(e,t,n,r))),a}function su(e){let t=[];for(let n of e)t.push(n),n.children?.length&&t.push(...su(n.children));return t}function cu({module:n,record:r,scope:c,onDone:l,fallback:u=null}){let d=(0,s.useNavigate)(),f=(0,s.useLocation)(),{actions:p,actionRules:m}=tu(n),h=t=>!(t.showInList===!1||!e.d(t.permission,n)||t.permissionKey&&!e.u(au(r,`actionPermission.${t.permissionKey}`))||Sn(t.key,r,m,c)||t.allowedTabs?.length&&c&&!t.allowedTabs.some(e=>String(e).toLowerCase()===String(c).toLowerCase())),g=(p??[]).filter(h).map(e=>e.children?.length?{...e,children:e.children.filter(h)}:e);if(!g.length)return u;let _=e=>{if(e.actionType===`copy`){let t=au(r,e.copyField||`id`)??r?._id;navigator.clipboard.writeText(ru(t)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(e.actionType===`api`&&e.apiPath){let n=()=>{let n=iu(e.apiPath,r),a=String(e.apiMethod||`POST`).toUpperCase();t.i(t.v,n.startsWith(`/`)?n:`/${n}`,{method:a,body:[`GET`,`DELETE`].includes(a)?void 0:JSON.stringify({ids:[r?._id??r?.id],records:[r]})}).then(()=>{i.message.success(`${e.label} completed`),l?.(e)}).catch(t=>i.message.error(t.message||`${e.label} failed`))};e.danger?i.Modal.confirm({title:`${e.label}?`,content:`This cannot be undone.`,okText:e.label,okButtonProps:{danger:!0},onOk:n}):n();return}if(e.actionType===`modal`){d(`/popup/${e.popupKey||e.key}`,{state:{background:f,selectedIds:[r?._id??r?.id],selectedRecords:[r],moduleName:n,popupContext:e.popupState??{},popupAction:{key:e.key,apiMethod:e.apiMethod,apiPath:e.apiPath,defaultTemplateId:e.defaultTemplateId},...e.popupState}});return}let a=e.routeTemplate||e.route;if(a){let t=iu(a,r),n=t.startsWith(`/`)?t:`/${t}`;if(e.linkTarget===`_blank`){window.open(n,`_blank`,`noopener`);return}d(n)}},v=new Map(su(g).map(e=>[String(e.key),e]));return(0,o.jsx)(i.Dropdown,{trigger:[`click`],menu:{items:g.map(e=>ou(e,r,m,c)),onClick:({key:e,domEvent:t})=>{t?.stopPropagation?.();let n=v.get(String(e));n&&n.actionType!==`group`&&_(n)}},children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.MoreOutlined,{}),onClick:e=>e.stopPropagation(),"aria-label":`Row actions`})})}var{Text:lu}=i.Typography;function uu(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function du(e){return e.value??e.fieldName??e.name??e.label}function fu(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}var pu=[{key:`name`,label:`Name`},{key:`designation`,label:`Designation`},{key:`locationExp`,label:`Location / Exp`},{key:`skills`,label:`Skills`},{key:`createdOn`,label:`Created On`}];function mu({record:e,fields:t,selected:n,onSelect:r}){let c=(0,s.useNavigate)(),l=(0,s.useLocation)(),u=t.find(e=>e.cardRole===`name`),d=t.find(e=>e.cardRole===`subtitle`),f=t.find(e=>e.cardRole===`location`),p=t.find(e=>e.cardRole===`skills`),m=t.find(e=>e.cardRole===`exp`),h=t.find(e=>e.cardRole===`date`),g=t.find(e=>e.cardRole===`action`),_=u?fu(e,u.key):`-`,v=d?fu(e,d.key):``,y=f?fu(e,f.key):``,b=m?fu(e,m.key):``,x=h?fu(e,h.key):``,S=p?e[p.key]:[],C=Array.isArray(S)?S:[],w=C.slice(0,3),T=C.slice(3),E=g?.render?g.render(fu(e,g.key),e):null;function D(){c(`/popup/preview`,{state:{background:l,moduleName:`candidate`,record:e,fields:pu}})}function O(){c(`/popup/mail`,{state:{background:l}})}return(0,o.jsxs)(`div`,{className:`param-card${n?` param-card--selected`:``}`,children:[(0,o.jsxs)(`div`,{className:`param-card__header`,children:[(0,o.jsxs)(`div`,{className:`param-card__header-left`,children:[(0,o.jsxs)(`div`,{className:`param-card__name-row`,children:[(0,o.jsx)(i.Checkbox,{checked:n,onChange:r,onClick:e=>e.stopPropagation(),className:`param-card__checkbox`}),(0,o.jsx)(a.EyeOutlined,{className:`param-card__eye-icon`,onClick:D}),(0,o.jsxs)(`span`,{className:`param-card__name-block`,children:[(0,o.jsx)(lu,{className:`param-card__name`,children:_}),v&&v!==`-`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`span`,{className:`param-card__sep`,children:`·`}),(0,o.jsx)(lu,{className:`param-card__subtitle`,children:v})]})]})]}),y&&y!==`-`&&(0,o.jsxs)(`div`,{className:`param-card__location`,children:[(0,o.jsx)(a.EnvironmentOutlined,{className:`param-card__location-icon`}),(0,o.jsx)(lu,{className:`param-card__location-text`,children:y})]})]}),(0,o.jsx)(`div`,{className:`param-card__header-right`,children:(0,o.jsxs)(`span`,{className:`param-card__exp-badge`,children:[`Exp: `,b&&b!==`-`?b:`-`]})})]}),(0,o.jsxs)(`div`,{className:`param-card__body`,children:[(0,o.jsxs)(`div`,{className:`param-card__body-left`,children:[(0,o.jsx)(lu,{className:`param-card__section-label`,children:`Skills`}),(0,o.jsxs)(`div`,{className:`param-card__skills-row`,children:[w.length>0?w.map(e=>(0,o.jsx)(i.Tag,{className:`sourcing-skill-tag`,children:e},e)):(0,o.jsx)(lu,{className:`param-card__empty`,children:`-`}),T.length>0&&(0,o.jsx)(i.Popover,{trigger:`click`,placement:`bottomLeft`,overlayClassName:`sourcing-skills-popover`,content:(0,o.jsx)(`div`,{className:`sourcing-skills-popup`,children:T.map(e=>(0,o.jsx)(i.Tag,{className:`sourcing-skill-tag`,children:e},e))}),children:(0,o.jsxs)(`span`,{className:`sourcing-more-skills`,children:[`+`,T.length]})})]})]}),x&&x!==`-`&&(0,o.jsxs)(`div`,{className:`param-card__body-right`,children:[(0,o.jsx)(lu,{className:`param-card__section-label param-card__section-label--right`,children:`Created on`}),(0,o.jsx)(lu,{className:`param-card__date-value`,children:x})]})]}),(0,o.jsx)(`div`,{className:`param-card__divider`}),(0,o.jsxs)(`div`,{className:`param-card__footer`,children:[(0,o.jsxs)(`div`,{className:`param-card__footer-left`,children:[(0,o.jsx)(i.Tooltip,{title:`Resume`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Resume`,children:(0,o.jsx)(a.FileTextOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Call`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Call`,children:(0,o.jsx)(a.PhoneOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Email`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Email`,onClick:O,children:(0,o.jsx)(a.MailOutlined,{})})})]}),(0,o.jsx)(`div`,{className:`param-card__footer-right`,children:E})]})]})}function hu({listName:e=`List`,moduleName:t=``,actions:n=[],fields:c=[],dataSource:l=[],loading:u=!1,total:d,current:f,pageSize:p,onPageChange:m,onPageSizeChange:h,className:g=``,activeView:_=`card`,onViewChange:v}){let y=(0,s.useNavigate)(),b=(0,s.useLocation)(),[x,S]=(0,r.useState)(``),[C,w]=(0,r.useState)({current:1,pageSize:12}),[T,E]=(0,r.useState)([]),[D,O]=(0,r.useState)([]),k=typeof f==`number`&&typeof p==`number`,A=k?{current:f,pageSize:p}:C,j=e=>{let t=e.id??e._id;E(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t]),O(n=>n.some(e=>(e.id??e._id)===t)?n.filter(e=>(e.id??e._id)!==t):[...n,e])},M=n.filter(e=>!e.maxSelect||T.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:T.length===0,onClick:()=>{if(T.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:T,selectedRecords:D});return}e.route&&y(e.route,{state:{background:b,selectedIds:T,selectedRecords:D,moduleName:t,...e.popupState??{}}})}}})),N=(0,r.useMemo)(()=>c.map(e=>({...e,key:du(e),label:uu(e)})).filter(e=>e.key&&e.label),[c]),P=typeof d==`number`?d:l.length,F=(0,r.useMemo)(()=>{let e=x.toLowerCase();return!e||e.length<3?l:l.filter(t=>N.some(n=>String(fu(t,n.key)).toLowerCase().includes(e)))},[l,N,x]),I=(0,r.useMemo)(()=>{if(k)return F;let e=(A.current-1)*A.pageSize;return F.slice(e,e+A.pageSize)},[A.current,A.pageSize,F,k]);return(0,o.jsxs)(`div`,{className:`antd param-card-view ${g}`.trim(),children:[(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsxs)(i.Flex,{align:`center`,gap:6,children:[(0,o.jsx)(lu,{className:`param-card-view__tab-label`,children:e}),(0,o.jsx)(`span`,{className:`param-card-view__count`,children:P}),T.length>0&&n.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Dropdown,{menu:{items:M},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[`Actions `,(0,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),(0,o.jsxs)(lu,{className:`job-selected-count`,children:[`Selected (`,T.length,`)`]})]})]}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:`Search by name, location, skills`,value:x,onChange:e=>{S(e.target.value),k?m?.(1):w(e=>({...e,current:1}))},allowClear:!0,className:`job-search-input`}),(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Card view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${_===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>v?.(`card`)})}),(0,o.jsx)(i.Tooltip,{title:`List view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${_===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>v?.(`list`)})})]})]})}),(0,o.jsx)(i.Spin,{spinning:u,children:I.length>0?(0,o.jsx)(`div`,{className:`param-card-view__grid`,children:I.map((e,t)=>(0,o.jsx)(mu,{record:e,fields:N,selected:T.includes(e.id??e._id),onSelect:()=>j(e)},e.id??e.key??t))}):!u&&(0,o.jsx)(`div`,{className:`param-card-view__empty`,children:`No results found`})}),(0,o.jsx)(_e,{current:A.current,pageSize:A.pageSize,total:P,onChange:e=>{k?m?.(e):w(t=>({...t,current:e}))},onPageSizeChange:e=>{k?h?.(e):w({current:1,pageSize:e})}})]})}var{Text:gu}=i.Typography;function _u(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function vu(e){return e.value??e.fieldName??e.name??e.label}function yu(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}function bu(e,t){return(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(`span`,{children:e}),(0,o.jsx)(i.Badge,{count:t,overflowCount:9999})]})}function xu({listName:e=`List`,fields:t=[],actions:n=[],dataSource:c=[],loading:l=!1,total:u,current:d,pageSize:f,onPageChange:p,onPageSizeChange:m,onSearch:h,rowSelection:g=!0,className:_=``,tableClassName:v=`job-list-table`,activeView:y=`list`,onViewChange:b}){let x=(0,s.useNavigate)(),S=(0,s.useLocation)(),[C,w]=(0,r.useState)(`all`),[T,E]=(0,r.useState)(``),[D,O]=(0,r.useState)([]),[k,A]=(0,r.useState)([]),[j,M]=(0,r.useState)({current:1,pageSize:10}),[N,P]=(0,r.useState)([]),[F,I]=(0,r.useState)(!1),L=(0,r.useRef)(null),R=n.filter(e=>!e.maxSelect||D.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:D.length===0,onClick:()=>{if(D.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:D,selectedRecords:k});return}e.route&&x(e.route,{state:{background:S,selectedIds:D,selectedRecords:k,...e.popupState??{}}})}}})),z=typeof d==`number`&&typeof f==`number`,B=z?{current:d,pageSize:f}:j,V=(0,r.useMemo)(()=>t.map(e=>({...e,key:vu(e),label:_u(e)})).filter(e=>e.key&&e.label&&!e.tableHidden),[t]),H=N.length?N:V.map(e=>e.key),U=(0,r.useMemo)(()=>{if(h)return c;let e=T.toLowerCase();return!e||e.length<3?c:c.filter(t=>V.some(n=>String(yu(t,n.key)).toLowerCase().includes(e)))},[c,V,h,T]),W=typeof u==`number`?u:T.trim()?U.length:c.length,G=(0,r.useMemo)(()=>{if(z)return U;let e=(B.current-1)*B.pageSize;return U.slice(e,e+B.pageSize)},[B.current,B.pageSize,U,z]),ee=(0,r.useMemo)(()=>V.filter(e=>H.includes(e.key)).map(e=>({title:e.label,dataIndex:e.key,key:e.key,sorter:e.sorter===!1?!1:e.sorter??((t,n)=>String(yu(t,e.key)).localeCompare(String(yu(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,o.jsx)(gu,{className:`job-cell-primary`,children:yu(n,e.key)})})),[V,H]),te=H.length===V.length,K=H.length>0&&!te,ne=(e,t)=>{P(n=>{let r=n.length?n:V.map(e=>e.key);return t?r.includes(e)?r:[...r,e]:r.filter(t=>t!==e)})},re=(0,o.jsxs)(`div`,{className:`column-visibility-menu`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(i.Checkbox,{checked:te,indeterminate:K,onChange:e=>{P(e.target.checked?V.map(e=>e.key):[])},children:`Select All`}),V.map(e=>(0,o.jsx)(i.Checkbox,{checked:H.includes(e.key),onChange:t=>ne(e.key,t.target.checked),children:e.label},e.key))]});return(0,o.jsxs)(`div`,{className:`antd dynamic-list-view ${_}`.trim(),children:[(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsx)(i.Tabs,{activeKey:C,items:[{key:`all`,label:bu(e,W)}],onChange:e=>{w(e),M({...j,current:1})}}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:`Min 3 Chars to search`,value:T,onChange:e=>{let t=e.target.value;E(t),h?(clearTimeout(L.current),L.current=setTimeout(()=>{h(t),p?.(1)},350)):z?p?.(1):M({...j,current:1})},allowClear:!0,className:`job-search-input`}),(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Card view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${y===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>b?.(`card`)})}),(0,o.jsx)(i.Tooltip,{title:`List view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${y===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>b?.(`list`)})})]})]})}),(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,gap:3,children:[(0,o.jsx)(i.Dropdown,{open:F,onOpenChange:I,trigger:[`click`],dropdownRender:()=>re,placement:`bottomLeft`,overlayClassName:`column-visibility-dropdown`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(`img`,{src:Jr,alt:``,className:`job-action-list-icon`}),size:`small`,className:`job-actions-button`})}),D.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Dropdown,{menu:{items:R},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[(0,o.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,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),(0,o.jsxs)(gu,{className:`job-selected-count`,children:[`Selected (`,D.length,`)`]})]})]})}),(0,o.jsx)(i.Spin,{spinning:l,children:(0,o.jsx)(i.Table,{rowSelection:g?{type:`checkbox`,selectedRowKeys:D,onChange:(e,t)=>{O(e),A(t)}}:void 0,columns:ee,dataSource:G,size:`middle`,scroll:{x:`max-content`},showSorterTooltip:!1,tableLayout:`auto`,pagination:!1,className:v,rowKey:e=>e.id??e.key})}),(0,o.jsx)(_e,{current:B.current,pageSize:B.pageSize,total:W,onChange:e=>{z?p?.(e):M(t=>({...t,current:e}))},onPageSizeChange:e=>{z?m?.(e):M({current:1,pageSize:e})}})]})}var Su={active:`green`,approved:`green`,hired:`green`,submitted:`gold`,resubmitted:`purple`,pending:`gold`,draft:`default`,rejected:`red`,inactive:`default`,completed:`blue`,not_submitted:`default`};function Cu({status:e}){let t=String(e??`unknown`);return(0,o.jsx)(i.Tag,{color:Su[t.toLowerCase()]??`default`,style:{borderRadius:6,fontWeight:600,fontSize:12,textTransform:`capitalize`},children:t.replace(/_/g,` `)})}function wu(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 Tu({tabs:e=[],activeKey:t,onChange:n,className:r=``}){let a=e.map(wu).filter(Boolean);if(!a.length)return null;let s=a.some(e=>e.key===t)?t:a[0].key;return(0,o.jsx)(`div`,{className:`stylish-tabs ${r}`.trim(),children:a.map(e=>{let t=e.key===s,r=e.count!=null;return(0,o.jsxs)(`button`,{type:`button`,className:`stylish-tabs__item${t?` stylish-tabs__item--active`:``}`,onClick:()=>n?.(e.key),children:[(0,o.jsx)(`span`,{className:`stylish-tabs__label`,children:e.label}),r&&(0,o.jsx)(i.Badge,{count:e.count,showZero:!0,overflowCount:999,className:`stylish-tabs__badge${t?` stylish-tabs__badge--active`:``}`})]},e.key)})})}var Eu=/(\{\{[\w.]+\}\})/g;function Du(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}function Ou(e,t){return e?e.split(Eu).map(e=>/^\{\{[\w.]+\}\}$/.test(e)?`<span style="color:var(--color-brand);font-weight:600;background:var(--color-brand-softer);border-radius:3px;padding:0 3px">${Du(e)}</span>`:`<span style="color:var(--color-text-primary)">${Du(e).replace(/\n/g,`<br>`)}</span>`).join(``):`<span style="color:#bbb;pointer-events:none">${Du(t)}</span>`}var ku={fontFamily:`"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace`,fontSize:12,lineHeight:`1.7`,padding:`5px 10px`,whiteSpace:`pre-wrap`,wordBreak:`break-word`,overflowWrap:`break-word`,boxSizing:`border-box`};function Au({value:e=``,onChange:t,placeholder:n="e.g. ${{clientRate}} /{{rateType}}",disabled:i=!1,textareaRef:a}){let s=(0,r.useRef)(null),c=a??s,[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=c.current;e&&(e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`)},[e]);let d=i?`var(--color-border-input)`:l?`var(--color-brand)`:`var(--color-border-input)`,f=l&&!i?`0 0 0 2px rgba(0,83,165,0.12)`:`none`;return(0,o.jsxs)(`div`,{style:{position:`relative`,border:`1px solid ${d}`,borderRadius:6,background:i?`var(--color-surface-soft)`:`#fff`,transition:`border-color 0.2s, box-shadow 0.2s`,boxShadow:f,minHeight:34,cursor:i?`not-allowed`:`text`},onClick:()=>!i&&c.current?.focus(),children:[(0,o.jsx)(`div`,{"aria-hidden":!0,style:{...ku,visibility:`hidden`,minHeight:22,pointerEvents:`none`,userSelect:`none`},dangerouslySetInnerHTML:{__html:Ou(e,n)+`​`}}),(0,o.jsx)(`div`,{"aria-hidden":!0,style:{...ku,position:`absolute`,inset:0,pointerEvents:`none`,userSelect:`none`,overflow:`hidden`},dangerouslySetInnerHTML:{__html:Ou(e,n)+`​`}}),(0,o.jsx)(`textarea`,{ref:c,value:e,rows:1,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`,disabled:i,onChange:e=>t?.(e.target.value),onFocus:()=>u(!0),onBlur:()=>u(!1),style:{...ku,position:`absolute`,inset:0,width:`100%`,height:`100%`,background:`transparent`,color:`transparent`,caretColor:`#333`,border:`none`,outline:`none`,resize:`none`,overflow:`hidden`,cursor:i?`not-allowed`:`text`}})]})}var ju=e=>{let t=Number(e);return Number.isFinite(t)?t:0};function Mu(e){return`$${ju(e).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function Nu(e){return`${ju(e).toFixed(2)} hrs`}function Pu(e){return`${Mu(e)}/hr`}function Fu(e){let t=String(e??``).trim().split(/\s+/).filter(Boolean);return t.length?t.slice(0,2).map(e=>e[0].toUpperCase()).join(``):`·`}var Iu={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 Lu(e){return Iu[e]||{label:String(e??``).toLowerCase().split(`_`).filter(Boolean).map(e=>e[0].toUpperCase()+e.slice(1)).join(` `)||`Activity`,icon:`file`,tone:`neutral`}}function Ru(e){return(Array.isArray(e)?e:[]).find(e=>e?.event===`TIMESHEET_APPROVED`)?.at??null}var zu=e=>({enabled:!0,variant:e,disabledReason:null}),Bu=e=>({enabled:!1,variant:`default`,disabledReason:e}),Vu=[`PaymentNotReceived`,`Invoiced`,`Paid`],Hu=[`Ready`,`Processing`,`Paid`];function Uu(e){switch(e){case`PaymentNotReceived`:return{generateInvoice:zu(`primary`),recordPayment:Bu(`Generate the invoice first`),markPaid:Bu(`Generate the invoice first`)};case`Invoiced`:return{generateInvoice:Bu(`Invoice already generated`),recordPayment:zu(`primary`),markPaid:zu(`default`)};case`Paid`:return{generateInvoice:Bu(`Payment already received`),recordPayment:Bu(`Payment already received`),markPaid:Bu(`Payment already received`)};default:return{generateInvoice:Bu(`Unavailable in the current status`),recordPayment:Bu(`Unavailable in the current status`),markPaid:Bu(`Unavailable in the current status`)}}}function Wu(e){switch(e){case`Ready`:return{process:zu(`primary`),generatePayslip:Bu(`Mark the payroll paid first`),markPaid:Bu(`Process the payroll first`)};case`Processing`:return{process:Bu(`Payroll is already processing`),generatePayslip:Bu(`Mark the payroll paid first`),markPaid:zu(`primary`)};case`Paid`:return{process:Bu(`Payroll already paid`),generatePayslip:zu(`primary`),markPaid:Bu(`Payroll already paid`)};default:return{process:Bu(`Unavailable in the current status`),generatePayslip:Bu(`Unavailable in the current status`),markPaid:Bu(`Unavailable in the current status`)}}}function Gu(e,t){if(e===`billing`){let e=Math.max(Vu.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(Hu.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 Ku=e=>ju(e?.leave?.CL)+ju(e?.leave?.SL),qu=e=>ju(e?.workingHours?.ST),Ju=e=>ju(e?.workingHours?.OT);function Yu(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=qu(e),r=Ju(e),i=Ku(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 Xu(e,t){return(Array.isArray(e)?e:[]).filter(e=>!!e?.isLogged||qu(e)>0||Ju(e)>0||Ku(e)>0||e?.isHoliday).map(e=>{let n=qu(e),r=Ju(e),i=n+r;return{key:e.date,date:e.date,day:e.day||``,st:n,ot:r,leave:Ku(e),isHoliday:!!e?.isHoliday,total:i,amount:i*ju(t),status:e?.status||`logged`,reviewer:e?.reviewedByName||``,remarks:e?.rejectionReason||e?.notes||``}})}function Zu(e){let[t,n,r]=String(e??``).split(`-`).map(Number);return!t||!n||!r?null:new Date(t,n-1,r)}var Qu=e=>e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`});function $u(e,t){let n=Array.isArray(e)?e:[],r=new Map;return n.forEach(e=>{let n=Zu(e?.date);if(!n)return;let i=qu(e),a=Ju(e),o=Ku(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:`${Qu(c)} – ${Qu(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)*ju(t),(e?.isLogged||i>0||a>0)&&(u.days+=1)}),[...r.values()].sort((e,t)=>e.weekStart-t.weekStart)}function ed(e,{high:t=25,low:n=10}={}){let r=ju(e);return r>=t?`high`:r<n?`low`:`mid`}function td(e){let t=e==null?``:String(e);return/[",\n\r]/.test(t)?`"${t.replace(/"/g,`""`)}"`:t}function nd(e,t){return[t.map(e=>td(e.label)).join(`,`),...(e??[]).map(e=>t.map(t=>td(t.format?t.format(e[t.key],e):e[t.key])).join(`,`))].join(`\r
2
+ `)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(a.actionType===`api`&&a.apiPath){let e=r[0]??{},o=mi(a.apiPath,e);t.i(t.v,o.startsWith(`/`)?o:`/${o}`,{method:a.apiMethod||`POST`,body:[`GET`,`DELETE`].includes(String(a.apiMethod).toUpperCase())?void 0:JSON.stringify({ids:n,records:r})}).then(()=>{i.message.success(`${a.label} completed`),Ee(e=>e+1)}).catch(e=>i.message.error(e.message||`${a.label} failed`));return}if(a.route){let e=r[0]??{},t=mi(a.route,e),i=t.startsWith(`/`)?t:`/${t}`;if(a.route.startsWith(`/popup/`)||a.route.startsWith(`popup/`)){q(i,{state:{background:J,selectedIds:n,selectedRecords:r,moduleName:ie,popupContext:a.popupState??{},popupAction:{key:a.key,apiMethod:a.apiMethod,apiPath:a.apiPath,defaultTemplateId:a.defaultTemplateId},...a.popupState}});return}q(i)}}}function gn({key:e}){mn(e,X,Ce)}let vn=Xt.length===qt.length,yn=Xt.length>0&&!vn,bn=(e,t)=>{Me(n=>{let r=qt.slice(0,ne).map(e=>e.key),i=n.length?n:r;return t?i.includes(e)?i:[...i,e]:i.length<=Zt?i:i.filter(t=>t!==e)})},xn=()=>{if(typeof h==`function`){h();return}if(y){q(y);return}ft(!0)};(0,r.useEffect)(()=>{if(!dt)return;let e=e=>{e.key===`Escape`&&ft(!1)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[dt]);let Sn=()=>{Gt&&(Ke(lt.rows),Je(lt.total),Xe(lt.tabs),Qe(lt.fields),et(lt.tabField),nt(lt.actions??[]),it(lt.actionRules??[]),ct(null),ot(!1))},Cn=e=>{let t=e.target.value,n=t.trim().length<3,r=be.some(e=>e.field);n&&(ge(``),r||Sn()),me(t),At()},Tn=()=>{let e=pe.trim();e.length>=3&&(ge(e),At())},En=()=>{Sn(),xe([]),We([],[]),At()};(0,r.useEffect)(()=>{yt===`card`&&(Ie([]),We([],[]))},[De.current,De.pageSize,de,yt]);let Dn=e=>{Ie(t=>{let n=t.includes(e)?t.filter(t=>t!==e):[...t,e];return We(n,tn.filter((e,t)=>n.includes(String(ea(e,t,g))))),n})},On=(0,o.jsxs)(`div`,{className:`column-visibility-menu`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(i.Checkbox,{checked:vn,indeterminate:yn,onChange:e=>{Me(e.target.checked?qt.map(e=>e.key):qt.slice(0,ne).map(e=>e.key))},children:`Select All`}),(0,o.jsx)(`div`,{className:`column-visibility-menu__list`,children:qt.map(e=>(0,o.jsx)(i.Checkbox,{checked:Xt.includes(e.key),disabled:Xt.includes(e.key)&&Xt.length<=Zt,onChange:t=>bn(e.key,t.target.checked),children:e.label},e.key))})]});return(0,o.jsxs)(`div`,{className:`antd dynamic-list-view${H?` list-view--compact`:``} ${f}`.trim(),children:[u.length>0&&(0,o.jsx)(`div`,{className:`job-list-header`,children:(0,o.jsx)(e.t,{items:u})}),(0,o.jsx)(i.Card,{className:`job-tabs-card`,children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsx)(j,{activeKey:de,tabs:ln,onChange:pn}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[on&&(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:N,value:pe,onChange:Cn,onPressEnter:Tn,allowClear:!0,className:`job-search-input`}),!pt&&oe&&re&&(0,o.jsx)(i.Tooltip,{title:`Add`,children:(0,o.jsx)(i.Button,{"aria-label":`Add`,className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{Dt&&q(Dt)}})}),on&&(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Badge,{count:be.filter(e=>e.field&&ba(e)).length,size:`small`,offset:[-2,2],children:(0,o.jsx)(i.Button,{"aria-label":`Filter`,className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{}),onClick:()=>ye(!0)})})}),F&&on&&(0,o.jsxs)(i.Flex,{align:`center`,gap:6,children:[(0,o.jsx)(i.Tooltip,{title:`List View`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${yt===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>{L?.(`list`),Ie([]),We([],[])}})}),(0,o.jsx)(i.Tooltip,{title:`Card View`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${yt===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>{L?.(`card`),Ie([]),We([],[])}})})]}),_&&on&&(0,o.jsx)(i.Button,{className:`job-summary-button`,type:`primary`,onClick:xn,children:v})]})]})}),on&&(0,o.jsx)(o.Fragment,{children:(0,o.jsx)(i.Card,{className:`job-toolbar-card`,children:(0,o.jsxs)(i.Flex,{className:`p-flex`,align:`center`,justify:`space-between`,children:[(0,o.jsxs)(i.Flex,{align:`center`,gap:3,children:[yt===`card`&&(0,o.jsx)(i.Checkbox,{checked:tn.length>0&&Fe.length>=tn.length,indeterminate:Fe.length>0&&Fe.length<tn.length,className:`param-card-view__select-all`,onChange:()=>{if(Fe.length>0)Ie([]),We([],[]);else{let e=tn.map((e,t)=>String(ea(e,t,g)));Ie(e),We(e,[...tn])}},children:`Select All`}),(0,o.jsx)(i.Dropdown,{open:Ne,onOpenChange:Pe,trigger:[`click`],dropdownRender:()=>On,placement:`bottomLeft`,overlayClassName:`column-visibility-dropdown`,children:(0,o.jsx)(i.Button,{"aria-label":`Display columns`,type:`text`,icon:(0,o.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%3cmask%20id='path-1-inside-1_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='1.40039'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-1-inside-1_8856_23533)'/%3e%3cmask%20id='path-2-inside-2_8856_23533'%20fill='white'%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'/%3e%3c/mask%3e%3crect%20x='1.40039'%20y='7.50781'%20width='5.09086'%20height='5.09086'%20rx='0.727266'%20stroke='%23586888'%20stroke-width='1.5'%20mask='url(%23path-2-inside-2_8856_23533)'/%3e%3cline%20x1='7.375'%20y1='2.93555'%20x2='12.225'%20y2='2.93555'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='5.83398'%20x2='12.225'%20y2='5.83398'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='8.87305'%20x2='12.225'%20y2='8.87305'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3cline%20x1='7.375'%20y1='11.7227'%20x2='12.225'%20y2='11.7227'%20stroke='%23586888'%20stroke-width='0.75'%20stroke-linecap='round'/%3e%3c/svg%3e`,alt:``,className:`job-action-list-icon`}),size:`small`,className:`job-actions-button job-column-display-button`,children:(0,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})})}),Tt.length>0&&X.length>0&&(0,o.jsx)(i.Dropdown,{menu:{items:Tt.map(aa),onClick:gn},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[(0,o.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,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),X.length>0&&(0,o.jsxs)(Yr,{className:`job-selected-count`,children:[`Selected (`,X.length,`)`]})]}),rn&&(0,o.jsxs)(Yr,{className:`job-search-results-count`,children:[`Search Results (`,an,`)`]})]})})}),Ht&&(0,o.jsx)(Ca,{filters:be,onRemove:e=>{xe(be.filter((t,n)=>n!==e)),At()},onClearAll:En}),(0,o.jsx)(`div`,{ref:Le,className:`job-table-measure`,children:(0,o.jsx)(i.Spin,{spinning:pt?w:Mt||at,children:yt===`card`?tn.length===0?(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:sn,className:`param-card-view__empty`,children:!pt&&oe&&re&&Dt&&!st&&(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>q(Dt),children:`Add New`})}):(0,o.jsx)(`div`,{className:`param-card-view__grid`,children:tn.map((e,t)=>{let n=String(ea(e,t,g));return(0,o.jsx)(ya,{record:e,fields:$t,selected:V===`checkbox`?Fe.includes(n):He(e,t),isControlled:pt,onPreview:()=>un(e),onSelect:()=>Dn(n),onPopupAction:dn,onRecordClick:z?()=>Ue(e,t):void 0,selectionMode:V,permissions:{canAdd:oe,canEdit:Y,canDelete:se}},n)})}):(0,o.jsx)(i.Table,{rowSelection:on&&V===`checkbox`?{type:`checkbox`,fixed:!0,columnWidth:48,selectedRowKeys:X,onChange:(e,t)=>{We(e,t)},columnTitle:(()=>{let e=tn.length,t=e>0&&X.length>=e,n=X.length>0&&!t;return(0,o.jsx)(i.Checkbox,{checked:t,indeterminate:n,onChange:()=>{n||t?We([],[]):We(tn.map((e,t)=>ea(e,t,g)),[...tn])}})})()}:void 0,columns:fn,dataSource:tn,size:`middle`,tableLayout:`fixed`,scroll:{x:Qt||pt?`max-content`:void 0,y:`calc(100vh - 300px)`},pagination:!1,locale:{emptyText:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:sn})},className:`${x} ${H?`list-view-table--compact`:``}`.trim(),onRow:z?(e,t)=>({onClick:n=>{ta(n.target)||Ue(e,t)},"aria-selected":He(e,t)}):void 0,rowClassName:B==null?void 0:(e,t)=>He(e,t)?`list-view-row--active`:``,rowKey:(e,t)=>ea(e,t,g)})})}),on?(0,o.jsx)(_e,{current:De.current,pageSize:De.pageSize,total:nn,onChange:(e,t)=>{if(pt&&typeof O==`function`){O(e,t??De.pageSize);return}kt(e)},onPageSizeChange:e=>{if(pt&&typeof k==`function`){k(e);return}Oe({current:1,pageSize:e}),Ot(1,{replace:!0})}}):void 0,(0,o.jsx)(Kr,{moduleName:ie,open:ve,filters:be,onClose:()=>ye(!1),onApply:({filters:e})=>{xe(e),At()},onReset:En}),(0,o.jsx)(Nr,{moduleName:ie,open:dt,rows:Ge,tabs:ln,total:nn,onClose:()=>ft(!1)})]})}async function Ta({isFromSubmission:e,jobId:n,submissionId:r,search:i=``}={}){let a={search:i};e?a.submissionId=r:a.jobId=n;let o=await t.i(t.y,`/quicksubmit/list`,{method:`POST`,body:JSON.stringify(a)});return o.data??o}async function Ea(e){if(!e)throw Error(`Dice candidate ID is required`);let n=await t.r(),r=`${t.v}/dicemigrate/${encodeURIComponent(String(e))}`;process.env.NODE_ENV===`development`&&console.log(`[DiceMigration] Request URL:`,r);let i=await fetch(r,{method:`GET`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}}),a=await i.json().catch(()=>null);if(!i.ok){let e=Error(a?.message??a?.error??`Failed to migrate candidate (${i.status})`);throw e.status=i.status,e}return a}function Da(e){return e&&typeof e==`object`?Da(e.value??e.key??e.id??e.label??e.name):String(e??``).trim().toLowerCase()}function Oa(e){return(Array.isArray(e)?e:[e]).flat().map(Da).filter((e,t,n)=>e&&e!==`all`&&n.indexOf(e)===t)}function ka(e,t=`internal`){let n=Oa(e);if(n.includes(`internal`))return`internal`;let r=Da(t);return n[0]?n[0]:r||(t===``?``:`internal`)}function Aa(e){return String(e??``).replace(/[-_]+/g,` `).replace(/\s+/g,` `).trim().replace(/\b\w/g,e=>e.toUpperCase())}function ja(e){return Da(e?.key??e?.value??e?.id??e?.source??e?.name??e?.title??e?.label)}function Ma(e){let t=e?.count??e?.countValue,n=Number(t);return Number.isFinite(n)?n:void 0}function Na(e,t,n,r,i){if(e===r){let n=Number(t?.[e]);if(Number.isFinite(n))return n;let r=Number(i);if(Number.isFinite(r))return r}let a=n.get(e);if(a!==void 0)return a}function Pa({sources:e=[],activeSource:t=`internal`,activeCount:n=0,responseCounts:r={},currentTabs:i=[],backendTabs:a=[]}={}){let o=new Map((Array.isArray(i)?i:[]).map(e=>[ja(e),Ma(e)]).filter(([e,t])=>e&&t!==void 0)),s=new Map;(Array.isArray(a)?a:[]).forEach(e=>{let t=ja(e);t&&s.set(t,{key:t,title:e.title??e.label??e.name??Aa(t),...Ma(e)===void 0?{}:{count:Ma(e)}})});let c=Oa(e);return(c.length?c:[t]).forEach(e=>{if(!e||s.has(e))return;let i=Na(e,r,o,t,n);s.set(e,{key:e,title:Aa(e),...i===void 0?{}:{count:i}})}),Array.from(s.values())}function Fa(e){return[e?.sourceType,e?.profileSource,e?.selectedSource,e?.source,e?.provider,e?.customFields?.sourceType,e?.customFields?.profileSource,e?.customFields?.source,e?.customFields?.provider].flat().map(Da).filter(Boolean)}function Ia(e,t,n){let r=Da(t);return r?Fa(e).includes(r)?!0:typeof n==`function`?n(e):!1:!1}var La=[{source:`dice`,field:`__sourceAction_dice_migrate`,label:`Action`,buttonLabel:`Migrate`,completedLabel:`Migrated`,successMessage:`Candidate migrated successfully.`,errorMessage:`Failed to migrate candidate.`,isRecordFromSource:e=>!!e?.customFields?.diceProfileData,getRecordId:n.i,execute:Ea}];function Ra({rows:e=[],selectedSource:t=``}={}){return La.filter(n=>Da(t)===n.source||e.some(e=>Ia(e,n.source,n.isRecordFromSource)))}function za(e,t,n=``){return Da(n)===e.source||Ia(t,e.source,e.isRecordFromSource)}function Ba(e,t){let n=e?.getRecordId?.(t);return n?`${e.source}:${e.field}:${n}`:``}async function Va(e,t){let n=e?.getRecordId?.(t);if(!n)throw Error(`${e?.buttonLabel??`Action`} ID is required`);return e.execute(n,t)}var Ha=e.Nn({default:()=>Ho}),{Text:Ua}=i.Typography,{TextArea:Wa}=i.Input,Ga=[],Ka=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],qa={email:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`}),contactNumber:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),phone:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),currentLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),preferredLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),skills:(0,o.jsx)(a.TagsOutlined,{className:`v1-input-icon`}),firstName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),lastName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`})},Ja=e=>e===!0||e===1||e===`1`,Ya=(t,n)=>(t?.edit===void 0||Ja(t.edit))&&(!t?.editablePermission||e.d(t.editablePermission,n));function Xa(e=[]){return e.map(e=>typeof e==`string`?{label:e,value:e}:{label:e.label??e.name??e.value,value:e.value??e.id??e.name??e.label})}function Za(e){return String(e??``).split(`.`).map(e=>e.trim()).filter(Boolean)}function Qa(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function $a({form:t,field:n,absoluteName:a}){let[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(null),d=(0,r.useRef)(null),f=i.Form.useWatch(n.verifyResultField?Qa(a,n.verifyResultField):[`__noop_verify__`],{form:t,preserve:!0}),p=i.Form.useWatch(a,t);return(0,r.useEffect)(()=>{let e=String(p??``).trim();if(f===!0&&d.current===null&&e){d.current=e;return}f===!0&&d.current!==null&&e!==d.current&&(n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),void 0),d.current=null)},[a,p,n.verifyResultField,n.verifyTimestampField,t,f]),n.verifyAction===`email`?f===!0?l&&!l.mailboxConfirmed&&(l.catchAll||l.result===`risky`)?(0,o.jsx)(i.Tooltip,{title:l.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,o.jsx)(Ua,{type:`warning`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifyUnconfirmedLabel||`Accepted`})}):(0,o.jsx)(Ua,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifySuccessLabel||`Valid`}):(0,o.jsx)(i.Button,{size:`small`,loading:s,onClick:async()=>{let r=String(p??``).trim();if(!r){i.message.warning(`Enter an email first`);return}c(!0);try{let o=await e.bn(r);d.current=o.valid?r:null,u(o.valid?o:null),n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),o.valid),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),o.valid?new Date().toISOString():void 0),o.valid?o.mailboxConfirmed?i.message.success(`Email verified — the mail server confirmed this mailbox`):i.message.warning(o.reason||`The domain can receive mail, but this exact mailbox could not be confirmed`):i.message.error(o.reason?`Invalid email: ${o.reason}`:`Email could not be verified`)}catch(e){d.current=null,u(null),n.verifyResultField&&t.setFieldValue(Qa(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(Qa(a,n.verifyTimestampField),void 0),i.message.error(e?.message||`Could not verify email`)}finally{c(!1)}},className:`v1-verify-field-wrap`,children:f===!1?n.verifyRetryLabel||`Re Verify`:n.verifyIdleLabel||`Verify Email`}):null}function eo({form:t,field:n,siblingPrefix:r,locked:a,combined:s=!1}){let c=e.i(n,i.Form.useWatch(e.n(n?.labelWhen,r),t),s);return s?c:(0,o.jsx)(zo,{field:n,label:c,locked:a})}function to({form:e,groups:t,action:n,disabled:r,loading:a,onFire:s}){let c=i.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}),l=i.Form.useWatch(n?.enabledWhen?.field,e),u=!n?.enabledWhen?.field||io(n.enabledWhen,l);return(0,o.jsx)(i.Button,{type:n?.tone===`primary`?`primary`:`default`,onClick:s,disabled:r||c||!u,loading:a,children:n?.label||`Submit`})}function no({form:e,groups:t,disabled:n,loading:r,onClick:a,children:s}){let c=i.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});return(0,o.jsx)(i.Button,{type:`primary`,onClick:a,disabled:n||c,loading:r,children:s})}function ro({form:e,rules:t,watchPath:n,targetPath:a,resetOnNoMatch:o=!0}){let s=i.Form.useWatch(n,e),c=(0,r.useRef)(void 0);return(0,r.useEffect)(()=>{let n=t.find(e=>String(s??``)===String(e.value??``));if(n){e.setFieldValue(a,n.setValue),c.current=n.setValue;return}if(o&&c.current!==void 0){let t=e.getFieldValue(a);String(t??``)===String(c.current??``)&&e.setFieldValue(a,void 0),c.current=void 0}},[s]),null}function io(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 Ja(t);case`falsy`:return!Ja(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}}function ao({form:e,showIf:t,render:n}){return io(t,i.Form.useWatch(t.field,e))?n():null}function oo(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function so(e){return e==null||e===``?!1:Array.isArray(e)?e.length>0&&e.some(so):typeof e==`object`?Object.values(e).some(so):!0}function co(e){return Array.isArray(e)?e:Array.isArray(e?.groups)?e.groups:Array.isArray(e?.data)?e.data:Array.isArray(e?.data?.groups)?e.data.groups:Ga}function lo(t=[],n,r,i){let a=i??new Set;return[...co(t)].filter(t=>!Ja(t.hideGroup)&&e.Y(r,t.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(t=>({...t,fields:[...t.fields??[]].map(e=>a.has(e.field)?{...e,show:1,req:1}:e).filter(i=>String(i.field??``).trim()!==``&&i.showOnAdd!==!1&&!Ja(i.clientScope)&&(!i.visiblePermission||e.d(i.visiblePermission,n))&&e.q(r,t.name,i.field)).map(n=>e.J(r,t.name,n.field)?n:{...n,disabled:!0}).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function uo(e){if(!Array.isArray(e))return null;let t={};return e.forEach(e=>{e.addRow||(e.fields??[]).forEach(e=>{!e.field||e.value===void 0||e.value===null||(t[e.field]=e.value,e.payloadKey&&e.payloadKey!==e.field&&(t[e.payloadKey]=e.value))})}),Object.keys(t).length>0?t:null}function fo(t,n){if(!(!t||!n))for(let r of[n.prefillFrom,n.field,n.payloadKey]){if(!r)continue;let n=t[r];if(n??=e.H(t,r),n!=null)return n}}function po(e){if(Array.isArray(e))return e;if(!e||typeof e!=`object`)return[];let t=e.uploadedFileName??e.name??Object.entries(e).find(([e])=>e.endsWith(`UploadName`))?.[1]??``,n=e.location??e.url??Object.entries(e).find(([e])=>e.endsWith(`CopyLocation`))?.[1]??``;return!t&&!n?[]:[{uid:n||t||`-1`,name:t||`file`,status:`done`,url:n,existing:!0}]}var mo=e=>e==null||e===``,ho=e=>String(e).replace(/<[^>]*>/g,``).replace(/&nbsp;/g,` `).replace(/&amp;/g,`&`).replace(/&lt;/g,`<`).replace(/&gt;/g,`>`).trim(),go=({label:e,message:t,value:n,compare:r,text:i})=>({validator:(a,o)=>mo(o)||r(Number(o),Number(n))?Promise.resolve():Promise.reject(Error(t??`${e} ${i} ${n}`))});function _o(e){if(!e)return null;if(typeof e.valueOf==`function`){let t=e.valueOf();return Number.isNaN(t)?null:t}let t=new Date(e).getTime();return Number.isNaN(t)?null:t}function vo(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.startOf(`day`).valueOf():null}function yo(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.hour()*60+t.minute():null}function bo(e,t){let n=String(t).split(`.`).filter(Boolean);if(!Array.isArray(e))return n.length>1?n:t;if(n.length>1){if(e.length>=3&&typeof e[1]==`number`){let t=e.slice(0,2),r=n[0]===String(e[0])?n.slice(1):n;return[...t,...r]}return n}let r=[...e];return r[r.length-1]=n[0],r}var xo=({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||mo(l))return Promise.resolve();let d=i.getFieldValue(bo(a,u));if(mo(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}`))}}),So={noPastDate:({label:e,message:t})=>({validator:(n,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=new Date;return a.setHours(0,0,0,0),i<a.getTime()?Promise.reject(Error(t??`${e} cannot be a past date`)):Promise.resolve()}}),noFutureDate:({label:e,message:t})=>({validator:(n,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=new Date;return a.setHours(23,59,59,999),i>a.getTime()?Promise.reject(Error(t??`${e} cannot be a future date`)):Promise.resolve()}}),minAge:({label:e,message:t,value:n})=>({validator:(e,r)=>{if(mo(r))return Promise.resolve();let i=_o(r);if(i===null)return Promise.resolve();let a=Number(n??18),o=new Date;return o.setFullYear(o.getFullYear()-a),o.setHours(23,59,59,999),i>o.getTime()?Promise.reject(Error(t??`Must be at least ${a} years old`)):Promise.resolve()}}),dateAfterField:({field:e,label:t,message:n,value:r,rule:i,form:a,name:o})=>({validator:async(e,s)=>{let c=r??i.compareField??i.field;if(!c)return Promise.resolve();let l=bo(o,c),u=a.getFieldValue(l);if(mo(u)||mo(s))return Promise.resolve();let d=vo(u),f=vo(s);return d===null||f===null?Promise.resolve():f<d?Promise.reject(Error(n??`${t} should not be before Start Date`)):Promise.resolve()}}),dateBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=vo(s),d=vo(l);return u===null||d===null||u<=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or before ${c}`))}}),timeAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=yo(s),d=yo(l);return u===null||d===null||u>d?Promise.resolve():Promise.reject(Error(t??`${e} must be after ${c}`))}}),timeBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||mo(s))return Promise.resolve();let l=i.getFieldValue(bo(a,c));if(mo(l))return Promise.resolve();let u=yo(s),d=yo(l);return u===null||d===null||u<d?Promise.resolve():Promise.reject(Error(t??`${e} must be before ${c}`))}}),greaterThanField:e=>xo({...e,compare:(e,t)=>e>=t,text:`must be greater than or equal to`}),strictGreaterThanField:e=>xo({...e,compare:(e,t)=>e>t,text:`must be greater than`}),strictLessThanField:e=>xo({...e,compare:(e,t)=>e<t,text:`must be less than`}),lessThanOrEqualField:e=>xo({...e,compare:(e,t)=>e<=t,text:`must be less than or equal to`}),maxFieldWithFallback:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{if(mo(s))return Promise.resolve();let c=String(n??r.compareFields??``).split(`,`).map(e=>e.trim()).filter(Boolean).find(e=>!mo(i.getFieldValue(bo(a,e))));if(!c)return Promise.resolve();let l=Number(i.getFieldValue(bo(a,c))),u=Number(s);return Number.isNaN(l)||Number.isNaN(u)||u<=l?Promise.resolve():Promise.reject(Error(t??`${e} must not exceed ${c}`))}}),required:({field:e,message:t})=>({validator:(n,r)=>{let i=r==null||r===``||Array.isArray(r)&&r.length===0;return!i&&e?.type===`text-editor`&&(i=ho(r)===``),i?Promise.reject(Error(t??`Mandatory Field`)):Promise.resolve()}}),email:({label:t,message:n})=>e.v(t,n),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})=>({pattern:/^[0-9]{10}$/,message:e??`Phone number must contain exactly 10 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`?go({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`?ho(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`?go({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`?ho(a):String(a);return o===``||o.length<=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must not exceed ${r} characters`))}}};function Co(e,t,n,r){let i=typeof e==`string`?{type:e}:e,a=i.type??i.rule??i.name,o=i.value??i.length??i.min??i.max,s=t.label??t.field??`Field`,c=So[a];return c?c({field:t,label:s,message:i.message,rule:i,value:o,form:n,name:r}):i}function wo(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function To(e){return Ja(e?.req)?!0:(e?.validations??e?.validation??e?.rules??[]).some(e=>(typeof e==`string`?e:e?.type)===`required`)}function Eo(t,n,r,i=!1){let a=t.label??t.field??`Field`,o=t.validations??t.validation??t.rules??[],s=o.some(e=>(typeof e==`string`?e:e?.type)===`required`),c=o.some(e=>(typeof e==`string`?e:e?.type)===`email`),l=[];return!i&&Ja(t.req)&&!s&&(t.disabledByField?l.push({validator:(e,i)=>Ja(n.getFieldValue(wo(r,t.disabledByField)))?Promise.resolve():i==null||i===``?Promise.reject(Error(`Mandatory Field`)):Promise.resolve()}):l.push({required:!0,message:`Mandatory Field`})),(t.type===`email`||t.formatter===`email`)&&!c&&l.push(e.v(a)),t.type===`number`&&l.push(Ja(t.decimal)?{pattern:/^\d+(\.\d+)?$/,message:`${a} must be a number`}:{pattern:/^[0-9]+$/,message:`${a} must be a number`}),[...l,...o.map(e=>Co(e,t,n,r)),e.K(t)]}function Do(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]}function Oo(e){let t=e.len??Do(e,`len`),n=e.min??Do(e,`min`),r=e.max??Do(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 ko(e,t,n){let r=e.validations??e.validation??e.rules??[],i=[];for(let e of r){let r=typeof e==`string`?e:e?.type;if(r===`noPastDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(0,0,0,0),_o(e)<t.getTime()}),r===`noFutureDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(23,59,59,999),_o(e)>t.getTime()}),r===`minAge`){let t=Number(e?.value??18);i.push(e=>{if(!e)return!1;let n=new Date;return n.setFullYear(n.getFullYear()-t),n.setHours(23,59,59,999),_o(e)>n.getTime()})}if(r===`dateAfterField`||r===`dateBeforeField`){let a=e?.value??e?.compareField??e?.field;if(!a)continue;i.push(e=>{if(!e)return!1;let i=t.getFieldValue(bo(n,a));if(mo(i))return!1;let o=vo(e),s=vo(i);return o===null||s===null?!1:r===`dateAfterField`?o<s:o>s})}}return i.length?e=>i.some(t=>t(e)):void 0}function Ao(e){let t=e.validations??e.validation??e.rules??[];for(let e of t){let t=typeof e==`string`?e:e?.type;if(t===`minAge`){let t=Number(e?.value??18);return(0,c.default)().subtract(t,`year`)}if(t===`noFutureDate`||t===`noPastDate`)return(0,c.default)()}}function jo(e,t){return t?t===`phone`||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 Mo(e=``){let t=String(e).toLowerCase();return t===`job`?`jobs`:t===`candidate`?`candidates`:t===`submissions`?`submission`:t}var No=new Set([`selectedSource`,`source`,`sourceType`,`scope`]);function Po(e){return e==null?!1:typeof e==`string`?e.trim().length>0:typeof e==`number`?Number.isFinite(e):typeof e==`boolean`?e:c.default.isDayjs(e)?e.isValid():Array.isArray(e)?e.some(Po):typeof e==`object`?`value`in e||`label`in e||`name`in e?Po(e.value??e.label??e.name):Object.entries(e).some(([e,t])=>!No.has(e)&&Po(t)):!1}function Fo(e={}){return Object.entries(e??{}).some(([e,t])=>!No.has(e)&&Po(t))}function Io(t,n,r={},i=``){let a=new FormData;e.B(t,n,{scope:`flat`,module:i}).forEach(({formKey:e,file:t})=>{a.append(e,t)});let o={...r,...e.R(t,n,{module:i})};return o.schemaVersion=1,a.append(`json`,JSON.stringify(o)),a}function Lo({field:n,form:s,name:c,moduleName:l,value:u,checked:d,onChange:f,scopeValues:p={},onAiUpload:m,formDisabled:h}){let g=n.type??`text`,_=!Ya(n,l),[v,y]=(0,r.useState)(null),[b,x]=(0,r.useState)(!1),[S,C]=(0,r.useState)(``),[w,T]=(0,r.useState)(``),[E,D]=(0,r.useState)(``),[O,k]=(0,r.useState)(0),[A,j]=(0,r.useState)({open:!1,docs:[],index:0}),[M,N]=(0,r.useState)(null),P=(0,r.useRef)([]),F=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`,I=n.lookupFilterValueFrom?Za(n.lookupFilterValueFrom):[`__lookup_filter_${n.field}`],L=n.lookupFilterValueFrom&&F?[...c.slice(0,2),...Za(n.lookupFilterValueFrom)]:[`__noop_row_filter__`],R=i.Form.useWatch(I,s),z=i.Form.useWatch(L,s),B=mo(z)?R:z,V=n.disabledByField?Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.disabledByField]:[n.disabledByField]:[`__noop_disabled_watch__`],H=i.Form.useWatch(V,s),U=n.disabledIf?.field?Za(n.disabledIf.field):[`__noop_disabled_if__`],W=n.disabledIf?.field&&F?[...c.slice(0,2),...Za(n.disabledIf.field)]:[`__noop_disabled_if_row__`],G=i.Form.useWatch(U,s),ee=i.Form.useWatch(W,s),te=n.disabledIf?.field?e.r(n.disabledIf,mo(ee)?G:ee):!1,K=_||!!n.disabled||te||(n.disabledByField?Ja(H):!1)||!!h,ne=n.lookupFilterValueFrom?p[n.lookupFilterValueFrom]:void 0,re=mo(ne)?B:ne;(0,r.useEffect)(()=>{if(g===`location`){let e=!1;x(!0);async function r(){try{let r=await t.i(t.v,`/admin/location-dropdown-values?${new URLSearchParams({search:S,limit:String(n.limit??50),offset:`0`})}`),i=r?.data??r??[];e||y(Xa(Array.isArray(i)?i:[]))}catch(t){console.error(`[AddFormV1] Failed to fetch locations for "${n.field}":`,t),e||y([])}finally{e||x(!1)}}return r(),()=>{e=!0}}let r=n.dataSource;if(![`select`,`radio`,`checkbox`].includes(g)||!r||r===`static`)return;if(r===`lookup`&&n.lookupFilterField&&mo(re)){y([]),x(!1);return}let i=!1;x(!0);async function a(){try{let a=[];if(r===`master`||r===`module`)a=await e.Cn(l,n.field,r===`master`?E:``,n.limit??50,0,{dataSource:r,masterName:n.masterName,groupName:n.groupName});else if(r===`lookup`){let e=new URLSearchParams({collection:n.lookupCollection??``,displayField:n.displayField??``,valueField:n.valueField??`_id`});n.displayField2&&e.set(`displayField2`,n.displayField2),w&&e.set(`search`,w),n.lookupFilterField&&!mo(re)&&(e.set(`filterField`,n.lookupFilterField),e.set(`filterValue`,String(re))),n.extraFields?.length&&e.set(`extraFields`,n.extraFields.join(`,`));let r=await t.i(t.v,`/admin/lookup-dropdown-values?${e}`);a=r?.data??r??[],n.optionsRequireExtraField&&(a=a.filter(e=>e?.extraData?.[n.optionsRequireExtraField]===!0))}else if(r===`group`){let e=(n.groupName??``).toLowerCase().trim();if(e===`users`||e===`user`){let e=await t.i(t.v,`/get-all-users?limit=500&offset=0`),n=e?.data?.users??e?.users??e?.data??[];a=Array.isArray(n)?n.map(e=>({label:[e.firstName,e.lastName].filter(Boolean).join(` `).trim()||e.userName||e.email||String(e.userId),value:e.userId??e.id})):[]}}i||(P.current=Array.isArray(a)?a:[],y(Xa(P.current)))}catch(e){console.error(`[AddFormV1] Failed to fetch options for "${n.field}":`,e),i||y([])}finally{i||x(!1)}}return a(),()=>{i=!0}},[g,n.dataSource,n.field,n.limit,n.lookupCollection,n.displayField,n.displayField2,n.valueField,n.lookupFilterField,re,n.groupName,n.masterName,S,w,E,l,n.extraFields,n.optionsRequireExtraField,O]);let q=Xa(n.options??n.values??[]),J=v??q,ie=(n.multiSelect?`multiple`:n.mode??(Ja(n.multiple)?`multiple`:void 0))??(e.V(n)===`array`?`multiple`:void 0),ae=[`select`,`location`].includes(g),oe=n.hidePlaceholder?void 0:n.placeholder??`${ae?`Select`:`Enter`} ${String(n.label??``).toLowerCase()}`,Y=Oo(n),se=e=>{f?.(e),setTimeout(()=>{s.validateFields([c]).catch(()=>{})},0)},ce=e.f({field:n,form:s,name:c,moduleName:l,scopeValues:p,ownValue:u,onDone:(t,r)=>{k(e=>e+1);let i=e.V(n)!==`array`&&!n.multiSelect&&!n.multiple;t===`create`&&r!=null&&i&&se(e.G(n)?{value:r}:r)}}),le=n.validator?.type?{...n.validator,title:n.validator.title||n.label||`Field`}:null,ue={...Y,disabled:K,placeholder:oe,prefix:n.icon?null:qa[n.field],value:u??``,onChange:t=>{let r=n.formatter?jo(t.target.value,n.formatter):t.target.value;if(le){let{cleaned:t,error:n}=e.g(r,le,`change`);N(n),r=t}se(r)},...le&&{onBlur:t=>{let{cleaned:n,error:r}=e.g(t.target.value,le,`blur`);N(r),n!==t.target.value&&se(n)},onKeyPress:t=>{let n=e._(le.type);if(!n||t.which===0||t.keyCode===8||t.keyCode===13)return;let r=String.fromCharCode(t.which??t.keyCode);if(!n.test(r)){t.preventDefault();let e=`${le.title} — invalid character.`;N(e),setTimeout(()=>N(t=>t===e?null:t),1800)}},maxLength:le.maxLength??Y.maxLength}};if(g===`tagify`)return(0,o.jsx)(i.Select,{value:u,allowClear:!0,disabled:K,mode:`tags`,placeholder:oe,onChange:se});if(g===`location`)return(0,o.jsx)(i.Select,{value:u,allowClear:!0,showSearch:!0,filterOption:!1,disabled:K,loading:b,options:J,placeholder:oe,notFoundContent:b?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:C,onFocus:()=>C(e=>e),onChange:se});if(g===`select`){let t=n.dataSource===`lookup`,r=n.dataSource===`master`,a=t||r,l=n.dataSource===`group`,d=e.G(n),f=e.W(n,u,J);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Select,{value:f,labelInValue:d||void 0,allowClear:!0,showSearch:a||l||void 0,optionFilterProp:`label`,filterOption:a?!1:void 0,disabled:K,loading:b,mode:ie,options:J,placeholder:oe,notFoundContent:b?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:t?T:r?D:void 0,onChange:e=>{if(se(e),n.autofillFrom?.length){let t=e&&!Array.isArray(e)&&typeof e==`object`?e.value:e,r=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`;if(e==null)n.autofillFrom.forEach(({targetField:e})=>{let t=r?[...c.slice(0,2),...Za(e)]:Za(e);s.setFieldValue(t,null)});else if(P.current.length>0){let e=n.valueField??`_id`,i=P.current.find(n=>oo(n,e)===t||n._id===t||n.id===t||n.value===t);i&&n.autofillFrom.forEach(({optionKey:e,targetField:t})=>{let n=oo(i,e)??i.extraData?.[e]??null,a=r?[...c.slice(0,2),...Za(t)]:Za(t);s.setFieldValue(a,n)})}}},dropdownRender:ce.footer?e=>(0,o.jsxs)(o.Fragment,{children:[e,ce.footer]}):void 0}),ce.modal]})}if(g===`radio`)return(0,o.jsx)(i.Radio.Group,{value:u,disabled:K,options:J,onChange:e=>se(e.target.value)});if(g===`checkbox`)return J.length>0?(0,o.jsx)(i.Checkbox.Group,{value:u,disabled:K,options:J,onChange:se}):(0,o.jsx)(i.Checkbox,{checked:!!(d??u),disabled:K,onChange:e=>{let t=e.target.checked;if(se(t),n.linkedClearField&&t){let e=Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.linkedClearField]:[n.linkedClearField];s.setFieldValue(e,null)}},children:n.checkboxLabel??n.label});if(g===`text-editor`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.kn,{value:u??s.getFieldValue(c)??``,disabled:K,placeholder:oe,onChange:t=>{if(le){let{error:n}=e.g(t,le,`change`);N(n)}se(t)}}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]});if(g===`textarea`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(Wa,{...ue,rows:n.rows??3,className:`v1-scroll-textarea`}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]});if(g===`date`)return(0,o.jsx)(i.DatePicker,{disabled:K,placeholder:oe,style:{width:`100%`},suffixIcon:(0,o.jsx)(a.CalendarOutlined,{}),value:u??null,disabledDate:ko(n,s,c),defaultPickerValue:Ao(n),onChange:e=>se(e)});if(g===`time`)return(0,o.jsx)(i.TimePicker,{disabled:K,placeholder:oe,style:{width:`100%`},value:u??null,onChange:e=>se(e)});if(g===`file`){let t=n.validations??n.validation??n.rules??[],r=t.find(e=>(typeof e==`string`?e:e?.type)===`fileType`),s=t.find(e=>(typeof e==`string`?e:e?.type)===`fileSize`),c=t.find(e=>(typeof e==`string`?e:e?.type)===`maxFiles`),l=e.m(n),d=l?l.exts.map(e=>`.${e}`).join(`,`):r?.value?r.value.split(`,`).map(e=>`.${e.trim().replace(/^\./,``)}`).join(`,`):void 0,f=s?Number(s?.value??5):void 0,p=c?Number(c?.value??1):Ja(n.multiple)?n.maxCount??5:1,h=Array.isArray(u)?u:[],g=h.length<p,_=e=>e?e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`:``,v=e=>{let t=(e??``).split(`.`).pop()?.toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-type-icon v1-file-icon-pdf`}):[`doc`,`docx`].includes(t)?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-type-icon v1-file-icon-word`}):[`xls`,`xlsx`,`csv`].includes(t)?(0,o.jsx)(a.FileExcelOutlined,{className:`v1-file-type-icon v1-file-icon-excel`}):[`jpg`,`jpeg`,`png`,`gif`,`svg`,`webp`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-type-icon v1-file-icon-image`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-type-icon v1-file-icon-default`})},y=e=>{se(h.filter((t,n)=>n!==e))},b=(e,t)=>{j({open:!0,docs:h.map(e=>{let t=e.url??e.thumbUrl??``;return!t&&e.originFileObj instanceof File&&(t=URL.createObjectURL(e.originFileObj)),{url:t,name:e.name??`file`}}).filter(e=>e.url),index:t??0})},x=p>1,S=p-h.length,C=[l?l.hint:d?d.split(`,`).map(e=>e.replace(`.`,``).toUpperCase()).join(`, `):null,f?`up to ${f} MB`:null].filter(Boolean).join(` `),w=x&&h.length>0?[C,`${S} of ${p} remaining`].filter(Boolean).join(` • `):C,T=h.length>0?`Add ${x?`more files`:`file`}`:n.buttonLabel??`Upload ${n.label??`File`}`,E=e=>{if(h.length>=p)return i.Upload.LIST_IGNORE;if(d){let t=(e.name.split(`.`).pop()??``).toLowerCase();if(!d.split(`,`).map(e=>e.replace(/^\./,``).toLowerCase()).includes(t))return i.message.error(l?l.error:r?.message??`Only ${r.value} files are allowed`),i.Upload.LIST_IGNORE}return f!==void 0&&e.size/1024/1024>f?(i.message.error(s?.message??`File must be smaller than ${f} MB`),i.Upload.LIST_IGNORE):!1},D=({fileList:e})=>{let t=e.slice(0,p);if(se(t),m&&t.length>h.length){let e=t[t.length-1];e?.originFileObj&&m(e.originFileObj)}},O={accept:d,fileList:h,showUploadList:!1,multiple:!0,maxCount:p,beforeUpload:E,onChange:D,disabled:K},k=h.map((e,t)=>(0,o.jsxs)(`div`,{className:`v1-file-item`,children:[(0,o.jsx)(`div`,{className:`v1-file-item-icon`,children:v(e.name)}),(0,o.jsxs)(`div`,{className:`v1-file-item-info`,children:[(0,o.jsx)(`span`,{className:`v1-file-item-name`,children:e.name}),(0,o.jsx)(`span`,{className:`v1-file-item-meta`,children:e.existing?`Previously uploaded`:`${_(e.size)}${e.size?` • `:``}Uploaded just now`})]}),(0,o.jsxs)(i.Space,{size:6,className:`v1-file-item-actions`,children:[(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),onClick:()=>b(e,t),className:`v1-file-view-btn`,children:`View`}),(0,o.jsx)(i.Button,{size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>y(t),className:`v1-file-delete-btn`})]})]},e.uid??t)),M=(0,o.jsx)(e.On,{documents:A.docs,open:A.open,onClose:()=>j(e=>({...e,open:!1})),initialIndex:A.index});if(x){let e=h.length>0?`Upload more ${n.label??`files`}`:n.buttonLabel??`Upload ${n.label??`File`}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[g&&(0,o.jsx)(i.Upload,{...O,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-center${K?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsxs)(`div`,{className:`v1-upload-dropzone-title-row`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon v1-upload-cloud-icon-sm`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title v1-upload-dropzone-title-blue`,children:e})]}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:`Drag & drop or click to upload`}),C&&(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:C})]})}),h.length>0&&(0,o.jsx)(`div`,{className:`v1-file-grid`,children:k}),g&&h.length>0&&(0,o.jsx)(i.Upload,{...O,style:{display:`inline-block`},children:(0,o.jsx)(i.Button,{type:`link`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),className:`v1-add-more-files-btn`,children:`Add more files`})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[h.length>0&&(0,o.jsx)(`div`,{className:`v1-file-rows-single`,children:k}),g&&(0,o.jsx)(i.Upload,{accept:d,fileList:h,showUploadList:!1,multiple:!1,maxCount:1,beforeUpload:E,onChange:D,disabled:K,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-single${K?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title`,children:T}),w&&(0,o.jsxs)(`span`,{className:`v1-upload-dropzone-sub`,children:[`— `,w]})]})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Input,{...ue,type:g===`number`?`number`:g,...g===`number`&&Ja(n.decimal)?{step:`any`}:{},...n.suffix?{suffix:n.suffix}:{}}),M&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:M})]})}function Ro({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(Ua,{strong:!0,className:`v1-section-label`,children:t})]})}function zo({field:e,label:t,locked:n}){if(!t)return t;let r=Ja(e?.infoEnabled)&&!mo(e?.infoText);return!r&&!n?t:(0,o.jsxs)(`span`,{className:`v1-field-label-with-info`,children:[(0,o.jsx)(`span`,{children:t}),r&&(0,o.jsx)(i.Tooltip,{title:e.infoText,children:(0,o.jsx)(a.InfoCircleOutlined,{className:`v1-field-info-icon`})}),n&&(0,o.jsx)(i.Tooltip,{title:`You don't have permission to edit this field`,children:(0,o.jsx)(a.LockOutlined,{className:`v1-field-info-icon`})})]})}function Bo({group:e}){return!Ja(e?.infoEnabled)||mo(e?.infoText)?null:(0,o.jsx)(Ua,{type:`secondary`,className:`v1-group-info-message`,children:e.infoText})}function Vo({group:e}){return!Ja(e?.toggleEnabled)||mo(e?.toggleField)?null:(0,o.jsxs)(i.Space,{size:6,align:`center`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(Ua,{type:`secondary`,className:`v1-combine-toggle-label`,children:e.toggleLabel||`Toggle`}),(0,o.jsx)(i.Form.Item,{name:e.toggleField,valuePropName:`checked`,initialValue:!!e.toggleValue,noStyle:!0,children:(0,o.jsx)(i.Switch,{size:`small`})})]})}function Ho({moduleName:n,action:c,clientId:l,region:u,formGroups:d,loading:f=!1,error:p=``,breadcrumbItems:m=[],formType:h=`add`,submitText:g,cancelPath:_=`/candidates`,onSubmit:v,initialRecord:y=null,prefillFromUrl:b=!1,extraPayload:x=null,presetClientId:S=null,listViewProps:C={},selectedScope:w=``,searchActionContext:T=null,embedded:E=!1,onSuccess:D=null,onCancel:O=null}){let k=h===`search`,A=g??(k?`Search`:`Create`),j=(0,s.useNavigate)(),M=(0,s.useParams)(),[N]=(0,s.useSearchParams)(),[P]=i.Form.useForm(),F=i.Form.useWatch([],P),[I,L]=(0,r.useState)(!1),[R,z]=(0,r.useState)({}),[B,V]=(0,r.useState)([]),[H,U]=(0,r.useState)(!!n),[W,G]=(0,r.useState)(``),[ee,te]=(0,r.useState)(``),[K,ne]=(0,r.useState)(!1),[re,q]=(0,r.useState)({searched:!1,rows:[],total:0,fields:[],actions:[],actionRules:[],loading:!1}),[J,ie]=(0,r.useState)({current:1,pageSize:10}),[ae,oe]=(0,r.useState)({}),[Y,se]=(0,r.useState)(`internal`),[ce,le]=(0,r.useState)([]),[ue,de]=(0,r.useState)({}),[fe,pe]=(0,r.useState)([]),[me,he]=(0,r.useState)(l??``),[ge,_e]=(0,r.useState)(u??``),[ve,ye]=(0,r.useState)(null),[be,xe]=(0,r.useState)(!1),[X,Se]=(0,r.useState)(null),[Ce,we]=(0,r.useState)(()=>new Set),Te=n?B:d??Ga,Ee=n?H:f,De=n?W:p,Oe=l||S||me,ke=u||ge;(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{if(!t){if(!n){Se(null);return}e.Gt({roleId:localStorage.getItem(`roleId`)},n,{clientId:Oe,region:ke}).then(e=>{t||Se(Array.isArray(e)&&e.length?e:null)}).catch(()=>{t||Se(null)})}}),()=>{t=!0}},[n,Oe,ke]),(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{if(!t){if(!n){we(new Set);return}e.Vt(n).then(e=>{t||we(new Set(Array.isArray(e)?e:[]))}).catch(()=>{t||we(new Set)})}}),()=>{t=!0}},[n]);let Ae=(0,r.useMemo)(()=>lo(Te,n,X,Ce),[Te,n,X,Ce]),je=(0,r.useMemo)(()=>e.P(Ae),[Ae]),Me=(0,r.useRef)({}),Ne=(0,r.useRef)(null),Pe=(0,r.useMemo)(()=>Ae.flatMap(e=>e.formActions??[]),[Ae]),Fe=e.x({form:P,groups:Ae,module:n}),[Ie,Le]=(0,r.useState)(`list`),Re=k&&!Fo(F),{hasClientScope:ze,clientGateMessage:Be,clientGateResetOnChange:Ve}=(0,r.useMemo)(()=>{let e=co(Te).flatMap(e=>e.fields??[]).find(e=>Ja(e.clientScope));return e?{hasClientScope:!0,clientGateMessage:e.clientGateMessage||``,clientGateResetOnChange:Ja(e.clientGateResetOnChange)}:{hasClientScope:!1,clientGateMessage:``,clientGateResetOnChange:!1}},[Te]),He=e=>{if(Ve){P.resetFields();let e=P.getFieldsValue(!0);P.setFieldsValue(Object.fromEntries(Object.keys(e).map(e=>[e,void 0]))),q({searched:!1,rows:[],total:0,fields:[],loading:!1}),ie({current:1,pageSize:10})}he(e??``)},Ue=ze&&!Oe;(0,r.useEffect)(()=>{!ze||S||e.xt({limit:200}).then(pe).catch(()=>pe([]))},[ze,S]),(0,r.useEffect)(()=>{if(!n)return;let t=!1;async function r(){try{U(!0),G(``);let r=k?await e.jt(n,`search`,c):await e.Sn({module:n,action:c,clientId:Oe,region:ke});t||(V(co(k?r?.[0]:r)),k&&te(r?.[0]?.label||``))}catch(e){console.error(`Failed to fetch ${n} form groups:`,e),t||G(e?.message||`Failed to fetch form groups`)}finally{t||U(!1)}}return r(),()=>{t=!0}},[n,c,k,Oe,ke]);let We=(0,r.useMemo)(()=>{if(!b)return null;let e=N.get(`candidateId`)||``,t=N.get(`submissionId`)||``,n=String(N.get(`isFromSubmission`))===`true`,r=M.jobId&&M.jobId!==`_`?M.jobId:N.get(`jobId`)||``,i=n&&t?{module:`submissions`,id:t}:e?{module:`candidates`,id:e}:null,a={};return e&&(a.applicantId=e),r&&(a.jobId=r),{source:i,linkage:Object.keys(a).length?a:null}},[b,N,M]);(0,r.useEffect)(()=>{let t=We?.source;if(!t)return;let n=!1;async function r(){try{xe(!0);let r=await e.Sn({module:t.module,id:t.id});n||ye(co(r))}catch(e){console.error(`Failed to fetch prefill data:`,e),n||ye([])}finally{n||xe(!1)}}return r(),()=>{n=!0}},[We]);let Ge=(0,r.useMemo)(()=>ve?Object.fromEntries(ve.filter(e=>e.addRow&&Array.isArray(e.rows)&&e.rows.length>0).map(e=>[e.payloadKey||e.name,e.rows])):{},[ve]),Ke=(0,r.useMemo)(()=>uo(ve),[ve]),qe=(0,r.useMemo)(()=>{let e=new Set;return Ae.forEach(t=>(t.fields??[]).forEach(t=>{t.prefillFromModule&&e.add(Mo(t.prefillFromModule))})),[...e]},[Ae]),[Je,Ye]=(0,r.useState)({});(0,r.useEffect)(()=>{let t=We?.linkage;if(!t||qe.length===0)return;let n=!1,r=e=>e===`jobs`?t.jobId:e===`candidates`?t.applicantId:void 0;return qe.forEach(async t=>{let i=r(t);if(i)try{let r=uo(co(await e.Sn({module:t,id:i})));!n&&r&&Ye(e=>({...e,[t]:r}))}catch(e){console.error(`Context prefill fetch failed for ${t}:`,e)}}),()=>{n=!0}},[qe,We]),(0,r.useEffect)(()=>{let t=y??Ke;if(!t&&Object.keys(Je).length===0||Ee||Ae.length===0)return;let n={};Ae.forEach(r=>{if(r.toggleEnabled&&r.toggleField&&t){let e=fo(t,{field:r.toggleField});e!=null&&(n[r.toggleField]=!!e)}r.addRow||(r.fields??[]).forEach(r=>{if(!r.field||Ja(r.addRow))return;let i=r.prefillFromModule?Je[Mo(r.prefillFromModule)]:t;if(!i)return;let a=fo(i,r);if(a!=null)if(r.type===`file`){let e=po(a);e.length>0&&(n[r.field]=e)}else n[r.field]=e.L(r,a)})}),Object.keys(n).length>0&&P.setFieldsValue(n)},[y,Ke,Je,Ee,Ae,P]);let Xe={...ze&&Oe?{clientId:Oe}:{},...We?.linkage??x??{}},Ze=!Ue&&!Ee&&(!We?.source||ve!==null&&!be),Qe=t=>{let n=Ge[t.payloadKey||t.name],r=Math.max(0,Number(t.minRows??0)||0);if(!n||n.length===0){let e=t.initialRows===void 0?r:Math.max(r,Math.max(0,Number(t.initialRows)||0));return Array.from({length:e},()=>({}))}let i=n.map(n=>{let r={};return(t.fields??[]).forEach(t=>{if(!t.field||t.type===`file`)return;let i=fo(n,t);i!=null&&(r[t.field]=Ja(t.addRow)?e.z(t,i):e.L(t,i))}),Object.keys(r).length>0?r:{}});for(;i.length<r;)i.push({});return i},$e=(0,r.useMemo)(()=>{let t={};return Ae.forEach(e=>{e.addRow&&(t[e.name]=Qe(e))}),e.I(je,t)},[Ae,Ge,je]),et=e=>z(t=>({...t,[e]:!t[e]})),tt=()=>{P.resetFields(),z({}),se(`internal`),le([])},nt=(0,r.useCallback)(async(t,r,a={})=>{if(!k)return;let o=Number(a.pageSize)>0?Number(a.pageSize):J.pageSize,s=Number(a.current),c=Number.isFinite(s)&&s>0?Math.floor(s):1;try{oe(t),ie({current:c,pageSize:o}),q(e=>({...e,loading:!0,searched:!0}));let i=Oa(t?.selectedSource),a=r?ka(r,Y):i.includes(`internal`)?`internal`:ka(t?.selectedSource,Y),s={...t,selectedSource:a};console.log(`[AddFormV1] Calling searchModuleData with scope:`,a);let l=await e.Tn(n||`candidates`,s,{limit:o,offset:(c-1)*o},{scope:a});se(a),q({searched:!0,rows:l.rows,total:l.total,fields:l.fields,actions:l.actions??[],actionRules:l.actionRules??[],loading:!1}),le(e=>Pa({sources:i,activeSource:a,activeCount:l.total,responseCounts:l.counts,currentTabs:e,backendTabs:l.tabs}))}catch(e){console.error(`Search failed:`,e),i.message.error(e?.message||`Failed to search records`),q({searched:!0,rows:[],total:0,fields:[],actions:[],actionRules:[],loading:!1})}},[k,n,Y,J.pageSize]),rt=(0,r.useCallback)(async(e,t)=>{let n=Ba(e,t);de(e=>({...e,[n]:{...e[n]??{},loading:!0}}));try{let r=await Va(e,t);i.message.success(r?.message??r?.data?.message??e.successMessage??`Action completed successfully.`),de(e=>({...e,[n]:{loading:!1,completed:!0}}))}catch(t){i.message.error(t?.message||e.errorMessage||`Action failed.`),de(e=>({...e,[n]:{...e[n]??{},loading:!1}}))}finally{de(e=>({...e,[n]:{...e[n]??{},loading:!1}}))}},[]),it=(0,r.useCallback)(e=>{let t=ka(e,Y);se(t),ie({current:1,pageSize:J.pageSize}),Object.keys(ae).length>0&&nt(ae,t,{current:1,pageSize:J.pageSize})},[J.pageSize,ae,nt,Y]),at=(0,r.useCallback)((e,t)=>{let n=Number(t)>0?Number(t):J.pageSize,r=Number(e)>0?Number(e):1;if(Object.keys(ae).length===0){ie({current:r,pageSize:n});return}nt(ae,Y,{current:r,pageSize:n})},[nt,ae,J.pageSize,Y]),ot=(0,r.useCallback)(e=>{let t=Number(e)>0?Number(e):J.pageSize;if(Object.keys(ae).length===0){ie({current:1,pageSize:t});return}nt(ae,Y,{current:1,pageSize:t})},[nt,ae,J.pageSize,Y]),st=async t=>{if(k){await nt(t);return}if(v){await v(t);return}if(!n){console.log(`Form values:`,t);return}try{ne(!0);let r=await e.xn(n,Io(t,Ae,Xe??{},n));if(r?.status===!1){i.message.error(e.o(Ae,n,`add`,r?.error||r?.message||r?.data));return}let a=e.B(t,Ae,{scope:`addRow`,indexed:!0,module:n}),o=r?.id??r?.data?.id??r?.data?._id??r?._id;if(a.length>0&&o)try{await e.nt(n,o,{...Xe??{},...e.R(t,Ae,{module:n})},a)}catch(e){console.error(`Document file attach (post-create update) failed:`,e),i.message.warning(`Record created, but attaching document files failed. Edit the record to re-upload.`)}let s=e.B(t,Ae,{module:n});if(s.length>0&&o)try{await vt(n,o,s)}catch(e){console.error(`Document registry upload failed:`,e),i.message.warning(`Record created, but saving its document records failed.`)}let c=e.s(Ae,n,`add`);if(c&&i.message.success(c),P.resetFields(),E&&D){D(o,t);return}let l=Ne.current??e.c(Ae);if(!l){let e=Mo(n);e===`jobs`?j(`/jobs`):e===`candidates`?j(`/candidates`):e===`onboarding`?j(`/onboarding`):e===`submission`&&j(`/submissions`)}else if(l.mode===`back`)j(-1);else if(l.mode===`route`||l.mode===`detail`){let n=e.l(l.target,o,t);n&&j(n)}}catch(t){console.error(`Failed to create ${n}:`,t),i.message.error(e.o(Ae,n,`add`,t?.data?.error||t?.data?.message||t?.message))}finally{ne(!1),Ne.current=null}},ct=(e,t)=>(e.validations??e.validation??e.rules??[]).filter(e=>{let t=typeof e==`string`?e:e?.type;return[`dateAfterField`,`greaterThanField`,`strictGreaterThanField`,`strictLessThanField`,`lessThanOrEqualField`,`maxFieldWithFallback`,`dateBeforeField`,`timeAfterField`,`timeBeforeField`].includes(t)}).map(e=>String(e.value??e.compareField??e.field??``).split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>bo(t,e))).flat().filter(Boolean),lt=(e,t,n)=>{if(!e?.field)return!0;let r=t(n==null?[e.field]:[...Array.isArray(n)?n:[n],e.field]);switch(e.operator){case`eq`:return String(r??``)===String(e.value??``);case`neq`:return String(r??``)!==String(e.value??``);case`truthy`:return r!=null&&r!==``&&r!==!1;case`falsy`:return r==null||r===``||r===!1;case`notEmpty`:return Array.isArray(r)?r.length>0:!!r;case`in`:return String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));case`notIn`:return!String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));default:return!0}},[ut,dt]=(0,r.useState)({}),ft=e=>String(e?.field??``),pt=(0,r.useMemo)(()=>t.a(),[]),mt=(t,a,s,c={})=>{let l=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):null,u=l??t.field,d=a===void 0?u:[a,...l??[t.field]],f=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],...Array.isArray(d)?d:[d]]:d,p=t.type===`checkbox`&&(t.options&&t.options.length>0||t.dataSource&&t.dataSource!==`static`),m=!p&&t.type===`checkbox`?`checked`:`value`,h=!!t.editablePermission&&!e.d(t.editablePermission,n),g=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],a]:null,_=e=>g&&(!c.rowFieldKeys||c.rowFieldKeys.has(e))?g:null,v=c.inline||c.hideLabel||!p&&t.type===`checkbox`?``:(0,o.jsx)(eo,{form:P,field:t,siblingPrefix:t.labelWhen?.field?_(t.labelWhen.field):g,locked:h}),y=ct(t,f),b=c.inline||t.type===`file`&&Ja(t.multiple)||t.type===`text-editor`?24:t.col??12,x=gt(t,pt),S=a===void 0&&t.type!==`file`&&x.matched&&x.value!==void 0&&x.value!==``?x.value:a===void 0&&t.type!==`file`&&t.defaultValue!==void 0&&t.defaultValue!==``?t.defaultValue:void 0,C=(t.aiActions||[]).filter(e=>e.trigger===`click`),w=(t.aiActions||[]).find(e=>e.trigger===`upload`),T=(0,o.jsx)(i.Form.Item,{label:v,name:d,extra:t.helpText?(0,o.jsx)(Ua,{type:`secondary`,className:`v1-field-help-text`,children:t.helpText}):void 0,required:To(t),rules:Eo(t,P,f,k),dependencies:y,valuePropName:m,initialValue:S,getValueFromEvent:t.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,validateTrigger:[`onBlur`,`onChange`],children:(0,o.jsx)(Lo,{field:t,form:P,name:f,moduleName:n,scopeValues:{clientId:Oe},onAiUpload:w?e=>Fe.runAction(c.groupNameForActions,t,w,e):void 0,formDisabled:Fe.busy})}),E=C.length>0?(()=>{let n=e.b(C),r=r=>(0,o.jsx)(e.y,{position:r,actions:n[r],aiActions:Fe,groupName:c.groupNameForActions,field:t},r);return(0,o.jsxs)(`div`,{className:`v1-ai-action-wrap`,children:[r(`top-left`),r(`top-center`),r(`top-right`),T,r(`bottom-left`),r(`bottom-center`),r(`bottom-right`)]})})():T,D=t.verifyAction?(0,o.jsxs)(`div`,{className:`v1-verify-field-row`,children:[E,(0,o.jsx)($a,{form:P,field:t,absoluteName:f})]}):E,O=c.inline?{flex:`${Number(t.combineWidth)>0?Number(t.combineWidth):1} 1 0`,maxWidth:`none`}:void 0,A=t.prefillWhen?.length?(0,o.jsx)(ro,{form:P,rules:t.prefillWhen,watchPath:_(t.prefillWhen[0].field)?[...g,t.prefillWhen[0].field]:Za(t.prefillWhen[0].field),targetPath:f,resetOnNoMatch:t.prefillWhenReset!==!1},`${t.field}-prefillWhen`):null;return t.showIf?.field?(0,o.jsxs)(r.Fragment,{children:[A,(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>lt(t.showIf,e,_(t.showIf.field))?(0,o.jsx)(i.Col,{xs:24,md:b,style:O,className:c.inline?`v1-combine-cell`:void 0,children:D}):null})]},t.field):(0,o.jsxs)(r.Fragment,{children:[A,(0,o.jsx)(i.Col,{xs:24,md:b,style:O,className:c.inline?`v1-combine-cell`:void 0,children:D})]},t.field)},ht=t=>{let r=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],s=!!t.editablePermission&&!e.d(t.editablePermission,n),c=(0,o.jsx)(zo,{field:t,label:t.label,locked:s}),l=e.U(t),u=Array.isArray(t.subFields)&&t.subFields.length>0,d=u?t.subFields.map(e=>({...e,show:1,edit:1})):null,f=Math.max(0,Number(t.minRows??0)||0),p=t.maxRows!==void 0&&t.maxRows!==``&&Number(t.maxRows)>0?Number(t.maxRows):0,m=e.z(t,fo(y??Ke??{},t));return(0,o.jsx)(i.Col,{xs:24,md:24,children:(0,o.jsx)(i.Form.Item,{label:c,required:To(t),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:r,initialValue:m,rules:[{validator:async(e,n=[])=>{if(To(t)&&!(u?n.some(e=>so(e)):n.some(e=>e!=null&&e!==``&&!(Array.isArray(e)&&e.length===0))))throw Error(`Mandatory Field`);if(f>0&&n.length<f)throw Error(`Keep at least ${f} ${u?`row`:`value`}${f>1?`s`:``}.`)}}],children:(e,{add:s,remove:c},{errors:m})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:s,name:p})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>c(p),disabled:e.length<=f,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:u?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(d,p,r[0],!1,t.field)}):(0,o.jsx)(i.Form.Item,{name:[p],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:Eo(l,P,[...r,p],k),children:(0,o.jsx)(Lo,{field:l,form:P,name:[...r,p],moduleName:n,scopeValues:{clientId:Oe},formDisabled:Fe.busy})})})]},s)),(!p||e.length<p)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>s(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:m})]})})})},t.field)},_t=(t,r,s)=>{let c=typeof t.field==`string`&&t.field.includes(`.`)?t.field.split(`.`):[t.field],l=!!t.editablePermission&&!e.d(t.editablePermission,n),u=(0,o.jsx)(zo,{field:t,label:t.label,locked:l}),d=e.U(t),f=Array.isArray(t.subFields)&&t.subFields.length>0,p=f?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=[r,...c],_=[...Array.isArray(s)?s:[s],r,...c],v=e.z(t,void 0);return(0,o.jsx)(i.Col,{xs:24,md:f?24:t.col??24,children:(0,o.jsx)(i.Form.Item,{label:u,required:To(t),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:g,initialValue:v,rules:f?[{validator:async(e,n=[])=>{if(To(t)&&!n.some(e=>so(e)))throw Error(`Mandatory Field`);if(m>0&&n.length<m)throw Error(`Keep at least ${m} row${m>1?`s`:``}.`)}}]:[],children:(e,{add:r,remove:s},{errors:c})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:r,name:c})=>{let l=[..._,c];return(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>s(c),disabled:e.length<=m,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:f?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(p,c,_,!1,t.field)}):(0,o.jsx)(i.Form.Item,{name:[c],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:Eo(d,P,l,k),children:(0,o.jsx)(Lo,{field:d,form:P,name:l,moduleName:n,scopeValues:{clientId:Oe},formDisabled:Fe.busy})})})]},r)}),(!h||e.length<h)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>r(),className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:c})]})})})},`${s}-${r}-${t.field}`)},yt=(e,t,n,r=!1,a)=>{let s=new Set,c=[],l=new Set(e.map(e=>e.field).filter(Boolean)),u=e.filter(e=>e.show===void 0||Ja(e.show));return u.forEach(e=>{if(Ja(e.addRow)&&t===void 0){c.push(ht(e));return}if(Ja(e.addRow)&&t!==void 0){c.push(_t(e,t,n));return}let d=e.combineKey?.trim?.();if(!d){c.push(mt(e,t,n,{hideLabel:r,groupNameForActions:a,rowFieldKeys:l}));return}let f=`${n??`root`}:${t??`root`}:${d}`;if(s.has(f))return;let p=u.filter(e=>e.combineKey===d);p.forEach(e=>s.add(`${n??`root`}:${t??`root`}:${e.combineKey}`));let m=(0,o.jsx)(eo,{form:P,field:p.find(e=>e.combineLabel)??e,siblingPrefix:n!==void 0&&t!==void 0?[...Array.isArray(n)?n:[n],t]:null,combined:!0}),h=p.find(e=>e.combineToggleTarget)?.combineToggleTarget,g=p.find(e=>e.combineToggleLabel)?.combineToggleLabel??`Show range`,_=f,v=p.some(e=>Ja(e.combineWrap)),y=Number(p.find(e=>[12,24].includes(Number(e.combineSpan)))?.combineSpan),b=h?p.find(e=>ft(e)===h):null,x=b?.field?.includes?.(`.`)?b.field.split(`.`):[b?.field].filter(Boolean),S=b?n!==void 0&&t!==void 0?[n,t,...x]:x.length>1?x:b.field:null,C=p.some(e=>To(e)),w=[12,24].includes(y)?y:p.length>=3?24:12;c.push((0,o.jsx)(i.Col,{xs:24,md:w,children:(0,o.jsx)(i.Form.Item,{label:m,required:C,colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let r=S?!mo(e(S)):!1,a=ut[_]??r,s=h&&!a?p.filter(e=>ft(e)!==h):p;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Row,{gutter:[8,0],align:`top`,wrap:v,className:`v1-combine-row${v?` v1-combine-row-wrap`:``}`,children:s.map(e=>mt(e,t,n,{inline:!0}))}),h&&(0,o.jsxs)(`div`,{className:`v1-combine-range`,children:[(0,o.jsx)(i.Switch,{size:`small`,checked:a,onChange:e=>{!e&&S&&(P.setFieldValue(S,void 0),P.validateFields([S]).catch(()=>{})),dt(t=>({...t,[_]:e}))}}),(0,o.jsx)(Ua,{type:`secondary`,className:`v1-combine-toggle-label`,children:g})]})]})}})})},f))}),c},bt=(0,r.useMemo)(()=>{if(re.fields?.length)return re.fields;let e=re.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})):[]},[re.fields,re.rows]),xt=e=>!Array.isArray(e)||e.length===0?`card`:e.some(e=>[e?.sourceType,e?.profileSource,e?.selectedSource,e?.customFields?.sourceType,e?.customFields?.profileSource].some(e=>{if(e==null)return!1;let t=String(e).trim().toLowerCase();return t?![`all`,`internal`].includes(t):!1}))?`list`:`card`;(0,r.useMemo)(()=>xt(re.rows),[re.rows]);let St=(0,r.useMemo)(()=>{let e=Ra({rows:re.rows,selectedSource:Y});if(!e.length)return bt;let t=new Set(e.map(e=>e.field));return[...bt.filter(e=>e.cardRole!==`action`&&!t.has(e.value)),...e.map(e=>({value:e.field,field:e.field,label:e.label??`Action`,cardRole:`action`,isVisible:!0,tableHidden:!0,sorter:!1,render:(t,n)=>{if(!za(e,n,Y))return null;let r=Ba(e,n),a=ue[r]??{},s=!r||a.completed;return(0,o.jsx)(i.Button,{type:`primary`,size:`small`,loading:a.loading,disabled:s,onClick:()=>rt(e,n),children:a.completed?e.completedLabel:e.buttonLabel})}}))]},[rt,bt,re.rows,Y,ue]),Ct=(0,r.useMemo)(()=>{if(!T)return re.actions;let e=t=>({...t,popupState:{...T,...t.popupState},...t.children?{children:t.children.map(e)}:{}});return(re.actions??[]).map(e)},[re.actions,T]),wt=(t,n)=>{let r=t.name??t.id??String(n),s=t.name??r,c=e.F(je,s),l=!!c&&c.leaderName!==s,u=c?Ae.find(e=>e.name===c.leaderName)??t:t,d=Math.max(0,Number(u.minRows??0)||0),f=Math.max(0,Number(u.maxRows??0)||0),p=c?c.memberNames:[s],m=()=>{p.forEach(e=>Me.current[e]?.add())},h=e=>{p.forEach(t=>Me.current[t]?.remove(e))},g=t.addRow?(0,o.jsx)(i.Form.List,{name:s,initialValue:$e[s]??[],rules:l?[]:[{validator:async(e,n=[])=>{if(!(Ja(t.toggleEnabled)&&t.toggleField&&P.getFieldValue(t.toggleField))){if(d>0&&n.length<d)throw Error(`Keep at least ${d} row${d>1?`s`:``}.`);if(Ja(t.requireOne)&&n.some(e=>!so(e)))throw Error(`Fill at least one field in each added row.`)}}}],children:(e,{add:n,remove:r},{errors:c})=>(Me.current[s]={add:n,remove:r},(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[(0,o.jsx)(`div`,{className:`v1-addrow-topbar`,children:l?(0,o.jsxs)(Ua,{type:`secondary`,className:`v1-addrow-linked-hint`,children:[`Rows added via `,u.label??u.name]}):(!f||e.length<f)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:m,className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Row`}`})}),Ja(t.sharedRowLabels)&&e.length>0&&(0,o.jsx)(i.Row,{gutter:[24,0],className:`v1-addrow-header`,children:t.fields.filter(e=>e.show===void 0||Ja(e.show)).map(e=>(0,o.jsx)(i.Col,{md:e.col??12,className:`v1-addrow-header-label`,children:e.label},ft(e)))}),e.map(({key:n,name:r})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>h(r),disabled:e.length<=d,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:yt(t.fields,r,s,Ja(t.sharedRowLabels),s)})})]},n)),(0,o.jsx)(i.Form.ErrorList,{errors:c})]}))}):(0,o.jsx)(i.Row,{gutter:[24,0],children:yt(t.fields,void 0,void 0,!1,s)});return(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card`,title:(0,o.jsx)(Ro,{icon:Ka[n%Ka.length],title:k?ee||t.label:t.label??t.name??`Details`}),extra:(0,o.jsxs)(i.Space,{size:8,align:`center`,className:`v1-group-actions`,children:[(0,o.jsx)(Bo,{group:t}),(0,o.jsx)(Vo,{group:t}),(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:R[r]?(0,o.jsx)(a.DownOutlined,{}):(0,o.jsx)(a.UpOutlined,{}),onClick:e=>{e.stopPropagation(),et(r)}})]}),children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let n=Ja(t.toggleEnabled)&&t.toggleField&&!!e(t.toggleField);return(0,o.jsx)(`div`,{style:{display:R[r]||n?`none`:`block`},children:g})}})},r)};return(0,o.jsxs)(`main`,{children:[m.length>0&&(0,o.jsx)(e.t,{items:m}),(0,o.jsxs)(`div`,{className:`v1-edit-page`,children:[ze&&!S&&(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card v1-client-gate-card`,children:(0,o.jsxs)(i.Space,{direction:`vertical`,size:12,style:{width:`100%`},children:[(0,o.jsx)(Ro,{icon:(0,o.jsx)(a.UserOutlined,{}),title:`Select Client`}),Be&&(0,o.jsx)(Ua,{type:`secondary`,children:Be}),(0,o.jsx)(i.Row,{gutter:[16,0],children:(0,o.jsx)(i.Col,{xs:24,md:14,children:(0,o.jsx)(i.Select,{showSearch:!0,allowClear:!0,placeholder:`Select client`,style:{width:`100%`},value:Oe||void 0,optionFilterProp:`label`,options:fe.map(e=>({value:e._id??e.id,label:e.clientName??e.name??e.clientRefrenceId??e._id})).filter(e=>e.value),onChange:He})})})]})}),(0,o.jsx)(`div`,{className:`v1-page-inner`,children:(0,o.jsx)(i.Spin,{spinning:!Ze&&!Ue||Fe.busy,description:Fe.busy?`Running AI action…`:`Loading form fields...`,children:(0,o.jsxs)(i.Form,{form:P,layout:`vertical`,colon:!1,className:`v1-form`,disabled:Fe.busy,requiredMark:(e,{required:t})=>(0,o.jsxs)(o.Fragment,{children:[e,t&&(0,o.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),onFinish:st,onFinishFailed:t=>{z({}),e.a(t,P)},children:[Ze&&Ae.map((e,t)=>e.showIf?.field?(0,o.jsx)(ao,{form:P,showIf:e.showIf,render:()=>wt(e,t)},e.name??`grp-${t}`):wt(e,t)),Ze&&!De&&Ae.length===0&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:k?`No search configuration found.`:`No form fields are configured.`}),Ze&&k&&(0,o.jsx)(`div`,{className:`v1-search-form-actions`,children:(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:tt,disabled:!Ae.length,children:`Reset`}),(0,o.jsx)(i.Button,{onClick:()=>j(_),children:`Back`}),(0,o.jsx)(i.Button,{type:`primary`,htmlType:`submit`,disabled:K||!Ae.length||Re,loading:K,children:A})]})})]})})}),!k&&(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(Ua,{type:`secondary`,children:`All Unsaved Changes will be lost if you cancel and reload.`}),(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:()=>E&&O?O():j(_),children:`Cancel`}),Pe.map((e,t)=>(0,o.jsx)(to,{form:P,groups:Ae,action:e,disabled:!Ze||K||!Ae.length,loading:K,onFire:()=>{Ne.current=e.afterSubmit??{mode:`stay`},P.submit()}},`${e.label??`action`}-${t}`)),(0,o.jsx)(no,{form:P,groups:Ae,onClick:()=>{Ne.current=null,P.submit()},disabled:!Ze||K||!Ae.length,loading:K,children:A})]})]}),k&&re.searched&&(0,o.jsx)(wa,{moduleName:n,breadcrumbItems:[],dataSource:re.rows,fields:St,total:re.total,loading:re.loading,current:J.current,pageSize:J.pageSize,showViewToggle:!0,activeView:Ie,onViewChange:Le,onPageChange:at,onPageSizeChange:ot,showSearch:!1,tabs:ce,selectedSource:Y,onTabChange:it,actions:Ct,actionRules:re.actionRules})]})]})}function Uo({className:e=``,variant:t=`default`,showIcon:n=!0,...r}){return(0,o.jsx)(i.Alert,{className:`app-alert app-alert--${t} ${e}`.trim(),showIcon:n,...r})}function Wo(e){let t=e=>new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=Math.round((t(new Date)-t(e))/864e5);return n<=0?`Today`:n===1?`1 Day ago`:`${n} Days ago`}function Go(e=[],t){let n=new Map;return e.forEach(e=>{let r=new Date(t(e));if(Number.isNaN(r.getTime()))return;let i=r.toDateString();n.has(i)||n.set(i,{date:r,items:[]}),n.get(i).items.push(e)}),[...n.values()].sort((e,t)=>t.date-e.date)}function Ko(e){return new Date(e).toLocaleDateString(`en-US`,{year:`numeric`,month:`long`,day:`numeric`})}function qo(e){return new Date(e).toLocaleDateString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`})}function Jo(e){return new Date(e).toLocaleTimeString(`en-US`,{hour:`numeric`,minute:`numeric`,hour12:!0})}function Yo({row:e,last:t,getTime:n,getAuthor:r,getMeta:i,renderBody:a}){let s=n(e),c=r?.(e),l=i?.(e);return(0,o.jsxs)(`div`,{className:`znx-an-item`,children:[(0,o.jsxs)(`div`,{className:`znx-an-rail`,children:[l?(0,o.jsx)(`span`,{className:`znx-an-icon-dot znx-an-icon-dot--${l.tone}`,title:l.label,children:l.icon}):(0,o.jsx)(`span`,{className:`znx-an-dot`}),!t&&(0,o.jsx)(`span`,{className:`znx-an-line`})]}),(0,o.jsxs)(`div`,{className:`znx-an-content`,children:[a(e),(0,o.jsxs)(`div`,{className:`znx-an-meta`,title:`${Ko(s)} at ${Jo(s)}`,children:[c&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`span`,{className:`znx-an-author`,children:c}),(0,o.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`})]}),(0,o.jsx)(`span`,{className:`znx-an-time`,children:Jo(s)}),(0,o.jsx)(`span`,{className:`znx-an-sep`,"aria-hidden":`true`}),(0,o.jsx)(`span`,{className:`znx-an-date`,children:qo(s)})]})]})]})}function Xo({rows:e=[],getTime:t,getKey:n,getAuthor:r,getMeta:a,renderBody:s,emptyText:c=`Nothing here yet.`,grouped:l=!0}){if(!l)return e.length?(0,o.jsx)(`div`,{className:`znx-an-flat`,children:e.map((i,c)=>(0,o.jsx)(Yo,{row:i,last:c===e.length-1,getTime:t,getAuthor:r,getMeta:a,renderBody:s},n(i,c)))}):(0,o.jsx)(`div`,{className:`znx-an-empty`,children:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:c})});let u=Go(e,t);return u.length?(0,o.jsx)(i.Collapse,{className:`znx-an-collapse`,defaultActiveKey:[`0`],ghost:!0,items:u.map((e,i)=>({key:String(i),label:(0,o.jsxs)(`span`,{className:`znx-an-group`,children:[(0,o.jsx)(`span`,{className:`znx-an-group-day`,children:Wo(e.date)}),(0,o.jsx)(`span`,{className:`znx-an-group-date`,children:qo(e.date)}),(0,o.jsx)(`span`,{className:`znx-an-group-count`,children:e.items.length})]}),children:e.items.map((i,c)=>(0,o.jsx)(Yo,{row:i,last:c===e.items.length-1,getTime:t,getAuthor:r,getMeta:a,renderBody:s},n(i,c)))}))}):(0,o.jsx)(`div`,{className:`znx-an-empty`,children:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:c})})}var Zo={add:`created`,create:`created`,created:`created`,update:`updated`,updated:`updated`,edit:`updated`,edited:`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`,resubmit:`resubmitted`,resubmitted:`resubmitted`,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`},Qo={created:{tone:`success`,icon:(0,o.jsx)(a.PlusOutlined,{}),label:`Created`},updated:{tone:`info`,icon:(0,o.jsx)(a.EditOutlined,{}),label:`Updated`},note:{tone:`neutral`,icon:(0,o.jsx)(a.MessageOutlined,{}),label:`Note`},assigned:{tone:`purple`,icon:(0,o.jsx)(a.UserSwitchOutlined,{}),label:`Assigned`},submitted:{tone:`info`,icon:(0,o.jsx)(a.SendOutlined,{}),label:`Submitted`},resubmitted:{tone:`purple`,icon:(0,o.jsx)(a.RedoOutlined,{}),label:`Re-submitted`},approved:{tone:`success`,icon:(0,o.jsx)(a.CheckOutlined,{}),label:`Approved`},rejected:{tone:`danger`,icon:(0,o.jsx)(a.CloseOutlined,{}),label:`Rejected`},reopened:{tone:`neutral`,icon:(0,o.jsx)(a.UndoOutlined,{}),label:`Reopened`},deleted:{tone:`danger`,icon:(0,o.jsx)(a.DeleteOutlined,{}),label:`Deleted`},status:{tone:`warning`,icon:(0,o.jsx)(a.SwapOutlined,{}),label:`Status changed`},document:{tone:`info`,icon:(0,o.jsx)(a.PaperClipOutlined,{}),label:`Document`},scheduled:{tone:`warning`,icon:(0,o.jsx)(a.ClockCircleOutlined,{}),label:`Scheduled`},default:{tone:`neutral`,icon:(0,o.jsx)(a.HistoryOutlined,{}),label:`Activity`}},$o=[[/\breject/i,`rejected`],[/\bapprov/i,`approved`],[/\bresubmit/i,`resubmitted`],[/\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 es(e,t){let n=String(e||``).trim().toLowerCase();if(n&&Zo[n])return Zo[n];let r=String(t||``);for(let[e,t]of $o)if(e.test(r))return t;return`default`}function ts(e={},t=``){return Qo[es(e.activityType??e.action,t||e.activityComments)]??Qo.default}function ns(e=``){if(typeof document>`u`)return String(e);let t=document.createElement(`div`);return t.innerHTML=e,t.textContent||t.innerText||``}var rs=[{id:`a1`,activityTime:new Date().toISOString(),activityComments:`Job <b>created</b> and assigned to the recruitment team.`},{id:`a2`,activityTime:new Date(Date.now()-2*864e5).toISOString(),activityComments:`Status changed to <b>Active</b>.`}];function is({activity:e,grouped:t=!0}){return(0,o.jsx)(`div`,{className:`znx-an-body`,children:(0,o.jsx)(`div`,{className:`znx-an-scroll`,children:(0,o.jsx)(Xo,{rows:(0,r.useMemo)(()=>Array.isArray(e)?e:rs,[e]),grouped:t,getTime:e=>e.activityTime??e.createdAt,getKey:(e,t)=>e.id??e._id??t,emptyText:`No activity here.`,getMeta:e=>ts(e,e.activityComments),renderBody:e=>{let t=ts(e,e.activityComments);return(0,o.jsxs)(`div`,{className:`znx-an-comment`,children:[(0,o.jsx)(`span`,{className:`znx-an-tag znx-an-tag--${t.tone}`,children:t.label}),ns(e.activityComments)]})}})})})}function as({assignees:e,extraAssignees:t}){return(0,o.jsxs)(i.Avatar.Group,{maxCount:3,size:`small`,children:[e.map((e,t)=>(0,o.jsx)(i.Tooltip,{title:e.initials,children:(0,o.jsx)(i.Avatar,{size:`small`,style:{backgroundColor:e.color,fontSize:10,fontWeight:600,cursor:`default`},children:e.initials})},t)),t>0&&(0,o.jsxs)(i.Avatar,{size:`small`,style:{backgroundColor:`#d9d9d9`,color:`#555`,fontSize:10},children:[`+`,t]})]})}var os=e.Nn({getJobById:()=>ms,getJobDetailView:()=>ss,updateJobDescription:()=>hs});async function ss(e){let n=await t.r(),r=new URLSearchParams({jobId:String(e)}),i=await fetch(`${t.b}/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 cs={email:`zinnext@realtekconsulting.net`,user_pwd:`Admin@123*`},ls=null;async function us(){return ls||(ls=fetch(`${t.v}/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(cs)}).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(()=>{ls=null}),ls)}async function ds(){return(t.c()??localStorage.getItem(`authToken`))||us()}async function fs(e){let n=await ds(),r=await fetch(`${t.v}${e}`,{headers:{"Content-Type":`application/json`,Authorization:`Bearer ${n}`}});if(r.status===401&&(localStorage.removeItem(`authToken`),n=await us(),r=await fetch(`${t.v}${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 ps(e,n){let r=await ds(),i=await fetch(`${t.v}${e}`,{method:`PUT`,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${r}`},body:JSON.stringify(n)});if(i.status===401&&(localStorage.removeItem(`authToken`),r=await us(),i=await fetch(`${t.v}${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 ms(e){return fs(`/jobs/${e}`)}async function hs(e,t){return ps(`/jobs/${e}`,{rawDescription:t})}var{Text:gs}=i.Typography,_s=2;function vs({jobId:e,sections:t=[],meta:n=[],rawDescription:s=``,onSaved:c}){let[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(!1),[p,m]=(0,r.useState)(``),[h,g]=(0,r.useState)(!1),_=[...t].sort((e,t)=>(e.displayOrder??0)-(t.displayOrder??0)),v=l?_:_.slice(0,_s),y=_.length>_s;function b(){m(s),f(!0)}function x(){f(!1),m(``)}async function S(){if(!p.trim()){i.message.warning(`Please enter a job description`);return}g(!0);try{await hs(e,p.trim());let t=await ms(e);c?.(t),f(!1),m(``),i.message.success(`Description updated successfully`)}catch{i.message.error(`Failed to update description`)}finally{g(!1)}}return d?(0,o.jsxs)(i.Space,{direction:`vertical`,style:{width:`100%`},size:8,children:[(0,o.jsx)(i.Input.TextArea,{rows:10,value:p,onChange:e=>m(e.target.value),placeholder:`Paste raw job description here...`}),(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{type:`primary`,loading:h,onClick:S,children:`Save & Parse`}),(0,o.jsx)(i.Button,{onClick:x,children:`Cancel`})]})]}):(0,o.jsxs)(`div`,{className:`desc-block`,children:[(0,o.jsx)(`div`,{className:`desc-block-toolbar`,children:(0,o.jsx)(a.EditOutlined,{className:`desc-edit-icon`,onClick:b})}),!t.length&&!n.length?(0,o.jsx)(gs,{type:`secondary`,children:`No description available.`}):(0,o.jsxs)(`div`,{className:`jdv-ats-desc`,children:[n.length>0&&(0,o.jsx)(`div`,{className:`jdv-ats-meta-grid`,children:n.map(({fieldKey:e,fieldLabel:t,value:n})=>(0,o.jsxs)(`div`,{className:`jdv-ats-meta-row`,children:[(0,o.jsx)(`span`,{className:`jdv-ats-meta-key`,children:t}),(0,o.jsx)(`span`,{className:`jdv-ats-meta-val`,children:n})]},e))}),(0,o.jsx)(`div`,{className:`jdv-ats-sections`,children:v.map(({sectionKey:e,sectionTitle:t,renderType:n,content:r=[]})=>n===`education`?(0,o.jsxs)(`div`,{className:`education-block`,children:[(0,o.jsxs)(`div`,{className:`education-header`,children:[(0,o.jsx)(`span`,{children:`🎓`}),(0,o.jsx)(`span`,{children:t})]}),(0,o.jsx)(`ul`,{className:`education-list`,children:r.map((e,t)=>(0,o.jsx)(`li`,{className:`education-list-item`,children:e},t))})]},e):(0,o.jsxs)(`div`,{className:`jdv-ats-section`,children:[(0,o.jsx)(`div`,{className:`jdv-ats-section-hd`,children:(0,o.jsx)(`span`,{children:t})}),n===`chips`?(0,o.jsx)(i.Space,{size:[6,6],wrap:!0,style:{marginTop:8},children:r.map((e,t)=>(0,o.jsx)(i.Tag,{className:`jdv-skill-tag`,children:e},t))}):(0,o.jsx)(`ul`,{className:`jdv-ats-bullets`,children:r.map((e,t)=>(0,o.jsx)(`li`,{className:`jdv-ats-bullet-item`,children:e},t))})]},e))}),y&&(0,o.jsx)(`span`,{className:`jdv-desc-toggle`,onClick:()=>u(e=>!e),children:l?`Show less`:`Show more (${t.length-_s} more sections)`})]})]})}function ys(){return Number(localStorage.getItem(`userId`))||0}function bs(e,{id:t,moduleName:n,record:i}={}){let a=(0,r.useMemo)(()=>Array.isArray(e)?e:[],[e]),o=(0,r.useMemo)(()=>a.filter(e=>typeof e?.visibleWhen==`function`),[a]),[s,c]=(0,r.useState)({});return(0,r.useEffect)(()=>{if(!o.length)return;let e=!1,r={id:t,moduleName:n,record:i,currentUserId:ys()};return o.forEach(n=>{let i=`${t}:${n.key}`;Promise.resolve().then(()=>n.visibleWhen(r)).then(t=>{e||c(e=>({...e,[i]:t!==!1}))}).catch(()=>{e||c(e=>({...e,[i]:!0}))})}),()=>{e=!0}},[o,t,n,i]),(0,r.useMemo)(()=>a.filter(e=>typeof e?.visibleWhen==`function`?s[`${t}:${e.key}`]===!0:!0),[a,s,t])}var xs={USD:`$`,INR:`₹`,EUR:`€`,GBP:`£`,AUD:`$`,CAD:`$`},Ss=e=>e==null||e===``||Array.isArray(e)&&e.length===0,Cs=e=>!Ss(e);function ws(e){let t=Es(e);return t.charAt(0).toUpperCase()+t.slice(1)}function Ts(e){return e&&typeof e==`object`&&!Array.isArray(e)&&`id`in e&&`value`in e?e.id??e.value:e}function Es(e){return Array.isArray(e)?e.filter(e=>!Ss(e)).map(e=>Es(e)).filter(Boolean).join(`, `):e&&typeof e==`object`&&`id`in e&&`value`in e?String(e.value??e.id??``):String(e??``)}function Ds(e){return Ss(e)?``:xs[String(e).toUpperCase()]??String(e)}function Os(e){if(Ss(e))return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:`${t.toLocaleDateString(`en-US`,{month:`short`,day:`2-digit`,year:`numeric`})} | ${t.toLocaleTimeString(`en-US`,{hour:`2-digit`,minute:`2-digit`,hour12:!0}).replace(/\s/g,``).toUpperCase()}`}function ks({start:e,end:t,sym:n=``,unit:r}={}){return Ss(e)||Number(e)<=0?``:`${n}${!Ss(t)&&Number(t)>0?`${e} - ${t}`:`${e}`}${Ss(r)?``:`/${r}`}`}function As(e){let t=Es(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 js=e.Nn({candidateConfig:()=>Ms,default:()=>Ms}),Ms={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:ws(e(`status`)),color:As(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:Ns},{icon:`employment`,field:`workAuthorisation`},{icon:`rate`,prefix:`Expected: `,compute:Ps}],timestamp:{label:`Created Date`,field:[`createdAt`,`createdDate`]}}};function Ns({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 Ps({val:e}){let t=e(`expectedPayDetails`)??{};return ks({start:t.expectedPay??e(`expectedPay`),sym:t.expectedPayCurrencySymbol??Ds(t.expectedPayCurrency),unit:t.expectedPayUnit})}var{Text:Fs}=i.Typography,Is=e=>e==null||e===``,Ls=/^\d{4}-\d{2}-\d{2}([T ]\d{2}:\d{2}|$)/;function Rs(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 zs(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 Bs(e,t){if(Is(e))return``;let n=String(e);return t===!1?n:zs(n)?Rs(n):n}function Vs(e,t,n){return Object.values(e).filter(e=>!Is(e)&&typeof e!=`object`).map(e=>Bs(e,t)).join(n)}function Hs(e,t){if(!e)return e;switch(t){case`upper`:return String(e).toUpperCase();case`lower`:return String(e).toLowerCase();case`title`:return Rs(e);default:return e}}var Us=e=>e&&typeof e==`object`&&!Array.isArray(e)&&`value`in e&&`id`in e;function Ws(e,t,n){return Is(e)?``:Us(e)?Bs(e.value??e.id,t):Array.isArray(e)?e.map(e=>Us(e)?Bs(e.value??e.id,t):e&&typeof e==`object`?Vs(e,t,n):Bs(e,t)).filter(Boolean).join(n):typeof e==`boolean`?e?`Yes`:`No`:typeof e==`object`?Vs(e,t,n):Bs(e,t)}function Gs(e,t,n){if(Array.isArray(e))return e.map(e=>Us(e)?Bs(e.value??e.id,t):e&&typeof e==`object`?Vs(e,t,n):Bs(e,t)).filter(e=>e!==``);if(typeof e==`string`)return e.split(`,`).map(e=>Bs(e.trim(),t)).filter(Boolean);let r=Ws(e,t,n);return r?[r]:[]}function Ks({name:e}){let t=String(e||``).split(`.`).pop().toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-chip__icon`}):t===`doc`||t===`docx`?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-chip__icon`}):[`png`,`jpg`,`jpeg`,`gif`,`webp`,`bmp`,`svg`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-chip__icon`}):[`txt`,`csv`,`json`,`md`].includes(t)?(0,o.jsx)(a.FileTextOutlined,{className:`v1-file-chip__icon`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-chip__icon`})}Ks.propTypes={name:l.default.string};function qs(e){return e?.renderType&&e.renderType!==`auto`?e.renderType:e?.documentPreview===!0?`document`:e?.displayAs===`tag`?`tag`:e?.displayAs===`text`?`text`:`auto`}function Js({value:t,mode:n,empty:s,style:c}){let[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(0),p=e.k(t);if(!p.length)return(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:c,children:s});let m=p.filter(e=>e.url);return n===`text`?(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:c,children:p.map(e=>e.name).join(`, `)}):n===`tag`?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:p.map((e,t)=>(0,o.jsx)(i.Tag,{icon:(0,o.jsx)(a.PaperClipOutlined,{}),children:e.name},t))}):n===`link`||n===`download`?(0,o.jsx)(`span`,{className:`v1-detail-value v1-doc-list`,children:(0,o.jsx)(`span`,{className:`v1-file-list`,children:p.map((e,t)=>e.url?(0,o.jsxs)(`a`,{className:`v1-file-chip`,href:e.url,target:`_blank`,rel:`noopener noreferrer`,download:n===`download`?e.name||``:void 0,title:e.name,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),n===`download`?(0,o.jsx)(a.DownloadOutlined,{className:`v1-file-chip__action`}):(0,o.jsx)(a.LinkOutlined,{className:`v1-file-chip__action`})]},t):(0,o.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No file location`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))})}):(0,o.jsxs)(`div`,{className:`v1-detail-value v1-doc-list`,children:[(0,o.jsx)(`div`,{className:`v1-file-list`,children:p.map((e,t)=>e.url?(0,o.jsxs)(`button`,{type:`button`,className:`v1-file-chip`,onClick:()=>{f(m.indexOf(e)),u(!0)},title:`Preview ${e.name}`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name}),(0,o.jsx)(a.EyeOutlined,{className:`v1-file-chip__action`})]},t):(0,o.jsxs)(`span`,{className:`v1-file-chip v1-file-chip--disabled`,title:`No preview available for this file`,children:[(0,o.jsx)(Ks,{name:e.name}),(0,o.jsx)(`span`,{className:`v1-file-chip__name`,children:e.name})]},t))}),(0,o.jsx)(e.On,{documents:m,open:l,onClose:()=>u(!1),initialIndex:d})]})}Js.propTypes={value:l.default.any,mode:l.default.string,empty:l.default.string,style:l.default.object};function Ys(e,t){let n=Number(String(e).replace(/[^0-9.-]/g,``));return Number.isNaN(n)?String(e):`${t.currencySymbol??``}${n.toLocaleString(void 0,{maximumFractionDigits:2})}`}function Xs({field:t}){let{value:n,type:r,prefix:s=``,suffix:l=``,color:u=``,capitalize:d}=t??{},f=t?.renderOptions??{},p=e.M(),m=p.emptyPlaceholder,h=p.separator||`, `,g=u?{color:u}:void 0,_=f.tagColor||u||void 0,v=f.textTransform&&f.textTransform!==`none`?f.textTransform:null,y=e=>`${s?`${s} `:``}${e}${l?` ${l}`:``}`,b=e=>v?Hs(e,v):e,x=e=>(0,o.jsx)(Fs,{strong:!0,className:`v1-detail-value`,style:g,children:b(e)}),S=e=>(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:(0,o.jsx)(i.Tag,{color:_,children:b(e)})}),C=qs(t);if(C!==`document`&&Is(n)&&!f.showEmpty)return x(m);switch(C){case`document`:return(0,o.jsx)(Js,{value:n,mode:f.documentMode||`preview`,empty:m,style:g});case`text`:return x(y(Ws(n,d,h)));case`tag`:case`chip`:return S(y(Ws(n,d,h)));case`badge`:{let e=b(Ws(n,d,h));return(0,o.jsx)(`span`,{className:`v1-detail-value`,children:(0,o.jsx)(i.Badge,{color:_||`blue`,text:e})})}case`tags`:case`multitag`:case`skills`:{let e=Gs(n,d,h);return e.length?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:e.map((e,t)=>(0,o.jsx)(i.Tag,{color:_,children:b(e)},t))}):x(m)}case`link`:{let t=Ws(n,!1,h);return(0,o.jsx)(`a`,{className:`v1-detail-value v1-doc-link`,href:/^https?:\/\//i.test(t)?t:e.O(t)||t,target:`_blank`,rel:`noopener noreferrer`,children:b(y(t))})}case`email`:{let e=Ws(n,!1,h);return(0,o.jsxs)(`a`,{className:`v1-detail-value`,href:`mailto:${e}`,children:[(0,o.jsx)(a.MailOutlined,{}),` `,e]})}case`phone`:{let e=Ws(n,!1,h);return(0,o.jsxs)(`a`,{className:`v1-detail-value`,href:`tel:${e.replace(/[^0-9+]/g,``)}`,children:[(0,o.jsx)(a.PhoneOutlined,{}),` `,e]})}case`date`:{let e=(0,c.default)(n),t=f.dateFormat||p.dateFormat;return x(y(e.isValid()?e.format(t):Ws(n,d,h)))}case`currency`:return x(y(Ys(n,f)));case`budget`:{let e=Ys(n,f),t=f.unit?String(f.unit):``,r=t&&f.budgetUnitMap?f.budgetUnitMap[t]??t:t;return x(`${e}${r?`/${r}`:``}`)}case`html`:return(0,o.jsx)(`span`,{className:`v1-detail-value`,style:g,dangerouslySetInnerHTML:{__html:String(n??``)}});default:break}if(Is(n))return x(m);let w=r===`date`,T=typeof n==`string`&&Ls.test(n.trim());if(w||T){let e=(0,c.default)(n);if(e.isValid())return x(y(e.format(p.dateFormat)))}if(Us(n))return x(y(Bs(n.value??n.id,d)));if(Array.isArray(n)){let e=Gs(n,d,h);return e.length?(0,o.jsx)(`span`,{className:`v1-detail-value v1-detail-tags`,children:e.map((e,t)=>(0,o.jsx)(i.Tag,{color:_,children:e},t))}):x(m)}return x(typeof n==`boolean`?n?p.booleanTrueLabel:p.booleanFalseLabel:typeof n==`object`?Vs(n,d,h)||m:y(Bs(n,d)))}Xs.propTypes={field:l.default.object};var{Text:Zs}=i.Typography,Qs=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],$s=e=>e===!0||e===1||e===`1`,ec=[`jobDescription`,`description`,`rawDescription`,`jobDescriptionText`];function tc(e=[]){for(let t of e)for(let e of t.fields??[]){let t=ec.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 nc(e=[]){return[...e].filter(e=>!$s(e.hideGroup)&&!$s(e.hideGroupInDetail)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(e=>({...e,fields:[...e.fields??[]].filter(e=>String(e.field??``).trim()!==``&&(e.show===void 0||$s(e.show))).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function rc({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(Zs,{strong:!0,className:`v1-section-label`,children:t})]})}function ic({value:e}){let t=String(e??``);return/<[a-z][\s\S]*>/i.test(t)?(0,o.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`normal`,lineHeight:1.7},dangerouslySetInnerHTML:{__html:t}}):(0,o.jsx)(`div`,{className:`v1-detail-value`,style:{whiteSpace:`pre-wrap`,lineHeight:1.7},children:t})}function ac({moduleName:t,id:n,refreshKey:s=0,onDescriptionSaved:c}){let[l,u]=(0,r.useState)([]),[d,f]=(0,r.useState)(!!t),[p,m]=(0,r.useState)(``),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)(``),[y,b]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!t)return;let r=!1;async function i(){try{f(!0),m(``);let[i]=await Promise.all([$t({module:t,id:n,view:`detail`}),e.N()]);r||u(Array.isArray(i)?i:[])}catch(e){console.error(`Failed to fetch ${t} detail fields:`,e),r||m(e?.message||`Failed to fetch detail fields`)}finally{r||f(!1)}}return i(),()=>{r=!0}},[t,n,s]);let x=(0,r.useMemo)(()=>nc(l),[l]),S=t===`job`,C=(0,r.useMemo)(()=>S?tc(l):null,[S,l]),w=()=>{g(!1),v(``)},T=async()=>{if(!_.trim()){i.message.warning(`Please enter a job description`);return}b(!0);try{await hs(n,_.trim()),g(!1),v(``),f(!0);let e=await $t({module:t,id:n,view:`detail`});u(Array.isArray(e)?e:[]),i.message.success(`Description updated and parsed successfully`),c?.()}catch{i.message.error(`Failed to update description`)}finally{b(!1),f(!1)}},E=(e,t=``)=>(0,o.jsx)(i.Col,{xs:24,sm:12,lg:e.detailCol??e.col??8,children:(0,o.jsxs)(`div`,{className:`v1-detail-field`,children:[(0,o.jsx)(Zs,{type:`secondary`,className:`v1-detail-label`,children:e.label??e.field}),(0,o.jsx)(Xs,{field:e})]})},`${e.field}${t}`),D=(t,n)=>t.type===`file`||t.type===`document`?{...t,renderType:`document`,value:n}:{...t,value:e.H(n,t.field)},O=(e,t,n)=>{let r=e.name??e.id??String(t),a=Array.isArray(e.rows)?e.rows:[];return(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:Qs[t%Qs.length],title:e.label??e.name??`Details`}),children:a.length===0?(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`No ${e.label??`records`} added`}):a.map((t,r)=>(0,o.jsxs)(`div`,{className:`v1-detail-addrow-item`,children:[a.length>1&&(0,o.jsxs)(Zs,{strong:!0,className:`v1-detail-addrow-index`,children:[e.label??`Record`,` `,r+1]}),(0,o.jsx)(i.Row,{gutter:[20,18],children:n.map(e=>E(D(e,t),`-${r}`))})]},r))},r)};return(0,o.jsx)(i.Spin,{spinning:d,tip:`Loading detail fields...`,children:(0,o.jsxs)(`div`,{className:`v1-detail-left`,children:[p&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:`Unable to load detail fields`,description:p,className:`v1-detail-alert`}),!d&&!p&&x.length===0&&(0,o.jsx)(i.Empty,{description:`No detail fields are configured.`}),x.map((e,t)=>{let n=e.name??e.id??String(t),r=C?e.fields.filter(e=>e.field!==C.key):e.fields;return r.length?e.addRow?O(e,t,r):(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:Qs[t%Qs.length],title:e.label??e.name??`Details`}),children:(0,o.jsx)(i.Row,{gutter:[20,18],children:r.map(e=>E(e))})},n):null}),S&&C?.value&&(0,o.jsx)(i.Card,{size:`small`,className:`v1-card v1-detail-card`,title:(0,o.jsx)(rc,{icon:(0,o.jsx)(a.FileTextOutlined,{}),title:`Description`}),children:h?(0,o.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:12},children:[(0,o.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,o.jsx)(i.Input.TextArea,{rows:10,value:_,onChange:e=>v(e.target.value),placeholder:C.hidePlaceholder?void 0:C.placeholder,style:{fontSize:13,lineHeight:1.65,border:`none`,boxShadow:`none`,resize:`vertical`,padding:`12px 14px`}})}),(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8},children:[(0,o.jsx)(Pr,{variant:`primary`,size:`small`,loading:y,onClick:T,children:`Save & Parse`}),(0,o.jsx)(Pr,{size:`small`,onClick:w,children:`Cancel`})]})]}):(0,o.jsx)(ic,{value:C.value})})]})})}function oc(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 sc=[{id:`n1`,createdAt:new Date().toISOString(),author:`You`,notes:`Shortlisted 3 candidates, sharing profiles with @Hiring Manager today.`}];function cc(e=``){return e.split(/(\s+)/).map((e,t)=>e.startsWith(`@`)&&e.length>1?(0,o.jsx)(`span`,{className:`znx-an-mention`,children:e},t):(0,o.jsx)(`span`,{children:e},t))}function lc({notes:e,users:t=[],onAddNote:n}){let[a]=i.Form.useForm(),[s,c]=(0,r.useState)(()=>Array.isArray(e)?e:sc),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)(!1),h=(0,r.useRef)(null),g=Array.isArray(e)?e:s,_=(0,r.useMemo)(()=>t.map(e=>({value:e.display??e.value,label:e.display??e.label})),[t]),v=d??_;return(0,o.jsxs)(`div`,{className:`znx-an-body`,children:[(0,o.jsxs)(i.Form,{form:a,onFinish:async({note:e})=>{let t=(e??``).trim();if(t){u(!0);try{n?await n(t):c(e=>[{id:`local-${Date.now()}`,createdAt:new Date().toISOString(),author:`You`,notes:t},...e]),a.resetFields(),i.message.success(`Notes added successfully`)}catch{i.message.error(`Something went wrong, please try again.`)}finally{u(!1)}}},className:`znx-an-composer`,children:[(0,o.jsx)(i.Form.Item,{name:`note`,rules:[{required:!0,message:`Notes is required`}],style:{marginBottom:0},children:(0,o.jsx)(i.Mentions,{rows:3,prefix:`@`,options:v,loading:p,filterOption:!1,onSearch:e=>{clearTimeout(h.current),m(!0),h.current=setTimeout(()=>{tn(e).then(e=>{f((Array.isArray(e)?e:e?.items??e?.list??e?.data??[]).map(oc))}).catch(()=>f([])).finally(()=>m(!1))},300)},placeholder:`Add your notes on the job, use '@' to mention`})}),(0,o.jsx)(`div`,{className:`znx-an-composer-actions`,children:(0,o.jsx)(i.Button,{type:`primary`,size:`small`,htmlType:`submit`,loading:l,children:`Post`})})]}),(0,o.jsx)(`div`,{className:`znx-an-scroll`,children:(0,o.jsx)(Xo,{rows:g,getTime:e=>e.createdAt??e.activityTime,getKey:(e,t)=>e.id??e._id??t,getAuthor:e=>e.author,emptyText:`No notes here.`,renderBody:e=>(0,o.jsx)(`div`,{className:`znx-an-comment`,children:cc(e.notes)})})})]})}function uc({moduleName:t,id:n,users:a=[],showActivity:s=!0,showNotes:c=!0,defaultActiveKey:l=`activity`,refreshKey:u=0}){let[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)(null);(0,r.useEffect)(()=>{if(!t||!n)return;let r=!1;async function i(){let[i,a]=await Promise.all([s?e.Z(t,n).catch(()=>[]):Promise.resolve(null),c?e.et(n).catch(()=>[]):Promise.resolve(null)]);r||(f(i),m(a))}return i(),()=>{r=!0}},[t,n,s,c,u]);let h=(0,r.useCallback)(async r=>{if(!n)return;await e.X({relatedId:n,notes:r,notesFor:t});let[i,a]=await Promise.all([e.et(n).catch(()=>[]),s?e.Z(t,n).catch(()=>[]):Promise.resolve(d)]);m(i),s&&f(a)},[n,t,s,d]),g=[s&&{key:`activity`,title:`Activity`,count:Array.isArray(d)?d.length:void 0,children:(0,o.jsx)(is,{activity:d})},c&&{key:`notes`,title:`Notes`,count:Array.isArray(p)?p.length:void 0,children:(0,o.jsx)(lc,{notes:p,users:a,onAddNote:n?h:void 0})}].filter(Boolean),[_,v]=(0,r.useState)(g.some(e=>e.key===l)?l:g[0]?.key);return(0,o.jsx)(i.Card,{className:`znx-an-card`,styles:{body:{padding:0}},children:(0,o.jsx)(j,{className:`znx-an-tabs`,tabs:g,activeKey:_,onChange:v})})}uc.propTypes={moduleName:l.default.string,id:l.default.string,users:l.default.array,showActivity:l.default.bool,showNotes:l.default.bool,defaultActiveKey:l.default.string,refreshKey:l.default.oneOfType([l.default.number,l.default.string])};var dc=e.Nn({buildJobHeaderData:()=>yc,default:()=>fc,jobConfig:()=>fc}),fc={module:`job`,tabs:[{key:`details`,label:`Details`},{key:`candidates`,label:`Candidates`}],tabContent:{details:{render:({id:e,refreshKey:t,onDescriptionSaved:n})=>r.default.createElement(i.Row,{gutter:[16,16],align:`stretch`},r.default.createElement(i.Col,{key:`main`,xs:24,lg:16},r.default.createElement(ac,{moduleName:`job`,id:e,refreshKey:t,onDescriptionSaved:n})),r.default.createElement(i.Col,{key:`side`,xs:24,lg:8},r.default.createElement(uc,{moduleName:`job`,id:e})))}},header:{title:`jobTitle`,eyebrow:({val:e})=>{let t=[];return Cs(mc(e))&&t.push(Es(mc(e))),Cs(hc(e))&&t.push(`MSP Id ${Es(hc(e))}`),t.length?t.join(` - `):Cs(e(`jobReferenceId`))?String(e(`jobReferenceId`)):``},clientName:({val:e})=>mc(e),titleIds:[],status:{field:`jobStatus`},ids:[{label:`Zinnext Job ID`,field:`jobReferenceId`},{label:`Client Rate`,compute:_c}],meta:[{icon:`location`,field:`jobLocation`},{icon:`experience`,compute:gc},{icon:`employment`,fields:[`employmentType`,`jobRemoteStatus`],join:` · `}],stats:[{label:`Target submissions`,field:[`targetSubmission`,`targetSubmissions`]},{label:`In Pipeline`,compute:vc,always:!0}],timestamp:{label:`Created Date`,field:[`createdAt`,`jobCreatedDateTime`,`createdDate`]}}},pc=(e,...t)=>t.map(t=>e(t)).find(Cs),mc=e=>pc(e,`clientName`,`client.name`,`client`,`clientId`,`accountName`),hc=e=>pc(e,`mspReqId`,`mspreqId`,`msReqId`,`mspId`,`mspRequirementId`);function gc({val:e}){let t=e(`experience.experienceRequiredFrom`);if(!Cs(t))return``;let n=e(`experience.experienceRequiredTo`);return`${t}${Cs(n)?` - ${n}`:``} years`}function _c({val:e}){let t=e(`jobPayDetails`)??{},n=t.clientBudgetStart??pc(e,`clientBudgetStart`,`clientRateStart`);return Cs(n)?ks({start:n,end:t.clientBudgetEnd??pc(e,`clientBudgetEnd`,`clientRateEnd`),sym:t.clientBudgetCurrencySymbol??Ds(t.clientBudgetCurrency)??``,unit:t.clientBudgetUnit??pc(e,`clientBudgetUnit`)}):``}function vc({val:e}){let t=e(`submissions`),n=pc(e,`pipelineCount`,`PipelineCount`,`inPipeline`,`inPipelineCount`)??(Array.isArray(t)?t.length:void 0);return Cs(n)?n:0}function yc({val:e,has:t}){let n,r=[];t(e(`jobReferenceId`))&&(n=String(e(`jobReferenceId`)));let i=[e(`jobTitle`)].filter(t).map(Es).join(` `)||`-`,a=null;if(t(e(`jobSource`))&&(a={label:ws(e(`jobSource`)),color:`#10b981`,textColor:`#ffffff`}),t(e(`jobLocation`))&&r.push({icon:`location`,text:Es(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`),Es(e(`jobRemoteStatus`))].filter(t).join(` - `);o&&r.push({icon:`employment`,text:o});let s=t(e(`clientId`))?Ts(e(`clientId`)):null;return{eyebrow:n,title:i,status:a,meta:r,clientId:s}}var bc=e.Nn({default:()=>xc,submissionConfig:()=>xc}),xc={module:`submission`,tabs:[],header:{title:[`firstName`,`lastName`],eyebrow:({val:e,has:t})=>[Sc(e),e(`jobTitle`)].filter(t).map(Es).join(` - `),clientName:({val:e})=>Sc(e),status:({val:e,has:t})=>{let n=e(`internalSubmissionStatus`)??{},r=n.internalSubmissionStatusText;return t(r)?{label:ws(r),color:{positive:`success`,negative:`error`,neutral:`default`}[n.internalSubmissionStatusType]??As(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:Cc},{icon:`rate`,prefix:`Candidate rate: `,compute:wc}],timestamp:{label:`Created Date`,field:[`submittedAt`,`createdAt`,`createdDate`]}}},Sc=e=>e(`clientName`)??e(`client.name`);function Cc({val:e}){let t=e(`clientBudget`)??e(`candidateBudget`)??{};return ks({start:t.clientBudgetStart??t.candidateBudgetStart,end:t.clientBudgetEnd??t.candidateBudgetEnd,sym:t.clientBudgetCurrencySymbol??t.candidateBudgetCurrencySymbol??Ds(t.clientBudgetCurrency??t.candidateBudgetCurrency),unit:t.clientBudgetUnit??t.candidateBudgetUnit??`Hour`})}function wc({val:e}){let t=e(`candidateRate`)??{},n=e(`proposedRate`)??{};return ks({start:t.candidateAcceptedRate,sym:t.candidateAcceptedCurrencySymbol??Ds(t.candidateAcceptedCurrency),unit:t.candidateAcceptedPayUnit??`Hour`})||ks({start:n.candidateProposedRate,sym:n.candidateProposedRateCurrencySymbol??Ds(n.candidateProposedRateCurrency),unit:n.candidateProposedRateUnit??`Hour`})}var Tc=e.Nn({default:()=>Ec,submissionJobConfig:()=>Ec}),Ec={module:`submissionJob`,tabs:[],buildData:yc};function Dc(e,t){let n=Array.isArray(t)?t:[t];for(let t of n)if(Cs(e(t)))return e(t)}function Oc(e,t,n=` `){return t.map(t=>e(t)).filter(Cs).map(Es).join(n)}function kc(e,t){let{val:n}=e,r;if(typeof t.compute==`function`)r=t.compute(e);else if(t.join)r=Oc(n,t.fields??[],t.join);else{let e=Dc(n,t.field);r=Cs(e)?Es(e):``}return Cs(r)?`${t.prefix??``}${Es(r)}${t.suffix??``}`:``}function Ac(e){return typeof e==`function`?{compute:e}:typeof e==`string`||Array.isArray(e)?{field:e}:e}function jc(e={},t){let{val:n}=t,r={};if(e.title!==void 0&&(r.title=Oc(n,Array.isArray(e.title)?e.title:[e.title])||`-`),e.eyebrow!==void 0&&(r.eyebrow=kc(t,Ac(e.eyebrow))||void 0),e.clientName!==void 0&&(r.clientName=kc(t,Ac(e.clientName))||void 0),e.status!==void 0)if(typeof e.status==`function`)r.status=e.status(t)??null;else{let t=Dc(n,e.status.field);r.status=Cs(t)?{label:ws(t),color:As(t)}:null}let i=(e=[])=>e.map(e=>{let r=typeof e.compute==`function`?e.compute(t):Es(Dc(n,e.field)??``);return{label:e.label,value:r}}).filter(e=>Cs(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:kc(t,e)})).filter(e=>Cs(e.text))),e.stats!==void 0&&(r.stats=e.stats.map(e=>{let r=typeof e.compute==`function`?e.compute(t):Dc(n,e.field),i=Cs(r)?Es(r):e.always?Es(e.fallback??0):void 0;return{label:e.label,value:i}}).filter(e=>e.value!==void 0)),e.timestamp!==void 0){let t=Os(Dc(n,e.timestamp.field));r.timestamp=Cs(t)?{label:e.timestamp.label,value:t}:null}return r}var Mc=Object.assign({"./modules/candidateConfig.js":js,"./modules/jobConfig.js":dc,"./modules/submissionConfig.js":bc,"./modules/submissionJobConfig.js":Tc}),Nc={};Object.values(Mc).forEach(e=>{let t=e.default??Object.values(e)[0];t?.module&&(Nc[t.module]=t)});var Pc={job:`job`,jobs:`job`,candidate:`candidate`,candidates:`candidate`,applicant:`candidate`,applicants:`candidate`,submission:`submission`,submissions:`submission`,vendor:`vendor`,vendors:`vendor`,onboarding:`onboarding`};function Fc(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.detailConfig)??{};return Object.keys(e).length?{...Nc,...e}:Nc}function Ic(e=``,t=Nc){let n=String(e).trim();if(t[n])return n;let r=n.toLowerCase();if(t[r])return r;let i=Pc[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 Lc(e=[]){let t=new Map;return e.forEach(e=>{(e.fields??[]).forEach(e=>{t.has(e.field)||t.set(e.field,e)})}),t}function Rc(e,t){for(let n of t)if(n.includes(`+`)){let t=n.split(`+`).map(t=>e(t)).filter(Cs).map(Es).join(` `);if(t)return t}else if(Cs(e(n)))return e(n)}function zc({val:e}){let t=Rc(e,[`jobTitle`,`firstName+lastName`,`name`,`fullName`,`title`,`clientName`,`vendorCompanyName`,`companyName`])||`-`,n=Rc(e,[`clientName`,`source`,`designation`,`jobReferenceId`,`applicantRefrenceId`]),r=Cs(n)?Es(n):void 0,i=Rc(e,[`status`,`jobStatus`,`submissionStatus`,`stage`]),a=Cs(i)?{label:ws(i),color:As(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=Rc(e,n);Cs(r)&&o.push({label:t,value:Es(r)})});let s=[],c=Rc(e,[`jobLocation`,`currentLocation`,`location`]);Cs(c)&&s.push({icon:`location`,text:Es(c)});let l=Rc(e,[`designation`]);Cs(l)&&s.push({icon:`designation`,text:Es(l)});let u=Os(Rc(e,[`createdAt`,`submittedAt`,`createdDate`]));return{eyebrow:r,title:t,status:a,ids:o,meta:s,timestamp:Cs(u)?{label:`Created Date`,value:u}:null}}function Bc(e){let t=Fc();return t[Ic(e,t)]??null}function Vc(e,t=[]){if(!t.length)return null;let n=Fc(),r=n[Ic(e,n)],i=Lc(t),a=e=>{let n=i.get(e);if(!n){let n=t.recordMeta;return n&&(e===`createdAt`||e===`updatedAt`)?n[e]:void 0}return Ss(n.value)&&[`status`,`jobStatus`,`submissionStatus`].includes(e)&&!Ss(n.defaultValue)?n.defaultValue:n.value},o=zc({val:a,has:Cs}),s=r?.buildData?r.buildData({val:a,has:Cs})??{}:r?.header?jc(r.header,{val:a,has:Cs}):{},c=(e,t)=>Array.isArray(e)?e:t??[];return{eyebrow:s.eyebrow??o.eyebrow,title:s.title??o.title??`-`,clientName:s.clientName??null,clientId:s.clientId??null,status:s.status??o.status??null,titleIds:c(s.titleIds,o.titleIds),meta:c(s.meta,o.meta),ids:c(s.ids,o.ids),stats:s.stats??[],timestamp:s.timestamp??o.timestamp??null,tabs:r?.tabs??[]}}var Hc={location:(0,o.jsx)(a.EnvironmentOutlined,{}),designation:(0,o.jsx)(a.SolutionOutlined,{}),experience:(0,o.jsx)(a.ClockCircleOutlined,{}),employment:(0,o.jsx)(a.LaptopOutlined,{}),rate:(0,o.jsx)(a.DollarOutlined,{}),source:(0,o.jsx)(a.AimOutlined,{}),resume:(0,o.jsx)(a.FileTextOutlined,{}),edit:(0,o.jsx)(a.EditOutlined,{}),approve:(0,o.jsx)(a.CheckCircleOutlined,{}),reject:(0,o.jsx)(a.CloseCircleOutlined,{})};function Uc(e){return Array.isArray(e)?e.map(Uc):e&&typeof e==`object`&&`id`in e&&`value`in e?e.id??e.value:e}function Wc(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]=Uc(e.value));return n}function Gc(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function Kc(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(Gc(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(Gc(t?.[n])))}function qc(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function Jc(e){return String(e??``).trim().toLowerCase()}function Yc(e,t,n,r){return Sn(e.key,t,n,r)}function Xc(e,t,n){let r=e?.doneWhen;return!r||!r.field||!xn(r,t,n)?null:{label:e.doneLabel||e.label,tone:e.doneTone||`success`}}function Zc(e,t,n,r){return Cn(e.key,t,n,r)}function Qc(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 $c(t,n){let r=(t??[]).flatMap(e=>e.fields??[]),i=!n||/resume|cv/i.test(n),a=r.find(e=>e.field===n)??(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||n||`Document`,type:e?`html`:`text`,content:a.value}]}let s=e.k(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||n||`Document`,type:e?`html`:`text`,content:a.value}]}return[]}function el({moduleName:n,id:c,customConfigName:l,onAction:u,onTabChange:d,onHeaderData:f,hideActions:p=!1,defaultTab:m,refreshKey:h=0}){let g=(0,s.useNavigate)(),_=(0,s.useLocation)(),[v,y]=(0,r.useState)([]),[b,x]=(0,r.useState)([]),[S,C]=(0,r.useState)([]),[w,T]=(0,r.useState)(!1),[E,D]=(0,r.useState)([]),O=l||n;(0,r.useEffect)(()=>{if(!n)return;let t=!1;async function r(){try{let[r,i]=await Promise.all([$t({module:n,id:c,view:`detail`}),e.Q(O).catch(()=>({actions:[],actionRules:[]})),e.N()]);t||(y(Array.isArray(r)?r:[]),x(i.actions??[]),C(i.actionRules??[]))}catch(e){console.error(`Failed to fetch ${n} header fields:`,e),t||(y([]),x([]),C([]))}}return r(),()=>{t=!0}},[n,O,c,h]);let k=(0,r.useMemo)(()=>Vc(O,v),[O,v]);(0,r.useEffect)(()=>{k&&f&&f(k)},[k]);let{eyebrow:A,title:j=`-`,status:M,titleIds:N=[],meta:P=[],ids:F=[],tabs:I=[],stats:L=[],timestamp:R=null}=k??{},{canAdd:z,canEdit:B,canDelete:V}=hn(n),H=(0,r.useMemo)(()=>Wc(v,c),[v,c]),U=bs(I,{id:c,moduleName:n,record:H}),W=Bc(O)?.resolveScope,[G,ee]=(0,r.useState)(void 0);(0,r.useEffect)(()=>{if(typeof W!=`function`||!c)return;let e=!1,t=Number(localStorage.getItem(`userId`))||0;return Promise.resolve().then(()=>W({id:c,moduleName:n,record:H,currentUserId:t})).then(t=>{e||ee(t??null)}).catch(()=>{e||ee(null)}),()=>{e=!0}},[W,c,n,v]);let te=typeof W!=`function`||G!==void 0,K=(0,r.useMemo)(()=>te?b.filter(e=>e.showInDetail??e.showInList).map(Qc).filter(e=>!Yc(e,H,S,G??void 0)):[],[S,b,H,G,te]);function ne(t){let n=_n(t);if(n===`add`&&!z||n===`edit`&&!B||n===`delete`&&!V||!e.d(t.permission,O))return!1;if(t.permissionKey){let e=qc(H,`actionPermission.${t.permissionKey}`);if(e===!1||e===0||e===`0`)return!1}return!0}let[re,q]=(0,r.useState)({sourceDefaultTab:m,selectedTab:m}),J=re.sourceDefaultTab===m?re.selectedTab:m,ie=U.some(e=>e.key===J)?J:U[0]?.key,ae=e=>!e.allowedTabs?.length||e.allowedTabs.some(e=>Jc(e)===Jc(ie)),oe=K.filter(e=>e.detailPlacement===`primary`&&ne(e)&&ae(e)),Y=K.filter(e=>e.detailPlacement!==`primary`&&ne(e)&&ae(e));if(!k)return null;let se=e=>{let r=[...oe,...Y].find(t=>t.key===e);if(r?.actionType===`document`&&r.documentField){let e=$c(v,r.documentField);e.length?(D(e),T(!0)):i.message.warning(`No ${(r.label||`document`).toLowerCase()} available`);return}if(r?.actionType===`copy`){let e=qc(H,r.copyField||`id`);navigator.clipboard.writeText(Gc(e)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(r?.actionType===`api`&&r.apiPath){let e=Kc(r.apiPath,H),n=String(r.apiMethod||`POST`).toUpperCase();t.i(t.v,e.startsWith(`/`)?e:`/${e}`,{method:n,body:[`GET`,`DELETE`].includes(n)?void 0:JSON.stringify({ids:[c],record:H})}).then(()=>i.message.success(`${r.label} completed`)).catch(e=>i.message.error(e.message||`${r.label} failed`));return}if(r?.route){let e=typeof r.route==`function`?r.route(c):Kc(r.route,Wc(v,c));if(r.linkTarget===`_blank`){window.open(e,`_blank`,`noopener`);return}e.startsWith(`/popup/`)?g(e,{state:{background:_,moduleName:n,selectedIds:[c],selectedRecords:[H],popupContext:r.popupState??{},popupAction:{key:r.key,apiMethod:r.apiMethod,apiPath:r.apiPath,defaultTemplateId:r.defaultTemplateId},...r.popupState}}):g(e);return}u?.(e,{moduleName:n,id:c,action:r})},ce=e=>{q({sourceDefaultTab:m,selectedTab:e}),d?.(e,{moduleName:n,id:c})},le=Y.map(e=>{let t=Xc(e,H,G??void 0),n=!t&&Zc(e,H,S,G??void 0);return{key:e.key,label:t?t.label:e.label,danger:e.danger,disabled:!!t||!!n,title:n||void 0,onClick:t||n?void 0:()=>se(e.key)}});return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(i.Card,{className:`znx-dh-card`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-top`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-left`,children:[A&&(0,o.jsx)(`div`,{className:`znx-dh-eyebrow`,children:A}),(0,o.jsxs)(`div`,{className:`znx-dh-titlerow`,children:[(0,o.jsx)(`span`,{className:`znx-dh-title`,children:j}),N.map(e=>(0,o.jsxs)(`span`,{className:`znx-dh-titleid`,children:[(0,o.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label)),M&&(0,o.jsx)(i.Tag,{color:M.color,className:`znx-dh-status`,style:{backgroundColor:M.backgroundColor??M.color,borderColor:M.backgroundColor??M.color,color:M.textColor},children:M.label})]}),F.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-ids`,children:F.map(e=>(0,o.jsxs)(`span`,{className:`znx-dh-id`,children:[(0,o.jsxs)(`span`,{className:`znx-dh-id-label`,children:[e.label,`:`]}),` `,e.value]},e.label))}),P.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-meta`,children:P.map((e,t)=>(0,o.jsxs)(`span`,{className:`znx-dh-meta-item`,children:[e.icon&&Hc[e.icon]&&(0,o.jsx)(`span`,{className:`znx-dh-meta-icon`,children:Hc[e.icon]}),(0,o.jsx)(`span`,{children:e.text})]},t))})]}),!p&&(0,o.jsxs)(`div`,{className:`znx-dh-actions-col`,children:[(0,o.jsxs)(`div`,{className:`znx-dh-actions`,children:[oe.map(e=>{let t=Xc(e,H,G??void 0),n=!t&&Zc(e,H,S,G??void 0),r=(0,o.jsx)(i.Button,{type:`text`,disabled:!!t||!!n,className:`znx-dh-btn znx-dh-btn--${t?t.tone:e.tone??`primary`}${t?` znx-dh-btn--done`:``}`,icon:t?(0,o.jsx)(a.CheckCircleOutlined,{}):e.icon?Hc[e.icon]:void 0,onClick:t||n?void 0:()=>se(e.key),children:t?t.label:e.label},e.key);return n?(0,o.jsx)(i.Tooltip,{title:n,children:(0,o.jsx)(`span`,{children:r})},e.key):r}),Y.length>0&&(0,o.jsx)(i.Dropdown,{trigger:[`click`],placement:`bottomRight`,menu:{items:le},children:(0,o.jsx)(i.Button,{type:`text`,className:`znx-dh-more`,icon:(0,o.jsx)(a.MoreOutlined,{})})})]}),L.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-stats`,children:L.map(e=>(0,o.jsxs)(`div`,{className:`znx-dh-stat`,children:[(0,o.jsx)(`span`,{className:`znx-dh-stat-value`,children:e.value}),(0,o.jsx)(`span`,{className:`znx-dh-stat-label`,children:e.label})]},e.label))}),R?.value&&(0,o.jsxs)(`div`,{className:`znx-dh-created`,children:[`Created on `,R.value]})]})]}),U.length>0&&(0,o.jsx)(`div`,{className:`znx-dh-tabs`,children:U.map(e=>(0,o.jsx)(`button`,{type:`button`,className:`znx-dh-tab${ie===e.key?` is-active`:``}`,onClick:()=>ce(e.key),children:e.label},e.key))})]}),(0,o.jsx)(e.On,{documents:E,open:w,onClose:()=>T(!1)})]})}var tl={};function nl(){let e=(typeof window<`u`&&window.__CORE_THEME_CONFIG__?.tabContentRegistry)??{};if(!Object.keys(e).length)return tl;let t={...tl};return Object.entries(e).forEach(([e,n])=>{t[e]={...t[e]??{},...n}}),t}function rl(e,t){return!t||t===`details`?null:nl()[e]?.[t]??null}function il(){return(0,s.useLocation)().state?.__refreshedAt??0}function al({component:e,id:t,moduleName:n,onDescriptionSaved:r}){return e?(0,o.jsx)(e,{id:t,moduleName:n,onDescriptionSaved:r}):null}var{Text:ol}=i.Typography;function sl({moduleName:e,id:t,backPath:n=``,showFooter:a=!0,users:c=[],showActivity:l=!0,showNotes:u=!0,onHeaderAction:d,onHeaderTabChange:f,onHeaderData:p}){let m=(0,s.useNavigate)(),h=(0,s.useParams)(),[g,_]=(0,s.useSearchParams)(),v=(0,s.useLocation)(),y=t||h.id||g.get(`jobId`)||g.get(`id`)||v.state?.record?._id||v.state?.record?.id,b=g.get(`tab`)||`details`,[x,S]=(0,r.useState)(0),C=il(),w=(e,t)=>{let n=new URLSearchParams(g);n.set(`tab`,e),_(n,{replace:!0}),f?.(e,t)},T=()=>S(e=>e+1),E=(e,t)=>{d?.(e,t)},D=(0,r.useMemo)(()=>Bc(e)?.tabs??[],[e]),O=bs(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,r.useMemo)(()=>k?rl(e,b):null,[e,b,k]);return(0,o.jsxs)(`div`,{className:`v1-page v1-detail-page`,children:[(0,o.jsxs)(`div`,{className:`v1-page-inner`,children:[(0,o.jsx)(el,{moduleName:e,id:y,defaultTab:b,onAction:E,onTabChange:w,onHeaderData:p,refreshKey:C}),A?(0,o.jsx)(al,{component:A,id:y,moduleName:e,onDescriptionSaved:T}):(0,o.jsxs)(i.Row,{gutter:[16,16],align:`stretch`,children:[(0,o.jsx)(i.Col,{xs:24,lg:16,children:(0,o.jsx)(ac,{moduleName:e,id:y,refreshKey:x+C,onDescriptionSaved:T})}),(0,o.jsx)(i.Col,{xs:24,lg:8,children:(0,o.jsx)(uc,{moduleName:e,id:y,users:c,showActivity:l,showNotes:u,refreshKey:C})})]})]}),n&&a&&(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(ol,{type:`secondary`,children:y?`Record ID: ${y}`:`Detail view`}),(0,o.jsx)(i.Button,{onClick:()=>m(n),children:`Back`})]})]})}sl.propTypes={moduleName:l.default.string,id:l.default.string,backPath:l.default.string,showFooter:l.default.bool,users:l.default.array,showActivity:l.default.bool,showNotes:l.default.bool,onHeaderAction:l.default.func,onHeaderTabChange:l.default.func,onHeaderData:l.default.func};var cl={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`],relocation:[`Yes`,`No`],source:[`LinkedIn`,`Referral`,`Dice`,`Indeed`,`Monster`,`Vendor`,`Other`]};function ll(e={}){return cl[e.field]??[]}var ul=e.Nn({default:()=>$l}),{Text:dl}=i.Typography,{TextArea:fl}=i.Input;function pl(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function ml({form:t,field:n,absoluteName:a}){let[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(null),d=(0,r.useRef)(null),f=i.Form.useWatch(n.verifyResultField?pl(a,n.verifyResultField):[`__noop_verify__`],{form:t,preserve:!0}),p=i.Form.useWatch(a,t);return(0,r.useEffect)(()=>{let e=String(p??``).trim();if(f===!0&&d.current===null&&e){d.current=e;return}f===!0&&d.current!==null&&e!==d.current&&(n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),void 0),d.current=null)},[a,p,n.verifyResultField,n.verifyTimestampField,t,f]),n.verifyAction===`email`?f===!0?l&&!l.mailboxConfirmed&&(l.catchAll||l.result===`risky`)?(0,o.jsx)(i.Tooltip,{title:l.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,o.jsx)(dl,{type:`warning`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifyUnconfirmedLabel||`Accepted`})}):(0,o.jsx)(dl,{type:`success`,strong:!0,className:`v1-verify-field-wrap`,children:n.verifySuccessLabel||`Valid`}):(0,o.jsx)(i.Button,{size:`small`,loading:s,onClick:async()=>{let r=String(p??``).trim();if(!r){i.message.warning(`Enter an email first`);return}c(!0);try{let o=await e.bn(r);d.current=o.valid?r:null,u(o.valid?o:null),n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),o.valid),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),o.valid?new Date().toISOString():void 0),o.valid?o.mailboxConfirmed?i.message.success(`Email verified — the mail server confirmed this mailbox`):i.message.warning(o.reason||`The domain can receive mail, but this exact mailbox could not be confirmed`):i.message.error(o.reason?`Invalid email: ${o.reason}`:`Email could not be verified`)}catch(e){d.current=null,u(null),n.verifyResultField&&t.setFieldValue(pl(a,n.verifyResultField),!1),n.verifyTimestampField&&t.setFieldValue(pl(a,n.verifyTimestampField),void 0),i.message.error(e?.message||`Could not verify email`)}finally{c(!1)}},className:`v1-verify-field-wrap`,children:f===!1?n.verifyRetryLabel||`Re Verify`:n.verifyIdleLabel||`Verify Email`}):null}function hl({form:t,field:n,siblingPrefix:r,locked:a,combined:s=!1}){let c=e.i(n,i.Form.useWatch(e.n(n?.labelWhen,r),t),s);return s?c:(0,o.jsx)(kl,{field:n,label:c,locked:a})}function gl({form:e,groups:t,disabled:n,loading:r,onClick:a,children:s}){let c=i.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});return(0,o.jsx)(i.Button,{type:`primary`,onClick:a,disabled:n||c,loading:r,children:s})}function _l({form:e,rules:t,watchPath:n,targetPath:a,resetOnNoMatch:o=!0}){let s=i.Form.useWatch(n,e),c=(0,r.useRef)(void 0);return(0,r.useEffect)(()=>{let n=t.find(e=>String(s??``)===String(e.value??``));if(n){e.setFieldValue(a,n.setValue),c.current=n.setValue;return}if(o&&c.current!==void 0){let t=e.getFieldValue(a);String(t??``)===String(c.current??``)&&e.setFieldValue(a,void 0),c.current=void 0}},[s]),null}var vl=[(0,o.jsx)(a.UserOutlined,{}),(0,o.jsx)(a.EnvironmentOutlined,{}),(0,o.jsx)(a.SolutionOutlined,{}),(0,o.jsx)(a.InfoCircleOutlined,{}),(0,o.jsx)(a.FileTextOutlined,{})],yl={email:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`}),contactNumber:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),phone:(0,o.jsx)(a.PhoneOutlined,{className:`v1-input-icon`}),currentLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),preferredLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),designation:(0,o.jsx)(a.SolutionOutlined,{className:`v1-input-icon`}),skills:(0,o.jsx)(a.TagsOutlined,{className:`v1-input-icon`}),firstName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),lastName:(0,o.jsx)(a.UserOutlined,{className:`v1-input-icon`}),jobTitle:(0,o.jsx)(a.SolutionOutlined,{className:`v1-input-icon`}),jobLocation:(0,o.jsx)(a.EnvironmentOutlined,{className:`v1-input-icon`}),vendorEmail:(0,o.jsx)(a.MailOutlined,{className:`v1-input-icon`})},bl=e=>e===!0||e===1||e===`1`,xl=(t,n)=>(t?.edit===void 0||bl(t.edit))&&(!t?.editablePermission||e.d(t.editablePermission,n)),Sl=e=>e==null||e===``;function Cl(e){return e==null||e===``?!1:Array.isArray(e)?e.length>0&&e.some(Cl):typeof e==`object`?Object.values(e).some(Cl):!0}function wl(e=``){let t=String(e).toLowerCase();return t===`job`?`jobs`:t===`candidate`?`candidates`:t===`submissions`?`submission`:t}function Tl(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 El(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 bl(t);case`falsy`:return!bl(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}}function Dl({form:e,showIf:t,render:n}){return El(t,i.Form.useWatch(t.field,e))?n():null}function Ol(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function kl({field:e,label:t,locked:n}){if(!t)return t;let r=bl(e?.infoEnabled)&&!Sl(e?.infoText);return!r&&!n?t:(0,o.jsxs)(`span`,{className:`v1-field-label-with-info`,children:[(0,o.jsx)(`span`,{children:t}),r&&(0,o.jsx)(i.Tooltip,{title:e.infoText,children:(0,o.jsx)(a.InfoCircleOutlined,{className:`v1-field-info-icon`})}),n&&(0,o.jsx)(i.Tooltip,{title:`You don't have permission to edit this field`,children:(0,o.jsx)(a.LockOutlined,{className:`v1-field-info-icon`})})]})}function Al({group:e}){return!bl(e?.infoEnabled)||Sl(e?.infoText)?null:(0,o.jsx)(dl,{type:`secondary`,className:`v1-group-info-message`,children:e.infoText})}function jl({group:e}){return!bl(e?.toggleEnabled)||Sl(e?.toggleField)?null:(0,o.jsxs)(i.Space,{size:6,align:`center`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(dl,{type:`secondary`,className:`v1-combine-toggle-label`,children:e.toggleLabel||`Toggle`}),(0,o.jsx)(i.Form.Item,{name:e.toggleField,valuePropName:`checked`,initialValue:!!e.toggleValue,noStyle:!0,children:(0,o.jsx)(i.Switch,{size:`small`})})]})}function Ml(t=[],n,r,i){let a=i??new Set;return[...t].filter(t=>!bl(t.hideGroup)&&e.Y(r,t.name)).sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(t=>({...t,fields:[...t.fields??[]].map(e=>a.has(e.field)?{...e,show:1,req:1}:e).filter(i=>String(i.field??``).trim()!==``&&(!i.visiblePermission||e.d(i.visiblePermission,n))&&e.q(r,t.name,i.field)).map(n=>e.J(r,t.name,n.field)?n:{...n,disabled:!0}).sort((e,t)=>Number(e.order??0)-Number(t.order??0))})).filter(e=>e.fields.length)}function Nl(e){return String(e??``).replace(/<[^>]*>/g,``).replace(/&nbsp;/g,` `).replace(/&amp;/g,`&`).replace(/&lt;/g,`<`).replace(/&gt;/g,`>`).trim()}function Pl(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 Fl=({label:e,message:t,value:n,compare:r,text:i})=>({validator:(a,o)=>Sl(o)||r(Number(o),Number(n))?Promise.resolve():Promise.reject(Error(t??`${e} ${i} ${n}`))});function Il(e,t){let n=String(t).split(`.`).filter(Boolean);if(!Array.isArray(e))return n.length>1?n:t;if(n.length>1){if(e.length>=3&&typeof e[1]==`number`){let t=e.slice(0,2),r=n[0]===String(e[0])?n.slice(1):n;return[...t,...r]}return n}let r=[...e];return r[r.length-1]=n[0],r}function Ll(e){if(!e)return null;if(typeof e.valueOf==`function`){let t=e.valueOf();return Number.isNaN(t)?null:t}let t=new Date(e).getTime();return Number.isNaN(t)?null:t}function Rl(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.startOf(`day`).valueOf():null}function zl(e){if(!e)return null;let t=(0,c.default)(e);return t.isValid()?t.hour()*60+t.minute():null}var Bl=({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||Sl(l))return Promise.resolve();let d=i.getFieldValue(Il(a,u));if(Sl(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}`))}}),Vl={noPastDate:({label:e,message:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=new Date;return i.setHours(0,0,0,0),Ll(r)<i.getTime()?Promise.reject(Error(t??`${e} cannot be a past date`)):Promise.resolve()}}),noFutureDate:({label:e,message:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=new Date;return i.setHours(23,59,59,999),Ll(r)>i.getTime()?Promise.reject(Error(t??`${e} cannot be a future date`)):Promise.resolve()}}),minAge:({message:e,value:t})=>({validator:(n,r)=>{if(Sl(r))return Promise.resolve();let i=Number(t??18),a=new Date;return a.setFullYear(a.getFullYear()-i),a.setHours(23,59,59,999),Ll(r)>a.getTime()?Promise.reject(Error(e??`Must be at least ${i} years old`)):Promise.resolve()}}),dateAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=Rl(s),d=Rl(l);return u===null||d===null||u>=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or after ${c}`))}}),dateBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=Rl(s),d=Rl(l);return u===null||d===null||u<=d?Promise.resolve():Promise.reject(Error(t??`${e} must be on or before ${c}`))}}),timeAfterField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=zl(s),d=zl(l);return u===null||d===null||u>d?Promise.resolve():Promise.reject(Error(t??`${e} must be after ${c}`))}}),timeBeforeField:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{let c=n??r.compareField??r.field;if(!c||Sl(s))return Promise.resolve();let l=i.getFieldValue(Il(a,c));if(Sl(l))return Promise.resolve();let u=zl(s),d=zl(l);return u===null||d===null||u<d?Promise.resolve():Promise.reject(Error(t??`${e} must be before ${c}`))}}),greaterThanField:e=>Bl({...e,compare:(e,t)=>e>=t,text:`must be greater than or equal to`}),strictGreaterThanField:e=>Bl({...e,compare:(e,t)=>e>t,text:`must be greater than`}),strictLessThanField:e=>Bl({...e,compare:(e,t)=>e<t,text:`must be less than`}),lessThanOrEqualField:e=>Bl({...e,compare:(e,t)=>e<=t,text:`must be less than or equal to`}),maxFieldWithFallback:({label:e,message:t,value:n,rule:r,form:i,name:a})=>({validator:async(o,s)=>{if(Sl(s))return Promise.resolve();let c=String(n??r.compareFields??``).split(`,`).map(e=>e.trim()).filter(Boolean).find(e=>!Sl(i.getFieldValue(Il(a,e))));if(!c)return Promise.resolve();let l=Number(i.getFieldValue(Il(a,c))),u=Number(s);return Number.isNaN(l)||Number.isNaN(u)||u<=l?Promise.resolve():Promise.reject(Error(t??`${e} must not exceed ${c}`))}}),required:({field:e,message:t,form:n,name:r})=>({validator:(i,a)=>{if(e?.disabledByField&&n&&r&&bl(n.getFieldValue(Ul(r,e.disabledByField))))return Promise.resolve();let o=a==null||a===``||Array.isArray(a)&&a.length===0;return!o&&e?.type===`text-editor`&&(o=Nl(a)===``),o?Promise.reject(Error(t??`Mandatory Field`)):Promise.resolve()}}),email:({label:t,message:n})=>e.v(t,n),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})=>({pattern:/^[0-9]{10}$/,message:e??`Phone number must contain exactly 10 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`?Fl({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`?Nl(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`?Fl({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`?Nl(a):String(a);return o===``||o.length<=Number(r)?Promise.resolve():Promise.reject(Error(n??`${t} must not exceed ${r} characters`))}}};function Hl(e,t,n,r){let i=typeof e==`string`?{type:e}:e,a=i.type??i.rule??i.name,o=i.value??i.length??i.min??i.max,s=t.label??t.field??`Field`,c=Vl[a];return c?c({field:t,label:s,message:i.message,rule:i,value:o,form:n,name:r}):i}function Ul(e,t){return Array.isArray(e)&&e.length>1?[...e.slice(0,-1),t]:[t]}function Wl(e){return bl(e?.req)?!0:(e?.validations??e?.validation??e?.rules??[]).some(e=>(typeof e==`string`?e:e?.type)===`required`)}function Gl(t,n,r,i=!1){let a=t.label??t.field??`Field`,o=t.validations??t.validation??t.rules??[],s=o.some(e=>(typeof e==`string`?e:e?.type)===`required`),c=o.some(e=>(typeof e==`string`?e:e?.type)===`email`),l=[];return!i&&bl(t.req)&&!s&&l.push(Vl.required({field:t,message:`Mandatory Field`,form:n,name:r})),(t.type===`email`||t.formatter===`email`)&&!c&&l.push(e.v(a)),t.type===`number`&&l.push(bl(t.decimal)?{pattern:/^\d+(\.\d+)?$/,message:`${a} must be a number`}:{pattern:/^[0-9]+$/,message:`${a} must be a number`}),[...l,...o.map(e=>Hl(e,t,n,r)),e.K(t)]}function Kl(e,t){let n=new Set([`greaterThanField`,`strictGreaterThanField`,`strictLessThanField`,`lessThanOrEqualField`,`maxFieldWithFallback`,`dateAfterField`,`dateBeforeField`,`timeAfterField`,`timeBeforeField`]);return(e.validations??e.validation??e.rules??[]).filter(e=>n.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=>Il(t,e)))}function ql(e){let t=e.len??Pl(e,`len`),n=e.min??Pl(e,`min`),r=e.max??Pl(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 Jl(e,t,n){let r=e.validations??e.validation??e.rules??[],i=[];for(let e of r){let r=typeof e==`string`?e:e?.type;if(r===`noPastDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(0,0,0,0),Ll(e)<t.getTime()}),r===`noFutureDate`&&i.push(e=>{if(!e)return!1;let t=new Date;return t.setHours(23,59,59,999),Ll(e)>t.getTime()}),r===`minAge`){let t=Number(e?.value??18);i.push(e=>{if(!e)return!1;let n=new Date;return n.setFullYear(n.getFullYear()-t),n.setHours(23,59,59,999),Ll(e)>n.getTime()})}if(r===`dateAfterField`||r===`dateBeforeField`){let a=e?.value??e?.compareField??e?.field;if(!a)continue;i.push(e=>{if(!e)return!1;let i=t.getFieldValue(Il(n,a));if(Sl(i))return!1;let o=Rl(e),s=Rl(i);return o===null||s===null?!1:r===`dateAfterField`?o<s:o>s})}}return i.length?e=>i.some(t=>t(e)):void 0}function Yl(e){let t=e.validations??e.validation??e.rules??[];for(let e of t){let t=typeof e==`string`?e:e?.type;if(t===`minAge`)return(0,c.default)().subtract(Number(e?.value??18),`year`);if(t===`noFutureDate`||t===`noPastDate`)return(0,c.default)()}}function Xl(e,t){return t?t===`phone`||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 Zl({field:n,form:s,name:c,value:l,checked:u,fileList:d,moduleName:f,initialValue:p,scopeValues:m={},onAiUpload:h,formDisabled:g}){let _=n.type??`text`,v=!xl(n,f),[y,b]=(0,r.useState)(null),[x,S]=(0,r.useState)(!1),[C,w]=(0,r.useState)(``),[T,E]=(0,r.useState)(``),[D,O]=(0,r.useState)(``),[k,A]=(0,r.useState)({open:!1,docs:[],index:0}),[j,M]=(0,r.useState)(null),[N,P]=(0,r.useState)(0),F=(0,r.useRef)([]),I=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`,L=n.lookupFilterValueFrom?e.w(n.lookupFilterValueFrom):[`__lookup_filter_${n.field}`],R=n.lookupFilterValueFrom&&I?[...c.slice(0,2),...e.w(n.lookupFilterValueFrom)]:[`__noop_row_filter__`],z=i.Form.useWatch(L,s),B=i.Form.useWatch(R,s),V=Sl(B)?z:B,H=n.lookupFilterValueFrom?m[n.lookupFilterValueFrom]:void 0,U=Sl(H)?V:H,W=n.disabledByField?Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.disabledByField]:[n.disabledByField]:[`__noop_disabled_watch__`],G=i.Form.useWatch(W,s),ee=n.disabledIf?.field?e.w(n.disabledIf.field):[`__noop_disabled_if__`],te=n.disabledIf?.field&&I?[...c.slice(0,2),...e.w(n.disabledIf.field)]:[`__noop_disabled_if_row__`],K=i.Form.useWatch(ee,s),ne=i.Form.useWatch(te,s),re=n.disabledIf?.field?e.r(n.disabledIf,Sl(ne)?K:ne):!1,q=v||!!n.disabled||re||(n.disabledByField?bl(G):!1)||!!g;(0,r.useEffect)(()=>{if(_===`location`){let e=!1;async function r(){try{S(!0);let r=await t.i(t.v,`/admin/location-dropdown-values?${new URLSearchParams({search:C,limit:String(n.limit??50),offset:`0`})}`),i=r?.data??r??[];e||b(Tl(Array.isArray(i)?i:[]))}catch(t){console.error(`[EditFormV1] Failed to fetch locations for "${n.field}":`,t),e||b([])}finally{e||S(!1)}}return r(),()=>{e=!0}}let r=n.dataSource;if(![`select`,`radio`,`checkbox`].includes(_)||!r||r===`static`)return;if(r===`lookup`&&n.lookupFilterField&&Sl(U)){b([]),S(!1);return}let i=!1;async function a(){try{S(!0);let a=[];if(r===`master`||r===`module`)a=await e.Cn(f,n.field,r===`master`?D:``,n.limit??50,0,{dataSource:r,masterName:n.masterName,groupName:n.groupName});else if(r===`lookup`){let e=new URLSearchParams({collection:n.lookupCollection??``,displayField:n.displayField??``,valueField:n.valueField??`_id`});n.displayField2&&e.set(`displayField2`,n.displayField2),T&&e.set(`search`,T),n.lookupFilterField&&!Sl(U)&&(e.set(`filterField`,n.lookupFilterField),e.set(`filterValue`,String(U))),n.extraFields?.length&&e.set(`extraFields`,n.extraFields.join(`,`));let r=await t.i(t.v,`/admin/lookup-dropdown-values?${e}`);a=r?.data??r??[],n.optionsRequireExtraField&&(a=a.filter(e=>e?.extraData?.[n.optionsRequireExtraField]===!0))}else if(r===`group`){let e=String(n.groupName??``).toLowerCase().trim();if(e===`users`||e===`user`){let e=await t.i(t.v,`/get-all-users?limit=500&offset=0`),n=e?.data?.users??e?.users??e?.data??[];a=Array.isArray(n)?n.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||(F.current=Array.isArray(a)?a:[],b(Tl(F.current)))}catch(e){console.error(`[EditFormV1] Failed to fetch options for "${n.field}":`,e),i||b([])}finally{i||S(!1)}}return a(),()=>{i=!0}},[_,n.dataSource,n.field,n.lookupCollection,n.displayField,n.displayField2,n.valueField,n.lookupFilterField,U,n.groupName,n.masterName,n.limit,C,T,D,f,n.extraFields,n.optionsRequireExtraField,N]);let J=Tl([n.options,n.values].find(e=>Array.isArray(e)&&e.length>0)??ll(n)),ie=y??J,ae=(n.multiSelect?`multiple`:n.mode??(bl(n.multiple)?`multiple`:void 0))??(e.V(n)===`array`?`multiple`:void 0),oe=[`select`,`location`].includes(_),Y=n.hidePlaceholder?void 0:n.placeholder??`${oe?`Select`:`Enter`} ${String(n.label??``).toLowerCase()}`,se=ql(n),ce=()=>{setTimeout(()=>{s.validateFields([c]).catch(()=>{})})},le=e=>{s.setFieldValue(c,e),ce()},ue=e.f({field:n,form:s,name:c,moduleName:f,scopeValues:m,ownValue:l,onDone:(t,r)=>{P(e=>e+1);let i=e.V(n)!==`array`&&!n.multiSelect&&!n.multiple;t===`create`&&r!=null&&i&&le(e.G(n)?{value:r}:r)}}),de=n.validator?.type?{...n.validator,title:n.validator.title||n.label||`Field`}:null,fe={...se,value:l,disabled:q,placeholder:Y,prefix:n.icon?null:yl[n.field],onChange:t=>{let r=n.formatter?Xl(t.target.value,n.formatter):t.target.value;if(de){let{cleaned:t,error:n}=e.g(r,de,`change`);M(n),r=t}le(r)},...de&&{onBlur:t=>{let{cleaned:n,error:r}=e.g(t.target.value,de,`blur`);M(r),n!==t.target.value&&le(n)},onKeyPress:t=>{let n=e._(de.type);if(!n||t.which===0||t.keyCode===8||t.keyCode===13)return;let r=String.fromCharCode(t.which??t.keyCode);if(!n.test(r)){t.preventDefault();let e=`${de.title} — invalid character.`;M(e),setTimeout(()=>M(t=>t===e?null:t),1800)}},maxLength:de.maxLength??se.maxLength}};if(_===`tagify`)return(0,o.jsx)(i.Select,{value:l,allowClear:!0,disabled:q,mode:`tags`,placeholder:Y,onChange:le});if(_===`location`)return(0,o.jsx)(i.Select,{value:l,allowClear:!0,showSearch:!0,filterOption:!1,disabled:q,loading:x,options:ie,placeholder:Y,notFoundContent:x?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:w,onFocus:()=>w(e=>e),onChange:le});if(_===`select`){let t=n.dataSource===`lookup`,r=n.dataSource===`master`,a=t||r,u=n.dataSource===`group`,d=e.G(n),f=e.W(n,l,ie);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Select,{value:f,allowClear:!0,disabled:q,loading:x,labelInValue:d||void 0,showSearch:a||u||void 0,optionFilterProp:`label`,filterOption:a?!1:void 0,mode:ae,options:ie,placeholder:Y,notFoundContent:x?(0,o.jsx)(i.Spin,{size:`small`}):void 0,onSearch:t?E:r?O:void 0,onChange:t=>{if(le(t),n.autofillFrom?.length){let r=t&&!Array.isArray(t)&&typeof t==`object`?t.value:t,i=Array.isArray(c)&&c.length>=3&&typeof c[1]==`number`;if(t==null)n.autofillFrom.forEach(({targetField:t})=>{let n=i?[...c.slice(0,2),...e.w(t)]:e.w(t);s.setFieldValue(n,null)});else if(F.current.length>0){let t=n.valueField??`_id`,a=F.current.find(e=>Ol(e,t)===r||e._id===r||e.id===r||e.value===r);a&&n.autofillFrom.forEach(({optionKey:t,targetField:n})=>{let r=Ol(a,t)??a.extraData?.[t]??null,o=i?[...c.slice(0,2),...e.w(n)]:e.w(n);s.setFieldValue(o,r)})}}},dropdownRender:ue.footer?e=>(0,o.jsxs)(o.Fragment,{children:[e,ue.footer]}):void 0}),ue.modal]})}if(_===`radio`)return(0,o.jsx)(i.Radio.Group,{value:l,disabled:q,options:ie,onChange:e=>le(e.target.value)});if(_===`checkbox`)return ie.length>0?(0,o.jsx)(i.Checkbox.Group,{value:l,disabled:q,options:ie,onChange:le}):(0,o.jsx)(i.Checkbox,{checked:u,disabled:q,onChange:e=>{let t=e.target.checked;if(le(t),n.linkedClearField&&t){let e=Array.isArray(c)&&c.length>1?[...c.slice(0,-1),n.linkedClearField]:[n.linkedClearField];s.setFieldValue(e,null)}},children:n.checkboxLabel??n.label});if(_===`text-editor`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.kn,{value:l??p??``,disabled:q,placeholder:Y,onChange:t=>{if(de){let{error:n}=e.g(t,de,`change`);M(n)}le(t)}}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]});if(_===`textarea`)return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(fl,{...fe,rows:n.rows??3,className:`v1-scroll-textarea`}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]});if(_===`date`)return(0,o.jsx)(i.DatePicker,{value:l,disabled:q,placeholder:Y,style:{width:`100%`},suffixIcon:(0,o.jsx)(a.CalendarOutlined,{}),disabledDate:Jl(n,s,c),defaultPickerValue:Yl(n),onChange:e=>le(e)});if(_===`time`)return(0,o.jsx)(i.TimePicker,{value:l,disabled:q,placeholder:Y,style:{width:`100%`},onChange:e=>le(e)});if(_===`file`){let t=n.validations??n.validation??n.rules??[],r=t.find(e=>(typeof e==`string`?e:e?.type)===`fileType`),s=t.find(e=>(typeof e==`string`?e:e?.type)===`fileSize`),c=t.find(e=>(typeof e==`string`?e:e?.type)===`maxFiles`),u=e.m(n),d=u?u.exts.map(e=>`.${e}`).join(`,`):r?.value?r.value.split(`,`).map(e=>`.${e.trim().replace(/^\./,``)}`).join(`,`):void 0,f=s?Number(s?.value??5):void 0,p=c?Number(c?.value??1):bl(n.multiple)?n.maxCount??5:1,m=Array.isArray(l)?l:[],g=m.length<p,_=e=>e?e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(2)} MB`:``,v=e=>{let t=(e??``).split(`.`).pop()?.toLowerCase();return t===`pdf`?(0,o.jsx)(a.FilePdfOutlined,{className:`v1-file-type-icon v1-file-icon-pdf`}):[`doc`,`docx`].includes(t)?(0,o.jsx)(a.FileWordOutlined,{className:`v1-file-type-icon v1-file-icon-word`}):[`xls`,`xlsx`,`csv`].includes(t)?(0,o.jsx)(a.FileExcelOutlined,{className:`v1-file-type-icon v1-file-icon-excel`}):[`jpg`,`jpeg`,`png`,`gif`,`svg`,`webp`].includes(t)?(0,o.jsx)(a.FileImageOutlined,{className:`v1-file-type-icon v1-file-icon-image`}):(0,o.jsx)(a.FileOutlined,{className:`v1-file-type-icon v1-file-icon-default`})},y=e=>{le(m.filter((t,n)=>n!==e))},b=(t,n)=>{A({open:!0,docs:m.map(t=>{let n=t.url??t.thumbUrl??``;return!n&&t.originFileObj instanceof File&&(n=URL.createObjectURL(t.originFileObj)),n&&!n.startsWith(`http`)&&!n.startsWith(`blob:`)&&(n=e.O(n)),{url:n,name:t.name??`file`}}).filter(e=>e.url),index:n??0})},x=p>1,S=p-m.length,C=[u?u.hint:d?d.split(`,`).map(e=>e.replace(`.`,``).toUpperCase()).join(`, `):null,f?`up to ${f} MB`:null].filter(Boolean).join(` `),w=x&&m.length>0?[C,`${S} of ${p} remaining`].filter(Boolean).join(` • `):C,T=m.length>0?`Add ${x?`more files`:`file`}`:n.buttonLabel??`Upload ${n.label??`File`}`,E=e=>{if(m.length>=p)return i.Upload.LIST_IGNORE;if(d){let t=(e.name.split(`.`).pop()??``).toLowerCase();if(!d.split(`,`).map(e=>e.replace(/^\./,``).toLowerCase()).includes(t))return i.message.error(u?u.error:r?.message??`Only ${r.value} files are allowed`),i.Upload.LIST_IGNORE}return f!==void 0&&e.size/1024/1024>f?(i.message.error(s?.message??`File must be smaller than ${f} MB`),i.Upload.LIST_IGNORE):!1},D=({fileList:e})=>{let t=e.slice(0,p);if(le(t),h&&t.length>m.length){let e=t[t.length-1];e?.originFileObj&&h(e.originFileObj)}},O={accept:d,fileList:m,showUploadList:!1,multiple:!0,maxCount:p,beforeUpload:E,onChange:D,disabled:q},j=m.map((e,t)=>(0,o.jsxs)(`div`,{className:`v1-file-item`,children:[(0,o.jsx)(`div`,{className:`v1-file-item-icon`,children:v(e.name)}),(0,o.jsxs)(`div`,{className:`v1-file-item-info`,children:[(0,o.jsx)(`span`,{className:`v1-file-item-name`,children:e.name}),(0,o.jsx)(`span`,{className:`v1-file-item-meta`,children:e.existing?`Previously uploaded`:`${_(e.size)}${e.size?` • `:``}Uploaded just now`})]}),(0,o.jsxs)(i.Space,{size:6,className:`v1-file-item-actions`,children:[(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),onClick:()=>b(e,t),className:`v1-file-view-btn`,children:`View`}),(0,o.jsx)(i.Button,{size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>y(t),className:`v1-file-delete-btn`})]})]},e.uid??t)),M=(0,o.jsx)(e.On,{documents:k.docs,open:k.open,onClose:()=>A(e=>({...e,open:!1})),initialIndex:k.index});if(x){let e=m.length>0?`Upload more ${n.label??`files`}`:n.buttonLabel??`Upload ${n.label??`File`}`;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[g&&(0,o.jsx)(i.Upload,{...O,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-center${q?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsxs)(`div`,{className:`v1-upload-dropzone-title-row`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon v1-upload-cloud-icon-sm`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title v1-upload-dropzone-title-blue`,children:e})]}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:`Drag & drop or click to upload`}),C&&(0,o.jsx)(`span`,{className:`v1-upload-dropzone-sub`,children:C})]})}),m.length>0&&(0,o.jsx)(`div`,{className:`v1-file-grid`,children:j}),g&&m.length>0&&(0,o.jsx)(i.Upload,{...O,style:{display:`inline-block`},children:(0,o.jsx)(i.Button,{type:`link`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),className:`v1-add-more-files-btn`,children:`Add more files`})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`v1-file-upload-wrapper`,children:[m.length>0&&(0,o.jsx)(`div`,{className:`v1-file-rows-single`,children:j}),g&&(0,o.jsx)(i.Upload,{accept:d,fileList:m,showUploadList:!1,multiple:!1,maxCount:1,beforeUpload:E,onChange:D,disabled:q,style:{width:`100%`,display:`block`},children:(0,o.jsxs)(`div`,{className:`v1-upload-dropzone v1-upload-dropzone-single${q?` v1-upload-dropzone-disabled`:``}`,children:[(0,o.jsx)(a.CloudUploadOutlined,{className:`v1-upload-cloud-icon`}),(0,o.jsx)(`span`,{className:`v1-upload-dropzone-title`,children:T}),w&&(0,o.jsxs)(`span`,{className:`v1-upload-dropzone-sub`,children:[`— `,w]})]})})]}),M]})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Input,{...fe,type:_===`number`?`number`:_,..._===`number`&&bl(n.decimal)?{step:`any`}:{},...n.suffix?{suffix:n.suffix}:{}}),j&&(0,o.jsx)(`div`,{className:`v1-input-validator-hint`,children:j})]})}function Ql({icon:e,title:t}){return(0,o.jsxs)(i.Space,{size:10,align:`center`,children:[(0,o.jsx)(`div`,{className:`v1-section-icon-box`,children:e}),(0,o.jsx)(dl,{strong:!0,className:`v1-section-label`,children:t})]})}function $l({moduleName:t,recordId:n,clientId:c,region:l,breadcrumbItems:u=[],submitText:d=`Save Changes`,cancelPath:f,onSuccess:p,fieldNameMap:m={},onFileUpload:h=null,onBeforeSubmit:g=null,extraPayload:_=null,embedded:v=!1,onCancel:y=null}){let b=(0,s.useNavigate)(),[x]=i.Form.useForm(),[S,C]=(0,r.useState)({}),[w,T]=(0,r.useState)([]),[E,D]=(0,r.useState)(!1),[O,k]=(0,r.useState)(``),[A,j]=(0,r.useState)(!1),[M,N]=(0,r.useState)(``),[P,F]=(0,r.useState)(null),[I,L]=(0,r.useState)(()=>new Set);(0,r.useEffect)(()=>{let n=!1;return queueMicrotask(()=>{if(!n){if(!t){F(null);return}e.Gt({roleId:localStorage.getItem(`roleId`)},t,{clientId:c,region:l}).then(e=>{n||F(Array.isArray(e)&&e.length?e:null)}).catch(()=>{n||F(null)})}}),()=>{n=!0}},[t,c,l]),(0,r.useEffect)(()=>{let n=!1;return queueMicrotask(()=>{if(!n){if(!t){L(new Set);return}e.Vt(t).then(e=>{n||L(new Set(Array.isArray(e)?e:[]))}).catch(()=>{n||L(new Set)})}}),()=>{n=!0}},[t]);let R=(0,r.useMemo)(()=>Ml(w,t,P,I),[w,t,P,I]),z=(0,r.useMemo)(()=>e.P(R),[R]),B=(0,r.useRef)({}),V=e.x({form:x,groups:R,module:t}),H=(0,r.useMemo)(()=>{let t={};return R.forEach(n=>{n.addRow&&(t[n.name]=e.C(n))}),e.I(z,t)},[R,z]),U={jobs:{list:`Jobs`,path:`/jobs`,edit:`Edit Job`},candidates:{list:`Candidates`,path:`/candidates`,edit:`Edit Candidate`},submissions:{list:`Submissions`,path:`/submissions`,edit:`Edit Submission`}},W=v?[]:u.length>0?u:(()=>{let e=U[wl(t)];return e?[{label:`Home`,href:`/`},{label:e.list,href:e.path},{label:e.edit}]:[]})();(0,r.useEffect)(()=>{if(!t||!n)return;let r=!1;async function i(){try{D(!0),k(``),N(``);let i=await e.Sn({module:t,id:n,clientId:c,region:l});if(r)return;T(Array.isArray(i)?i:[])}catch(e){console.error(`Failed to fetch ${t} edit data:`,e),r||k(e?.message||`Failed to load record`)}finally{r||D(!1)}}return i(),()=>{r=!0}},[t,n,c,l]),(0,r.useEffect)(()=>{E||R.length===0||e.S(x,R)},[E,R,x]);let G=e=>{C(t=>({...t,[e]:!t[e]}))};function ee(n){let r=e.R(n,R,{module:t});return Object.entries(m).forEach(([e,t])=>{r[e]!==void 0&&(r[t]=r[e],delete r[e])}),r}async function te(r){if(!(g&&await Promise.resolve().then(()=>g(r)).catch(()=>!1)===!1))try{j(!0),N(``);let a=e.B(r,R,{indexed:!0,module:t});if(h&&h.useLegacyUpload){let e=R.flatMap(e=>e.fields??[]).filter(e=>e.type===`file`);for(let t of e){let e=r[t.field];if(!Array.isArray(e))continue;let i=e.filter(e=>e.originFileObj instanceof File);try{await Promise.all(i.map(e=>h(t.field,e.originFileObj,n)))}catch(e){console.warn(`File upload failed — continuing with save:`,e)}}}await e.nt(t,n,{...ee(r),..._??{}},h?.useLegacyUpload?[]:a);let o=e.s(R,t,`edit`);if(o&&i.message.success(o),p)p(n,r);else{let t=e.c(R);t?t.mode===`back`?b(-1):(t.mode===`route`||t.mode===`detail`)&&b(e.l(t.target,n,r)||f||-1):b(f||-1)}}catch(n){console.error(`Failed to update ${t}:`,n);let r=e.o(R,t,`edit`,n?.message);N(r),i.message.error(r)}finally{j(!1)}}let K=t=>{C({}),e.a(t,x)},[ne,re]=(0,r.useState)({}),q=e=>String(e?.field??``),J=(e,t,n)=>{if(!e?.field)return!0;let r=t(n==null?[e.field]:[...Array.isArray(n)?n:[n],e.field]);switch(e.operator){case`eq`:return String(r??``)===String(e.value??``);case`neq`:return String(r??``)!==String(e.value??``);case`truthy`:return r!=null&&r!==``&&r!==!1;case`falsy`:return r==null||r===``||r===!1;case`notEmpty`:return Array.isArray(r)?r.length>0:!!r;case`in`:return String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));case`notIn`:return!String(e.value??``).split(`,`).map(e=>e.trim()).includes(String(r??``));default:return!0}},ie=(n,a,s,l={})=>{let u=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):null,d=u??n.field,f=a===void 0?d:[a,...u??[n.field]],p=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],...Array.isArray(f)?f:[f]]:f,m=n.type===`checkbox`&&(n.options&&n.options.length>0||n.dataSource&&n.dataSource!==`static`),h=!m&&n.type===`checkbox`?`checked`:`value`,g=!!n.editablePermission&&!e.d(n.editablePermission,t),_=s!==void 0&&a!==void 0?[...Array.isArray(s)?s:[s],a]:null,v=e=>_&&(!l.rowFieldKeys||l.rowFieldKeys.has(e))?_:null,y=l.inline||l.hideLabel||!m&&n.type===`checkbox`?``:(0,o.jsx)(hl,{form:x,field:n,siblingPrefix:n.labelWhen?.field?v(n.labelWhen.field):_,locked:g}),b=l.inline||n.type===`text-editor`||n.type===`file`&&bl(n.multiple)?24:n.col??12,S=Kl(n,p),C=l.inline?{flex:`${Number(n.combineWidth)>0?Number(n.combineWidth):1} 1 0`,maxWidth:`none`}:void 0,w=(n.aiActions||[]).filter(e=>e.trigger===`click`),T=(n.aiActions||[]).find(e=>e.trigger===`upload`),E=(0,o.jsx)(i.Form.Item,{label:y,name:f,extra:n.helpText?(0,o.jsx)(dl,{type:`secondary`,className:`v1-field-help-text`,children:n.helpText}):void 0,required:Wl(n),rules:Gl(n,x,p),dependencies:S,valuePropName:h,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,validateTrigger:[`onBlur`,`onChange`],children:(0,o.jsx)(Zl,{field:n,form:x,name:p,moduleName:t,initialValue:n.value,scopeValues:{clientId:c},onAiUpload:T?e=>V.runAction(l.groupNameForActions,n,T,e):void 0,formDisabled:V.busy})}),D=w.length>0?(()=>{let t=e.b(w),r=r=>(0,o.jsx)(e.y,{position:r,actions:t[r],aiActions:V,groupName:l.groupNameForActions,field:n},r);return(0,o.jsxs)(`div`,{className:`v1-ai-action-wrap`,children:[r(`top-left`),r(`top-center`),r(`top-right`),E,r(`bottom-left`),r(`bottom-center`),r(`bottom-right`)]})})():E,O=n.verifyAction?(0,o.jsxs)(`div`,{className:`v1-verify-field-row`,children:[D,(0,o.jsx)(ml,{form:x,field:n,absoluteName:p})]}):D,k=n.prefillWhen?.length?(0,o.jsx)(_l,{form:x,rules:n.prefillWhen,watchPath:v(n.prefillWhen[0].field)?[..._,n.prefillWhen[0].field]:e.w(n.prefillWhen[0].field),targetPath:p,resetOnNoMatch:n.prefillWhenReset!==!1},`${n.field}-prefillWhen`):null;return n.showIf?.field?(0,o.jsxs)(r.default.Fragment,{children:[k,(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e})=>J(n.showIf,e,v(n.showIf.field))?(0,o.jsx)(i.Col,{xs:24,md:b,style:C,className:l.inline?`v1-combine-cell`:void 0,children:O}):null})]},n.field):(0,o.jsxs)(r.default.Fragment,{children:[k,(0,o.jsx)(i.Col,{xs:24,md:b,style:C,className:l.inline?`v1-combine-cell`:void 0,children:O})]},n.field)},ae=n=>{let r=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):[n.field],s=!!n.editablePermission&&!e.d(n.editablePermission,t),l=(0,o.jsx)(kl,{field:n,label:n.label,locked:s}),u=e.U(n),d=Array.isArray(n.subFields)&&n.subFields.length>0,f=d?n.subFields.map(e=>({...e,show:1,edit:1})):null,p=Math.max(0,Number(n.minRows??0)||0),m=n.maxRows!==void 0&&n.maxRows!==``&&Number(n.maxRows)>0?Number(n.maxRows):0,h=e.z(n,n.value);return(0,o.jsx)(i.Col,{xs:24,md:24,children:(0,o.jsx)(i.Form.Item,{label:l,required:Wl(n),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:r,initialValue:h,rules:[{validator:async(e,t=[])=>{if(Wl(n)&&!(d?t.some(e=>Cl(e)):t.some(e=>e!=null&&e!==``&&!(Array.isArray(e)&&e.length===0))))throw Error(`Mandatory Field`);if(p>0&&t.length<p)throw Error(`Keep at least ${p} ${d?`row`:`value`}${p>1?`s`:``}.`)}}],children:(e,{add:s,remove:l},{errors:h})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:s,name:m})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>l(m),disabled:e.length<=p,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:d?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(f,m,r[0],!1,n.field)}):(0,o.jsx)(i.Form.Item,{name:[m],noStyle:!0,valuePropName:n.type===`checkbox`&&!n.options?.length?`checked`:`value`,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Gl(u,x,[...r,m],!1),children:(0,o.jsx)(Zl,{field:u,form:x,name:[...r,m],moduleName:t,scopeValues:{clientId:c},formDisabled:V.busy})})})]},s)),(!m||e.length<m)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>s(),className:`v1-addrow-add-btn`,children:n.addLabel??`Add ${n.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:h})]})})})},n.field)},oe=(n,r,s)=>{let l=typeof n.field==`string`&&n.field.includes(`.`)?n.field.split(`.`):[n.field],u=!!n.editablePermission&&!e.d(n.editablePermission,t),d=(0,o.jsx)(kl,{field:n,label:n.label,locked:u}),f=e.U(n),p=Array.isArray(n.subFields)&&n.subFields.length>0,m=p?n.subFields.map(e=>({...e,show:1,edit:1})):null,h=Math.max(0,Number(n.minRows??0)||0),g=n.maxRows!==void 0&&n.maxRows!==``&&Number(n.maxRows)>0?Number(n.maxRows):0,_=[r,...l],v=[...Array.isArray(s)?s:[s],r,...l],y=e.z(n,void 0);return(0,o.jsx)(i.Col,{xs:24,md:p?24:n.col??24,children:(0,o.jsx)(i.Form.Item,{label:d,required:Wl(n),colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.List,{name:_,initialValue:y,rules:p?[{validator:async(e,t=[])=>{if(Wl(n)&&!t.some(e=>Cl(e)))throw Error(`Mandatory Field`);if(h>0&&t.length<h)throw Error(`Keep at least ${h} row${h>1?`s`:``}.`)}}]:[],children:(e,{add:r,remove:s},{errors:l})=>(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[e.map(({key:r,name:l})=>{let u=[...v,l];return(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>s(l),disabled:e.length<=h,className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:p?(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(m,l,v,!1,n.field)}):(0,o.jsx)(i.Form.Item,{name:[l],noStyle:!0,valuePropName:n.type===`checkbox`&&!n.options?.length?`checked`:`value`,getValueFromEvent:n.type===`file`?e=>Array.isArray(e)?e:e?.fileList:void 0,rules:Gl(f,x,u,!1),children:(0,o.jsx)(Zl,{field:f,form:x,name:u,moduleName:t,scopeValues:{clientId:c},formDisabled:V.busy})})})]},r)}),(!g||e.length<g)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>r(),className:`v1-addrow-add-btn`,children:n.addLabel??`Add ${n.label??`Value`}`}),(0,o.jsx)(i.Form.ErrorList,{errors:l})]})})})},`${s}-${r}-${n.field}`)},Y=(e,t,n,r=!1,a)=>{let s=new Set,c=[],l=new Set(e.map(e=>e.field).filter(Boolean)),u=e.filter(e=>e.show===void 0||bl(e.show));return u.forEach(e=>{if(bl(e.addRow)&&t===void 0){c.push(ae(e));return}if(bl(e.addRow)&&t!==void 0){c.push(oe(e,t,n));return}let d=e.combineKey?.trim?.();if(!d){c.push(ie(e,t,n,{hideLabel:r,groupNameForActions:a,rowFieldKeys:l}));return}let f=`${n??`root`}:${t??`root`}:${d}`;if(s.has(f))return;let p=u.filter(e=>e.combineKey===d);p.forEach(e=>s.add(`${n??`root`}:${t??`root`}:${e.combineKey}`));let m=(0,o.jsx)(hl,{form:x,field:p.find(e=>e.combineLabel)??e,siblingPrefix:n!==void 0&&t!==void 0?[...Array.isArray(n)?n:[n],t]:null,combined:!0}),h=p.find(e=>e.combineToggleTarget)?.combineToggleTarget,g=p.find(e=>e.combineToggleLabel)?.combineToggleLabel??`Show range`,_=p.some(e=>bl(e.combineWrap)),v=Number(p.find(e=>[12,24].includes(Number(e.combineSpan)))?.combineSpan),y=h?p.find(e=>q(e)===h):null,b=y?.field?.includes?.(`.`)?y.field.split(`.`):[y?.field].filter(Boolean),S=y?n!==void 0&&t!==void 0?[n,t,...b]:b.length>1?b:y.field:null,C=p.some(e=>Wl(e)),w=[12,24].includes(v)?v:p.length>=3?24:12;c.push((0,o.jsx)(i.Col,{xs:24,md:w,children:(0,o.jsx)(i.Form.Item,{label:m,required:C,colon:!1,className:`v1-combine-field`,children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let r=S?!Sl(e(S)):!1,a=ne[f]??r,s=h&&!a?p.filter(e=>q(e)!==h):p;return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Row,{gutter:[8,0],align:`top`,wrap:_,className:`v1-combine-row${_?` v1-combine-row-wrap`:``}`,children:s.map(e=>ie(e,t,n,{inline:!0}))}),h&&(0,o.jsxs)(`div`,{className:`v1-combine-range`,children:[(0,o.jsx)(i.Switch,{size:`small`,checked:a,onChange:e=>{!e&&S&&(x.setFieldValue(S,void 0),x.validateFields([S]).catch(()=>{})),re(t=>({...t,[f]:e}))}}),(0,o.jsx)(dl,{type:`secondary`,className:`v1-combine-toggle-label`,children:g})]})]})}})})},f))}),c},se=(t,n)=>{let r=t.name??t.id??String(n),s=t.name??r,c=e.F(z,s),l=!!c&&c.leaderName!==s,u=c?R.find(e=>e.name===c.leaderName)??t:t,d=Math.max(0,Number(u.minRows??0)||0),f=Math.max(0,Number(u.maxRows??0)||0),p=c?c.memberNames:[s],m=()=>{p.forEach(e=>B.current[e]?.add())},h=e=>{p.forEach(t=>B.current[t]?.remove(e))},g=t.addRow?(0,o.jsx)(i.Form.List,{name:s,initialValue:H[t.name]??[],rules:l?[]:[{validator:async(e,n=[])=>{if(!(bl(t.toggleEnabled)&&t.toggleField&&x.getFieldValue(t.toggleField))){if(d>0&&n.length<d)throw Error(`Keep at least ${d} row${d>1?`s`:``}.`);if(bl(t.requireOne)&&n.some(e=>!Cl(e)))throw Error(`Fill at least one field in each added row.`)}}}],children:(e,{add:n,remove:r},{errors:c})=>(B.current[s]={add:n,remove:r},(0,o.jsxs)(`div`,{className:`v1-addrow-wrapper`,children:[(0,o.jsx)(`div`,{className:`v1-addrow-topbar`,children:l?(0,o.jsxs)(dl,{type:`secondary`,className:`v1-addrow-linked-hint`,children:[`Rows added via `,u.label??u.name]}):(!f||e.length<f)&&(0,o.jsx)(i.Button,{type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:m,className:`v1-addrow-add-btn`,children:t.addLabel??`Add ${t.label??`Row`}`})}),bl(t.sharedRowLabels)&&e.length>0&&(0,o.jsx)(i.Row,{gutter:[24,0],className:`v1-addrow-header`,children:t.fields.filter(e=>e.show===void 0||bl(e.show)).map(e=>(0,o.jsx)(i.Col,{md:e.col??12,className:`v1-addrow-header-label`,children:e.label},q(e)))}),e.map(({key:n,name:r})=>(0,o.jsxs)(`div`,{className:`v1-addrow-item`,children:[(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),disabled:e.length<=d,onClick:()=>h(r),className:`v1-addrow-delete-btn`}),(0,o.jsx)(`div`,{className:`v1-addrow-fields`,children:(0,o.jsx)(i.Row,{gutter:[24,0],align:`top`,children:Y(t.fields,r,s,bl(t.sharedRowLabels),s)})})]},n)),(0,o.jsx)(i.Form.ErrorList,{errors:c})]}))}):(0,o.jsx)(i.Row,{gutter:[24,0],children:Y(t.fields,void 0,void 0,!1,s)});return(0,o.jsx)(i.Card,{className:`v1-card v1-edit-card`,title:(0,o.jsx)(Ql,{icon:vl[n%vl.length],title:t.label??t.name??`Details`}),extra:(0,o.jsxs)(i.Space,{size:8,align:`center`,className:`v1-group-actions`,children:[(0,o.jsx)(Al,{group:t}),(0,o.jsx)(jl,{group:t}),(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:S[r]?(0,o.jsx)(a.DownOutlined,{}):(0,o.jsx)(a.UpOutlined,{}),onClick:e=>{e.stopPropagation(),G(r)}})]}),children:(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>{let n=bl(t.toggleEnabled)&&t.toggleField&&!!e(t.toggleField);return(0,o.jsx)(`div`,{style:{display:S[r]||n?`none`:`block`},children:g})}})},r)};return(0,o.jsxs)(`main`,{children:[W.length>0&&(0,o.jsx)(e.t,{items:W}),(0,o.jsxs)(`div`,{className:`v1-edit-page`,children:[(0,o.jsx)(`div`,{className:`v1-page-inner`,children:(0,o.jsxs)(i.Spin,{spinning:E||V.busy,tip:V.busy?`Running AI action…`:`Loading form fields...`,children:[O&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:O,style:{marginBottom:16}}),M&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:M,style:{marginBottom:16}}),(0,o.jsxs)(i.Form,{form:x,layout:`vertical`,colon:!1,className:`v1-form`,disabled:V.busy,requiredMark:(e,{required:t})=>(0,o.jsxs)(o.Fragment,{children:[e,t&&(0,o.jsx)(`span`,{className:`v1-required-mark`,children:` *`})]}),onFinish:te,onFinishFailed:K,children:[R.map((e,t)=>e.showIf?.field?(0,o.jsx)(Dl,{form:x,showIf:e.showIf,render:()=>se(e,t)},e.name??`grp-${t}`):se(e,t)),!E&&!O&&R.length===0&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:`No form fields are configured.`})]})]})}),(0,o.jsxs)(`div`,{className:`v1-footer`,children:[(0,o.jsx)(dl,{type:`secondary`,children:`All unsaved changes will be lost if you cancel and reload.`}),(0,o.jsxs)(i.Space,{size:12,children:[(0,o.jsx)(i.Button,{onClick:()=>v&&y?y():b(f||-1),children:`Cancel`}),(0,o.jsx)(gl,{form:x,groups:R,onClick:()=>x.submit(),disabled:E||A,loading:A,children:d})]})]})]})]})}var eu=new Map;function tu(t){let[n,i]=(0,r.useState)({actions:[],actionRules:[]});return(0,r.useEffect)(()=>{if(!t)return;let n=!1;return eu.has(t)||eu.set(t,e.Q(t).catch(()=>(eu.delete(t),{actions:[],actionRules:[]}))),eu.get(t).then(e=>{n||i(e)}),()=>{n=!0}},[t]),n}var nu={delete:(0,o.jsx)(a.DeleteOutlined,{}),edit:(0,o.jsx)(a.EditOutlined,{}),mail:(0,o.jsx)(a.MailOutlined,{}),shareAlt:(0,o.jsx)(a.ShareAltOutlined,{}),swap:(0,o.jsx)(a.RightOutlined,{}),thunderbolt:(0,o.jsx)(a.ThunderboltOutlined,{}),userAdd:(0,o.jsx)(a.UserAddOutlined,{}),userSwitch:(0,o.jsx)(a.UserSwitchOutlined,{})};function ru(e){return e==null?``:Array.isArray(e)?e.join(`,`):String(typeof e==`object`?e.id??e.value??``:e)}function iu(e,t){return String(e).replace(/\{([^}]+)\}/g,(e,n)=>encodeURIComponent(ru(t?.[n]))).replace(/:([A-Za-z_][\w]*)/g,(e,n)=>encodeURIComponent(ru(t?.[n]??(n===`_id`?t?.id:n===`id`?t?._id:void 0))))}function au(e,t){return String(t||``).split(`.`).reduce((e,t)=>e?.[t],e)}function ou(e,t,n,r){let i=Cn(e.key,t,n,r),a={key:e.key,label:e.label||e.key,icon:nu[e.icon]??void 0,danger:e.danger||void 0,disabled:!!i,title:i||void 0};return e.children?.length&&(a.children=e.children.map(e=>ou(e,t,n,r))),a}function su(e){let t=[];for(let n of e)t.push(n),n.children?.length&&t.push(...su(n.children));return t}function cu({module:n,record:r,scope:c,onDone:l,fallback:u=null}){let d=(0,s.useNavigate)(),f=(0,s.useLocation)(),{actions:p,actionRules:m}=tu(n),h=t=>!(t.showInList===!1||!e.d(t.permission,n)||t.permissionKey&&!e.u(au(r,`actionPermission.${t.permissionKey}`))||Sn(t.key,r,m,c)||t.allowedTabs?.length&&c&&!t.allowedTabs.some(e=>String(e).toLowerCase()===String(c).toLowerCase())),g=(p??[]).filter(h).map(e=>e.children?.length?{...e,children:e.children.filter(h)}:e);if(!g.length)return u;let _=e=>{if(e.actionType===`copy`){let t=au(r,e.copyField||`id`)??r?._id;navigator.clipboard.writeText(ru(t)).then(()=>i.message.success(`Copied to clipboard`)).catch(()=>i.message.error(`Could not copy to clipboard`));return}if(e.actionType===`api`&&e.apiPath){let n=()=>{let n=iu(e.apiPath,r),a=String(e.apiMethod||`POST`).toUpperCase();t.i(t.v,n.startsWith(`/`)?n:`/${n}`,{method:a,body:[`GET`,`DELETE`].includes(a)?void 0:JSON.stringify({ids:[r?._id??r?.id],records:[r]})}).then(()=>{i.message.success(`${e.label} completed`),l?.(e)}).catch(t=>i.message.error(t.message||`${e.label} failed`))};e.danger?i.Modal.confirm({title:`${e.label}?`,content:`This cannot be undone.`,okText:e.label,okButtonProps:{danger:!0},onOk:n}):n();return}if(e.actionType===`modal`){d(`/popup/${e.popupKey||e.key}`,{state:{background:f,selectedIds:[r?._id??r?.id],selectedRecords:[r],moduleName:n,popupContext:e.popupState??{},popupAction:{key:e.key,apiMethod:e.apiMethod,apiPath:e.apiPath,defaultTemplateId:e.defaultTemplateId},...e.popupState}});return}let a=e.routeTemplate||e.route;if(a){let t=iu(a,r),n=t.startsWith(`/`)?t:`/${t}`;if(e.linkTarget===`_blank`){window.open(n,`_blank`,`noopener`);return}d(n)}},v=new Map(su(g).map(e=>[String(e.key),e]));return(0,o.jsx)(i.Dropdown,{trigger:[`click`],menu:{items:g.map(e=>ou(e,r,m,c)),onClick:({key:e,domEvent:t})=>{t?.stopPropagation?.();let n=v.get(String(e));n&&n.actionType!==`group`&&_(n)}},children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.MoreOutlined,{}),onClick:e=>e.stopPropagation(),"aria-label":`Row actions`})})}var{Text:lu}=i.Typography;function uu(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function du(e){return e.value??e.fieldName??e.name??e.label}function fu(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}var pu=[{key:`name`,label:`Name`},{key:`designation`,label:`Designation`},{key:`locationExp`,label:`Location / Exp`},{key:`skills`,label:`Skills`},{key:`createdOn`,label:`Created On`}];function mu({record:e,fields:t,selected:n,onSelect:r}){let c=(0,s.useNavigate)(),l=(0,s.useLocation)(),u=t.find(e=>e.cardRole===`name`),d=t.find(e=>e.cardRole===`subtitle`),f=t.find(e=>e.cardRole===`location`),p=t.find(e=>e.cardRole===`skills`),m=t.find(e=>e.cardRole===`exp`),h=t.find(e=>e.cardRole===`date`),g=t.find(e=>e.cardRole===`action`),_=u?fu(e,u.key):`-`,v=d?fu(e,d.key):``,y=f?fu(e,f.key):``,b=m?fu(e,m.key):``,x=h?fu(e,h.key):``,S=p?e[p.key]:[],C=Array.isArray(S)?S:[],w=C.slice(0,3),T=C.slice(3),E=g?.render?g.render(fu(e,g.key),e):null;function D(){c(`/popup/preview`,{state:{background:l,moduleName:`candidate`,record:e,fields:pu}})}function O(){c(`/popup/mail`,{state:{background:l}})}return(0,o.jsxs)(`div`,{className:`param-card${n?` param-card--selected`:``}`,children:[(0,o.jsxs)(`div`,{className:`param-card__header`,children:[(0,o.jsxs)(`div`,{className:`param-card__header-left`,children:[(0,o.jsxs)(`div`,{className:`param-card__name-row`,children:[(0,o.jsx)(i.Checkbox,{checked:n,onChange:r,onClick:e=>e.stopPropagation(),className:`param-card__checkbox`}),(0,o.jsx)(a.EyeOutlined,{className:`param-card__eye-icon`,onClick:D}),(0,o.jsxs)(`span`,{className:`param-card__name-block`,children:[(0,o.jsx)(lu,{className:`param-card__name`,children:_}),v&&v!==`-`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`span`,{className:`param-card__sep`,children:`·`}),(0,o.jsx)(lu,{className:`param-card__subtitle`,children:v})]})]})]}),y&&y!==`-`&&(0,o.jsxs)(`div`,{className:`param-card__location`,children:[(0,o.jsx)(a.EnvironmentOutlined,{className:`param-card__location-icon`}),(0,o.jsx)(lu,{className:`param-card__location-text`,children:y})]})]}),(0,o.jsx)(`div`,{className:`param-card__header-right`,children:(0,o.jsxs)(`span`,{className:`param-card__exp-badge`,children:[`Exp: `,b&&b!==`-`?b:`-`]})})]}),(0,o.jsxs)(`div`,{className:`param-card__body`,children:[(0,o.jsxs)(`div`,{className:`param-card__body-left`,children:[(0,o.jsx)(lu,{className:`param-card__section-label`,children:`Skills`}),(0,o.jsxs)(`div`,{className:`param-card__skills-row`,children:[w.length>0?w.map(e=>(0,o.jsx)(i.Tag,{className:`sourcing-skill-tag`,children:e},e)):(0,o.jsx)(lu,{className:`param-card__empty`,children:`-`}),T.length>0&&(0,o.jsx)(i.Popover,{trigger:`click`,placement:`bottomLeft`,overlayClassName:`sourcing-skills-popover`,content:(0,o.jsx)(`div`,{className:`sourcing-skills-popup`,children:T.map(e=>(0,o.jsx)(i.Tag,{className:`sourcing-skill-tag`,children:e},e))}),children:(0,o.jsxs)(`span`,{className:`sourcing-more-skills`,children:[`+`,T.length]})})]})]}),x&&x!==`-`&&(0,o.jsxs)(`div`,{className:`param-card__body-right`,children:[(0,o.jsx)(lu,{className:`param-card__section-label param-card__section-label--right`,children:`Created on`}),(0,o.jsx)(lu,{className:`param-card__date-value`,children:x})]})]}),(0,o.jsx)(`div`,{className:`param-card__divider`}),(0,o.jsxs)(`div`,{className:`param-card__footer`,children:[(0,o.jsxs)(`div`,{className:`param-card__footer-left`,children:[(0,o.jsx)(i.Tooltip,{title:`Resume`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Resume`,children:(0,o.jsx)(a.FileTextOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Call`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Call`,children:(0,o.jsx)(a.PhoneOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Email`,children:(0,o.jsx)(`button`,{type:`button`,className:`param-card__icon-btn`,"aria-label":`Email`,onClick:O,children:(0,o.jsx)(a.MailOutlined,{})})})]}),(0,o.jsx)(`div`,{className:`param-card__footer-right`,children:E})]})]})}function hu({listName:e=`List`,moduleName:t=``,actions:n=[],fields:c=[],dataSource:l=[],loading:u=!1,total:d,current:f,pageSize:p,onPageChange:m,onPageSizeChange:h,className:g=``,activeView:_=`card`,onViewChange:v}){let y=(0,s.useNavigate)(),b=(0,s.useLocation)(),[x,S]=(0,r.useState)(``),[C,w]=(0,r.useState)({current:1,pageSize:12}),[T,E]=(0,r.useState)([]),[D,O]=(0,r.useState)([]),k=typeof f==`number`&&typeof p==`number`,A=k?{current:f,pageSize:p}:C,j=e=>{let t=e.id??e._id;E(e=>e.includes(t)?e.filter(e=>e!==t):[...e,t]),O(n=>n.some(e=>(e.id??e._id)===t)?n.filter(e=>(e.id??e._id)!==t):[...n,e])},M=n.filter(e=>!e.maxSelect||T.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:T.length===0,onClick:()=>{if(T.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:T,selectedRecords:D});return}e.route&&y(e.route,{state:{background:b,selectedIds:T,selectedRecords:D,moduleName:t,...e.popupState??{}}})}}})),N=(0,r.useMemo)(()=>c.map(e=>({...e,key:du(e),label:uu(e)})).filter(e=>e.key&&e.label),[c]),P=typeof d==`number`?d:l.length,F=(0,r.useMemo)(()=>{let e=x.toLowerCase();return!e||e.length<3?l:l.filter(t=>N.some(n=>String(fu(t,n.key)).toLowerCase().includes(e)))},[l,N,x]),I=(0,r.useMemo)(()=>{if(k)return F;let e=(A.current-1)*A.pageSize;return F.slice(e,e+A.pageSize)},[A.current,A.pageSize,F,k]);return(0,o.jsxs)(`div`,{className:`antd param-card-view ${g}`.trim(),children:[(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsxs)(i.Flex,{align:`center`,gap:6,children:[(0,o.jsx)(lu,{className:`param-card-view__tab-label`,children:e}),(0,o.jsx)(`span`,{className:`param-card-view__count`,children:P}),T.length>0&&n.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Dropdown,{menu:{items:M},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[`Actions `,(0,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),(0,o.jsxs)(lu,{className:`job-selected-count`,children:[`Selected (`,T.length,`)`]})]})]}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:`Search by name, location, skills`,value:x,onChange:e=>{S(e.target.value),k?m?.(1):w(e=>({...e,current:1}))},allowClear:!0,className:`job-search-input`}),(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Card view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${_===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>v?.(`card`)})}),(0,o.jsx)(i.Tooltip,{title:`List view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${_===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>v?.(`list`)})})]})]})}),(0,o.jsx)(i.Spin,{spinning:u,children:I.length>0?(0,o.jsx)(`div`,{className:`param-card-view__grid`,children:I.map((e,t)=>(0,o.jsx)(mu,{record:e,fields:N,selected:T.includes(e.id??e._id),onSelect:()=>j(e)},e.id??e.key??t))}):!u&&(0,o.jsx)(`div`,{className:`param-card-view__empty`,children:`No results found`})}),(0,o.jsx)(_e,{current:A.current,pageSize:A.pageSize,total:P,onChange:e=>{k?m?.(e):w(t=>({...t,current:e}))},onPageSizeChange:e=>{k?h?.(e):w({current:1,pageSize:e})}})]})}var{Text:gu}=i.Typography;function _u(e){return e.label??e.fieldLabel??e.name??e.fieldName??e.value}function vu(e){return e.value??e.fieldName??e.name??e.label}function yu(e,t){let n=e?.[t];return n==null?`-`:Array.isArray(n)?n.join(`, `):typeof n==`object`?Object.values(n).join(` `):n}function bu(e,t){return(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(`span`,{children:e}),(0,o.jsx)(i.Badge,{count:t,overflowCount:9999})]})}function xu({listName:e=`List`,fields:t=[],actions:n=[],dataSource:c=[],loading:l=!1,total:u,current:d,pageSize:f,onPageChange:p,onPageSizeChange:m,onSearch:h,rowSelection:g=!0,className:_=``,tableClassName:v=`job-list-table`,activeView:y=`list`,onViewChange:b}){let x=(0,s.useNavigate)(),S=(0,s.useLocation)(),[C,w]=(0,r.useState)(`all`),[T,E]=(0,r.useState)(``),[D,O]=(0,r.useState)([]),[k,A]=(0,r.useState)([]),[j,M]=(0,r.useState)({current:1,pageSize:10}),[N,P]=(0,r.useState)([]),[F,I]=(0,r.useState)(!1),L=(0,r.useRef)(null),R=n.filter(e=>!e.maxSelect||D.length<=e.maxSelect).map(e=>({key:e.key??e.name,label:e.label??e.name,danger:e.danger??!1,disabled:D.length===0,onClick:()=>{if(D.length!==0){if(typeof e.onSelect==`function`){e.onSelect({selectedIds:D,selectedRecords:k});return}e.route&&x(e.route,{state:{background:S,selectedIds:D,selectedRecords:k,...e.popupState??{}}})}}})),z=typeof d==`number`&&typeof f==`number`,B=z?{current:d,pageSize:f}:j,V=(0,r.useMemo)(()=>t.map(e=>({...e,key:vu(e),label:_u(e)})).filter(e=>e.key&&e.label&&!e.tableHidden),[t]),H=N.length?N:V.map(e=>e.key),U=(0,r.useMemo)(()=>{if(h)return c;let e=T.toLowerCase();return!e||e.length<3?c:c.filter(t=>V.some(n=>String(yu(t,n.key)).toLowerCase().includes(e)))},[c,V,h,T]),W=typeof u==`number`?u:T.trim()?U.length:c.length,G=(0,r.useMemo)(()=>{if(z)return U;let e=(B.current-1)*B.pageSize;return U.slice(e,e+B.pageSize)},[B.current,B.pageSize,U,z]),ee=(0,r.useMemo)(()=>V.filter(e=>H.includes(e.key)).map(e=>({title:e.label,dataIndex:e.key,key:e.key,sorter:e.sorter===!1?!1:e.sorter??((t,n)=>String(yu(t,e.key)).localeCompare(String(yu(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,o.jsx)(gu,{className:`job-cell-primary`,children:yu(n,e.key)})})),[V,H]),te=H.length===V.length,K=H.length>0&&!te,ne=(e,t)=>{P(n=>{let r=n.length?n:V.map(e=>e.key);return t?r.includes(e)?r:[...r,e]:r.filter(t=>t!==e)})},re=(0,o.jsxs)(`div`,{className:`column-visibility-menu`,onClick:e=>e.stopPropagation(),children:[(0,o.jsx)(i.Checkbox,{checked:te,indeterminate:K,onChange:e=>{P(e.target.checked?V.map(e=>e.key):[])},children:`Select All`}),V.map(e=>(0,o.jsx)(i.Checkbox,{checked:H.includes(e.key),onChange:t=>ne(e.key,t.target.checked),children:e.label},e.key))]});return(0,o.jsxs)(`div`,{className:`antd dynamic-list-view ${_}`.trim(),children:[(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,justify:`space-between`,children:[(0,o.jsx)(i.Tabs,{activeKey:C,items:[{key:`all`,label:bu(e,W)}],onChange:e=>{w(e),M({...j,current:1})}}),(0,o.jsxs)(i.Flex,{align:`center`,gap:8,children:[(0,o.jsx)(i.Input,{prefix:(0,o.jsx)(a.SearchOutlined,{className:`job-search-icon`}),placeholder:`Min 3 Chars to search`,value:T,onChange:e=>{let t=e.target.value;E(t),h?(clearTimeout(L.current),L.current=setTimeout(()=>{h(t),p?.(1)},350)):z?p?.(1):M({...j,current:1})},allowClear:!0,className:`job-search-input`}),(0,o.jsx)(i.Tooltip,{title:`Filter`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button`,icon:(0,o.jsx)(a.FilterOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Card view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${y===`card`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.AppstoreOutlined,{}),onClick:()=>b?.(`card`)})}),(0,o.jsx)(i.Tooltip,{title:`List view`,children:(0,o.jsx)(i.Button,{className:`job-toolbar-icon-button param-view-toggle-btn${y===`list`?` param-view-toggle-btn--active`:``}`,icon:(0,o.jsx)(a.UnorderedListOutlined,{}),onClick:()=>b?.(`list`)})})]})]})}),(0,o.jsx)(i.Card,{children:(0,o.jsxs)(i.Flex,{align:`center`,gap:3,children:[(0,o.jsx)(i.Dropdown,{open:F,onOpenChange:I,trigger:[`click`],dropdownRender:()=>re,placement:`bottomLeft`,overlayClassName:`column-visibility-dropdown`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(`img`,{src:Jr,alt:``,className:`job-action-list-icon`}),size:`small`,className:`job-actions-button`})}),D.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Dropdown,{menu:{items:R},trigger:[`click`],children:(0,o.jsxs)(i.Button,{type:`text`,size:`small`,className:`job-actions-button job-actions-menu-button`,children:[(0,o.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,o.jsx)(a.DownOutlined,{className:`job-actions-caret`})]})}),(0,o.jsxs)(gu,{className:`job-selected-count`,children:[`Selected (`,D.length,`)`]})]})]})}),(0,o.jsx)(i.Spin,{spinning:l,children:(0,o.jsx)(i.Table,{rowSelection:g?{type:`checkbox`,selectedRowKeys:D,onChange:(e,t)=>{O(e),A(t)}}:void 0,columns:ee,dataSource:G,size:`middle`,scroll:{x:`max-content`},showSorterTooltip:!1,tableLayout:`auto`,pagination:!1,className:v,rowKey:e=>e.id??e.key})}),(0,o.jsx)(_e,{current:B.current,pageSize:B.pageSize,total:W,onChange:e=>{z?p?.(e):M(t=>({...t,current:e}))},onPageSizeChange:e=>{z?m?.(e):M({current:1,pageSize:e})}})]})}var Su={active:`green`,approved:`green`,hired:`green`,submitted:`gold`,resubmitted:`purple`,pending:`gold`,draft:`default`,rejected:`red`,inactive:`default`,completed:`blue`,not_submitted:`default`};function Cu({status:e}){let t=String(e??`unknown`);return(0,o.jsx)(i.Tag,{color:Su[t.toLowerCase()]??`default`,style:{borderRadius:6,fontWeight:600,fontSize:12,textTransform:`capitalize`},children:t.replace(/_/g,` `)})}function wu(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 Tu({tabs:e=[],activeKey:t,onChange:n,className:r=``}){let a=e.map(wu).filter(Boolean);if(!a.length)return null;let s=a.some(e=>e.key===t)?t:a[0].key;return(0,o.jsx)(`div`,{className:`stylish-tabs ${r}`.trim(),children:a.map(e=>{let t=e.key===s,r=e.count!=null;return(0,o.jsxs)(`button`,{type:`button`,className:`stylish-tabs__item${t?` stylish-tabs__item--active`:``}`,onClick:()=>n?.(e.key),children:[(0,o.jsx)(`span`,{className:`stylish-tabs__label`,children:e.label}),r&&(0,o.jsx)(i.Badge,{count:e.count,showZero:!0,overflowCount:999,className:`stylish-tabs__badge${t?` stylish-tabs__badge--active`:``}`})]},e.key)})})}var Eu=/(\{\{[\w.]+\}\})/g;function Du(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}function Ou(e,t){return e?e.split(Eu).map(e=>/^\{\{[\w.]+\}\}$/.test(e)?`<span style="color:var(--color-brand);font-weight:600;background:var(--color-brand-softer);border-radius:3px;padding:0 3px">${Du(e)}</span>`:`<span style="color:var(--color-text-primary)">${Du(e).replace(/\n/g,`<br>`)}</span>`).join(``):`<span style="color:#bbb;pointer-events:none">${Du(t)}</span>`}var ku={fontFamily:`"SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace`,fontSize:12,lineHeight:`1.7`,padding:`5px 10px`,whiteSpace:`pre-wrap`,wordBreak:`break-word`,overflowWrap:`break-word`,boxSizing:`border-box`};function Au({value:e=``,onChange:t,placeholder:n="e.g. ${{clientRate}} /{{rateType}}",disabled:i=!1,textareaRef:a}){let s=(0,r.useRef)(null),c=a??s,[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e=c.current;e&&(e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`)},[e]);let d=i?`var(--color-border-input)`:l?`var(--color-brand)`:`var(--color-border-input)`,f=l&&!i?`0 0 0 2px rgba(0,83,165,0.12)`:`none`;return(0,o.jsxs)(`div`,{style:{position:`relative`,border:`1px solid ${d}`,borderRadius:6,background:i?`var(--color-surface-soft)`:`#fff`,transition:`border-color 0.2s, box-shadow 0.2s`,boxShadow:f,minHeight:34,cursor:i?`not-allowed`:`text`},onClick:()=>!i&&c.current?.focus(),children:[(0,o.jsx)(`div`,{"aria-hidden":!0,style:{...ku,visibility:`hidden`,minHeight:22,pointerEvents:`none`,userSelect:`none`},dangerouslySetInnerHTML:{__html:Ou(e,n)+`​`}}),(0,o.jsx)(`div`,{"aria-hidden":!0,style:{...ku,position:`absolute`,inset:0,pointerEvents:`none`,userSelect:`none`,overflow:`hidden`},dangerouslySetInnerHTML:{__html:Ou(e,n)+`​`}}),(0,o.jsx)(`textarea`,{ref:c,value:e,rows:1,spellCheck:!1,autoCorrect:`off`,autoCapitalize:`off`,disabled:i,onChange:e=>t?.(e.target.value),onFocus:()=>u(!0),onBlur:()=>u(!1),style:{...ku,position:`absolute`,inset:0,width:`100%`,height:`100%`,background:`transparent`,color:`transparent`,caretColor:`#333`,border:`none`,outline:`none`,resize:`none`,overflow:`hidden`,cursor:i?`not-allowed`:`text`}})]})}var ju=e=>{let t=Number(e);return Number.isFinite(t)?t:0};function Mu(e){return`$${ju(e).toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2})}`}function Nu(e){return`${ju(e).toFixed(2)} hrs`}function Pu(e){return`${Mu(e)}/hr`}function Fu(e){let t=String(e??``).trim().split(/\s+/).filter(Boolean);return t.length?t.slice(0,2).map(e=>e[0].toUpperCase()).join(``):`·`}var Iu={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 Lu(e){return Iu[e]||{label:String(e??``).toLowerCase().split(`_`).filter(Boolean).map(e=>e[0].toUpperCase()+e.slice(1)).join(` `)||`Activity`,icon:`file`,tone:`neutral`}}function Ru(e){return(Array.isArray(e)?e:[]).find(e=>e?.event===`TIMESHEET_APPROVED`)?.at??null}var zu=e=>({enabled:!0,variant:e,disabledReason:null}),Bu=e=>({enabled:!1,variant:`default`,disabledReason:e}),Vu=[`PaymentNotReceived`,`Invoiced`,`Paid`],Hu=[`Ready`,`Processing`,`Paid`];function Uu(e){switch(e){case`PaymentNotReceived`:return{generateInvoice:zu(`primary`),recordPayment:Bu(`Generate the invoice first`),markPaid:Bu(`Generate the invoice first`)};case`Invoiced`:return{generateInvoice:Bu(`Invoice already generated`),recordPayment:zu(`primary`),markPaid:zu(`default`)};case`Paid`:return{generateInvoice:Bu(`Payment already received`),recordPayment:Bu(`Payment already received`),markPaid:Bu(`Payment already received`)};default:return{generateInvoice:Bu(`Unavailable in the current status`),recordPayment:Bu(`Unavailable in the current status`),markPaid:Bu(`Unavailable in the current status`)}}}function Wu(e){switch(e){case`Ready`:return{process:zu(`primary`),generatePayslip:Bu(`Mark the payroll paid first`),markPaid:Bu(`Process the payroll first`)};case`Processing`:return{process:Bu(`Payroll is already processing`),generatePayslip:Bu(`Mark the payroll paid first`),markPaid:zu(`primary`)};case`Paid`:return{process:Bu(`Payroll already paid`),generatePayslip:zu(`primary`),markPaid:Bu(`Payroll already paid`)};default:return{process:Bu(`Unavailable in the current status`),generatePayslip:Bu(`Unavailable in the current status`),markPaid:Bu(`Unavailable in the current status`)}}}function Gu(e,t){if(e===`billing`){let e=Math.max(Vu.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(Hu.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 Ku=e=>ju(e?.leave?.CL)+ju(e?.leave?.SL),qu=e=>ju(e?.workingHours?.ST),Ju=e=>ju(e?.workingHours?.OT);function Yu(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=qu(e),r=Ju(e),i=Ku(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 Xu(e,t){return(Array.isArray(e)?e:[]).filter(e=>!!e?.isLogged||qu(e)>0||Ju(e)>0||Ku(e)>0||e?.isHoliday).map(e=>{let n=qu(e),r=Ju(e),i=n+r;return{key:e.date,date:e.date,day:e.day||``,st:n,ot:r,leave:Ku(e),isHoliday:!!e?.isHoliday,total:i,amount:i*ju(t),status:e?.status||`logged`,reviewer:e?.reviewedByName||``,remarks:e?.rejectionReason||e?.notes||``}})}function Zu(e){let[t,n,r]=String(e??``).split(`-`).map(Number);return!t||!n||!r?null:new Date(t,n-1,r)}var Qu=e=>e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`});function $u(e,t){let n=Array.isArray(e)?e:[],r=new Map;return n.forEach(e=>{let n=Zu(e?.date);if(!n)return;let i=qu(e),a=Ju(e),o=Ku(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:`${Qu(c)} – ${Qu(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)*ju(t),(e?.isLogged||i>0||a>0)&&(u.days+=1)}),[...r.values()].sort((e,t)=>e.weekStart-t.weekStart)}function ed(e,{high:t=25,low:n=10}={}){let r=ju(e);return r>=t?`high`:r<n?`low`:`mid`}function td(e){let t=e==null?``:String(e);return/[",\n\r]/.test(t)?`"${t.replace(/"/g,`""`)}"`:t}function nd(e,t){return[t.map(e=>td(e.label)).join(`,`),...(e??[]).map(e=>t.map(t=>td(t.format?t.format(e[t.key],e):e[t.key])).join(`,`))].join(`\r
3
3
  `)}function rd(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 id(e,t,n){return(e instanceof Map?e:rd(e)).get(t)?.label||n}function ad(e,t,n){let r=(e instanceof Map?e:rd(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 od(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 sd={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`},approved:{label:`Approved`,tone:`success`},rejected:{label:`Rejected`,tone:`danger`},logged:{label:`Pending`,tone:`gold`}};function cd({status:e=`Ready`,size:t,styleOverride:n}){let r=sd[e]??{label:String(e),tone:`neutral`},a=n?.label??r.label,s=n?{color:n.color,background:n.bg,borderColor:n.color}:void 0,c=(0,o.jsxs)(`span`,{className:`fin-pill${n?``:` fin-pill--${r.tone}`}${t===`sm`?` fin-pill--sm`:``}`,style:s,children:[(0,o.jsx)(`span`,{className:`fin-pill__dot${r.pulse?` fin-pill__dot--pulse`:``}`}),a]});return r.full?(0,o.jsx)(i.Tooltip,{title:r.full,children:c}):c}function ld({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,o.jsx)(`div`,{className:r,children:Array.from({length:t},(e,t)=>(0,o.jsxs)(`div`,{className:`finance-kpi fin-kpi--skeleton`,children:[(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--label`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--value`})]},t))})}return(0,o.jsx)(`div`,{className:r,children:e.map(e=>(0,o.jsxs)(`div`,{className:`finance-kpi fin-kpi--${e.tone??`neutral`}`,children:[e.icon?(0,o.jsx)(`span`,{className:`fin-kpi__icon`,children:e.icon}):null,(0,o.jsxs)(`span`,{className:`fin-kpi__body`,children:[(0,o.jsx)(`span`,{className:`finance-kpi__label`,children:e.label}),(0,o.jsx)(`strong`,{className:`finance-kpi__value`,children:e.value}),e.sub??e.hint?(0,o.jsx)(`span`,{className:`finance-kpi__hint`,children:e.sub??e.hint}):null]})]},e.key??e.label))})}function ud({days:e=[]}){return(0,o.jsx)(`div`,{className:`finance-hours-grid`,children:e.map(e=>(0,o.jsxs)(`div`,{className:`finance-hours-grid__day`,children:[(0,o.jsx)(`span`,{children:e.date}),(0,o.jsx)(`strong`,{children:Number(e?.workingHours?.ST??0)+Number(e?.workingHours?.OT??0)})]},e.date))})}function dd({icon:e,title:t,description:n,action:r,compact:i=!1}){return(0,o.jsxs)(`div`,{className:`fin-empty${i?` fin-empty--compact`:``}`,children:[(0,o.jsx)(`span`,{className:`fin-empty__icon`,children:e??(0,o.jsx)(a.InboxOutlined,{})}),(0,o.jsx)(`strong`,{className:`fin-empty__title`,children:t}),n?(0,o.jsx)(`span`,{className:`fin-empty__desc`,children:n}):null,r?(0,o.jsx)(`span`,{className:`fin-empty__action`,children:r}):null]})}function fd({title:e,extra:t,children:n,empty:r,className:i=``,span:a}){return(0,o.jsxs)(`section`,{className:`fin-section${a?` fin-section--span`:``}${i?` ${i}`:``}`,children:[e?(0,o.jsxs)(`header`,{className:`fin-section__head`,children:[(0,o.jsx)(`h4`,{className:`fin-section__title`,children:e}),t?(0,o.jsx)(`span`,{className:`fin-section__extra`,children:t}):null]}):null,(0,o.jsx)(`div`,{className:`fin-section__body`,children:r?(0,o.jsx)(dd,{compact:!0,...r}):n})]})}function pd({label:e,value:t,strong:n,accent:r,negative:i}){return(0,o.jsxs)(`div`,{className:[`fin-line`,n?`fin-line--strong`:``,r?`fin-line--accent`:``,i?`fin-line--negative`:``].filter(Boolean).join(` `),children:[(0,o.jsx)(`span`,{className:`fin-line__label`,children:e}),(0,o.jsx)(`span`,{className:`fin-line__value`,children:t})]})}function md(){return(0,o.jsx)(`div`,{className:`fin-divider`})}function hd({terms:e=[]}){return(0,o.jsx)(`div`,{className:`fin-equation`,children:e.map((e,t)=>e.op?(0,o.jsx)(`span`,{className:`fin-eq__op`,children:e.op},`op-${t}`):(0,o.jsxs)(`span`,{className:`fin-eq__term${e.tone?` fin-eq__term--${e.tone}`:``}`,children:[(0,o.jsx)(`span`,{className:`fin-eq__num`,children:e.value}),(0,o.jsx)(`span`,{className:`fin-eq__lbl`,children:e.label})]},e.label??t))})}function gd({steps:e=[]}){return(0,o.jsx)(`div`,{className:`fin-steps`,children:e.map((e,t)=>(0,o.jsxs)(`div`,{className:`fin-step fin-step--${e.state}`,children:[t>0?(0,o.jsx)(`span`,{className:`fin-step__line`}):null,(0,o.jsx)(`span`,{className:`fin-step__dot`,children:e.state===`done`?(0,o.jsx)(a.CheckOutlined,{}):null}),(0,o.jsx)(`span`,{className:`fin-step__label`,children:e.label})]},e.key??e.label))})}var _d={check:(0,o.jsx)(a.CheckCircleFilled,{}),dollar:(0,o.jsx)(a.DollarCircleFilled,{}),sync:(0,o.jsx)(a.SyncOutlined,{}),file:(0,o.jsx)(a.FileTextFilled,{})};function vd(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 yd({events:e=[],emptyState:t}){let n=(Array.isArray(e)?[...e]:[]).reverse();return n.length?(0,o.jsx)(`div`,{className:`fin-tl`,children:n.map((e,t)=>{let r=Lu(e?.event);return(0,o.jsxs)(`div`,{className:`fin-tl__item`,children:[(0,o.jsxs)(`div`,{className:`fin-tl__rail`,children:[(0,o.jsx)(`span`,{className:`fin-tl__icon fin-tl__icon--${r.tone}`,children:_d[r.icon]??_d.file}),t<n.length-1?(0,o.jsx)(`span`,{className:`fin-tl__line`}):null]}),(0,o.jsxs)(`div`,{className:`fin-tl__body`,children:[(0,o.jsxs)(`div`,{className:`fin-tl__head`,children:[(0,o.jsx)(`strong`,{className:`fin-tl__label`,children:r.label}),e?.by?(0,o.jsx)(`span`,{className:`fin-tl__actor`,children:e.by}):null]}),(0,o.jsxs)(`div`,{className:`fin-tl__meta`,children:[e?.at?(0,o.jsx)(`span`,{children:(0,c.default)(e.at).format(`MMM D, YYYY · h:mm A`)}):null,e?.at?(0,o.jsx)(`span`,{className:`fin-tl__rel`,children:vd(e.at)}):null]})]})]},`${e?.event}-${e?.at}-${t}`)})}):(0,o.jsx)(dd,{icon:(0,o.jsx)(a.ClockCircleOutlined,{}),title:`No activity yet`,description:`Workflow events will appear here as this record moves through its lifecycle.`,...t??{}})}var bd=[`Weekly`,`Bi-Weekly`,`Monthly`].map(e=>({value:e,label:e}));function xd({search:e,onSearchChange:t,searchPlaceholder:n=`Search employee, client, employer, project…`,monthValue:r,onMonthChange:s,cycleValue:c,onCycleChange:l,statusValue:u,onStatusChange:d,statusOptions:f=[],chips:p=[],activeChips:m=[],onToggleChip:h,onReset:g,onRefresh:_,onExport:v,exporting:y=!1,disabled:b=!1}){return(0,o.jsxs)(`div`,{className:`fin-toolbar`,children:[(0,o.jsxs)(`div`,{className:`fin-toolbar__main`,children:[(0,o.jsxs)(`div`,{className:`fin-toolbar__filters`,children:[(0,o.jsx)(i.Input,{className:`fin-toolbar__search`,size:`large`,allowClear:!0,prefix:(0,o.jsx)(a.SearchOutlined,{className:`fin-toolbar__search-icon`}),placeholder:n,value:e,onChange:e=>t?.(e.target.value),disabled:b}),(0,o.jsx)(i.DatePicker,{className:`fin-toolbar__control`,picker:`month`,allowClear:!0,placeholder:`All months`,value:r,onChange:s,disabled:b}),(0,o.jsx)(i.Select,{className:`fin-toolbar__control`,allowClear:!0,placeholder:`Payment cycle`,value:c||void 0,onChange:e=>l?.(e??``),options:bd,disabled:b,popupMatchSelectWidth:!1}),(0,o.jsx)(i.Select,{className:`fin-toolbar__control`,allowClear:!0,placeholder:`Status`,value:u||void 0,onChange:e=>d?.(e??``),options:f,disabled:b,popupMatchSelectWidth:!1})]}),(0,o.jsxs)(`div`,{className:`fin-toolbar__actions`,children:[(0,o.jsx)(i.Tooltip,{title:`Reset filters`,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ClearOutlined,{}),onClick:g,disabled:b,"aria-label":`Reset filters`})}),(0,o.jsx)(i.Tooltip,{title:`Refresh`,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:_,disabled:b,"aria-label":`Refresh`})}),(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.DownloadOutlined,{}),onClick:v,loading:y,disabled:b,children:`Export`})]})]}),p.length?(0,o.jsxs)(`div`,{className:`fin-toolbar__chips`,children:[(0,o.jsxs)(`span`,{className:`fin-toolbar__chips-label`,children:[(0,o.jsx)(a.ThunderboltOutlined,{}),` Quick filters`]}),p.map(e=>(0,o.jsx)(`button`,{type:`button`,className:`fin-chip${m.includes(e.key)?` fin-chip--active`:``}`,onClick:()=>h?.(e.key),disabled:b,children:e.label},e.key))]}):null]})}var Sd=[`blue`,`indigo`,`purple`,`green`];function Cd(e){let t=String(e??``),n=0;for(let e=0;e<t.length;e++)n=n*31+t.charCodeAt(e)|0;return Sd[Math.abs(n)%Sd.length]}function wd({name:e,size:t=`md`}){return(0,o.jsx)(`span`,{className:`fin-avatar fin-avatar--${Cd(e)} fin-avatar--${t}`,children:Fu(e)})}function Td({name:e,secondary:t,link:n=!1}){return(0,o.jsxs)(`div`,{className:`fin-cell-employee`,children:[(0,o.jsx)(wd,{name:e}),(0,o.jsxs)(`span`,{className:`fin-cell-employee__text`,children:[(0,o.jsx)(`strong`,{className:`fin-cell__primary${n?` fin-cell__primary--link`:``}`,children:e||`—`}),t?(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})]})}function Ed({primary:e,secondary:t,link:n=!1}){return(0,o.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,o.jsx)(`span`,{className:`fin-cell__primary${n?` fin-cell__primary--link`:``}`,children:e||`—`}),t?(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}function Dd({value:e,sub:t,strong:n=!1}){return(0,o.jsxs)(`div`,{className:`fin-cell-money`,children:[(0,o.jsx)(`span`,{className:`fin-cell-money__value${n?` fin-cell-money__value--strong`:``}`,children:typeof e==`number`?Mu(e):e??`—`}),t?(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}function Od({children:e,tone:t=`neutral`,title:n}){return(0,o.jsx)(`span`,{className:`fin-badge fin-badge--${t}`,title:n,children:e})}function kd({margin:e,marginPercent:t}){let n=ed(t);return(0,o.jsxs)(`div`,{className:`fin-cell-margin`,children:[(0,o.jsxs)(Od,{tone:n===`high`?`success`:n===`low`?`danger`:`neutral`,children:[Number(t??0).toFixed(1),`%`]}),e==null?null:(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:Mu(e)})]})}function Ad(){return(0,o.jsx)(a.RightOutlined,{className:`fin-table__chevron`})}function jd({rows:e=8}){return(0,o.jsx)(`div`,{className:`fin-table-skeleton`,children:Array.from({length:e},(e,t)=>(0,o.jsxs)(`div`,{className:`fin-table-skeleton__row`,children:[(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--avatar`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--lg`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--md`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--md`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--sm`}),(0,o.jsx)(`span`,{className:`fin-skeleton fin-skeleton--pill`})]},t))})}function Md({columns:e,rows:t=[],rowKey:n=`timesheetId`,loading:r=!1,onRowClick:a,page:s,limit:c,total:l=0,onPageChange:u,onLimitChange:d,emptyState:f,scrollX:p=1100}){return r&&!t.length?(0,o.jsx)(jd,{}):!r&&!t.length?(0,o.jsx)(`div`,{className:`fin-table-card`,children:(0,o.jsx)(dd,{title:`No records found`,description:`Try widening the month filter or clearing quick filters — finance records live in their timesheet's month.`,...f??{}})}):(0,o.jsxs)(`div`,{className:`fin-table-card`,children:[(0,o.jsx)(i.Table,{className:`fin-table`,size:`small`,columns:e,dataSource:t,rowKey:n,loading:r,pagination:!1,sticky:!0,scroll:{x:p},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`}),l>0&&s!=null?(0,o.jsx)(`div`,{className:`fin-table__pagination`,children:(0,o.jsx)(_e,{current:s,pageSize:c,total:l,onChange:e=>u?.(e),onPageSizeChange:e=>d?.(e)})}):null]})}function Nd({chip:e}){let[t,n]=(0,r.useState)(!1),s=async()=>{try{await navigator.clipboard.writeText(String(e.copyValue??e.value??``)),n(!0),i.message.success(`${e.label??`Value`} copied`),setTimeout(()=>n(!1),1600)}catch{i.message.error(`Unable to copy`)}},c=e.icon?(0,o.jsx)(`span`,{className:`fin-meta-chip__icon`,children:e.icon}):null;return(0,o.jsxs)(`span`,{className:`fin-meta-chip${e.copyable?` fin-copy`:``}`,children:[e.tooltip&&c?(0,o.jsx)(i.Tooltip,{title:e.tooltip,children:c}):c,e.label?(0,o.jsx)(`span`,{className:`fin-meta-chip__label`,children:e.label}):null,(0,o.jsx)(`span`,{className:`fin-meta-chip__value`,children:e.value??`—`}),e.badge?(0,o.jsx)(`span`,{className:`fin-badge fin-badge--brand`,children:e.badge}):null,e.copyable?(0,o.jsx)(i.Tooltip,{title:t?`Copied`:`Copy`,children:(0,o.jsx)(`button`,{type:`button`,className:`fin-meta-chip__copy`,onClick:s,"aria-label":`Copy ${e.label??`value`}`,children:t?(0,o.jsx)(a.CheckOutlined,{}):(0,o.jsx)(a.CopyOutlined,{})})}):null]})}function Pd({name:e,designation:t,status:n,chips:r=[],actions:a=[],kpis:s=[],steps:c=[],loading:l=!1}){return(0,o.jsxs)(`div`,{className:`fin-detail-header`,children:[(0,o.jsxs)(`div`,{className:`fin-dh__top`,children:[(0,o.jsxs)(`div`,{className:`fin-dh__identity`,children:[(0,o.jsx)(wd,{name:e,size:`lg`}),(0,o.jsxs)(`div`,{className:`fin-dh__who`,children:[(0,o.jsxs)(`div`,{className:`fin-dh__name-row`,children:[(0,o.jsx)(`h2`,{className:`fin-dh__name`,children:e||`Details`}),n?(0,o.jsx)(cd,{status:n}):null]}),t?(0,o.jsx)(`span`,{className:`fin-dh__designation`,children:t}):null,r.length?(0,o.jsx)(`div`,{className:`fin-dh__chips`,children:r.map(e=>(0,o.jsx)(Nd,{chip:e},e.key??e.label))}):null]})]}),a.length?(0,o.jsx)(`div`,{className:`fin-dh__actions`,children:a.map(e=>{let t=(0,o.jsx)(Pr,{variant:e.enabled?e.variant??`default`:`default`,icon:e.icon,disabled:!e.enabled,loading:!!e.loading,onClick:e.onClick,children:e.label},e.key??e.label);return e.enabled||!e.disabledReason?t:(0,o.jsx)(i.Tooltip,{title:e.disabledReason,children:(0,o.jsx)(`span`,{className:`fin-dh__action-wrap`,children:t})},e.key??e.label)})}):null]}),c.length?(0,o.jsx)(gd,{steps:c}):null,s.length||l?(0,o.jsx)(ld,{items:s,loading:l,compact:!0}):null]})}var{Text:Fd}=i.Typography,Id={draft:`default`,logged:`blue`,submitted:`processing`,approved:`success`,rejected:`error`,resubmitted:`purple`,save_draft:`default`,pending:`warning`,not_submitted:`default`};function Ld({status:e}){if(!e||e===`draft`||e===`not_submitted`)return null;let t={submitted:{icon:(0,o.jsx)(a.CheckOutlined,{}),color:`blue`,label:`Submitted`},approved:{icon:(0,o.jsx)(a.CheckCircleOutlined,{}),color:`green`,label:`Approved`},rejected:{icon:(0,o.jsx)(a.CloseCircleOutlined,{}),color:`red`,label:`Rejected`},resubmitted:{icon:(0,o.jsx)(a.SyncOutlined,{}),color:`purple`,label:`Re-Submitted`},save_draft:{icon:null,color:`default`,label:`Draft`}}[e];return t?(0,o.jsx)(i.Tag,{color:t.color,icon:t.icon,style:{borderRadius:20,fontSize:12,padding:`2px 10px`},children:t.label}):(0,o.jsx)(i.Tag,{color:Id[e]??`default`,children:e})}var Rd={working:`timesheet-day-cell--working`,leave:`timesheet-day-cell--leave`,holiday:`timesheet-day-cell--holiday`,weekoff:`timesheet-day-cell--weekoff`};function zd(e,t=0){let n=Number(e);return Number.isFinite(n)?n:t}function Bd(e){let t=zd(e);return t===0?`0 hrs`:`${t.toFixed(1).replace(/\.0$/,``)} hrs`}function Vd(e){let t=zd(e);return t===0?`0h`:`${t.toFixed(1).replace(/\.0$/,``)}h`}var Hd={ST:`#D0E6FF`,OT:`#AAFEBCA6`,leave:`#FFECBA`};function Ud(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 Wd(e={},{angle:t=`135deg`}={}){let n=[[`ST`,zd(e?.workingHours?.ST)],[`OT`,zd(e?.workingHours?.OT)],[`leave`,zd(e?.leave?.CL)+zd(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=Ud(a/r,t)*100;a+=o;let l=s===n.length-1?100:Ud(a/r,t)*100;i.push(`${Hd[e]} ${c.toFixed(2)}% ${l.toFixed(2)}%`)}),`linear-gradient(${t}, ${i.join(`, `)})`}function Gd(e={},{isUnloggedHighlight:t=!1,selected:n=!1,selectable:r=!1,reviewMode:i=!1}={}){let a=[zd(e?.workingHours?.ST),zd(e?.workingHours?.OT),zd(e?.leave?.CL)+zd(e?.leave?.SL)].filter(e=>e>0).length>1,o=e?.logType??(e?.isHoliday?`holiday`:e?.isWeekOff?`weekoff`:null),s=e?.status;return[`timesheet-day-cell`,!a&&o?Rd[o]??``:``,e?.isFuture?`timesheet-day-cell--future`:``,s===`rejected`?`timesheet-day-cell--rejected`:``,s===`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 Kd({day:e,readonly:t=!1,selected:n=!1,isUnloggedHighlight:r=!1,onSelect:s,onQuickLog:l,splitMode:u=`proportional`,splitAngle:d=`135deg`,selectable:f=!1,onToggleSelect:p,reviewMode:m=!1,onApproveDay:h,onRejectDay:g}){let _=zd(e?.workingHours?.ST),v=zd(e?.workingHours?.OT),y=zd(e?.leave?.CL)+zd(e?.leave?.SL),b=e?.status,x=b===`approved`,S=b===`rejected`,C=x&&!m,w=!t&&!f&&!e?.isFuture&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isLogged,T=u===`proportional`?Wd(e,{angle:d}):null,E=t=>{t.stopPropagation(),l?.(e?.date)},D=()=>{if(f){p?.(e?.date);return}s?.(e)},O=m&&e?.isLogged,k=(0,o.jsxs)(`button`,{type:`button`,className:Gd(e,{isUnloggedHighlight:r,selected:n,selectable:f,reviewMode:m}),style:T?{background:T}:void 0,disabled:t&&!O||e?.isFuture||C&&!m,onClick:D,children:[(0,o.jsxs)(`span`,{className:`timesheet-day-cell__top`,children:[(0,o.jsxs)(`span`,{className:`timesheet-day-cell__date`,children:[e?.date?(0,c.default)(e.date).date():`-`,S&&(0,o.jsx)(`span`,{className:`timesheet-day-cell__reject-dot`})]}),(0,o.jsxs)(`span`,{className:`timesheet-day-cell__top-right`,children:[w&&(0,o.jsx)(i.Tooltip,{title:`Quick log 8h`,placement:`top`,children:(0,o.jsx)(a.ClockCircleOutlined,{className:`timesheet-day-cell__quick-log-icon`,onClick:E})}),!w&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isFuture&&(0,o.jsx)(a.ClockCircleOutlined,{className:`timesheet-day-cell__quick-log-icon timesheet-day-cell__quick-log-icon--logged`})]})]}),(0,o.jsxs)(`span`,{className:`timesheet-day-cell__body`,children:[e?.isHoliday&&(0,o.jsx)(i.Tag,{color:`purple`,className:`timesheet-type-tag`,children:`H`}),e?.isWeekOff&&!e?.isLogged&&(0,o.jsx)(Fd,{type:`secondary`,className:`timesheet-no-log`,children:`Off`}),_>0&&(0,o.jsxs)(`span`,{className:`timesheet-hour-label`,children:[(0,o.jsx)(`span`,{className:`timesheet-hour-value`,children:Vd(_)}),(0,o.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-st`,children:` s`})]}),v>0&&(0,o.jsxs)(`span`,{className:`timesheet-hour-label timesheet-hour-label--ot`,children:[(0,o.jsx)(`span`,{className:`timesheet-hour-value`,children:Vd(v)}),(0,o.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-ot`,children:` o`})]}),y>0&&(0,o.jsxs)(`span`,{className:`timesheet-hour-label timesheet-hour-label--leave`,children:[(0,o.jsx)(`span`,{className:`timesheet-hour-value`,children:Vd(y)}),(0,o.jsx)(`span`,{className:`timesheet-hour-suffix timesheet-hour-leave`,children:` L`})]}),!e?.isLogged&&!e?.isHoliday&&!e?.isWeekOff&&!e?.isFuture&&(0,o.jsx)(Fd,{type:`secondary`,className:`timesheet-no-log`,children:`No log`})]}),x&&(0,o.jsx)(a.CheckOutlined,{className:`timesheet-day-cell__verdict timesheet-day-cell__verdict--approved`}),S&&(0,o.jsx)(a.CloseCircleOutlined,{className:`timesheet-day-cell__verdict timesheet-day-cell__verdict--rejected`}),m&&e?.isLogged&&(h||g)&&(0,o.jsxs)(`span`,{className:`timesheet-day-review-actions`,children:[h&&(0,o.jsx)(`span`,{role:`button`,tabIndex:-1,className:`ts-approve`,title:`Approve this day`,onClick:t=>{t.stopPropagation(),h(e?.date)},children:(0,o.jsx)(a.CheckOutlined,{})}),g&&(0,o.jsx)(`span`,{role:`button`,tabIndex:-1,className:`ts-reject`,title:`Reject this day`,onClick:t=>{t.stopPropagation(),g(e?.date)},children:(0,o.jsx)(a.CloseCircleOutlined,{})})]})]});return S&&e?.rejectionReason?(0,o.jsx)(i.Tooltip,{title:e.rejectionReason,placement:`top`,children:(0,o.jsx)(`span`,{style:{display:`block`,width:`100%`},children:k})}):k}var qd=8,Jd=16,Yd=.001,Xd=(e,t,n)=>Math.min(Math.max(e,t),n);function Zd({open:e,day:t,saving:n=!1,onCancel:s,onSubmit:l,onDelete:u,hoursStep:d=.5,maxDailyHours:f=Jd}){let[p]=i.Form.useForm(),m=i.Form.useWatch(`ST`,p),h=i.Form.useWatch(`OT`,p),g=i.Form.useWatch(`Leave`,p);(0,r.useEffect)(()=>{if(!e)return;let n=!t?.isWeekOff&&!t?.isHoliday,r=t?.isLogged?zd(t?.workingHours?.ST):n?qd:0,i=zd(t?.workingHours?.OT),a=zd(t?.leave?.CL),o=zd(t?.leave?.SL);p.setFieldsValue({date:t?.date?(0,c.default)(t.date):null,ST:r,OT:i,Leave:a+o})},[t,p,e]);let _=()=>({validator(e,t){let n=zd(t);return n<0?Promise.reject(Error(`Standard Hours cannot be negative.`)):n>qd?Promise.reject(Error(`Standard Hours cannot exceed 8 hours.`)):Promise.resolve()}}),v=({getFieldValue:e})=>({validator(t,n){if(zd(n)<0)return Promise.reject(Error(`Leave Hours cannot be negative.`));let r=zd(e(`ST`)),i=zd(e(`Leave`));return Math.abs(r+i-qd)<=Yd?Promise.resolve():Promise.reject(Error(`Standard Hours and Leave Hours together must equal 8 hours.`))}}),y=({getFieldValue:e})=>({validator(t,n){let r=zd(n);if(r<0)return Promise.reject(Error(`Overtime cannot be negative.`));if(r===0)return Promise.resolve();let i=zd(e(`ST`));return i<qd?Promise.reject(Error(`Overtime can only be entered after completing 8 standard working hours.`)):zd(e(`Leave`))>0?Promise.reject(Error(`Overtime is not allowed when leave hours are recorded.`)):i+r>f?Promise.reject(Error(`Total working hours exceed the maximum allowed daily limit.`)):Promise.resolve()}}),b=({getFieldValue:e})=>({validator(t,n){let r=zd(n),i=zd(e(`OT`));return r>0&&i>0?Promise.reject(Error(`Overtime is not allowed when leave hours are recorded.`)):Promise.resolve()}}),x=()=>{p.validateFields([`ST`,`OT`,`Leave`]).catch(()=>{})},S=e=>{if(`ST`in e){let t=zd(e.ST),n={Leave:Xd(qd-t,0,qd)};t<qd&&(n.OT=0),p.setFieldsValue(n)}x()},C=async()=>{let e=await p.validateFields(),n=zd(e.Leave);l?.({date:e.date?.format(`YYYY-MM-DD`)??t?.date,logType:n>0&&zd(e.ST)>0?`mixed`:n>0?`leave`:`working`,workingHours:{ST:zd(e.ST),OT:zd(e.OT)},leave:{CL:n,SL:0},isHoliday:!!t?.isHoliday,isWeekOff:!!t?.isWeekOff,notes:``})},w=t?.isHoliday||t?.isWeekOff,T=t?.date?(0,c.default)(t.date).format(`MMM DD, YYYY`):`Log time`,E=zd(m),D=zd(h),O=zd(g),k=E<qd,A=E+D,j=E+D+O;return(0,o.jsxs)(i.Modal,{title:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(Fd,{strong:!0,children:T}),t?.isHoliday&&(0,o.jsx)(i.Tag,{color:`purple`,children:`Holiday`}),t?.isWeekOff&&(0,o.jsx)(i.Tag,{children:`Week Off`})]}),open:e,onCancel:s,onOk:C,confirmLoading:n,okText:`Save`,cancelText:`Cancel`,destroyOnHidden:!0,width:340,footer:(e,{OkBtn:n,CancelBtn:r})=>(0,o.jsxs)(i.Space,{style:{width:`100%`,justifyContent:`space-between`},children:[(0,o.jsx)(`div`,{children:t?.isLogged&&u&&(0,o.jsx)(i.Button,{danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>u(t),size:`small`,children:`Delete`})}),(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(r,{}),!w&&(0,o.jsx)(n,{})]})]}),children:[t?.rejectionReason&&(0,o.jsxs)(`div`,{className:`timesheet-log-reject`,children:[(0,o.jsxs)(`div`,{className:`timesheet-log-reject__note`,children:[(0,o.jsx)(a.CloseCircleOutlined,{className:`timesheet-log-reject__icon`}),(0,o.jsxs)(`div`,{className:`timesheet-log-reject__body`,children:[(0,o.jsx)(`span`,{className:`timesheet-log-reject__title`,children:`Sent back by your reviewer`}),(0,o.jsx)(`span`,{className:`timesheet-log-reject__reason`,children:t.rejectionReason})]})]}),(0,o.jsxs)(`div`,{className:`timesheet-log-reject__proof`,children:[(0,o.jsx)(a.UploadOutlined,{className:`timesheet-log-reject__proof-icon`}),(0,o.jsxs)(`div`,{className:`timesheet-log-reject__body`,children:[(0,o.jsx)(`span`,{className:`timesheet-log-reject__title timesheet-log-reject__title--proof`,children:`To fix it`}),(0,o.jsxs)(`ol`,{className:`timesheet-log-reject__steps`,children:[(0,o.jsx)(`li`,{children:`Correct the hours below.`}),(0,o.jsx)(`li`,{children:`Replace the proof / screenshot so it matches.`}),(0,o.jsx)(`li`,{children:`Save, then re-submit your timesheet.`})]})]})]})]}),w?(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:t?.isHoliday?`Holiday — no manual log required.`:`Week off — no log required.`}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(i.Form,{form:p,layout:`vertical`,className:`timesheet-log-form`,validateTrigger:[`onChange`,`onBlur`],onValuesChange:S,children:[(0,o.jsx)(i.Form.Item,{name:`date`,label:`Date`,children:(0,o.jsx)(i.DatePicker,{disabled:!0,style:{width:`100%`}})}),(0,o.jsx)(i.Form.Item,{name:`ST`,label:(0,o.jsxs)(`span`,{style:{color:`#1d4ed8`,fontWeight:600},children:[`Standard `,(0,o.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`Leave`],rules:[_,v],children:(0,o.jsx)(i.InputNumber,{min:0,max:qd,step:d,style:{width:`100%`},addonAfter:(0,o.jsx)(`span`,{style:{color:`#1d4ed8`,fontWeight:700},children:`s`})})}),(0,o.jsx)(i.Form.Item,{name:`OT`,label:(0,o.jsxs)(`span`,{style:{color:`#15803d`,fontWeight:600},children:[`Overtime `,(0,o.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`ST`,`Leave`],rules:[y],extra:k?`Complete 8 standard hours to log overtime.`:void 0,children:(0,o.jsx)(i.InputNumber,{min:0,max:f,step:d,style:{width:`100%`},disabled:k,addonAfter:(0,o.jsx)(`span`,{style:{color:`#15803d`,fontWeight:700},children:`o`})})}),(0,o.jsx)(i.Form.Item,{name:`Leave`,label:(0,o.jsxs)(`span`,{style:{color:`#b45309`,fontWeight:600},children:[`Leave `,(0,o.jsx)(`span`,{style:{fontWeight:400,color:`#6b7280`},children:`hrs`})]}),dependencies:[`ST`,`OT`],rules:[v,b],children:(0,o.jsx)(i.InputNumber,{min:0,max:qd,step:d,style:{width:`100%`},addonAfter:(0,o.jsx)(`span`,{style:{color:`#b45309`,fontWeight:700},children:`L`})})})]}),(0,o.jsxs)(`div`,{className:`timesheet-log-summary`,children:[(0,o.jsxs)(`div`,{className:`timesheet-log-summary__row`,children:[(0,o.jsx)(Fd,{type:`secondary`,children:`Worked (Standard + Overtime)`}),(0,o.jsx)(Fd,{strong:!0,children:Bd(A)})]}),(0,o.jsxs)(`div`,{className:`timesheet-log-summary__row`,children:[(0,o.jsx)(Fd,{type:`secondary`,children:`Day Total`}),(0,o.jsx)(Fd,{strong:!0,children:Bd(j)})]})]})]})]})}function Qd({count:e=0,total:t=0,hours:n=8,loading:r=!1,onConfirm:s,onCancel:c,onSelectAll:l,onSelectNone:u}){return(0,o.jsxs)(`div`,{className:`timesheet-quicklog-bar`,children:[(0,o.jsxs)(i.Space,{size:8,wrap:!0,children:[(0,o.jsx)(Fd,{strong:!0,children:e===0?`No days selected`:`Log ${n}h standard on ${e} day${e===1?``:`s`}`}),t>0&&(0,o.jsxs)(Fd,{type:`secondary`,style:{fontSize:12},children:[e,` of `,t,` eligible · click a day to deselect it`]})]}),(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(i.Button,{size:`small`,onClick:l,disabled:e===t,children:`Select all`}),(0,o.jsx)(i.Button,{size:`small`,onClick:u,disabled:e===0,children:`Clear`}),(0,o.jsx)(i.Button,{size:`small`,onClick:c,children:`Cancel`}),(0,o.jsx)(i.Button,{size:`small`,type:`primary`,icon:(0,o.jsx)(a.ClockCircleOutlined,{}),loading:r,disabled:e===0,onClick:s,children:`Confirm`})]})]})}function $d({open:e=!1,loading:t=!1,onSave:n,onCancel:a}){let[s,c]=(0,r.useState)(``);return(0,r.useEffect)(()=>{e&&c(``)},[e]),(0,o.jsx)(i.Modal,{title:`Rejection Reason`,open:e,onCancel:a,footer:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{onClick:a,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,danger:!0,disabled:!s.trim(),loading:t,onClick:()=>n?.(s.trim()),children:`Reject`})]}),destroyOnHidden:!0,children:(0,o.jsx)(i.Form,{layout:`vertical`,children:(0,o.jsx)(i.Form.Item,{label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(`span`,{style:{color:`#ff4d4f`},children:`*`}),` Comments`]}),help:s.trim()?``:`Rejection reason is required`,validateStatus:s.trim()?``:`error`,children:(0,o.jsx)(i.Input.TextArea,{rows:4,maxLength:1e3,showCount:!0,placeholder:`Enter reason for rejection...`,value:s,onChange:e=>c(e.target.value)})})})})}function ef({loading:e=!1,disabled:t=!1,onQuickLog:n}){return(0,o.jsx)(i.Card,{size:`small`,className:`timesheet-quick-log`,children:(0,o.jsx)(i.Space,{wrap:!0,children:(0,o.jsx)(Pr,{variant:`primary`,icon:(0,o.jsx)(a.ClockCircleOutlined,{}),loading:e,disabled:t,onClick:()=>n?.(`businessDays`),children:`Quick Log (8h s)`})})})}function tf({proof:e,uploading:t=!1,disabled:n=!1,onUpload:r,onPreview:s}){return(0,o.jsxs)(i.Card,{className:`timesheet-proof`,size:`small`,title:`Proof / screenshot`,children:[e?.fileName?(0,o.jsxs)(`div`,{className:`timesheet-proof__file`,children:[(0,o.jsx)(a.FileTextOutlined,{style:{color:`#1677ff`}}),(0,o.jsx)(Fd,{strong:!0,style:{flex:1,minWidth:0},ellipsis:!0,children:e.fileName}),s&&(0,o.jsx)(i.Button,{type:`link`,size:`small`,onClick:()=>s(e),children:`Preview`})]}):(0,o.jsx)(Fd,{type:`secondary`,style:{fontSize:12},children:`Upload Proof`}),(0,o.jsx)(i.Upload,{beforeUpload:e=>(r?.(e),!1),maxCount:1,showUploadList:!1,disabled:n,accept:`.pdf,.doc,.docx,.png,.jpg,.jpeg`,children:!n&&(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.UploadOutlined,{}),loading:t,block:!0,size:`small`,style:{marginTop:6},children:e?.fileName?`Replace proof`:`Upload proof`})}),(0,o.jsx)(Fd,{type:`secondary`,style:{fontSize:11},children:`Supports: .pdf, .doc, .docx, .png, .jpg — max 10 MB`})]})}function nf({value:e,disabled:t=!1,onChange:n,label:r=`Notes / Comments`,maxLength:a=1e3}){let s=(e??``).length;return(0,o.jsxs)(i.Card,{className:`timesheet-notes`,size:`small`,title:r,children:[(0,o.jsx)(`div`,{className:`timesheet-notes__field`,children:(0,o.jsx)(i.Input.TextArea,{className:`timesheet-notes__textarea`,rows:5,maxLength:a,value:e,disabled:t,onChange:e=>n?.(e.target.value),placeholder:`Add notes or comments...`})}),(0,o.jsxs)(`div`,{className:`timesheet-notes__count`,children:[s,` / `,a]})]})}function rf({status:e,loading:t=!1,readonly:n=!1,rejectionReason:s,rejectionMode:c=`modal`,title:l=`Review Notes`,hint:u=`Review comment is mandatory while rejecting`,approveDisabled:d=!1,approveDisabledReason:f,onSubmit:p,onApprove:m,onReject:h,onReopen:g}){let[_,v]=(0,r.useState)(!1),[y,b]=(0,r.useState)(!1),[x,S]=(0,r.useState)(``),C=[`submitted`,`resubmitted`,`save_draft`].includes(e),w=e===`rejected`,T=e===`approved`,E=e===`submitted`||e===`resubmitted`,D=!e||e===`draft`||e===`not_submitted`,O=async e=>{b(!0);try{await h?.(e),v(!1)}finally{b(!1)}},k=()=>i.Modal.confirm({title:`Reopen timesheet?`,content:`The timesheet will return to submitted state.`,onOk:g}),A=()=>{let e=x.trim();if(!e){i.message.error(`A review comment is required to reject`);return}h?.(e)};if(c===`inline`)return(0,o.jsxs)(i.Card,{size:`small`,className:`timesheet-review-notes-card`,children:[(0,o.jsxs)(`div`,{className:`timesheet-review-notes-card__head`,children:[(0,o.jsx)(Fd,{strong:!0,children:l}),(0,o.jsxs)(Fd,{type:`secondary`,className:`timesheet-review-notes-card__hint`,children:[(0,o.jsx)(a.InfoCircleOutlined,{}),` `,u]})]}),s&&w&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:`Rejected`,description:s,className:`timesheet-review-notes-card__alert`}),E?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Input.TextArea,{rows:3,maxLength:1e3,value:x,onChange:e=>S(e.target.value),placeholder:`Add your note`,className:`timesheet-review-notes-card__input`}),(0,o.jsxs)(`div`,{className:`timesheet-review-notes-card__actions`,children:[(0,o.jsx)(i.Button,{danger:!0,loading:t,onClick:A,children:`Reject`}),(0,o.jsx)(i.Tooltip,{title:d?f:``,children:(0,o.jsx)(i.Button,{type:`primary`,loading:t,disabled:d,onClick:m,children:`Approve`})})]})]}):(0,o.jsxs)(`div`,{className:`timesheet-review-notes-card__decided`,children:[(0,o.jsxs)(Fd,{type:`secondary`,children:[`This timesheet is `,e,`.`]}),(T||w)&&g?(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.InfoCircleOutlined,{}),loading:t,onClick:k,children:`Reopen`}):null]})]});let j=`Submit`,M=!1;return E&&(j=e===`resubmitted`?`Re-Submitted`:`Submitted`,M=!0),w&&(j=`Re-Submit`,M=!1),T&&(j=`Approved`,M=!0),(0,o.jsxs)(o.Fragment,{children:[s&&w&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:`Rejected`,description:s,style:{marginBottom:8}}),(0,o.jsxs)(`div`,{className:`timesheet-action-bar`,children:[(D||w||E||T)&&p&&(0,o.jsx)(Pr,{variant:`primary`,icon:(0,o.jsx)(a.SendOutlined,{}),loading:t,disabled:M,onClick:M?void 0:p,block:!0,children:j}),C&&m&&(0,o.jsx)(Pr,{variant:`primary`,icon:(0,o.jsx)(a.CheckOutlined,{}),loading:t,onClick:m,children:`Approve`}),C&&h&&(0,o.jsx)(i.Button,{danger:!0,loading:t,onClick:()=>v(!0),children:`Reject`}),(T||w)&&g&&(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.InfoCircleOutlined,{}),loading:t,onClick:k,children:`Reopen`})]}),(0,o.jsx)($d,{open:_,loading:y,onSave:O,onCancel:()=>v(!1)})]})}var af=e=>Number.isFinite(Number(e))?Number(e):0;function of(e,t,{isToday:n}={}){let r=Number(e.slice(-2)),a=af(t?.workingHours?.ST),s=af(t?.workingHours?.OT),l=af(t?.leave?.CL)+af(t?.leave?.SL),u=a+s,d=!!t?.isLogged||u>0||l>0,f=t?t.isHoliday?`holiday`:d&&u>0?`work`:l>0?`leave`:t.isWeekOff?`weekoff`:`blank`:`blank`,p=[`fin-daycell`,`fin-daycell--${f}`,t?.status===`approved`?`fin-daycell--approved`:``,t?.status===`rejected`?`fin-daycell--rejected`:``,n?`fin-daycell--today`:``].filter(Boolean).join(` `),m=f===`work`?Wd(t):null,h=(0,o.jsxs)(`div`,{className:p,style:m?{background:m}:void 0,children:[(0,o.jsx)(`span`,{className:`fin-daycell__num`,children:r}),f===`work`?(0,o.jsxs)(`span`,{className:`fin-daycell__hours`,children:[u%1==0?u:u.toFixed(1),`h`,s>0?(0,o.jsx)(`em`,{children:` +OT`}):null]}):f===`leave`?(0,o.jsx)(`span`,{className:`fin-daycell__hours`,children:`Leave`}):f===`holiday`?(0,o.jsx)(`span`,{className:`fin-daycell__hours`,children:`Holiday`}):null]});return t?(0,o.jsx)(i.Tooltip,{title:[(0,c.default)(e).format(`ddd, MMM D`),a?`ST ${a}h`:null,s?`OT ${s}h`:null,l?`Leave ${l}h`:null,t.isHoliday?`Holiday`:null,t.status===`rejected`?`Rejected${t.rejectionReason?` — ${t.rejectionReason}`:``}`:null,t.status===`approved`?`Approved`:null].filter(Boolean).join(` · `),children:h}):h}var sf=[{label:`Standard`,color:`#3b82f6`},{label:`Overtime`,color:`#22c55e`},{label:`Leave`,color:`#f59e0b`},{label:`Holiday`,color:`#8b5cf6`},{label:`Rejected`,color:`#ef4444`}];function cf({dailyLogs:e=[],timesheetSummary:t={},rate:n=0,rateLabel:s=`Rate`,amountLabel:l=`Amount`,approvedHours:u,month:d,year:f,monthLabel:p,extraEquationTerms:m=[]}){let h=(0,r.useMemo)(()=>Yu(e),[e]),g=(0,r.useMemo)(()=>Xu(e,n),[e,n]),_=(0,r.useMemo)(()=>$u(e,n),[e,n]),v=h.totalHours||af(u),y=v*af(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:Nu(v),icon:(0,o.jsx)(a.ClockCircleOutlined,{}),tone:`brand`,sub:`${h.loggedDays} logged days`},{key:`st`,label:`Standard`,value:Nu(h.stHours||t.totalSTHours),icon:(0,o.jsx)(a.FieldTimeOutlined,{}),tone:`neutral`},{key:`ot`,label:`Overtime`,value:Nu(h.otHours||t.totalOTHours),icon:(0,o.jsx)(a.ThunderboltOutlined,{}),tone:`warning`},{key:`leave`,label:`Leave`,value:Nu(h.leaveHours||t.leaveHours),icon:(0,o.jsx)(a.RestOutlined,{}),tone:`neutral`,sub:`${h.leaveDays} days`},{key:`avg`,label:`Avg / Logged Day`,value:Nu(h.avgHoursPerLoggedDay),icon:(0,o.jsx)(a.CalendarOutlined,{}),tone:`info`},{key:`amount`,label:l,value:Mu(y),icon:(0,o.jsx)(a.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,o.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,o.jsx)(`span`,{className:`fin-cell__primary`,children:e?(0,c.default)(e).format(`ddd, MMM D`):`—`}),t.isHoliday?(0,o.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,o.jsxs)(`div`,{className:`fin-bar`,children:[(0,o.jsx)(`span`,{className:`fin-bar__track`,children:(0,o.jsx)(`span`,{className:`fin-bar__fill`,style:{width:`${e/b*100}%`}})}),(0,o.jsx)(`span`,{className:`fin-bar__value`,children:e.toFixed(2)})]})},{title:l,dataIndex:`amount`,align:`right`,width:110,render:e=>(0,o.jsx)(`strong`,{className:`fin-cell-money__value`,children:Mu(e)})},{title:`Status`,dataIndex:`status`,align:`center`,width:100,render:e=>(0,o.jsx)(cd,{status:e,size:`sm`})},{title:`Reviewer`,dataIndex:`reviewer`,width:130,render:e=>e||(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:`—`})},{title:`Remarks`,dataIndex:`remarks`,ellipsis:!0,render:e=>e?(0,o.jsx)(i.Tooltip,{title:e,children:(0,o.jsx)(`span`,{className:`fin-remarks`,children:e})}):(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:`—`})}],T=[{title:`Week`,dataIndex:`label`,render:(e,t)=>(0,o.jsx)(lf,{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,o.jsxs)(`div`,{className:`fin-bar`,children:[(0,o.jsx)(`span`,{className:`fin-bar__track`,children:(0,o.jsx)(`span`,{className:`fin-bar__fill`,style:{width:`${e/x*100}%`}})}),(0,o.jsx)(`span`,{className:`fin-bar__value`,children:e.toFixed(1)})]})},{title:l,dataIndex:`amount`,align:`right`,width:110,render:e=>(0,o.jsx)(`strong`,{className:`fin-cell-money__value`,children:Mu(e)})}];return(0,o.jsxs)(`div`,{className:`fin-analysis`,children:[(0,o.jsx)(ld,{items:S,compact:!0}),(0,o.jsx)(`div`,{className:`fin-daychips`,children:C.map(e=>(0,o.jsxs)(`span`,{className:`fin-badge fin-badge--${e.tone}`,children:[e.value,` `,e.label]},e.label))}),(0,o.jsx)(fd,{className:`fin-equation-card`,children:(0,o.jsx)(hd,{terms:[{value:Nu(v),label:`Approved Hours`},{op:`×`},{value:Pu(n),label:s},{op:`=`},{value:Mu(y),label:l,tone:`accent`},...m]})}),(0,o.jsxs)(`div`,{className:`fin-analysis__grid`,children:[(0,o.jsx)(D,{className:`fin-heatmap`,days:e,startDay:`Mon`,readonly:!0,year:f,month:d,monthLabel:p,legend:sf,renderDayContent:of,onPrevMonth:()=>{},onNextMonth:()=>{}}),(0,o.jsx)(fd,{title:`Weekly Breakdown`,className:`fin-weekly`,children:(0,o.jsx)(i.Table,{className:`fin-analysis-table`,size:`small`,rowKey:e=>e.label,pagination:!1,dataSource:_,columns:T,locale:{emptyText:`No logged weeks`}})})]}),(0,o.jsx)(fd,{title:`Daily Breakdown — Hours × ${s} = ${l}`,children:(0,o.jsx)(i.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,o.jsxs)(i.Table.Summary.Row,{className:`fin-analysis-total`,children:[(0,o.jsx)(i.Table.Summary.Cell,{index:0,children:(0,o.jsx)(`strong`,{children:`Total`})}),(0,o.jsx)(i.Table.Summary.Cell,{index:1,align:`right`,children:h.stHours.toFixed(2)}),(0,o.jsx)(i.Table.Summary.Cell,{index:2,align:`right`,children:h.otHours?h.otHours.toFixed(2):`—`}),(0,o.jsx)(i.Table.Summary.Cell,{index:3,align:`right`,children:h.leaveHours?h.leaveHours.toFixed(2):`—`}),(0,o.jsx)(i.Table.Summary.Cell,{index:4,align:`right`,children:(0,o.jsx)(`strong`,{children:v.toFixed(2)})}),(0,o.jsx)(i.Table.Summary.Cell,{index:5,align:`right`,children:(0,o.jsx)(`strong`,{children:Mu(y)})}),(0,o.jsx)(i.Table.Summary.Cell,{index:6}),(0,o.jsx)(i.Table.Summary.Cell,{index:7}),(0,o.jsx)(i.Table.Summary.Cell,{index:8})]}):null})})]})}function lf({primary:e,secondary:t}){return(0,o.jsxs)(`div`,{className:`fin-cell-text`,children:[(0,o.jsx)(`span`,{className:`fin-cell__primary`,children:e}),t?(0,o.jsx)(`span`,{className:`fin-cell__secondary`,children:t}):null]})}var uf=`submissionManager`,df=`onboardingManager`,ff=`cfo`,pf=`submissionManagerReapprove`,mf=`onboardingManagerReapprove`,hf=[{key:`submitted`,label:`Recruiter Submitted`},{key:`manager`,label:`Manager Approved`},{key:`onboarding`,label:`Onboarding Confirmed`},{key:`cfo`,label:`CFO Review`}],gf={[uf]:{title:`Finance Review`,statusLabel:`Pending Your Approval`,trail:{steps:hf.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:!1}},margin:{label:`Realtek Margin`,formula:`netProposed-netEmployer`},actions:{primary:{key:`approve`,label:`Approve`,tone:`primary`,api:`submissionApprove`},reject:{key:`reject`,label:`Reject`,tone:`warn`,api:`submissionReject`,requireReason:!0}},persist:{proposedRateHistory:!0,rateHistory:!0},readOnly:!1},[df]:{title:`Onboarding Review`,statusLabel:`Pending Onboarding`,trail:{steps:hf.slice(0,3),current:`onboarding`,show:!0},sections:{jobClient:{show:!0},clientJobRate:{show:!0,note:!0},rateBreakdown:{show:!0,employer:{show:!0,editable:!1,locked:!0},proposed:{show:!0,editable:!1,locked:!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:{referralLink:!0,referralRateOnEngagement:!0,rateHistory:!0},readOnly:!1},cfo:{title:`Final Approval`,statusLabel:`Pending CFO Sign-off`,trail:{steps:hf,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}};function _f(e,{title:t,primaryLabel:n}){return{...e,title:t,statusLabel:`Rejected by CFO — Re-approval Needed`,rejection:{show:!0,sources:[`engagement.financeApproval.rejectionReason`,`engagement.financeApproval.remarks`,`financeApprovalRequest.rejectionReason`,`rejectionReason`],title:`CFO Rejected This Request`},actions:{...e.actions,primary:{...e.actions.primary,label:n}}}}gf[pf]=_f(gf[uf],{title:`Finance Re-Review`,primaryLabel:`Re-Approve`}),gf[mf]=_f(gf[df],{title:`Onboarding Re-Review`,primaryLabel:`Re-send for CFO Approval`});function vf(e){return gf[e]??gf.cfo}function yf(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 bf(e){return String(e?.margin?.formula??``).includes(`referral`)}var xf=`W2`,Sf=`C2C`,Cf=e=>{let t=Number(e);return Number.isFinite(t)?t:0},wf=e=>Math.round((Cf(e)+2**-52)*100)/100,Tf=e=>String(e?.$oid??e?._id?.$oid??e?._id??e?.id??e??``);function Ef(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 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 wf(Cf(e)*Cf(t)/100)}function jf(e={},t={}){let n=e.submission??e??{},r=e.job??{},i=e.client??{},a=e.engagement??{},o=kf(Of(n,`contractType`)??a.onboardingType??e.contractType),s=r.jobPayDetails??{},c=Cf(s.clientBudgetStart??Of(n,`clientBudget`,`clientBudgetStart`)),l=Cf(s.clientBudgetEnd??Of(n,`clientBudget`,`clientBudgetEnd`))||c,u=l||c,d=t.clientVmsFee??i.vmsFee??{},f=d.isApplicable===!1?0:Cf(d.value??d.percent??(typeof d==`number`?d:void 0)??Of(n,`clientVmsPercent`)??Of(n,`vmsPercent`)),p=Cf(Of(n,`proposedRate`,`candidateProposedRate`)??e.proposedRateValue),m=Of(n,`proposedRate`,`candidateProposedRateCurrencySymbol`)||Of(n,`proposedRate`,`candidateProposedRateCurrency`)||Of(n,`candidateBudget`,`candidateBudgetCurrencySymbol`)||`$`,h=Cf(Of(n,`candidateBudget`,`candidateBudgetStart`)??Of(n,`candidateBudget`,`candidateBudgetRate`)??Of(n,`candidateRate`,`candidateAcceptedRate`)),g=Cf(Of(n,`submission_current_employer`,`vmsCommission`)??e.employer?.vmsCommission??a.vmsPercent),_=Of(n,`submission_current_employer`,`tax`);return{contractType:o,currency:m,clientJobRate:u,clientJobRateFrom:c,clientJobRateTo:l,clientVmsPercent:f,proposedRate:p,employerRate:h,employerVmsPercent:g,locationTaxPercent:_!=null&&_!==``?Cf(_):t.locationTaxPercent==null?Mf(t.locationTaxRows,Of(n,`submission_current_employer`,`location`)??Of(n,`city`)??Of(n,`state`)??r.jobLocation):Cf(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 Cf(r?.taxValue??r?.taxPercent)}function Nf(e,t={}){let{contractType:n=`C2C`,currency:r=`$`,clientJobRate:i=0,clientJobRateFrom:a=0,clientJobRateTo:o=0,clientVmsPercent:s=0,proposedRate:c=0,employerRate:l=0,employerVmsPercent:u=0,locationTaxPercent:d=0}=e??{},f=t.proposedRate==null?Cf(c):Cf(t.proposedRate),p=!!t.includeReferral,m=p?Cf(t.referralRate):0,h=Af(i,s),g=wf(i-h),_=Af(f,s),v=wf(f-_),y=n===`W2`,b=y?d:u,x=Af(l,b),S=wf(l-x),C=wf(v-S-m);return{contractType:n,currency:r,isW2:y,clientJobRate:wf(i),clientJobRateFrom:wf(a),clientJobRateTo:wf(o),clientVmsPercent:Cf(s),clientDiscount:h,netClientRate:g,proposedRate:wf(f),discountVms:_,netProposedRate:v,employerRate:wf(l),employerDeductionPercent:Cf(b),employerDeduction:x,employerDeductionLabel:y?`Location Tax`:`Employer VMS`,netEmployerRate:S,includereferral:p,referralRate:wf(m),totalMargin:C,marginPositive:C>=0}}function Pf(e,t,n){return Nf(jf(e,t),n)}function Ff(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 If(e,t=`$`){let n=Cf(e);return`${n<0?`−`:``}${t}${Math.abs(n).toFixed(2)}`}var{TextArea:Lf}=i.Input,Rf=(...e)=>e.find(e=>e!=null&&e!==``)??`-`;function zf({label:e,value:t}){return(0,o.jsxs)(`div`,{className:`fa-info-item`,children:[(0,o.jsx)(`div`,{className:`fa-info-k`,children:e}),(0,o.jsx)(`div`,{className:`fa-info-v`,children:String(t??`-`)})]})}zf.propTypes={label:l.default.string,value:l.default.node};function Bf({label:e,sub:t,value:n,deduction:r,children:i,total:a}){return(0,o.jsxs)(`div`,{className:`fa-rate-row${a?` fa-rate-total`:``}`,children:[(0,o.jsxs)(`div`,{className:`fa-rate-label`,children:[e,t?(0,o.jsx)(`span`,{className:`fa-rate-sub`,children:t}):null]}),i??(0,o.jsx)(`div`,{className:`fa-rate-val fa-num${r?` fa-deduction`:``}`,children:n})]})}Bf.propTypes={label:l.default.node,sub:l.default.node,value:l.default.node,deduction:l.default.bool,children:l.default.node,total:l.default.bool};function Vf({label:e,value:t,hero:n,tone:r}){return(0,o.jsxs)(`div`,{className:`fa-stat${n?` fa-stat-hero`:``}${r?` fa-stat-${r}`:``}`,children:[(0,o.jsx)(`div`,{className:`fa-stat-k`,children:e}),(0,o.jsx)(`div`,{className:`fa-stat-v fa-num`,children:t})]})}Vf.propTypes={label:l.default.string,value:l.default.node,hero:l.default.bool,tone:l.default.string};function Hf({type:e,record:t,lookups:n,identity:s,referralOptions:c,onReferralChange:l,currentUserId:u,actions:d,onClose:f,variant:p}){let m=vf(e),h=(0,r.useMemo)(()=>jf(t,n),[t,n]),g=bf(m),[_,v]=(0,r.useState)(h.proposedRate),[y,b]=(0,r.useState)(t?.engagement?.financeApproval?.referralId??t?.referral?._id??null),[x,S]=(0,r.useState)(t?.engagement?.financeApproval?.referralRate??t?.referral?.referalRate??0),[C,w]=(0,r.useState)(`Recurring`),[T,E]=(0,r.useState)(``),[D,O]=(0,r.useState)(!1),[k,A]=(0,r.useState)(``),j=m.sections.referral??{},M=t?.engagement?.financeApproval?.referralEnabled??t?.referralEnabled??(Number(x)>0||!!y),[N,P]=(0,r.useState)(!!M),F=j.toggle===!0,I=j.show===!0?F?N:!0:j.show===`ifEnabled`||j.show===`ifExists`?N:!1,L=g&&I,R=m.rejection?.show?yf(m,t):``,z=(0,r.useMemo)(()=>Nf(h,{proposedRate:m.sections.rateBreakdown?.proposed?.editable?_:void 0,includeReferral:L,referralRate:x}),[h,_,x,L,m]);I&&(y||Number(z.referralRate));let B=z.currency,V=m.readOnly,H=e=>{b(e);let t=(c??[]).find(t=>t.value===e);t?.lastRate!=null&&S(Number(t.lastRate)||0),t?.type&&w(t.type),l?.(e,t)},U=async e=>{if(!e)return;if(e.requireReason&&!T.trim()){O(!0);return}let t=d?.[e.api];if(!t){i.message.error(`No handler wired for "${e.api}"`);return}A(e.key);try{await t({computed:z,proposedRate:z.proposedRate,referral:I?{referralId:y,referralRate:z.referralRate,referralType:C,referralEnabled:!0}:{referralEnabled:!1,referralRate:0},referralEnabled:N,reason:T.trim(),rateHistory:m.persist?.rateHistory?Ff(z,u):void 0})}catch(e){i.message.error(e?.message??`Action failed`)}finally{A(``)}},W=m.actions.primary,G=m.actions.reject;return(0,o.jsxs)(`div`,{className:`fa-panel fa-variant-${p}`,children:[(0,o.jsx)(`div`,{className:`fa-topbar`,children:(0,o.jsxs)(`div`,{children:[(0,o.jsxs)(`div`,{className:`fa-crumb`,children:[Rf(t?.client?.clientName,s?.client),` · `,Rf(t?.job?.jobReferenceId,s?.reqId)]}),(0,o.jsxs)(`div`,{className:`fa-title-row`,children:[(0,o.jsxs)(`h2`,{className:`fa-title`,children:[m.title,` — `,Rf(s?.name,t?.submission?.candidateFullName)]}),(0,o.jsxs)(`span`,{className:`fa-status-pill`,children:[(0,o.jsx)(a.ClockCircleOutlined,{}),` `,m.statusLabel]})]})]})}),m.rejection?.show&&(0,o.jsxs)(`div`,{className:`fa-rejection`,children:[(0,o.jsx)(a.CloseCircleFilled,{className:`fa-rejection-icon`}),(0,o.jsxs)(`div`,{children:[(0,o.jsx)(`div`,{className:`fa-rejection-title`,children:m.rejection.title}),(0,o.jsx)(`div`,{className:`fa-rejection-reason`,children:R||`No reason was provided.`})]})]}),m.trail?.show&&(0,o.jsx)(`div`,{className:`fa-trail`,children:m.trail.steps.map((e,t)=>(0,o.jsxs)(`span`,{className:`fa-trail-part`,children:[(0,o.jsxs)(`span`,{className:`fa-trail-step${e.key===m.trail.current?` fa-current`:``}`,children:[e.key===m.trail.current?(0,o.jsx)(a.ClockCircleOutlined,{}):(0,o.jsx)(a.CheckOutlined,{}),e.label]}),t<m.trail.steps.length-1&&(0,o.jsx)(`span`,{className:`fa-trail-sep`,children:`→`})]},e.key))}),m.sections.jobClient?.show&&(0,o.jsxs)(`section`,{className:`fa-card`,children:[(0,o.jsx)(`div`,{className:`fa-card-head`,children:(0,o.jsx)(`h3`,{children:`Job & Client Details`})}),(0,o.jsx)(`div`,{className:`fa-card-body`,children:(0,o.jsxs)(`div`,{className:`fa-info-grid`,children:[(0,o.jsx)(zf,{label:`Client`,value:Rf(t?.client?.clientName,s?.client)}),(0,o.jsx)(zf,{label:`Job Title`,value:Rf(t?.job?.jobTitle,s?.role)}),(0,o.jsx)(zf,{label:`Req #`,value:Rf(t?.job?.jobReferenceId,s?.reqId)}),(0,o.jsx)(zf,{label:`Candidate`,value:Rf(s?.name,t?.submission?.candidateFullName)}),(0,o.jsx)(zf,{label:`Location`,value:Rf(s?.location,t?.job?.jobLocation)}),(0,o.jsx)(zf,{label:`Employment Type`,value:h.contractType}),(0,o.jsx)(zf,{label:`Vendor / MSP`,value:Rf(t?.submission?.supplierName,s?.vendor)}),(0,o.jsx)(zf,{label:`Submitted By`,value:Rf(t?.submission?.signatureEmail,s?.submittedBy)}),(0,o.jsx)(zf,{label:`Email`,value:Rf(s?.email,t?.submission?.email)})]})})]}),m.sections.clientJobRate?.show&&(0,o.jsxs)(`section`,{className:`fa-card`,children:[(0,o.jsx)(`div`,{className:`fa-card-head`,children:(0,o.jsx)(`h3`,{children:`Client Job Rate`})}),(0,o.jsx)(`div`,{className:`fa-card-body`,children:(0,o.jsxs)(`div`,{className:`fa-strip`,children:[(0,o.jsxs)(`div`,{className:`fa-strip-item`,children:[(0,o.jsx)(`span`,{className:`fa-strip-k`,children:`Client Job Rate`}),(0,o.jsxs)(`span`,{className:`fa-strip-v fa-num`,children:[If(z.clientJobRate,B),`/hr`]})]}),(0,o.jsxs)(`span`,{className:`fa-strip-op fa-num`,children:[`− `,z.clientVmsPercent,`% VMS`]}),(0,o.jsx)(`span`,{className:`fa-strip-eq`,children:`=`}),(0,o.jsxs)(`div`,{className:`fa-strip-item`,children:[(0,o.jsx)(`span`,{className:`fa-strip-k`,children:`Net Client Rate`}),(0,o.jsxs)(`span`,{className:`fa-strip-v fa-num`,style:{color:`var(--color-brand, #0053a5)`},children:[If(z.netClientRate,B),`/hr`]})]}),m.sections.clientJobRate.note&&(0,o.jsxs)(`div`,{className:`fa-strip-note`,children:[`For context only — the client-side rate doesn't feed into the `,m.margin.label,` below.`]})]})})]}),m.sections.rateBreakdown?.show&&(0,o.jsxs)(`section`,{className:`fa-card`,children:[(0,o.jsxs)(`div`,{className:`fa-card-head`,children:[(0,o.jsx)(`h3`,{children:`Rate Breakdown`}),m.sections.rateBreakdown.finalBadge&&(0,o.jsxs)(`span`,{className:`fa-final-badge`,children:[(0,o.jsx)(a.LockOutlined,{}),` Final`]})]}),(0,o.jsxs)(`div`,{className:`fa-card-body`,children:[(0,o.jsxs)(`div`,{className:`fa-rate-grid`,children:[(0,o.jsxs)(`div`,{className:`fa-rate-panel fa-employer`,children:[(0,o.jsxs)(`div`,{className:`fa-panel-head`,children:[(0,o.jsx)(`span`,{className:`fa-dot`}),`Employer Rate`]}),(0,o.jsxs)(`div`,{className:`fa-rate-rows`,children:[(0,o.jsx)(Bf,{label:`Employer Rate`,sub:`as submitted by recruiter`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.employerRate,B),` `,(0,o.jsx)(`span`,{className:`fa-unit`,children:`/hr`})]})}),z.isW2&&(0,o.jsx)(Bf,{label:`Employer Location`,sub:`used to determine location tax`,children:(0,o.jsx)(`div`,{className:`fa-rate-val`,children:Rf(s?.employerLocation,t?.submission?.city,t?.job?.jobLocation)})}),(0,o.jsx)(Bf,{label:z.employerDeductionLabel,sub:`${z.employerDeductionPercent}% of employer rate`,value:`−${If(z.employerDeduction,B).replace(`−`,``)}`,deduction:!0}),(0,o.jsx)(Bf,{total:!0,label:`Net Employer Rate`,value:(0,o.jsx)(`span`,{style:{color:`var(--color-purple, #7c3aed)`},children:If(z.netEmployerRate,B)})})]})]}),(0,o.jsxs)(`div`,{className:`fa-rate-panel fa-client`,children:[(0,o.jsxs)(`div`,{className:`fa-panel-head`,children:[(0,o.jsx)(`span`,{className:`fa-dot`}),`Proposed Rate`]}),(0,o.jsxs)(`div`,{className:`fa-rate-rows`,children:[m.sections.rateBreakdown.proposed.editable?(0,o.jsxs)(`div`,{className:`fa-rate-row fa-editable`,children:[(0,o.jsxs)(`div`,{className:`fa-rate-label`,children:[`Proposed Rate`,(0,o.jsx)(`span`,{className:`fa-rate-sub`,children:`rate we ask the client for`})]}),(0,o.jsxs)(`div`,{className:`fa-rate-edit`,children:[(0,o.jsx)(`span`,{className:`fa-edit-badge`,children:`Editable`}),(0,o.jsx)(i.InputNumber,{className:`fa-rate-input`,min:0,precision:2,value:_,onChange:e=>v(Number(e??0)),prefix:B,controls:!1})]})]}):(0,o.jsx)(Bf,{label:(0,o.jsxs)(`span`,{className:`fa-locked-label`,children:[`Proposed Rate`,m.sections.rateBreakdown.proposed.locked&&(0,o.jsxs)(`span`,{className:`fa-locked-badge`,children:[(0,o.jsx)(a.LockOutlined,{}),` Locked`]})]}),sub:`approved at finance review`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.proposedRate,B),` `,(0,o.jsx)(`span`,{className:`fa-unit`,children:`/hr`})]})}),(0,o.jsx)(Bf,{label:`Discount (VMS)`,sub:`${z.clientVmsPercent}% of proposed rate`,value:`−${If(z.discountVms,B).replace(`−`,``)}`,deduction:!0}),(0,o.jsx)(Bf,{total:!0,label:`Net Proposed Rate`,value:(0,o.jsx)(`span`,{style:{color:`var(--color-brand, #0053a5)`},children:If(z.netProposedRate,B)})})]})]})]}),F&&!V&&(0,o.jsxs)(`div`,{className:`fa-referral-toggle`,children:[(0,o.jsx)(i.Checkbox,{checked:N,onChange:e=>P(e.target.checked),children:(0,o.jsx)(`span`,{className:`fa-rt-title`,children:j.toggleLabel??`Add Referral`})}),(0,o.jsx)(`div`,{className:`fa-rt-hint`,children:j.toggleHint})]})]})]}),I&&(0,o.jsxs)(`section`,{className:`fa-card fa-referral-card`,children:[(0,o.jsxs)(`div`,{className:`fa-card-head`,children:[(0,o.jsxs)(`h3`,{children:[(0,o.jsx)(`span`,{className:`fa-dot fa-dot-warning`}),`Referral`]}),j.mode===`print`&&j.typeChip&&(0,o.jsx)(`span`,{className:`fa-type-chip`,children:C})]}),(0,o.jsx)(`div`,{className:`fa-card-body`,children:j.mode===`select`?(0,o.jsxs)(`div`,{className:`fa-referral-fields`,children:[(0,o.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,o.jsx)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-company`,children:`Referral Company`}),(0,o.jsx)(i.Select,{id:`fa-referral-company`,className:`fa-referral-select`,placeholder:`Select a referral`,value:y??void 0,onChange:H,options:c??[],showSearch:!0,optionFilterProp:`label`})]}),(0,o.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,o.jsx)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-rate`,children:`Referral Rate`}),(0,o.jsx)(i.InputNumber,{id:`fa-referral-rate`,className:`fa-referral-rate-input`,min:0,precision:2,value:x,onChange:e=>S(Number(e??0)),prefix:B,controls:!1,disabled:!y})]}),(0,o.jsxs)(`div`,{className:`fa-referral-field`,children:[(0,o.jsx)(`label`,{className:`fa-rf-k`,htmlFor:`fa-referral-type`,children:`Referral Type`}),(0,o.jsx)(i.Select,{id:`fa-referral-type`,className:`fa-referral-type`,value:C,onChange:w,disabled:!y,options:[{value:`Recurring`,label:`Recurring — every pay cycle`},{value:`One-time`,label:`One-time payout`}]})]}),y&&(0,o.jsxs)(`div`,{className:`fa-referral-note`,children:[`Last referral rate paid to this company:`,` `,(0,o.jsx)(`b`,{children:x?If(x,B):`—`})]})]}):(0,o.jsxs)(`div`,{className:`fa-rate-rows fa-print-rows`,children:[(0,o.jsx)(Bf,{label:`Referral Name`,sub:`added during onboarding`,children:(0,o.jsx)(`div`,{className:`fa-rate-val`,children:Rf(t?.referral?.referalCompanyName,s?.referralName)})}),(0,o.jsx)(Bf,{label:`Referral Rate`,sub:C===`One-time`?`deducted once, this payout only`:`deducted every pay cycle`,value:`−${If(x,B).replace(`−`,``)} /hr`,deduction:!0})]})})]}),(0,o.jsxs)(`div`,{className:`fa-outcome ${z.marginPositive?`fa-good`:`fa-bad`}`,children:[(0,o.jsxs)(`div`,{className:`fa-outcome-label`,children:[(0,o.jsx)(`div`,{className:`fa-outcome-icon`,children:z.marginPositive?(0,o.jsx)(a.RiseOutlined,{}):(0,o.jsx)(a.WarningOutlined,{})}),(0,o.jsx)(`div`,{className:`fa-outcome-t`,children:m.margin.label})]}),(0,o.jsxs)(`div`,{className:`fa-outcome-stats`,children:[(0,o.jsx)(Vf,{label:`Net Proposed Rate`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.netProposedRate,B),(0,o.jsx)(`span`,{className:`fa-u`,children:`/hr`})]})}),(0,o.jsx)(`span`,{className:`fa-stat-arrow`,children:`−`}),(0,o.jsx)(Vf,{label:`Net Employer Rate`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.netEmployerRate,B),(0,o.jsx)(`span`,{className:`fa-u`,children:`/hr`})]})}),L&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`span`,{className:`fa-stat-arrow`,children:`−`}),(0,o.jsx)(Vf,{label:`Referral Rate`,tone:`referral`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.referralRate,B),(0,o.jsx)(`span`,{className:`fa-u`,children:`/hr`})]})})]}),(0,o.jsx)(Vf,{hero:!0,label:`Margin`,value:(0,o.jsxs)(o.Fragment,{children:[If(z.totalMargin,B),(0,o.jsx)(`span`,{className:`fa-u`,children:`/hr`})]})})]})]}),G?.requireReason&&(0,o.jsxs)(`div`,{className:`fa-reason`,children:[(0,o.jsxs)(`label`,{className:`fa-reason-label`,htmlFor:`fa-reason`,children:[`Comments `,(0,o.jsx)(`span`,{children:`(required to reject)`})]}),(0,o.jsx)(Lf,{id:`fa-reason`,rows:3,maxLength:500,showCount:!0,value:T,status:D?`error`:``,placeholder:`Enter your comments here…`,onChange:e=>{E(e.target.value),e.target.value.trim()&&O(!1)}}),D&&(0,o.jsx)(`div`,{className:`fa-reason-error`,children:`! Comments are required when rejecting.`})]}),(0,o.jsxs)(`div`,{className:`fa-action-bar`,children:[(0,o.jsx)(`div`,{className:`fa-action-note`,children:e===`cfo`?(0,o.jsxs)(o.Fragment,{children:[`Approving finalizes payroll at `,(0,o.jsxs)(`b`,{children:[If(z.proposedRate,B),`/hr`]}),I?(0,o.jsxs)(o.Fragment,{children:[` including the `,String(C).toLowerCase(),` `,(0,o.jsxs)(`b`,{children:[If(x,B),`/hr`]}),` referral`]}):null,`.`]}):(0,o.jsxs)(o.Fragment,{children:[`Approving locks the `,(0,o.jsxs)(`b`,{children:[If(z.proposedRate,B),`/hr`]}),` proposed rate and moves this forward.`]})}),(0,o.jsxs)(`div`,{className:`fa-actions`,children:[f&&(0,o.jsx)(Pr,{className:`fa-btn-ghost`,onClick:f,children:`Cancel`}),G&&(0,o.jsx)(Pr,{danger:!0,loading:k===G.key,disabled:!!k,onClick:()=>U(G),children:G.label}),W&&(0,o.jsx)(Pr,{variant:`primary`,icon:(0,o.jsx)(a.CheckOutlined,{}),loading:k===W.key,disabled:!!k,onClick:()=>U(W),children:W.label})]})]})]})}Hf.propTypes={type:l.default.string.isRequired,record:l.default.object,lookups:l.default.object,identity:l.default.object,referralOptions:l.default.array,onReferralChange:l.default.func,currentUserId:l.default.oneOfType([l.default.number,l.default.string]),actions:l.default.object,onClose:l.default.func,variant:l.default.oneOf([`popup`,`page`])},Hf.defaultProps={record:{},lookups:{},identity:{},referralOptions:[],variant:`page`};var Uf=e=>String(e??``).trim().toLowerCase();function Wf(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 Gf=t=>e.wn(t,300,0).then(Wf).catch(()=>[]),Kf=e=>t=>e&&Tf(t._id??t.id)===String(e);async function qf(e,n){let r=new URLSearchParams({module:e});n&&r.set(`id`,n);let i=await t.i(t.v,`/admin/form-groups?${r.toString()}`);return i?.data??i??{}}async function Jf(t,n={}){let r=await qf(`submission`,t).catch(()=>({})),i=r.groups??[],a=r.recordMeta??{},o=Ef(i),s=Df(i),c=Tf(a.clientId??o.clientId??n.clientId),l=Tf(a.jobId??o.jobId??n.jobId),u=Tf(s.employerId),d=s.location,[f,p,m,h]=await Promise.all([l?e.$(`jobs`,l).catch(()=>null):Promise.resolve(null),Gf(`clients`),Gf(`employers`),Gf(`locations`)]),g=f?.data??f??{},_=g.record??g.item??g??{},v=p.find(Kf(c))??{},y=m.find(Kf(u))??{},b=h.find(Kf(d))??h.find(e=>Uf(e.name)===Uf(d))??{};return{record:{submission:{...n,...o,submission_current_employer:[s]},job:_,client:v,employer:y},lookups:{clientVmsFee:v.vmsFee??o.clientVmsFee??o.vmsFee,locationTaxPercent:s.tax??b.taxValue},display:{clientName:o.clientName??v.clientName,jobTitle:o.jobTitle??_.jobTitle,reqId:a.jobClientRefrenceId??o.jobRefrenceId??a.jobRefrenceId??a.mspReqId,jobLocation:o.jobLocation??_.jobLocation,employerName:y.empCompanyName,employerLocation:b.name??y.empCompanyLocation??d,submittedBy:o.signatureEmail??o.recruiterName??o.submitSource,email:o.email,candidateName:[o.firstName,o.lastName].filter(Boolean).join(` `)||o.candidateFullName,createdAt:a.createdAt,submissionId:a.submissionId},meta:a}}function Yf({title:e=`Proof`,files:t=[],onPreview:n,emptyText:r=`No files uploaded`,className:s}){return t.length?(0,o.jsx)(i.Card,{size:`small`,title:e,className:`znx-file-list__card ${s??``}`.trim(),children:t.map((e,t)=>(0,o.jsxs)(`div`,{className:`znx-file-list__chip`,children:[(0,o.jsx)(`span`,{className:`znx-file-list__name`,title:e.name,children:e.name||`File`}),(0,o.jsxs)(`span`,{className:`znx-file-list__actions`,children:[n&&(0,o.jsx)(i.Tooltip,{title:`Preview`,children:(0,o.jsx)(`button`,{type:`button`,className:`znx-file-list__btn`,onClick:()=>n(t),"aria-label":`Preview ${e.name||`file`}`,children:(0,o.jsx)(a.EyeOutlined,{})})}),(0,o.jsx)(i.Tooltip,{title:`Download`,children:(0,o.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,o.jsx)(a.DownloadOutlined,{})})})]})]},e.url??t))}):(0,o.jsx)(i.Card,{size:`small`,className:`znx-file-list__empty ${s??``}`.trim(),children:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:r})})}function Xf({moduleName:t,recordId:n,cancelPath:a,onSuccess:o,fieldNameMap:l={},onFileUpload:u=null}){let d=(0,s.useNavigate)(),[f,p]=(0,r.useState)([]),[m,h]=(0,r.useState)({}),[g,_]=(0,r.useState)(!1),[v,y]=(0,r.useState)(``),[b,x]=(0,r.useState)(!1),[S,C]=(0,r.useState)(``);(0,r.useEffect)(()=>{if(!t||!n)return;let r=!1;async function i(){try{_(!0),y(``);let[i,a]=await Promise.all([e.Sn({module:t,id:n}),e.tt(t,n)]);if(r)return;p(Array.isArray(i)?i:[]),h(a??{})}catch(e){r||y(e?.message||`Failed to load record`)}finally{r||_(!1)}}return i(),()=>{r=!0}},[t,n]);function w(e,t){let n={...m},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(c.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(l).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 T(r,s){try{if(x(!0),C(``),u){let e=s.flatMap(e=>e.fields??[]).filter(e=>e.type===`file`);for(let t of e){let e=r[t.field];if(!Array.isArray(e))continue;let i=e.filter(e=>e.originFileObj instanceof File);await Promise.all(i.map(e=>u(t.field,e.originFileObj,n)))}}await e.nt(t,n,w(r,s)),i.message.success(`${t} updated successfully`),o?o():d(a||-1)}catch(e){C(e?.message||`Failed to save changes`),i.message.error(e?.message||`Failed to save changes`)}finally{x(!1)}}return{formGroups:f,rawRecord:m,loading:g,error:v,submitting:b,submitError:S,submit:T}}var Zf=`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`,Qf=`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`,$f=`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`,tp=`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`,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='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`,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%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`,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='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`,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='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`,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='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`,sp=`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`,cp=`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`,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='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`,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='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`,dp=`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`,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%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`,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%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`,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%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`,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_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`,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%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`,_p=`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`,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%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`;function yp(e){return!e||typeof e!=`string`?`User`:e.split(` `).filter(Boolean).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function bp(e){let t=(e||`User`).split(` `).filter(Boolean);return`${t[0]?.charAt(0)||`U`}${t.length>1?t.at(-1)?.charAt(0):``}`.toUpperCase()}function xp(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 Sp({leftOffset:n}){let r=(0,s.useNavigate)(),c=(0,s.useLocation)(),l=localStorage.getItem(`companyName`)||`Zinnext`,u=localStorage.getItem(`userName`)||localStorage.getItem(`preferred_Username`)||`User`,d=localStorage.getItem(`preferred_Username`)||u,f=localStorage.getItem(`roleId`)||``,p=yp(u),m=bp(p);function h(){t.p(),r(`/login`,{replace:!0})}let g=[{key:`profile-name`,label:(0,o.jsxs)(`div`,{className:`app-layout-profile-summary`,children:[(0,o.jsx)(i.Avatar,{size:42,style:{backgroundColor:xp(p)},children:m}),(0,o.jsxs)(`div`,{className:`app-layout-profile-copy`,children:[(0,o.jsx)(e.An,{variant:`body-strong`,truncate:!0,className:`app-layout-profile-name`,children:p}),f&&(0,o.jsx)(e.An,{variant:`caption`,color:`secondary`,className:`app-layout-profile-role`,children:f})]})]}),disabled:!0},{type:`divider`},{key:`dashboard`,label:(0,o.jsxs)(s.Link,{to:`/dashboard`,className:`app-layout-menu-link`,children:[(0,o.jsx)(a.AppstoreOutlined,{}),`Dashboard`]})},{key:`my-profile`,label:(0,o.jsxs)(s.Link,{to:`/my-profile`,className:`app-layout-menu-link`,children:[(0,o.jsx)(a.UserOutlined,{}),`My Profile`]})},{type:`divider`},{key:`logout`,label:(0,o.jsxs)(`span`,{className:`app-layout-menu-link app-layout-menu-danger`,children:[(0,o.jsx)(a.LogoutOutlined,{}),`Logout`]}),onClick:h}];return(0,o.jsxs)(`header`,{className:`app-layout-header`,style:{left:n},children:[(0,o.jsx)(`div`,{className:`app-layout-company`,children:(0,o.jsx)(e.An,{variant:`body-strong`,truncate:!0,className:`app-layout-company-name`,children:l})}),(0,o.jsxs)(`div`,{className:`app-layout-header-actions`,children:[(0,o.jsx)(i.Tooltip,{title:`Inbox`,children:(0,o.jsx)(s.Link,{to:`/inbox`,className:c.pathname===`/inbox`?`app-layout-icon-btn is-active`:`app-layout-icon-btn`,"aria-label":`Inbox`,children:(0,o.jsx)(`img`,{src:vp,alt:``,"aria-hidden":`true`,className:`app-layout-icon-img`})})}),(0,o.jsx)(`div`,{className:`app-layout-header-divider`}),(0,o.jsxs)(`div`,{className:`app-layout-user`,children:[(0,o.jsx)(i.Avatar,{size:30,style:{backgroundColor:xp(p)},children:m}),(0,o.jsx)(e.An,{variant:`label`,truncate:!0,className:`app-layout-user-name`,children:d}),(0,o.jsx)(i.Dropdown,{menu:{items:g},trigger:[`click`],placement:`bottomRight`,overlayClassName:`app-layout-user-dropdown`,children:(0,o.jsx)(`button`,{type:`button`,className:`app-layout-dropdown-btn`,"aria-label":`Open user menu`,children:(0,o.jsx)(a.DownOutlined,{})})})]})]})]})}var{Sider:Cp}=i.Layout;function wp(e){return(0,o.jsxs)(`svg`,{viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,...e,children:[(0,o.jsx)(`path`,{d:`M6 3h9l4 4v14a1 1 0 0 1-1 1H6a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z`}),(0,o.jsx)(`path`,{d:`M14 3v4a1 1 0 0 0 1 1h4`}),(0,o.jsx)(`path`,{d:`M8.5 13h7`}),(0,o.jsx)(`path`,{d:`M8.5 16.5h7`}),(0,o.jsx)(`path`,{d:`M8.5 9.5h3`})]})}function Tp(e){return(0,o.jsxs)(`svg`,{viewBox:`0 0 24 24`,width:`1em`,height:`1em`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,...e,children:[(0,o.jsx)(`path`,{d:`M3 7a2 2 0 0 1 2-2h13a1 1 0 0 1 1 1v2`}),(0,o.jsx)(`path`,{d:`M3 7v11a2 2 0 0 0 2 2h14a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1H5a2 2 0 0 1-2-2Z`}),(0,o.jsx)(`circle`,{cx:`16.5`,cy:`13.5`,r:`2`})]})}var Ep={Dashboard:sp,Jobs:ip,Candidates:ap,Submissions:mp,Network:up,ClientManagement:op,Clients:op,clients:op,EmployerManagement:cp,Employers:cp,employers:cp,ReferralManagement:cp,Referral:cp,Referrals:cp,referrals:cp,Scheduler:pp,Admin:np,Reports:dp,Settings:fp,Help:lp,onboarding:hp,Onboarding:hp,assignments:rp,Assignments:rp,assignment:rp,Assignment:rp,timesheet:gp,Timesheet:gp,billing:wp,Billing:wp,payroll:Tp,Payroll:Tp,campaign:_p,Campaign:_p,addTestCase:dp,viewTestCase:pp,manageModules:fp,bulkUpload:a.UploadOutlined,"bulk-upload":a.UploadOutlined};function Dp(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 Op(e){let t=e.replace(/^\/+/,``);if(!t)return[`dashboard`];let n=t.split(`/`);return[t,n[0],n.at(-1)].filter(Boolean)}function kp({icon:e,itemKey:t}){let n=t===`bulk-upload`?a.UploadOutlined:t===`assignments`?rp:t===`employers`?cp:Ep[e];return n?typeof n==`string`?(0,o.jsx)(`img`,{src:n,alt:``,className:`app-sidebar-menu-icon`,"aria-hidden":`true`}):(0,o.jsx)(n,{className:`app-sidebar-menu-icon`,"aria-hidden":`true`}):null}function Ap(e){return e.map(e=>({key:e.key,icon:(0,o.jsx)(kp,{icon:e.icon,itemKey:e.key}),label:e.label,disabled:e.status===`inactive`,children:Array.isArray(e.children)?Ap(e.children):void 0}))}function jp(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}),{});return e.flatMap(e=>{let t=[e.key,e.label].map(e=>String(e??``).trim().toLowerCase()).map(e=>n[e]).find(Boolean)?.view;if(t!=null&&![!0,1,`1`].includes(t))return[];let r=Array.isArray(e.children)?jp(e.children):void 0;return[{...e,children:r}]})}function Mp(e){return new Set(e.flatMap(e=>[String(e?.key??``).trim().toLowerCase(),...Array.isArray(e?.children)?[...Mp(e.children)]:[]]).filter(Boolean))}function Np(e){return[!0,1,`1`].includes(e)}function Pp(e){return String(e).split(/[\s_\-/]+/).filter(Boolean).map(e=>`${e.charAt(0).toUpperCase()}${e.slice(1)}`).join(` `)}function Fp(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=Mp(e),r=Object.entries(t).flatMap(([e,t])=>{let r=String(e).trim().toLowerCase();return!r||r.includes(`/`)||n.has(r)||!Np(t?.view)?[]:(n.add(r),[{key:r,icon:r,label:Pp(r),status:`active`}])});return[...e,...r]}function Ip(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 Lp(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.client??e?.clients;return!t||typeof t!=`object`?!1:[`view`,`add`,`edit`].some(e=>Number(t[e])===1||t[e]===!0||t[e]===`1`)}catch{return!1}}function Rp(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.employers??e?.employer;return!t||typeof t!=`object`?!1:[`view`,`add`,`edit`].some(e=>Number(t[e])===1||t[e]===!0||t[e]===`1`)}catch{return!1}}function zp(e){if(e.some(e=>e.key===`clients`||e.key===`client`)||!Lp())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 Bp(e){let t=e.some(e=>e.key===`employers`||e.key===`employer`),n=e.some(e=>e.key===`clients`||e.key===`client`),r=Rp()||n||Lp();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 Vp(){try{let e=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`),t=e?.referrals??e?.referral;return!t||typeof t!=`object`?!1:[`view`,`add`,`edit`].some(e=>Number(t[e])===1||t[e]===!0||t[e]===`1`)}catch{return!1}}function Hp(e){let t=e.some(e=>e.key===`referrals`||e.key===`referral`),n=e.some(e=>e.key===`employers`||e.key===`employer`),r=Vp()||Rp()||n||Lp();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 Up(e){try{let t=JSON.parse(localStorage.getItem(`menuPermission`)||`{}`)?.[e];return t&&[`view`,`add`,`edit`].some(e=>Number(t[e])===1||t[e]===!0||t[e]===`1`)}catch{return!1}}function Wp(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)&&Up(e)&&(t.splice(r,0,{key:e,icon:e,label:n,status:`active`}),r+=1);return t}function Gp(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:Gp(e.children)}:e)}function Kp({collapsed:e,onToggle:t}){let n=(0,s.useNavigate)(),a=(0,s.useLocation)(),[c,l]=(0,r.useState)([]),u=(0,r.useMemo)(()=>Op(a.pathname),[a.pathname]);(0,r.useEffect)(()=>{u.length>0&&localStorage.setItem(`activeKey`,u[0])},[u]);let d=(0,r.useMemo)(()=>Ap(jp(Fp(Wp(Ip(Hp(Bp(zp(Gp(Dp(`menu`)))))))))),[]);function f(){e||l([]),t()}function p({key:e}){n(`/${e}`)}return(0,o.jsx)(Cp,{trigger:null,collapsible:!0,collapsed:e,width:200,collapsedWidth:60,className:`app-sidebar`,children:(0,o.jsxs)(`div`,{className:`app-sidebar-panel`,children:[(0,o.jsx)(`div`,{className:`app-sidebar-brand`,children:(0,o.jsxs)(`div`,{className:`app-sidebar-logo`,children:[(0,o.jsx)(`img`,{src:$f,alt:``,className:`app-sidebar-logo-icon`}),(0,o.jsx)(`img`,{src:ep,alt:`Zinnext`,className:`app-sidebar-logo-text`})]})}),(0,o.jsx)(`button`,{type:`button`,className:`app-sidebar-toggle`,onClick:f,"aria-label":e?`Expand sidebar`:`Collapse sidebar`,children:(0,o.jsx)(`img`,{src:tp,alt:``,"aria-hidden":`true`})}),(0,o.jsx)(`div`,{className:`app-sidebar-body`,children:(0,o.jsx)(i.Menu,{mode:`inline`,theme:`dark`,selectedKeys:u,openKeys:e?[]:c,items:d,onClick:p,onOpenChange:l,className:`app-sidebar-menu`})})]})})}var qp=`You're not logged in`,Jp=`You haven't logged into this session. Please login to access the data.`;function Yp(){try{return!!t.c()}catch{return!1}}function Xp({children:e,title:t=qp,message:n=Jp,loginPath:s=`/login`,loginLabel:c=`Go to Login`,onLogin:l,fallback:u}){let[d,f]=(0,r.useState)(Yp);return(0,r.useEffect)(()=>{let e=()=>f(Yp());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)}},[]),d?e:u===void 0?(0,o.jsx)(`div`,{className:`ct-auth-guard`,children:(0,o.jsx)(`div`,{className:`ct-auth-guard__card`,children:(0,o.jsx)(i.Result,{status:`403`,icon:(0,o.jsx)(a.LockOutlined,{className:`ct-auth-guard__icon`}),title:t,subTitle:n,extra:(0,o.jsx)(i.Button,{type:`primary`,size:`large`,onClick:()=>{if(typeof l==`function`){l();return}typeof window<`u`&&window.location.assign(s)},children:c})})})}):u}Xp.propTypes={children:l.default.node,title:l.default.node,message:l.default.node,loginPath:l.default.string,loginLabel:l.default.node,onLogin:l.default.func,fallback:l.default.node};var Zp=60;function Qp({children:e}){let[t,n]=(0,r.useState)(!0);return(0,o.jsxs)(`div`,{className:`app-layout-shell`,children:[(0,o.jsx)(Kp,{collapsed:t,onToggle:()=>n(e=>!e)}),(0,o.jsx)(Sp,{leftOffset:60}),(0,o.jsx)(`main`,{className:`app-layout-main`,style:{marginLeft:60,paddingTop:Zp},children:(0,o.jsx)(`div`,{className:`app-layout-content`,children:(0,o.jsx)(Xp,{children:e??(0,o.jsx)(s.Outlet,{})})})})]})}function $p({onLogin:n,defaultRedirectPath:c=`/`}){let[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(``),p=(0,s.useNavigate)(),m=(0,s.useLocation)(),h=m.state?.from?.pathname||c,g=new URLSearchParams(m.search).get(`session_expired`)===`1`;async function _(e){f(``),u(!0);try{let r=await t.f({email:e.email,user_pwd:e.user_pwd});if(n?.(r),t.d()){p(`/select-project`,{replace:!0});return}p(h,{replace:!0})}catch(e){f(e.message||`Unable to login. Please check your credentials.`)}finally{u(!1)}}return(0,o.jsxs)(`div`,{className:`auth-login-page`,children:[(0,o.jsx)(`section`,{className:`auth-login-bg`,style:{background:e.Mn.brand},children:(0,o.jsxs)(`div`,{className:`auth-login-static-section`,children:[(0,o.jsx)(`div`,{children:(0,o.jsx)(`img`,{src:Zf,alt:``,className:`auth-login-img-one`})}),(0,o.jsx)(`div`,{className:`auth-login-hero-wrap`,children:(0,o.jsx)(`img`,{src:Qf,alt:``,className:`auth-login-img-two`})}),(0,o.jsx)(e.An,{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,o.jsx)(`section`,{className:`auth-login-form-layout`,children:(0,o.jsx)(`div`,{className:`auth-login-form-container`,children:(0,o.jsxs)(`div`,{className:`auth-login-form-shell`,children:[g&&(0,o.jsx)(`div`,{className:`auth-login-session-expired-container`,children:(0,o.jsx)(`div`,{className:`auth-login-slide-in`,children:(0,o.jsx)(i.Alert,{type:`warning`,showIcon:!0,icon:(0,o.jsx)(a.ExclamationCircleFilled,{style:{fontSize:30,color:`#FFC107`}}),message:(0,o.jsxs)(`div`,{className:`auth-login-alert-message-container`,children:[(0,o.jsx)(i.Divider,{className:`auth-login-alert-divider`,type:`vertical`}),(0,o.jsx)(`div`,{className:`auth-login-alert-text`,children:`Session expired. Please log in again.`})]}),className:`auth-login-session-expired-alert`})})}),(0,o.jsxs)(`div`,{className:`auth-login-brand`,children:[(0,o.jsx)(`img`,{src:`/favicon.ico`,alt:``,className:`auth-login-logo`}),(0,o.jsx)(e.An,{variant:`h3`,color:`primary`,weight:`bold`,className:`auth-login-brand-text`,children:`Zinnext`})]}),(0,o.jsx)(`div`,{className:`auth-login-body`,children:(0,o.jsxs)(`div`,{className:`auth-login-sign-body`,children:[(0,o.jsx)(e.An,{variant:`h2`,color:`primary`,weight:`bold`,align:`center`,className:`auth-login-title`,children:`Sign in`}),(0,o.jsx)(`div`,{className:`auth-login-form-con`,children:(0,o.jsxs)(i.Form,{className:`v1-form auth-login-form`,layout:`vertical`,requiredMark:!1,onFinish:_,autoComplete:`off`,children:[(0,o.jsx)(i.Form.Item,{label:`Email`,name:`email`,rules:[{type:`email`,required:!0,message:`Enter valid email.`}],children:(0,o.jsx)(i.Input,{size:`large`,placeholder:`Your work email`,autoComplete:`email`})}),(0,o.jsx)(i.Form.Item,{label:`Password`,name:`user_pwd`,rules:[{required:!0,message:`Mandatory field.`}],children:(0,o.jsx)(i.Input.Password,{size:`large`,placeholder:`Enter password`,autoComplete:`current-password`})}),(0,o.jsx)(i.Form.Item,{className:`auth-login-forgot-row`,children:(0,o.jsx)(i.Button,{type:`link`,className:`auth-login-forgot`,htmlType:`button`,children:`Forgot Password?`})}),d&&(0,o.jsx)(i.Form.Item,{children:(0,o.jsx)(e.An,{color:`danger`,variant:`body`,children:d})}),(0,o.jsx)(i.Button,{className:`auth-login-submit`,block:!0,size:`large`,type:`primary`,htmlType:`submit`,loading:l,id:`znxt-signin`,children:`Sign in`}),(0,o.jsx)(i.Form.Item,{className:`auth-login-divider-row`,children:(0,o.jsx)(i.Divider,{children:`Or`})}),(0,o.jsxs)(e.An,{as:`p`,variant:`body`,color:`secondary`,align:`center`,className:`auth-login-signup-text`,children:[`Not registered yet?`,` `,(0,o.jsx)(i.Button,{type:`link`,htmlType:`button`,className:`auth-login-signup`,id:`znxt-signup`,children:`Sign up`})]})]})})]})})]})})})]})}var em=e.Nn({addCTFlow:()=>Sm,addCTModule:()=>gm,addCTSubmodule:()=>ym,addLmsFlow:()=>fm,addTestFlow:()=>cm,addTestingOption:()=>om,bulkInsertTestSteps:()=>dm,deleteCTFlow:()=>Em,getActionFieldRules:()=>sm,getCTFlow:()=>Cm,getCTFlows:()=>xm,getCTModules:()=>hm,getCTNextStep:()=>wm,getCTProjects:()=>mm,getCTSubmodules:()=>vm,getLmsFlows:()=>pm,getTestFlows:()=>lm,getTestingOptions:()=>am,setCTModuleStatus:()=>_m,setCTSubmoduleStatus:()=>bm,updateCTFlow:()=>Tm,validateTestSteps:()=>um});async function tm(e){return t.t(t.v,e)}async function nm(e,n){let r=await t.i(t.v,e,{method:`POST`,body:JSON.stringify(n)});return r.data??r}async function rm(e,n){let r=await t.i(t.v,e,{method:`PUT`,body:JSON.stringify(n)});return r.data??r}async function im(e){let n=await t.i(t.v,e,{method:`DELETE`});return n.data??n}async function am(e){return tm(`/testing-modules?type=${encodeURIComponent(e)}`)}async function om({name:e,type:t}){return nm(`/testing-modules`,{name:e,type:t})}async function sm(){return tm(`/test-action-field-rules`)}async function cm(e){return nm(`/test-flows`,e)}async function lm({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)),tm(`/test-flows?${s.toString()}`)}async function um(e){return nm(`/test-steps/validate`,e)}async function dm(e){return nm(`/test-steps/bulk-insert`,e)}async function fm(e){return nm(`/lms-flows`,e)}async function pm({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)),tm(`/lms-flows?${s.toString()}`)}async function mm({activeOnly:e=!1}={}){let t=new URLSearchParams;e&&t.append(`active`,`1`);let n=t.toString();return tm(`/ct/projects${n?`?${n}`:``}`)}async function hm({project:e=``,activeOnly:t=!1}={}){let n=new URLSearchParams;e&&n.append(`project`,e),t&&n.append(`active`,`1`);let r=n.toString();return tm(`/ct/modules${r?`?${r}`:``}`)}async function gm({project:e,modulename:t}){return nm(`/ct/modules`,{project:e,modulename:t})}async function _m(e,t){return rm(`/ct/modules/status`,{id:e,active:t})}async function vm({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 tm(`/ct/submodules${i?`?${i}`:``}`)}async function ym({project:e,modulename:t,submodulename:n}){return nm(`/ct/submodules`,{project:e,modulename:t,submodulename:n})}async function bm(e,t){return rm(`/ct/submodules/status`,{id:e,active:t})}async function xm({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)),tm(`/ct/flows?${d.toString()}`)}async function Sm(e){return nm(`/ct/flows`,e)}async function Cm(e){return tm(`/ct/flows/${encodeURIComponent(e)}`)}async function wm({project:e,module:t,submodule:n,product_parent_ID:r,module_parent_ID:i,submodule_parent_ID:a}){return tm(`/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 Tm(e,t){return rm(`/ct/flows/${encodeURIComponent(e)}`,t)}async function Em(e){return im(`/ct/flows/${encodeURIComponent(e)}`)}var Dm=`zinnext`;function Om(){let[n]=i.Form.useForm(),c=(0,s.useNavigate)(),[l,u]=(0,r.useState)([]),[d,f]=(0,r.useState)(!1),[p,m]=(0,r.useState)(``);(0,r.useEffect)(()=>{let e=!0;return Promise.resolve().then(()=>mm({activeOnly:!0})).then(r=>{if(!e)return;let i=r?.items??[];u(i);let a=t.s(),o=i.find(e=>e.id===a?.id)||i.find(e=>e.projectname?.toLowerCase()===Dm)||i[0];o&&n.setFieldsValue({project:o.id})}).catch(t=>{console.error(`Unable to load projects:`,t),e&&m(`Unable to load projects. Please try again.`)}),()=>{e=!1}},[n]);function h(e){let n=l.find(t=>t.id===e.project);if(!n){m(`Please select a project.`);return}f(!0),t.m({id:n.id,name:n.projectname}),c(`/addTestCase`,{replace:!0})}return(0,o.jsxs)(`div`,{className:`auth-login-page`,children:[(0,o.jsx)(`section`,{className:`auth-login-bg`,style:{background:e.Mn.brand},children:(0,o.jsxs)(`div`,{className:`auth-login-static-section`,children:[(0,o.jsx)(`div`,{children:(0,o.jsx)(`img`,{src:Zf,alt:``,className:`auth-login-img-one`})}),(0,o.jsx)(`div`,{className:`auth-login-hero-wrap`,children:(0,o.jsx)(`img`,{src:Qf,alt:``,className:`auth-login-img-two`})}),(0,o.jsx)(e.An,{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,o.jsx)(`section`,{className:`auth-login-form-layout`,children:(0,o.jsx)(`div`,{className:`auth-login-form-container`,children:(0,o.jsxs)(`div`,{className:`auth-login-form-shell`,children:[(0,o.jsxs)(`div`,{className:`auth-login-brand`,children:[(0,o.jsx)(`img`,{src:`/favicon.ico`,alt:``,className:`auth-login-logo`}),(0,o.jsx)(e.An,{variant:`h3`,color:`primary`,weight:`bold`,className:`auth-login-brand-text`,children:`Zinnext`})]}),(0,o.jsx)(`div`,{className:`auth-login-body`,children:(0,o.jsxs)(`div`,{className:`auth-login-sign-body`,children:[(0,o.jsx)(e.An,{variant:`h2`,color:`primary`,weight:`bold`,align:`center`,className:`auth-login-title`,children:`Select Project`}),(0,o.jsx)(`div`,{className:`auth-login-form-con`,children:(0,o.jsxs)(i.Form,{form:n,className:`v1-form auth-login-form`,layout:`vertical`,requiredMark:!1,onFinish:h,autoComplete:`off`,children:[(0,o.jsx)(i.Form.Item,{label:`Project`,name:`project`,rules:[{required:!0,message:`Select a project.`}],children:(0,o.jsx)(i.Select,{size:`large`,showSearch:!0,optionFilterProp:`label`,placeholder:`Select project`,prefix:(0,o.jsx)(a.ProjectOutlined,{}),options:l.map(e=>({value:e.id,label:e.projectname}))})}),p&&(0,o.jsx)(i.Form.Item,{children:(0,o.jsx)(e.An,{color:`danger`,variant:`body`,children:p})}),(0,o.jsx)(i.Button,{className:`auth-login-submit`,block:!0,size:`large`,type:`primary`,htmlType:`submit`,loading:d,id:`znxt-select-project`,children:`Continue`})]})})]})})]})})})]})}function km(e,t){function n(n){return(0,o.jsx)(Xp,{...t,children:(0,o.jsx)(e,{...n})})}return n.displayName=`withAuthGuard(${e.displayName||e.name||`Component`})`,n}var Am=`${t.h}`;async function jm(e,n={}){let r=t.c(),i=await fetch(`${Am}${e}`,{...n,headers:{"Content-Type":`application/json`,...t.C({"X-App-Id":String(t.g)}),...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 Mm(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 Nm(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:Im(e.status??e.active_status)}}function Pm(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:Im(e.status??e.active_status??`ACTIVE`)}}function Fm(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:Im(e.status)}}function Im(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 Lm(e){let t=Number(e);return Number.isFinite(t)&&t>0?t:0}function Rm(e){if(e==null||e===``)return 0;let t=Number(e);return Number.isFinite(t)&&t>0?t:e}function zm(e){let t=Number(e);return Number.isInteger(t)&&t>0?t:void 0}function Bm(){return{tenantId:localStorage.getItem(`tenantId`)||void 0,businessId:localStorage.getItem(`businessId`)||void 0,businessUnitId:localStorage.getItem(`businessUnitId`)||void 0}}function Vm(e){let n=e.username??e.user_name??e.userName,r=e.first_name??e.firstName??``,i=e.last_name??e.lastName??``,a=Lm(e.user_type_id??e.role_id??e.roleId),o=Rm(e.reporting_id??e.reportingId??e.managerId),s=e.mobile??e.mobileNumber??e.mobile_number??e.phone_number,c=Im(e.status??e.activeStatus)===`ACTIVE`,l=String(t.g),u=zm(e.updated_by??e.updatedBy),d=zm(e.created_by??e.createdBy);return{...e,...Bm(),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 Hm(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 Um(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:n?.value??n?.access_value??n},e),{});return{...e,menu_id:t,menu_name:n,menu_key:e.menu_key??e.menuKey??n,permissions:r}})}function Wm(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:String(+(Number(t.access_value??t.accessValue)===1))},e):e},{}),menuOrder:n}}function Gm(){return jm(`/get-all-users?limit=500&offset=0`).then(e=>Mm(e,[`users`]).map(Nm))}function Km(e){return jm(`/create-user`,{method:`POST`,body:JSON.stringify(Vm(e))})}function qm(e,t){return jm(`/update-user?userId=${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify(Vm(t))})}function Jm(e){return jm(`/delete-user?userId=${encodeURIComponent(e)}`,{method:`PUT`})}function Ym(){return jm(`/get-roles`).then(e=>[...Mm(e,[`zinnext_default`]),...Mm(e,[`custom_roles`])].map(Pm))}function Xm(e){return jm(`/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(Pm)}function Zm(e,t){return jm(`/custom-roles/${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify({roleName:t.user_type_name,roleDescription:t.description??``,status:+(Im(t.status)===`ACTIVE`)})}).then(Pm)}function Qm(e){return jm(`/custom-roles/${encodeURIComponent(e)}`,{method:`DELETE`})}function $m(){return jm(`/admin/menu-modules`).then(e=>Mm(e).map(Fm))}function eh(e){return jm(`/admin/menu-modules`,{method:`POST`,body:JSON.stringify(Hm(e))})}function th(e,t){return jm(`/admin/menu-modules/${e}`,{method:`PUT`,body:JSON.stringify(Hm(t))})}function nh(e){return jm(`/admin/menu-modules/${e}`,{method:`DELETE`})}function rh(){return jm(`/admin/menu-actions`)}function ih(e){return jm(`/get-role-details?roleid=${encodeURIComponent(e)}`).then(Um)}function ah(e,t){return jm(`/edit-role-details`,{method:`PUT`,body:JSON.stringify(Wm(e,t,[...new Set(t.map(e=>e.menu_key??e.menuName??e.menu_name).filter(Boolean))]))})}var oh={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`]};function sh(e,t){let n=oh[t];return n?n.includes(String(e??``).trim().toLowerCase()):!0}function Z({title:e,icon:t,extra:n,children:r,variant:a=`default`,...s}){let c=t||e?(0,o.jsxs)(`span`,{className:`app-card-title`,children:[t&&(0,o.jsx)(`span`,{className:`app-card-title-icon`,children:t}),e]}):void 0;return(0,o.jsx)(i.Card,{className:`app-card app-card--${a}`,title:c,extra:n,...s,children:r})}var{Text:ch}=i.Typography,{Option:lh}=i.Select,uh=[{key:`job`,label:`Jobs`},{key:`candidate`,label:`Candidates`},{key:`submissions`,label:`Submissions`},{key:`billing`,label:`Billing`},{key:`payroll`,label:`Payroll`}],dh=[{key:``,label:`Text`,icon:(0,o.jsx)(`span`,{style:{fontSize:14,fontWeight:700},children:`Aa`})},{key:`badge`,label:`Badge`,icon:(0,o.jsx)(a.TagsOutlined,{style:{fontSize:16}})},{key:`avatar`,label:`Avatar`,icon:(0,o.jsx)(a.UserOutlined,{style:{fontSize:16}})},{key:`link`,label:`Link`,icon:(0,o.jsx)(a.LinkOutlined,{style:{fontSize:16}})}],fh=[{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`}],ph={job:`jobs`,candidate:`candidates`,submissions:`submissions`,billing:`billing`,payroll:`payroll`};function mh(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function hh(e){if(typeof e==`string`)return{key:e,apiModule:e,label:mh(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??mh(t)}:null}function gh(e){let t=Array.isArray(e)&&e.length?e:uh,n=new Set,r=t.map(hh).filter(Boolean).filter(e=>n.has(e.key)?!1:(n.add(e.key),!0));return r.length?r:uh}function _h({field:t,collections:n,collFields:s,subfields:c,onCollectionChange:l,onLookupFieldChange:u,addSecondaryField:d,removeSecondaryField:f,addActionButton:p,updateActionButton:m,removeActionButton:h,moduleKey:g,fieldKey:_,update:v}){let[y,b]=(0,r.useState)(``),[x,S]=(0,r.useState)({}),[C,w]=(0,r.useState)(!1);function T(e){v(e===`common`?{commonStyle:{color:`#1677ff`,bg:`#e6f7ff`,variant:`badge`},valueStyles:[]}:{commonStyle:null})}function E(e){v({commonStyle:{...t.commonStyle??{color:`#595959`,bg:`#f5f5f5`,variant:`badge`},...e}})}function D(){v({valueStyles:[...t.valueStyles??[],{value:``,label:``,color:`#595959`,bg:`#f5f5f5`,variant:`badge`}]})}function O(e,n){let r=[...t.valueStyles??[]];r[e]={...r[e],...n},v({valueStyles:r})}function k(e){v({valueStyles:(t.valueStyles??[]).filter((t,n)=>n!==e)})}async function A(){w(!0);try{let e=await Zt(t.apiModule??ph[g]??g,_,``,50,0),n=(Array.isArray(e)?e:e?.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`,...fh[t%fh.length]}});if(n.length===0){i.message.info(`No values found for this field`);return}v({valueStyles:n})}catch{i.message.error(`Could not detect values`)}finally{w(!1)}}async function j(t,n){S(e=>({...e,[t]:!0}));try{let r=await e.yn(n);m(t,{iconUrl:r?.iconUrl??r?.url??``,iconPath:r?.iconPath??r?.path??``})}catch{i.message.error(`Icon upload failed`)}finally{S(e=>({...e,[t]:!1}))}return!1}let M=t.renderType??``,N=!!t.commonStyle,P=t.commonStyle??{},F=t.valueStyles??[],I=t.renderConfig??{};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsx)(`div`,{className:`uss-detail-label`,children:`Display Style`}),(0,o.jsx)(`div`,{className:`uss-detail-row`,children:dh.map(e=>(0,o.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,o.jsx)(`span`,{children:e.label})]},e.key))}),M===`badge`&&(0,o.jsxs)(`div`,{className:`uss-badge-config`,children:[(0,o.jsxs)(i.Radio.Group,{size:`small`,value:N?`common`:`perValue`,onChange:e=>T(e.target.value),style:{marginBottom:8},children:[(0,o.jsx)(i.Radio,{value:`perValue`,children:`Per value`}),(0,o.jsx)(i.Radio,{value:`common`,children:`Same for all`})]}),N&&(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:10,flexWrap:`wrap`},children:[(0,o.jsx)(i.Tooltip,{title:`Text color`,children:(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:4},children:[(0,o.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,o.jsx)(ch,{style:{fontSize:10},children:`Text`})]})}),(0,o.jsx)(i.Tooltip,{title:`Background color`,children:(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:4},children:[(0,o.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,o.jsx)(ch,{style:{fontSize:10},children:`BG`})]})}),(0,o.jsx)(i.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,o.jsx)(`span`,{style:{padding:`1px 12px`,borderRadius:20,fontSize:11,fontWeight:500,color:P.color||`#595959`,background:P.bg||`#f5f5f5`},children:`Preview`})]}),!N&&(0,o.jsxs)(`div`,{children:[(0,o.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginBottom:6},children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#555`,fontWeight:600},children:`Value → Style mapping`}),(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(i.Button,{size:`small`,loading:C,onClick:A,children:`Auto-detect values`}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:D,children:`Add`})]})]}),F.length===0&&(0,o.jsx)(ch,{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,o.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr 62px 62px 54px 26px`,gap:5,alignItems:`center`,marginBottom:6},children:[(0,o.jsx)(i.Input,{size:`small`,placeholder:`raw value`,value:e.value??``,onChange:e=>O(t,{value:e.target.value})}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`display label`,value:e.label??``,onChange:e=>O(t,{label:e.target.value})}),(0,o.jsx)(i.Tooltip,{title:`Text color`,children:(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:3},children:[(0,o.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,o.jsx)(ch,{style:{fontSize:10},children:`Text`})]})}),(0,o.jsx)(i.Tooltip,{title:`Background color`,children:(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:3},children:[(0,o.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,o.jsx)(ch,{style:{fontSize:10},children:`BG`})]})}),(0,o.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,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.CloseOutlined,{}),onClick:()=>k(t)})]},t))]})]}),M===`avatar`&&(0,o.jsxs)(`div`,{style:{display:`grid`,gridTemplateColumns:`1fr 1fr 80px`,gap:8,marginTop:8},children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#555`,display:`block`,marginBottom:3},children:`Name field`}),(0,o.jsx)(i.Select,{size:`small`,showSearch:!0,allowClear:!0,style:{width:`100%`},placeholder:`e.g. recruiterName`,value:I.labelField||void 0,options:c.length>0?c.map(e=>({value:e,label:e})):[],onChange:e=>v({renderConfig:{...I,labelField:e??``}})})]}),(0,o.jsxs)(`div`,{children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#555`,display:`block`,marginBottom:3},children:`Color field (opt.)`}),(0,o.jsx)(i.Select,{size:`small`,showSearch:!0,allowClear:!0,style:{width:`100%`},placeholder:`color`,value:I.colorField||void 0,options:c.length>0?c.map(e=>({value:e,label:e})):[],onChange:e=>v({renderConfig:{...I,colorField:e??``}})})]}),(0,o.jsxs)(`div`,{children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#555`,display:`block`,marginBottom:3},children:`Max visible`}),(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:1,max:10,value:I.maxVisible||3,onChange:e=>v({renderConfig:{...I,maxVisible:Number(e.target.value)||3}})})]})]})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsx)(`div`,{className:`uss-detail-label`,children:`Display Template`}),(0,o.jsx)(Au,{value:t.displayTemplate??``,onChange:e=>v({displayTemplate:e}),placeholder:`e.g. {{firstName}} {{lastName}}`})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsxs)(`div`,{className:`uss-detail-label`,children:[`Link`,(0,o.jsx)(i.Switch,{size:`small`,style:{marginLeft:8},checked:!!t.isLink,onChange:e=>v({isLink:e})})]}),t.isLink&&(0,o.jsxs)(`div`,{style:{display:`flex`,flexDirection:`column`,gap:6,paddingTop:4},children:[(0,o.jsx)(Au,{value:t.linkTemplate??``,onChange:e=>v({linkTemplate:e}),placeholder:`e.g. /jobs/{{jobId}}`}),(0,o.jsxs)(`div`,{className:`uss-detail-row`,children:[(0,o.jsxs)(i.Select,{size:`small`,value:t.linkType??`internal`,onChange:e=>v({linkType:e}),style:{width:120},children:[(0,o.jsx)(lh,{value:`internal`,children:`internal`}),(0,o.jsx)(lh,{value:`external`,children:`external`})]}),(0,o.jsxs)(i.Select,{size:`small`,value:t.linkTarget??`_self`,onChange:e=>v({linkTarget:e}),style:{width:100},children:[(0,o.jsx)(lh,{value:`_self`,children:`_self`}),(0,o.jsx)(lh,{value:`_blank`,children:`_blank`})]})]})]})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsx)(`div`,{className:`uss-detail-label`,children:`Secondary Fields`}),(0,o.jsx)(`div`,{className:`uss-detail-row`,style:{flexWrap:`wrap`},children:(t.secondaryFields??[]).map(e=>(0,o.jsxs)(`span`,{className:`uss-secondary-tag`,children:[e,(0,o.jsx)(`button`,{onClick:()=>f(e),children:`×`})]},e))}),(0,o.jsxs)(`div`,{className:`uss-detail-row`,children:[(0,o.jsx)(i.Input,{size:`small`,placeholder:`Add field key`,value:y,onChange:e=>b(e.target.value),onPressEnter:()=>{d(y),b(``)},style:{width:160}}),(0,o.jsx)(i.Button,{size:`small`,type:`link`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{d(y),b(``)},children:`Add`})]}),t.secondaryFields?.length>0&&(0,o.jsxs)(`div`,{style:{marginTop:4,display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`var(--color-text-muted)`},children:`Separator:`}),(0,o.jsx)(i.Input,{size:`small`,value:t.secondarySeparator??``,placeholder:`·`,style:{width:64},onChange:e=>v({secondarySeparator:e.target.value})})]})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsxs)(`div`,{className:`uss-detail-label`,children:[`Lookup (FK resolve)`,(0,o.jsx)(i.Switch,{size:`small`,style:{marginLeft:8},checked:!!t.lookup,onChange:e=>v({lookup:e?{collection:``,displayField:``,valueField:``,projectFields:[]}:null})})]}),t.lookup&&(0,o.jsxs)(`div`,{className:`uss-lookup-grid`,children:[(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:`Collection`}),(0,o.jsx)(i.Select,{size:`small`,value:t.lookup?.collection??``,onChange:l,showSearch:!0,placeholder:`Select collection`,style:{flex:1},children:n.map(e=>(0,o.jsx)(lh,{value:e,children:e},e))})]}),(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:`Tenant scoped`}),(0,o.jsx)(i.Switch,{size:`small`,checked:!!t.lookup?.tenantScoped,onChange:e=>u(t.fieldKey,{tenantScoped:e})})]}),s.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:`Value Field`}),(0,o.jsx)(i.Select,{size:`small`,value:t.lookup?.valueField??``,onChange:e=>u(t.fieldKey,{valueField:e}),placeholder:`ID field`,style:{flex:1},children:s.map(e=>(0,o.jsx)(lh,{value:e,children:e},e))})]}),(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:`Display Field`}),(0,o.jsx)(i.Select,{size:`small`,value:t.lookup?.displayField??``,onChange:e=>u(t.fieldKey,{displayField:e}),placeholder:`Label field`,style:{flex:1},children:[...s,...c].map(e=>(0,o.jsx)(lh,{value:e,children:e},e))})]})]})]})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsxs)(`div`,{className:`uss-detail-label`,children:[`Derived Array Value`,(0,o.jsx)(i.Switch,{size:`small`,style:{marginLeft:8},checked:!!t.derived,onChange:e=>v({derived:e?{type:`arrayField`,source:``,matchField:``,matchValue:``,valueField:``,default:null}:null})})]}),t.derived&&(0,o.jsx)(`div`,{className:`uss-lookup-grid`,children:[[`Source array`,`source`,`e.g. stages`],[`Match field`,`matchField`,`e.g. stageCode`],[`Match value`,`matchValue`,`e.g. PO_MSA`],[`Value field`,`valueField`,`e.g. status`]].map(([e,n,r])=>(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:e}),(0,o.jsx)(i.Input,{size:`small`,value:t.derived?.[n]??``,placeholder:r,onChange:e=>v({derived:{...t.derived,[n]:e.target.value}})})]},n))})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsxs)(`div`,{className:`uss-detail-label`,children:[`Computed Value`,(0,o.jsx)(i.Switch,{size:`small`,style:{marginLeft:8},checked:!!t.computed,onChange:e=>v({computed:e?{operator:`subtract`,operands:[],default:0}:null})})]}),t.computed&&(0,o.jsxs)(`div`,{className:`uss-lookup-grid`,children:[(0,o.jsxs)(`div`,{className:`uss-lookup-row`,children:[(0,o.jsx)(`span`,{className:`uss-lookup-label`,children:`Operator`}),(0,o.jsx)(i.Select,{size:`small`,value:t.computed?.operator??`subtract`,style:{flex:1},options:[`add`,`subtract`,`multiply`,`divide`,`percentage`,`ifNull`].map(e=>({value:e,label:e})),onChange:e=>v({computed:{...t.computed,operator:e}})})]}),(0,o.jsx)(ch,{style:{fontSize:11},children:`Operands JSON (field or value entries)`}),(0,o.jsx)(i.Input.TextArea,{rows:3,defaultValue:JSON.stringify(t.computed?.operands??[],null,2),placeholder:`[{"field":"billRate"},{"field":"payRate"}]`,onBlur:e=>{try{let n=JSON.parse(e.target.value||`[]`);if(!Array.isArray(n))throw Error(`Operands must be an array`);v({computed:{...t.computed,operands:n}})}catch(e){i.message.error(e.message||`Invalid operands JSON`)}}},JSON.stringify(t.computed?.operands??[]))]})]}),(0,o.jsxs)(`div`,{className:`uss-detail-section`,children:[(0,o.jsxs)(`div`,{className:`uss-detail-label`,style:{display:`flex`,justifyContent:`space-between`},children:[(0,o.jsxs)(`span`,{children:[`Action Buttons `,(0,o.jsx)(`span`,{style:{fontSize:11,fontWeight:400,color:`var(--color-text-muted)`},children:`(max 3)`})]}),(t.actionButtons??[]).length<3&&(0,o.jsx)(i.Button,{type:`link`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:p,children:`Add Icon`})]}),(t.actionButtons??[]).map((e,t)=>(0,o.jsxs)(`div`,{children:[(0,o.jsxs)(`div`,{className:`uss-action-btn-row`,children:[(0,o.jsx)(i.Upload,{showUploadList:!1,beforeUpload:e=>(j(t,e),!1),accept:`image/*`,children:(0,o.jsx)(i.Tooltip,{title:`Click to upload icon`,children:(0,o.jsx)(`div`,{className:`uss-action-btn-icon-slot`,children:x[t]?(0,o.jsx)(i.Spin,{size:`small`}):e.iconUrl?(0,o.jsx)(`img`,{src:e.iconUrl,alt:`action-${t}`,style:{width:`100%`,height:`100%`,objectFit:`cover`}}):(0,o.jsx)(a.UploadOutlined,{style:{color:`#aaa`,fontSize:14}})})})}),(0,o.jsx)(i.Input,{size:`small`,value:e.name??``,onChange:e=>m(t,{name:e.target.value}),placeholder:`Tooltip (e.g. Edit)`,style:{width:110}}),(0,o.jsxs)(i.Radio.Group,{size:`small`,value:e.type??`page`,onChange:e=>m(t,{type:e.target.value}),children:[(0,o.jsx)(i.Radio,{value:`page`,children:`Page`}),(0,o.jsx)(i.Radio,{value:`popup`,children:`Popup`})]}),(0,o.jsx)(i.Input,{size:`small`,value:e.routeUrl??``,onChange:e=>m(t,{routeUrl:e.target.value}),placeholder:`Route URL (e.g. /jobs/:_id)`,prefix:(0,o.jsx)(a.LinkOutlined,{style:{color:`#bbb`}}),style:{flex:1}}),(0,o.jsx)(i.Button,{size:`small`,danger:!0,type:`text`,onClick:()=>h(t),children:`✕`})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,paddingLeft:36},children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#999`,whiteSpace:`nowrap`},children:`Permission:`}),(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,value:e.permissionKey||void 0,onChange:e=>m(t,{permissionKey:e??``}),placeholder:`Always visible`,style:{width:180},options:[{value:`edit`},{value:`delete`},{value:`add`},{value:`view`}]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,paddingLeft:36,marginTop:4},children:[(0,o.jsx)(ch,{style:{fontSize:11,color:`#999`,whiteSpace:`nowrap`},children:`Show only if:`}),(0,o.jsx)(i.Input,{size:`small`,value:e.showIfField??``,onChange:e=>m(t,{showIfField:e.target.value}),placeholder:`field (e.g. internalSubmissionStatus)`,style:{width:210}}),(0,o.jsx)(ch,{style:{fontSize:11,color:`#999`},children:`=`}),(0,o.jsx)(i.Input,{size:`small`,value:e.showIfValue??``,onChange:e=>m(t,{showIfValue:e.target.value}),placeholder:`value (e.g. Resubmitted)`,style:{width:150}}),e.showIfField&&(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.CloseOutlined,{}),onClick:()=>m(t,{showIfField:``,showIfValue:``})})]})]},t))]})]})}var vh=[{label:`Module data (distinct)`,value:`module`},{label:`Masters collection`,value:`master`},{label:`Group value`,value:`group`}],yh=[`select`,`radio`,`checkbox`],bh=[{label:`Dropdown`,value:`dropdown`},{label:`Checkbox`,value:`checkbox`},{label:`Radio`,value:`radio`},{label:`Date Range`,value:`datepicker`},{label:`Number Range`,value:`number-range`}];function xh({field:e,update:t,configType:n,collections:r,collFields:a,onCollectionChange:s,onLookupFieldChange:c}){let l=yh.includes(e.type),u=!!e.lookup;function d(e){t({lookup:e?{collection:``,displayField:``,valueField:``,projectFields:[]}:null})}return(0,o.jsxs)(`div`,{style:{display:`flex`,gap:24,flexWrap:`wrap`},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Editable`}),(0,o.jsx)(i.Switch,{size:`small`,checked:!!e.isEditable,onChange:e=>t({isEditable:e})})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Mandatory`}),(0,o.jsx)(i.Switch,{size:`small`,checked:!!e.ismandatory,onChange:e=>t({ismandatory:e})})]}),n===`filter`&&(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Value Input`}),(0,o.jsx)(i.Select,{size:`small`,value:e.filterInputType??`dropdown`,onChange:e=>t({filterInputType:e}),options:bh,style:{width:140}})]}),n===`filter`&&(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Default`}),(0,o.jsx)(i.Switch,{size:`small`,checked:!!e.isDefaultFilter,onChange:e=>t({isDefaultFilter:e})})]}),n===`filter`&&(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Lookup`}),(0,o.jsx)(i.Switch,{size:`small`,checked:u,onChange:d})]}),n===`filter`&&u&&(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8,alignItems:`center`,flexWrap:`wrap`},children:[(0,o.jsx)(i.Select,{size:`small`,value:e.lookup?.collection||void 0,onChange:s,showSearch:!0,placeholder:`Collection`,style:{width:160},options:(r??[]).map(e=>({label:e,value:e}))}),(a??[]).length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Select,{size:`small`,value:e.lookup?.valueField||void 0,onChange:t=>c(e.fieldKey,{valueField:t}),showSearch:!0,placeholder:`Value field (ID)`,style:{width:160},options:(a??[]).map(e=>({label:e,value:e}))}),(0,o.jsx)(i.Input,{size:`small`,value:e.lookup?.displayField??``,onChange:t=>c(e.fieldKey,{displayField:t.target.value}),placeholder:`Display field (e.g. name)`,style:{width:180}})]})]}),l&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Source`}),(0,o.jsx)(i.Select,{size:`small`,value:e.dataSource??`module`,onChange:e=>t({dataSource:e,groupName:``}),options:vh,style:{width:170}})]}),(e.dataSource??`module`)===`group`&&(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[(0,o.jsx)(ch,{style:{fontSize:12},children:`Group Name`}),(0,o.jsx)(i.Input,{size:`small`,value:e.groupName??``,onChange:e=>t({groupName:e.target.value}),placeholder:`e.g. skills`,style:{width:120}})]})]})]})}function Sh({field:t,index:n,configType:s,moduleKey:c,onUpdate:l,onReorder:u,collections:d,onFetchCollFields:f,dragFromRef:p}){let[m,h]=(0,r.useState)(!1),[g,_]=(0,r.useState)(!1),[v,y]=(0,r.useState)(t.fieldName),[b,x]=(0,r.useState)([]),[S,C]=(0,r.useState)([]),[w,T]=(0,r.useState)(!1),[E,D]=(0,r.useState)(!1);(0,r.useEffect)(()=>{queueMicrotask(()=>{y(t.fieldName)})},[t.fieldName]);function O(e){p.current=n,e.dataTransfer.effectAllowed=`move`,D(!0)}function k(){D(!1),T(!1)}function A(e){e.preventDefault(),T(!0)}function j(){T(!1)}function M(e){e.preventDefault(),T(!1),p.current!==null&&p.current!==n&&u(p.current,n),p.current=null}function N(e){l(n,e)}function P(){_(!1);let e=v.trim();e&&e!==t.fieldName?N({fieldName:e}):y(t.fieldName)}async function F(e){N({lookup:{...t.lookup,collection:e,displayField:``,valueField:``,projectFields:[]}}),x(await f(e))}async function I(n,r){if(N({lookup:{...t.lookup,...r}}),r.valueField)try{C(await e.Dt(c,n))}catch{C([])}}function L(e){let n=t.secondaryFields??[];!e||n.includes(e)||N({secondaryFields:[...n,e]})}function R(e){N({secondaryFields:(t.secondaryFields??[]).filter(t=>t!==e)})}function z(){let e=t.actionButtons??[];e.length>=3||N({actionButtons:[...e,{name:``,iconUrl:``,iconPath:``,type:`page`,routeUrl:``,permissionKey:``}]})}function B(e,n){let r=[...t.actionButtons??[]];r[e]={...r[e],...n},N({actionButtons:r})}function V(e){let n=[...t.actionButtons??[]];n.splice(e,1),N({actionButtons:n})}return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{draggable:!0,onDragStart:O,onDragEnd:k,onDragOver:A,onDragLeave:j,onDrop:M,className:`uss-field-row${w?` drag-over`:``}${E?` dragging`:``}`,style:{gridTemplateColumns:`24px 1fr 80px 56px`},children:[(0,o.jsx)(`span`,{className:`uss-drag-handle`,children:(0,o.jsx)(a.HolderOutlined,{})}),(0,o.jsxs)(`span`,{className:`uss-field-name`,children:[t.isVirtual&&(0,o.jsx)(`span`,{className:`uss-virtual-tag`,children:`virtual`}),g?(0,o.jsx)(`input`,{autoFocus:!0,value:v,onChange:e=>y(e.target.value),onBlur:P,onKeyDown:e=>{e.key===`Enter`&&P(),e.key===`Escape`&&(_(!1),y(t.fieldName))},onClick:e=>e.stopPropagation()}):(0,o.jsx)(i.Tooltip,{title:`Double-click to rename`,children:(0,o.jsx)(`span`,{style:{cursor:`text`,borderBottom:`1px dashed var(--color-border-muted)`},onDoubleClick:e=>{e.stopPropagation(),_(!0)},children:t.fieldName})}),(0,o.jsx)(`span`,{className:`uss-field-key`,children:t.fieldKey})]}),(0,o.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,o.jsx)(i.Switch,{size:`small`,checked:t.isVisible,onChange:e=>N({isVisible:e})})}),(0,o.jsx)(`span`,{className:`uss-toggle-cell`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:m?(0,o.jsx)(a.DownOutlined,{}):(0,o.jsx)(a.RightOutlined,{}),onClick:()=>h(e=>!e),style:{color:`var(--color-text-muted)`}})})]}),m&&(0,o.jsx)(`div`,{className:`uss-detail-panel`,children:s===`listView`?(0,o.jsx)(_h,{field:t,collections:d,collFields:b,subfields:S,onCollectionChange:F,onLookupFieldChange:I,addSecondaryField:L,removeSecondaryField:R,addActionButton:z,updateActionButton:B,removeActionButton:V,moduleKey:c,fieldKey:t.fieldKey,update:N}):(0,o.jsx)(xh,{field:t,update:N,configType:s,collections:d,collFields:b,onCollectionChange:F,onLookupFieldChange:I})})]})}function Ch({role:t,configType:n}){let[a,s]=(0,r.useState)({}),[c,l]=(0,r.useState)(uh),[u,d]=(0,r.useState)(!1),[f,p]=(0,r.useState)({}),[m,h]=(0,r.useState)(`job`),[g,_]=(0,r.useState)([]),v=(0,r.useRef)({}),y=(0,r.useRef)(null),b=(0,r.useCallback)(async(r=t,i=n)=>{let[a,o]=await Promise.all([e.kt().catch(()=>[]),e.Ot()]),s=gh(a);return{tabs:s,colls:o,fields:await e.qt(r,i,s)}},[n,t]);(0,r.useEffect)(()=>{if(!t)return;let e=!1;return queueMicrotask(()=>{d(!0),(async()=>{try{let{tabs:t,colls:n,fields:r}=await b();if(e)return;l(t),_(n),h(e=>t.some(t=>t.key===e)?e:t[0]?.key??``),s(r)}catch{e||i.message.error(`Failed to load field config`)}finally{e||d(!1)}})()}),()=>{e=!0}},[b,t]);let x=a[m]??[];function S(e,t){s(n=>({...n,[e]:typeof t==`function`?t(n[e]??[]):t}))}function C(e,t){S(m,n=>n.map((n,r)=>r===e?{...n,...t}:n))}function w(e,t){S(m,n=>{let r=[...n],[i]=r.splice(e,1);return r.splice(t,0,i),r.map((e,t)=>({...e,order:t}))})}async function T(t){if(v.current[t])return v.current[t];try{let n=await e.At(t);return v.current[t]=n,n}catch{return[]}}async function E(){let r=m;p(e=>({...e,[r]:!0}));try{await e.mn(t,r,x,n,c),i.message.success(`Saved`)}catch{i.message.error(`Save failed`)}finally{p(e=>({...e,[r]:!1}))}}return(0,o.jsxs)(i.Spin,{spinning:u,children:[(0,o.jsx)(i.Tabs,{size:`small`,activeKey:m,onChange:h,items:c.map(e=>({key:e.key,label:e.label}))}),(0,o.jsxs)(`div`,{className:`uss-field-header`,style:{gridTemplateColumns:`24px 1fr 80px 56px`},children:[(0,o.jsx)(`span`,{}),(0,o.jsx)(`span`,{children:`Field`}),(0,o.jsx)(`span`,{style:{textAlign:`center`},children:`Visible`}),(0,o.jsx)(`span`,{})]}),(0,o.jsxs)(`div`,{className:`uss-field-list`,children:[x.length===0&&!u&&(0,o.jsx)(`div`,{className:`uss-empty`,children:`No fields found.`}),x.map((e,t)=>(0,o.jsx)(Sh,{field:e,index:t,configType:n,moduleKey:m,onUpdate:C,onReorder:w,collections:g,onFetchCollFields:T,dragFromRef:y},`${e.fieldKey??t}-${m}`))]}),(0,o.jsx)(`div`,{className:`uss-modal-footer`,children:(0,o.jsxs)(i.Button,{type:`primary`,size:`small`,loading:f[m],onClick:E,children:[`Save `,c.find(e=>e.key===m)?.label]})})]})}function wh(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function Th(e){if(typeof e==`string`)return{value:e,label:wh(e)};let t=e?.menuKey??e?.module??e?.key??e?.moduleKey??e?.value??e?.apiModule??e?.name??e?.modulename??e?.menuName;return t?{value:t,label:e?.menuName??e?.label??e?.moduleLabel??e?.moduleName??e?.name??e?.modulename??wh(t)}:null}function Eh(e){let t=new Set;return(Array.isArray(e)?e:[]).map(Th).filter(Boolean).filter(e=>t.has(e.value)?!1:(t.add(e.value),!0))}var{Text:Dh}=i.Typography;function Oh(e,t){return{...e,enabled:t,fields:e.fields.map(e=>({...e}))}}function kh(e,t){return{...e,editable:t,fields:e.fields.map(e=>({...e}))}}function Ah({role:t}){let[n,s]=(0,r.useState)([]),[c,l]=(0,r.useState)(``),[u,d]=(0,r.useState)([]),[f,p]=(0,r.useState)(!1),[m,h]=(0,r.useState)(!1),[g,_]=(0,r.useState)([]),[v,y]=(0,r.useState)({clientId:``,region:``}),b=(0,r.useCallback)(async()=>Eh(await e.kt().catch(()=>[])).map(({value:e,label:t})=>({key:e,label:t})),[]);(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{b().then(e=>{t||(s(e),l(t=>e.some(e=>e.key===t)?t:e[0]?.key??``))}),e.xt({limit:200}).then(e=>{t||_(e)}).catch(()=>{})}),()=>{t=!0}},[b]);let x=(0,r.useCallback)(async(n,r)=>{if(!t||!n){d([]);return}p(!0);try{let i=await e.Gt(t,n,r);d(Array.isArray(i)?i:[])}catch{i.message.error(`Failed to load form permissions`),d([])}finally{p(!1)}},[t]);(0,r.useEffect)(()=>{queueMicrotask(()=>{x(c,v)})},[c,v,x]);function S(e,t){d(n=>n.map(n=>n.name===e?Oh(n,t):n))}function C(e,t){d(n=>n.map(n=>n.name===e?kh(n,t):n))}function w(e,t,n){d(r=>r.map(r=>r.name===e?{...r,fields:r.fields.map(e=>e.field===t?{...e,enabled:n}:e)}:r))}function T(e,t,n){d(r=>r.map(r=>r.name===e?{...r,fields:r.fields.map(e=>e.field===t?{...e,editable:n}:e)}:r))}async function E(){h(!0);try{await e.on(t,c,u),i.message.success(`Saved`)}catch{i.message.error(`Save failed`)}finally{h(!1)}}return(0,o.jsxs)(i.Spin,{spinning:f,children:[(0,o.jsx)(i.Space,{wrap:!0,style:{marginBottom:8},children:(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,showSearch:!0,placeholder:`Client (optional — matches a client-scoped Form Groups override)`,style:{width:320},value:v.clientId||void 0,optionFilterProp:`label`,options:g.map(e=>({value:e._id??e.id,label:e.clientName??e.name??e.clientRefrenceId??e._id})).filter(e=>e.value),onChange:e=>y(t=>({...t,clientId:e??``}))})}),(0,o.jsx)(i.Tabs,{size:`small`,activeKey:c,onChange:l,items:n.map(e=>({key:e.key,label:e.label}))}),(0,o.jsxs)(`div`,{className:`fg-expanded-fields`,style:{marginTop:8},children:[u.length===0&&!f&&(0,o.jsx)(i.Empty,{description:`No form groups configured for this module.`}),u.map(e=>(0,o.jsxs)(`div`,{className:`fg-field-card`,style:{flexDirection:`column`,alignItems:`stretch`},children:[(0,o.jsxs)(`div`,{className:`fg-field-card-inner`,style:{padding:`8px 12px`},children:[(0,o.jsxs)(`span`,{className:`uss-field-name`,style:{flex:1},children:[(0,o.jsx)(`strong`,{children:e.label}),e.locked&&(0,o.jsx)(i.Tooltip,{title:`Every field in this group is disabled globally in Form Groups`,children:(0,o.jsx)(a.LockOutlined,{style:{marginLeft:6,color:`var(--color-text-muted)`}})})]}),(0,o.jsxs)(i.Space,{size:16,children:[(0,o.jsxs)(`span`,{className:`uss-toggle-pair`,children:[(0,o.jsx)(Dh,{type:`secondary`,style:{fontSize:11,marginRight:6},children:`Show`}),(0,o.jsx)(i.Switch,{size:`small`,checked:e.enabled,disabled:e.locked,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:t=>S(e.name,t)})]}),(0,o.jsxs)(`span`,{className:`uss-toggle-pair`,children:[(0,o.jsx)(Dh,{type:`secondary`,style:{fontSize:11,marginRight:6},children:`Editable`}),(0,o.jsx)(i.Switch,{size:`small`,checked:e.editable!==!1,disabled:e.locked||!e.enabled,checkedChildren:`Yes`,unCheckedChildren:`No`,onChange:t=>C(e.name,t)})]})]})]}),(0,o.jsx)(`div`,{className:`fg-expanded-fields`,style:{padding:`4px 12px 10px 28px`,opacity:e.enabled?1:.5},children:e.fields.map(t=>(0,o.jsxs)(`div`,{className:`fg-field-row`,style:{justifyContent:`space-between`},children:[(0,o.jsxs)(`span`,{className:`fg-field-row-info`,children:[(0,o.jsx)(`span`,{className:`fg-field-row-label`,children:t.label}),(0,o.jsx)(`span`,{className:`fg-field-row-key`,children:t.field}),t.locked&&(0,o.jsx)(i.Tooltip,{title:`Disabled globally in Form Groups — a role can never re-enable it`,children:(0,o.jsx)(a.LockOutlined,{style:{color:`var(--color-text-muted)`}})})]}),(0,o.jsxs)(i.Space,{size:16,children:[(0,o.jsxs)(`span`,{className:`uss-toggle-pair`,children:[(0,o.jsx)(Dh,{type:`secondary`,style:{fontSize:11,marginRight:6},children:`Show`}),(0,o.jsx)(i.Switch,{size:`small`,checked:t.enabled,disabled:t.locked||!e.enabled,checkedChildren:`On`,unCheckedChildren:`Off`,onChange:n=>w(e.name,t.field,n)})]}),(0,o.jsxs)(`span`,{className:`uss-toggle-pair`,children:[(0,o.jsx)(Dh,{type:`secondary`,style:{fontSize:11,marginRight:6},children:`Editable`}),(0,o.jsx)(i.Switch,{size:`small`,checked:t.editable!==!1,disabled:t.locked||!e.enabled||!t.enabled||e.editable===!1,checkedChildren:`Yes`,unCheckedChildren:`No`,onChange:n=>T(e.name,t.field,n)})]})]})]},t.field))})]},e.name))]}),u.length>0&&(0,o.jsx)(`div`,{className:`uss-modal-footer`,children:(0,o.jsxs)(i.Button,{type:`primary`,size:`small`,loading:m,onClick:E,children:[`Save `,n.find(e=>e.key===c)?.label]})}),(0,o.jsxs)(Dh,{type:`secondary`,style:{fontSize:11,display:`block`,marginTop:8},children:[`Groups and fields are read from Form Groups. `,(0,o.jsx)(`b`,{children:`Show`}),` hides a group/field from the add & edit form; `,(0,o.jsx)(`b`,{children:`Editable`}),` keeps it visible but read-only (disabled). Everything is shown and editable by default. A role can only ever narrow what Form Groups already enables — never re-enable something disabled globally.`]})]})}var{Text:jh,Title:Mh}=i.Typography,Nh=(e,t)=>`${e}::${t}`;function Ph(e){let t=new Set;return(e??[]).forEach(e=>{t.add(e.key),(e.children??[]).forEach(n=>t.add(Nh(e.key,n.key)))}),t}function Fh({role:t}){let n=Number(t?.roleId??0),[s,c]=(0,r.useState)([]),[l,u]=(0,r.useState)(``),[d,f]=(0,r.useState)([]),[p,m]=(0,r.useState)(!1),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)(new Set),[y,b]=(0,r.useState)(!1);(0,r.useEffect)(()=>{e.bt().then(e=>{let t=Eh(e).map(e=>e.value);c(t),u(e=>e||t[0]||``)}).catch(()=>c([]))},[]);let x=(0,r.useCallback)(async()=>{if(l){m(!0);try{let t=await e.Yt(l);f(Array.isArray(t)?t:[])}catch(e){i.message.error(e.message),f([])}finally{m(!1)}}},[l]);(0,r.useEffect)(()=>{queueMicrotask(()=>{x()})},[x]);let S=(0,r.useCallback)(e=>{let t=d.filter(t=>t.roleId===e);return t.find(e=>e.module===l)??t[0]??null},[d,l]),C=(0,r.useMemo)(()=>S(0),[S]),w=(0,r.useMemo)(()=>S(n),[S,n]),T=(0,r.useMemo)(()=>C?.rowActions??w?.rowActions??[],[C,w]);(0,r.useEffect)(()=>{queueMicrotask(()=>{v(Ph(w?w.rowActions:T)),b(!1)})},[w,T]);function E(e,t,n=[]){v(r=>{let i=new Set(r);return t?(i.add(e),n.forEach(e=>i.add(e))):(i.delete(e),n.forEach(e=>i.delete(e))),i}),b(!0)}async function D(){let r=T.filter(e=>_.has(e.key)).map(e=>e.children?.length?{...e,children:e.children.filter(t=>_.has(Nh(e.key,t.key)))}:e);g(!0);try{w?await e.gn(w.id??w._id,r):await e.ut({module:l,roleId:n,rowActions:r}),i.message.success(`Actions saved for ${t?.roleName??`role`}`),await x()}catch(e){i.message.error(e.message),String(e.message??``).toLowerCase().includes(`already exists`)&&x()}finally{g(!1)}}async function O(){if(w){g(!0);try{await e.yt(w.id??w._id),i.message.success(`Role override removed — this role now inherits the default actions`),await x()}catch(e){i.message.error(e.message)}finally{g(!1)}}}let k=[{title:`Action`,key:`identity`,render:(e,t)=>(0,o.jsxs)(i.Space,{direction:`vertical`,size:0,children:[(0,o.jsx)(jh,{strong:!0,children:t.label||t.key}),(0,o.jsx)(jh,{type:`secondary`,code:!0,children:t.key})]})},{title:`Behaviour`,key:`behaviour`,width:220,render:(e,t)=>(0,o.jsxs)(i.Space,{direction:`vertical`,size:0,children:[(0,o.jsx)(i.Tag,{color:`blue`,style:{width:`fit-content`},children:t.actionType}),(0,o.jsx)(jh,{type:`secondary`,ellipsis:{tooltip:!0},style:{maxWidth:190},children:t.actionType===`group`?`${(t.children??[]).length} child action(s)`:t.popupKey||t.routeTemplate||t.apiPath||t.copyField||t.documentField||`—`})]})},{title:`Enabled for this role`,key:`enabled`,width:160,render:(e,t)=>(0,o.jsx)(i.Switch,{checked:_.has(t.key),onChange:e=>E(t.key,e,(t.children??[]).map(e=>Nh(t.key,e.key)))})}],A=e=>[{title:`Child Action`,key:`identity`,render:(e,t)=>(0,o.jsxs)(i.Space,{direction:`vertical`,size:0,children:[(0,o.jsx)(jh,{strong:!0,children:t.label||t.key}),(0,o.jsx)(jh,{type:`secondary`,code:!0,children:t.key})]})},{title:`Behaviour`,key:`behaviour`,width:220,render:(e,t)=>(0,o.jsx)(jh,{type:`secondary`,children:t.popupKey||t.routeTemplate||t.apiPath||t.actionType})},{title:`Enabled`,key:`enabled`,width:160,render:(t,n)=>(0,o.jsx)(i.Switch,{disabled:!_.has(e.key),checked:_.has(Nh(e.key,n.key)),onChange:t=>E(Nh(e.key,n.key),t)})}];return(0,o.jsxs)(`section`,{className:`admin-editor`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Mh,{level:4,children:`Role Actions`}),(0,o.jsxs)(jh,{type:`secondary`,children:[`Enable or disable row actions for `,t?.roleName??`this role`,`. The action library itself is managed in Configurations → Actions.`]})]}),(0,o.jsxs)(i.Space,{children:[w&&(0,o.jsx)(i.Popconfirm,{title:`Remove this role's override and inherit the default actions?`,okText:`Reset`,okType:`danger`,onConfirm:O,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.UndoOutlined,{}),loading:h,children:`Reset to Default`})}),(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:x,loading:p,children:`Reload`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:h,disabled:!y||!l,onClick:D,children:`Save`})]})]}),(0,o.jsxs)(i.Space,{style:{marginBottom:12},wrap:!0,children:[(0,o.jsxs)(`label`,{children:[(0,o.jsx)(jh,{type:`secondary`,style:{display:`block`,marginBottom:4,fontSize:12},children:`Module`}),(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,style:{width:220},mode:`tags`,maxCount:1,value:l?[l]:[],placeholder:`Pick or type a module key`,onChange:e=>u(String(e[e.length-1]??``).trim()),options:s.map(e=>({value:e,label:e}))})]}),(0,o.jsxs)(`div`,{style:{paddingTop:20},children:[w?(0,o.jsx)(i.Tag,{color:`green`,children:`Role override active`}):(0,o.jsx)(i.Tag,{color:`orange`,children:`Inheriting default (All Roles) — Save creates an override`}),y&&(0,o.jsx)(jh,{type:`warning`,style:{marginLeft:8},children:`Unsaved changes`})]})]}),!p&&!T.length&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,style:{marginBottom:12},message:`No actions configured for this module yet.`,description:`Define the actions first in Configurations → Actions (Action library), then enable them per role here.`}),(0,o.jsx)(i.Spin,{spinning:p,children:(0,o.jsx)(i.Table,{dataSource:T.map((e,t)=>({...e,_rowKey:e.key||t})),rowKey:`_rowKey`,columns:k,pagination:!1,size:`small`,expandable:{rowExpandable:e=>e.actionType===`group`&&(e.children??[]).length>0,expandedRowRender:e=>(0,o.jsx)(i.Table,{dataSource:(e.children??[]).map((e,t)=>({...e,_rowKey:e.key||t})),rowKey:`_rowKey`,columns:A(e),pagination:!1,size:`small`})}})})]})}var{Paragraph:Ih,Text:Lh}=i.Typography;function Rh({open:t,scope:n,action:s,title:c,description:l,confirmLabel:u=`Confirm`,danger:d=!1,onCancel:f,onVerified:p,onConfirm:m}){let[h,g]=(0,r.useState)(``),[_,v]=(0,r.useState)(``),[y,b]=(0,r.useState)(!1),[x,S]=(0,r.useState)(!1),[C,w]=(0,r.useState)(``),T=(0,r.useRef)(!1);async function E(){if(!(!n||!s)){b(!0),w(``);try{let t=await e.$t(n,s);v(t?.data?.email||t?.email||`the registered approver`),i.message.success(`OTP sent`)}catch(e){w(e?.message||`Could not send the OTP`)}finally{b(!1)}}}(0,r.useEffect)(()=>{t&&!T.current&&(T.current=!0,g(``),w(``),v(``),E()),t||(T.current=!1)},[t]);async function D(){if(!h.trim()){w(`Enter the OTP sent to your email`);return}S(!0),w(``);try{let t=m?await m(h.trim()):await e.rt(n,s,h.trim());i.message.success(t?.data?.message||t?.message||`Done`),p?.(t)}catch(e){w(e?.message||`Verification failed — check the code and try again`)}finally{S(!1)}}return(0,o.jsxs)(i.Modal,{open:t,onCancel:f,title:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.SafetyCertificateOutlined,{}),` `,c]}),destroyOnClose:!0,maskClosable:!x,footer:[(0,o.jsx)(i.Button,{onClick:f,disabled:x,children:`Cancel`},`cancel`),(0,o.jsx)(i.Button,{type:`primary`,danger:d,loading:x,onClick:D,children:u},`ok`)],children:[l&&(0,o.jsx)(Ih,{type:`secondary`,style:{fontSize:13,marginBottom:8},children:l}),(0,o.jsxs)(Ih,{type:`secondary`,style:{fontSize:13},children:[`This is a protected action. A one-time code has been emailed to`,` `,(0,o.jsx)(Lh,{strong:!0,children:_||`…`}),`. Enter it below to continue.`]}),(0,o.jsx)(i.Input,{size:`large`,inputMode:`numeric`,placeholder:`Enter OTP`,value:h,maxLength:6,onChange:e=>g(e.target.value.replace(/\D/g,``)),onPressEnter:D,autoFocus:!0}),C&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:C,style:{marginTop:12}}),(0,o.jsx)(`div`,{style:{marginTop:12},children:(0,o.jsx)(i.Button,{type:`link`,size:`small`,loading:y,onClick:E,style:{padding:0},children:`Resend code`})})]})}var{Text:zh}=i.Typography;function Bh({moduleOptions:t=[]}){let[n,s]=(0,r.useState)(``),[c,l]=(0,r.useState)([]),[u,d]=(0,r.useState)([]),[f,p]=(0,r.useState)([]),[m,h]=(0,r.useState)(!1),[g,_]=(0,r.useState)(!1);(0,r.useEffect)(()=>{!n&&t.length&&s(t[0].value)},[t,n]);let v=(0,r.useCallback)(async t=>{if(t){h(!0);try{let[n,r]=await Promise.all([e.St(t).catch(()=>[]),e.Vt(t).catch(()=>[])]),i=new Set,a=[];(Array.isArray(n)?n:[]).forEach(e=>{(e.fields??[]).forEach(t=>{let n=String(t.field??``).trim();!n||i.has(n)||(i.add(n),a.push({value:n,label:`${t.label??n} · ${n}`,group:e.label??e.name}))})}),l(a),p(r),d(r)}catch(e){i.message.error(e?.message||`Could not load default fields`)}finally{h(!1)}}},[]);(0,r.useEffect)(()=>{queueMicrotask(()=>{v(n)})},[n,v]);let y=(0,r.useMemo)(()=>{if(u.length!==f.length)return!0;let e=[...u].sort(),t=[...f].sort();return e.some((e,n)=>e!==t[n])},[u,f]);async function b(t){let r=await e.in(n,u,t);return p(u),r}return(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.SafetyCertificateOutlined,{}),title:`Default Fields`,extra:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Select,{size:`small`,showSearch:!0,optionFilterProp:`label`,style:{width:220},placeholder:`Module`,value:n||void 0,options:t,onChange:s}),(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.SaveOutlined,{}),disabled:!n||!y,onClick:()=>_(!0),children:`Save (OTP)`})]}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsxs)(zh,{type:`secondary`,style:{fontSize:13,display:`block`,marginBottom:12},children:[`Fields chosen here are `,(0,o.jsx)(`b`,{children:`always shown and always required`}),` on this module's add & edit form. Their Show / Required switches are locked in Form Groups so no one can turn them off. Changing this list requires an OTP emailed to the approver.`]}),(0,o.jsxs)(i.Spin,{spinning:m,children:[(0,o.jsx)(i.Select,{mode:`multiple`,allowClear:!0,showSearch:!0,optionFilterProp:`label`,style:{width:`100%`},placeholder:`Select the fields that must always show + be required`,value:u,options:c,onChange:d,maxTagCount:`responsive`}),(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsxs)(zh,{type:`secondary`,style:{fontSize:12},children:[`Currently enforced (`,f.length,`): `]}),f.length?f.map(e=>(0,o.jsx)(i.Tag,{color:`blue`,style:{marginTop:4},children:e},e)):(0,o.jsx)(zh,{type:`secondary`,style:{fontSize:12},children:`none`})]}),!m&&c.length===0&&(0,o.jsx)(i.Alert,{style:{marginTop:12},type:`info`,showIcon:!0,message:`This module has no form-group fields yet — configure its Form Groups first.`})]}),(0,o.jsx)(Rh,{open:g,scope:`defaultFields`,action:`save`,title:`Confirm Default Fields change`,description:`Adding or updating a module's default (always-shown + required) fields is a protected action.`,confirmLabel:`Verify & Save`,onCancel:()=>_(!1),onConfirm:b,onVerified:()=>{_(!1),v(n)}})]})}var{Text:Vh}=i.Typography,Hh={reset:{action:`reset`,title:`Reset all form groups`,confirmLabel:`Reset All`,danger:!0,description:`This reseeds every module in this workspace back to the built-in default groups, discarding current customizations.`},save:{action:`save`,title:`Save current as default`,confirmLabel:`Save Default`,danger:!1,description:`Snapshots the current form groups for all modules as the saved default you can restore to later.`},restore:{action:`restore`,title:`Restore saved default`,confirmLabel:`Restore Default`,danger:!0,description:`Replaces the current form groups for all modules with the last saved default.`}},Uh=[`#0053a5`,`#52c41a`,`#722ed1`,`#fa8c16`,`#eb2f96`,`#13c2c2`],Wh=[{label:`Text`,value:`text`},{label:`Number`,value:`number`},{label:`Email`,value:`email`},{label:`Date`,value:`date`},{label:`Time Picker`,value:`time`},{label:`Location`,value:`location`},{label:`Select`,value:`select`},{label:`Radio`,value:`radio`},{label:`Checkbox`,value:`checkbox`},{label:`Tagify`,value:`tagify`},{label:`Textarea`,value:`textarea`},{label:`Text Editor`,value:`text-editor`},{label:`File`,value:`file`}],Gh=[{label:`Static (define options here)`,value:`static`},{label:`Masters collection`,value:`master`},{label:`Module data (distinct)`,value:`module`},{label:`Collection lookup (FK)`,value:`lookup`},{label:`Group value`,value:`group`}],Kh=[{label:`Required`,value:`required`,hasValue:!1},{label:`Min length/value`,value:`min`,hasValue:!0,valueType:`number`,placeholder:`e.g. 2`},{label:`Max length/value`,value:`max`,hasValue:!0,valueType:`number`,placeholder:`e.g. 100`},{label:`Pattern (regex)`,value:`pattern`,hasValue:!0,valueType:`text`,placeholder:`^[A-Za-z]+$`},{label:`Email (reject numeric-only address)`,value:`email`,hasValue:!1},{label:`Phone format`,value:`phone`,hasValue:!1},{label:`On or after another date field`,value:`dateAfterField`,hasValue:!0,valueType:`text`,placeholder:`startDate`,dateOnly:!0,messageOptional:!0},{label:`On or before another date field`,value:`dateBeforeField`,hasValue:!0,valueType:`text`,placeholder:`endDate`,dateOnly:!0,messageOptional:!0},{label:`Before another time field`,value:`timeBeforeField`,hasValue:!0,valueType:`text`,placeholder:`endTime`,messageOptional:!0},{label:`After another time field`,value:`timeAfterField`,hasValue:!0,valueType:`text`,placeholder:`startTime`,messageOptional:!0},{label:`File types allowed`,value:`fileType`,hasValue:!0,valueType:`text`,placeholder:`pdf,doc,jpg`,messageOptional:!0},{label:`Max file size (MB)`,value:`fileSize`,hasValue:!0,valueType:`number`,placeholder:`e.g. 5`,messageOptional:!0},{label:`Max files count`,value:`maxFiles`,hasValue:!0,valueType:`number`,placeholder:`e.g. 3`,messageOptional:!0},{label:`Greater than or equal to field`,value:`greaterThanField`,hasValue:!0,valueType:`text`,placeholder:`experienceRequiredFrom`},{label:`Greater than field (strict)`,value:`strictGreaterThanField`,hasValue:!0,valueType:`text`,placeholder:`numberOfPosition`},{label:`Less than field (strict)`,value:`strictLessThanField`,hasValue:!0,valueType:`text`,placeholder:`experienceRequiredTo`},{label:`Less than or equal to field`,value:`lessThanOrEqualField`,hasValue:!0,valueType:`text`,placeholder:`experienceRequiredTo`},{label:`Max field with fallback`,value:`maxFieldWithFallback`,hasValue:!0,valueType:`text`,placeholder:`preferredToField,fallbackFromField`},{label:`Disable previous dates`,value:`noPastDate`,hasValue:!1,messageOptional:!0,dateOnly:!0},{label:`Disable future dates`,value:`noFutureDate`,hasValue:!1,messageOptional:!0,dateOnly:!0},{label:`Min age (years)`,value:`minAge`,hasValue:!0,valueType:`number`,placeholder:`e.g. 18`,messageOptional:!0,dateOnly:!0}],qh=[{label:`Equals (=)`,value:`eq`},{label:`Not equals (≠)`,value:`neq`},{label:`Has any value`,value:`truthy`},{label:`Is empty`,value:`falsy`},{label:`Is one of (comma-separated)`,value:`in`},{label:`Is not one of (comma-separated)`,value:`notIn`},{label:`Has at least one row (addRow group)`,value:`notEmpty`}],Jh=[`eq`,`neq`,`in`,`notIn`],Yh=[{label:`Auto (infer from field)`,value:`auto`},{label:`String`,value:`string`},{label:`Number`,value:`number`},{label:`Boolean`,value:`boolean`},{label:`Array`,value:`array`},{label:`Object`,value:`object`},{label:`Date (ISO)`,value:`date`}],Xh=[{label:`(none)`,value:``},{label:`String`,value:`string`},{label:`Number`,value:`number`},{label:`Boolean`,value:`boolean`}],Zh=[{label:`Auto (value as-is)`,value:`auto`},{label:`Value only — { key: id }`,value:`value`},{label:`Label only — { key: "India" }`,value:`label`},{label:`Full object — { id, name }`,value:`object`},{label:`Custom template`,value:`custom`},{label:`Skip (never send)`,value:`skip`}],Qh={required:`red`,min:`orange`,max:`gold`,pattern:`purple`,email:`blue`,phone:`cyan`,dateAfterField:`volcano`,dateBeforeField:`orange`,fileType:`cyan`,fileSize:`blue`,maxFiles:`geekblue`,greaterThanField:`lime`,strictGreaterThanField:`green`,strictLessThanField:`cyan`,lessThanOrEqualField:`blue`,maxFieldWithFallback:`purple`,noPastDate:`geekblue`,noFutureDate:`magenta`,minAge:`green`};function $h(e){return Kh.find(t=>t.value===e)??{hasValue:!1}}function eg(e){return[{key:`all`,label:`All`,color:`#8c8c8c`},...e.map((e,t)=>({key:e.key,label:e.label,color:Uh[t%Uh.length]}))]}function tg(e){return Object.fromEntries(e.map(({key:e})=>[e,{groups:[],loading:!1,loaded:!1,error:``}]))}function ng(e){if(e==null)return;if(typeof e==`object`)return e;let t=String(e).trim();if(t)try{let e=JSON.parse(t);return e&&typeof e==`object`?e:void 0}catch{return}}function rg(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return``}}function ig(e,t){t.payloadKey&&(e.payloadKey=t.payloadKey),t.prefillFrom&&(e.prefillFrom=t.prefillFrom),t.prefillFromModule&&(e.prefillFromModule=t.prefillFromModule);let n=(Array.isArray(t.prefillWhen)?t.prefillWhen:[]).filter(e=>e&&e.field&&e.value!==void 0&&e.value!==``&&e.setValue!==void 0&&e.setValue!==``);n.length&&(e.prefillWhen=n,t.prefillWhenReset===!1&&(e.prefillWhenReset=!1)),t.dataType&&t.dataType!==`auto`&&(e.dataType=t.dataType),t.elementType&&(e.elementType=t.elementType),t.payloadMode&&t.payloadMode!==`auto`&&(e.payloadMode=t.payloadMode),t.valueKey&&(e.valueKey=t.valueKey),t.displayKey&&(e.displayKey=t.displayKey),t.defaultValue!==void 0&&t.defaultValue!==``&&(e.defaultValue=t.defaultValue),t.richValue&&(e.richValue=!0),t.omitEmpty&&(e.omitEmpty=!0);let r=ng(t.payloadTemplate);r&&(e.payloadTemplate=r);let i=ng(t.transformRule);return i&&(e.transformRule=i),e}function ag(e=[]){return e.filter(e=>String(e?.field??``).trim()!==``).map((e,t)=>{let n=(e.validations??[]).filter(e=>e?.type).map(e=>{let t=$h(e.type),n={type:e.type,message:e.message??``};return t.hasValue&&e.value!==``&&e.value!==void 0&&e.value!==null&&(n.value=t.valueType===`number`?Number(e.value):e.value),n}),r={label:e.label,field:e.field,type:e.type??`text`,show:+!!e.show,req:+!!e.req,edit:+!!e.edit,order:t,formatter:e.formatter??``,validations:n};if(e.showOnAdd===!1&&(r.showOnAdd=!1),e.addRow){r.addRow=!0,e.minRows!==void 0&&e.minRows!==``&&Number(e.minRows)>0&&(r.minRows=Number(e.minRows)),e.maxRows!==void 0&&e.maxRows!==``&&Number(e.maxRows)>0&&(r.maxRows=Number(e.maxRows)),e.initialRows!==void 0&&e.initialRows!==``&&(r.initialRows=Number(e.initialRows)),e.addLabel&&(r.addLabel=e.addLabel);let t=(e.subFields??[]).filter(e=>e&&e.field);t.length&&(r.subFields=t.map(e=>{let t={field:String(e.field).trim(),label:e.label??e.field,type:e.type??`text`,show:1,edit:1,req:+!!e.req};if(e.col!==void 0&&e.col!==``&&Number(e.col)>0&&(t.col=Number(e.col)),e.payloadKey&&(t.payloadKey=String(e.payloadKey).trim()),[`select`,`radio`,`checkbox`].includes(t.type)){let n=e.dataSource??`static`;t.dataSource=n,t.type===`select`&&(t.multiSelect=e.multiSelect??!1),n===`master`&&(t.masterName=e.masterName??``),n===`group`&&(t.groupName=e.groupName??``),n===`static`&&(t.options=(e.options??[]).filter(e=>e?.label||e?.value)),n===`lookup`&&(t.lookupCollection=e.lookupCollection??``,t.displayField=e.displayField??``,e.displayField2&&(t.displayField2=e.displayField2),t.valueField=e.valueField??`_id`,e.lookupFilterField&&e.lookupFilterValueFrom&&(t.lookupFilterField=e.lookupFilterField,t.lookupFilterValueFrom=e.lookupFilterValueFrom))}return t}))}if(e.placeholder&&(r.placeholder=e.placeholder),e.hidePlaceholder&&(r.hidePlaceholder=!0),e.combineKey&&(r.combineKey=e.combineKey),e.combineLabel&&(r.combineLabel=e.combineLabel),e.combineRole&&(r.combineRole=e.combineRole),e.combineToggleLabel&&(r.combineToggleLabel=e.combineToggleLabel),e.combineToggleTarget&&(r.combineToggleTarget=e.combineToggleTarget),e.combineWidth!==void 0&&e.combineWidth!==``&&Number(e.combineWidth)>0&&(r.combineWidth=Number(e.combineWidth)),e.combineWrap&&(r.combineWrap=!0),e.combineSpan!==void 0&&e.combineSpan!==``&&[12,24].includes(Number(e.combineSpan))&&(r.combineSpan=Number(e.combineSpan)),e.defaultOnEdit&&(r.defaultOnEdit=!0),e.emptyValues!==void 0&&e.emptyValues!==``&&(r.emptyValues=String(e.emptyValues).split(`,`).map(e=>e.trim()).filter(e=>e!==``)),e.valuePaths!==void 0&&e.valuePaths!==``&&(r.valuePaths=String(e.valuePaths).split(`,`).map(e=>e.trim()).filter(e=>e!==``)),e.clientScope&&(r.clientScope=!0,e.clientGateMessage&&(r.clientGateMessage=e.clientGateMessage),e.clientGateResetOnChange&&(r.clientGateResetOnChange=!0)),e.visiblePermission&&(r.visiblePermission=String(e.visiblePermission).trim()),e.editablePermission&&(r.editablePermission=String(e.editablePermission).trim()),e.infoEnabled&&e.infoText&&(r.infoEnabled=!0,r.infoText=e.infoText),e.helpText&&(r.helpText=e.helpText),ig(r,e),e.type===`file`&&(r.multiple=e.multiple??!1,r.maxCount=r.multiple?Number(e.maxCount??5):1,e.fileKey&&(r.fileKey=e.fileKey),e.fileNameKey&&(r.fileNameKey=e.fileNameKey),e.fileUrlKey&&(r.fileUrlKey=e.fileUrlKey),e.accept&&e.accept!==`any`&&(r.accept=e.accept)),e.showIf?.field){r.showIf={field:e.showIf.field,operator:e.showIf.operator??`eq`};let t=r.showIf.operator;Jh.includes(t)&&e.showIf.value!=null&&e.showIf.value!==``&&(r.showIf.value=e.showIf.value)}if(e.labelWhen?.field&&e.labelWhen?.label&&(r.labelWhen={field:String(e.labelWhen.field).trim(),operator:e.labelWhen.operator??`eq`,label:String(e.labelWhen.label).trim()},Jh.includes(r.labelWhen.operator)&&e.labelWhen.value!=null&&e.labelWhen.value!==``&&(r.labelWhen.value=e.labelWhen.value)),e.verifyAction&&(r.verifyAction=e.verifyAction,e.verifyResultField&&(r.verifyResultField=String(e.verifyResultField).trim()),e.verifyTimestampField&&(r.verifyTimestampField=String(e.verifyTimestampField).trim()),e.verifyIdleLabel&&(r.verifyIdleLabel=String(e.verifyIdleLabel).trim()),e.verifyRetryLabel&&(r.verifyRetryLabel=String(e.verifyRetryLabel).trim()),e.verifySuccessLabel&&(r.verifySuccessLabel=String(e.verifySuccessLabel).trim())),e.disabledByField&&(r.disabledByField=String(e.disabledByField).trim()),e.linkedClearField&&(r.linkedClearField=String(e.linkedClearField).trim()),e.autofillFrom)try{let t=typeof e.autofillFrom==`string`?JSON.parse(e.autofillFrom):e.autofillFrom;Array.isArray(t)&&t.length>0&&(r.autofillFrom=t)}catch{}Array.isArray(e.aiActions)&&e.aiActions.length>0&&(r.aiActions=e.aiActions.filter(e=>e?.key&&e?.label&&e?.serviceKey&&e?.endpointPath).map(e=>({key:e.key,label:e.label,trigger:e.trigger||`click`,serviceKey:e.serviceKey,endpointPath:e.endpointPath,bodyType:e.bodyType||`json`,inputs:(e.inputs||[]).filter(e=>e?.param&&e?.sourceField).map(e=>({param:e.param,sourceField:e.sourceField,kind:e.kind||`text`,...e.transform?{transform:e.transform}:{},...e.group?{group:e.group}:{},...e.required?{required:!0}:{},...Number(e.minWords)>0?{minWords:Number(e.minWords)}:{}})),...String(e.responseDataPath||``).trim()?{responseDataPath:String(e.responseDataPath).trim()}:{},...String(e.position||``).trim()?{position:String(e.position).trim()}:{}})));let i=e.validator?.type;if(i){r.validator={type:i},e.validator.title&&(r.validator.title=e.validator.title);let t=Number(e.validator.maxLength);!isNaN(t)&&t>0&&(r.validator.maxLength=t);let n=Number(e.validator.maxChars);!isNaN(n)&&n>0&&(r.validator.maxChars=n)}if([`select`,`radio`,`checkbox`].includes(e.type)){let t=e.dataSource??`static`;r.dataSource=t,e.type===`select`&&(r.multiSelect=e.multiSelect??!1),t===`master`&&(r.masterName=e.masterName??``),t===`group`&&(r.groupName=e.groupName??``),t===`static`&&(r.options=(e.options??[]).filter(e=>e?.label||e?.value)),t===`lookup`&&(r.lookupCollection=e.lookupCollection??``,r.displayField=e.displayField??``,e.displayField2&&(r.displayField2=e.displayField2),r.valueField=e.valueField??`_id`,e.lookupFilterField&&e.lookupFilterValueFrom&&(r.lookupFilterField=e.lookupFilterField,r.lookupFilterValueFrom=e.lookupFilterValueFrom),e.quickCreate&&(r.quickCreate=!0,e.quickCreateModule&&(r.quickCreateModule=e.quickCreateModule),e.quickCreateLabel&&(r.quickCreateLabel=e.quickCreateLabel)),e.quickEdit&&(r.quickEdit=!0,e.quickEditModule&&(r.quickEditModule=e.quickEditModule),e.quickEditLabel&&(r.quickEditLabel=e.quickEditLabel),e.quickEditIdFrom&&(r.quickEditIdFrom=e.quickEditIdFrom)))}for(let[t,n]of Object.entries(e))n==null||n===``||t in r||sg.has(t)||(r[t]=n);return r})}function og({collection:t,displayField:n,valueField:a,value:s,labelValue:c,onChange:l}){let[u,d]=(0,r.useState)([]),[f,p]=(0,r.useState)(!1),m=(0,r.useRef)(``),h=()=>{let r=`${t}|${n}|${a}`;!t||!n||m.current===r||(p(!0),e.It(t,n,a||`_id`).then(e=>{m.current=r,d(e)}).catch(()=>d([])).finally(()=>p(!1)))},g=s&&!u.some(e=>e.value===s)?[{label:c||s,value:s},...u]:u;return(0,o.jsx)(i.Select,{size:`small`,showSearch:!0,allowClear:!0,loading:f,placeholder:t?`Pick from ${t}`:`Configure a lookup first`,disabled:!t||!n,style:{width:220},optionFilterProp:`label`,options:g,value:s||void 0,onDropdownVisibleChange:e=>{e&&h()},onChange:(e,t)=>l(e??``,t?.label??``),getPopupContainer:()=>document.body})}var sg=new Set(`label.field.type.show.req.edit.order.formatter.validations.showOnAdd.addRow.minRows.maxRows.initialRows.addLabel.subFields.placeholder.hidePlaceholder.combineKey.combineLabel.combineRole.combineToggleLabel.combineToggleTarget.combineWidth.combineWrap.combineSpan.defaultOnEdit.emptyValues.valuePaths.clientScope.clientGateMessage.clientGateResetOnChange.visiblePermission.editablePermission.infoEnabled.infoText.helpText.payloadKey.prefillFrom.prefillFromModule.dataType.elementType.payloadMode.valueKey.displayKey.defaultValue.richValue.omitEmpty.payloadTemplate.transformRule.multiple.maxCount.fileKey.fileNameKey.fileUrlKey.accept.showIf.labelWhen.verifyAction.verifyResultField.verifyTimestampField.prefillWhen.prefillWhenReset.verifyIdleLabel.verifyRetryLabel.verifySuccessLabel.disabledByField.linkedClearField.autofillFrom.aiActions.validator.dataSource.masterName.groupName.options.multiSelect.lookupCollection.displayField.displayField2.valueField.lookupFilterField.lookupFilterValueFrom.quickCreate.quickCreateModule.quickCreateLabel.quickEdit.quickEditModule.quickEditLabel.quickEditIdFrom.value.documentPreview.displayAs.renderType.renderOptions`.split(`.`)),cg=new Set(`module.name.label.addRow.order.fields.hideGroup.moduleName.linkField.linkTypeField.parentRefField.writeRefs.dependsOn.optionalWrite.appendHistory.historyField.historyFields.historyTimestampField.minRows.maxRows.initialRows.requireOne.requireValidatedField.linkGroup.infoEnabled.infoText.toggleEnabled.toggleLabel.toggleField.afterSubmit.showIf.showIfField.showIfOperator.showIfValue.formActions.afterSubmitMode.afterSubmitTarget.submitMessages.submitMsgAddSuccess.submitMsgEditSuccess.submitMsgAddError.submitMsgEditError.submitMsgSuppress.id._id.rows.toggleValue`.split(`.`));function lg(e){return{...e,show:e.show===1,req:e.req===1,edit:e.edit===1,showOnAdd:e.showOnAdd!==!1,addRow:e.addRow??!1,minRows:e.minRows??``,maxRows:e.maxRows??``,initialRows:e.initialRows??``,addLabel:e.addLabel??``,subFields:Array.isArray(e.subFields)?e.subFields.map(e=>({field:e.field??``,label:e.label??``,type:e.type??`text`,req:e.req===1||e.req===!0,col:e.col??``,payloadKey:e.payloadKey??``,dataSource:e.dataSource??`static`,multiSelect:e.multiSelect??!1,masterName:e.masterName??``,groupName:e.groupName??``,options:Array.isArray(e.options)?e.options:[],lookupCollection:e.lookupCollection??``,displayField:e.displayField??``,displayField2:e.displayField2??``,valueField:e.valueField??`_id`,lookupFilterField:e.lookupFilterField??``,lookupFilterValueFrom:e.lookupFilterValueFrom??``})):[],placeholder:e.placeholder??``,hidePlaceholder:e.hidePlaceholder??!1,clientScope:e.clientScope??!1,clientGateMessage:e.clientGateMessage??``,clientGateResetOnChange:e.clientGateResetOnChange??!1,visiblePermission:e.visiblePermission??``,editablePermission:e.editablePermission??``,infoEnabled:e.infoEnabled??!1,infoText:e.infoText??``,helpText:e.helpText??``,formatter:e.formatter??``,combineKey:e.combineKey??``,combineLabel:e.combineLabel??``,combineRole:e.combineRole??``,combineToggleLabel:e.combineToggleLabel??``,combineToggleTarget:e.combineToggleTarget??``,combineWidth:e.combineWidth??``,combineWrap:e.combineWrap??!1,combineSpan:e.combineSpan??``,defaultOnEdit:e.defaultOnEdit??!1,emptyValues:Array.isArray(e.emptyValues)?e.emptyValues.join(`, `):e.emptyValues??``,valuePaths:Array.isArray(e.valuePaths)?e.valuePaths.join(`, `):e.valuePaths??``,dataSource:e.dataSource??`static`,masterName:e.masterName??``,groupName:e.groupName??``,options:e.options??[],lookupCollection:e.lookupCollection??``,displayField:e.displayField??``,displayField2:e.displayField2??``,valueField:e.valueField??`_id`,lookupFilterField:e.lookupFilterField??``,lookupFilterValueFrom:e.lookupFilterValueFrom??``,quickCreate:e.quickCreate??!1,quickCreateModule:e.quickCreateModule??``,quickCreateLabel:e.quickCreateLabel??``,quickEdit:e.quickEdit??!1,quickEditModule:e.quickEditModule??``,quickEditLabel:e.quickEditLabel??``,quickEditIdFrom:e.quickEditIdFrom??``,multiSelect:e.multiSelect??!1,multiple:e.multiple??!1,maxCount:e.maxCount??5,accept:e.accept??`any`,fileKey:e.fileKey??``,fileNameKey:e.fileNameKey??``,fileUrlKey:e.fileUrlKey??``,payloadKey:e.payloadKey??``,prefillFrom:e.prefillFrom??``,prefillFromModule:e.prefillFromModule??``,prefillWhen:Array.isArray(e.prefillWhen)?e.prefillWhen:[],prefillWhenReset:e.prefillWhenReset!==!1,dataType:e.dataType??`auto`,elementType:e.elementType??``,payloadMode:e.payloadMode??`auto`,valueKey:e.valueKey??``,displayKey:e.displayKey??``,defaultValue:e.defaultValue??``,richValue:e.richValue??!1,omitEmpty:e.omitEmpty??!1,payloadTemplate:rg(e.payloadTemplate),transformRule:rg(e.transformRule),showIf:e.showIf?.field?{field:e.showIf.field,operator:e.showIf.operator??`eq`,value:e.showIf.value??``}:{field:``,operator:`eq`,value:``},labelWhen:e.labelWhen?.field?{field:e.labelWhen.field,operator:e.labelWhen.operator??`eq`,value:e.labelWhen.value??``,label:e.labelWhen.label??``}:{field:``,operator:`eq`,value:``,label:``},verifyAction:e.verifyAction??``,verifyResultField:e.verifyResultField??``,verifyTimestampField:e.verifyTimestampField??``,verifyIdleLabel:e.verifyIdleLabel??``,verifyRetryLabel:e.verifyRetryLabel??``,verifySuccessLabel:e.verifySuccessLabel??``,validations:(e.validations??[]).map(e=>({type:e.type,value:e.value??``,message:e.message??``})),validator:{type:e.validator?.type??``,title:e.validator?.title??``,maxLength:e.validator?.maxLength??``,maxChars:e.validator?.maxChars??``},disabledByField:e.disabledByField??``,linkedClearField:e.linkedClearField??``,autofillFrom:Array.isArray(e.autofillFrom)?JSON.stringify(e.autofillFrom,null,2):e.autofillFrom??``,aiActions:Array.isArray(e.aiActions)?e.aiActions.map(e=>({...e,inputs:(e.inputs??[]).map(e=>({...e,minWords:e.minWords??``})),responseDataPath:e.responseDataPath??``,position:e.position??``})):[]}}function ug({form:t,fieldItems:n,add:r,remove:s,move:c,absBase:l,moduleFieldOptions:u,dragIndexRef:d,dragOverIndex:f,setDragOverIndex:p,onFieldKeySelect:m,expandedFieldKeys:h,onToggleField:g,defaultFieldSet:_=new Set}){let v=[...l,`fields`];return(0,o.jsxs)(o.Fragment,{children:[n.map(({key:n,name:r,...l},y)=>{let b=[...v,r],x=t.getFieldValue(b)??{},S=h&&!h.has(y);return(0,o.jsx)(`div`,{draggable:!0,onDragStart:()=>{d.current=y},onDragEnd:()=>{d.current=null,p(null)},onDragOver:e=>{e.preventDefault(),p(y)},onDragLeave:()=>p(null),onDrop:e=>{e.preventDefault();let t=d.current;t!==null&&t!==y&&c(t,y),d.current=null,p(null)},className:`fg-field-card${f===y?` fg-drag-over`:``}`,children:(0,o.jsxs)(`div`,{className:`fg-field-card-inner`,children:[(0,o.jsx)(`span`,{className:`fg-drag-handle`,children:(0,o.jsx)(a.HolderOutlined,{})}),S?(0,o.jsxs)(`div`,{className:`fg-field-summary`,children:[(0,o.jsxs)(`button`,{type:`button`,className:`fg-field-summary-main`,onClick:()=>g(y),children:[(0,o.jsx)(a.RightOutlined,{className:`fg-field-summary-chevron`}),(0,o.jsxs)(`span`,{children:[(0,o.jsx)(`strong`,{children:x.label||x.field||`Field ${y+1}`}),(0,o.jsxs)(`small`,{children:[x.field||`Field key not set`,` · `,x.type||`text`]})]})]}),(0,o.jsxs)(i.Space,{size:4,children:[x.req&&(0,o.jsx)(i.Tag,{color:`red`,children:`Required`}),x.show===!1&&(0,o.jsx)(i.Tag,{children:`Hidden`}),(0,o.jsx)(i.Tooltip,{title:`Edit field settings`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>g(y)})}),(0,o.jsx)(i.Tooltip,{title:`Remove field`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.MinusCircleOutlined,{}),onClick:()=>s(r)})})]})]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`fg-field-body`,children:[h&&(0,o.jsxs)(`button`,{type:`button`,className:`fg-field-collapse-btn`,onClick:()=>g(y),children:[(0,o.jsx)(a.DownOutlined,{}),` Collapse field`]}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`field`],label:`Field`,style:{marginBottom:10},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.AutoComplete,{options:u,placeholder:`Search or type field key…`,filterOption:(e,t)=>(t?.searchLabel??``).includes(e.toLowerCase()),onSelect:e=>m(e,r),className:`fg-mono-input`})}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsx)(i.Form.Item,{...l,name:[r,`label`],label:`Label`,style:{marginBottom:8,flex:2},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Display label`})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`type`],label:`Type`,style:{marginBottom:8,flex:2},initialValue:`text`,children:(0,o.jsx)(i.Select,{size:`small`,options:Wh})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`formatter`],label:`Formatter`,style:{marginBottom:8,flex:2},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`name / phone…`})})]}),(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Layout / Combine`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`combineKey`],label:`Combine Key`,style:{marginBottom:0},tooltip:`Fields with the same key render together as one visual block. Payload stays unchanged.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. client_rate`,style:{width:150},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineLabel`],label:`Combined Label`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. Client Rate`,style:{width:160}})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineRole`],label:`Role`,style:{marginBottom:0},children:(0,o.jsx)(i.Select,{size:`small`,style:{width:120},allowClear:!0,options:[{label:`Primary`,value:`primary`},{label:`From`,value:`from`},{label:`To`,value:`to`},{label:`Currency`,value:`currency`},{label:`Unit`,value:`unit`}]})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineToggleLabel`],label:`Toggle Label`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. Range`,style:{width:130}})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineToggleTarget`],label:`Toggle Target`,style:{marginBottom:0},tooltip:`Field key hidden until the combined-field slider is enabled. Example: clientRateTo.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`target field key`,style:{width:150},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineWidth`],label:`Width`,style:{marginBottom:0},tooltip:`Width weight of this box inside the combined block. Set the same key's fields to e.g. 2 & 1 for 2:1, or 1/2/3 for 1:2:3. Blank/0 = equal share.`,children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:0,step:.5,placeholder:`1`,style:{width:80}})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineWrap`],label:`Wrap`,valuePropName:`checked`,style:{marginBottom:0},tooltip:`Allow this combined block to wrap to another line. Useful for wider controls such as document upload rows.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:[r,`combineSpan`],label:`Block Span`,style:{marginBottom:0},tooltip:`How much row width this combined block uses. Blank keeps the existing automatic layout.`,children:(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,placeholder:`Auto`,style:{width:110},options:[{label:`Half`,value:12},{label:`Full`,value:24}]})})]})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:t})=>{if(t([...b,`type`])!==`file`)return null;let n=t([...b,`multiple`]);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`File Options`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,children:[(0,o.jsx)(i.Form.Item,{name:[r,`accept`],label:`Allowed Content`,style:{marginBottom:0},initialValue:`any`,tooltip:`Restrict what this upload accepts. A file outside the selected category is rejected on upload. Overrides the 'File types allowed' validation rule.`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:230},options:e.p})}),(0,o.jsx)(i.Form.Item,{name:[r,`multiple`],label:`Upload Mode`,valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Multiple`,unCheckedChildren:`Single`})}),n&&(0,o.jsx)(i.Form.Item,{name:[r,`maxCount`],label:`Max files`,style:{marginBottom:0},initialValue:5,rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:2,placeholder:`e.g. 5`,style:{width:80}})}),(0,o.jsx)(i.Form.Item,{name:[r,`fileKey`],label:`File Key`,style:{marginBottom:0},tooltip:`Multipart field name sent to the server. Leave blank to use the field key. Set to 'file' for the jobs service.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. file`,style:{width:120},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`fileNameKey`],label:`Name Key`,style:{marginBottom:0},tooltip:`Stored object key that contains the uploaded file name. Leave blank for automatic detection.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. passportUploadName`,style:{width:180},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`fileUrlKey`],label:`URL Key`,style:{marginBottom:0},tooltip:`Stored object key that contains the file location/path. Leave blank for automatic detection.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. passportCopyLocation`,style:{width:190},className:`fg-mono-input`})})]})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`type`]);if(![`select`,`radio`,`checkbox`].includes(t))return null;let n=e([...b,`dataSource`])??`static`;return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Options / Values`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,children:[(0,o.jsx)(i.Form.Item,{name:[r,`dataSource`],label:`Source`,style:{marginBottom:0},initialValue:`static`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:190},options:Gh})}),t===`select`&&(0,o.jsx)(i.Form.Item,{name:[r,`multiSelect`],label:`Multi Select`,valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Multi`,unCheckedChildren:`Single`})}),n===`master`&&(0,o.jsx)(i.Form.Item,{name:[r,`masterName`],label:`Master Name`,style:{marginBottom:0},rules:[{required:!0,message:`Enter master name`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. tracker`,style:{width:140}})}),n===`group`&&(0,o.jsx)(i.Form.Item,{name:[r,`groupName`],label:`Group Name`,style:{marginBottom:0},rules:[{required:!0,message:`Enter group name`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. users`,style:{width:140}})})]}),n===`static`&&(0,o.jsxs)(`div`,{className:`fg-static-options`,children:[(0,o.jsx)(`span`,{className:`fg-static-options-hint`,children:`Label / Value pairs`}),(0,o.jsx)(i.Form.List,{name:[r,`options`],children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-option-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`label`],style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Label`})}),(0,o.jsx)(i.Form.Item,{name:[t,`value`],style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Value`,className:`fg-mono-input`})}),(0,o.jsx)(a.MinusCircleOutlined,{onClick:()=>n(t),className:`fg-remove-icon`})]},e)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({label:``,value:``}),className:`fg-add-option-btn`,children:`Add Option`})]})})]}),n===`module`&&(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`Options fetched from the module's distinct field values at runtime.`}),n===`group`&&(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`Use "users" to load all users from the MongoDB-backed user collection.`}),n===`lookup`&&(0,o.jsxs)(`div`,{className:`fg-lookup-block`,children:[(0,o.jsx)(`p`,{className:`fg-source-hint`,style:{marginBottom:8},children:`Cross-collection lookup — shows label, stores FK value.`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsx)(i.Form.Item,{name:[r,`lookupCollection`],label:`Collection`,style:{marginBottom:0,flex:1},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendors`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`displayField`],label:`Display Field`,style:{marginBottom:0,flex:1},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendorContact.firstName`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`displayField2`],label:`Display Field 2`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendorContact.lastName`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`valueField`],label:`Value Field (FK)`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`_id`,className:`fg-mono-input`})})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:8},children:[(0,o.jsx)(i.Form.Item,{name:[r,`lookupFilterField`],label:`Filter Field`,style:{marginBottom:0,flex:1},tooltip:`Optional DB field to filter lookup rows by. Example: _id or clientId.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. _id`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`lookupFilterValueFrom`],label:`Filter Value From`,style:{marginBottom:0,flex:1},tooltip:`Optional form/scope field that provides the filter value. Example: clientId.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. clientId`,className:`fg-mono-input`})})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:8,alignItems:`flex-end`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`quickCreate`],valuePropName:`checked`,style:{marginBottom:0},tooltip:`Show an 'Add More' button in this dropdown that opens the target module's Add form in a modal.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Add More`,unCheckedChildren:`No Add`})}),(0,o.jsx)(i.Form.Item,{name:[r,`quickCreateModule`],label:`Create Module`,style:{marginBottom:0,flex:1},tooltip:`Module to create. Defaults to the lookup Collection above.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`defaults to Collection`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`quickEdit`],valuePropName:`checked`,style:{marginBottom:0},tooltip:`Show an 'Edit' button that opens the target module's Edit form for the resolved record.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Edit`,unCheckedChildren:`No Edit`})}),(0,o.jsx)(i.Form.Item,{name:[r,`quickEditModule`],label:`Edit Module`,style:{marginBottom:0,flex:1},tooltip:`Module to edit. Defaults to the lookup Collection above.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`defaults to Collection`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`quickEditIdFrom`],label:`Edit Id From`,style:{marginBottom:0,flex:1},tooltip:`Sibling field whose value is the record id to edit. Empty = this field's own value. Example: clientId (edit the selected client) or employerId.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. clientId`,className:`fg-mono-input`})})]})]})]})}}),(0,o.jsxs)(`div`,{className:`fg-toggles-row`,children:[(()=>{let e=_.has(x.field);return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{...l,name:[r,`show`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!0,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Show`,unCheckedChildren:`Hide`,checked:e?!0:void 0,disabled:e,title:e?`Locked — Default Field (always shown)`:void 0})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`req`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Req`,unCheckedChildren:`Opt`,checked:e?!0:void 0,disabled:e,title:e?`Locked — Default Field (always required)`:void 0})})]})})(),(0,o.jsx)(i.Form.Item,{...l,name:[r,`showOnAdd`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!0,tooltip:`Show this field on Add. Turn off for edit-only fields.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Add`,unCheckedChildren:`No Add`})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`edit`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!0,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Edit`,unCheckedChildren:`Read`})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`addRow`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,tooltip:`Let users repeat this single field (add/remove multiple values). Ignored when this field's group is itself Add Row.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Repeat`,unCheckedChildren:`Single`})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`clientScope`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,tooltip:`Use this field as the client-selector gate. It shows as the top 'Select Client' picker and is hidden from the form body (no duplicate client card).`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Client Gate`,unCheckedChildren:`Client Gate`})}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`infoEnabled`],valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,tooltip:`Show an info icon next to this field label in add/edit forms.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Info`,unCheckedChildren:`Info`})})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>e([...b,`addRow`])?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Repeat Field Options`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`minRows`],label:`Min Values`,style:{marginBottom:0},tooltip:`Minimum values the user must keep. Delete is disabled at this count.`,children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:0,placeholder:`0`,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:[r,`initialRows`],label:`Initial Values`,style:{marginBottom:0},tooltip:`How many empty inputs to show on a fresh Add (0 = show only the + button).`,children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:0,placeholder:`1`,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:[r,`maxRows`],label:`Max Values`,style:{marginBottom:0},tooltip:`Maximum values allowed. The + button hides at this count. Blank = unlimited.`,children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:0,placeholder:`∞`,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:[r,`addLabel`],label:`Add Button Label`,style:{marginBottom:0},tooltip:`Custom text for the add button. Defaults to 'Add <label>'.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. Add Skill`,style:{width:170}})})]}),(0,o.jsxs)(`div`,{className:`fg-subfields-block`,style:{marginTop:10},children:[(0,o.jsxs)(`span`,{className:`fg-options-label`,children:[`Sub-fields (repeat a group together)`,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,style:{marginLeft:6},children:`leave empty to repeat a single value`})]}),(0,o.jsx)(i.Form.List,{name:[r,`subFields`],children:(t,{add:n,remove:r})=>(0,o.jsxs)(`div`,{children:[t.map(({key:t,name:n,...s})=>(0,o.jsxs)(`div`,{className:`fg-subfield-row`,style:{marginBottom:10},children:[(0,o.jsxs)(`div`,{className:`fg-inline-row`,style:{flexWrap:`wrap`,alignItems:`flex-end`},children:[(0,o.jsx)(i.Form.Item,{...s,name:[n,`field`],label:`Key`,rules:[{required:!0,message:`Key`},{pattern:/^[a-zA-Z0-9_]+$/,message:`a-z 0-9 _`}],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. question`,style:{width:140},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{...s,name:[n,`label`],label:`Label`,rules:[{required:!0,message:`Label`}],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. Question`,style:{width:150}})}),(0,o.jsx)(i.Form.Item,{...s,name:[n,`type`],label:`Type`,initialValue:`text`,style:{marginBottom:0},children:(0,o.jsx)(i.Select,{size:`small`,options:Wh,style:{width:130}})}),(0,o.jsx)(i.Form.Item,{...s,name:[n,`req`],label:`Required`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:0},children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{...s,name:[n,`col`],label:`Width`,tooltip:`Grid span: 12 = half row, 24 = full row. Blank = 12.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,placeholder:`12`,style:{width:70}})}),(0,o.jsx)(i.Tooltip,{title:`Remove sub-field`,children:(0,o.jsx)(`button`,{type:`button`,className:`fg-field-remove-btn`,onClick:()=>r(n),"aria-label":`Remove sub-field`,children:(0,o.jsx)(a.MinusCircleOutlined,{})})})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},children:()=>{let t=e([...b,`subFields`,n,`type`]);if(![`select`,`radio`,`checkbox`].includes(t))return null;let r=e([...b,`subFields`,n,`dataSource`])??`static`;return(0,o.jsxs)(`div`,{className:`fg-options-block`,style:{marginTop:6},children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Options / Values`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,children:[(0,o.jsx)(i.Form.Item,{name:[n,`dataSource`],label:`Source`,style:{marginBottom:0},initialValue:`static`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:190},options:Gh})}),t===`select`&&(0,o.jsx)(i.Form.Item,{name:[n,`multiSelect`],label:`Multi Select`,valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Multi`,unCheckedChildren:`Single`})}),r===`master`&&(0,o.jsx)(i.Form.Item,{name:[n,`masterName`],label:`Master Name`,style:{marginBottom:0},rules:[{required:!0,message:`Enter master name`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. tracker`,style:{width:140}})}),r===`group`&&(0,o.jsx)(i.Form.Item,{name:[n,`groupName`],label:`Group Name`,style:{marginBottom:0},rules:[{required:!0,message:`Enter group name`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. users`,style:{width:140}})})]}),r===`static`&&(0,o.jsxs)(`div`,{className:`fg-static-options`,children:[(0,o.jsx)(`span`,{className:`fg-static-options-hint`,children:`Label / Value pairs`}),(0,o.jsx)(i.Form.List,{name:[n,`options`],children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-option-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`label`],style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Label`})}),(0,o.jsx)(i.Form.Item,{name:[t,`value`],style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Value`,className:`fg-mono-input`})}),(0,o.jsx)(a.MinusCircleOutlined,{onClick:()=>n(t),className:`fg-remove-icon`})]},e)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({label:``,value:``}),className:`fg-add-option-btn`,children:`Add Option`})]})})]}),r===`group`&&(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`Use "users" to load all users from the MongoDB-backed user collection.`}),r===`lookup`&&(0,o.jsxs)(`div`,{className:`fg-lookup-block`,children:[(0,o.jsx)(`p`,{className:`fg-source-hint`,style:{marginBottom:8},children:`Cross-collection lookup — shows label, stores FK value.`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsx)(i.Form.Item,{name:[n,`lookupCollection`],label:`Collection`,style:{marginBottom:0,flex:1},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendors`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[n,`displayField`],label:`Display Field`,style:{marginBottom:0,flex:1},rules:[{required:!0,message:`Required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendorContact.firstName`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[n,`displayField2`],label:`Display Field 2`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. vendorContact.lastName`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[n,`valueField`],label:`Value Field (FK)`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`_id`,className:`fg-mono-input`})})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:8},children:[(0,o.jsx)(i.Form.Item,{name:[n,`lookupFilterField`],label:`Filter Field`,style:{marginBottom:0,flex:1},tooltip:`Optional DB field to filter lookup rows by. Example: _id or clientId.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. _id`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[n,`lookupFilterValueFrom`],label:`Filter Value From`,style:{marginBottom:0,flex:1},tooltip:`Optional form/scope field that provides the filter value. Example: clientId.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. clientId`,className:`fg-mono-input`})})]})]})]})}})]},t)),(0,o.jsx)(i.Button,{type:`dashed`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>n({type:`text`,req:!1}),children:`Add Sub-field`})]})})]})]}):null}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:8},children:[(0,o.jsx)(i.Form.Item,{name:[r,`placeholder`],label:`Placeholder`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Admin-controlled placeholder`})}),(0,o.jsx)(i.Form.Item,{name:[r,`hidePlaceholder`],label:`Hide Placeholder`,valuePropName:`checked`,style:{marginBottom:0},children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Hidden`,unCheckedChildren:`Shown`})})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:8},children:[(0,o.jsx)(i.Form.Item,{name:[r,`visiblePermission`],label:`Visible permission key`,style:{marginBottom:0,flex:1},tooltip:`Menu-permission key ('<module>.<key>', e.g. submission.viewRate) gating whether this field is rendered at all. Leave blank to show to everyone (subject to the Show toggle above). Add matching keys in Admin → Permissions.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. submission.viewRate`})}),(0,o.jsx)(i.Form.Item,{name:[r,`editablePermission`],label:`Editable permission key`,style:{marginBottom:0,flex:1},tooltip:`Menu-permission key gating whether this field can be edited. Users without it see the field disabled with a tooltip. Leave blank to allow everyone (subject to the Edit toggle above).`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. submission.editRate`})})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>e([...b,`clientScope`])?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Client Gate Message`}),(0,o.jsx)(i.Form.Item,{name:[r,`clientGateMessage`],style:{marginBottom:0},children:(0,o.jsx)(i.Input.TextArea,{rows:2,placeholder:`Message shown below 'Select Client' in the add form (leave blank for default)`})}),(0,o.jsx)(i.Form.Item,{name:[r,`clientGateResetOnChange`],valuePropName:`checked`,style:{margin:`10px 0 0`},tooltip:`When the selected client changes or is cleared, remove every value already entered in the form before loading the new client configuration.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Reset form on client change`,unCheckedChildren:`Keep form values`})})]}):null}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>e([...b,`infoEnabled`])?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsxs)(`span`,{className:`fg-options-label`,children:[(0,o.jsx)(a.InfoCircleOutlined,{}),` Field Info`]}),(0,o.jsx)(i.Form.Item,{name:[r,`infoText`],style:{marginBottom:0},rules:[{required:!0,message:`Enter info message`}],children:(0,o.jsx)(i.Input.TextArea,{rows:2,placeholder:`Message shown when users hover the info icon`})})]}):null}),(0,o.jsx)(i.Form.Item,{...l,name:[r,`helpText`],label:`Extra Text`,tooltip:`Small gray helper text rendered below this field in add/edit forms. Example: date format.`,children:(0,o.jsx)(i.Input.TextArea,{rows:2,placeholder:`Shown below the field`})}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`showIf`,`field`]),n=e([...b,`showIf`,`operator`])??`eq`,a=Jh.includes(n);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Show Condition`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`showIf`,`field`],label:`Show only when field`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`field key — blank = always show`,style:{width:210},className:`fg-mono-input`})}),t&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:[r,`showIf`,`operator`],label:`Operator`,style:{marginBottom:0},initialValue:`eq`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:130},options:qh,getPopupContainer:()=>document.body})}),a&&(0,o.jsx)(i.Form.Item,{name:[r,`showIf`,`value`],label:`Value`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. yes`,style:{width:100},className:`fg-mono-input`})})]})]}),t&&(0,o.jsxs)(`p`,{className:`fg-source-hint`,style:{marginTop:4},children:[`Hidden until “`,t,`”`,a?` ${n===`eq`?`equals`:n===`neq`?`does not equal`:n===`in`?`is one of`:`is not one of`} the value above.`:` ${n===`truthy`?`has any value.`:n===`notEmpty`?`has at least one row.`:`is empty.`}`]})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`labelWhen`,`field`]),n=e([...b,`labelWhen`,`operator`])??`eq`,a=Jh.includes(n);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Conditional Label`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`labelWhen`,`field`],label:`Watch field`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`blank = use normal label`,style:{width:190},className:`fg-mono-input`})}),t&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:[r,`labelWhen`,`operator`],label:`Operator`,style:{marginBottom:0},initialValue:`eq`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:130},options:qh,getPopupContainer:()=>document.body})}),a&&(0,o.jsx)(i.Form.Item,{name:[r,`labelWhen`,`value`],label:`Value`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`comma-separated for one-of`,style:{width:180},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`labelWhen`,`label`],label:`Alternate label`,style:{marginBottom:0},rules:[{required:!0,message:`Enter alternate label`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. Employer Rate`,style:{width:170}})})]})]}),t&&(0,o.jsx)(`p`,{className:`fg-source-hint`,style:{marginTop:4},children:`Only the displayed label changes. The field key and submitted payload stay unchanged.`})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`verifyAction`]);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Field Verification`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`verifyAction`],label:`Action`,style:{marginBottom:0},children:(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,placeholder:`None`,style:{width:130},options:[{label:`Email`,value:`email`}]})}),t&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:[r,`verifyResultField`],label:`Result field`,style:{marginBottom:0},rules:[{required:!0,message:`Result field is required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. isValid`,style:{width:130},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`verifyTimestampField`],label:`Timestamp field`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. validatedAt`,style:{width:150},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`verifyIdleLabel`],label:`Initial text`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Verify Email`,style:{width:130}})}),(0,o.jsx)(i.Form.Item,{name:[r,`verifyRetryLabel`],label:`Retry text`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Re Verify`,style:{width:120}})}),(0,o.jsx)(i.Form.Item,{name:[r,`verifySuccessLabel`],label:`Success text`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Valid`,style:{width:110}})})]})]}),t&&(0,o.jsx)(`p`,{className:`fg-source-hint`,style:{marginTop:4},children:`Changing the verified value resets the result and disables any configured validation gate.`})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`type`]),n=e([...b,`dataType`])??`auto`,s=e([...b,`payloadMode`])??`auto`,c=[`select`,`radio`,`checkbox`].includes(t),l=[`label`,`object`,`custom`].includes(s);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Payload Mapping`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`payloadKey`],label:`Payload Key`,style:{marginBottom:8},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`defaults to field key`,style:{width:180},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`prefillFrom`],label:`Prefill From`,tooltip:`Source path to inherit this field's value from when the record is created by prefilling another module (e.g. submission ← candidate). Dotted paths allowed, e.g. passport.passportNumber.`,style:{marginBottom:8},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`source key (cross-module prefill)`,style:{width:200},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`prefillFromModule`],label:`Prefill From Module`,tooltip:`Prefill this field from ANOTHER module's record linked in the URL instead of the default source — e.g. 'job' makes Quick Submit fill this field from the current job (with Prefill From naming the job's key, e.g. mspreqId). Leave blank for the normal prefill source.`,style:{marginBottom:8},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. job`,style:{width:160},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,noStyle:!0,children:({getFieldValue:e,setFieldValue:t})=>{let n=e([`fields`,r,`prefillWhen`])??[],s=e([`fields`,r,`lookupCollection`]),c=e([`fields`,r,`displayField`]),l=e([`fields`,r,`valueField`])||`_id`,u=(e,i)=>{let a=n.map((t,n)=>n===e?{...t,...i}:t);t([`fields`,r,`prefillWhen`],a)};return(0,o.jsxs)(`div`,{style:{width:`100%`,margin:`4px 0 8px`},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,flexWrap:`wrap`},children:[(0,o.jsx)(Vh,{type:`secondary`,style:{fontSize:12},children:`Conditional Default — when a field matches, set this field to a chosen record`}),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t([`fields`,r,`prefillWhen`],[...n,{field:``,value:``,setValue:``}]),children:`Add`})]}),n.length>0&&(0,o.jsx)(i.Form.Item,{name:[r,`prefillWhenReset`],valuePropName:`checked`,initialValue:!0,style:{marginBottom:0,marginTop:6},tooltip:`When the watched field changes to a value with NO matching row above (e.g. Contract Type switches away from W2), clear this field back out — but only if it still holds exactly the default a rule set (a value the admin/user picked themselves is never touched). Off keeps the old default in place.`,children:(0,o.jsx)(i.Checkbox,{children:`Reset this field when the condition no longer matches`})}),n.map((e,d)=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:6,alignItems:`center`,marginTop:6},children:[(0,o.jsx)(i.Input,{size:`small`,placeholder:`when field (e.g. contractType)`,className:`fg-mono-input`,style:{width:180},value:e.field,onChange:e=>u(d,{field:e.target.value})}),(0,o.jsx)(`span`,{style:{color:`#94a3b8`,fontSize:12},children:`=`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`value (e.g. W2-Fulltime)`,className:`fg-mono-input`,style:{width:150},value:e.value,onChange:e=>u(d,{value:e.target.value})}),(0,o.jsx)(`span`,{style:{color:`#94a3b8`,fontSize:12},children:`→`}),(0,o.jsx)(og,{collection:s,displayField:c,valueField:l,value:e.setValue,labelValue:e.setValueLabel,onChange:(e,t)=>u(d,{setValue:e,setValueLabel:t})}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>t([`fields`,r,`prefillWhen`],n.filter((e,t)=>t!==d))})]},d))]})}}),(0,o.jsx)(i.Form.Item,{name:[r,`dataType`],label:`Data Type`,style:{marginBottom:8},initialValue:`auto`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:170},options:Yh,getPopupContainer:()=>document.body})}),n===`array`&&(0,o.jsx)(i.Form.Item,{name:[r,`elementType`],label:`Array Element Type`,style:{marginBottom:8},children:(0,o.jsx)(i.Select,{size:`small`,style:{width:130},options:Xh,getPopupContainer:()=>document.body})}),(0,o.jsx)(i.Form.Item,{name:[r,`payloadMode`],label:`Payload Mode`,style:{marginBottom:8},initialValue:`auto`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:210},options:Zh,getPopupContainer:()=>document.body})}),(0,o.jsx)(i.Form.Item,{name:[r,`defaultValue`],label:`Default Value`,style:{marginBottom:8},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`optional`,style:{width:130}})}),(0,o.jsx)(i.Form.Item,{name:[r,`defaultOnEdit`],label:`Default on Edit`,valuePropName:`checked`,style:{marginBottom:8},tooltip:`When the stored value is empty, show Default Value in edit form. Keep off for fields that should remain blank on edit.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:[r,`emptyValues`],label:`Empty Values`,style:{marginBottom:8},tooltip:`Comma separated stored values that should render as blank in edit form. Example: 0, candidate`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. 0, candidate`,style:{width:170}})}),(0,o.jsx)(i.Form.Item,{name:[r,`valuePaths`],label:`Value Paths`,style:{marginBottom:8},tooltip:`Comma separated read paths for edit/detail prefill. Supports array filters like socialProfiles[type=linkedin].value.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`linkedIn, socialProfiles[type=linkedin].value`,style:{width:300},className:`fg-mono-input`})})]}),(l||c)&&(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsx)(i.Form.Item,{name:[r,`valueKey`],label:`Value Key (id)`,style:{marginBottom:8,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. id`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[r,`displayKey`],label:`Display Key (label)`,style:{marginBottom:8,flex:1},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. name`,className:`fg-mono-input`})}),c&&(0,o.jsx)(i.Form.Item,{name:[r,`richValue`],label:`Keep label`,valuePropName:`checked`,style:{marginBottom:8},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})})]}),s===`custom`&&(0,o.jsxs)(`div`,{style:{marginBottom:8},children:[(0,o.jsxs)(`span`,{className:`fg-static-options-hint`,children:[`Payload Template (JSON) — tokens: `,`{{value}} {{label}} {{raw.field}}`]}),(0,o.jsx)(i.Form.Item,{name:[r,`payloadTemplate`],style:{marginBottom:0},children:(0,o.jsx)(i.Input.TextArea,{rows:2,className:`fg-mono-input`,placeholder:`{ "countryId": "{{value}}", "countryName": "{{label}}" }`})})]}),(0,o.jsxs)(`details`,{style:{marginTop:4},children:[(0,o.jsx)(`summary`,{className:`fg-source-hint`,style:{cursor:`pointer`},children:`Advanced: transform rule / omit empty`}),(0,o.jsxs)(`div`,{style:{marginTop:6},children:[(0,o.jsxs)(`span`,{className:`fg-static-options-hint`,children:[`Transform Rule (JSON) — e.g. `,`{ "map": { "true": "high", "false": "medium" } }`]}),(0,o.jsx)(i.Form.Item,{name:[r,`transformRule`],style:{marginBottom:6},children:(0,o.jsx)(i.Input.TextArea,{rows:2,className:`fg-mono-input`,placeholder:`{ "map": { "true": "high" }, "default": "medium" }`})}),(0,o.jsx)(i.Form.Item,{name:[r,`omitEmpty`],label:`Omit when empty`,valuePropName:`checked`,style:{marginBottom:0},initialValue:!1,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Omit`,unCheckedChildren:`Send`})})]})]})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:t})=>{let n=t([...b,`type`]);if([`select`,`radio`,`checkbox`,`date`,`time`,`file`,`location`].includes(n))return null;let a=t([...b,`validator`,`type`]),s=a&&![`email`,`websiteUrl`,`jobDescription`].includes(a),c=a===`jobDescription`;return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Input Validator`}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,style:{flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{name:[r,`validator`,`type`],label:`Type`,style:{marginBottom:0},children:(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,placeholder:`None — no char restriction`,style:{width:260},options:e.h})}),s&&(0,o.jsx)(i.Form.Item,{name:[r,`validator`,`maxLength`],label:`Max Length`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:1,placeholder:`e.g. 55`,style:{width:90}})}),c&&(0,o.jsx)(i.Form.Item,{name:[r,`validator`,`maxChars`],label:`Max Chars`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,type:`number`,min:1,placeholder:`1500`,style:{width:90}})}),a&&(0,o.jsx)(i.Form.Item,{name:[r,`validator`,`title`],label:`Error Title`,style:{marginBottom:0},tooltip:`Used in error messages. Defaults to the field label when blank.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:t([...b,`label`])||`Field`,style:{width:180}})})]})]})}}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>{let t=e([...b,`type`]),n=t===`checkbox`,a=t===`select`&&e([...b,`dataSource`])===`lookup`;return!n&&!a?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Disable When Field Is Checked`}),(0,o.jsx)(i.Form.Item,{name:[r,`disabledByField`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`sibling field key (e.g. currentlyPursuing)`,className:`fg-mono-input`,style:{width:260}})}),(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`This field becomes disabled (and read-only) when the specified sibling checkbox is checked.`})]}):n?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Clear Field When Checked`}),(0,o.jsx)(i.Form.Item,{name:[r,`linkedClearField`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`sibling field key to clear (e.g. endDate)`,className:`fg-mono-input`,style:{width:260}})}),(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`When this checkbox is checked the specified sibling field is cleared and disabled.`})]}):a?(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Autofill Fields (JSON)`}),(0,o.jsx)(i.Form.Item,{name:[r,`autofillFrom`],style:{marginBottom:0},children:(0,o.jsx)(i.Input.TextArea,{rows:3,className:`fg-mono-input`,placeholder:`[{"optionKey":"vendorContact.email","targetField":"vendorEmail"}]`})}),(0,o.jsx)(`p`,{className:`fg-source-hint`,children:`When a value is selected, copy raw lookup object fields into sibling fields. Each entry: optionKey (dotted path into the raw record) + targetField (sibling key).`})]}):null}}),(0,o.jsxs)(`div`,{className:`fg-validations-section`,children:[(0,o.jsxs)(`div`,{className:`fg-validations-header`,children:[(0,o.jsx)(a.SafetyCertificateOutlined,{className:`fg-val-icon`}),(0,o.jsx)(`span`,{className:`fg-val-title`,children:`Validations`})]}),(0,o.jsx)(i.Form.List,{name:[r,`validations`],children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:6},children:({getFieldValue:e})=>{let s=e([...v,r,`validations`,t,`type`]),c=$h(s),l=e([...v,r,`type`]),u=s===`dateAfterField`||s===`dateBeforeField`,d=(e(v)??[]).map((e,t)=>({candidate:e,index:t})).filter(({candidate:e,index:t})=>t!==r&&e?.type===`date`&&e?.field).map(({candidate:e})=>({value:e.field,label:`${e.label||e.field} (${e.field})`})),f=Kh.filter(e=>l===`date`?e.dateOnly||e.value===`required`:!e.dateOnly).map(e=>({label:e.label,value:e.value}));return(0,o.jsxs)(`div`,{className:`fg-val-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`type`],style:{marginBottom:0},rules:[{required:!0,message:`Pick type`}],children:(0,o.jsx)(i.Select,{size:`small`,placeholder:l===`date`?`Date condition`:`Type`,style:{width:210},listHeight:400,getPopupContainer:()=>document.body,options:f})}),c.hasValue&&(0,o.jsx)(i.Form.Item,{name:[t,`value`],style:{marginBottom:0},children:u?(0,o.jsx)(i.Select,{size:`small`,showSearch:!0,allowClear:!0,placeholder:`Related date field`,style:{width:210},options:d,optionFilterProp:`label`,getPopupContainer:()=>document.body}):(0,o.jsx)(i.Input,{size:`small`,type:c.valueType===`number`?`number`:`text`,placeholder:c.placeholder,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:[t,`message`],style:{marginBottom:0,flex:1},rules:c.messageOptional?[]:[{required:!0,message:`Message required`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:c.messageOptional?`Optional — uses default`:`Error message shown to user`})}),(0,o.jsx)(a.MinusCircleOutlined,{className:`fg-remove-icon`,style:{marginTop:4},onClick:()=>n(t)})]})}},e)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({type:``,value:``,message:``}),className:`fg-add-val-btn`,children:`Add Validation`})]})})]}),(0,o.jsxs)(`div`,{className:`fg-validations-section`,children:[(0,o.jsxs)(`div`,{className:`fg-validations-header`,children:[(0,o.jsx)(a.ThunderboltOutlined,{className:`fg-val-icon`}),(0,o.jsx)(`span`,{className:`fg-val-title`,children:`AI Actions`})]}),(0,o.jsx)(i.Form.List,{name:[r,`aiActions`],children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-ai-action-card`,children:[(0,o.jsxs)(`div`,{className:`fg-val-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`key`],style:{marginBottom:0},rules:[{required:!0,message:`Key`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`key (e.g. generateJD)`,style:{width:150}})}),(0,o.jsx)(i.Form.Item,{name:[t,`label`],style:{marginBottom:0},rules:[{required:!0,message:`Label`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Button label`,style:{width:170}})}),(0,o.jsx)(i.Form.Item,{name:[t,`trigger`],style:{marginBottom:0},initialValue:`click`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:100},options:[{label:`Click`,value:`click`},{label:`Upload`,value:`upload`}]})}),(0,o.jsx)(i.Form.Item,{name:[t,`bodyType`],style:{marginBottom:0},initialValue:`json`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:110},options:[{label:`JSON`,value:`json`},{label:`Multipart`,value:`multipart`}]})}),(0,o.jsx)(i.Form.Item,{name:[t,`position`],style:{marginBottom:0},children:(0,o.jsx)(i.Select,{size:`small`,style:{width:150},placeholder:`Button position`,allowClear:!0,options:[{label:`Top Left`,value:`top-left`},{label:`Top Center`,value:`top-center`},{label:`Top Right`,value:`top-right`},{label:`Bottom Left`,value:`bottom-left`},{label:`Bottom Center`,value:`bottom-center`},{label:`Bottom Right`,value:`bottom-right`}]})}),(0,o.jsx)(a.MinusCircleOutlined,{className:`fg-remove-icon`,style:{marginTop:4},onClick:()=>n(t)})]}),(0,o.jsxs)(`div`,{className:`fg-val-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`serviceKey`],style:{marginBottom:0},rules:[{required:!0,message:`Service key`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`Service key (e.g. pyOps)`,style:{width:170}})}),(0,o.jsx)(i.Form.Item,{name:[t,`endpointPath`],style:{marginBottom:0,flex:1},rules:[{required:!0,message:`Endpoint path`}],children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`/v1/promtJD`,className:`fg-mono-input`})})]}),(0,o.jsxs)(`div`,{className:`fg-ai-subsection`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Inputs (form field → request param) — mark an input "Required", or give it a Min Words count, to make the button stay disabled until that field has a value (or enough words). Inputs sharing the same "group" gate as one unit: either one satisfies it (e.g. a JD file OR JD text).`}),(0,o.jsx)(i.Form.List,{name:[t,`inputs`],children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-val-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`param`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`param`,style:{width:100}})}),(0,o.jsx)(i.Form.Item,{name:[t,`sourceField`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`source field`,className:`fg-mono-input`,style:{width:150}})}),(0,o.jsx)(i.Form.Item,{name:[t,`kind`],style:{marginBottom:0},initialValue:`text`,children:(0,o.jsx)(i.Select,{size:`small`,style:{width:90},options:[{label:`Text`,value:`text`},{label:`File`,value:`file`}]})}),(0,o.jsx)(i.Form.Item,{name:[t,`transform`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`transform`,style:{width:120}})}),(0,o.jsx)(i.Form.Item,{name:[t,`group`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`group (either/or)`,style:{width:130}})}),(0,o.jsx)(i.Form.Item,{name:[t,`minWords`],style:{marginBottom:0},children:(0,o.jsx)(i.InputNumber,{size:`small`,min:0,placeholder:`min words`,style:{width:100}})}),(0,o.jsx)(i.Form.Item,{name:[t,`required`],valuePropName:`checked`,style:{marginBottom:0},children:(0,o.jsx)(i.Checkbox,{children:`Required`})}),(0,o.jsx)(a.MinusCircleOutlined,{className:`fg-remove-icon`,onClick:()=>n(t)})]},e)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({kind:`text`}),children:`Add Input`})]})})]}),(0,o.jsxs)(`div`,{className:`fg-ai-subsection`,children:[(0,o.jsx)(`span`,{className:`fg-options-label`,children:`Response Data Path (optional — where the record lives in the service's response envelope, e.g. "data"; the response is then resolved onto this module's fields the exact same way Edit prefill resolves getFormGroups — by field name, ValuePaths, and each addRow group's payloadKey)`}),(0,o.jsx)(i.Form.Item,{name:[t,`responseDataPath`],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. data`,className:`fg-mono-input`,style:{width:200}})})]})]},e)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({trigger:`click`,bodyType:`json`,inputs:[]}),className:`fg-add-val-btn`,children:`Add AI Action`})]})})]})]}),(0,o.jsx)(i.Tooltip,{title:`Remove field`,children:(0,o.jsx)(`button`,{type:`button`,className:`fg-field-remove-btn`,onClick:()=>s(r),"aria-label":`Remove field`,children:(0,o.jsx)(a.MinusCircleOutlined,{})})})]})]})},n)}),(0,o.jsx)(i.Button,{type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{r({type:`text`,show:!0,req:!1,edit:!0,dataSource:`static`,masterName:``,options:[]}),g?.(n.length,!0)},block:!0,className:`fg-add-field-btn`,children:`Add Field`})]})}function dg({open:t,editingGroup:n,defaultModule:s,moduleOptions:c,allGroupsByModule:l,onClose:u,onSaved:d,onSaveGroup:f}){let[p]=i.Form.useForm(),[m,h]=(0,r.useState)(!1),[g,_]=(0,r.useState)(s),[v,y]=(0,r.useState)({}),[b,x]=(0,r.useState)(!1),[S,C]=(0,r.useState)(()=>new Set),[w,T]=(0,r.useState)(null),[E,D]=(0,r.useState)(()=>new Set),[O,k]=(0,r.useState)(`settings`),[A,j]=(0,r.useState)(!1),M=(0,r.useRef)({}),N=(0,r.useRef)(null);(0,r.useEffect)(()=>{if(!t||!g)return;let n=!1;return e.Vt(g).then(e=>{n||C(new Set(Array.isArray(e)?e:[]))}).catch(()=>{n||C(new Set)}),()=>{n=!0}},[t,g]);async function P(t){if(!(!t||M.current[t])){M.current[t]=`loading`,x(!0);try{let n=await e.Ut(t);y(e=>({...e,[t]:n})),M.current[t]=`loaded`}catch{delete M.current[t]}finally{x(!1)}}}(0,r.useEffect)(()=>{if(!t)return;let e=n?.module??s;_(e),n?p.setFieldsValue({module:n.module,name:n.name,label:n.label,addRow:n.addRow??!1,hideGroup:n.hideGroup??!1,moduleName:n.moduleName??``,linkMode:n.parentRefField?`forward`:`reverse`,linkField:n.linkField??``,linkTypeField:n.linkTypeField??``,parentRefField:n.parentRefField??``,writeRefs:n.writeRefs??[],dependsOn:n.dependsOn??[],optionalWrite:n.optionalWrite??!1,appendHistory:n.appendHistory??!1,historyField:[n.historyField,...n.historyFields??[]].filter(Boolean).filter((e,t,n)=>n.indexOf(e)===t).join(`, `),historyTimestampField:n.historyTimestampField??``,minRows:n.minRows??``,maxRows:n.maxRows??``,initialRows:n.initialRows??``,requireOne:n.requireOne??!1,requireValidatedField:n.requireValidatedField??``,linkGroup:n.linkGroup??``,showIfField:n.showIf?.field??``,showIfOperator:n.showIf?.operator??`notEmpty`,showIfValue:n.showIf?.value??``,infoEnabled:n.infoEnabled??!1,infoText:n.infoText??``,toggleEnabled:n.toggleEnabled??!1,toggleLabel:n.toggleLabel??``,toggleField:n.toggleField??``,afterSubmitMode:n.afterSubmit?.mode??void 0,afterSubmitTarget:n.afterSubmit?.target??``,formActions:(n.formActions??[]).map(e=>({label:e.label??``,tone:e.tone===`primary`?`primary`:`default`,afterSubmitMode:e.afterSubmit?.mode??`stay`,afterSubmitTarget:e.afterSubmit?.target??``,enabledWhenField:e.enabledWhen?.field??``,enabledWhenOperator:e.enabledWhen?.operator??`notEmpty`,enabledWhenValue:e.enabledWhen?.value??``})),submitMsgAddSuccess:n.submitMessages?.addSuccess??``,submitMsgEditSuccess:n.submitMessages?.editSuccess??``,submitMsgAddError:n.submitMessages?.addError??``,submitMsgEditError:n.submitMessages?.editError??``,submitMsgSuppress:n.submitMessages?.suppress??!1,order:n.order??0,fields:[...n.fields??[]].sort((e,t)=>Number(e.order??0)-Number(t.order??0)).map(lg)}):(p.resetFields(),p.setFieldsValue({module:e,addRow:!1,hideGroup:!1,moduleName:``,linkMode:`reverse`,linkField:``,linkTypeField:``,parentRefField:``,appendHistory:!1,historyField:``,historyTimestampField:``,minRows:``,requireOne:!1,showIfField:``,showIfOperator:`notEmpty`,showIfValue:``,formActions:[],infoEnabled:!1,toggleEnabled:!1,afterSubmitMode:void 0,afterSubmitTarget:``,order:0,fields:[]})),P(e)},[t,n,s,p]);function F(e){_(e),P(e)}function I(){D(new Set),k(`settings`),j(!1),u()}function L(e){k(e),e===`fields`&&j(!0)}function R(e,t=!1){D(n=>{let r=new Set(n);return t?r.add(e):r.has(e)?r.delete(e):r.add(e),r})}function z(e){let t=l[e]??[],r=new Set;return t.forEach(e=>{n&&e.id===n.id||(e.fields??[]).forEach(e=>{e.field&&r.add(e.field)})}),r}function B(e,t){let n=(v[g]??[]).find(t=>t.value===e);if(!n)return;let r=p.getFieldValue([`fields`,t])??{};p.setFieldValue([`fields`,t],{...r,field:n.value,label:n.label,type:n.type??`text`})}function V(e){let t=z(e);return(v[e]??[]).map(e=>({value:e.value,disabled:t.has(e.value),label:(0,o.jsxs)(`span`,{style:{opacity:t.has(e.value)?.4:1},children:[e.label,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,children:e.value}),t.has(e.value)&&(0,o.jsx)(`span`,{className:`fg-field-taken-hint`,children:`(in another group)`})]}),searchLabel:`${e.label} ${e.value}`.toLowerCase()}))}async function H(){try{let t=await p.validateFields(),r={...p.getFieldsValue(!0),...t,fields:p.getFieldValue(`fields`)??[]};h(!0);let a={module:r.module,name:r.name,label:r.label,addRow:r.addRow??!1,order:Number(r.order??0),fields:ag(r.fields??[])};if(r.hideGroup&&(a.hideGroup=!0),r.moduleName){if(a.moduleName=r.moduleName,r.linkMode===`forward`){let e=String(r.parentRefField??``).trim();e&&(a.parentRefField=e)}else{let e=String(r.linkField??``).trim(),t=String(r.linkTypeField??``).trim();e&&(a.linkField=e),t&&(a.linkTypeField=t)}let e=(r.writeRefs??[]).filter(e=>e?.fromModule&&e?.targetField);e.length&&(a.writeRefs=e.map(e=>({fromModule:e.fromModule.trim(),targetField:e.targetField.trim()})));let t=(r.dependsOn??[]).map(e=>String(e).trim()).filter(Boolean);t.length&&(a.dependsOn=t),r.optionalWrite&&(a.optionalWrite=!0)}let o=String(r.historyField??``).split(`,`).map(e=>e.trim()).filter(Boolean).filter((e,t,n)=>n.indexOf(e)===t);if(r.appendHistory&&o.length&&(a.appendHistory=!0,a.historyField=o[0],o.length>1&&(a.historyFields=o.slice(1)),String(r.historyTimestampField??``).trim()&&(a.historyTimestampField=r.historyTimestampField.trim())),r.addRow&&r.minRows!==void 0&&r.minRows!==``&&(a.minRows=Number(r.minRows)),r.addRow&&r.initialRows!==void 0&&r.initialRows!==``&&(a.initialRows=Number(r.initialRows)),r.addRow&&r.maxRows!==void 0&&r.maxRows!==``&&(a.maxRows=Number(r.maxRows)),r.addRow&&String(r.requireValidatedField??``).trim()&&(a.requireValidatedField=r.requireValidatedField.trim()),r.addRow&&r.requireOne&&(a.requireOne=!0),r.addRow&&r.linkGroup&&(a.linkGroup=r.linkGroup.trim()),String(r.showIfField??``).trim()){let e=r.showIfOperator||`notEmpty`;a.showIf={field:r.showIfField.trim(),operator:e},[`eq`,`neq`,`in`,`notIn`].includes(e)&&String(r.showIfValue??``).trim()&&(a.showIf.value=r.showIfValue.trim())}r.infoEnabled&&r.infoText&&(a.infoEnabled=!0,a.infoText=r.infoText),r.toggleEnabled&&r.toggleField&&(a.toggleEnabled=!0,a.toggleLabel=r.toggleLabel||`Toggle`,a.toggleField=r.toggleField),r.afterSubmitMode&&(a.afterSubmit={mode:r.afterSubmitMode},(r.afterSubmitMode===`route`||r.afterSubmitMode===`detail`)&&(a.afterSubmit.target=(r.afterSubmitTarget||``).trim()));let s=(r.formActions??[]).filter(e=>String(e?.label??``).trim());s.length&&(a.formActions=s.map(e=>{let t={label:e.label.trim(),tone:e.tone===`primary`?`primary`:`default`},n=e.afterSubmitMode||`stay`;if(t.afterSubmit={mode:n},(n===`route`||n===`detail`)&&(t.afterSubmit.target=String(e.afterSubmitTarget??``).trim()),String(e.enabledWhenField??``).trim()){let n=e.enabledWhenOperator||`notEmpty`;t.enabledWhen={field:e.enabledWhenField.trim(),operator:n},[`eq`,`neq`,`in`,`notIn`].includes(n)&&String(e.enabledWhenValue??``).trim()&&(t.enabledWhen.value=e.enabledWhenValue.trim())}return t}));let c={};if((r.submitMsgAddSuccess||``).trim()&&(c.addSuccess=r.submitMsgAddSuccess.trim()),(r.submitMsgEditSuccess||``).trim()&&(c.editSuccess=r.submitMsgEditSuccess.trim()),(r.submitMsgAddError||``).trim()&&(c.addError=r.submitMsgAddError.trim()),(r.submitMsgEditError||``).trim()&&(c.editError=r.submitMsgEditError.trim()),r.submitMsgSuppress&&(c.suppress=!0),Object.keys(c).length&&(a.submitMessages=c),n)for(let[e,t]of Object.entries(n))t==null||t===``||e in a||cg.has(e)||(a[e]=t);f?(await f(a,n),i.message.success(n?`Group updated`:`Group created`)):n?(await e.cn(n.id,a),i.message.success(`Group updated`)):(await e.it(a),i.message.success(`Group created`)),D(new Set),k(`settings`),j(!1),d()}catch(e){if(e?.errorFields)return;i.message.error(e.message||`Could not save group`)}finally{h(!1)}}let U=(0,r.useMemo)(()=>V(g||s),[l,s,n,g,v]);return(0,o.jsx)(i.Modal,{open:t,onCancel:I,width:1080,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal fg-group-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[n?(0,o.jsx)(a.EditOutlined,{}):(0,o.jsx)(a.PlusOutlined,{}),n?` Edit Form Group`:` New Form Group`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:I,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:m,onClick:H,icon:n?(0,o.jsx)(a.EditOutlined,{}):(0,o.jsx)(a.PlusOutlined,{}),children:n?`Update Group`:`Create Group`})]}),children:(0,o.jsxs)(i.Form,{form:p,layout:`vertical`,className:`fg-form fg-editor-form fg-group-editor-form`,children:[(0,o.jsxs)(`div`,{className:`fg-group-editor-tabs`,role:`tablist`,"aria-label":`Form group editor sections`,children:[(0,o.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":O===`settings`,className:O===`settings`?`is-active`:``,onClick:()=>L(`settings`),children:[(0,o.jsx)(`span`,{className:`fg-editor-tab-number`,children:`1`}),(0,o.jsxs)(`span`,{children:[(0,o.jsx)(`strong`,{children:`Group settings`}),(0,o.jsx)(`small`,{children:`Name, behaviour and display options`})]})]}),(0,o.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":O===`fields`,className:O===`fields`?`is-active`:``,onClick:()=>L(`fields`),children:[(0,o.jsx)(`span`,{className:`fg-editor-tab-number`,children:`2`}),(0,o.jsxs)(`span`,{children:[(0,o.jsx)(`strong`,{children:`Fields`}),(0,o.jsxs)(`small`,{children:[n?.fields?.length??0,` configured fields`]})]})]})]}),(0,o.jsxs)(`div`,{className:`fg-group-editor-panel${O===`settings`?` is-active`:``}`,children:[(0,o.jsxs)(`div`,{className:`fg-form-section fg-group-settings-card`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Group Info`}),(0,o.jsx)(i.Form.Item,{name:`module`,label:`Module`,rules:[{required:!0,message:`Select a module`}],children:(0,o.jsx)(i.Select,{options:c,placeholder:`Select module`,onChange:F})}),(0,o.jsx)(i.Form.Item,{name:`label`,label:`Group Label`,rules:[{required:!0,message:`Label is required`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. Work Experience`})}),(0,o.jsx)(i.Form.Item,{name:`name`,label:`Group Name (key)`,rules:[{required:!0,message:`Name is required`},{pattern:/^[a-z0-9_]+$/,message:`Lowercase letters, numbers, underscores only`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. work_experience`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`moduleName`,label:`Target Collection (optional)`,tooltip:`Route THIS group's fields to a different collection instead of the default module record. Groups sharing the same target merge into one linked record. Leave blank for default behaviour.`,children:(0,o.jsx)(i.AutoComplete,{options:c.map(e=>({value:e.value,label:e.label})),placeholder:`Default (this module's own record)`,allowClear:!0,filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase()),className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},className:`fg-group-conditional`,children:({getFieldValue:e})=>e(`moduleName`)?(0,o.jsxs)(`div`,{className:`fg-options-block`,style:{marginBottom:12},children:[(0,o.jsxs)(`span`,{className:`fg-options-label`,children:[`Linkage`,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,style:{marginLeft:6},children:`how this collection links to the main record (ids stored as ObjectId)`})]}),(0,o.jsx)(i.Form.Item,{name:`linkMode`,style:{marginBottom:8},children:(0,o.jsxs)(i.Radio.Group,{optionType:`button`,buttonStyle:`solid`,size:`small`,children:[(0,o.jsx)(i.Radio.Button,{value:`reverse`,children:`Target stores this record’s id (child→parent)`}),(0,o.jsx)(i.Radio.Button,{value:`forward`,children:`This record stores the target’s id (lookup)`})]})}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},children:({getFieldValue:e})=>e(`linkMode`)===`forward`?(0,o.jsx)(i.Form.Item,{name:`parentRefField`,label:`Reference field on THIS record`,tooltip:`A field on the main record that holds the target document's _id (as ObjectId), e.g. employerRef. On edit it selects which target document to load and update.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. employerRef`,className:`fg-mono-input`,style:{width:260}})}):(0,o.jsxs)(`div`,{className:`fg-inline-row`,style:{alignItems:`flex-end`},children:[(0,o.jsx)(i.Form.Item,{name:`linkField`,label:`Link field on target (optional)`,tooltip:`Field on the TARGET document that stores this record's _id (as ObjectId), e.g. jobRef. Leave blank to use the default parentId / parentModule linkage.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. jobRef`,className:`fg-mono-input`,style:{width:220}})}),(0,o.jsx)(i.Form.Item,{name:`linkTypeField`,label:`Parent-type field (optional)`,tooltip:`Field on the target document recording WHICH module the parent is (e.g. parentType), so one collection can serve several parent modules.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. parentType`,className:`fg-mono-input`,style:{width:220}})})]})})]}):null}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},className:`fg-group-conditional`,children:({getFieldValue:e})=>e(`moduleName`)?(0,o.jsxs)(`div`,{className:`fg-options-block`,style:{marginBottom:12},children:[(0,o.jsxs)(`span`,{className:`fg-options-label`,children:[`Linked-write dependencies`,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,style:{marginLeft:6},children:`inject ids created by other writes of this same form submit`})]}),(0,o.jsx)(i.Form.List,{name:`writeRefs`,children:(e,{add:t,remove:n})=>(0,o.jsxs)(`div`,{children:[e.map(({key:e,name:t,...r})=>(0,o.jsxs)(`div`,{className:`fg-inline-row`,style:{alignItems:`flex-end`,marginBottom:6},children:[(0,o.jsx)(i.Form.Item,{...r,name:[t,`fromModule`],label:`Id from (module)`,rules:[{required:!0,message:`Module`}],style:{marginBottom:0},children:(0,o.jsx)(i.AutoComplete,{options:c.map(e=>({value:e.value})),placeholder:`e.g. users (or this module)`,style:{width:220},className:`fg-mono-input`,filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase())})}),(0,o.jsx)(i.Form.Item,{...r,name:[t,`targetField`],label:`Store into field`,rules:[{required:!0,message:`Field`}],style:{marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. userId or links.userId`,style:{width:220},className:`fg-mono-input`})}),(0,o.jsx)(i.Tooltip,{title:`Remove dependency`,children:(0,o.jsx)(`button`,{type:`button`,className:`fg-field-remove-btn`,onClick:()=>n(t),"aria-label":`Remove dependency`,children:(0,o.jsx)(a.MinusCircleOutlined,{})})})]},e)),(0,o.jsx)(i.Button,{type:`dashed`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({fromModule:``,targetField:``}),children:`Add Dependency`})]})}),(0,o.jsxs)(`div`,{className:`fg-inline-row`,style:{marginTop:10},children:[(0,o.jsx)(i.Form.Item,{name:`dependsOn`,label:`Runs after (ordering only)`,tooltip:`Other Target Collections this write must wait for, without injecting an id.`,style:{marginBottom:0,flex:1},children:(0,o.jsx)(i.Select,{mode:`tags`,placeholder:`e.g. users`,options:c.map(e=>({value:e.value,label:e.value}))})}),(0,o.jsx)(i.Form.Item,{name:`optionalWrite`,label:`Optional write`,valuePropName:`checked`,tooltip:`On: a failure of this write is logged but the submit still succeeds (best-effort). Off (default): a failure rolls back EVERY write of this submit.`,style:{marginBottom:0},children:(0,o.jsx)(i.Switch,{checkedChildren:`Best-effort`,unCheckedChildren:`Required`})})]})]}):null}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:12},className:`fg-group-conditional`,children:({getFieldValue:e})=>{let t=e(`appendHistory`);return(0,o.jsxs)(`div`,{className:`fg-options-block`,children:[(0,o.jsxs)(`span`,{className:`fg-options-label`,children:[`Append as history`,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,style:{marginLeft:6},children:`keep every past save instead of overwriting (e.g. rate negotiation history)`})]}),(0,o.jsxs)(`div`,{className:`fg-options-controls`,children:[(0,o.jsx)(i.Form.Item,{name:`appendHistory`,valuePropName:`checked`,style:{marginBottom:0},children:(0,o.jsx)(i.Switch,{checkedChildren:`Append`,unCheckedChildren:`Off`})}),t&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:`historyField`,label:`Array field`,rules:[{required:!0,message:`Required`}],tooltip:`The record key(s) holding the append-only array(s) — usually the prefix(es) this group's own fields already write through. Comma-separate to keep an independent history per prefix, e.g. candidateBudget, proposedRate, referralRate.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. proposedRate, candidateBudget`,style:{width:240},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`historyTimestampField`,label:`Timestamp key`,tooltip:`Key stamped onto each saved entry. Blank defaults to 'timestamp'.`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`timestamp`,style:{width:140},className:`fg-mono-input`})})]})]}),t&&(0,o.jsx)(`p`,{className:`fg-source-hint`,style:{marginTop:6},children:`Every save adds a new entry to the end of the array — the detail view and edit form always show the latest one, exactly like a normal field.`})]})}}),(0,o.jsxs)(`div`,{className:`fg-inline-row`,children:[(0,o.jsx)(i.Form.Item,{name:`order`,label:`Display Order`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:100}})}),(0,o.jsx)(i.Form.Item,{name:`addRow`,label:`Allow Add Row`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:`hideGroup`,label:`Hide Group`,valuePropName:`checked`,tooltip:`Hide this group entirely from Add/Edit forms — not rendered, not validated, not submitted.`,children:(0,o.jsx)(i.Switch,{checkedChildren:`Hidden`,unCheckedChildren:`Visible`})}),(0,o.jsx)(i.Form.Item,{label:`Show group when`,tooltip:`Gate the whole group on another field's live value — the group only appears once the condition matches (e.g. the Employer group opens after Contract Type is chosen). Leave the field blank to always show.`,children:(0,o.jsxs)(i.Space.Compact,{block:!0,children:[(0,o.jsx)(i.Form.Item,{name:`showIfField`,noStyle:!0,children:(0,o.jsx)(i.Input,{placeholder:`Field key e.g. contractType`,style:{width:`45%`}})}),(0,o.jsx)(i.Form.Item,{name:`showIfOperator`,noStyle:!0,children:(0,o.jsx)(i.Select,{style:{width:`30%`},options:[{value:`notEmpty`,label:`is set`},{value:`isEmpty`,label:`is empty`},{value:`eq`,label:`equals`},{value:`neq`,label:`not equals`},{value:`in`,label:`in list`},{value:`notIn`,label:`not in list`}]})}),(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:(e,t)=>e.showIfOperator!==t.showIfOperator,children:({getFieldValue:e})=>[`eq`,`neq`,`in`,`notIn`].includes(e(`showIfOperator`))?(0,o.jsx)(i.Form.Item,{name:`showIfValue`,noStyle:!0,children:(0,o.jsx)(i.Input,{placeholder:`Value(s), comma for list`,style:{width:`25%`}})}):null})]})}),(0,o.jsx)(i.Form.Item,{name:`minRows`,label:`Min Rows`,tooltip:`Minimum rows users must keep. Delete is disabled at this count.`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:`maxRows`,label:`Max Rows`,tooltip:`Maximum rows users can add. The Add button hides once this count is reached. Blank/0 = unlimited.`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:`initialRows`,label:`Initial Rows`,tooltip:`How many empty rows to show on load (0 = show only the + button).`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:90}})}),(0,o.jsx)(i.Form.Item,{name:`requireOne`,label:`Row Required`,valuePropName:`checked`,tooltip:`When users add a row, at least one field in that row must be filled.`,children:(0,o.jsx)(i.Switch,{checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:`requireValidatedField`,label:`Require Validated Field`,tooltip:`A boolean field key on every row (e.g. isValid, set by a field's Verify action). The form's Submit button stays disabled until every row has it set to true. Blank = no gate.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. isValid`,style:{width:130},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`linkGroup`,label:`Link Group`,tooltip:`Groups sharing the same value here stay row-synced — adding or removing a row in one adds/removes the matching row in every linked group, while each keeps its own card and its own submitted data. Leave blank for an independent group. Only applies when Allow Add Row is on.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. workHistory`,style:{width:160},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`infoEnabled`,label:`Group Info`,valuePropName:`checked`,initialValue:!1,children:(0,o.jsx)(i.Switch,{checkedChildren:`Info`,unCheckedChildren:`Info`})}),(0,o.jsx)(i.Form.Item,{name:`toggleEnabled`,label:`Group Switch`,valuePropName:`checked`,initialValue:!1,children:(0,o.jsx)(i.Switch,{checkedChildren:`On`,unCheckedChildren:`Off`})})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},className:`fg-group-conditional`,children:({getFieldValue:e})=>e(`infoEnabled`)?(0,o.jsx)(i.Form.Item,{name:`infoText`,label:`Group Info Message`,rules:[{required:!0,message:`Enter group info message`}],children:(0,o.jsx)(i.Input.TextArea,{rows:2,placeholder:`Message shown when users hover the group info icon`})}):null}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},className:`fg-group-conditional`,children:({getFieldValue:e})=>e(`toggleEnabled`)?(0,o.jsxs)(`div`,{className:`fg-inline-row`,children:[(0,o.jsx)(i.Form.Item,{name:`toggleLabel`,label:`Switch Label`,rules:[{required:!0,message:`Enter switch label`}],style:{flex:1},children:(0,o.jsx)(i.Input,{placeholder:`e.g. Fresher`})}),(0,o.jsx)(i.Form.Item,{name:`toggleField`,label:`Payload Field`,rules:[{required:!0,message:`Enter payload field`},{pattern:/^[A-Za-z_][\w.]*$/,message:`Use a valid key, dot path allowed`}],style:{flex:1},children:(0,o.jsx)(i.Input,{placeholder:`e.g. isFresher`,className:`fg-mono-input`})})]}):null}),(0,o.jsx)(`div`,{className:`fg-inline-row`,children:(0,o.jsx)(i.Form.Item,{name:`afterSubmitMode`,label:`After Submit`,tooltip:`What happens once this module's Add/Edit form submits successfully. Leave blank to keep the current default navigation.`,children:(0,o.jsx)(i.Select,{allowClear:!0,placeholder:`Default (current behavior)`,style:{width:220},options:[{value:`stay`,label:`Stay on Current Page`},{value:`back`,label:`Go Back`},{value:`route`,label:`Navigate to a Route`},{value:`detail`,label:`Navigate to Record Detail`}]})})}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:0},className:`fg-group-conditional`,children:({getFieldValue:e})=>{let t=e(`afterSubmitMode`);return t!==`route`&&t!==`detail`?null:(0,o.jsx)(i.Form.Item,{name:`afterSubmitTarget`,label:`Navigation Target`,tooltip:`An in-app path. Use :id for the created/updated record's id, or :fieldName for any submitted field value.`,rules:[{required:!0,message:`Enter a navigation target`},{pattern:/^\//,message:`Must be an in-app path starting with /`}],children:(0,o.jsx)(i.Input,{placeholder:`/trainers/:id`,className:`fg-mono-input`})})}}),(0,o.jsx)(i.Form.Item,{label:`Additional submit buttons`,tooltip:`Extra buttons beside Create — each creates the record then navigates per its own After-Submit, optionally enabled only once a field is filled.`,children:(0,o.jsx)(i.Form.List,{name:`formActions`,children:(e,{add:t,remove:n})=>(0,o.jsxs)(`div`,{className:`fg-form-actions-list`,children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-form-action-row`,style:{border:`1px solid #eee`,borderRadius:8,padding:10,marginBottom:8},children:[(0,o.jsxs)(i.Space,{wrap:!0,align:`start`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`label`],label:`Button Label`,rules:[{required:!0,message:`Label`}],style:{marginBottom:8},children:(0,o.jsx)(i.Input,{placeholder:`e.g. Create and Source Candidate`,style:{width:240}})}),(0,o.jsx)(i.Form.Item,{name:[t,`tone`],label:`Type`,style:{marginBottom:8},children:(0,o.jsx)(i.Select,{style:{width:130},options:[{value:`primary`,label:`Primary`},{value:`default`,label:`Secondary`}]})}),(0,o.jsx)(i.Form.Item,{name:[t,`afterSubmitMode`],label:`After Submit`,style:{marginBottom:8},children:(0,o.jsx)(i.Select,{style:{width:180},options:[{value:`stay`,label:`Stay on page`},{value:`back`,label:`Go back`},{value:`route`,label:`Navigate to a route`},{value:`detail`,label:`Record detail`}]})}),(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>[`route`,`detail`].includes(e([`formActions`,t,`afterSubmitMode`]))?(0,o.jsx)(i.Form.Item,{name:[t,`afterSubmitTarget`],label:`Target`,style:{marginBottom:8},rules:[{pattern:/^\//,message:`Must start with /`}],children:(0,o.jsx)(i.Input,{placeholder:`/jobs/:id/source`,className:`fg-mono-input`,style:{width:200}})}):null}),(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>n(t),style:{marginTop:28}})]}),(0,o.jsxs)(i.Space,{wrap:!0,align:`start`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`enabledWhenField`],label:`Enable when field`,style:{marginBottom:0},tooltip:`Keep the button disabled until this record field satisfies the condition (e.g. Assign To is set). Blank = always enabled.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. assignedTo`,style:{width:200}})}),(0,o.jsx)(i.Form.Item,{name:[t,`enabledWhenOperator`],label:`Condition`,style:{marginBottom:0},children:(0,o.jsx)(i.Select,{style:{width:130},options:[{value:`notEmpty`,label:`is set`},{value:`isEmpty`,label:`is empty`},{value:`eq`,label:`equals`},{value:`neq`,label:`not equals`},{value:`in`,label:`in list`},{value:`notIn`,label:`not in list`}]})}),(0,o.jsx)(i.Form.Item,{noStyle:!0,shouldUpdate:!0,children:({getFieldValue:e})=>[`eq`,`neq`,`in`,`notIn`].includes(e([`formActions`,t,`enabledWhenOperator`]))?(0,o.jsx)(i.Form.Item,{name:[t,`enabledWhenValue`],label:`Value`,style:{marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`Value(s)`,style:{width:160}})}):null})]})]},e)),(0,o.jsx)(i.Button,{type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>t({tone:`primary`,afterSubmitMode:`stay`,enabledWhenOperator:`notEmpty`}),children:`Add submit button`})]})})}),(0,o.jsxs)(`div`,{className:`fg-inline-row`,children:[(0,o.jsx)(i.Form.Item,{name:`submitMsgAddSuccess`,label:`Add Success Message`,tooltip:'Toast shown after a successful Add. ${module} is replaced with the module name. Blank = default "<Module> has added successfully".',children:(0,o.jsx)(i.Input,{placeholder:"${module} has added successfully",style:{width:280}})}),(0,o.jsx)(i.Form.Item,{name:`submitMsgEditSuccess`,label:`Edit Success Message`,tooltip:'Toast shown after a successful Edit. ${module} is replaced with the module name. Blank = default "<Module> has Updated successfully".',children:(0,o.jsx)(i.Input,{placeholder:"${module} has Updated successfully",style:{width:280}})})]}),(0,o.jsxs)(`div`,{className:`fg-inline-row`,children:[(0,o.jsx)(i.Form.Item,{name:`submitMsgAddError`,label:`Add Error Message`,tooltip:`Toast shown when Add fails. Blank = show the server's error.`,children:(0,o.jsx)(i.Input,{placeholder:`Server error (default)`,style:{width:280}})}),(0,o.jsx)(i.Form.Item,{name:`submitMsgEditError`,label:`Edit Error Message`,tooltip:`Toast shown when Edit fails. Blank = show the server's error.`,children:(0,o.jsx)(i.Input,{placeholder:`Server error (default)`,style:{width:280}})}),(0,o.jsx)(i.Form.Item,{name:`submitMsgSuppress`,label:`Hide Success Toast`,valuePropName:`checked`,tooltip:`Prevent the success message for this module's Add/Edit (errors always show).`,children:(0,o.jsx)(i.Switch,{checkedChildren:`Hidden`,unCheckedChildren:`Shown`})})]})]}),(0,o.jsxs)(`div`,{className:`fg-editor-next-row`,children:[(0,o.jsx)(Vh,{type:`secondary`,children:`Next, review the fields included in this group.`}),(0,o.jsx)(i.Button,{type:`primary`,onClick:()=>L(`fields`),children:`Continue to Fields`})]})]}),A&&(0,o.jsxs)(`div`,{className:`fg-group-editor-panel${O===`fields`?` is-active`:``}`,children:[(0,o.jsxs)(`div`,{className:`fg-fields-header`,children:[(0,o.jsx)(`span`,{className:`fg-fields-title`,children:`Fields`}),(0,o.jsx)(`span`,{className:`fg-fields-hint`,children:`Open only the field you want to change`}),b&&(0,o.jsx)(i.Spin,{size:`small`}),!b&&U.length>0&&(0,o.jsxs)(`span`,{className:`fg-fields-hint`,children:[U.length,` fields available`]})]}),(0,o.jsx)(i.Form.List,{name:`fields`,children:(e,{add:t,remove:n,move:r})=>ug({form:p,fieldItems:e,add:t,remove:n,move:r,absBase:[],moduleFieldOptions:U,fieldsLoading:b,dragIndexRef:N,dragOverIndex:w,setDragOverIndex:T,onFieldKeySelect:(e,t)=>B(e,t),expandedFieldKeys:E,onToggleField:R,defaultFieldSet:S})})]})]})})}function fg({groups:e,onEdit:t,onDelete:n,onCopy:s,onPaste:c,canPaste:l,onReorder:u}){let d=(0,r.useRef)(null),f=[...e].sort((e,t)=>(e.order??0)-(t.order??0)),p=typeof u==`function`&&f.length>1,m=(e,t)=>{let n=[...f],[r]=n.splice(e,1);n.splice(t,0,r),u(n)},h=(0,r.useMemo)(()=>{function e({"data-row-index":e,...t}){return e===void 0?(0,o.jsx)(`tr`,{...t}):(0,o.jsx)(`tr`,{...t,draggable:!0,onDragStart:()=>{d.current=e},onDragOver:e=>{e.preventDefault()},onDrop:t=>{t.preventDefault();let n=d.current;d.current=null,n!==null&&n!==e&&m(n,e)},style:{...t.style||{},cursor:`grab`}})}return e},[f,u]);return(0,o.jsx)(i.Table,{rowKey:e=>e.id??e.name,dataSource:f,columns:[...p?[{title:``,key:`drag`,width:34,align:`center`,render:()=>(0,o.jsx)(a.HolderOutlined,{className:`fg-drag-handle`,style:{cursor:`grab`,color:`var(--color-text-secondary)`}})}]:[],{title:`Label`,dataIndex:`label`,key:`label`,render:(e,t)=>(0,o.jsxs)(i.Space,{size:6,children:[(0,o.jsx)(Vh,{strong:!0,style:{color:`var(--color-text-heading)`},children:e}),t.hideGroup&&(0,o.jsx)(i.Tag,{color:`default`,children:`Hidden`}),t.moduleName&&(0,o.jsxs)(i.Tag,{color:`purple`,children:[`→ `,t.moduleName]})]})},{title:`Key`,dataIndex:`name`,key:`name`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Add Row`,dataIndex:`addRow`,key:`addRow`,align:`center`,width:90,render:e=>e?(0,o.jsx)(i.Tag,{color:`blue`,style:{margin:0},children:`Yes`}):(0,o.jsx)(i.Tag,{color:`default`,style:{margin:0},children:`No`})},{title:`Order`,dataIndex:`order`,key:`order`,align:`center`,width:72,render:e=>(0,o.jsx)(`span`,{className:`fg-order-cell`,children:e??0})},{title:`Fields`,dataIndex:`fields`,key:`fields`,align:`center`,width:76,render:e=>(0,o.jsx)(i.Badge,{count:e?.length??0,showZero:!0,color:`var(--color-brand)`})},{title:``,key:`actions`,align:`right`,width:132,render:(e,r)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Copy settings`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.CopyOutlined,{}),onClick:()=>s(r),className:`fg-action-btn`})}),(0,o.jsx)(i.Tooltip,{title:`Paste copied settings into this group`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.SnippetsOutlined,{}),disabled:!l,onClick:()=>c(r),className:`fg-action-btn`})}),(0,o.jsx)(i.Tooltip,{title:`Edit group`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>t(r),className:`fg-action-btn`})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this group?`,description:`All field mappings inside will be removed.`,onConfirm:()=>n(r.id),okText:`Delete`,okButtonProps:{danger:!0},children:(0,o.jsx)(i.Tooltip,{title:`Delete group`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),className:`fg-action-btn`})})})]})}],pagination:!1,className:`fg-table`,components:p?{body:{row:h}}:void 0,onRow:p?(e,t)=>({"data-row-index":t,dragCtx:{from:d,onMove:m}}):void 0,locale:{emptyText:(0,o.jsx)(i.Empty,{description:`No groups configured for this module yet.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE,style:{padding:`24px 0`}})},expandable:{expandedRowRender:e=>(e.fields??[]).length===0?(0,o.jsx)(Vh,{type:`secondary`,style:{fontSize:12},children:`No fields in this group.`}):(0,o.jsx)(`div`,{className:`fg-expanded-fields`,children:(e.fields??[]).map(e=>{let t={master:`geekblue`,module:`cyan`,lookup:`volcano`,static:`default`},n={master:`master: ${e.masterName||`?`}`,module:`module`,lookup:`lookup: ${e.lookupCollection||`?`} → ${e.displayField||`?`}`,static:`static (${(e.options??[]).length})`};return(0,o.jsxs)(`div`,{className:`fg-field-row`,children:[(0,o.jsxs)(`div`,{className:`fg-field-row-info`,children:[(0,o.jsx)(`span`,{className:`fg-field-row-label`,children:e.label}),(0,o.jsx)(`span`,{className:`fg-field-row-key`,children:e.field}),(0,o.jsxs)(`span`,{className:`fg-field-row-type`,children:[`(`,e.type,`)`]}),[`select`,`radio`,`checkbox`].includes(e.type)&&e.dataSource&&(0,o.jsx)(i.Tag,{color:t[e.dataSource]??`default`,style:{fontSize:10,marginLeft:6},children:n[e.dataSource]??e.dataSource})]}),(0,o.jsxs)(`div`,{className:`fg-field-row-flags`,children:[e.show===1&&(0,o.jsx)(i.Tag,{color:`blue`,style:{marginRight:4},children:`Show`}),e.showOnAdd===!1&&(0,o.jsx)(i.Tag,{color:`orange`,style:{marginRight:4},children:`Edit only`}),e.req===1&&(0,o.jsx)(i.Tag,{color:`red`,style:{marginRight:4},children:`Required`}),e.edit===1&&(0,o.jsx)(i.Tag,{color:`green`,style:{marginRight:4},children:`Editable`}),e.formatter&&(0,o.jsxs)(i.Tag,{color:`purple`,style:{marginRight:4},children:[`fmt: `,e.formatter]})]}),(e.validations??[]).length>0&&(0,o.jsxs)(`div`,{className:`fg-field-row-validations`,children:[(0,o.jsx)(a.CheckCircleOutlined,{style:{color:`var(--color-brand)`,fontSize:11,marginRight:4}}),(e.validations??[]).map((e,t)=>(0,o.jsx)(i.Tooltip,{title:`${e.value!==void 0&&e.value!==``?`Value: ${e.value} — `:``}${e.message}`,children:(0,o.jsxs)(i.Tag,{color:Qh[e.type]??`default`,style:{cursor:`default`,fontFamily:`monospace`,fontSize:10},children:[e.type,e.value!==void 0&&e.value!==``?`(${e.value})`:``]})},t))]})]},e.field)})}),rowExpandable:()=>!0}})}function pg({open:t,editingForm:n,moduleOptions:s,onClose:c,onSaved:l}){let[u]=i.Form.useForm(),[d,f]=(0,r.useState)(!1),[p,m]=(0,r.useState)(``),[h,g]=(0,r.useState)({}),[_,v]=(0,r.useState)(!1),[y,b]=(0,r.useState)(null),x=(0,r.useRef)({}),S=(0,r.useRef)(null);async function C(t){if(!(!t||x.current[t])){v(!0);try{let n=await e.Ut(t);g(e=>({...e,[t]:n})),x.current[t]=!0}catch{}finally{v(!1)}}}(0,r.useEffect)(()=>{if(!t){x.current={},g({});return}if(n){let e=n.module;m(e),u.setFieldsValue({module:e,formType:n.formType||`popup`,action:n.action,label:n.label,groups:(n.groups??[]).map(e=>({...e,hideGroup:e.hideGroup??!1,moduleName:e.moduleName??``,infoEnabled:e.infoEnabled??!1,infoText:e.infoText??``,minRows:e.minRows??``,initialRows:e.initialRows??``,requireOne:e.requireOne??!1,linkGroup:e.linkGroup??``,toggleEnabled:e.toggleEnabled??!1,toggleLabel:e.toggleLabel??``,toggleField:e.toggleField??``,fields:(e.fields??[]).map(lg)}))}),C(e)}else u.resetFields(),u.setFieldsValue({groups:[],formType:`popup`}),m(``)},[t,n,u]);function w(e){m(e),C(e)}function T(){return(h[p]??[]).map(e=>({value:e.value,label:(0,o.jsxs)(`span`,{children:[e.label,(0,o.jsx)(`span`,{className:`fg-field-key-hint`,children:e.value})]}),searchLabel:`${e.label} ${e.value}`.toLowerCase()}))}async function E(){try{let t=await u.validateFields();f(!0);let r={module:t.module,formType:t.formType,action:t.action.trim(),label:t.label,groups:(t.groups??[]).map(e=>({label:e.label,name:e.name,addRow:e.addRow??!1,...e.hideGroup?{hideGroup:!0}:{},...e.moduleName?{moduleName:e.moduleName}:{},...e.moduleName&&(e.writeRefs??[]).length?{writeRefs:e.writeRefs}:{},...e.moduleName&&(e.dependsOn??[]).length?{dependsOn:e.dependsOn}:{},...e.moduleName&&e.optionalWrite?{optionalWrite:!0}:{},...e.moduleName&&e.linkField?{linkField:e.linkField}:{},...e.moduleName&&e.linkTypeField?{linkTypeField:e.linkTypeField}:{},...e.moduleName&&e.parentRefField?{parentRefField:e.parentRefField}:{},...e.appendHistory&&e.historyField?{appendHistory:!0,historyField:e.historyField,...e.historyTimestampField?{historyTimestampField:e.historyTimestampField}:{}}:{},...e.addRow&&e.minRows!==void 0&&e.minRows!==``?{minRows:Number(e.minRows)}:{},...e.addRow&&e.initialRows!==void 0&&e.initialRows!==``?{initialRows:Number(e.initialRows)}:{},...e.addRow&&e.requireOne?{requireOne:!0}:{},...e.addRow&&e.linkGroup?{linkGroup:e.linkGroup.trim()}:{},order:Number(e.order??0),fields:ag(e.fields??[]),...e.infoEnabled&&e.infoText?{infoEnabled:!0,infoText:e.infoText}:{}}))};n?(await e.ln(n.id,{...n,...r}),i.message.success(`Custom form updated`)):(await e.at(r),i.message.success(`Custom form created`)),l()}catch(e){if(e?.errorFields)return;i.message.error(e.message||`Could not save custom form`)}finally{f(!1)}}let D=T();return(0,o.jsx)(i.Modal,{open:t,onCancel:c,width:1120,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[n?(0,o.jsx)(a.EditOutlined,{}):(0,o.jsx)(a.PlusOutlined,{}),n?` Edit Custom Form`:` New Custom Form`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:c,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:d,onClick:E,icon:n?(0,o.jsx)(a.EditOutlined,{}):(0,o.jsx)(a.PlusOutlined,{}),children:n?`Update`:`Create`})]}),children:(0,o.jsxs)(i.Form,{form:u,layout:`vertical`,className:`fg-form fg-editor-form`,children:[(0,o.jsxs)(`div`,{className:`fg-form-section fg-editor-sticky-section`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Form Identity`}),(0,o.jsx)(i.Form.Item,{name:`module`,label:`Module`,rules:[{required:!0,message:`Select a module`}],children:(0,o.jsx)(i.Select,{options:s,placeholder:`Select module`,onChange:w})}),(0,o.jsx)(i.Form.Item,{name:`formType`,label:`Form Type`,rules:[{required:!0,message:`Form Type is required`}],initialValue:`popup`,children:(0,o.jsx)(i.Select,{placeholder:`Select form type`,options:[{label:`Search`,value:`search`},{label:`Popup`,value:`popup`}]})}),(0,o.jsx)(i.Form.Item,{name:`action`,label:`Action Key`,extra:`Unique identifier used as ?action= in the URL (e.g. quickAdd, popup)`,rules:[{required:!0,message:`Action is required`},{pattern:/^[a-zA-Z0-9_-]+$/,message:`Letters, numbers, hyphens, underscores only`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. quickAdd`,className:`fg-mono-input`,disabled:!!n})}),(0,o.jsx)(i.Form.Item,{name:`label`,label:`Display Label`,rules:[{required:!0,message:`Label is required`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. Quick Add Job`})})]}),(0,o.jsxs)(`div`,{className:`fg-fields-header`,children:[(0,o.jsx)(`span`,{className:`fg-fields-title`,children:`Groups`}),(0,o.jsx)(`span`,{className:`fg-fields-hint`,children:`Each group holds a set of form fields`}),_&&(0,o.jsx)(i.Spin,{size:`small`})]}),(0,o.jsx)(i.Form.List,{name:`groups`,children:(e,{add:t,remove:n})=>(0,o.jsxs)(o.Fragment,{children:[e.map(({key:e,name:t})=>(0,o.jsxs)(`div`,{className:`fg-form-section`,style:{marginBottom:16},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,marginBottom:10},children:[(0,o.jsxs)(`span`,{className:`fg-form-section-label`,style:{marginBottom:0},children:[`Group `,t+1]}),(0,o.jsx)(i.Tooltip,{title:`Remove group`,children:(0,o.jsx)(`button`,{type:`button`,className:`fg-field-remove-btn`,onClick:()=>n(t),"aria-label":`Remove group`,children:(0,o.jsx)(a.MinusCircleOutlined,{})})})]}),(0,o.jsxs)(`div`,{className:`fg-inline-row`,style:{flexWrap:`wrap`,marginBottom:8},children:[(0,o.jsx)(i.Form.Item,{name:[t,`label`],label:`Group Label`,rules:[{required:!0,message:`Required`}],style:{flex:2,marginBottom:8},children:(0,o.jsx)(i.Input,{placeholder:`e.g. Basic Info`})}),(0,o.jsx)(i.Form.Item,{name:[t,`name`],label:`Group Key`,rules:[{required:!0,message:`Required`},{pattern:/^[a-z0-9_]+$/,message:`Lowercase, numbers, underscores`}],style:{flex:2,marginBottom:8},children:(0,o.jsx)(i.Input,{placeholder:`e.g. basicInfo`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[t,`addRow`],label:`Add Row`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:8},children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:[t,`hideGroup`],label:`Hide Group`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:8},tooltip:`Hide this group entirely from Add/Edit forms — not rendered, not validated, not submitted.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Hidden`,unCheckedChildren:`Visible`})}),(0,o.jsx)(i.Form.Item,{name:[t,`moduleName`],label:`Target Collection`,style:{marginBottom:8,flex:2},tooltip:`Route THIS group's fields to a different collection instead of the default module record. Leave blank for default behaviour.`,children:(0,o.jsx)(i.AutoComplete,{size:`small`,options:s.map(e=>({value:e.value,label:e.label})),placeholder:`Default`,allowClear:!0,filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase()),className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[t,`minRows`],label:`Min Rows`,style:{marginBottom:8},tooltip:`Minimum rows users must keep. Delete is disabled at this count.`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:80}})}),(0,o.jsx)(i.Form.Item,{name:[t,`initialRows`],label:`Initial Rows`,style:{marginBottom:8},tooltip:`How many empty rows to show on load (0 = show only the + button).`,children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:80}})}),(0,o.jsx)(i.Form.Item,{name:[t,`requireOne`],label:`Row Required`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:8},tooltip:`When users add a row, at least one field in that row must be filled.`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Yes`,unCheckedChildren:`No`})}),(0,o.jsx)(i.Form.Item,{name:[t,`linkGroup`],label:`Link Group`,style:{marginBottom:8},tooltip:`Groups sharing the same value here stay row-synced — adding or removing a row in one adds/removes the matching row in every linked group, while each keeps its own card and its own submitted data. Leave blank for an independent group.`,children:(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. workHistory`,style:{width:130},className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:[t,`infoEnabled`],label:`Group Info`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:8},children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Info`,unCheckedChildren:`Info`})}),(0,o.jsx)(i.Form.Item,{name:[t,`toggleEnabled`],label:`Group Switch`,valuePropName:`checked`,initialValue:!1,style:{marginBottom:8},children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`On`,unCheckedChildren:`Off`})}),(0,o.jsx)(i.Form.Item,{name:[t,`order`],label:`Order`,initialValue:0,style:{marginBottom:8},children:(0,o.jsx)(i.Input,{type:`number`,min:0,style:{width:70}})})]}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>e([`groups`,t,`infoEnabled`])?(0,o.jsx)(i.Form.Item,{name:[t,`infoText`],label:`Group Info Message`,rules:[{required:!0,message:`Enter group info message`}],children:(0,o.jsx)(i.Input.TextArea,{rows:2,placeholder:`Message shown when users hover the group info icon`})}):null}),(0,o.jsx)(i.Form.Item,{shouldUpdate:!0,style:{marginBottom:8},children:({getFieldValue:e})=>e([`groups`,t,`toggleEnabled`])?(0,o.jsxs)(`div`,{className:`fg-inline-row`,children:[(0,o.jsx)(i.Form.Item,{name:[t,`toggleLabel`],label:`Switch Label`,rules:[{required:!0,message:`Enter switch label`}],style:{flex:1,marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. Fresher`})}),(0,o.jsx)(i.Form.Item,{name:[t,`toggleField`],label:`Payload Field`,rules:[{required:!0,message:`Enter payload field`},{pattern:/^[A-Za-z_][\w.]*$/,message:`Use a valid key, dot path allowed`}],style:{flex:1,marginBottom:0},children:(0,o.jsx)(i.Input,{placeholder:`e.g. isFresher`,className:`fg-mono-input`})})]}):null}),(0,o.jsx)(`div`,{className:`fg-fields-header`,style:{marginTop:4,marginBottom:8},children:(0,o.jsx)(`span`,{className:`fg-fields-title`,style:{fontSize:12},children:`Fields`})}),(0,o.jsx)(i.Form.List,{name:[t,`fields`],children:(e,{add:n,remove:r,move:i})=>ug({form:u,fieldItems:e,add:n,remove:r,move:i,absBase:[`groups`,t],moduleFieldOptions:D,fieldsLoading:_,dragIndexRef:S,dragOverIndex:y,setDragOverIndex:b,onFieldKeySelect:(e,n)=>{let r=(h[p]??[]).find(t=>t.value===e);if(!r)return;let i=u.getFieldValue([`groups`,t,`fields`,n])??{};u.setFieldValue([`groups`,t,`fields`,n],{...i,field:r.value,label:r.label,type:r.type??`text`})}})})]},e)),(0,o.jsx)(i.Button,{type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),block:!0,style:{marginBottom:16},onClick:()=>t({label:``,name:``,addRow:!1,order:e.length,fields:[]}),children:`Add Group`})]})})]})})}function mg({moduleOptions:t}){let[n,s]=(0,r.useState)([]),[c,l]=(0,r.useState)(!1),[u,d]=(0,r.useState)(!1),[f,p]=(0,r.useState)(null);function m(){l(!0),e.jt().then(e=>s(e)).catch(e=>i.message.error(e.message||`Could not load custom forms`)).finally(()=>l(!1))}(0,r.useEffect)(()=>{m()},[]);async function h(t){try{await e.pt(t.id),i.message.success(`Custom form deleted`),m()}catch(e){i.message.error(e.message||`Could not delete custom form`)}}return(0,o.jsxs)(`div`,{children:[(0,o.jsx)(`div`,{className:`fg-tab-toolbar`,style:{marginBottom:12},children:(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{p(null),d(!0)},children:`New Custom Form`})}),(0,o.jsx)(i.Spin,{spinning:c,children:(0,o.jsx)(i.Table,{rowKey:e=>e.id??e.action,dataSource:n,columns:[{title:`Module`,dataIndex:`module`,key:`module`,render:e=>(0,o.jsx)(i.Tag,{color:`blue`,children:e})},{title:`Action Key`,dataIndex:`action`,key:`action`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Label`,dataIndex:`label`,key:`label`,render:e=>(0,o.jsx)(Vh,{strong:!0,style:{color:`var(--color-text-heading)`},children:e})},{title:`Groups`,dataIndex:`groups`,key:`groups`,align:`center`,width:76,render:e=>(0,o.jsx)(i.Badge,{count:e?.length??0,showZero:!0,color:`var(--color-brand)`})},{title:``,key:`actions`,align:`right`,width:100,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Edit form`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>{p(t),d(!0)},className:`fg-action-btn`})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this custom form?`,description:`All configured groups will be lost.`,onConfirm:()=>h(t),okText:`Delete`,okButtonProps:{danger:!0},children:(0,o.jsx)(i.Tooltip,{title:`Delete form`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),className:`fg-action-btn`})})})]})}],pagination:!1,className:`fg-table`,locale:{emptyText:(0,o.jsx)(i.Empty,{description:`No custom forms yet. Click 'New Custom Form' to create one.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE,style:{padding:`24px 0`}})}})}),(0,o.jsx)(pg,{open:u,editingForm:f,moduleOptions:t,onClose:()=>{d(!1),p(null)},onSaved:()=>{d(!1),p(null),m()}})]})}function hg(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!0),[l,u]=(0,r.useState)({}),[d,f]=(0,r.useState)(`all`),[p,m]=(0,r.useState)(!1),[h,g]=(0,r.useState)(null),[_,v]=(0,r.useState)(null),[y,b]=(0,r.useState)(`module`),[x,S]=(0,r.useState)([]),[C,w]=(0,r.useState)({clientId:``,region:``}),[T,E]=(0,r.useState)(!1),[D,O]=(0,r.useState)(null),k=eg(t),A=t.map(e=>({value:e.key,label:e.label}));(0,r.useEffect)(()=>{e.kt().then(e=>{let t=Eh(e).map(({value:e,label:t})=>({key:e,label:t}));n(t);let r=eg(t);u(tg(r)),M(`all`,r)}).catch(()=>n([])).finally(()=>c(!1))},[]),(0,r.useEffect)(()=>{e.xt({limit:200}).then(S).catch(()=>S([]))},[]);function j(e,t){u(n=>({...n,[e]:{...n[e],...t}}))}function M(t,n){(n??k).find(e=>e.key===t)&&(j(t,{loading:!0,error:``}),e.St(t===`all`?``:t,t===`jobs`?C:{}).then(e=>j(t,{groups:e,loading:!1,loaded:!0})).catch(e=>j(t,{error:e.message||`Could not load groups`,loading:!1})))}function N(e){M(e,null)}function P(e){f(e),l[e]?.loaded||N(e)}function F(){g(null),m(!0)}function I(e){g(e),m(!0)}function L(){m(!1),g(null)}async function R(){L(),N(d),d!==`all`&&N(`all`)}async function z(t){try{await e.dt(t),i.message.success(`Group deleted`),N(d),d!==`all`&&N(`all`)}catch(e){i.message.error(e.message||`Could not delete group`)}}async function B(t){let n=t.map((e,t)=>({g:e,index:t})).filter(({g:e,index:t})=>Number(e.order??0)!==t&&e.id);if(n.length)try{await Promise.all(n.map(({g:t,index:n})=>e.cn(t.id,{...t,order:n},U(t.module||d)))),i.message.success(`Group order updated`),N(d),d!==`all`&&N(`all`)}catch(e){i.message.error(e.message||`Could not reorder groups`),N(d)}}function V(e){v(Hh[e])}function H(t){let n={...C,...t};w(n),d===`jobs`&&(j(`jobs`,{loading:!0,error:``}),e.St(`jobs`,n).then(e=>j(`jobs`,{groups:e,loading:!1})).catch(e=>j(`jobs`,{error:e.message||`Could not load scoped groups`,loading:!1})))}function U(e=d){return e===`jobs`?C:{}}function W(e){O(JSON.parse(JSON.stringify(e))),i.message.success(`Copied settings from ${e.label||e.name}`)}async function G(t){if(D)try{let n={...t,addRow:D.addRow??t.addRow,payloadKey:D.payloadKey??t.payloadKey,fields:JSON.parse(JSON.stringify(D.fields??[]))};await e.cn(t.id,n,U(t.module||d)),i.message.success(`Pasted settings into ${t.label||t.name}`),N(d),d!==`all`&&N(`all`)}catch(e){i.message.error(e.message||`Could not paste settings`)}}function ee(){v(null),u(tg(k)),N(d),d!==`all`&&N(`all`)}let te=k.map(({key:e,label:t,color:n})=>{let r=l[e]??{groups:[],loading:!1,loaded:!1,error:``},s=[...r.groups].sort((e,t)=>(e.order??0)-(t.order??0));return{key:e,label:(0,o.jsxs)(`span`,{className:`fg-tab-label`,children:[(0,o.jsx)(`span`,{className:`fg-tab-dot`,style:{background:n}}),t,(0,o.jsx)(i.Badge,{count:r.groups.length,showZero:!0,color:n,size:`small`})]}),children:(0,o.jsxs)(`div`,{className:`fg-tab-content`,children:[r.error&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:r.error,style:{marginBottom:12}}),(0,o.jsx)(`div`,{className:`fg-tab-toolbar`,children:(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),disabled:e===`all`,onClick:()=>{f(e),F()},children:`Add Group`})}),(0,o.jsx)(i.Spin,{spinning:r.loading,children:(0,o.jsx)(fg,{groups:s,onEdit:I,onDelete:z,onCopy:W,onPaste:G,canPaste:!!D,onReorder:e===`all`?void 0:B})})]})}}),K=[{key:`module`,label:`Module Form`,children:(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(Z,{children:(0,o.jsxs)(`div`,{className:`fg-scope-toolbar`,children:[(0,o.jsx)(`div`,{children:(0,o.jsx)(`div`,{children:(0,o.jsx)(Vh,{type:`secondary`,style:{fontSize:12},children:`Select a client to edit a scoped Jobs field list. Leave blank for the default module config.`})})}),(0,o.jsxs)(i.Space,{wrap:!0,size:8,children:[(0,o.jsx)(i.Select,{size:`small`,allowClear:!0,showSearch:!0,placeholder:`Client`,style:{width:240},value:C.clientId||void 0,optionFilterProp:`label`,options:x.map(e=>({value:e._id??e.id,label:e.clientName??e.name??e.clientRefrenceId??e._id})).filter(e=>e.value),onChange:e=>H({clientId:e??``})}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:()=>N(d),children:`Reload`}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),disabled:d!==`jobs`,onClick:()=>E(!0),children:`Preview`})]})]})}),(0,o.jsx)(Z,{children:(0,o.jsx)(i.Spin,{spinning:s,children:(0,o.jsx)(i.Tabs,{activeKey:d,onChange:P,items:te,size:`middle`,className:`fg-tabs`})})}),(0,o.jsx)(dg,{open:p,editingGroup:h,defaultModule:d===`all`?A[0]?.value??``:d,moduleOptions:A,allGroupsByModule:Object.fromEntries(Object.entries(l).filter(([e])=>e!==`all`).map(([e,t])=>[e,t.groups??[]])),onClose:L,onSaved:R,onSaveGroup:(t,n)=>n?e.cn(n.id,t,U(t.module)):e.it(t,U(t.module))}),(0,o.jsx)(i.Drawer,{open:T,onClose:()=>E(!1),width:`92vw`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.EyeOutlined,{}),` Jobs Add Form Preview`]}),classNames:{body:`fg-preview-body`},children:(0,o.jsx)(Ho,{moduleName:`jobs`,clientId:C.clientId,region:C.region,cancelPath:`/jobs`,onSubmit:async()=>i.message.info(`Preview only. No record was created.`),breadcrumbItems:[{label:`Admin`},{label:`Form Groups`},{label:`Jobs Preview`}]})})]})},{key:`custom`,label:`Custom Form`,children:(0,o.jsx)(Z,{children:(0,o.jsx)(mg,{moduleOptions:A})})},{key:`defaultFields`,label:`Default Fields`,children:(0,o.jsx)(Bh,{moduleOptions:A})}];return(0,o.jsxs)(`div`,{className:`fg-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.AppstoreAddOutlined,{}),title:`Form Groups`,extra:y===`module`?(0,o.jsxs)(i.Space,{size:8,wrap:!0,children:[(0,o.jsx)(i.Dropdown,{trigger:[`click`],menu:{items:[{key:`save`,label:`Save current as default`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>V(`save`)},{key:`restore`,label:`Restore saved default`,icon:(0,o.jsx)(a.CloudDownloadOutlined,{}),onClick:()=>V(`restore`)},{type:`divider`},{key:`reset`,label:`Reset all form groups`,icon:(0,o.jsx)(a.ReloadOutlined,{}),danger:!0,onClick:()=>V(`reset`)}]},children:(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.MoreOutlined,{}),children:`Workspace defaults`})}),(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.AppstoreAddOutlined,{}),onClick:F,children:`New Group`})]}):null,children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsxs)(Vh,{type:`secondary`,style:{fontSize:13},children:[(0,o.jsx)(`strong`,{children:`Module Form`}),` — configure the default add/edit form for each module.`,` `,(0,o.jsx)(`strong`,{children:`Custom Form`}),` — create standalone named forms (module + action) for context-specific flows such as quick-add or popup forms.`]})]}),(0,o.jsx)(Z,{styles:{body:{padding:`0 0`}},children:(0,o.jsx)(i.Tabs,{activeKey:y,onChange:b,items:K,size:`middle`,className:`fg-top-tabs`,tabBarStyle:{padding:`0 16px`,margin:0},destroyInactiveTabPane:!1})}),(0,o.jsx)(Rh,{open:!!_,scope:`formGroups`,action:_?.action,title:_?.title,description:_?.description,confirmLabel:_?.confirmLabel,danger:_?.danger,onCancel:()=>v(null),onVerified:ee})]})}var{Text:Q}=i.Typography,gg,_g=new Map;function vg(){return gg||=e.Ot().catch(e=>{throw gg=void 0,e}),gg}function yg(t){return _g.has(t)||_g.set(t,e.At(t).catch(e=>{throw _g.delete(t),e})),_g.get(t)}var bg={reset:{action:`reset`,title:`Reset all detail config`,confirmLabel:`Reset All`,danger:!0,description:`Clears every detail-view override for all modules in this workspace, so the detail view falls back to the plain form-group fields.`},save:{action:`save`,title:`Save current as default`,confirmLabel:`Save Default`,danger:!1,description:`Snapshots the current detail config for all modules as the saved default you can restore to later.`},restore:{action:`restore`,title:`Restore saved default`,confirmLabel:`Restore Default`,danger:!0,description:`Replaces the current detail config for all modules with the last saved default.`}},xg=[{label:`Default`,value:`default`},{label:`Title Case On`,value:`on`},{label:`Off (raw text)`,value:`off`}],Sg=e=>e===!0?`on`:e===!1?`off`:`default`,Cg=e=>e===`on`?!0:e===`off`?!1:void 0,wg=e=>e===!0||e===1||e===`1`;function Tg(e){let t=new Set,n=[];for(let r of e??[])for(let e of r.fields??[])!e.field||t.has(e.field)||(t.add(e.field),n.push({key:e.field,label:e.label??e.field,type:e.type??`text`,group:r.label??r.name,lookupDefaults:e.lookupCollection?{lookupCollection:e.lookupCollection,displayField:e.displayField??``,displayField2:e.displayField2??``,valueField:e.valueField||`_id`}:{}}));return n}function Eg(e,t){if(!t)return null;let n={field:e};t.label&&(n.label=t.label),t.prefix&&(n.prefix=t.prefix),t.suffix&&(n.suffix=t.suffix),t.color&&(n.color=t.color),(t.capitalize===!0||t.capitalize===!1)&&(n.capitalize=t.capitalize),(t.hidden===!0||t.hidden===!1)&&(n.hidden=t.hidden),t.hideInDetail===!0&&(n.hideInDetail=!0);let r=t.renderType||(t.documentPreview?`document`:t.displayAs===`tag`?`tag`:t.displayAs===`text`?`text`:``);r&&r!==`auto`&&(n.renderType=r);let i={};for(let[e,n]of Object.entries(t.renderOptions??{}))n!==void 0&&n!==``&&n!==!1&&(i[e]=n);return Object.keys(i).length&&(n.renderOptions=i),t.lookupCollection&&(n.lookupCollection=t.lookupCollection,n.displayField=t.displayField||``,t.displayField2&&(n.displayField2=t.displayField2),n.valueField=t.valueField||`_id`),Object.keys(n).length>1?n:null}function Dg(e){return(e??[]).filter(e=>e.key&&(e.fields??[]).length).map(e=>{let t={key:e.key,label:e.label||e.key,fields:e.fields};return e.template&&(t.template=e.template),e.valueMaps&&Object.keys(e.valueMaps).length&&(t.valueMaps=e.valueMaps),e.separator&&(t.separator=e.separator),e.prefix&&(t.prefix=e.prefix),e.suffix&&(t.suffix=e.suffix),e.color&&(t.color=e.color),(e.capitalize===!0||e.capitalize===!1)&&(t.capitalize=e.capitalize),e.group&&(t.group=e.group),e.hideSources===!1&&(t.hideSources=!1),t})}function Og(e){return Number(e?.show??1)===0}function kg(e,t){let n=[];return{nextGroups:(e??[]).map(e=>{let r=!1,i=(e.fields??[]).map(e=>{let n=t[e.field];if(!n||n.hidden===void 0)return e;let i=+!n.hidden;return Number(e.show??1)===i?e:(r=!0,{...e,show:i})}),a=r?{...e,fields:i}:e;return r&&n.push(a),a}),changed:n}}function Ag({value:e,onChange:t}){return(0,o.jsxs)(i.Space.Compact,{style:{width:`100%`},children:[(0,o.jsx)(i.Input,{size:`small`,placeholder:`#0053a5`,value:e??``,onChange:e=>t(e.target.value),className:`fg-mono-input`,prefix:(0,o.jsx)(a.BgColorsOutlined,{style:{color:e||`#bbb`}})}),(0,o.jsx)(`input`,{type:`color`,value:/^#[0-9a-f]{6}$/i.test(e??``)?e:`#0053a5`,onChange:e=>t(e.target.value),style:{width:32,border:`1px solid #d9d9d9`,borderLeft:0,cursor:`pointer`,padding:0},"aria-label":`Pick colour`})]})}function jg({open:t,fieldMeta:n,value:s,onClose:c,onSave:l}){let[u,d]=(0,r.useState)(()=>({...s??{}})),[f,p]=(0,r.useState)([]),[m,h]=(0,r.useState)([]),[g,_]=(0,r.useState)(`display`);(0,r.useEffect)(()=>{if(!t||g!==`lookup`)return;let e=!1;return vg().then(t=>{e||p(t.map(e=>typeof e==`string`?e:e.name??e.value??``).filter(Boolean))}).catch(()=>{}),()=>{e=!0}},[g,t]),(0,r.useEffect)(()=>{if(!t||g!==`lookup`||!u.lookupCollection)return;let e=!1;return yg(u.lookupCollection).then(t=>{e||h(t.map(e=>typeof e==`string`?e:e.value??e.field??e.label??``).filter(Boolean))}).catch(()=>{}),()=>{e=!0}},[g,t,u.lookupCollection]);let v=(e,t)=>d(n=>({...n,[e]:t})),y=e=>{h([]),d(t=>({...t,lookupCollection:e}))},b=f.map(e=>({value:e})),x=m.map(e=>({value:e})),S=u.renderOptions??{},C=(e,t)=>v(`renderOptions`,{...S,[e]:t||void 0}),w=u.renderType||(u.documentPreview?`document`:u.displayAs===`tag`?`tag`:u.displayAs===`text`?`text`:`auto`),T=[`tag`,`tags`,`chip`,`badge`].includes(w),E=[`text`,`tag`,`tags`,`chip`,`badge`,`link`,`email`,`phone`].includes(w);return(0,o.jsxs)(i.Modal,{open:t,onCancel:c,width:760,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal detail-field-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.EditOutlined,{}),` `,n?.label,(0,o.jsx)(`code`,{className:`fg-field-key-hint`,style:{marginLeft:8},children:n?.key})]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:c,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>l(u),children:`Apply`})]}),children:[(0,o.jsxs)(`div`,{className:`detail-editor-nav`,role:`tablist`,"aria-label":`Field settings`,children:[(0,o.jsx)(i.Button,{type:g===`display`?`primary`:`text`,onClick:()=>_(`display`),children:`Display`}),(0,o.jsx)(i.Button,{type:g===`lookup`?`primary`:`text`,onClick:()=>_(`lookup`),children:`Reference lookup`})]}),g===`display`&&(0,o.jsxs)(`div`,{className:`fg-form-section detail-editor-panel`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Display`}),(0,o.jsxs)(`div`,{style:{marginBottom:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Label override`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:n?.label,value:u.label??``,onChange:e=>v(`label`,e.target.value)})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Prefix`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. $`,value:u.prefix??``,onChange:e=>v(`prefix`,e.target.value)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Suffix`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`e.g. yrs`,value:u.suffix??``,onChange:e=>v(`suffix`,e.target.value)})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Colour`}),(0,o.jsx)(Ag,{value:u.color,onChange:e=>v(`color`,e)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Capitalize`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},options:xg,value:Sg(u.capitalize),onChange:e=>v(`capitalize`,Cg(e))})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!u.hidden,onChange:e=>v(`hidden`,e)}),(0,o.jsx)(Q,{style:{fontSize:13},children:`Hide this field everywhere (detail view and the add/edit form)`})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:10},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!u.hideInDetail,onChange:e=>v(`hideInDetail`,e)}),(0,o.jsx)(Q,{style:{fontSize:13},children:`Hide in the detail view only (keep it in the add/edit form)`})]}),(0,o.jsxs)(`div`,{style:{marginTop:14},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Render Type`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:w,onChange:e=>v(`renderType`,e),options:e.E}),(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12,display:`block`,marginTop:4},children:`How this field is displayed in the detail view — entirely config-driven.`})]}),w===`document`&&(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Document mode`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:S.documentMode||`preview`,onChange:e=>C(`documentMode`,e),options:e.T})]}),E&&(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Text transform`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:S.textTransform||`none`,onChange:e=>C(`textTransform`,e===`none`?void 0:e),options:e.D})]}),T&&(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Tag colour`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`geekblue / #0053a5`,value:S.tagColor??``,onChange:e=>C(`tagColor`,e.target.value),className:`fg-mono-input`})]}),w===`date`&&(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Date format (dayjs tokens)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`DD/MM/YYYY`,value:S.dateFormat??``,onChange:e=>C(`dateFormat`,e.target.value),className:`fg-mono-input`})]}),(w===`currency`||w===`budget`)&&(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Currency symbol`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`$ / ₹ / £`,value:S.currencySymbol??``,onChange:e=>C(`currencySymbol`,e.target.value)})]}),w===`budget`&&(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Unit (e.g. Monthly)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`Monthly`,value:S.unit??``,onChange:e=>C(`unit`,e.target.value)})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!S.showEmpty,onChange:e=>C(`showEmpty`,e)}),(0,o.jsx)(Q,{style:{fontSize:13},children:`Show empty values`})]})]}),g===`lookup`&&(0,o.jsxs)(`div`,{className:`fg-form-section detail-editor-panel`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Reference Lookup (id → name)`}),(0,o.jsxs)(Q,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:8},children:[`For fields that store a foreign-key id. The detail API resolves the name from the target collection and returns `,(0,o.jsx)(`code`,{children:`{ id, value }`}),`.`]}),(0,o.jsxs)(`div`,{style:{marginBottom:10},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Collection`}),(0,o.jsx)(i.AutoComplete,{size:`small`,style:{width:`100%`},options:b,placeholder:`e.g. vendors`,value:u.lookupCollection??``,onChange:y,filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase()),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Display Field`}),(0,o.jsx)(i.AutoComplete,{size:`small`,style:{width:`100%`},options:x,placeholder:`e.g. vendorCompanyName`,value:u.displayField??``,onChange:e=>v(`displayField`,e),filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase()),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Display Field 2`}),(0,o.jsx)(i.AutoComplete,{size:`small`,style:{width:`100%`},options:x,placeholder:`e.g. lastName`,value:u.displayField2??``,onChange:e=>v(`displayField2`,e),filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase()),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Value Field (FK)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`_id`,value:u.valueField??``,onChange:e=>v(`valueField`,e.target.value),className:`fg-mono-input`})]})]})]})]})}function Mg(e){let t=[];return Object.entries(e??{}).forEach(([e,n])=>{Object.entries(n??{}).forEach(([n,r])=>t.push({field:e,from:n,to:r}))}),t}function Ng(e){let t={};for(let n of e??[])!n.field||!n.from||(t[n.field]={...t[n.field]??{},[n.from]:n.to??``});return t}function Pg({open:e,merge:t,fieldOptions:n,groupOptions:s,onClose:c,onSave:l}){let[u,d]=(0,r.useState)(()=>({key:``,label:``,fields:[],separator:` - `,template:``,prefix:``,suffix:``,color:``,capitalize:void 0,group:``,hideSources:!0,...t??{},mapRows:Mg(t?.valueMaps)})),f=(e,t)=>d(n=>({...n,[e]:t})),p=(e,t)=>d(n=>{let r=[...n.mapRows??[]];return r[e]={...r[e],...t},{...n,mapRows:r}}),m=e=>d(t=>({...t,mapRows:(t.mapRows??[]).filter((t,n)=>n!==e)}));return(0,o.jsx)(i.Modal,{open:e,onCancel:c,width:820,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.MergeCellsOutlined,{}),` `,t?`Edit Merged Field`:`New Merged Field`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:c,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!u.key?.trim())return i.message.error(`A merge key is required`);if(!/^[a-z0-9_]+$/.test(u.key))return i.message.error(`Key: lowercase letters, numbers, underscores only`);if(!(u.fields??[]).length)return i.message.error(`Pick at least one source field`);let{mapRows:e,...t}=u;l({...t,valueMaps:Ng(e)})},children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Merged Field`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Key`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`experience_range`,value:u.key??``,onChange:e=>f(`key`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Label`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`Experience`,value:u.label??``,onChange:e=>f(`label`,e.target.value)})]})]}),(0,o.jsxs)(`div`,{style:{margin:`12px 0`},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Source fields (combined in order)`}),(0,o.jsx)(i.Select,{mode:`multiple`,size:`small`,style:{width:`100%`},placeholder:`Pick fields to combine`,options:n,value:u.fields??[],onChange:e=>f(`fields`,e),optionFilterProp:`label`})]}),(0,o.jsxs)(`div`,{style:{margin:`12px 0`},children:[(0,o.jsxs)(Q,{type:`secondary`,style:{fontSize:12},children:[`Template `,(0,o.jsx)(`span`,{style:{color:`#94a3b8`},children:`(optional — overrides separator)`})]}),(0,o.jsx)(i.Input.TextArea,{rows:2,value:u.template??``,onChange:e=>f(`template`,e.target.value),placeholder:`{clientBudgetStart} - {clientBudgetEnd} {clientBudgetCurrency}/{clientBudgetUnit}`,className:`fg-mono-input`}),(u.fields??[]).length>0&&(0,o.jsx)(`div`,{style:{display:`flex`,flexWrap:`wrap`,gap:4,marginTop:6},children:(u.fields??[]).map(e=>(0,o.jsxs)(i.Tag,{color:`blue`,style:{cursor:`pointer`,margin:0},onClick:()=>f(`template`,`${u.template??``}{${e}}`),children:[`+ `,`{${e}}`]},e))}),(0,o.jsxs)(Q,{type:`secondary`,style:{fontSize:11,display:`block`,marginTop:4},children:[`Click a chip to insert a field. Everything else (spaces, “/”, “-”) is kept literally. Result e.g. `,(0,o.jsx)(`code`,{children:`60 - 80 $/Monthly`}),`.`]})]}),(0,o.jsxs)(`div`,{style:{margin:`12px 0`},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Value mappings (raw → display)`}),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),disabled:!(u.fields??[]).length,onClick:()=>d(e=>({...e,mapRows:[...e.mapRows??[],{field:e.fields?.[0]??``,from:``,to:``}]})),children:`Add`})]}),(u.mapRows??[]).map((e,t)=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:6,marginTop:6,alignItems:`center`},children:[(0,o.jsx)(i.Select,{size:`small`,style:{flex:1.4},placeholder:`field`,value:e.field||void 0,options:(u.fields??[]).map(e=>({value:e,label:e})),onChange:e=>p(t,{field:e})}),(0,o.jsx)(i.Input,{size:`small`,style:{flex:1},placeholder:`Monthly`,value:e.from,onChange:e=>p(t,{from:e.target.value})}),(0,o.jsx)(`span`,{style:{color:`#94a3b8`},children:`→`}),(0,o.jsx)(i.Input,{size:`small`,style:{flex:1},placeholder:`mon`,value:e.to,onChange:e=>p(t,{to:e.target.value})}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>m(t)})]},t)),!(u.mapRows??[]).length&&(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:11,display:`block`,marginTop:4},children:`e.g. Monthly → mon, Daily → day, Yearly → yr. Unmapped values stay as-is.`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsxs)(Q,{type:`secondary`,style:{fontSize:12},children:[`Separator `,(0,o.jsx)(`span`,{style:{color:`#94a3b8`},children:`(used when no template)`})]}),(0,o.jsx)(i.Input,{size:`small`,placeholder:` - `,value:u.separator??``,onChange:e=>f(`separator`,e.target.value)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Place in group`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},allowClear:!0,placeholder:`(first source's group)`,options:s,value:u.group||void 0,onChange:e=>f(`group`,e??``)})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Prefix`}),(0,o.jsx)(i.Input,{size:`small`,value:u.prefix??``,onChange:e=>f(`prefix`,e.target.value)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Suffix`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`yrs`,value:u.suffix??``,onChange:e=>f(`suffix`,e.target.value)})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Colour`}),(0,o.jsx)(Ag,{value:u.color,onChange:e=>f(`color`,e)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`Capitalize`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},options:xg,value:Sg(u.capitalize),onChange:e=>f(`capitalize`,Cg(e))})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:u.hideSources!==!1,onChange:e=>f(`hideSources`,e)}),(0,o.jsx)(Q,{style:{fontSize:13},children:`Hide the source fields after merging`})]})]})})}function Fg({open:t,module:n,onClose:s}){let[c,l]=(0,r.useState)(``),[u,d]=(0,r.useState)([]),[f,p]=(0,r.useState)(!1),[m,h]=(0,r.useState)(``),g=async()=>{if(!c.trim())return i.message.warning(`Enter a record _id to preview`);p(!0),h(``);try{let[t]=await Promise.all([e.Ht(n,c.trim()),e.N()]);d(t),t.length||h(`No groups returned — check the id and module.`)}catch(e){h(e?.message||`Failed to load preview`)}finally{p(!1)}};return(0,o.jsxs)(i.Drawer,{open:t,onClose:s,width:520,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.EyeOutlined,{}),` Detail Preview — `,n]}),classNames:{header:`fg-drawer-header`,body:`fg-drawer-body`},children:[(0,o.jsxs)(i.Space.Compact,{style:{width:`100%`,marginBottom:14},children:[(0,o.jsx)(i.Input,{placeholder:`Paste a record _id (24-char ObjectId)`,value:c,onChange:e=>l(e.target.value),onPressEnter:g,className:`fg-mono-input`}),(0,o.jsx)(i.Button,{type:`primary`,loading:f,onClick:g,children:`Load`})]}),m&&(0,o.jsx)(i.Alert,{type:`warning`,showIcon:!0,message:m,style:{marginBottom:12}}),(0,o.jsxs)(i.Spin,{spinning:f,children:[u.map(e=>(0,o.jsxs)(`div`,{style:{marginBottom:18},children:[(0,o.jsx)(Q,{strong:!0,style:{display:`block`,marginBottom:8},children:e.label??e.name}),(e.fields??[]).filter(e=>e.show===void 0||e.show===1).map(e=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:10,padding:`4px 0`,borderBottom:`1px dashed #eee`},children:[(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12,width:150,flexShrink:0},children:e.label}),(0,o.jsx)(Xs,{field:e})]},e.field))]},e.id??e.name)),!f&&!u.length&&!m&&(0,o.jsx)(i.Empty,{description:`Load a record to preview its detail view.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE})]})]})}function Ig(e){let t={};return[`s3BaseUrl`,`dateFormat`,`booleanTrueLabel`,`booleanFalseLabel`,`emptyPlaceholder`,`separator`].forEach(n=>{e?.[n]!==void 0&&e?.[n]!==``&&(t[n]=e[n])}),Array.isArray(e?.documentNameOrder)&&e.documentNameOrder.length&&(t.documentNameOrder=e.documentNameOrder),t}function Lg({open:t,onClose:n}){let[s,c]=(0,r.useState)(()=>({...e.M()})),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{if(!t)return;let n=!1;return e.Nt().then(e=>{n||c(t=>({...t,...Ig(e)}))}).catch(()=>{}),()=>{n=!0}},[t]);let d=(e,t)=>c(n=>({...n,[e]:t})),f=async()=>{u(!0);try{let t={s3BaseUrl:(s.s3BaseUrl??``).trim(),dateFormat:(s.dateFormat??``).trim(),booleanTrueLabel:s.booleanTrueLabel??``,booleanFalseLabel:s.booleanFalseLabel??``,emptyPlaceholder:s.emptyPlaceholder??``,separator:s.separator??``,documentNameOrder:Array.isArray(s.documentNameOrder)?s.documentNameOrder:[]};await e.nn(t),e.j(t),i.message.success(`Display defaults saved`),n()}catch(e){i.message.error(e?.message||`Could not save defaults`)}finally{u(!1)}},p={fontSize:12,display:`block`,marginBottom:4};return(0,o.jsxs)(i.Drawer,{open:t,onClose:n,width:460,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.SettingOutlined,{}),` Display Defaults`]}),classNames:{header:`fg-drawer-header`,body:`fg-drawer-body`},footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:()=>c({...e.A}),children:`Reset to built-in`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:l,onClick:f,children:`Save Defaults`})]}),children:[(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Documents / Files`}),(0,o.jsxs)(`div`,{style:{marginBottom:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`S3 Base URL`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:e.A.s3BaseUrl,value:s.s3BaseUrl??``,onChange:e=>d(`s3BaseUrl`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Document name priority (first match wins)`}),(0,o.jsx)(i.Select,{mode:`tags`,size:`small`,style:{width:`100%`},placeholder:`name, documentName, uploadedFileName…`,value:s.documentNameOrder??[],onChange:e=>d(`documentNameOrder`,e)})]})]}),(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Value Formatting`}),(0,o.jsxs)(`div`,{style:{marginBottom:12},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Date format (dayjs tokens)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`DD MMM YYYY`,value:s.dateFormat??``,onChange:e=>d(`dateFormat`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Boolean — true`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`Yes`,value:s.booleanTrueLabel??``,onChange:e=>d(`booleanTrueLabel`,e.target.value)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Boolean — false`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`No`,value:s.booleanFalseLabel??``,onChange:e=>d(`booleanFalseLabel`,e.target.value)})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Empty placeholder`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`-`,value:s.emptyPlaceholder??``,onChange:e=>d(`emptyPlaceholder`,e.target.value)})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)(Q,{type:`secondary`,style:p,children:`Object / array separator`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:` - `,value:s.separator??``,onChange:e=>d(`separator`,e.target.value)})]})]})]})]})}function Rg(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!0),[l,u]=(0,r.useState)(``),[d,f]=(0,r.useState)([]),[p,m]=(0,r.useState)([]),[h,g]=(0,r.useState)([]),[_,v]=(0,r.useState)({}),[y,b]=(0,r.useState)([]),[x,S]=(0,r.useState)(!1),[C,w]=(0,r.useState)(``),[T,E]=(0,r.useState)(!1),[D,O]=(0,r.useState)(null),[k,A]=(0,r.useState)(null),[j,M]=(0,r.useState)(!1),[N,P]=(0,r.useState)(!1),[F,I]=(0,r.useState)(null),[L,R]=(0,r.useState)(0),[z,B]=(0,r.useState)(``),[V,H]=(0,r.useState)({});function U(e){I(bg[e])}async function W(t,n,r,a){let o=d;f(e=>e.map(e=>e.id===t.id?{...e,[n]:r}:e)),H(e=>({...e,[`${t.id}:${n}`]:!0}));try{await e.cn(t.id,{...t,[n]:r}),i.message.success(r?a.on:a.off)}catch(e){f(o),i.message.error(e?.message||`Could not update group visibility`)}finally{H(e=>{let r={...e};return delete r[`${t.id}:${n}`],r})}}let G=(e,t)=>W(e,`hideGroup`,t,{on:`Group hidden from add/edit forms and the detail view`,off:`Group is visible again`}),ee=(e,t)=>W(e,`hideGroupInDetail`,t,{on:`Group hidden from the detail view only — add/edit forms keep it`,off:`Group is visible in the detail view again`});function te(){I(null),R(e=>e+1)}(0,r.useEffect)(()=>{e.kt().then(e=>{let t=Eh(e).map(({value:e,label:t})=>({key:e,label:t}));n(t),t.length&&u(t[0].key)}).catch(()=>n([])).finally(()=>c(!1))},[]),(0,r.useEffect)(()=>{if(!l)return;let t=!1;return(async()=>{S(!0),w(``);try{let[n,r]=await Promise.all([e.St(l),e.Mt(l)]);if(t)return;f(n??[]),m(Tg(n)),g((n??[]).map(e=>({value:e.name,label:e.label??e.name})));let i={};(r.fields??[]).forEach(e=>{i[e.field]=e}),v(i),b(r.merges??[])}catch(e){t||w(e?.message||`Failed to load configuration`)}finally{t||S(!1)}})(),()=>{t=!0}},[l,L]);let K=(0,r.useMemo)(()=>p.map(e=>({value:e.key,label:`${e.label} (${e.key})`})),[p]);async function ne(){E(!0);try{let t=Object.entries(_).map(([e,t])=>Eg(e,t)).filter(Boolean),{nextGroups:n,changed:r}=kg(d,_);await e.tn({module:l,fields:t,merges:Dg(y)}),r.length&&(f(n),m(Tg(n)),g(n.map(e=>({value:e.name,label:e.label??e.name})))),i.message.success(`Detail view configuration saved`)}catch(e){i.message.error(e?.message||`Could not save configuration`)}finally{E(!1)}}function re(e){v(t=>({...t,[D.key]:{...e,field:D.key}})),O(null)}function q(e){v(t=>{let n={...t};return delete n[e],n})}function J(e){b(t=>{let n=[...t];return k.index===null?n.push(e):n[k.index]=e,n}),A(null)}function ie(e,t){v(n=>{let r=n[e]??{field:e};return{...n,[e]:{...r,hidden:t}}})}let ae=e=>{if(!e)return null;let t=[];e.label&&t.push((0,o.jsx)(i.Tag,{color:`blue`,children:`label`},`l`)),(e.prefix||e.suffix)&&t.push((0,o.jsx)(i.Tag,{color:`geekblue`,children:`±fix`},`ps`)),e.color&&t.push((0,o.jsx)(i.Tag,{color:e.color,children:`colour`},`c`)),e.capitalize===!0&&t.push((0,o.jsx)(i.Tag,{color:`purple`,children:`Title`},`cap`)),e.capitalize===!1&&t.push((0,o.jsx)(i.Tag,{color:`default`,children:`raw`},`cap`)),e.lookupCollection&&t.push((0,o.jsxs)(i.Tag,{color:`volcano`,children:[`lookup: `,e.lookupCollection]},`lk`));let n=e.renderType||(e.documentPreview?`document`:e.displayAs);return n&&n!==`auto`&&t.push((0,o.jsx)(i.Tag,{color:`cyan`,children:n},`rt`)),t.length?t:(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`—`})},oe=[{title:`Group`,dataIndex:`label`,key:`label`,render:(e,t)=>(0,o.jsx)(Q,{strong:!0,style:{color:`var(--color-text-heading)`},children:e??t.name})},{title:`Key`,dataIndex:`name`,key:`name`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Order`,dataIndex:`order`,key:`order`,width:72,align:`center`,render:e=>(0,o.jsx)(`span`,{className:`fg-order-cell`,children:e??0})},{title:`Fields`,dataIndex:`fields`,key:`fields`,width:76,align:`center`,render:e=>(0,o.jsx)(i.Badge,{count:e?.length??0,showZero:!0,color:`var(--color-brand)`})},{title:`Customized`,key:`cust`,width:100,align:`center`,render:(e,t)=>{let n=(t.fields??[]).filter(e=>_[e.field]).length;return n?(0,o.jsx)(i.Tag,{color:`blue`,style:{margin:0},children:n}):(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`—`})}},{title:`Hide Group`,key:`hideGroup`,width:110,align:`center`,render:(e,t)=>(0,o.jsx)(i.Tooltip,{title:wg(t.hideGroup)?`Hidden from add/edit forms AND the detail view`:`Visible in both — same flag as Form Groups`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Hide`,unCheckedChildren:`Show`,checked:wg(t.hideGroup),loading:!!V[`${t.id}:hideGroup`],onChange:e=>G(t,e)})})},{title:`Hide in Detail`,key:`hideGroupInDetail`,width:120,align:`center`,render:(e,t)=>(0,o.jsx)(i.Tooltip,{title:wg(t.hideGroupInDetail)?`Hidden from the DETAIL VIEW only — the add/edit forms still show this group`:`Shown in the detail view. Hide here to remove it from the detail view without touching the forms`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Hide`,unCheckedChildren:`Show`,checked:wg(t.hideGroupInDetail),loading:!!V[`${t.id}:hideGroupInDetail`],onChange:e=>ee(t,e)})})}],Y=e=>{let t=e.fields??[];return t.length?(0,o.jsx)(`div`,{className:`fg-expanded-fields`,children:t.map(t=>{let n=_[t.field],r=n?.hidden??Og(t),s={key:t.field,label:t.label??t.field,type:t.type??`text`,group:e.label??e.name,lookupDefaults:t.lookupCollection?{lookupCollection:t.lookupCollection,displayField:t.displayField??``,displayField2:t.displayField2??``,valueField:t.valueField||`_id`}:{}};return(0,o.jsxs)(`div`,{className:`fg-field-row`,children:[(0,o.jsxs)(`div`,{className:`fg-field-row-info`,children:[(0,o.jsx)(`span`,{className:`fg-field-row-label`,children:n?.label||t.label}),(0,o.jsx)(`span`,{className:`fg-field-row-key`,children:t.field}),(0,o.jsxs)(`span`,{className:`fg-field-row-type`,children:[`(`,t.type,`)`]})]}),(0,o.jsx)(`div`,{className:`fg-field-row-flags`,children:ae(n)}),(0,o.jsxs)(i.Space,{size:4,style:{marginLeft:`auto`},children:[(0,o.jsx)(i.Tooltip,{title:r?`Hidden in form and detail view`:`Visible`,children:(0,o.jsx)(i.Switch,{size:`small`,checkedChildren:`Hide`,unCheckedChildren:`Show`,checked:r,onChange:e=>ie(t.field,e)})}),(0,o.jsx)(i.Tooltip,{title:`Customize field`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>O(s)})}),n&&(0,o.jsx)(i.Tooltip,{title:`Reset to default`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:()=>q(t.field)})})]})]},t.field)})}):(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:12},children:`No fields in this group.`})},se=(0,r.useMemo)(()=>{let e=z.trim().toLowerCase();return[...d].filter(t=>!e||[t.label,t.name,...(t.fields??[]).flatMap(e=>[e.label,e.field,e.type])].some(t=>String(t??``).toLowerCase().includes(e))).sort((e,t)=>(e.order??0)-(t.order??0))},[d,z]),ce=[{title:`Label`,dataIndex:`label`,key:`label`,render:(e,t)=>(0,o.jsxs)(`span`,{children:[(0,o.jsx)(Q,{strong:!0,children:e||t.key}),(0,o.jsx)(`span`,{className:`fg-field-key-hint`,children:t.key})]})},{title:`Fields`,dataIndex:`fields`,key:`fields`,render:e=>(0,o.jsx)(i.Space,{size:4,wrap:!0,children:(e??[]).map(e=>(0,o.jsx)(i.Tag,{children:e},e))})},{title:`Format`,key:`sep`,width:220,render:(e,t)=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:t.template?.trim()?t.template:`join: ${t.separator||` - `}`})},{title:``,key:`actions`,width:90,align:`right`,render:(e,t,n)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>A({index:n,merge:t})})}),(0,o.jsx)(i.Tooltip,{title:`Delete`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>b(e=>e.filter((e,t)=>t!==n))})})]})}],le=t.map(e=>({key:e.key,label:e.label}));return(0,o.jsxs)(`div`,{className:`fg-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.BgColorsOutlined,{}),title:`Detail Groups`,extra:(0,o.jsxs)(i.Space,{size:8,wrap:!0,children:[(0,o.jsx)(i.Dropdown,{trigger:[`click`],menu:{items:[{key:`save`,label:`Save current as default`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>U(`save`)},{key:`restore`,label:`Restore saved default`,icon:(0,o.jsx)(a.CloudDownloadOutlined,{}),onClick:()=>U(`restore`)},{type:`divider`},{key:`reset`,label:`Reset all detail settings`,icon:(0,o.jsx)(a.ReloadOutlined,{}),danger:!0,onClick:()=>U(`reset`)}]},children:(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.MoreOutlined,{}),children:`Workspace defaults`})}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.SettingOutlined,{}),onClick:()=>P(!0),children:`Display Defaults`}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.EyeOutlined,{}),disabled:!l,onClick:()=>M(!0),children:`Preview`}),(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:T,disabled:!l,onClick:ne,children:`Save Configuration`})]}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)(Q,{type:`secondary`,style:{fontSize:13},children:`Customize how each module's detail view renders: per-field label, prefix/suffix, colour, capitalization, hide, reference lookups (id → name), and merged display fields. These overrides are applied on top of Form Groups and the add/edit forms are unaffected — except "Hide Group", which is the same flag Form Groups uses, so hiding a group here (or there) hides it in both places. "Hide in Detail" hides the group from the detail view only, leaving the forms untouched.`})]}),(0,o.jsx)(Z,{styles:{body:{paddingTop:8}},children:(0,o.jsxs)(i.Spin,{spinning:s,children:[(0,o.jsx)(i.Tabs,{activeKey:l,onChange:u,items:le.map(e=>({...e,children:null})),className:`admin-module-tabs`}),C&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:C,style:{marginBottom:12}}),(0,o.jsxs)(i.Spin,{spinning:x,children:[(0,o.jsxs)(`div`,{className:`admin-config-table-tools`,children:[(0,o.jsx)(i.Input,{allowClear:!0,prefix:(0,o.jsx)(a.SearchOutlined,{}),placeholder:`Search groups or fields`,value:z,onChange:e=>B(e.target.value)}),(0,o.jsxs)(Q,{type:`secondary`,style:{fontSize:12},children:[d.length,` groups · `,p.length,` fields`]})]}),(0,o.jsx)(i.Table,{rowKey:e=>e.id??e.name,dataSource:se,columns:oe,pagination:!1,size:`small`,className:`fg-table`,expandable:{expandedRowRender:Y,rowExpandable:()=>!0},locale:{emptyText:(0,o.jsx)(i.Empty,{description:`Select a module to see its groups and fields.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE})}}),(0,o.jsxs)(`div`,{style:{margin:`20px 0 8px`,display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,o.jsxs)(Q,{strong:!0,children:[(0,o.jsx)(a.MergeCellsOutlined,{}),` Merged Fields`]}),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),disabled:!l,onClick:()=>A({index:null,merge:null}),children:`Add Merge`})]}),(0,o.jsx)(i.Table,{rowKey:`key`,dataSource:y,columns:ce,pagination:!1,size:`small`,className:`fg-table`,locale:{emptyText:(0,o.jsx)(i.Empty,{description:`No merged fields. Combine e.g. 'from' + 'to' into one.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE})}})]})]})}),(0,o.jsx)(jg,{open:!!D,fieldMeta:D,value:D?{...D.lookupDefaults,..._[D.key]??{}}:null,onClose:()=>O(null),onSave:re},D?.key??`field-closed`),(0,o.jsx)(Pg,{open:!!k,merge:k?.merge,fieldOptions:K,groupOptions:h,onClose:()=>A(null),onSave:J},k?`merge-${k.index??`new`}`:`merge-closed`),(0,o.jsx)(Lg,{open:N,onClose:()=>P(!1)}),(0,o.jsx)(Fg,{open:j,module:l,onClose:()=>M(!1)}),(0,o.jsx)(Rh,{open:!!F,scope:`detailConfig`,action:F?.action,title:F?.title,description:F?.description,confirmLabel:F?.confirmLabel,danger:F?.danger,onCancel:()=>I(null),onVerified:te})]})}var zg=`/admin/email-templates`,Bg=`/email-templates`;function Vg(e){return e?.data??e}async function Hg({offset:e=0,limit:n=20,search:r=``,module:i=``,action:a=``,active:o}={}){let s=new URLSearchParams({offset:String(e),limit:String(n)});r&&s.set(`search`,r),i&&s.set(`module`,i),a&&s.set(`action`,a),o!==void 0&&s.set(`active`,String(o));let c=Vg(await t.i(t.v,`${zg}?${s}`))??{};return{items:Array.isArray(c.items)?c.items:[],totalCount:Number(c.totalCount??0)}}async function Ug(e){return Vg(await t.i(t.v,`${zg}/${encodeURIComponent(e)}`))}async function Wg(e){return t.i(t.v,zg,{method:`POST`,body:JSON.stringify(e)})}async function Gg(e,n){return t.i(t.v,`${zg}/${encodeURIComponent(e)}`,{method:`PUT`,body:JSON.stringify(n)})}async function Kg(e){return t.i(t.v,`${zg}/${encodeURIComponent(e)}`,{method:`DELETE`})}async function qg({module:e=``,action:n=``}={}){let r=new URLSearchParams;e&&r.set(`module`,e),n&&r.set(`action`,n);let i=Vg(await t.i(t.v,`${Bg}${r.toString()?`?${r}`:``}`));return Array.isArray(i)?i:[]}async function Jg(e){return Vg(await t.i(t.v,`${Bg}/${encodeURIComponent(e)}`))}async function Yg({offset:e=0,limit:n=20,search:r=``}={}){let i=Vg(await t.i(t.v,`/signature/homePage?${new URLSearchParams({offset:String(e),limit:String(n),sortBy:`new`,searchValue:r})}`))??{},a=Array.isArray(i.data)?i.data.map(e=>({...e,isActive:e.isActive??e.status??!1})):[];return{items:a,totalCount:Number(i.totalCount??a.length)}}async function Xg(e){return Vg(await t.i(t.v,`/signature/editPreview?signatureId=${encodeURIComponent(e)}`))}async function Zg(e){return t.i(t.v,`/signature/add`,{method:`POST`,body:JSON.stringify(e)})}async function Qg(e){return t.i(t.v,`/signature/edit`,{method:`PUT`,body:JSON.stringify(e)})}async function $g(e){return t.i(t.v,`/signature/delete?signatureId=${encodeURIComponent(e)}`,{method:`DELETE`})}async function e_(e,n){return t.i(t.v,`/signature/statusUpdate?signatureId=${encodeURIComponent(e)}&status=${n}`,{method:`PUT`})}var t_={reset:{action:`reset`,title:`Reset all row actions`,confirmLabel:`Reset All`,danger:!0,description:`This clears every configured row action for every module in this workspace. Actions have no built-in defaults, so this leaves every module with no actions until reconfigured.`},save:{action:`save`,title:`Save current as default`,confirmLabel:`Save Default`,danger:!1,description:`Snapshots the current row actions for all modules and roles as the saved default you can restore to later.`},restore:{action:`restore`,title:`Restore saved default`,confirmLabel:`Restore Default`,danger:!0,description:`Replaces the current row actions for all modules and roles with the last saved default.`}},{Text:n_}=i.Typography,r_=[{value:`delete`,label:`delete (trash)`},{value:`edit`,label:`edit (pencil)`},{value:`mail`,label:`mail (envelope)`},{value:`shareAlt`,label:`shareAlt (share)`},{value:`swap`,label:`swap (arrows)`},{value:`thunderbolt`,label:`thunderbolt (lightning)`},{value:`userAdd`,label:`userAdd (add user)`},{value:`userSwitch`,label:`userSwitch (switch user)`}],i_=[{value:`navigate`,label:`Navigate (open page)`},{value:`modal`,label:`Modal (open popup)`},{value:`api`,label:`API (call endpoint)`},{value:`copy`,label:`Copy (clipboard)`},{value:`document`,label:`Document (open viewer)`},{value:`group`,label:`Group (submenu of child actions)`}],a_=[`GET`,`POST`,`PUT`,`DELETE`],o_=[`quick-submit`,`add-notes`,`mail`,`change-status`,`tag-to-job`,`add-to-groups`,`self-assign`,`others-assign`,`delete`,`vendor-share`,`sticky-notes`,`move-to-onboarding`,`approve-rate`,`reject`,`add-batch-candidate`],s_={key:``,label:``,icon:``,actionType:`navigate`,routeTemplate:``,linkTarget:`_self`,apiMethod:`POST`,apiPath:``,popupKey:``,popupStateText:``,copyField:``,documentField:``,allowedTabs:[],permission:``,permissionModule:``,permissionAction:``,permissionKey:``,allowMultiple:!1,danger:!1,showInList:!0,showInDetail:!1,detailPlacement:`more`,doneLabel:``,doneField:``,doneOperator:`notEmpty`,doneValue:``,doneTone:`success`},c_=[{value:`notEmpty`,label:`is set (not empty)`},{value:`eq`,label:`equals`},{value:`ne`,label:`not equals`},{value:`isEmpty`,label:`is empty`}];function l_(){return`action_${Date.now()}`}function u_({open:e,initial:t,isChild:n,popupForms:s,templateOptions:c,permissionModules:l,permissionActions:u,onClose:d,onSave:f}){let[p]=i.Form.useForm(),[m,h]=(0,r.useState)(!1),g=i.Form.useWatch(`actionType`,p)??`navigate`,_=i.Form.useWatch(`showInDetail`,p)??!1,v=i.Form.useWatch(`popupKey`,p)??``,y=i.Form.useWatch(`doneOperator`,p)??`notEmpty`;(0,r.useEffect)(()=>{if(e){let[e=``,n=``]=(t?.permission??``).split(`.`);p.setFieldsValue({...s_,...t,permissionModule:e,permissionAction:n,popupStateText:t?.popupState?JSON.stringify(t.popupState,null,2):``,doneField:t?.doneWhen?.field??``,doneOperator:t?.doneWhen?.operator??`notEmpty`,doneValue:t?.doneWhen?.value??``,doneLabel:t?.doneLabel??``,doneTone:t?.doneTone??`success`})}},[e,t,p]);let b=async()=>{let e=await p.validateFields(),t;if(e.popupStateText?.trim())try{t=JSON.parse(e.popupStateText)}catch{p.setFields([{name:`popupStateText`,errors:[`Enter valid JSON`]}]);return}let n={...e};delete n.popupStateText;let{permissionModule:r,permissionAction:i}=n;delete n.permissionModule,delete n.permissionAction,n.permission=r&&i?`${r}.${i}`:``;let{doneField:a,doneOperator:o,doneValue:s}=n;if(delete n.doneField,delete n.doneOperator,delete n.doneValue,a?.trim()){let e=o||`notEmpty`,t=e===`eq`||e===`ne`;n.doneWhen={field:a.trim(),operator:e,...t?{value:(s??``).trim()}:{}},n.doneLabel?.trim()||(n.doneLabel=``)}else n.doneWhen=void 0,n.doneLabel=``;(n.actionType!==`modal`||![`mail`,`vendor-share`].includes(n.popupKey))&&delete n.defaultTemplateId,h(!0);try{await f({...n,...t?{popupState:t}:{popupState:void 0}})}finally{h(!1)}},x=[...o_.map(e=>({value:e,label:`${e} (built-in)`})),...s.map(e=>({value:e.action,label:`${e.label} (${e.action})`}))].filter((e,t,n)=>n.findIndex(t=>t.value===e.value)===t);return(0,o.jsx)(i.Modal,{title:`${t?.key?`Edit`:`Add`}${n?` Child`:``} Action`,width:720,open:e,onCancel:d,onOk:b,confirmLoading:m,okText:`Save Action`,okButtonProps:{icon:(0,o.jsx)(a.SaveOutlined,{})},className:`fg-editor-modal action-editor-modal`,children:(0,o.jsxs)(i.Form,{form:p,layout:`vertical`,initialValues:s_,className:`action-editor-form`,children:[(0,o.jsx)(`div`,{className:`action-editor-intro`,children:`Choose what the action does, then decide where it appears and who can use it.`}),(0,o.jsxs)(`div`,{className:`action-editor-grid`,children:[(0,o.jsx)(i.Form.Item,{name:`key`,label:`Key`,rules:[{required:!0,message:`Key is required`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. sourceCandidates`})}),(0,o.jsx)(i.Form.Item,{name:`label`,label:`Label`,rules:[{required:!0,message:`Label is required`}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. Source Candidates`})}),(0,o.jsx)(i.Form.Item,{name:`icon`,label:`Icon`,rules:[{required:!1,message:`Icon is required`}],children:(0,o.jsx)(i.Select,{options:r_,placeholder:`Select icon`,allowClear:!0})}),(0,o.jsx)(i.Form.Item,{name:`actionType`,label:`Action Type`,rules:[{required:!0}],children:(0,o.jsx)(i.Select,{options:i_})})]}),g===`group`&&(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,message:`Group actions don't run anything themselves.`,description:`This action renders as a submenu. Save it, then use "Add Child Action" on its row to configure what appears inside (e.g. Tag To Job, Send Mail, Add Notes).`,style:{marginBottom:16}}),g!==`group`&&(0,o.jsx)(`div`,{className:`action-editor-section-title`,children:`Behaviour`}),g===`navigate`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:`routeTemplate`,label:`Route Template`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. /app/jobs/edit/:_id`})}),(0,o.jsx)(i.Form.Item,{name:`linkTarget`,label:`Open in`,tooltip:`New tab is useful for a reference page the user shouldn't lose their place to (e.g. Open JD from Quick Submit).`,children:(0,o.jsx)(i.Select,{options:[{value:`_self`,label:`Same tab`},{value:`_blank`,label:`New tab`}]})})]}),g===`modal`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:`popupKey`,label:`Popup`,rules:[{required:!0,message:`Select a popup`}],tooltip:`Admin popup forms and built-in popup integrations are listed together.`,children:(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,options:x,placeholder:`Select popup form`})}),(0,o.jsx)(i.Form.Item,{name:`popupStateText`,label:`Popup Context (JSON, optional)`,tooltip:`Static context passed to the popup, for example {"notesfor":"candidate"}`,children:(0,o.jsx)(i.Input.TextArea,{rows:4,placeholder:`{"notesfor":"candidate"}`})}),(0,o.jsxs)(i.Space.Compact,{block:!0,children:[(0,o.jsx)(i.Form.Item,{name:`apiMethod`,label:`Submit Method`,style:{width:150},children:(0,o.jsx)(i.Select,{options:a_.map(e=>({value:e,label:e}))})}),(0,o.jsx)(i.Form.Item,{name:`apiPath`,label:`Submit API (optional)`,style:{flex:1},tooltip:`Leave empty to use the built-in handler for the selected popup key.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. /module-data-update`})})]})]}),g===`modal`&&[`mail`,`vendor-share`].includes(v)&&(0,o.jsx)(i.Form.Item,{name:`defaultTemplateId`,label:`Default Email Template`,tooltip:`This template is selected and loaded automatically whenever this action opens the mail composer.`,children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,options:c,placeholder:`No default — user selects in composer`})}),g===`api`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(i.Form.Item,{name:`apiMethod`,label:`API Method`,children:(0,o.jsx)(i.Select,{options:a_.map(e=>({value:e,label:e}))})}),(0,o.jsx)(i.Form.Item,{name:`apiPath`,label:`API Path`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. /jobs/:_id`})})]}),g===`copy`&&(0,o.jsx)(i.Form.Item,{name:`copyField`,label:`Record Field to Copy`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. email or applicantRefrenceId`})}),g===`document`&&(0,o.jsx)(i.Form.Item,{name:`documentField`,label:`Document Field`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`e.g. resume or attachment`})}),(0,o.jsx)(`div`,{className:`action-editor-section-title`,children:`Availability and access`}),(0,o.jsx)(i.Form.Item,{name:`allowedTabs`,label:`Allowed Tabs (optional)`,tooltip:`Leave empty to show on every tab.`,children:(0,o.jsx)(i.Select,{mode:`tags`,tokenSeparators:[`,`],placeholder:`e.g. allJobs`})}),(0,o.jsxs)(i.Space.Compact,{block:!0,children:[(0,o.jsx)(i.Form.Item,{name:`permissionModule`,label:`Role Permission — Module (optional)`,style:{width:`50%`},tooltip:`Which module's RBAC permission gates this action. Leave both empty to show for every permitted role.`,children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:`e.g. job`,options:l.map(e=>({value:e,label:e}))})}),(0,o.jsx)(i.Form.Item,{name:`permissionAction`,label:`Role Permission — Action`,style:{width:`50%`},children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,placeholder:`e.g. edit`,options:u.map(e=>({value:e,label:e}))})})]}),(0,o.jsx)(i.Form.Item,{name:`permissionKey`,label:`Permission Key (row-level gate)`,tooltip:`Maps to record.actionPermission.<key>. Leave blank to always show.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. edit, sourceCandidates, sharePermission`})}),(0,o.jsxs)(`div`,{className:`action-toggle-grid`,children:[(0,o.jsx)(i.Form.Item,{name:`allowMultiple`,label:`Multiple Records`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})}),(0,o.jsx)(i.Form.Item,{name:`danger`,label:`Danger`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})}),(0,o.jsx)(i.Form.Item,{name:`showInList`,label:`Show in List`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})}),(0,o.jsx)(i.Form.Item,{name:`showInDetail`,label:`Show in Detail`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})})]}),_&&(0,o.jsx)(i.Form.Item,{name:`detailPlacement`,label:`Detail Placement`,children:(0,o.jsx)(i.Select,{options:[{value:`primary`,label:`Primary button`},{value:`more`,label:`More actions menu`}]})}),(0,o.jsx)(`div`,{className:`action-editor-section-title`,children:`Done state (optional)`}),(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,style:{marginBottom:12},message:`Turn this action into a disabled success label once a condition is met.`,description:`Example: when the record field "onboardingStatus" is set, "Move to Onboarding" shows as a disabled "Moved to Onboarded". Leave the field blank to disable.`}),(0,o.jsx)(i.Form.Item,{name:`doneLabel`,label:`Done Label`,tooltip:`Text shown once the done condition is met (e.g. Moved to Onboarded). Falls back to the normal label if blank.`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. Moved to Onboarded`})}),(0,o.jsxs)(i.Space.Compact,{block:!0,children:[(0,o.jsx)(i.Form.Item,{name:`doneField`,label:`When Record Field`,style:{width:`40%`},tooltip:`A field on the record to test (dotted paths allowed, e.g. onboardingStatus).`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. onboardingStatus`})}),(0,o.jsx)(i.Form.Item,{name:`doneOperator`,label:`Condition`,style:{width:`30%`},children:(0,o.jsx)(i.Select,{options:c_})}),(0,o.jsx)(i.Form.Item,{name:`doneValue`,label:`Value`,style:{width:`30%`},hidden:y!==`eq`&&y!==`ne`,children:(0,o.jsx)(i.Input,{placeholder:`e.g. In Progress`})})]}),(0,o.jsx)(i.Form.Item,{name:`doneTone`,label:`Done Colour`,children:(0,o.jsx)(i.Select,{options:[{value:`success`,label:`Success (green)`},{value:`primary`,label:`Primary (blue)`},{value:`danger`,label:`Danger (red)`}]})})]})})}function d_(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(``),[l,u]=(0,r.useState)([]),[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)([]),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)(!1),[y,b]=(0,r.useState)(!1),[x,S]=(0,r.useState)(null),[C,w]=(0,r.useState)(!1),[T,E]=(0,r.useState)(null),[D,O]=(0,r.useState)([]),[k,A]=(0,r.useState)([]),[j,M]=(0,r.useState)(null),[N,P]=(0,r.useState)(``),[F,I]=(0,r.useState)([]),[L,R]=(0,r.useState)([]);(0,r.useEffect)(()=>{e.bt().then(e=>{let t=Eh(e).map(e=>e.value);n(t),c(e=>e||t[0]||``)}).catch(()=>{n([])})},[]),(0,r.useEffect)(()=>{Promise.all([e.Rt().catch(()=>[]),e.Lt().catch(()=>[])]).then(([e,t])=>{I([...new Set(e.map(e=>e.MENUNAME??e.menuName).filter(Boolean))]),R([...new Set(t.map(e=>e.permissionKey??e.PERMISSIONKEY).filter(Boolean))])})},[]);let z=(0,r.useCallback)(async()=>{if(s){v(!0),S(null),u([]);try{u(await e.Yt(s))}catch(e){S(e.message)}finally{v(!1)}}},[s]);(0,r.useEffect)(()=>{queueMicrotask(()=>{z()})},[z]),(0,r.useEffect)(()=>{Promise.all([e.jt(s,`popup`).catch(()=>[]),qg({module:s}).catch(()=>[])]).then(([e,t])=>{O(e),A(t.map(e=>({value:e._id??e.id,label:`${e.name} · ${e.action}`})))})},[s]),(0,r.useEffect)(()=>{queueMicrotask(()=>{let e=l.filter(e=>e.roleId===0),t=e.find(e=>e.module===s)??e[0];f(t??null),m(t?t.rowActions??[]:[]),g(!1)})},[s,l]);let B=async()=>{b(!0);try{if(d)await e.gn(d.id??d._id,p),u(e=>e.map(e=>(e.id??e._id)===(d.id??d._id)?{...e,rowActions:p}:e)),i.message.success(`Config saved`);else{let t=await e.ut({module:s,roleId:0,rowActions:p}),n=t?.data??t;f(n),u(e=>[...e,n]),i.message.success(`Config created`)}g(!1)}catch(e){i.message.error(e.message),String(e.message??``).toLowerCase().includes(`already exists`)&&z()}finally{b(!1)}},V=async()=>{if(d)try{await e.yt(d.id??d._id),i.message.success(`Config deleted`),await z()}catch(e){i.message.error(e.message)}},[H,U]=(0,r.useState)(null),W=(e=null)=>{U(typeof e==`string`?e:null),E(null),w(!0)},G=(e,t=null)=>{U(t),E(e),w(!0)},ee=async t=>{let n;n=H?p.map(e=>{if(e.key!==H)return e;let n=e.children??[],r=T?n.map(e=>e.key===T.key?{...e,...t}:e):[...n,{...s_,...t,_localKey:l_()}];return{...e,children:r}}):T?p.map(e=>e.key===T.key?{...e,...t}:e):[...p,{...s_,...t,_localKey:l_()}];try{if(d)await e.gn(d.id??d._id,n),u(e=>e.map(e=>(e.id??e._id)===(d.id??d._id)?{...e,rowActions:n}:e)),i.message.success(`Config saved`);else{let t=await e.ut({module:s,roleId:0,rowActions:n}),r=t?.data??t;f(r),u(e=>[...e,r]),i.message.success(`Config created`)}m(n),g(!1),w(!1)}catch(e){i.message.error(e.message),String(e.message??``).toLowerCase().includes(`already exists`)&&z()}},te=(e,t=null)=>{m(t?n=>n.map(n=>n.key===t?{...n,children:(n.children??[]).filter(t=>t.key!==e)}:n):t=>t.filter(t=>t.key!==e)),g(!0)},K=(e,t)=>{m(n=>{let r=[...n],i=e+t;return i<0||i>=r.length?n:([r[e],r[i]]=[r[i],r[e]],r)}),g(!0)};function ne(e){M(t_[e])}function re(){M(null),z()}let q=(0,r.useMemo)(()=>{let e=N.trim().toLowerCase();return e?p.filter(t=>[t.label,t.key,t.actionType,t.popupKey,t.routeTemplate,t.apiPath,t.permissionKey].some(t=>String(t??``).toLowerCase().includes(e))):p},[p,N]),J=[{title:`Order`,key:`order`,width:76,render:(e,t)=>(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{size:`small`,type:`text`,disabled:t._actionIndex===0,onClick:()=>K(t._actionIndex,-1),children:`↑`}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,disabled:t._actionIndex===p.length-1,onClick:()=>K(t._actionIndex,1),children:`↓`})]})},{title:`Action`,key:`identity`,width:210,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(n_,{strong:!0,children:t.label||t.key}),(0,o.jsx)(n_,{type:`secondary`,code:!0,children:t.key})]})},{title:`Behaviour`,key:`destination`,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(i.Tag,{color:`blue`,children:t.actionType}),(0,o.jsx)(n_,{type:`secondary`,ellipsis:{tooltip:!0},children:t.actionType===`group`?`${(t.children??[]).length} child action${(t.children??[]).length===1?``:`s`}`:t.popupKey||t.routeTemplate||t.apiPath||t.copyField||t.documentField||`No destination`})]})},{title:`Visible in`,key:`visibility`,width:210,render:(e,t)=>(0,o.jsxs)(i.Space,{size:[4,4],wrap:!0,children:[t.showInList&&(0,o.jsx)(i.Tag,{color:`green`,children:`List`}),(t.showInDetail??t.showInList)&&(0,o.jsxs)(i.Tag,{color:`purple`,children:[`Detail · `,t.detailPlacement||`more`]}),t.allowMultiple&&(0,o.jsx)(i.Tag,{children:`Multi-select`}),t.danger&&(0,o.jsx)(i.Tag,{color:`red`,children:`Destructive`}),!t.showInList&&!(t.showInDetail??t.showInList)&&(0,o.jsx)(n_,{type:`secondary`,children:`Nowhere`})]})},{title:`Access`,key:`access`,width:170,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(n_,{type:`secondary`,children:t.permission||`All permitted roles`}),t.permissionKey&&(0,o.jsx)(n_,{type:`secondary`,code:!0,children:t.permissionKey})]})},{title:``,key:`actions`,width:110,fixed:`right`,render:(e,t)=>(0,o.jsxs)(i.Space,{children:[t.actionType===`group`&&(0,o.jsx)(i.Tooltip,{title:`Add child action`,children:(0,o.jsx)(i.Button,{size:`small`,type:`text`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>W(t.key)})}),(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{size:`small`,type:`text`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>G(t)})}),(0,o.jsx)(i.Popconfirm,{title:`Remove this action?`,onConfirm:()=>te(t.key),okText:`Remove`,okType:`danger`,children:(0,o.jsx)(i.Tooltip,{title:`Remove`,children:(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})})]})}],ie=e=>[{title:`Action`,key:`identity`,width:210,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(n_,{strong:!0,children:t.label||t.key}),(0,o.jsx)(n_,{type:`secondary`,code:!0,children:t.key})]})},{title:`Behaviour`,key:`destination`,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(i.Tag,{color:`blue`,children:t.actionType}),(0,o.jsx)(n_,{type:`secondary`,ellipsis:{tooltip:!0},children:t.popupKey||t.routeTemplate||t.apiPath||t.copyField||t.documentField||`No destination`})]})},{title:`Access`,key:`access`,width:170,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(n_,{type:`secondary`,children:t.permission||`All permitted roles`}),t.permissionKey&&(0,o.jsx)(n_,{type:`secondary`,code:!0,children:t.permissionKey})]})},{title:``,key:`actions`,width:80,fixed:`right`,render:(t,n)=>(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{size:`small`,type:`text`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>G(n,e)})}),(0,o.jsx)(i.Popconfirm,{title:`Remove this child action?`,onConfirm:()=>te(n.key,e),okText:`Remove`,okType:`danger`,children:(0,o.jsx)(i.Tooltip,{title:`Remove`,children:(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})})]})}];return(0,o.jsxs)(`div`,{className:`fg-section admin-config-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.ToolOutlined,{}),title:`Actions`,extra:(0,o.jsx)(i.Dropdown,{trigger:[`click`],menu:{items:[{key:`save`,label:`Save current as default`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>ne(`save`)},{key:`restore`,label:`Restore saved default`,icon:(0,o.jsx)(a.CloudDownloadOutlined,{}),onClick:()=>ne(`restore`)},{type:`divider`},{key:`reset`,label:`Reset all actions`,icon:(0,o.jsx)(a.ReloadOutlined,{}),danger:!0,onClick:()=>ne(`reset`)}]},children:(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.MoreOutlined,{}),children:`Workspace defaults`})}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)(n_,{type:`secondary`,children:`Build one action once, then control its List and Detail placement, permissions, tabs, and multi-select behaviour.`})]}),(0,o.jsx)(Z,{styles:{body:{padding:`14px 18px`}},children:(0,o.jsxs)(`div`,{className:`admin-config-context`,children:[(0,o.jsxs)(`div`,{className:`admin-config-context-copy`,children:[(0,o.jsx)(n_,{strong:!0,children:`Configuration context`}),(0,o.jsx)(n_,{type:`secondary`,children:`Choose a module. This is the default action library for all roles — per-role overrides are set in User Types → Config → Actions.`})]}),(0,o.jsxs)(`div`,{className:`admin-config-context-controls`,children:[(0,o.jsxs)(`label`,{className:`admin-config-control`,children:[(0,o.jsx)(n_,{type:`secondary`,style:{display:`block`,marginBottom:4,fontSize:12},children:`Module`}),(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,style:{width:220},mode:`tags`,maxCount:1,placeholder:`Pick or type a module key`,value:s?[s]:[],onChange:e=>c(String(e[e.length-1]??``).trim()),options:t.map(e=>({value:e,label:e}))})]}),(0,o.jsx)(`div`,{className:`admin-config-reload`,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:z,loading:_,children:`Reload`})})]})]})}),x&&(0,o.jsx)(i.Alert,{type:`error`,message:x,showIcon:!0}),(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.ToolOutlined,{}),title:(0,o.jsxs)(i.Space,{wrap:!0,children:[(0,o.jsxs)(`span`,{children:[p.length,` configured action`,p.length===1?``:`s`]}),d?(0,o.jsx)(i.Tag,{color:`green`,children:`Default config loaded (All Roles)`}):(0,o.jsx)(i.Tag,{color:`orange`,children:`No config — will create on Save`})]}),extra:(0,o.jsxs)(i.Space,{wrap:!0,children:[d&&(0,o.jsx)(i.Popconfirm,{title:`Delete this entire config?`,onConfirm:V,okText:`Delete`,okType:`danger`,children:(0,o.jsx)(i.Button,{danger:!0,size:`small`,icon:(0,o.jsx)(a.DeleteOutlined,{}),children:`Delete Config`})}),(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>W(),children:`New action`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:y,disabled:!h,onClick:B,children:`Save Config`})]}),children:[(0,o.jsxs)(`div`,{className:`admin-config-table-tools`,children:[(0,o.jsx)(i.Input,{allowClear:!0,prefix:(0,o.jsx)(a.SearchOutlined,{}),placeholder:`Search actions`,value:N,onChange:e=>P(e.target.value)}),h&&(0,o.jsx)(n_,{type:`warning`,children:`Unsaved changes`})]}),(0,o.jsx)(i.Spin,{spinning:_,children:(0,o.jsx)(i.Table,{dataSource:q.map((e,t)=>({...e,_actionIndex:p.indexOf(e),_rowKey:e.key||e._localKey||t})),rowKey:`_rowKey`,columns:J,pagination:!1,size:`small`,className:`fg-table admin-config-table`,scroll:{x:820},locale:{emptyText:`No actions configured. Click "Add Action" to start.`},expandable:{rowExpandable:e=>e.actionType===`group`,expandedRowRender:e=>(0,o.jsx)(i.Table,{dataSource:(e.children??[]).map((e,t)=>({...e,_rowKey:e.key||e._localKey||t})),rowKey:`_rowKey`,columns:ie(e.key),pagination:!1,size:`small`,className:`fg-table admin-config-table`,locale:{emptyText:`No child actions yet. Use the + button on this row to add one (e.g. Tag To Job, Send Mail, Add Notes).`}})}})})]}),(0,o.jsx)(u_,{open:C,initial:T,isChild:!!H,popupForms:D,templateOptions:k,permissionModules:F,permissionActions:L,onClose:()=>w(!1),onSave:ee}),(0,o.jsx)(Rh,{open:!!j,scope:`rowActions`,action:j?.action,title:j?.title,description:j?.description,confirmLabel:j?.confirmLabel,danger:j?.danger,onCancel:()=>M(null),onVerified:re})]})}var{Text:f_,Title:p_}=i.Typography,m_=[{value:`eq`,label:`equals`},{value:`ne`,label:`not equals`},{value:`isEmpty`,label:`is empty`},{value:`notEmpty`,label:`is not empty`},{value:`contains`,label:`contains`},{value:`fieldEq`,label:`field = field`},{value:`scope`,label:`view scope`}],h_=[{value:`myJobs`,label:`My Jobs`},{value:`allJobs`,label:`All Jobs`}],g_=[`eq`,`ne`,`contains`],__=`scope`,v_=`fieldEq`,y_=[{name:`Fulfilled jobs — block sourcing`,description:`When a job status is fulfilled and has no recruiters, hide source & quick-submit buttons.`,conditions:[{field:`jobRecruitmentStatus`,operator:`eq`,value:`fulfilled`,compareField:``},{field:`recruiters`,operator:`isEmpty`,value:``,compareField:``}],blockedActions:[`sourceCandidates`,`quickSubmit`],isActive:!0},{name:`All Jobs scope — restrict actions`,description:`When viewing All Jobs, hide sourcing, quick-submit, change-status, notes and share.`,conditions:[{field:``,operator:`scope`,value:`allJobs`,compareField:``}],blockedActions:[`sourceCandidates`,`quickSubmit`,`changeStatus`,`addNotes`,`share`],isActive:!0},{name:`Target submission reached — block sourcing`,description:`When targetSubmission equals submissionCount, no more sourcing is needed.`,conditions:[{field:`targetSubmission`,operator:`fieldEq`,value:``,compareField:`submissionCount`}],blockedActions:[`sourceCandidates`,`quickSubmit`],isActive:!0}],b_=()=>({field:``,operator:`eq`,value:``,compareField:``}),x_=()=>({name:``,description:``,conditions:[b_()],blockedActions:[],disabledActions:[],isActive:!0});function S_(e){return m_.find(t=>t.value===e)?.label??e}function C_(e){return e.operator===__?`scope = ${e.value}`:e.operator===v_?`${e.field} = field:${e.compareField}`:[`isEmpty`,`notEmpty`].includes(e.operator)?`${e.field} ${S_(e.operator)}`:`${e.field} ${S_(e.operator)} "${e.value}"`}function w_(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(``),[d,f]=(0,r.useState)([]),[p,m]=(0,r.useState)(!1),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)(null),[y,b]=(0,r.useState)(x_()),[x,S]=(0,r.useState)(!1),[C,w]=(0,r.useState)(!1),[T,E]=(0,r.useState)([]),[D,O]=(0,r.useState)([]);(0,r.useEffect)(()=>{let t=!1;return queueMicrotask(()=>{c(!0),e.bt().then(e=>{if(t)return;let r=Eh(e);n(r),u(e=>r.some(t=>t.value===e)?e:r[0]?.value??``)}).catch(()=>{t||(n([]),u(``))}).finally(()=>{t||c(!1)})}),()=>{t=!0}},[]);function k(t){m(!0),e.zt(t).then(e=>f(Array.isArray(e)?e:[])).catch(()=>f([])).finally(()=>m(!1))}function A(t){e.Ut(t).then(e=>{E((Array.isArray(e)?e:[]).map(e=>({value:e.field??e.fieldKey??e.key??e.name,label:`${e.label??e.fieldName??e.name} (${e.field??e.fieldKey??e.key??e.name})`})).filter(e=>e.value))}).catch(()=>E([]))}function j(t){e.Yt(t).then(e=>{let t=new Set;(Array.isArray(e)?e:[]).forEach(e=>{(e.rowActions??[]).forEach(e=>{e.key&&t.add(e.key)})}),O([...t].map(e=>({value:e,label:e})))}).catch(()=>O([]))}(0,r.useEffect)(()=>{queueMicrotask(()=>{if(!l){f([]),E([]),O([]);return}k(l),A(l),j(l)})},[l]);function M(){v(null),b(x_()),g(!0)}function N(e){v(e),b({name:e.name??``,description:e.description??``,conditions:e.conditions?.length?e.conditions.map(e=>({...e})):[b_()],blockedActions:e.blockedActions??[],disabledActions:e.disabledActions??[],isActive:e.isActive??!0}),g(!0)}async function P(){if(y.name.trim()){S(!0);try{_?(await e.fn(_.id,y),i.message.success(`Rule updated`)):(await e.ct({...y,module:l}),i.message.success(`Rule created`)),g(!1),k(l)}catch(e){i.message.error(e.message)}finally{S(!1)}}}async function F(t){try{await e.gt(t.id),i.message.success(`Rule deleted`)}catch(e){i.message.error(e.message)}k(l)}async function I(){w(!0);try{for(let t of y_)await e.ct({...t,module:l});i.message.success(`Default job rules created`),k(l)}catch(e){i.message.error(e.message)}finally{w(!1)}}function L(e,t){b(n=>({...n,conditions:n.conditions.map((n,r)=>r===e?{...n,...t}:n)}))}function R(){b(e=>({...e,conditions:[...e.conditions,b_()]}))}function z(e){b(t=>({...t,conditions:t.conditions.filter((t,n)=>n!==e)}))}return(0,o.jsxs)(`div`,{style:{padding:`24px 0`},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:12,marginBottom:8,flexWrap:`wrap`},children:[(0,o.jsx)(p_,{level:5,style:{margin:0},children:`Action Rules`}),(0,o.jsx)(i.Select,{options:t,value:l,loading:s,placeholder:`Select module`,onChange:u,style:{width:200}}),(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.PlusOutlined,{}),type:`primary`,disabled:!l,onClick:M,children:`Add Rule`}),(l===`job`||l===`jobs`)&&(0,o.jsx)(i.Tooltip,{title:`Create the 3 standard job rules that replace the hardcoded backend logic`,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ThunderboltOutlined,{}),loading:C,onClick:I,children:`Seed Job Defaults`})})]}),(0,o.jsx)(i.Alert,{type:`info`,showIcon:!0,style:{marginBottom:16,fontSize:12},message:(0,o.jsxs)(`span`,{children:[`Rules are evaluated `,(0,o.jsx)(`b`,{children:`per row`}),` in the list view using the record's own field values. When `,(0,o.jsx)(`b`,{children:`all conditions`}),` of a rule match, the listed action buttons are hidden for that row. The `,(0,o.jsx)(`b`,{children:`key`}),` of each blocked action must match what is set in `,(0,o.jsx)(`b`,{children:`Row Actions`}),` config.`]})}),(0,o.jsx)(i.Table,{columns:[{title:`Rule Name`,dataIndex:`name`,key:`name`,width:200,render:(e,t)=>(0,o.jsxs)(`div`,{children:[(0,o.jsx)(f_,{strong:!0,children:e}),t.description?(0,o.jsx)(`div`,{children:(0,o.jsx)(f_,{type:`secondary`,style:{fontSize:11},children:t.description})}):null]})},{title:`Conditions (ALL must match)`,key:`conditions`,render:(e,t)=>(0,o.jsx)(i.Space,{size:4,direction:`vertical`,children:(t.conditions??[]).map((e,t)=>(0,o.jsx)(i.Tag,{style:{fontFamily:`monospace`,fontSize:11,margin:0},children:C_(e)},t))})},{title:`Blocked Row Actions`,key:`blockedActions`,render:(e,t)=>(0,o.jsx)(i.Space,{size:4,wrap:!0,children:(t.blockedActions??[]).map(e=>(0,o.jsx)(i.Tag,{color:`volcano`,children:e},e))})},{title:`Disabled Row Actions`,key:`disabledActions`,render:(e,t)=>(0,o.jsx)(i.Space,{size:4,wrap:!0,children:(t.disabledActions??[]).map(e=>(0,o.jsx)(i.Tag,{color:`gold`,children:e},e))})},{title:`Active`,dataIndex:`isActive`,key:`isActive`,width:70,render:e=>(0,o.jsx)(i.Tag,{color:e?`green`:`default`,children:e?`On`:`Off`})},{title:``,key:`act`,width:80,render:(e,t)=>(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.EditOutlined,{}),size:`small`,type:`text`,onClick:()=>N(t)})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this rule?`,onConfirm:()=>F(t),children:(0,o.jsx)(i.Tooltip,{title:`Delete`,children:(0,o.jsx)(i.Button,{danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),size:`small`,type:`text`})})})]})}],dataSource:d,loading:p,rowKey:`id`,size:`small`,pagination:!1,locale:{emptyText:l?`No rules yet. Click "Add Rule" to get started.`:`No modules found. Configure modules first.`}}),(0,o.jsx)(i.Drawer,{open:h,title:_?`Edit: ${_.name}`:`Add Action Rule`,width:620,onClose:()=>g(!1),footer:(0,o.jsxs)(i.Space,{style:{float:`right`},children:[(0,o.jsx)(i.Button,{onClick:()=>g(!1),children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:x,onClick:P,children:`Save Rule`})]}),children:(0,o.jsxs)(i.Form,{layout:`vertical`,children:[(0,o.jsx)(i.Form.Item,{label:`Rule Name`,required:!0,children:(0,o.jsx)(i.Input,{value:y.name,placeholder:`e.g. Fulfilled jobs — block sourcing`,onChange:e=>b(t=>({...t,name:e.target.value}))})}),(0,o.jsx)(i.Form.Item,{label:`Description`,children:(0,o.jsx)(i.Input.TextArea,{rows:2,value:y.description,placeholder:`Explain when this rule applies`,onChange:e=>b(t=>({...t,description:e.target.value}))})}),(0,o.jsx)(i.Form.Item,{label:`Active`,children:(0,o.jsx)(i.Switch,{checked:y.isActive,onChange:e=>b(t=>({...t,isActive:e}))})}),(0,o.jsxs)(i.Divider,{orientation:`left`,orientationMargin:0,style:{fontSize:13},children:[`Conditions `,(0,o.jsx)(f_,{type:`secondary`,style:{fontSize:12},children:`(ALL must match for the rule to fire)`})]}),y.conditions.map((e,t)=>(0,o.jsxs)(`div`,{style:{background:`#fafafa`,border:`1px solid #f0f0f0`,borderRadius:6,padding:`10px 12px`,marginBottom:8},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8,alignItems:`flex-start`,flexWrap:`wrap`},children:[(0,o.jsx)(i.Form.Item,{label:`Operator`,style:{marginBottom:0,minWidth:140},children:(0,o.jsx)(i.Select,{options:m_,value:e.operator,style:{width:140},onChange:e=>L(t,{operator:e,value:``,compareField:``})})}),e.operator!==__&&(0,o.jsxs)(i.Form.Item,{label:`Record Field`,style:{marginBottom:0,flex:1,minWidth:180},children:[(0,o.jsx)(i.Select,{showSearch:!0,allowClear:!0,mode:`tags`,maxCount:1,value:e.field?[e.field]:[],options:T,style:{width:`100%`},placeholder:`Select or type field name`,onChange:e=>L(t,{field:e[e.length-1]??``}),filterOption:(e,t)=>(t?.label??t?.value??``).toLowerCase().includes(e.toLowerCase())}),(0,o.jsxs)(f_,{type:`secondary`,style:{fontSize:11},children:[`Field from the record (e.g. `,(0,o.jsx)(`code`,{children:`jobRecruitmentStatus`}),`, `,(0,o.jsx)(`code`,{children:`recruiters`}),`)`]})]}),g_.includes(e.operator)&&(0,o.jsx)(i.Form.Item,{label:`Value`,style:{marginBottom:0,minWidth:140},children:(0,o.jsx)(i.Input,{value:e.value,placeholder:`e.g. "fulfilled"`,style:{width:150},onChange:e=>L(t,{value:e.target.value})})}),e.operator===__&&(0,o.jsxs)(i.Form.Item,{label:`Scope Value`,style:{marginBottom:0,minWidth:140},children:[(0,o.jsx)(i.Select,{options:h_,value:e.value||void 0,style:{width:150},placeholder:`Select scope`,onChange:e=>L(t,{value:e})}),(0,o.jsx)(f_,{type:`secondary`,style:{fontSize:11},children:`Current view tab (myJobs / allJobs)`})]}),e.operator===v_&&(0,o.jsxs)(i.Form.Item,{label:`Compare To Field`,style:{marginBottom:0,minWidth:160},children:[(0,o.jsx)(i.Select,{showSearch:!0,allowClear:!0,mode:`tags`,maxCount:1,value:e.compareField?[e.compareField]:[],options:T,style:{width:170},placeholder:`Select or type field`,onChange:e=>L(t,{compareField:e[e.length-1]??``}),filterOption:(e,t)=>(t?.label??t?.value??``).toLowerCase().includes(e.toLowerCase())}),(0,o.jsxs)(f_,{type:`secondary`,style:{fontSize:11},children:[`e.g. `,(0,o.jsx)(`code`,{children:`submissionCount`})]})]}),(0,o.jsx)(`div`,{style:{paddingTop:22},children:(0,o.jsx)(i.Button,{danger:!0,disabled:y.conditions.length<=1,icon:(0,o.jsx)(a.DeleteOutlined,{}),size:`small`,type:`text`,onClick:()=>z(t)})})]}),(0,o.jsx)(`div`,{style:{marginTop:6},children:(0,o.jsxs)(f_,{type:`secondary`,style:{fontSize:11},children:[`Preview: `,(0,o.jsx)(`code`,{style:{color:`#1677ff`},children:C_(e)})]})})]},t)),(0,o.jsx)(i.Button,{size:`small`,style:{marginBottom:16},onClick:R,children:`+ Add Condition`}),(0,o.jsxs)(i.Divider,{orientation:`left`,orientationMargin:0,style:{fontSize:13},children:[`Blocked Row Actions`,(0,o.jsx)(f_,{type:`secondary`,style:{fontSize:12,marginLeft:8},children:`(hidden when this rule fires)`})]}),(0,o.jsxs)(i.Form.Item,{children:[(0,o.jsx)(i.Select,{mode:`tags`,style:{width:`100%`},value:y.blockedActions,options:D,placeholder:`Select or type action key (e.g. sourceCandidates, quickSubmit)`,onChange:e=>b(t=>({...t,blockedActions:e})),filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase())}),(0,o.jsxs)(f_,{type:`secondary`,style:{fontSize:11},children:[`Must match the `,(0,o.jsx)(`b`,{children:`key`}),` of a Row Action (configured in Admin → Row Actions). Common job keys: `,(0,o.jsx)(`code`,{children:`sourceCandidates`}),`, `,(0,o.jsx)(`code`,{children:`quickSubmit`}),`,`,` `,(0,o.jsx)(`code`,{children:`changeStatus`}),`, `,(0,o.jsx)(`code`,{children:`share`}),`, `,(0,o.jsx)(`code`,{children:`addNotes`}),`, `,(0,o.jsx)(`code`,{children:`assign`}),`.`]})]}),(0,o.jsxs)(i.Divider,{orientation:`left`,orientationMargin:0,style:{fontSize:13},children:[`Disabled Row Actions`,(0,o.jsx)(f_,{type:`secondary`,style:{fontSize:12,marginLeft:8},children:`(stay visible, greyed out, when this rule fires)`})]}),(0,o.jsxs)(i.Form.Item,{children:[(0,o.jsx)(i.Select,{mode:`tags`,style:{width:`100%`},value:y.disabledActions,options:D,placeholder:`Select or type action key (e.g. approveSubmission, rejectSubmission)`,onChange:e=>b(t=>({...t,disabledActions:e})),filterOption:(e,t)=>(t?.value??``).toLowerCase().includes(e.toLowerCase())}),(0,o.jsxs)(f_,{type:`secondary`,style:{fontSize:11},children:[`Unlike Blocked, a disabled action keeps its normal spot and label — it's just unclickable, with this rule's `,(0,o.jsx)(`b`,{children:`Description`}),` shown as the reason on hover. Use this when the user should still see the action exists (e.g. Approve/Reject while awaiting a resubmission) instead of it disappearing.`]})]})]})})]})}function T_(){return(0,o.jsx)(i.Tabs,{defaultActiveKey:`actions`,className:`admin-config-tabs`,destroyOnHidden:!1,items:[{key:`actions`,label:`Action library`,icon:(0,o.jsx)(a.ThunderboltOutlined,{}),children:(0,o.jsx)(d_,{})},{key:`rules`,label:`Visibility rules`,icon:(0,o.jsx)(a.ApartmentOutlined,{}),children:(0,o.jsx)(w_,{})}]})}var{Text:E_}=i.Typography,D_={name:``,module:``,action:``,clientId:``,description:``,toMail:[],ccMail:[],bccMail:[],subject:``,body:``,isActive:!0},O_=e=>e?._id??e?.id;function k_(...e){let t=new Set;return e.forEach(e=>{let n=/{{\.([\w.]+)}}/g,r;for(;(r=n.exec(String(e??``)))!==null;)t.add(r[1])}),t}function A_({open:t,templateId:n,modules:a,clients:s,onClose:c,onSaved:l}){let[u]=i.Form.useForm(),[d,f]=(0,r.useState)(``),[p,m]=(0,r.useState)(!1),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)([]),[y,b]=(0,r.useState)([]);async function x(t){if(!t){v([]),b([]);return}let[n,r]=await Promise.all([e.Yt(t).catch(()=>[]),e.Ut(t).catch(()=>[])]),i=new Map;n.forEach(e=>(e.rowActions??[]).forEach(e=>{e.key&&i.set(e.key,e.label||e.key)})),v([...i].map(([e,t])=>({value:e,label:t}))),b(r.map(e=>({key:e.value??e.field??e.fieldKey??e.key??e.name,value:e.path??e.value??e.field??e.fieldKey??e.key??e.name,label:e.label??e.fieldName??e.name??e.value})).filter(e=>e.key))}(0,r.useEffect)(()=>{if(!t)return;let e=!1;return queueMicrotask(()=>{g(!0),(n?Ug(n):Promise.resolve(D_)).then(t=>{if(e)return;let n={...D_,...t,clientId:t?.clientIdStr||(typeof t?.clientId==`string`?t.clientId:``)};u.setFieldsValue(n),f(n.body||``),x(n.module)}).catch(e=>i.message.error(e?.message||`Could not load template`)).finally(()=>{e||g(!1)})}),()=>{e=!0}},[u,t,n]);function S(e){let t=`{{.${e.key}}}`;f(e=>`${e}${e?` `:``}${t}`),i.message.success(`Inserted ${t}`)}async function C(){try{let e=await u.validateFields();if(!d.trim()){i.message.error(`Message body is required`);return}m(!0);let t=k_(e.subject,d),r=y.filter(e=>t.has(e.key)).map(e=>({key:e.key,value:e.value})),a={...e,action:Array.isArray(e.action)?e.action.at(-1):e.action,body:d,placeholders:r.length?[{moduleName:e.module,holders:r}]:[]};a.clientId||delete a.clientId,n?await Gg(n,a):await Wg(a),i.message.success(n?`Template updated`:`Template created`),l()}catch(e){e?.errorFields||i.message.error(e?.message||`Could not save template`)}finally{m(!1)}}return(0,o.jsx)(i.Drawer,{open:t,onClose:c,width:`min(920px, 96vw)`,title:n?`Edit email template`:`New email template`,destroyOnClose:!0,extra:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{onClick:c,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:p,onClick:C,children:n?`Update`:`Create`})]}),children:(0,o.jsxs)(i.Form,{form:u,layout:`vertical`,initialValues:D_,disabled:h,className:`template-editor-form`,children:[(0,o.jsxs)(`div`,{className:`template-editor-grid`,children:[(0,o.jsx)(i.Form.Item,{name:`name`,label:`Template name`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`Candidate introduction`})}),(0,o.jsx)(i.Form.Item,{name:`module`,label:`Module`,rules:[{required:!0}],children:(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,options:a,onChange:e=>{u.setFieldValue(`action`,``),x(e)}})}),(0,o.jsx)(i.Form.Item,{name:`action`,label:`Action`,rules:[{required:!0}],tooltip:`Actions come from this module's DB-configured Row Actions.`,children:(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,options:_,placeholder:`Select configured action`})}),(0,o.jsx)(i.Form.Item,{name:`clientId`,label:`Client scope (optional)`,children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,optionFilterProp:`label`,options:s,placeholder:`Available to every client`})})]}),(0,o.jsx)(i.Form.Item,{name:`description`,label:`Description`,children:(0,o.jsx)(i.Input.TextArea,{rows:2})}),(0,o.jsxs)(`div`,{className:`template-editor-grid template-editor-grid--three`,children:[(0,o.jsx)(i.Form.Item,{name:`toMail`,label:`Default To`,children:(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`]})}),(0,o.jsx)(i.Form.Item,{name:`ccMail`,label:`Default Cc`,children:(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`]})}),(0,o.jsx)(i.Form.Item,{name:`bccMail`,label:`Default Bcc`,children:(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`]})})]}),(0,o.jsx)(i.Form.Item,{name:`subject`,label:`Subject`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`Email subject`})}),(0,o.jsx)(i.Form.Item,{label:`Message`,required:!0,children:(0,o.jsx)(e.kn,{value:d,onChange:f,placeholder:`Write the reusable email body…`})}),(0,o.jsxs)(`div`,{className:`template-placeholder-panel`,children:[(0,o.jsx)(E_,{strong:!0,children:`Module placeholders`}),(0,o.jsx)(E_,{type:`secondary`,children:`Click to append a DB field token to the message.`}),(0,o.jsxs)(`div`,{className:`template-placeholder-list`,children:[y.map(e=>(0,o.jsx)(i.Tag,{color:`blue`,onClick:()=>S(e),children:`{{.${e.key}}}`},e.key)),!y.length&&(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`No module fields available`})]})]}),(0,o.jsx)(i.Form.Item,{name:`isActive`,label:`Available in mail composer`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})})]})})}function j_(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(0),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(``),[p,m]=(0,r.useState)(1),[h,g]=(0,r.useState)(20),[_,v]=(0,r.useState)([]),[y,b]=(0,r.useState)([]),[x,S]=(0,r.useState)(null),[C,w]=(0,r.useState)(!1),T=(0,r.useMemo)(()=>_.map(e=>({value:e.key??e.module??e.value,label:e.label??e.name??e.key??e.module??e.value})).filter(e=>e.value),[_]);function E(e=p,t=h,r=d){u(!0),Hg({offset:(e-1)*t,limit:t,search:r}).then(({items:e,totalCount:t})=>{n(e),c(t)}).catch(e=>i.message.error(e?.message||`Could not load templates`)).finally(()=>u(!1))}(0,r.useEffect)(()=>{queueMicrotask(()=>{E(1,h,``)})},[]),(0,r.useEffect)(()=>{Promise.all([e.kt(),e.xt({limit:200})]).then(([e,t])=>{v(Eh(e).map(({value:e,label:t})=>({key:e,label:t}))),b(t)}).catch(()=>{})},[]);async function D(e,t){let r=O_(e);try{await Gg(r,{...e,isActive:t}),n(e=>e.map(e=>O_(e)===r?{...e,isActive:t}:e))}catch(e){i.message.error(e?.message||`Could not update status`)}}async function O(e){try{await Kg(e),i.message.success(`Template deleted`),E(1),m(1)}catch(e){i.message.error(e?.message||`Could not delete template`)}}let k=[{title:`Template`,key:`template`,width:300,ellipsis:!0,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell templates-primary-cell`,children:[(0,o.jsx)(E_,{strong:!0,ellipsis:{tooltip:t.name},children:t.name}),(0,o.jsx)(E_,{type:`secondary`,ellipsis:{tooltip:t.description||t.subject},children:t.description||t.subject||`No description`})]})},{title:`Module`,dataIndex:`module`,key:`module`,width:140,ellipsis:!0,responsive:[`sm`],render:e=>e?(0,o.jsx)(i.Tag,{color:`blue`,children:e}):`—`},{title:`Action`,dataIndex:`action`,key:`action`,width:180,ellipsis:!0,responsive:[`md`],render:e=>e?(0,o.jsx)(E_,{code:!0,ellipsis:{tooltip:e},children:e}):`—`},{title:`Recipients`,key:`recipients`,width:130,responsive:[`lg`],render:(e,t)=>`${(t.toMail?.length??0)+(t.ccMail?.length??0)+(t.bccMail?.length??0)} defaults`},{title:`Active`,dataIndex:`isActive`,key:`active`,width:80,render:(e,t)=>(0,o.jsx)(i.Switch,{size:`small`,checked:e,onChange:e=>D(t,e)})},{title:``,key:`actions`,width:84,fixed:`right`,render:(e,t)=>(0,o.jsxs)(i.Space,{size:2,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>{S(O_(t)),w(!0)}})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this template?`,onConfirm:()=>O(O_(t)),children:(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})]})}],A=y.map(e=>({value:e._id??e.id,label:e.clientName??e.name??e._id})).filter(e=>e.value);return(0,o.jsxs)(`div`,{className:`fg-section admin-config-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.MailOutlined,{}),title:`Email templates`,extra:(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{S(null),w(!0)},children:`New template`}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)(E_,{type:`secondary`,children:`Create reusable, module-aware email content. Modules, actions and placeholders are read from DB configuration.`})]}),(0,o.jsxs)(Z,{title:`${s} template${s===1?``:`s`}`,extra:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:()=>E(),children:`Reload`}),children:[(0,o.jsx)(`div`,{className:`admin-config-table-tools`,children:(0,o.jsx)(i.Input,{allowClear:!0,prefix:(0,o.jsx)(a.SearchOutlined,{}),placeholder:`Search templates`,value:d,onChange:e=>{let t=e.target.value;f(t),m(1),E(1,h,t)}})}),(0,o.jsx)(`div`,{className:`templates-table-viewport`,children:(0,o.jsx)(i.Table,{rowKey:O_,columns:k,dataSource:t,loading:l,className:`fg-table`,size:`small`,tableLayout:`fixed`,sticky:!0,scroll:{x:914,y:`calc(100vh - 410px)`},pagination:{current:p,pageSize:h,total:s,showSizeChanger:!0,responsive:!0,onChange:(e,t)=>{m(e),g(t),E(e,t)}}})})]}),(0,o.jsx)(A_,{open:C,templateId:x,modules:T,clients:A,onClose:()=>w(!1),onSaved:()=>{w(!1),E()}})]})}function M_({open:t,signatureId:n,onClose:a,onSaved:s}){let[c,l]=(0,r.useState)(``),[u,d]=(0,r.useState)(``),[f,p]=(0,r.useState)(!1);(0,r.useEffect)(()=>{t&&queueMicrotask(()=>{if(!n){l(``),d(``);return}Xg(n).then(e=>{l(e?.signatureName??``),d(e?.signature??``)}).catch(()=>i.message.error(`Could not load signature`))})},[t,n]);async function m(){if(!c.trim())return i.message.error(`Signature name is required`);if(!u.trim())return i.message.error(`Signature content is required`);p(!0);try{let e={signatureId:n,signatureName:c,signature:u,signatureLogoPath:``,placeHolder:[]};n?await Qg(e):await Zg(e),i.message.success(n?`Signature updated`:`Signature created`),s()}catch(e){i.message.error(e?.message||`Could not save signature`)}finally{p(!1)}}return(0,o.jsx)(i.Drawer,{open:t,onClose:a,width:`min(760px, 96vw)`,title:n?`Edit signature`:`New signature`,destroyOnClose:!0,extra:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{onClick:a,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:f,onClick:m,children:n?`Update`:`Create`})]}),children:(0,o.jsxs)(i.Form,{layout:`vertical`,children:[(0,o.jsx)(i.Form.Item,{label:`Signature name`,required:!0,children:(0,o.jsx)(i.Input,{value:c,onChange:e=>l(e.target.value)})}),(0,o.jsx)(i.Form.Item,{label:`Signature content`,required:!0,children:(0,o.jsx)(e.kn,{value:u,onChange:d,placeholder:`Create the reusable signature…`})})]})})}function N_(){let[e,t]=(0,r.useState)([]),[n,s]=(0,r.useState)(0),[c,l]=(0,r.useState)(!1),[u,d]=(0,r.useState)(``),[f,p]=(0,r.useState)(1),[m,h]=(0,r.useState)(20),[g,_]=(0,r.useState)(!1),[v,y]=(0,r.useState)(null);function b(e=f,n=m,r=u){l(!0),Yg({offset:(e-1)*n,limit:n,search:r}).then(({items:e,totalCount:n})=>{t(e),s(n)}).catch(()=>i.message.error(`Could not load signatures`)).finally(()=>l(!1))}(0,r.useEffect)(()=>{queueMicrotask(()=>{b(1,m,``)})},[]);async function x(e,n){try{await e_(e.signatureId,n),t(t=>t.map(t=>t.signatureId===e.signatureId?{...t,isActive:n}:t))}catch{i.message.error(`Could not update status`)}}async function S(e){try{await $g(e),i.message.success(`Signature deleted`),p(1),b(1)}catch{i.message.error(`Could not delete signature`)}}return(0,o.jsxs)(`div`,{className:`fg-section admin-config-section`,children:[(0,o.jsx)(Z,{icon:(0,o.jsx)(a.MailOutlined,{}),title:`Signature templates`,extra:(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{y(null),_(!0)},children:`New signature`}),children:(0,o.jsx)(E_,{type:`secondary`,children:`Existing company and user signatures from the shared DB.`})}),(0,o.jsxs)(Z,{title:`${n} signature${n===1?``:`s`}`,children:[(0,o.jsx)(`div`,{className:`admin-config-table-tools`,children:(0,o.jsx)(i.Input,{allowClear:!0,prefix:(0,o.jsx)(a.SearchOutlined,{}),value:u,placeholder:`Search signatures`,onChange:e=>{d(e.target.value),p(1),b(1,m,e.target.value)}})}),(0,o.jsx)(`div`,{className:`templates-table-viewport`,children:(0,o.jsx)(i.Table,{rowKey:`signatureId`,dataSource:e,columns:[{title:`Signature`,dataIndex:`templateName`,key:`name`,width:300,ellipsis:!0,render:e=>(0,o.jsx)(E_,{strong:!0,ellipsis:{tooltip:e},children:e||`Untitled signature`})},{title:`Created`,dataIndex:`createdDt`,key:`created`,width:150,responsive:[`md`],render:e=>e?new Date(e).toLocaleDateString():`—`},{title:`Active`,dataIndex:`isActive`,key:`active`,width:80,render:(e,t)=>(0,o.jsx)(i.Switch,{size:`small`,checked:e,onChange:e=>x(t,e)})},{title:``,key:`actions`,width:84,fixed:`right`,render:(e,t)=>(0,o.jsxs)(i.Space,{size:2,children:[(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>{y(t.signatureId),_(!0)}}),(0,o.jsx)(i.Popconfirm,{title:`Delete this signature?`,onConfirm:()=>S(t.signatureId),children:(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})]})}],loading:c,className:`fg-table`,size:`small`,tableLayout:`fixed`,sticky:!0,scroll:{x:614,y:`calc(100vh - 410px)`},pagination:{current:f,pageSize:m,total:n,responsive:!0,onChange:(e,t)=>{p(e),h(t),b(e,t)}}})})]}),(0,o.jsx)(M_,{open:g,signatureId:v,onClose:()=>_(!1),onSaved:()=>{_(!1),b()}})]})}function P_(){return(0,o.jsx)(i.Tabs,{defaultActiveKey:`email`,className:`admin-config-tabs`,items:[{key:`email`,label:`Email templates`,children:(0,o.jsx)(j_,{})},{key:`signature`,label:`Signatures`,children:(0,o.jsx)(N_,{})}]})}var{Text:F_}=i.Typography,I_={serviceKey:``,label:``,baseUrl:``,authHeader:``,authValue:``,enabled:!0};function L_({open:t,service:n,onClose:a,onSaved:s}){let[c]=i.Form.useForm(),[l,u]=(0,r.useState)(!1);(0,r.useEffect)(()=>{t&&c.setFieldsValue({...I_,...n,authValue:``})},[t,n,c]);async function d(){try{let t=await c.validateFields();u(!0),await e.en(t),i.message.success(`AI service saved`),s()}catch(e){e?.errorFields||i.message.error(e?.message||`Could not save AI service`)}finally{u(!1)}}return(0,o.jsx)(i.Drawer,{open:t,onClose:a,width:`min(560px, 96vw)`,title:n?`Edit AI service`:`New AI service`,destroyOnClose:!0,extra:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{onClick:a,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:l,onClick:d,children:`Save`})]}),children:(0,o.jsxs)(i.Form,{form:c,layout:`vertical`,initialValues:I_,children:[(0,o.jsx)(i.Form.Item,{name:`serviceKey`,label:`Service Key`,rules:[{required:!0,message:`Service key is required`}],tooltip:`Referenced by an AI Action's Service Key on any form field (e.g. pyOps).`,children:(0,o.jsx)(i.Input,{placeholder:`pyOps`,disabled:!!n,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`label`,label:`Label`,children:(0,o.jsx)(i.Input,{placeholder:`Resume/JD Parsing Service`})}),(0,o.jsx)(i.Form.Item,{name:`baseUrl`,label:`Base URL`,rules:[{required:!0,message:`Base URL is required`}],children:(0,o.jsx)(i.Input,{placeholder:`https://ai.example.com`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`authHeader`,label:`Auth Header (optional)`,children:(0,o.jsx)(i.Input,{placeholder:`x-api-key`,className:`fg-mono-input`})}),(0,o.jsx)(i.Form.Item,{name:`authValue`,label:`Auth Value`,tooltip:`Write-only — leave blank to keep the currently saved value.`,children:(0,o.jsx)(i.Input.Password,{placeholder:n?`Unchanged`:``})}),(0,o.jsx)(i.Form.Item,{name:`enabled`,label:`Enabled`,valuePropName:`checked`,children:(0,o.jsx)(i.Switch,{})})]})})}function R_(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null);function p(){c(!0),e.Ct().then(e=>n(Array.isArray(e)?e:[])).catch(e=>i.message.error(e?.message||`Could not load AI services`)).finally(()=>c(!1))}(0,r.useEffect)(()=>{queueMicrotask(()=>{p()})},[]);async function m(t,r){try{await e.en({...t,enabled:r}),n(e=>e.map(e=>e.serviceKey===t.serviceKey?{...e,enabled:r}:e))}catch(e){i.message.error(e?.message||`Could not update AI service`)}}async function h(t){try{await e.ft(t),i.message.success(`AI service deleted`),p()}catch(e){i.message.error(e?.message||`Could not delete AI service`)}}return(0,o.jsxs)(`div`,{className:`fg-section admin-config-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.ThunderboltOutlined,{}),title:`AI Services`,extra:(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{f(null),u(!0)},children:`New service`}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)(F_,{type:`secondary`,children:`Register the AI/automation backends that admin-configured "AI Actions" (Generate/Parse-style buttons on any form field) call. A field's AI Action names a Service Key here — no URL is ever hardcoded in the app.`})]}),(0,o.jsx)(Z,{title:`${t.length} service${t.length===1?``:`s`}`,extra:(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:p,children:`Reload`}),children:(0,o.jsx)(i.Table,{rowKey:`serviceKey`,columns:[{title:`Service`,key:`service`,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-config-primary-cell`,children:[(0,o.jsx)(F_,{strong:!0,children:t.label||t.serviceKey}),(0,o.jsx)(F_,{type:`secondary`,code:!0,children:t.serviceKey})]})},{title:`Base URL`,dataIndex:`baseUrl`,key:`baseUrl`,ellipsis:!0,render:e=>(0,o.jsx)(F_,{code:!0,ellipsis:{tooltip:e},children:e})},{title:`Auth Header`,dataIndex:`authHeader`,key:`authHeader`,width:140,render:e=>e||`—`},{title:`Enabled`,dataIndex:`enabled`,key:`enabled`,width:90,render:(e,t)=>(0,o.jsx)(i.Switch,{size:`small`,checked:e,onChange:e=>m(t,e)})},{title:``,key:`actions`,width:84,fixed:`right`,render:(e,t)=>(0,o.jsxs)(i.Space,{size:2,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>{f(t),u(!0)}})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this AI service?`,onConfirm:()=>h(t.serviceKey),children:(0,o.jsx)(i.Button,{type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})]})}],dataSource:t,loading:s,className:`fg-table`,size:`small`})}),(0,o.jsx)(L_,{open:l,service:d,onClose:()=>u(!1),onSaved:()=>{u(!1),p()}})]})}var{Text:$}=i.Typography;function z_({rows:e,onChange:t,keyPlaceholder:n,valuePlaceholder:r}){let s=(n,r)=>t(e.map((e,t)=>t===n?{...e,...r}:e)),c=n=>t(e.filter((e,t)=>t!==n));return(0,o.jsxs)(`div`,{children:[e.map((e,t)=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:6,marginTop:6},children:[(0,o.jsx)(i.Input,{size:`small`,style:{flex:1},placeholder:n,value:e.key,onChange:e=>s(t,{key:e.target.value}),className:`fg-mono-input`}),(0,o.jsx)(`span`,{style:{color:`#94a3b8`,alignSelf:`center`},children:`→`}),(0,o.jsx)(i.Input,{size:`small`,style:{flex:1},placeholder:r,value:e.value,onChange:e=>s(t,{value:e.target.value}),className:`fg-mono-input`}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>c(t)})]},t)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),style:{marginTop:6},onClick:()=>t([...e,{key:``,value:``}]),children:`Add`})]})}function B_({rows:e,onChange:t,keyPlaceholder:n=`field`,valuePlaceholder:r=`literal or {{field.path}}`}){let s=(n,r)=>t(e.map((e,t)=>t===n?{...e,...r}:e)),c=n=>t(e.filter((e,t)=>t!==n));return(0,o.jsxs)(`div`,{children:[e.map((e,t)=>(0,o.jsxs)(`div`,{style:{display:`flex`,gap:6,marginTop:6},children:[(0,o.jsx)(i.Input,{size:`small`,style:{flex:1},placeholder:n,value:e.key,onChange:e=>s(t,{key:e.target.value}),className:`fg-mono-input`}),(0,o.jsx)(i.Input,{size:`small`,style:{flex:1.6},placeholder:r,value:e.value,onChange:e=>s(t,{value:e.target.value}),className:`fg-mono-input`}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>c(t)})]},t)),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),style:{marginTop:6},onClick:()=>t([...e,{key:``,value:``}]),children:`Add`}),(0,o.jsxs)($,{type:`secondary`,style:{fontSize:11,display:`block`,marginTop:4},children:[`Values are read as JSON when possible (true, 123, ["a","b"]) — otherwise kept as literal text. Use `,(0,o.jsx)(`code`,{children:`{{field.path}}`}),` to reference a payload field, or `,(0,o.jsx)(`code`,{children:`{{now}}`}),` for the current time.`]})]})}function V_(e){return Object.entries(e??{}).map(([e,t])=>({key:e,value:String(t??``)}))}function H_(e){let t={};for(let n of e??[])n.key?.trim()&&(t[n.key.trim()]=n.value??``);return t}function U_(e){return Object.entries(e??{}).map(([e,t])=>({key:e,value:typeof t==`string`?t:JSON.stringify(t)}))}function W_(e){let t={};for(let n of e??[]){if(!n.key?.trim())continue;let e=n.value;if(typeof e==`string`){let t=e.trim();if(t!==``)try{e=JSON.parse(t)}catch{}}t[n.key.trim()]=e}return t}function G_({open:e,rule:t,onClose:n,onSave:s}){let[c,l]=(0,r.useState)(()=>({sourceModule:``,sourceIdField:``,required:!1,...t??{},fieldMapRows:V_(t?.fieldMap)})),u=(e,t)=>l(n=>({...n,[e]:t}));return(0,o.jsx)(i.Modal,{open:e,onCancel:n,width:640,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.DatabaseOutlined,{}),` `,t?`Edit Denormalize Rule`:`New Denormalize Rule`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:n,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!c.sourceModule?.trim())return i.message.error(`Source module is required`);if(!c.sourceIdField?.trim())return i.message.error(`Source id field is required`);let{fieldMapRows:e,...t}=c;s({...t,fieldMap:H_(e)})},children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Source module`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`job`,value:c.sourceModule??``,onChange:e=>u(`sourceModule`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Source id field (on THIS payload)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`jobId`,value:c.sourceIdField??``,onChange:e=>u(`sourceIdField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!c.required,onChange:e=>u(`required`,e)}),(0,o.jsx)($,{style:{fontSize:13},children:`Required — block the write if the source record can't be found`})]}),(0,o.jsxs)(`div`,{style:{marginTop:16},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Field map (source field → this payload's field)`}),(0,o.jsx)(z_,{rows:c.fieldMapRows??[],onChange:e=>u(`fieldMapRows`,e),keyPlaceholder:`jobTitle`,valuePlaceholder:`jobTitle`})]})]})})}function K_({open:e,rule:t,onClose:n,onSave:s}){let[c,l]=(0,r.useState)(()=>({sourceField:``,targetField:``,sourceCollection:``,idField:``,idOutputKey:``,stampNow:``,...t??{},fieldMapRows:V_(t?.fieldMap)})),u=(e,t)=>l(n=>({...n,[e]:t}));return(0,o.jsx)(i.Modal,{open:e,onCancel:n,width:640,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.ApartmentOutlined,{}),` `,t?`Edit Array Enrichment`:`New Array Enrichment`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:n,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!c.sourceField?.trim())return i.message.error(`Source field is required`);if(!c.targetField?.trim())return i.message.error(`Target field is required`);let{fieldMapRows:e,...t}=c;s({...t,fieldMap:H_(e)})},children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Source field (array of ids on this payload)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`recruitersData`,value:c.sourceField??``,onChange:e=>u(`sourceField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Target field (enriched array written here)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`recruiters`,value:c.targetField??``,onChange:e=>u(`targetField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Source collection`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`users (default)`,value:c.sourceCollection??``,onChange:e=>u(`sourceCollection`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Id field on that collection`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`legacyUserId (default)`,value:c.idField??``,onChange:e=>u(`idField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{style:{marginTop:16},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Field map (source collection field → output key)`}),(0,o.jsx)(z_,{rows:c.fieldMapRows??[],onChange:e=>u(`fieldMapRows`,e),keyPlaceholder:`firstName`,valuePlaceholder:`recruiterName`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Also write the matched id as`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`recruiterId`,value:c.idOutputKey??``,onChange:e=>u(`idOutputKey`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Also stamp the current time as`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`assignedDateTime`,value:c.stampNow??``,onChange:e=>u(`stampNow`,e.target.value),className:`fg-mono-input`})]})]})]})})}function q_({open:e,rule:t,onClose:n,onSave:s}){let[c,l]=(0,r.useState)(()=>({sourceField:``,targetField:``,uploadedFileNameField:``,uniqueNameField:``,uploadedAtField:``,uploadedByField:``,arrayMode:!1,nameFromField:``,nameOutputField:``,historyField:``,historySnapshotKey:``,historyReason:``,...t??{},staticFieldRows:V_(t?.staticFields),arrayFieldNameRows:V_(t?.arrayFieldNames)})),u=(e,t)=>l(n=>({...n,[e]:t}));return(0,o.jsx)(i.Modal,{open:e,onCancel:n,width:760,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.DatabaseOutlined,{}),` `,t?`Edit File Field Map`:`New File Field Map`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:n,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!c.sourceField?.trim())return i.message.error(`Source field (the multipart upload key) is required`);if(!c.targetField?.trim())return i.message.error(`Target field is required`);let{staticFieldRows:e,arrayFieldNameRows:t,...n}=c;s({...n,staticFields:H_(e),arrayFieldNames:H_(t)})},children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:10},children:`Turns one uploaded file field into a nested object (or array of objects) instead of a flat S3 path string — for schemas like a candidate's resume/passport/visa that store location + filename + who/when as sub-fields.`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Source field (multipart upload key)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume`,value:c.sourceField??``,onChange:e=>u(`sourceField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsxs)($,{type:`secondary`,style:{fontSize:12},children:[`Target field `,c.arrayMode?`(array)`:`(location sub-field)`]}),(0,o.jsx)(i.Input,{size:`small`,placeholder:c.arrayMode?`documents`:`resume.location`,value:c.targetField??``,onChange:e=>u(`targetField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!c.arrayMode,onChange:e=>u(`arrayMode`,e)}),(0,o.jsx)($,{style:{fontSize:13},children:`Array mode — every uploaded file becomes one element (e.g. "documents")`})]}),c.arrayMode?(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Sub-field names (location / uploadedFileName / uniqueName → this schema's names)`}),(0,o.jsx)(z_,{rows:c.arrayFieldNameRows??[],onChange:e=>u(`arrayFieldNameRows`,e),keyPlaceholder:`location`,valuePlaceholder:`documentCopyLocation`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Take each element's display name from (payload array field)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`documents`,value:c.nameFromField??``,onChange:e=>u(`nameFromField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`...reading its field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`documentName`,value:c.nameOutputField??``,onChange:e=>u(`nameOutputField`,e.target.value),className:`fg-mono-input`})]})]})]}):(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Original filename field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume.uploadedFileName`,value:c.uploadedFileNameField??``,onChange:e=>u(`uploadedFileNameField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Unique name field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume.uniqueName`,value:c.uniqueNameField??``,onChange:e=>u(`uniqueNameField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Uploaded-at field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume.uploadedAt`,value:c.uploadedAtField??``,onChange:e=>u(`uploadedAtField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Uploaded-by field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume.uploadedBy`,value:c.uploadedByField??``,onChange:e=>u(`uploadedByField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Static fields (literal value written alongside the upload)`}),(0,o.jsx)(z_,{rows:c.staticFieldRows??[],onChange:e=>u(`staticFieldRows`,e),keyPlaceholder:`resume.source`,valuePlaceholder:`candidate`})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Append a snapshot to (history array field)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resumeHistory`,value:c.historyField??``,onChange:e=>u(`historyField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`...under snapshot key`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`resume`,value:c.historySnapshotKey??``,onChange:e=>u(`historySnapshotKey`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`...with reason`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`Initial resume upload`,value:c.historyReason??``,onChange:e=>u(`historyReason`,e.target.value),className:`fg-mono-input`})]})]})]})]})})}function J_({open:e,rule:t,onClose:n,onSave:s}){let[c,l]=(0,r.useState)(()=>({name:``,seedField:``,direction:`up`,stopRole:0,includeSeed:!0,...t??{}})),u=(e,t)=>l(n=>({...n,[e]:t}));return(0,o.jsx)(i.Modal,{open:e,onCancel:n,width:620,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.ApartmentOutlined,{}),` `,t?`Edit Hierarchy Expansion`:`New Hierarchy Expansion`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:n,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!c.name?.trim())return i.message.error(`Name is required — this is how RelatedUpdates/Notify reference the result`);if(!/^[a-zA-Z0-9_]+$/.test(c.name))return i.message.error(`Name: letters, numbers, underscores only`);s(c)},children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Name`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`chain`,value:c.name??``,onChange:e=>u(`name`,e.target.value),className:`fg-mono-input`}),(0,o.jsxs)($,{type:`secondary`,style:{fontSize:11},children:[`Referenced as `,(0,o.jsx)(`code`,{children:`{{hierarchy.`+(c.name||`name`)+`}}`})]})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Seed field (blank = the caller)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`recruitersData`,value:c.seedField??``,onChange:e=>u(`seedField`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Direction`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:c.direction||`up`,onChange:e=>u(`direction`,e),options:[{value:`up`,label:`Up — toward admin (reporting chain)`},{value:`down`,label:`Down — toward subordinates (team)`}]})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Stop at role id (up only, 0 = walk to the top)`}),(0,o.jsx)(i.InputNumber,{size:`small`,style:{width:`100%`},min:0,value:c.stopRole??0,onChange:e=>u(`stopRole`,e??0),disabled:c.direction!==`up`})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:c.includeSeed!==!1,onChange:e=>u(`includeSeed`,e)}),(0,o.jsx)($,{style:{fontSize:13},children:`Include the seed user(s) themselves in the result`})]})]})})}function Y_({open:e,rule:t,hierarchyNames:n,onClose:s,onSave:c}){let[l,u]=(0,r.useState)(()=>({collectionName:``,targetModule:``,matchField:``,scopeTenant:!1,forEach:``,insertMode:!!(t?.insertIfMissing&&Object.keys(t.insertIfMissing).length),...t??{},extraFilterRows:U_(t?.extraFilter),pullRows:U_(t?.pull),pushRows:U_(t?.push),setRows:U_(t?.set),setIfNonBlankRows:U_(t?.setIfNonBlank),insertIfMissingRows:U_(t?.insertIfMissing)})),d=(e,t)=>u(n=>({...n,[e]:t})),f=()=>{if(!l.collectionName?.trim()&&!l.targetModule?.trim())return i.message.error(`Set either a collection name or a target module`);let{extraFilterRows:e,pullRows:t,pushRows:n,setRows:r,setIfNonBlankRows:a,insertIfMissingRows:o,insertMode:s,...u}=l;c({...u,extraFilter:W_(e),pull:s?{}:W_(t),push:s?{}:W_(n),set:s?{}:W_(r),setIfNonBlank:s?{}:W_(a),insertIfMissing:s?W_(o):{}})},p=(n??[]).map(e=>({value:`hierarchy.${e}`,label:`{{hierarchy.${e}}}`}));return(0,o.jsx)(i.Modal,{open:e,onCancel:s,width:820,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.ThunderboltOutlined,{}),` `,t?`Edit Related Update`:`New Related Update`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:s,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:f,children:`Apply`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsx)(`div`,{className:`fg-form-section-label`,children:`Target`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Collection name (used verbatim)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`hiringProgress`,value:l.collectionName??``,onChange:e=>d(`collectionName`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`— or — target module`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`job`,value:l.targetModule??``,onChange:e=>d(`targetModule`,e.target.value),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Match field (this payload's field holding the target _id)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`jobId (blank for a tenant-scoped board)`,value:l.matchField??``,onChange:e=>d(`matchField`,e.target.value),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Repeat once per element of (ForEach)`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},allowClear:!0,showSearch:!0,placeholder:`e.g. {{hierarchy.chain}}`,value:l.forEach||void 0,onChange:e=>d(`forEach`,e??``),options:p})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:14},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!l.scopeTenant,onChange:e=>d(`scopeTenant`,e)}),(0,o.jsx)($,{style:{fontSize:13},children:`Scope filter to the caller's tenant/business/businessUnit`})]}),(0,o.jsxs)(`div`,{style:{marginTop:14},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Extra filter (merged into the match filter)`}),(0,o.jsx)(B_,{rows:l.extraFilterRows??[],onChange:e=>d(`extraFilterRows`,e),keyPlaceholder:`recruiterId`,valuePlaceholder:`{"$in":"{{hierarchy.chain}}"}`})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:18},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!l.insertMode,onChange:e=>d(`insertMode`,e)}),(0,o.jsx)($,{style:{fontSize:13},children:`Insert-only-if-missing (seed a new document instead of updating an existing one)`})]}),l.insertMode?(0,o.jsxs)(`div`,{style:{marginTop:10},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Document to insert when the filter matches nothing`}),(0,o.jsx)(B_,{rows:l.insertIfMissingRows??[],onChange:e=>d(`insertIfMissingRows`,e),keyPlaceholder:`hiringProgressJobStatus`,valuePlaceholder:`"unread"`})]}):(0,o.jsx)(i.Tabs,{size:`small`,style:{marginTop:10},items:[{key:`pull`,label:`Pull`,children:(0,o.jsx)(B_,{rows:l.pullRows??[],onChange:e=>d(`pullRows`,e),keyPlaceholder:`submitted`,valuePlaceholder:`{"candidateId":"{{applicantId}}"}`})},{key:`push`,label:`Push`,children:(0,o.jsx)(B_,{rows:l.pushRows??[],onChange:e=>d(`pushRows`,e),keyPlaceholder:`submitted`,valuePlaceholder:`{"status":"{{submissionStatus}}"}`})},{key:`set`,label:`Set`,children:(0,o.jsx)(B_,{rows:l.setRows??[],onChange:e=>d(`setRows`,e),keyPlaceholder:`hiringProgressJobStatus`,valuePlaceholder:`"unread"`})},{key:`setIfNonBlank`,label:`Set if non-blank`,children:(0,o.jsx)(B_,{rows:l.setIfNonBlankRows??[],onChange:e=>d(`setIfNonBlankRows`,e),keyPlaceholder:`resume.location`,valuePlaceholder:`{{resume.location}}`})}]})]})})}function X_({icon:e,title:t,description:n,rules:r,columns:s,onAdd:c,onEdit:l,onDelete:u}){return(0,o.jsxs)(Z,{title:(0,o.jsxs)(`span`,{children:[e,` `,t]}),extra:(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:c,children:`Add`}),styles:{body:{paddingTop:8}},children:[n&&(0,o.jsx)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:10},children:n}),(0,o.jsx)(i.Table,{rowKey:(e,t)=>t,dataSource:r,columns:[...s,{title:``,key:`actions`,width:80,align:`right`,render:(e,t,n)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>l(n,t)})}),(0,o.jsx)(i.Tooltip,{title:`Delete`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),onClick:()=>u(n)})})]})}],pagination:!1,size:`small`,className:`fg-table`,locale:{emptyText:(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`Not configured`})}})]})}var Z_={sequence:null,duplicateCheck:null,denormalizations:[],arrayEnrichments:[],fileFieldMaps:[],sanitizeFields:[],defaults:{},hierarchyExpands:[],relatedUpdates:[],notify:null,cacheInvalidate:[]};function Q_(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!0),[l,u]=(0,r.useState)(``),[d,f]=(0,r.useState)({storage:`mongo`}),[p,m]=(0,r.useState)(`mongo`),[h,g]=(0,r.useState)(Z_),[_,v]=(0,r.useState)(!1),[y,b]=(0,r.useState)(!1),[x,S]=(0,r.useState)(``),[C,w]=(0,r.useState)(null),[T,E]=(0,r.useState)(null),[D,O]=(0,r.useState)(null),[k,A]=(0,r.useState)(null),[j,M]=(0,r.useState)(null);(0,r.useEffect)(()=>{e.kt().then(e=>{let t=Eh(e).map(({value:e,label:t})=>({key:e,label:t}));n(t),t.length&&u(t[0].key)}).catch(()=>n([])).finally(()=>c(!1))},[]),(0,r.useEffect)(()=>{if(!l)return;let t=!1;return(async()=>{v(!0),S(``);try{let n=await e.Bt(l);if(t)return;let r=n.gateway??{storage:`mongo`};f(r),m(r.storage||`mongo`),g({...Z_,...n.strategies??{}})}catch(e){t||S(e?.message||`Failed to load automations`)}finally{t||v(!1)}})(),()=>{t=!0}},[l]);let N=(0,r.useMemo)(()=>(h.hierarchyExpands??[]).map(e=>e.name).filter(Boolean),[h.hierarchyExpands]);function P(e,t){g(n=>({...n,[e]:t}))}function F(){b(!0),e.rn(l,{gateway:d,strategies:{...h,denormalizations:h.denormalizations?.length?h.denormalizations:void 0,arrayEnrichments:h.arrayEnrichments?.length?h.arrayEnrichments:void 0,fileFieldMaps:h.fileFieldMaps?.length?h.fileFieldMaps:void 0,sanitizeFields:h.sanitizeFields?.length?h.sanitizeFields:void 0,hierarchyExpands:h.hierarchyExpands?.length?h.hierarchyExpands:void 0,relatedUpdates:h.relatedUpdates?.length?h.relatedUpdates:void 0,cacheInvalidate:h.cacheInvalidate?.length?h.cacheInvalidate:void 0,defaults:Object.keys(h.defaults??{}).length?h.defaults:void 0}}).then(()=>{m(d.storage||`mongo`),i.message.success(`Automations saved`)}).catch(e=>i.message.error(e?.message||`Could not save automations`)).finally(()=>b(!1))}function I(){if((d.storage||`mongo`)!==p){i.Modal.confirm({title:`Change how this module persists writes?`,content:`You're switching ${l} from "${p}" to "${d.storage}". `+(d.storage===`mongo`?`This module will stop calling its downstream service and this gateway will own the write + every Strategy below.`:`This module will stop using the Strategies below and go back to calling its downstream service.`)+` Make sure the downstream service / e2e checks are ready before confirming.`,okText:`Confirm cutover`,okButtonProps:{danger:!0},onOk:F});return}F()}let L=[{title:`Source module`,dataIndex:`sourceModule`,key:`sourceModule`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Source id field`,dataIndex:`sourceIdField`,key:`sourceIdField`},{title:`Fields`,key:`fields`,render:(e,t)=>(0,o.jsx)(i.Badge,{count:Object.keys(t.fieldMap??{}).length,showZero:!0,color:`var(--color-brand)`})},{title:`Required`,dataIndex:`required`,key:`required`,width:90,render:e=>e?(0,o.jsx)(i.Tag,{color:`volcano`,children:`Required`}):(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`optional`})}],R=[{title:`Source field`,dataIndex:`sourceField`,key:`sourceField`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Target field`,dataIndex:`targetField`,key:`targetField`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`From collection`,key:`coll`,render:(e,t)=>t.sourceCollection||`users`},{title:`Fields`,key:`fields`,render:(e,t)=>(0,o.jsx)(i.Badge,{count:Object.keys(t.fieldMap??{}).length,showZero:!0,color:`var(--color-brand)`})}],z=[{title:`Source field`,dataIndex:`sourceField`,key:`sourceField`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Target field`,dataIndex:`targetField`,key:`targetField`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Mode`,dataIndex:`arrayMode`,key:`arrayMode`,width:100,render:e=>e?(0,o.jsx)(i.Tag,{color:`blue`,children:`Array`}):(0,o.jsx)(i.Tag,{children:`Single`})},{title:`History`,dataIndex:`historyField`,key:`historyField`,render:e=>e||(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`—`})}],B=[{title:`Name`,dataIndex:`name`,key:`name`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:`{{hierarchy.`+e+`}}`})},{title:`Seed field`,dataIndex:`seedField`,key:`seedField`,render:e=>e||(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`caller`})},{title:`Direction`,dataIndex:`direction`,key:`direction`,render:e=>(0,o.jsx)(i.Tag,{color:e===`down`?`blue`:`purple`,children:e===`down`?`Down — team`:`Up — chain`})},{title:`Stop role`,dataIndex:`stopRole`,key:`stopRole`,width:90,render:e=>e||(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`top`})}],V=[{title:`Target`,key:`target`,render:(e,t)=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:t.collectionName||t.targetModule})},{title:`Match`,key:`match`,render:(e,t)=>t.matchField||(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`tenant-scoped`})},{title:`For each`,key:`forEach`,render:(e,t)=>t.forEach?(0,o.jsx)(i.Tag,{color:`geekblue`,children:`{{${t.forEach}}}`}):(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`once`})},{title:`Mode`,key:`mode`,render:(e,t)=>Object.keys(t.insertIfMissing??{}).length?(0,o.jsx)(i.Tag,{color:`green`,children:`Insert if missing`}):(0,o.jsx)(i.Tag,{children:`Update`})}],H=t.map(e=>({key:e.key,label:e.label}));return(0,o.jsxs)(`div`,{className:`fg-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.ThunderboltOutlined,{}),title:`Automations`,extra:(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:y,disabled:!l,onClick:I,children:`Save Automations`}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)($,{type:`secondary`,style:{fontSize:13},children:`Config-driven side-effects the common CRUD gateway runs around a create — reference ids, duplicate checks, cross-module field snapshots, reporting-chain hierarchy expansion, board updates, notifications, cache invalidation. Nothing here is module-specific: the same engine serves every module.`})]}),(0,o.jsx)(Z,{styles:{body:{paddingTop:8}},children:(0,o.jsxs)(i.Spin,{spinning:s,children:[(0,o.jsx)(i.Tabs,{activeKey:l,onChange:u,items:H.map(e=>({...e,children:null})),className:`admin-module-tabs`}),x&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:x,style:{marginBottom:12}}),(0,o.jsxs)(i.Spin,{spinning:_,children:[(0,o.jsxs)(Z,{title:`Gateway`,styles:{body:{paddingTop:8}},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:10},children:`Selects how a write to this module persists. "Proxy" forwards to a downstream microservice (which owns every side-effect below itself). "Mongo" makes THIS gateway own the write and run every Strategy configured below.`}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Storage`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:d.storage||`mongo`,onChange:e=>f(t=>({...t,storage:e})),options:[{value:`mongo`,label:`Mongo — this gateway owns the write`},{value:`proxy`,label:`Proxy — forward to a downstream service`}]})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`File field key`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`file`,value:d.fileKey??``,onChange:e=>f(t=>({...t,fileKey:e.target.value})),className:`fg-mono-input`})]})]}),d.storage===`proxy`&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Base URL env var`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`JOBS_SERVICE_URL`,value:d.baseUrlEnv??``,onChange:e=>f(t=>({...t,baseUrlEnv:e.target.value})),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Base URL (fallback)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`http://...`,value:d.baseUrl??``,onChange:e=>f(t=>({...t,baseUrl:e.target.value})),className:`fg-mono-input`})]})]}),(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,style:{marginTop:12},children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Create path`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`/v1/jobs`,value:d.createPath??``,onChange:e=>f(t=>({...t,createPath:e.target.value})),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Update path (%s = id)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`/v1/edit/%s`,value:d.updatePath??``,onChange:e=>f(t=>({...t,updatePath:e.target.value})),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Update method`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:d.updateMethod||`PUT`,onChange:e=>f(t=>({...t,updateMethod:e})),options:[`PUT`,`POST`,`PATCH`].map(e=>({value:e,label:e}))})]})]})]})]}),(0,o.jsxs)(Z,{title:`Reference ID (Sequence)`,styles:{body:{paddingTop:8}},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:10},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!h.sequence,onChange:e=>P(`sequence`,e?{field:``,prefix:``,counterKey:``}:null)}),(0,o.jsxs)($,{style:{fontSize:13},children:[`Generate a "`,`{prefix}{n}`,`" reference id on create`]})]}),h.sequence&&(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Payload field`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`submissionId`,value:h.sequence.field??``,onChange:e=>P(`sequence`,{...h.sequence,field:e.target.value}),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Prefix`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`sub`,value:h.sequence.prefix??``,onChange:e=>P(`sequence`,{...h.sequence,prefix:e.target.value}),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Counter key`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`submissions`,value:h.sequence.counterKey??``,onChange:e=>P(`sequence`,{...h.sequence,counterKey:e.target.value}),className:`fg-mono-input`})]})]})]}),(0,o.jsxs)(Z,{title:`Duplicate Check`,styles:{body:{paddingTop:8}},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:10},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!h.duplicateCheck,onChange:e=>P(`duplicateCheck`,e?{matchFields:[],message:``}:null)}),(0,o.jsx)($,{style:{fontSize:13},children:`Block a create when an active record already matches`})]}),h.duplicateCheck&&(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1.4},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Match fields`}),(0,o.jsx)(i.Select,{mode:`tags`,size:`small`,style:{width:`100%`},placeholder:`jobId, applicantId`,value:h.duplicateCheck.matchFields??[],onChange:e=>P(`duplicateCheck`,{...h.duplicateCheck,matchFields:e})})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Message`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`submission exists`,value:h.duplicateCheck.message??``,onChange:e=>P(`duplicateCheck`,{...h.duplicateCheck,message:e.target.value})})]})]})]}),(0,o.jsx)(X_,{icon:(0,o.jsx)(a.DatabaseOutlined,{}),title:`Denormalizations`,description:`Copy fields from ANOTHER module's record onto this payload before insert (e.g. a submission snapshotting job title/client).`,rules:h.denormalizations??[],columns:L,onAdd:()=>w({index:null,rule:null}),onEdit:(e,t)=>w({index:e,rule:t}),onDelete:e=>P(`denormalizations`,(h.denormalizations??[]).filter((t,n)=>n!==e))}),(0,o.jsx)(X_,{icon:(0,o.jsx)(a.ApartmentOutlined,{}),title:`Array Enrichments`,description:`Enrich a payload array of ids (e.g. recruitersData) into objects carrying looked-up fields (name, email) before insert.`,rules:h.arrayEnrichments??[],columns:R,onAdd:()=>E({index:null,rule:null}),onEdit:(e,t)=>E({index:e,rule:t}),onDelete:e=>P(`arrayEnrichments`,(h.arrayEnrichments??[]).filter((t,n)=>n!==e))}),(0,o.jsx)(X_,{icon:(0,o.jsx)(a.DatabaseOutlined,{}),title:`File Field Maps`,description:`Turn an uploaded file field into a nested object (location + filename + who/when) or an array of such objects, instead of a flat S3 path string — needed for schemas like resume/passport/visa.`,rules:h.fileFieldMaps??[],columns:z,onAdd:()=>O({index:null,rule:null}),onEdit:(e,t)=>O({index:e,rule:t}),onDelete:e=>P(`fileFieldMaps`,(h.fileFieldMaps??[]).filter((t,n)=>n!==e))}),(0,o.jsxs)(Z,{title:`Sanitize Fields`,styles:{body:{paddingTop:8}},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:8},children:`Trim and HTML-escape these payload fields before anything else runs — basic XSS-safety for free-text fields (e.g. firstName/lastName) that might later be embedded in an HTML activity comment or email.`}),(0,o.jsx)(i.Select,{mode:`tags`,style:{width:`100%`},placeholder:`firstName, lastName, email`,value:h.sanitizeFields??[],onChange:e=>P(`sanitizeFields`,e)})]}),(0,o.jsxs)(Z,{title:`Defaults`,styles:{body:{paddingTop:8}},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:8},children:`Set a field only when the payload doesn't already carry a non-blank value — status defaults, empty arrays.`}),(0,o.jsx)(B_,{rows:U_(h.defaults),onChange:e=>P(`defaults`,W_(e)),keyPlaceholder:`internalSubmissionStatus.internalSubmissionStatusText`,valuePlaceholder:`"Under Evaluation"`})]}),(0,o.jsx)(X_,{icon:(0,o.jsx)(a.ApartmentOutlined,{}),title:`Hierarchy Expansions`,description:`Walk the reporting chain up (toward admin) or down (toward a team) from a seed user, publishing the result as {{hierarchy.<name>}} for Related Updates / Notify to use.`,rules:h.hierarchyExpands??[],columns:B,onAdd:()=>A({index:null,rule:null}),onEdit:(e,t)=>A({index:e,rule:t}),onDelete:e=>P(`hierarchyExpands`,(h.hierarchyExpands??[]).filter((t,n)=>n!==e))}),(0,o.jsx)(X_,{icon:(0,o.jsx)(a.ThunderboltOutlined,{}),title:`Related Updates`,description:`Best-effort side-effect writes to other collections after a successful insert — board state, activity logs. Combine with ForEach + a Hierarchy Expansion to seed one document per user in a chain.`,rules:h.relatedUpdates??[],columns:V,onAdd:()=>M({index:null,rule:null}),onEdit:(e,t)=>M({index:e,rule:t}),onDelete:e=>P(`relatedUpdates`,(h.relatedUpdates??[]).filter((t,n)=>n!==e))}),(0,o.jsxs)(Z,{title:`Notify`,styles:{body:{paddingTop:8}},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginBottom:10},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!h.notify,onChange:e=>P(`notify`,e?{action:``,subjectDefault:``,bodyDefault:``,toReportingManager:!1,toHierarchy:``}:null)}),(0,o.jsx)($,{style:{fontSize:13},children:`Send a best-effort email after a successful insert`})]}),h.notify&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Action (matched against an EmailTemplates doc)`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`internalSubmit`,value:h.notify.action??``,onChange:e=>P(`notify`,{...h.notify,action:e.target.value}),className:`fg-mono-input`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Notify entire hierarchy chain`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},allowClear:!0,placeholder:`pick a Hierarchy Expansion`,value:h.notify.toHierarchy||void 0,onChange:e=>P(`notify`,{...h.notify,toHierarchy:e??``}),options:N.map(e=>({value:e,label:e}))})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:12},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:!!h.notify.toReportingManager,onChange:e=>P(`notify`,{...h.notify,toReportingManager:e})}),(0,o.jsx)($,{style:{fontSize:13},children:`Also notify the caller's direct reporting manager`})]}),(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Default subject`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`New submission`,value:h.notify.subjectDefault??``,onChange:e=>P(`notify`,{...h.notify,subjectDefault:e.target.value})})]}),(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsx)($,{type:`secondary`,style:{fontSize:12},children:`Default body (used when no EmailTemplates doc matches)`}),(0,o.jsx)(i.Input.TextArea,{rows:4,value:h.notify.bodyDefault??``,onChange:e=>P(`notify`,{...h.notify,bodyDefault:e.target.value}),className:`fg-mono-input`})]})]})]}),(0,o.jsxs)(Z,{title:`Cache Invalidate`,styles:{body:{paddingTop:8}},children:[(0,o.jsxs)($,{type:`secondary`,style:{fontSize:12,display:`block`,marginBottom:8},children:[`Redis key patterns (with `,`{{field}}`,` tokens) to SCAN+DEL after a successful insert.`]}),(0,o.jsx)(i.Select,{mode:`tags`,style:{width:`100%`},placeholder:`jobs:{{tenantId}}:{{businessId}}:{{businessUnitId}}:*`,value:h.cacheInvalidate??[],onChange:e=>P(`cacheInvalidate`,e)})]})]})]})}),(0,o.jsx)(G_,{open:!!C,rule:C?.rule,onClose:()=>w(null),onSave:e=>{P(`denormalizations`,C.index===null?[...h.denormalizations??[],e]:(h.denormalizations??[]).map((t,n)=>n===C.index?e:t)),w(null)}},C?`denorm-${C.index??`new`}`:`denorm-closed`),(0,o.jsx)(K_,{open:!!T,rule:T?.rule,onClose:()=>E(null),onSave:e=>{P(`arrayEnrichments`,T.index===null?[...h.arrayEnrichments??[],e]:(h.arrayEnrichments??[]).map((t,n)=>n===T.index?e:t)),E(null)}},T?`enrich-${T.index??`new`}`:`enrich-closed`),(0,o.jsx)(q_,{open:!!D,rule:D?.rule,onClose:()=>O(null),onSave:e=>{P(`fileFieldMaps`,D.index===null?[...h.fileFieldMaps??[],e]:(h.fileFieldMaps??[]).map((t,n)=>n===D.index?e:t)),O(null)}},D?`filemap-${D.index??`new`}`:`filemap-closed`),(0,o.jsx)(J_,{open:!!k,rule:k?.rule,onClose:()=>A(null),onSave:e=>{P(`hierarchyExpands`,k.index===null?[...h.hierarchyExpands??[],e]:(h.hierarchyExpands??[]).map((t,n)=>n===k.index?e:t)),A(null)}},k?`hier-${k.index??`new`}`:`hier-closed`),(0,o.jsx)(Y_,{open:!!j,rule:j?.rule,hierarchyNames:N,onClose:()=>M(null),onSave:e=>{P(`relatedUpdates`,j.index===null?[...h.relatedUpdates??[],e]:(h.relatedUpdates??[]).map((t,n)=>n===j.index?e:t)),M(null)}},j?`ru-${j.index??`new`}`:`ru-closed`)]})}var{Text:$_}=i.Typography,ev=[`beforeCreate`,`afterCreate`,`beforeUpdate`,`afterUpdate`,`beforeDelete`,`afterDelete`],tv=[`sanitizeFields`,`generateSequence`,`duplicateCheck`,`copyFields`,`arrayEnrich`,`setDefaults`,`resolve`,`updateRelated`,`notify`,`invalidateCache`,`webhook`];function nv(e){return JSON.stringify(e??{},null,2)}function rv({action:e,onChange:t,onRemove:n}){let[s,c]=(0,r.useState)(()=>nv(e.config)),[l,u]=(0,r.useState)(!1);return(0,o.jsxs)(`div`,{style:{border:`1px solid #e2e8f0`,borderRadius:8,padding:10,marginTop:8},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,gap:8,alignItems:`center`},children:[(0,o.jsx)(i.Select,{size:`small`,style:{width:200},showSearch:!0,value:e.type||void 0,placeholder:`action type`,options:tv.map(e=>({value:e})),onChange:n=>t({...e,type:n})}),l&&(0,o.jsx)(i.Tag,{color:`red`,children:`invalid JSON`}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),style:{marginLeft:`auto`},onClick:n})]}),(0,o.jsx)(i.Input.TextArea,{rows:Math.min(14,Math.max(3,s.split(`
4
4
  `).length)),value:s,className:`fg-mono-input`,style:{marginTop:8,fontSize:12},onChange:n=>{c(n.target.value);try{t({...e,config:JSON.parse(n.target.value||`{}`)}),u(!1)}catch{u(!0)}}})]})}function iv({open:e,doc:t,moduleOptions:n,onClose:s,onSave:c}){let[l,u]=(0,r.useState)(()=>({key:``,module:``,event:`afterCreate`,order:10,isActive:!0,condition:{},actions:[],...t??{}})),[d,f]=(0,r.useState)(()=>nv(t?.condition)),[p,m]=(0,r.useState)(!1),h=(e,t)=>u(n=>({...n,[e]:t}));return(0,o.jsx)(i.Modal,{open:e,onCancel:s,width:840,centered:!0,destroyOnClose:!0,maskClosable:!1,className:`fg-editor-modal`,title:(0,o.jsxs)(`span`,{className:`fg-drawer-title`,children:[(0,o.jsx)(a.ApartmentOutlined,{}),` `,t?`Edit Workflow`:`New Workflow`]}),footer:(0,o.jsxs)(`div`,{className:`fg-drawer-footer`,children:[(0,o.jsx)(i.Button,{onClick:s,children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),onClick:()=>{if(!l.key?.trim())return i.message.error(`Key is required`);if(!l.module?.trim())return i.message.error(`Module is required`);if(p)return i.message.error(`Condition JSON is invalid`);if(!(l.actions??[]).length)return i.message.error(`At least one action is required`);if((l.actions??[]).some(e=>!e.type))return i.message.error(`Every action needs a type`);let e={...l};delete e.id,delete e._id,c(e)},children:`Save Workflow`})]}),children:(0,o.jsxs)(`div`,{className:`fg-form-section`,children:[(0,o.jsxs)(`div`,{className:`fg-field-meta-row`,children:[(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($_,{type:`secondary`,style:{fontSize:12},children:`Key`}),(0,o.jsx)(i.Input,{size:`small`,placeholder:`jobs-create-after`,value:l.key??``,onChange:e=>h(`key`,e.target.value),className:`fg-mono-input`,disabled:!!t})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($_,{type:`secondary`,style:{fontSize:12},children:`Module`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},showSearch:!0,value:l.module||void 0,options:n,onChange:e=>h(`module`,e),placeholder:`jobs`})]}),(0,o.jsxs)(`div`,{style:{flex:1},children:[(0,o.jsx)($_,{type:`secondary`,style:{fontSize:12},children:`Event`}),(0,o.jsx)(i.Select,{size:`small`,style:{width:`100%`},value:l.event,options:ev.map(e=>({value:e})),onChange:e=>h(`event`,e)})]}),(0,o.jsxs)(`div`,{style:{width:90},children:[(0,o.jsx)($_,{type:`secondary`,style:{fontSize:12},children:`Order`}),(0,o.jsx)(i.InputNumber,{size:`small`,style:{width:`100%`},value:l.order??10,onChange:e=>h(`order`,e??10)})]})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8,marginTop:12},children:[(0,o.jsx)(i.Switch,{size:`small`,checked:l.isActive!==!1,onChange:e=>h(`isActive`,e)}),(0,o.jsx)($_,{style:{fontSize:13},children:`Active`})]}),(0,o.jsxs)(`div`,{style:{marginTop:12},children:[(0,o.jsxs)($_,{type:`secondary`,style:{fontSize:12},children:[`Condition (all must match the payload; empty = always run) `,p&&(0,o.jsx)(i.Tag,{color:`red`,children:`invalid JSON`})]}),(0,o.jsx)(i.Input.TextArea,{rows:2,value:d,className:`fg-mono-input`,style:{fontSize:12},onChange:e=>{f(e.target.value);try{h(`condition`,JSON.parse(e.target.value||`{}`)),m(!1)}catch{m(!0)}}})]}),(0,o.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`center`,marginTop:14},children:[(0,o.jsx)($_,{strong:!0,style:{fontSize:13},children:`Actions (run in order)`}),(0,o.jsx)(i.Button,{size:`small`,type:`dashed`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>h(`actions`,[...l.actions??[],{type:``,config:{}}]),children:`Add Action`})]}),(l.actions??[]).map((e,t)=>(0,o.jsx)(rv,{action:e,onChange:e=>h(`actions`,l.actions.map((n,r)=>r===t?e:n)),onRemove:()=>h(`actions`,l.actions.filter((e,n)=>n!==t))},t)),(0,o.jsxs)($_,{type:`secondary`,style:{fontSize:11,display:`block`,marginTop:8},children:[`Config supports `,(0,o.jsx)(`code`,{children:`{{field.path}}`}),`, `,(0,o.jsx)(`code`,{children:`{{now}}`}),`, `,(0,o.jsx)(`code`,{children:`{{__userId}}`}),`,`,` `,(0,o.jsx)(`code`,{children:`{{__userName}}`}),`, and `,(0,o.jsx)(`code`,{children:`{{hierarchy.<name>}}`}),` from a `,(0,o.jsx)(`code`,{children:`resolve`}),` action.`]})]})})}function av(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)([]),[l,u]=(0,r.useState)(!0),[d,f]=(0,r.useState)(``),[p,m]=(0,r.useState)(null),[h,g]=(0,r.useState)(``),[_,v]=(0,r.useState)(0);(0,r.useEffect)(()=>{let t=!1;return e.Qt(`workflows`).then(e=>{t||n(e)}).catch(e=>{t||f(e?.message||`Failed to load workflows`)}).finally(()=>{t||u(!1)}),()=>{t=!0}},[_]),(0,r.useEffect)(()=>{e.kt().then(e=>c(Eh(e).map(({value:e,label:t})=>({value:e,label:t})))).catch(()=>c([]))},[]);let y=()=>{u(!0),f(``),v(e=>e+1)};async function b(t){try{await e.an(`workflows`,t),i.message.success(`Workflow "${t.key}" saved`),m(null),y()}catch(e){i.message.error(e?.message||`Could not save workflow`)}}async function x(t){try{await e.vt(`workflows`,t),i.message.success(`Workflow "${t}" deleted`),y()}catch(e){i.message.error(e?.message||`Could not delete workflow`)}}async function S(t,n){let r={...t};delete r.id,delete r._id;try{await e.an(`workflows`,{...r,isActive:n}),y()}catch(e){i.message.error(e?.message||`Could not update workflow`)}}let C=(0,r.useMemo)(()=>t.filter(e=>!h||e.module===h),[t,h]);return(0,o.jsxs)(`div`,{className:`fg-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.ApartmentOutlined,{}),title:`Workflows`,extra:(0,o.jsxs)(i.Space,{size:8,children:[(0,o.jsx)(i.Select,{size:`small`,style:{minWidth:160},allowClear:!0,placeholder:`Filter by module`,options:s,value:h||void 0,onChange:e=>g(e??``)}),(0,o.jsx)(i.Button,{size:`small`,icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:y,children:`Reload`}),(0,o.jsx)(i.Button,{type:`primary`,size:`small`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>m({doc:null}),children:`New Workflow`})]}),children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsxs)($_,{type:`secondary`,style:{fontSize:13},children:[`Event-driven behavior per module — reference ids, duplicate checks, snapshots, hierarchy fan-outs, board updates, notifications, cache — executed by the platform Workflow Engine on every create/update/delete.`,(0,o.jsx)(i.Tag,{style:{marginLeft:8},children:`before*`}),` actions can block the write; `,(0,o.jsx)(i.Tag,{children:`after*`}),` actions are best-effort.`]})]}),(0,o.jsxs)(Z,{styles:{body:{paddingTop:8}},children:[d&&(0,o.jsx)(i.Alert,{type:`error`,showIcon:!0,message:d,style:{marginBottom:12}}),(0,o.jsxs)(i.Spin,{spinning:l,children:[(0,o.jsxs)(`div`,{style:{marginBottom:8},children:[(0,o.jsx)(i.Badge,{count:C.length,showZero:!0,color:`var(--color-brand)`}),` `,(0,o.jsx)($_,{type:`secondary`,style:{fontSize:12},children:`workflows`})]}),(0,o.jsx)(i.Table,{rowKey:`key`,dataSource:C,columns:[{title:`Key`,dataIndex:`key`,key:`key`,render:e=>(0,o.jsx)(`code`,{className:`fg-table-code`,children:e})},{title:`Module`,dataIndex:`module`,key:`module`,width:130,render:e=>(0,o.jsx)(i.Tag,{color:`geekblue`,children:e})},{title:`Event`,dataIndex:`event`,key:`event`,width:130,render:e=>(0,o.jsx)(i.Tag,{color:String(e).startsWith(`before`)?`purple`:`green`,children:e})},{title:`Actions`,key:`acts`,render:(e,t)=>(0,o.jsx)(i.Space,{size:4,wrap:!0,children:(t.actions??[]).map((e,t)=>(0,o.jsx)(i.Tag,{style:{margin:0},children:e.type},t))})},{title:`Order`,dataIndex:`order`,key:`order`,width:70,align:`center`},{title:`Active`,key:`active`,width:80,align:`center`,render:(e,t)=>(0,o.jsx)(i.Switch,{size:`small`,checked:t.isActive!==!1,onChange:e=>S(t,e)})},{title:``,key:`ops`,width:90,align:`right`,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Edit`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>m({doc:t})})}),(0,o.jsx)(i.Popconfirm,{title:`Delete workflow "${t.key}"?`,onConfirm:()=>x(t.key),children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})]})}],pagination:!1,size:`small`,className:`fg-table`,locale:{emptyText:(0,o.jsx)(i.Empty,{description:`No workflows configured.`,image:i.Empty.PRESENTED_IMAGE_SIMPLE})}})]})]}),(0,o.jsx)(iv,{open:!!p,doc:p?.doc,moduleOptions:s,onClose:()=>m(null),onSave:b},p?p.doc?.key??`new`:`closed`)]})}var{Text:ov}=i.Typography,sv=e=>e?._id??e?.id;function cv(e){return Array.isArray(e?.taxHistory)?e.taxHistory:[]}function lv(e){let t=e?.taxValue;if(t!=null&&t!==``)return Number(t);let n=cv(e).at(-1),r=n?.taxValue??n?.value;return r!=null&&r!==``?Number(r):void 0}function uv(e){if(!e)return`—`;let t=new Date(e);return Number.isNaN(t.getTime())?`—`:new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(t)}function dv(e){let t=cv(e).at(-1);return t?.updatedAt??t?.timestamp??e?.updatedAt}function fv({open:t,record:n,onClose:a,onSaved:s}){let[c]=i.Form.useForm(),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)([]),[p,m]=(0,r.useState)(!1),h=(0,r.useRef)(null),g=!!n;(0,r.useEffect)(()=>{t&&queueMicrotask(()=>{c.resetFields(),c.setFieldsValue({name:n?.name??void 0,taxValue:lv(n)}),f(n?.name?[{label:n.name,value:n.name}]:[])})},[t,n,c]);function _(t){if(h.current&&clearTimeout(h.current),!t||t.trim().length<2){f([]);return}m(!0),h.current=setTimeout(()=>{e.Ft(t.trim()).then(f).catch(()=>f([])).finally(()=>m(!1))},350)}async function v(){let t=await c.validateFields(),r=Number(t.taxValue),a={name:t.name,taxValue:r,taxHistory:{taxValue:r}};u(!0);try{g?await e.pn(`locations`,sv(n),a):await e.lt(`locations`,a),i.message.success(g?`Tax updated`:`Location and tax created`),s()}catch(e){i.message.error(e?.message||`Could not save location and tax`)}finally{u(!1)}}return(0,o.jsx)(i.Modal,{open:t,onCancel:a,onOk:v,confirmLoading:l,destroyOnHidden:!0,title:g?`Edit Tax — ${n?.name??``}`:`New Location`,children:(0,o.jsxs)(i.Form,{form:c,layout:`vertical`,children:[(0,o.jsx)(i.Form.Item,{name:`name`,label:`Location`,rules:[{required:!0,message:`Location is required`}],tooltip:g?`Location cannot be changed once created — only the tax is editable.`:`Search and pick from the location master.`,children:(0,o.jsx)(i.Select,{showSearch:!0,disabled:g,placeholder:`Type at least 2 characters to search…`,filterOption:!1,onSearch:_,notFoundContent:p?`Searching…`:null,options:d})}),(0,o.jsx)(i.Form.Item,{name:`taxValue`,label:`Tax`,rules:[{required:!0,message:`Tax is required`},{type:`number`,min:0,max:100,message:`Tax must be between 0 and 100`}],children:(0,o.jsx)(i.InputNumber,{style:{width:`100%`},min:0,max:100,step:.01,suffix:`%`,placeholder:`8.875`,autoFocus:g})})]})})}function pv({record:e}){let t=[...cv(e)].reverse();return t.length?(0,o.jsx)(i.Space,{direction:`vertical`,size:4,style:{padding:`4px 8px`},children:t.map((e,t)=>(0,o.jsxs)(i.Space,{size:10,children:[(0,o.jsxs)(i.Tag,{color:t===0?`green`:`default`,style:{margin:0},children:[e.taxValue??e.value,`%`]}),(0,o.jsx)(ov,{type:`secondary`,style:{fontSize:12},children:uv(e.updatedAt??e.timestamp)}),t===0&&(0,o.jsx)(ov,{type:`secondary`,style:{fontSize:12},children:`(current)`})]},t))}):(0,o.jsx)(i.Empty,{image:i.Empty.PRESENTED_IMAGE_SIMPLE,description:`No tax history yet`})}function mv(){let[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!1),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null);function p(){c(!0),e.Zt(`locations`).then(({items:e})=>n(e)).catch(e=>i.message.error(e?.message||`Could not load locations`)).finally(()=>c(!1))}(0,r.useEffect)(()=>{queueMicrotask(p)},[]);async function m(t){try{await e._t(`locations`,t),i.message.success(`Location deleted`),p()}catch(e){i.message.error(e?.message||`Could not delete location`)}}return(0,o.jsxs)(`div`,{className:`fg-section admin-config-section`,children:[(0,o.jsx)(Z,{title:`${t.length} location${t.length===1?``:`s`}`,extra:(0,o.jsxs)(i.Space,{children:[(0,o.jsx)(i.Button,{icon:(0,o.jsx)(a.ReloadOutlined,{}),onClick:p,children:`Reload`}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:()=>{f(null),u(!0)},children:`New location`})]}),children:(0,o.jsx)(i.Table,{rowKey:sv,columns:[{title:`Location`,dataIndex:`name`,key:`name`},{title:`Tax`,key:`taxValue`,width:100,render:(e,t)=>{let n=lv(t);return Number.isFinite(n)?(0,o.jsxs)(i.Tag,{color:`blue`,children:[n,`%`]}):`—`}},{title:`Tax updated`,key:`taxUpdatedAt`,render:(e,t)=>uv(dv(t))},{title:`Created`,key:`createdAt`,responsive:[`lg`],render:(e,t)=>uv(t?.createdAt)},{title:``,key:`actions`,width:90,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Tooltip,{title:`Edit tax`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>{f(t),u(!0)}})}),(0,o.jsx)(i.Popconfirm,{title:`Delete this location?`,onConfirm:()=>m(sv(t)),children:(0,o.jsx)(i.Tooltip,{title:`Delete`,children:(0,o.jsx)(i.Button,{type:`text`,size:`small`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{})})})})]})}],dataSource:t,loading:s,size:`small`,pagination:!1,className:`fg-table`,expandable:{expandedRowRender:e=>(0,o.jsx)(pv,{record:e}),rowExpandable:e=>cv(e).length>0},locale:{emptyText:`No locations yet. Click "New location" to add one.`}})}),(0,o.jsx)(fv,{open:l,record:d,onClose:()=>u(!1),onSaved:()=>{u(!1),p()}})]})}function hv(){return(0,o.jsxs)(`div`,{className:`fg-section`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.DatabaseOutlined,{}),title:`Location Tax Master`,children:[(0,o.jsx)(`div`,{className:`admin-accent-bar`}),(0,o.jsx)(ov,{type:`secondary`,style:{fontSize:13},children:`Pick a location from the master list and set its tax. Once added, only the tax can be changed — every change is kept in a timeline with its timestamp. Expand a row to see the full tax history.`})]}),(0,o.jsx)(mv,{})]})}var{Text:gv,Title:_v}=i.Typography;function vv(){let[e]=i.Form.useForm(),[t,n]=(0,r.useState)([]),[s,c]=(0,r.useState)(!0),[l,u]=(0,r.useState)(!1),[d,f]=(0,r.useState)(null),[p,m]=(0,r.useState)(!1);async function h(){c(!0);try{n(await $m())}catch(e){i.message.error(e.message||`Unable to load menus`)}finally{c(!1)}}(0,r.useEffect)(()=>{h()},[]);let g=(0,r.useMemo)(()=>t.filter(e=>!d||e.menu_id!==d.menu_id).map(e=>({label:e.menu_name,value:e.menu_id})),[d,t]);function _(){f(null),e.resetFields(),e.setFieldsValue({menu_type:`MENU`,display_order:t.length+1,status:`ACTIVE`}),m(!0)}function v(t){f(t),e.setFieldsValue(t),m(!0)}async function y(e){u(!0);try{d?await th(d.menu_id,e):await eh(e),i.message.success(d?`Menu updated`:`Menu created`),m(!1),await h()}catch(e){i.message.error(e.message||`Unable to save menu`)}finally{u(!1)}}async function b(e){try{await nh(e),i.message.success(`Menu deleted`),await h()}catch(e){i.message.error(e.message||`Unable to delete menu`)}}return(0,o.jsxs)(`section`,{className:`admin-section`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(_v,{level:4,children:`Menus`}),(0,o.jsx)(gv,{type:`secondary`,children:`Manage records in the MongoDB menus collection.`})]}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:_,children:`Add Menu`})]}),(0,o.jsx)(i.Table,{rowKey:`menu_id`,loading:s,columns:[{title:`Name`,dataIndex:`menu_name`},{title:`Key`,dataIndex:`menu_key`,render:e=>(0,o.jsx)(i.Tag,{children:e})},{title:`Route / API`,dataIndex:`api_url`},{title:`Type`,dataIndex:`menu_type`,width:110},{title:`Order`,dataIndex:`display_order`,width:80},{title:`Status`,dataIndex:`status`,width:100,render:e=>(0,o.jsx)(i.Tag,{color:e===`ACTIVE`?`green`:`default`,children:e})},{title:``,key:`actions`,width:90,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Button,{"aria-label":`Edit menu`,size:`small`,icon:(0,o.jsx)(a.EditOutlined,{}),onClick:()=>v(t)}),(0,o.jsx)(i.Popconfirm,{title:`Delete menu?`,onConfirm:()=>b(t.menu_id),children:(0,o.jsx)(i.Button,{"aria-label":`Delete menu`,danger:!0,size:`small`,icon:(0,o.jsx)(a.DeleteOutlined,{})})})]})}],dataSource:t,size:`small`,pagination:{pageSize:10}}),(0,o.jsx)(i.Modal,{title:d?`Edit Menu`:`Add Menu`,open:p,onCancel:()=>m(!1),onOk:()=>e.submit(),confirmLoading:l,destroyOnHidden:!0,children:(0,o.jsxs)(i.Form,{form:e,layout:`vertical`,onFinish:y,children:[(0,o.jsx)(i.Form.Item,{name:`menu_name`,label:`Menu name`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{})}),(0,o.jsx)(i.Form.Item,{name:`menu_key`,label:`Menu key`,rules:[{required:!0}],children:(0,o.jsx)(i.Input,{placeholder:`jobs`})}),(0,o.jsx)(i.Form.Item,{name:`api_url`,label:`Route / API URL`,children:(0,o.jsx)(i.Input,{placeholder:`/jobs`})}),(0,o.jsx)(i.Form.Item,{name:`component_name`,label:`Component`,children:(0,o.jsx)(i.Input,{placeholder:`Jobs`})}),(0,o.jsxs)(`div`,{className:`admin-form-row`,children:[(0,o.jsx)(i.Form.Item,{name:`menu_type`,label:`Type`,children:(0,o.jsx)(i.Select,{options:[{value:`MENU`},{value:`FOOTER`},{value:`CHILD`}]})}),(0,o.jsx)(i.Form.Item,{name:`parent_menu_id`,label:`Parent`,children:(0,o.jsx)(i.Select,{allowClear:!0,options:g})})]}),(0,o.jsxs)(`div`,{className:`admin-form-row`,children:[(0,o.jsx)(i.Form.Item,{name:`display_order`,label:`Display order`,children:(0,o.jsx)(i.InputNumber,{min:0})}),(0,o.jsx)(i.Form.Item,{name:`status`,label:`Status`,children:(0,o.jsx)(i.Select,{options:[{value:`ACTIVE`},{value:`INACTIVE`}]})})]}),(0,o.jsx)(i.Form.Item,{name:`icon`,label:`Icon`,children:(0,o.jsx)(i.Input,{placeholder:`AppstoreOutlined`})})]})})]})}var{Content:yv,Header:bv,Sider:xv}=i.Layout,{Text:Sv,Title:Cv}=i.Typography;function wv(e){return String(e??``).trim().replace(/[\s_-]+/g,` `).toUpperCase()}function Tv(e){return String(e||``).replace(/[-_]/g,` `).replace(/\b\w/g,e=>e.toUpperCase()).trim()}function Ev(e){return String(e||``).trim().toLowerCase()}function Dv(e){return e?.key||e?.collectionName||e?.value||``}function Ov(e=[],t=[]){let n=[],r=new Set,i=new Set,a=new Set;return e.forEach(e=>{let t=Dv(e);if(!t)return;let o=Ev(e.key||t),s=Ev(e.collectionName);e.seeded&&(i.add(o),s&&i.add(s)),s&&a.add(s),r.add(t),n.push({label:e.label||Tv(t),value:t,disabled:!!e.seeded})}),t.forEach(e=>{let t=String(e||``).trim();if(!t||r.has(t))return;let o=Ev(t);a.has(o)||i.has(o)||(r.add(t),n.push({label:Tv(t),value:t,disabled:!1}))}),n}function kv(e){let t=e?.user_type_id??e?.userTypeId??e?.id,n=e?.user_type_name??e?.userTypeName??e?.name;return Number(t)===1||wv(n)===`SUPER ADMIN`}function Av(e){return`${e?.first_name??e?.firstName??``} ${e?.last_name??e?.lastName??``}`.trim()||e?.username||e?.userName||e?.email||`User ${e?.user_id??e?.userId??``}`}function jv(e){return e.flatMap(e=>{let t=e.menu_id??e.menuId??e.MenuID,n=e.menu_name??e.menuName??e.MenuName??`Menu ${t??``}`,r=e.menu_key??e.menuKey??e.MenuKey??``,i=e.permissions??e.Permissions??{};return Object.entries(i).map(([e,i])=>{let a=i.permission_id??i.permissionId??i.PermissionID,o=i.permission_key??i.permissionKey??i.PermissionKey??e,s=i.value??i.Value??i.access_value??i.accessValue??i;return{key:`${r??n??t}:${a??o}`,menuId:t,menuName:n,menuKey:r,permissionId:a,permissionKey:o,accessValue:+(Number(s)===1)}})})}function Mv(e){return String(e.menuKey??e.menuName??e.menuId).trim().toLowerCase()}function Nv(e){let t=Array.isArray(e)?e:e?.permissions??e?.actions??e?.data??e;return(Array.isArray(t)?t:Object.values(t??{})).map(e=>({permissionId:e.permission_id??e.permissionId??e.legacyPermissionId??e.id,permissionKey:e.permission_key??e.permissionKey??e.key,permissionName:e.permission_name??e.permissionName??e.name??e.label})).filter(e=>e.permissionKey)}function Pv({title:e,description:t,selectedName:n,loading:r,saving:s,rows:c,onChange:l,onMove:u,onSave:d}){let f=Object.values(c.reduce((e,t)=>{let n=Mv(t);return e[n]||(e[n]={key:n,menuName:t.menuName,menuKey:t.menuKey,permissions:[]}),e[n].permissions.push(t),e},{}));return(0,o.jsxs)(`section`,{className:`admin-editor`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Cv,{level:4,children:e}),(0,o.jsx)(Sv,{type:`secondary`,children:n||t})]}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.SaveOutlined,{}),loading:s,disabled:!n||c.length===0,onClick:d,children:`Save`})]}),r?(0,o.jsx)(`div`,{className:`admin-loading`,children:(0,o.jsx)(i.Spin,{})}):f.length?(0,o.jsx)(i.Table,{size:`small`,rowKey:`key`,columns:[{title:`Menu`,dataIndex:`menuName`,width:220,render:(e,t)=>(0,o.jsxs)(`div`,{className:`admin-menu-order-cell`,children:[(0,o.jsxs)(`div`,{className:`admin-menu-cell`,children:[(0,o.jsx)(`span`,{children:e}),(0,o.jsx)(Sv,{type:`secondary`,children:t.menuKey})]}),(0,o.jsxs)(i.Space,{size:2,children:[(0,o.jsx)(i.Button,{size:`small`,type:`text`,icon:(0,o.jsx)(a.ArrowUpOutlined,{}),onClick:()=>u(t.key,-1),"aria-label":`Move ${e} up`}),(0,o.jsx)(i.Button,{size:`small`,type:`text`,icon:(0,o.jsx)(a.ArrowDownOutlined,{}),onClick:()=>u(t.key,1),"aria-label":`Move ${e} down`})]})]})},{title:`Actions`,dataIndex:`permissions`,render:e=>(0,o.jsx)(`div`,{className:`admin-permission-controls`,children:e.filter(e=>sh(e.menuName??e.menuKey,e.permissionKey)).map(e=>(0,o.jsx)(`label`,{className:`admin-permission-control`,children:(0,o.jsx)(i.Checkbox,{checked:e.accessValue===1,onChange:t=>l(e.key,+!!t.target.checked),"aria-label":`${e.menuName} ${e.permissionKey}`,children:String(e.permissionKey).replaceAll(`_`,` `)})},e.key))})}],dataSource:f,pagination:!1,scroll:{y:420}}):(0,o.jsx)(i.Empty,{description:`Select a record to customize permissions`})]})}function Fv({onLogout:n}){let[s]=i.Form.useForm(),[c]=i.Form.useForm(),[l,u]=(0,r.useState)(`users`),[d,f]=(0,r.useState)(!0),[p,m]=(0,r.useState)(!1),[h,g]=(0,r.useState)(!1),[_,v]=(0,r.useState)([]),[y,b]=(0,r.useState)([]),[x,S]=(0,r.useState)([]),[C,w]=(0,r.useState)([]),[T,E]=(0,r.useState)(null),[D,O]=(0,r.useState)([]),[k,A]=(0,r.useState)(!1),[j,M]=(0,r.useState)(null),[N,P]=(0,r.useState)(!1),[F,I]=(0,r.useState)(null),[L,R]=(0,r.useState)(!1),[z,B]=(0,r.useState)(null),[V,H]=(0,r.useState)(!1),[U,W]=(0,r.useState)(null),[G,ee]=(0,r.useState)(`listView`),[te,K]=(0,r.useState)([]),[ne,re]=(0,r.useState)([]),[q,J]=(0,r.useState)(!1),[ie,ae]=(0,r.useState)(!1),oe=t.l(),Y=(0,r.useMemo)(()=>te.filter(e=>!e.disabled),[te]),se=!q&&Y.length===0,ce=(0,r.useCallback)(async()=>{J(!0);try{let[t,n]=await Promise.all([e.Pt(),e.Ot()]),r=Ov(t.modules,n),i=new Set(r.filter(e=>!e.disabled).map(e=>e.value));K(r),re(e=>e.filter(e=>i.has(e)))}catch{i.message.error(`Failed to load seed status`)}finally{J(!1)}},[]);(0,r.useEffect)(()=>{ce()},[ce]);async function le(){if(ne.length===0){i.message.warning(se?`All modules already seeded.`:`Select at least one module to seed.`);return}ae(!0);try{await e.sn(ne),i.message.success(`User type field config seeded`),re([]),await ce()}catch(e){i.message.error(e?.message||`Seed failed`)}finally{ae(!1)}}async function ue(){f(!0);try{let[e,t,n,r]=await Promise.allSettled([Gm(),Ym(),$m(),rh()]),a=e.status===`fulfilled`?e.value:[],o=t.status===`fulfilled`?t.value:[];e.status===`rejected`&&i.message.error(e.reason?.message||`Unable to load users`),t.status===`rejected`&&i.message.error(t.reason?.message||`Unable to load user types`),v(a??[]),b(o??[]),S(n.status===`fulfilled`?n.value??[]:[]),w(r.status===`fulfilled`?Nv(r.value):[]),E((o??[])[0]?.user_type_id??null)}catch(e){i.message.error(e.message||`Unable to load admin data`)}finally{f(!1)}}(0,r.useEffect)(()=>{queueMicrotask(()=>{ue()})},[]),(0,r.useEffect)(()=>{queueMicrotask(()=>{if(!T){O([]);return}m(!0),console.log(`DEBUG requesting role permissions for selectedUserTypeId=`,T,`localStorage scope=`,{tenantId:localStorage.getItem(`tenantId`),businessId:localStorage.getItem(`businessId`),businessUnitId:localStorage.getItem(`businessUnitId`)}),ih(T).then(e=>{console.log(`DEBUG raw groups from /get-role-details`,e);let t=jv(e??[]);console.log(`DEBUG savedRows (jobs only)`,t.filter(e=>Mv(e)===`jobs`||Mv(e)===`job`));let n=new Map(t.map(e=>[`${Mv(e)}:${String(e.permissionKey).toLowerCase()}`,e.accessValue]));console.log(`DEBUG savedAccess keys`,[...n.keys()]),console.log(`DEBUG menus (jobs only)`,x.filter(e=>String(e.menu_key??e.menu_name??e.menu_id).trim().toLowerCase()===`jobs`));let r=x.flatMap(e=>C.map(t=>{let r=String(e.menu_key??e.menu_name??e.menu_id).trim().toLowerCase(),i=String(t.permissionKey).toLowerCase();return{key:`${e.menu_key??e.menu_name??e.menu_id}:${t.permissionId??t.permissionKey}`,menuId:e.menu_id,menuName:e.menu_name,menuKey:e.menu_key,permissionId:t.permissionId,permissionKey:t.permissionKey,accessValue:n.get(`${r}:${i}`)??0}}));console.log(`DEBUG final rows (jobs only)`,r.filter(e=>Mv(e)===`jobs`||Mv(e)===`job`)),O(r)}).catch(e=>i.message.error(e.message||`Unable to load role permissions`)).finally(()=>m(!1))})},[T,x,C]);let de=(0,r.useMemo)(()=>y.find(e=>e.user_type_id===T),[T,y]),fe=(0,r.useMemo)(()=>y.reduce((e,t)=>({...e,[t.user_type_id]:t.user_type_name}),{}),[y]),pe=(0,r.useMemo)(()=>y.filter(e=>!kv(e)),[y]),me=(0,r.useMemo)(()=>_.filter(e=>!kv({user_type_id:e.user_type_id,user_type_name:fe[e.user_type_id]})),[fe,_]),he=(0,r.useMemo)(()=>me.filter(e=>!j||e.user_id!==j.user_id).map(e=>({label:Av(e),value:e.user_id})),[j,me]),ge=(0,r.useMemo)(()=>_.reduce((e,t)=>({...e,[t.user_id]:Av(t)}),{}),[_]);me.length,y.length,x.length;let _e=[{key:`form-groups`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.AppstoreAddOutlined,{}),` Form Groups`]}),title:`Form Groups`,description:`Build module add and edit form groups with validations, dropdowns, and custom forms.`,component:(0,o.jsx)(hg,{})},{key:`detail-groups`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.BgColorsOutlined,{}),` Detail Groups`]}),title:`Detail Groups`,description:`Control detail-view labels, rendering, lookups, merged fields, and display defaults.`,component:(0,o.jsx)(Rg,{})},{key:`actions`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.ThunderboltOutlined,{}),` Actions`]}),title:`Actions`,description:`Manage row action buttons and their visibility rules from one workspace.`,component:(0,o.jsx)(T_,{})},{key:`templates`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.MailOutlined,{}),` Templates`]}),title:`Templates`,description:`Manage reusable email templates and signatures.`,component:(0,o.jsx)(P_,{})},{key:`ai-services`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.ThunderboltOutlined,{}),` AI Services`]}),title:`AI Services`,description:`Register the AI and automation services used by admin-configured AI actions.`,component:(0,o.jsx)(R_,{})},{key:`automations`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.ApartmentOutlined,{}),` Automations`]}),title:`Automations`,description:`Reference ids, duplicate checks, cross-module snapshots, reporting-chain hierarchy expansion, board updates, notifications, and cache invalidation — per module, config-driven.`,component:(0,o.jsx)(Q_,{})},{key:`workflows`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.ApartmentOutlined,{}),` Workflows`]}),title:`Workflows`,description:`Event-driven behavior per module (beforeCreate/afterCreate/…): the metadata the platform Workflow Engine executes — where the jobs, candidates, and submissions create flows live.`,component:(0,o.jsx)(av,{})},{key:`masters`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.AppstoreAddOutlined,{}),` Masters`]}),title:`Masters`,description:`Shared Location and Tax lists used across modules (e.g. the submission form’s W2 employer section).`,component:(0,o.jsx)(hv,{})}],ve=[{key:`users`,icon:(0,o.jsx)(a.UserOutlined,{}),label:`Users`},{key:`roles`,icon:(0,o.jsx)(a.TeamOutlined,{}),label:`User Types`},{key:`menus`,icon:(0,o.jsx)(a.MenuOutlined,{}),label:`Menus`},{key:`configurations`,icon:(0,o.jsx)(a.AppstoreAddOutlined,{}),label:`Configurations`}];function ye(e,t){O(n=>{let r=n.filter(t=>t.key===e).length;return console.log(`DEBUG updateRolePermission`,{key:e,value:t,matchCount:r}),n.map(n=>n.key===e?{...n,accessValue:t}:n)})}async function be(){g(!0);try{console.log(`DEBUG saveRolePermissions jobs rows`,D.filter(e=>Mv(e)===`jobs`||Mv(e)===`job`)),await ah(T,D.map(e=>({menu_id:e.menuId,menu_name:e.menuName,menu_key:e.menuKey,permission_id:e.permissionId,permission_key:e.permissionKey,access_value:e.accessValue,updated_by:oe?.userId??null}))),i.message.success(`Role permissions updated`)}catch(e){i.message.error(e.message||`Unable to save role permissions`)}finally{g(!1)}}function xe(){M(null),s.resetFields(),s.setFieldsValue({status:`ACTIVE`,user_type_id:pe[0]?.user_type_id,reporting_id:0}),A(!0)}function X(e){M(e),s.setFieldsValue({first_name:e.first_name,last_name:e.last_name,username:e.username,email:e.email,mobile:e.mobile,user_type_id:e.user_type_id,reporting_id:e.reporting_id??e.reportingId??0,profile_image:e.profile_image,status:e.status}),A(!0)}async function Se(e){P(!0);try{let t={...e,status:e.status===1||e.status===`1`||e.status===!0?`ACTIVE`:e.status===0||e.status===`0`||e.status===!1?`INACTIVE`:String(e.status??`ACTIVE`).toUpperCase(),updated_by:oe?.userId??null,created_by:oe?.userId??null};t.password||delete t.password,j?(await qm(j.user_id,t),i.message.success(`User updated`)):(await Km(t),i.message.success(`User created`)),A(!1),M(null),await ue()}catch(e){i.message.error(e.message||`Unable to save user`)}finally{P(!1)}}async function Ce(e){I(e);try{await Jm(e),i.message.success(`User deleted`),await ue()}catch(e){i.message.error(e.message||`Unable to delete user`)}finally{I(null)}}function we(e,t){ee(`listView`),W({kind:e,record:t}),e===`role`&&E(t.user_type_id)}function Te(e,t){O(n=>{let r=[...new Set(n.map(Mv))],i=r.indexOf(e),a=i+t;if(i<0||a<0||a>=r.length)return n;[r[i],r[a]]=[r[a],r[i]];let o=new Map(r.map((e,t)=>[e,t]));return[...n].sort((e,t)=>o.get(Mv(e))-o.get(Mv(t)))})}function Ee(){B(null),c.resetFields(),c.setFieldsValue({status:`ACTIVE`}),R(!0)}function De(e){B(e),R(!0),c.setFieldsValue(e)}async function Oe(e){H(!0);try{let t=oe?.userId??null,n=!!z,r=n?await Zm(z.user_type_id,{...e,updated_by:t}):await Xm({...e,created_by:t,visible_menu_ids:[]}),a=r.user_type_id;i.message.success(n?`User type updated`:`User type created. Customize its menus and permissions.`),R(!1),await ue(),E(a),n||(ee(`permissions`),W({kind:`role`,record:{...e,...r,user_type_id:a,user_type_name:r.user_type_name??e.user_type_name}}))}catch(e){i.message.error(e.message||`Unable to save role`)}finally{H(!1)}}async function ke(e){try{await Qm(e),i.message.success(`Role deleted`),await ue()}catch(e){i.message.error(e.message||`Unable to delete role`)}}return(0,o.jsxs)(i.Layout,{className:`admin-shell`,children:[(0,o.jsx)(xv,{width:248,className:`admin-sider`,children:(0,o.jsxs)(`div`,{className:`admin-sidebar-nav`,children:[(0,o.jsx)(Sv,{className:`admin-sidebar-title`,children:`Admin Menu`}),(0,o.jsx)(i.Menu,{theme:`dark`,mode:`inline`,selectedKeys:[l],onClick:({key:e})=>u(e),items:ve})]})}),(0,o.jsx)(i.Layout,{children:(0,o.jsxs)(yv,{className:`admin-content`,children:[(0,o.jsx)(o.Fragment,{children:(0,o.jsx)(i.Tabs,{activeKey:l,onChange:u,tabBarStyle:{display:`none`},items:[{key:`users`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.UserOutlined,{}),` Users`]}),children:(0,o.jsx)(`div`,{className:`admin-stack`,children:(0,o.jsxs)(`section`,{className:`admin-section`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Cv,{level:4,children:`Users`}),(0,o.jsx)(Sv,{type:`secondary`,children:`Create and manage users with non-super-admin user types.`})]}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:xe,children:`Add`})]}),(0,o.jsx)(xu,{listName:`Users`,loading:d,fields:[{label:`Name`,value:`first_name`,render:(e,t)=>`${e??``} ${t.last_name??``}`.trim()||t.username},{label:`Email`,value:`email`},{label:`User Type`,value:`user_type_id`,width:160,render:e=>fe[e]||`Type ${e}`},{label:`Reporting Manager`,value:`reporting_id`,width:180,render:e=>ge[e]||`None`},{label:`Status`,value:`status`,width:110,sorter:!1,render:e=>(0,o.jsx)(i.Tag,{color:e===`ACTIVE`?`green`:`default`,children:e})},{label:`Actions`,value:`_actions`,width:150,sorter:!1,render:(e,t)=>(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Button,{"aria-label":`Edit user`,icon:(0,o.jsx)(a.EditOutlined,{}),size:`small`,onClick:()=>X(t)}),(0,o.jsx)(i.Popconfirm,{title:`Delete user?`,description:`This removes the user from the auth database.`,okText:`Delete`,okButtonProps:{danger:!0},onConfirm:()=>Ce(t.user_id),children:(0,o.jsx)(i.Button,{danger:!0,"aria-label":`Delete user`,icon:(0,o.jsx)(a.DeleteOutlined,{}),loading:F===t.user_id,size:`small`})})]})}],dataSource:me.map(e=>({...e,key:e.user_id})),total:me.length,rowSelection:!1})]})})},{key:`roles`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.TeamOutlined,{}),` User Types`]}),children:(0,o.jsxs)(`div`,{className:`admin-stack`,children:[(0,o.jsxs)(Z,{icon:(0,o.jsx)(a.AppstoreOutlined,{}),title:`Field Config Seed`,style:{marginBottom:12},children:[(0,o.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:12,flexWrap:`wrap`},children:[(0,o.jsx)(`div`,{style:{minWidth:320,flex:1},children:(0,o.jsx)(i.Select,{mode:`multiple`,allowClear:!0,showSearch:!0,value:ne,options:te,placeholder:se?`All modules already seeded`:`Select modules or collections to seed`,disabled:q||ie||se,loading:q,onChange:re,style:{width:`100%`}})}),(0,o.jsx)(i.Button,{type:`primary`,loading:ie,disabled:q||ne.length===0,onClick:le,children:`Seed Field Config`})]}),(0,o.jsx)(Sv,{type:`secondary`,style:{display:`block`,marginTop:8,fontSize:12},children:se?`Seed is disabled because all configured modules already have user type field config data.`:`Already seeded modules are disabled. New modules or collections can still be seeded.`})]}),(0,o.jsxs)(`section`,{className:`admin-section`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Cv,{level:4,children:`User Types`}),(0,o.jsx)(Sv,{type:`secondary`,children:`Role level permissions are inherited by users.`})]}),(0,o.jsx)(i.Button,{type:`primary`,icon:(0,o.jsx)(a.PlusOutlined,{}),onClick:Ee,children:`Add Role`})]}),(0,o.jsx)(xu,{listName:`User Types`,loading:d,fields:[{label:`User Type`,value:`user_type_name`},{label:`Description`,value:`description`},{label:`Status`,value:`status`,width:110,sorter:!1,render:e=>(0,o.jsx)(i.Tag,{color:e===`ACTIVE`?`green`:`default`,children:e})},{label:`Actions`,value:`_actions`,width:260,sorter:!1,render:(e,t)=>{let n=Number(t.role_type)===1;return(0,o.jsxs)(i.Space,{size:4,children:[(0,o.jsx)(i.Button,{"aria-label":`Configure role`,size:`small`,onClick:()=>we(`role`,t),children:`Config`}),(0,o.jsx)(i.Button,{"aria-label":`Edit role`,disabled:!n,icon:(0,o.jsx)(a.EditOutlined,{}),size:`small`,onClick:()=>De(t)}),n&&!kv(t)&&(0,o.jsx)(i.Popconfirm,{title:`Delete role?`,onConfirm:()=>ke(t.user_type_id),children:(0,o.jsx)(i.Button,{"aria-label":`Delete role`,danger:!0,icon:(0,o.jsx)(a.DeleteOutlined,{}),size:`small`})})]})}}],dataSource:y.map(e=>({...e,key:e.user_type_id,roleId:e.user_type_id,roleName:e.user_type_name})),total:y.length,rowSelection:!1})]})]})},{key:`menus`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.MenuOutlined,{}),` Menus`]}),children:(0,o.jsx)(vv,{})},{key:`configurations`,label:(0,o.jsxs)(`span`,{children:[(0,o.jsx)(a.AppstoreAddOutlined,{}),` Configurations`]}),children:(0,o.jsxs)(`section`,{className:`admin-section admin-config-workspace`,children:[(0,o.jsxs)(`div`,{className:`admin-section-head`,children:[(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Cv,{level:4,children:`Configuration Center`}),(0,o.jsx)(Sv,{type:`secondary`,children:`CORE-THEME admin modules embedded into the admin dashboard.`})]}),(0,o.jsxs)(i.Tag,{color:`blue`,children:[_e.length,` configurations`]})]}),(0,o.jsx)(i.Tabs,{className:`admin-config-tabs`,defaultActiveKey:`form-groups`,tabPosition:`left`,items:_e.map(e=>({key:e.key,label:e.label,children:(0,o.jsxs)(`div`,{className:`admin-config-panel`,children:[(0,o.jsx)(`div`,{className:`admin-config-panel-head`,children:(0,o.jsxs)(`div`,{children:[(0,o.jsx)(Cv,{level:4,children:e.title}),(0,o.jsx)(Sv,{type:`secondary`,children:e.description})]})}),(0,o.jsx)(`div`,{className:`admin-config-panel-body`,children:e.component})]})}))})]})}]})}),(0,o.jsxs)(i.Modal,{className:`uss-modal`,title:`Configure User Type: ${U?.record?.user_type_name??``}`,open:!!U,onCancel:()=>W(null),footer:null,destroyOnHidden:!0,width:900,children:[(0,o.jsx)(`div`,{className:`uss-config-toggle`,style:{marginBottom:12},children:[{key:`listView`,label:`List View`},{key:`filter`,label:`Filter`},{key:`form`,label:`Form`},{key:`permissions`,label:`Permissions`},{key:`actions`,label:`Actions`}].map(e=>(0,o.jsx)(`button`,{type:`button`,className:`uss-config-btn${G===e.key?` active`:``}`,onClick:()=>ee(e.key),children:e.label},e.key))}),U&&G===`permissions`?(0,o.jsx)(Pv,{title:`Role Permissions`,description:`Configure menu permissions for this user type`,selectedName:de?.user_type_name,loading:p,saving:h,rows:D,onChange:ye,onMove:Te,onSave:be}):U&&G===`actions`?(0,o.jsx)(Fh,{role:{...U.record,roleId:U.record.user_type_id,roleName:U.record.user_type_name}},`${U.record?.user_type_id}-actions`):U&&G===`form`?(0,o.jsx)(Ah,{role:{...U.record,roleId:U.record.user_type_id,roleName:U.record.user_type_name}},`${U.record?.user_type_id}-form`):U?(0,o.jsx)(Ch,{role:{...U.record,roleId:U.record.user_type_id,roleName:U.record.user_type_name},configType:G},`${U.record?.user_type_id}-${G}`):null]}),(0,o.jsx)(i.Modal,{className:`admin-role-modal`,title:z?`Edit User Type`:`Create User Type`,open:L,onCancel:()=>R(!1),onOk:()=>c.submit(),okText:z?`Save`:`Next`,confirmLoading:V,destroyOnHidden:!0,width:900,children:(0,o.jsxs)(i.Form,{form:c,layout:`vertical`,onFinish:Oe,children:[(0,o.jsx)(i.Form.Item,{name:`user_type_name`,label:`Role name`,rules:[{required:!0,message:`Role name is required`}],children:(0,o.jsx)(i.Input,{placeholder:`Recruiter`})}),(0,o.jsx)(i.Form.Item,{name:`description`,label:`Description`,children:(0,o.jsx)(i.Input.TextArea,{rows:3})}),(0,o.jsx)(i.Form.Item,{name:`status`,label:`Status`,children:(0,o.jsx)(i.Select,{options:[{value:`ACTIVE`},{value:`INACTIVE`}]})})]})}),(0,o.jsx)(i.Modal,{title:j?`Edit User`:`Add User`,open:k,onCancel:()=>A(!1),onOk:()=>s.submit(),confirmLoading:N,destroyOnHidden:!0,children:(0,o.jsxs)(i.Form,{form:s,layout:`vertical`,requiredMark:!1,onFinish:Se,children:[(0,o.jsxs)(`div`,{className:`admin-form-row`,children:[(0,o.jsx)(i.Form.Item,{label:`First Name`,name:`first_name`,rules:[{required:!0,message:`First name is required`}],children:(0,o.jsx)(i.Input,{placeholder:`John`})}),(0,o.jsx)(i.Form.Item,{label:`Last Name`,name:`last_name`,children:(0,o.jsx)(i.Input,{placeholder:`Doe`})})]}),(0,o.jsx)(i.Form.Item,{label:`Username`,name:`username`,rules:[{required:!0,message:`Username is required`}],children:(0,o.jsx)(i.Input,{placeholder:`john.doe`})}),(0,o.jsx)(i.Form.Item,{label:`Email`,name:`email`,rules:[{required:!0,message:`Email is required`},{type:`email`,message:`Enter a valid email`}],children:(0,o.jsx)(i.Input,{placeholder:`john@example.com`})}),(0,o.jsx)(i.Form.Item,{label:`Password`,name:`password`,rules:j?[]:[{required:!0,message:`Password is required`}],children:(0,o.jsx)(i.Input.Password,{placeholder:j?`Leave empty to keep current password`:`Password`})}),(0,o.jsxs)(`div`,{className:`admin-form-row`,children:[(0,o.jsx)(i.Form.Item,{label:`Mobile`,name:`mobile`,children:(0,o.jsx)(i.Input,{placeholder:`9999999999`})}),(0,o.jsx)(i.Form.Item,{label:`User Type`,name:`user_type_id`,rules:[{required:!0,message:`User type is required`}],children:(0,o.jsx)(i.Select,{placeholder:`Select user type`,options:pe.map(e=>({label:e.user_type_name,value:e.user_type_id}))})})]}),(0,o.jsx)(i.Form.Item,{label:`Reporting Manager`,name:`reporting_id`,children:(0,o.jsx)(i.Select,{allowClear:!0,showSearch:!0,placeholder:`Select reporting manager`,optionFilterProp:`label`,options:[{label:`None`,value:0},...he]})}),(0,o.jsx)(i.Form.Item,{label:`Profile Image`,name:`profile_image`,children:(0,o.jsx)(i.Input,{placeholder:`https://...`})}),(0,o.jsx)(i.Form.Item,{label:`Status`,name:`status`,children:(0,o.jsx)(i.Select,{options:[{label:`ACTIVE`,value:`ACTIVE`},{label:`INACTIVE`,value:`INACTIVE`}]})})]})})]})})]})}var Iv=Fv;function Lv(e,t){return String(e||t).replace(/\/\*$/,``).replace(/\/+$/,``)||t}function Rv({loginPath:e=`/login`,adminPath:t=`/admin`,fallbackPath:n=`/`}){let r=(0,s.useNavigate)(),i=Lv(e,`/login`),a=Lv(t,`/admin`),c=`${a}/*`;return(0,o.jsxs)(s.Routes,{children:[(0,o.jsx)(s.Route,{path:i,element:(0,o.jsx)($p,{defaultRedirectPath:a,onLogin:()=>r(a,{replace:!0})})}),(0,o.jsx)(s.Route,{path:c,element:(0,o.jsx)(Xp,{loginPath:i,children:(0,o.jsx)(Qp,{children:(0,o.jsx)(Iv,{onLogout:()=>r(i,{replace:!0})})})})}),(0,o.jsx)(s.Route,{path:n,element:(0,o.jsx)(s.Navigate,{to:a,replace:!0})}),(0,o.jsx)(s.Route,{path:`*`,element:(0,o.jsx)(s.Navigate,{to:a,replace:!0})})]})}function zv(e){return(0,o.jsx)(s.BrowserRouter,{children:(0,o.jsx)(Rv,{...e})})}function Bv(e){return Array.isArray(e)?e.map(String).map(e=>e.trim()).filter(Boolean):String(e??``).split(`,`).map(e=>e.trim()).filter(Boolean)}function Vv(e){return Bv(e).every(e=>/^[^,\s@]+@[^,\s@]+\.[^\s@]{2,}$/.test(e))}var{Text:Hv}=i.Typography;function Uv(e,t){return[...new Set([...Bv(e),...Bv(t)])].join(`, `)}function Wv(e,t){return String(t??``).split(`.`).reduce((e,t)=>e?.[t],e)}function Gv(e,t,n){if(!n)return String(e??``);let r=new Map;return(t??[]).forEach(e=>(e.holders??[]).forEach(e=>{r.set(e.key,Wv(n,e.value))})),String(e??``).replace(/{{\.([\w.]+)}}/g,(e,t)=>{let n=r.get(t);return n==null?e:String(n)})}function Kv({value:t,onChange:n,moduleName:s=``,defaultTemplateId:c=``,ready:l=!0,title:u=`Mail`,hint:d,bccHint:f,afterBcc:p,className:m=``,contextRecords:h=[]}){let[g,_]=(0,r.useState)([]),[v,y]=(0,r.useState)(s),[b,x]=(0,r.useState)([]),[S,C]=(0,r.useState)(``),[w,T]=(0,r.useState)(!0),E=(0,r.useRef)(``),D=e=>n?.({...t,...e});(0,r.useEffect)(()=>{e.Wt().then(e=>_(e.map(e=>({value:e.key??e.module??e.value,label:e.label??e.name??e.key??e.module??e.value})).filter(e=>e.value))).catch(()=>_([]))},[]),(0,r.useEffect)(()=>{let e=!1;return qg({module:v}).then(t=>{e||x(t)}).catch(()=>{e||x([])}).finally(()=>{e||T(!1)}),()=>{e=!0}},[v]);async function O(e,n=!1){if(!e){C(``);return}try{let r=await Jg(e),a=h[0];C(e),D({to:Uv(t.to,(r?.toMail??[]).map(e=>Gv(e,r?.placeholders,a))),cc:Uv(t.cc,(r?.ccMail??[]).map(e=>Gv(e,r?.placeholders,a))),bcc:Uv(t.bcc,(r?.bccMail??[]).map(e=>Gv(e,r?.placeholders,a))),subject:Gv(r?.subject,r?.placeholders,a),contents:Gv(r?.body,r?.placeholders,a)}),n||i.message.success(`Loaded ${r?.name||`email template`}`)}catch(e){n||i.message.error(e?.message||`Could not load email template`)}}(0,r.useEffect)(()=>{!l||!c||E.current===c||(E.current=c,O(c,!0))},[c,l]);let k=(0,r.useMemo)(()=>!v||g.some(e=>e.value===v)?g:[{value:v,label:v},...g],[g,v]);return(0,o.jsxs)(`div`,{className:`common-mail-composer ${m}`.trim(),children:[(0,o.jsxs)(`div`,{className:`mail-popup__header`,children:[(0,o.jsxs)(`div`,{className:`mail-popup__header-brand`,children:[(0,o.jsx)(`span`,{className:`dynamic-popup__header-icon-box`,children:(0,o.jsx)(a.MailOutlined,{})}),(0,o.jsxs)(`div`,{children:[(0,o.jsx)(`span`,{className:`dynamic-popup__header-label`,children:u}),d&&(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__header-hint`,children:d})]})]}),(0,o.jsxs)(`div`,{className:`mail-popup__header-controls`,children:[(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,placeholder:`Module`,value:v||void 0,options:k,onChange:e=>{T(!0),y(e),C(``),D({cc:``,bcc:``,subject:``,contents:``,showCc:!1,showBcc:!1})},className:`mail-popup__module-select`}),(0,o.jsx)(i.Select,{showSearch:!0,optionFilterProp:`label`,allowClear:!0,placeholder:`Template`,value:S||void 0,loading:w,notFoundContent:w?(0,o.jsx)(i.Spin,{size:`small`}):`No templates`,options:b.map(e=>({value:e._id??e.id,label:e.name||e.action||`Template`})),onChange:e=>O(e),className:`mail-popup__template-select`})]})]}),(0,o.jsxs)(`div`,{className:`mail-popup__body`,children:[(0,o.jsxs)(`div`,{className:`mail-popup__field-row`,children:[(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__field-label`,children:`To`}),(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`],value:Bv(t.to),onChange:e=>D({to:e.join(`, `)}),variant:`borderless`,className:`mail-popup__recipient-select`,placeholder:`Add email addresses`}),(0,o.jsxs)(`div`,{className:`mail-popup__cc-bcc-actions`,children:[!t.showCc&&(0,o.jsx)(`span`,{className:`mail-popup__cc-bcc-link`,onClick:()=>D({showCc:!0}),children:`Cc`}),!t.showBcc&&(0,o.jsx)(`span`,{className:`mail-popup__cc-bcc-link`,onClick:()=>D({showBcc:!0}),children:`Bcc`})]})]}),(0,o.jsx)(i.Divider,{}),t.showCc&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`mail-popup__field-row`,children:[(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__field-label`,children:`Cc`}),(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`],value:Bv(t.cc),onChange:e=>D({cc:e.join(`, `)}),variant:`borderless`,className:`mail-popup__recipient-select`})]}),(0,o.jsx)(i.Divider,{})]}),t.showBcc&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsxs)(`div`,{className:`mail-popup__field-row`,children:[(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__field-label`,children:`Bcc`}),(0,o.jsx)(i.Select,{mode:`tags`,open:!1,tokenSeparators:[`,`],value:Bv(t.bcc),onChange:e=>D({bcc:e.join(`, `)}),variant:`borderless`,className:`mail-popup__recipient-select`,placeholder:f})]}),p,(0,o.jsx)(i.Divider,{})]}),(0,o.jsxs)(`div`,{className:`mail-popup__field-row`,children:[(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__field-label`,children:`Subject`}),(0,o.jsx)(i.Input,{variant:`borderless`,value:t.subject,onChange:e=>D({subject:e.target.value}),placeholder:`Enter subject`,className:`mail-popup__field-input`})]}),(0,o.jsx)(i.Divider,{}),(0,o.jsxs)(`div`,{className:`mail-popup__message-section`,children:[(0,o.jsx)(Hv,{type:`secondary`,className:`mail-popup__message-label`,children:`Message`}),(0,o.jsx)(e.kn,{value:t.contents,onChange:e=>D({contents:e})})]})]})]})}function qv(){let e=(0,s.useNavigate)(),{state:t={}}=(0,s.useLocation)(),{selectedIds:n=[],selectedRecords:a=[],recipients:c=[],subject:l=``,onSend:u,moduleName:d=``,popupAction:f={}}=t,p=n[0]??a[0]?._id??a[0]?.id,[m,h]=(0,r.useState)({to:c.join(`, `),cc:``,bcc:``,subject:l,contents:``,showCc:!1,showBcc:!1}),[g,_]=(0,r.useState)(!p),[v,y]=(0,r.useState)(!1);(0,r.useEffect)(()=>{p&&kt(p).then(e=>h(t=>({...t,subject:e.subject||t.subject,to:e.toMail?.length?Array.isArray(e.toMail)?e.toMail.join(`, `):String(e.toMail):t.to,cc:e.ccMail?.length?Array.isArray(e.ccMail)?e.ccMail.join(`, `):String(e.ccMail):t.cc,bcc:e.bccMail?.length?Array.isArray(e.bccMail)?e.bccMail.join(`, `):String(e.bccMail):t.bcc,contents:e.contents||t.contents,showCc:t.showCc||!!e.ccMail?.length,showBcc:t.showBcc||!!e.bccMail?.length}))).catch(()=>{}).finally(()=>_(!0))},[p]);let b=Bv(m.to).length+Bv(m.cc).length+Bv(m.bcc).length>0&&Vv(m.to)&&Vv(m.cc)&&Vv(m.bcc)&&m.subject.trim();async function x(){if(!(!b||v)){y(!0);try{await At({jobId:p,toMail:Bv(m.to),ccMail:Bv(m.cc),bccMail:Bv(m.bcc),subject:m.subject,contents:m.contents}),i.message.success(`Mail sent successfully`),typeof u==`function`&&u({...m,message:m.contents,selectedIds:n}),e(-1)}catch(e){i.message.error(e?.message||`Failed to send mail`)}finally{y(!1)}}}return(0,o.jsx)(i.Drawer,{open:!0,placement:`right`,onClose:()=>e(-1),closable:!1,rootClassName:`mail-popup`,width:620,maskClosable:!1,footer:(0,o.jsxs)(`div`,{className:`mail-popup__footer`,children:[(0,o.jsx)(i.Button,{onClick:()=>e(-1),children:`Cancel`}),(0,o.jsx)(i.Button,{type:`primary`,loading:v,disabled:!b,onClick:x,children:`Send`})]}),children:(0,o.jsx)(Kv,{value:m,onChange:h,moduleName:d,defaultTemplateId:f.defaultTemplateId??t.defaultTemplateId??``,ready:g,contextRecords:a})})}var{Text:Jv}=i.Typography,Yv=2,Xv=`overview.summary.role summary.job summary.role overview.job description.description.about the role.about the job.job title.role.responsibilities.roles responsibilities.roles and responsibilities.roles & responsibilities.key responsibilities.requirements.required skills.preferred skills.technical skills.key skills.skills.competencies.nice to have.good to have.qualifications.required qualifications.preferred qualifications.education.experience.benefits`.split(`.`),Zv=new Set(Xv),Qv=/(education|qualification)/i,$v=/(skill|competenc)/i,ey=e=>e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),ty=e=>e.replace(/\w[^\s/]*/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()),ny=e=>[...new Set(e)];function ry(e){let t=String(e);return t=t.replace(/<\s*(br|\/p|\/div|\/h[1-6]|\/li|\/tr)\s*\/?>/gi,`
5
5
  `).replace(/<\s*li[^>]*>/gi,`